body {
  font-family: Rubik;
  font-size: 1.9em;
  line-height: 1.65em;
}

blockquote {
  line-height: 2.8rem;
}

.content article header {
  margin-top: 0.5rem;
}

.content .img {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.content figcaption p {
  font-style: normal;
  font-size: 0.8em;
}

.content figure.gallery .img-container {
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 768px) {
  .content figure.gallery .img-container {
    flex-direction: row;
  }
}

@media screen and (min-width: 768px) {
  .content figure.gallery .img-container img {
    max-width: 99%;
  }
}

.img-border {
  border: 1px solid rgba(177, 177, 177, 0.76);
}


@media screen and (min-width: 768px) {
  .align-left {
    float: left;
    margin-right: 1em !important;
    margin-top: 1em !important;
  }
}

@media screen and (min-width: 768px) {
  .align-right {
    float: right;
    margin-left: 1em !important;
    margin-top: 1em !important;
  }
}

.notice {
  margin: 2em 0 !important;
  padding: 1em;
  color: #494e52;
  font-size: .8em !important;
  border-radius: 4px;
  text-indent: initial;
}

.notice-info {
  background-color: #eef7fa;
  box-shadow: 0 1px 1px rgba(82,173,200,0.25);
}

.notice-warning {
  background-color: #fef4e6;
  box-shadow: 0 1px 1px rgba(248,148,6,0.25);
}

.notice-danger {
  background-color: #fdefef;
  box-shadow: 0 1px 1px rgba(238,95,91,0.25);
}

h1 {
  margin-top: 0.5rem;
}

h2, h3, h4, h5, hr {
  clear: both;
}

h3 {
  margin-top: 3.2rem;
}

hr {
  margin-top: 50px;
}

article {
  word-wrap: break-word;
}

table {
  max-width: 100%;
  width: fit-content;
  border-collapse: collapse;
  overflow-x: auto;
  display: block;
}

@media screen and (min-width: 768px) {
  .book-report .book-cover {
    max-width: 275px;
    margin-right: 2em !important;
    margin-bottom: 0.2em;
  }
}

.sbscrb_cont {
  background: #f9f9f9;
  font-family: 'Helvetica Neue', Helvetica, Arial, Verdana, sans-serif;
  line-height: 1.5em;
  overflow: hidden;
  color: #666;
  font-size: 16px;
  border: 1px, solid, #d1d1d1;
  box-shadow: none;
  clear: both;
  margin: 20px 0px;
  text-align: center;
  width: 100%;
  max-width: 100%;

}

.sbscrb_cont h3 {
  text-align: center;
  margin: 0px 0px 10px;
  font-size: 28px;
}

.sbscrb_cont form {
  background-color: inherit;
}

.sbscrb_cont .sbscrb_cont_inner {
  width: 100%;
  float: left;
  padding: 5%;
}

.ck_errorArea {
  display: none; /* not used, but may need for inline form validation */
}

.sbscrb_cont input[type="text"], .sbscrb_cont input[type="email"] {
  width: 100%;
  float: none;
  margin-top: 5px;
  font-size: 18px;
  padding: 10px 8px;
  border: 1px solid #d6d6d6; /* stroke */
  border-radius: 3px;
  background-color: #fff; /* layer fill content */
  margin-bottom: 5px;
  height: 42px;
}

.sbscrb_cont input[type="text"]:focus, .sbscrb_cont input[type="email"]:focus {
  outline: none;
  border-color: #aaa;
}

.sbscrb_cont .subscribe_btn {
  width: 100%;
  float: none;
  margin-top: 5px;
  color: #fff;
  padding:  11px 0px;
  font-size: 18px;
  background: #0d6db8;
  border-radius: 3px;
  cursor: pointer;
  border: none;
  text-shadow: none;
  height: 42px;
}

.honeypot {
  position: absolute;
  left: -5000px;
}

.inline-file {
  clear: both;
  margin-bottom: 65px;
}

.inline-file .download-raw-button {
  border-width: 1px;
  border-style: solid;
  border-color: #f2f3f3;
  border-top: 0;
  border-radius: 0 0 4px 4px;
  background-color: #fafafa;
  box-shadow: 0 1px 1px rgba(0,0,0,0.125);
  margin-top: -20px;
  z-index: 10;
  position: relative;
  padding: 0.5em 1em;
  float: right;
  margin-left: 1em;
  font-size: .6875em;
}