*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: inherit;
}

html {
  font-size: 125%;
  font-family: "Lato", sans-serif;
  background-color: whitesmoke;
}

body {
  box-sizing: border-box;
}

@font-face {
  font-family: "Underwood319";
  src: url("Underwood319.woff2") format("woff2"), url("Underwood319.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Merriweather", serif;
}

small {
  font-size: 60%;
}

.menu {
  width: 100%;
  padding: 0.25rem 5vw;
  text-align: left;
}
.menu li {
  padding: 0.1rem 0.3rem;
  border-radius: 0.3rem;
  display: inline;
  background-color: red;
}
.menu li:not(:first-child) {
  margin-left: 1rem;
}
.menu li a {
  text-decoration: none;
  color: inherit;
}

.summary {
  padding-left: 5vw;
  padding-right: 8%;
  padding-top: 1rem;
}
.summary__title {
  font-family: "Merriweather", serif;
  font-weight: 500;
  margin-bottom: 0.3rem;
}
.summary__title a:link,
.summary__title a:visited,
.summary__title a:active {
  text-decoration: none;
  color: darkgreen;
}
.summary__title a:hover {
  text-decoration: underline;
  color: inherit;
}
.summary__body a:link,
.summary__body a:active {
  color: inherit;
  text-decoration: none;
}
.summary__body a:hover {
  color: inherited;
  text-decoration: underline;
}
.summary__body a:visited {
  text-decoration: none;
  color: darkgrey;
}

.story__backbutton {
  padding-right: 5px;
}
.story small {
  display: inline-block;
  width: 100%;
  text-align: right;
}
.story h1 {
  font-family: "Merriweather";
  font-size: 200%;
  font-weight: 500;
  margin-bottom: 1rem;
}
.story .paragraph {
  margin-bottom: 0.25rem;
  text-indent: 0.75rem;
  line-height: 140%;
}

.row {
  max-width: 50rem;
  background-color: rgb(234, 238, 227);
  margin: 0 auto;
}
.row:not(:last-child) {
  margin-bottom: 0;
}
.row::after {
  content: "";
  display: table;
  clear: both;
}
.row [class*=col-] {
  float: left;
}
.row [class*=col-]:not(:last-child) {
  margin-right: 3rem;
}
.row .col-1-of-2 {
  width: calc((100% - 3rem) / 2);
}
.row .col-1-of-3 {
  width: calc((100% - 2 * 3rem) / 3);
}
.row .col-2-of-3 {
  width: calc(2 * (100% - 2 * 3rem) / 3 + 3rem);
}
.row .col-1-of-4 {
  width: calc((100% - 3 * 3rem) / 4);
}
.row .col-2-of-4 {
  width: calc(2 * (100% - 3 * 3rem) / 4 + 3rem);
}
.row .col-3-of-4 {
  width: calc(3 * (100% - 3 * 3rem) / 4 + 2 * 3rem);
}

.branding {
  max-width: 50rem;
  margin: 0 auto;
  background-image: url("typwriter_head.png");
  background-repeat: unset;
  background-size: 100% 100%;
  height: 6rem;
  color: rgb(234, 238, 227);
}
.branding h1 {
  font-family: "Underwood319";
  padding-left: 1rem;
}

footer {
  height: 100%;
  padding: 1vh 5vw;
}
footer.row {
  padding-top: 2rem;
  padding-bottom: 0.5rem;
  margin-bottom: 2rem;
}

.story {
  max-width: 50rem;
  background-color: rgb(234, 238, 227);
  margin: 0 auto;
  padding: 4vh 5vw;
  /** De class styles below are coming from asciidoctor transformation */
}
.story h1,
.story h2,
.story h3,
.story h4,
.story h5 {
  padding-top: 0.75rem;
  color: darkgreen;
}
.story h1 {
  font-size: 200%;
  font-weight: 500;
  margin-bottom: 1rem;
}
.story .paragraph,
.story .olist {
  line-height: 140%;
}
.story .paragraph {
  margin-bottom: 0.25rem;
  text-indent: 0.75rem;
}
.story .imageblock {
  padding-top: 0.5rem;
  padding-bottom: 0.75rem;
}
.story .imageblock.left {
  margin: 0.25rem 0.625rem 1.25rem 0;
}
.story .imageblock.right {
  margin: 0.25rem 0 1.25rem 0.625rem;
}
.story .imageblock > .title {
  font-size: 75%;
  margin-bottom: 0;
}
.story .imageblock.thumb,
.story .imageblock.th {
  border-width: 6px;
}
.story .imageblock.thumb > .title,
.story .imageblock.th > .title {
  padding: 0 0.125rem;
}
.story .image.left,
.story .image.right {
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
  display: inline-block;
  line-height: 0;
}
.story .image.left {
  margin-right: 0.625rem;
}
.story .image.right {
  margin-left: 0.625rem;
}
.story a.image {
  text-decoration: none;
  display: inline-block;
}
.story a.image object {
  pointer-events: none;
}