@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Lato");
body {
  background: #ffffff;
  color: #383838;
}

@font-face {
  font-family: "Taste";
  src: url("../fonts/Taste Book.otf");
  font-weight: normal;
  font-style: normal;
}
h1, h2 {
  font-family: "Taste";
}

body {
  font-family: "Lato", "Open Sans", "Avenir", "Product Sans", "Helvetica", "Arial", sans-serif;
}

/*/ Debugging:
body:before {
	position: absolute;
	background: $background;
	z-index: 100;
	content: 'normal';
	@media (min-width: $wide-screen) {
		content: 'wide';
	}
	@media (max-width: $narrow-screen) {
		content: 'narrow';
	}
} //*/
@media (max-width: 888.8888888889px) and (min-width: 666.6666666667px) {
  html {
    font-size: 2.25vw;
  }
}
@media (min-width: 888.8888888889px) {
  html {
    font-size: 20px;
  }
}
@media (max-width: 666.6666666667px) {
  html {
    font-size: 15px;
  }
}

.text-width {
  position: relative;
  left: calc(50vw - 20rem);
  right: calc(50vw - 20rem);
  width: calc(100% - 2 * calc(50vw - 20rem));
}
@media (min-width: 888.8888888889px) {
  .text-width {
    left: calc(50vw - 20rem);
    width: calc(100% - 2 * calc(50vw - 20rem));
  }
}
@media (max-width: 666.6666666667px) {
  .text-width {
    left: 5vw;
    width: calc(100% - 2 * 5vw);
  }
}

@media (max-width: 500px) {
  .float-left,
  .float-right {
    float: none;
    max-width: 40rem !important;
    padding: 1rem !important;
  }
  .float-left {
    margin-right: 2.5rem;
  }
  .float-right {
    margin-left: 2.5rem;
  }
}
.footnote.active {
  color: hsl(183, 81%, 35%);
  cursor: pointer;
}

.float-left .footnote {
  color: hsl(40, 100%, 67%);
}

.float-right .footnote {
  color: hsl(40, 100%, 67%);
}

.footnote-body {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  overflow: auto;
  transition: background-color 300ms 1ms, visibility 0s 0s;
}
.footnote-body > div {
  position: absolute;
  top: 80vh;
  left: calc(50vw - 15rem);
  width: 28rem;
  padding: 1em;
  box-shadow: 0 0 1em black;
  background: hsl(183, 81%, 35%);
  color: #ffffff;
  transform: none;
  opacity: 1;
  transition: opacity 300ms 0s, transform 300ms 0s ease-out;
}
.footnote-body > div a {
  color: hsl(40, 100%, 67%);
}
.footnote-body > div > p:first-child {
  margin-top: 0;
}
.footnote-body > div > p:first-child:before {
  content: "* ";
}
.footnote-body > div > p:last-child {
  margin-bottom: 0;
}
.footnote-body > div:after {
  position: absolute;
  content: " ";
  bottom: -10vw;
  height: 1px;
  width: 1px;
  opacity: 0;
  left: -1000vw;
}
.footnote-body.hidden {
  visibility: hidden;
  background-color: rgba(0, 0, 0, 0);
  transition: background-color 300ms 0s, visibility 0s 300ms;
}
.footnote-body.hidden > div {
  transform: translate(0, 40vh);
  opacity: 0;
  transition: opacity 300ms 0s, transform 300ms 0s ease-in;
}

@media (max-width: 28rem) {
  .footnote-body > div {
    width: calc(100vw - 2em);
    left: 0;
    min-height: calc(20vh - 2em);
  }
  .footnote-body > div:after {
    bottom: 0;
  }
}
header .tabs {
  padding-left: calc(50vw - 20rem);
  padding-right: calc(50vw - 20rem);
  background: hsl(183, 81%, 35%);
  position: relative;
  top: 0.5rem;
  margin-bottom: -1em;
}
@media (min-width: 888.8888888889px) {
  header .tabs {
    padding-left: calc(50vw - 20rem);
    padding-right: calc(50vw - 20rem);
  }
}
@media (max-width: 666.6666666667px) {
  header .tabs {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
header .tabs > a {
  display: inline-block;
  position: relative;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
  padding: calc(1em - 0.5rem) 1em 0.5rem 1em;
  color: #ffffff;
  text-decoration: none;
}
header .tabs > a.current, header .tabs > a:hover {
  background: hsl(254, 29%, 35%);
}
header .tabs > a.current:after, header .tabs > a:hover:after {
  content: " ";
  display: block;
  position: absolute;
  background: hsl(254, 29%, 35%);
  left: 0;
  right: 0;
  height: 0.5rem;
  bottom: -0.25rem;
  z-index: 1;
}

body > .banner,
body > div.body > .banner {
  background: hsl(40, 100%, 67%);
  color: #000000;
  position: relative;
  margin: 2rem 0;
  padding: 1rem 0;
  border-width: 1rem 0;
  border-color: transparent;
}
body > .banner strong,
body > div.body > .banner strong {
  color: #000000;
}
body > .banner:before, body > .banner:after,
body > div.body > .banner:before,
body > div.body > .banner:after {
  position: absolute;
  display: block;
  content: " ";
  top: -1rem;
  bottom: -1rem;
  border-width: 1rem 0;
  border-style: solid;
  left: 0;
  right: 0;
}
body > .banner:before,
body > div.body > .banner:before {
  z-index: -1;
  border-color: hsl(183, 81%, 35%);
  top: -0.5rem;
  bottom: -0.5rem;
}
body > .banner:after,
body > div.body > .banner:after {
  z-index: -2;
  border-color: hsl(254, 29%, 35%);
  top: -1rem;
  bottom: -1rem;
}
body > .banner:before,
body > div.body > .banner:before {
  border-width: 0.55rem 0;
}
body > .banner h1,
body > div.body > .banner h1 {
  font-size: 4em;
  color: hsl(254, 29%, 35%);
  margin: 0;
}
body > .banner h1 a,
body > div.body > .banner h1 a {
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
  color: inherit;
  text-decoration: none;
}

body {
  margin: 0;
  padding: 0;
}

body > article > ul:not(.links).breadcrumbs {
  padding-left: calc(50vw - 20rem);
  padding-right: calc(50vw - 20rem);
  padding-bottom: 0;
  margin: 0 0 -1.5rem 0 !important;
}
@media (min-width: 888.8888888889px) {
  body > article > ul:not(.links).breadcrumbs {
    padding-left: calc(50vw - 20rem);
    padding-right: calc(50vw - 20rem);
  }
}
@media (max-width: 666.6666666667px) {
  body > article > ul:not(.links).breadcrumbs {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
body > article > ul:not(.links).breadcrumbs li {
  list-style: none;
  display: inline;
}
body > article > ul:not(.links).breadcrumbs li a {
  font-weight: normal;
  color: hsl(254, 29%, 35%);
}
body > article > ul:not(.links).breadcrumbs li a:hover {
  color: hsl(183, 81%, 35%);
}
body > article > ul:not(.links).breadcrumbs li:after {
  content: "→";
  display: inline-block;
  margin: 0 0.5em;
}

body > h1,
body > section > h1,
body > article > h1,
body > header > h1,
body > footer > h1,
body > div.body > h1,
body > div.body > section > h1,
body > div.body > article > h1,
body > div.body > header > h1,
body > div.body > footer > h1 {
  padding-left: calc(50vw - 20rem);
  padding-right: calc(50vw - 20rem);
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
  color: hsl(254, 29%, 35%);
  font-size: 2em;
  margin-bottom: 0.5em;
}
@media (min-width: 888.8888888889px) {
  body > h1,
  body > section > h1,
  body > article > h1,
  body > header > h1,
  body > footer > h1,
  body > div.body > h1,
  body > div.body > section > h1,
  body > div.body > article > h1,
  body > div.body > header > h1,
  body > div.body > footer > h1 {
    padding-left: calc(50vw - 20rem);
    padding-right: calc(50vw - 20rem);
  }
}
@media (max-width: 666.6666666667px) {
  body > h1,
  body > section > h1,
  body > article > h1,
  body > header > h1,
  body > footer > h1,
  body > div.body > h1,
  body > div.body > section > h1,
  body > div.body > article > h1,
  body > div.body > header > h1,
  body > div.body > footer > h1 {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
body > h1 strong,
body > section > h1 strong,
body > article > h1 strong,
body > header > h1 strong,
body > footer > h1 strong,
body > div.body > h1 strong,
body > div.body > section > h1 strong,
body > div.body > article > h1 strong,
body > div.body > header > h1 strong,
body > div.body > footer > h1 strong {
  color: #ffffff;
}
body > h1.hero-image,
body > section > h1.hero-image,
body > article > h1.hero-image,
body > header > h1.hero-image,
body > footer > h1.hero-image,
body > div.body > h1.hero-image,
body > div.body > section > h1.hero-image,
body > div.body > article > h1.hero-image,
body > div.body > header > h1.hero-image,
body > div.body > footer > h1.hero-image {
  padding-top: 14rem;
  padding-bottom: 0.25rem;
  vertical-align: bottom;
  margin-top: -1rem;
  background-size: cover;
  font-size: 4em;
}
body > h1.hero-image a,
body > section > h1.hero-image a,
body > article > h1.hero-image a,
body > header > h1.hero-image a,
body > footer > h1.hero-image a,
body > div.body > h1.hero-image a,
body > div.body > section > h1.hero-image a,
body > div.body > article > h1.hero-image a,
body > div.body > header > h1.hero-image a,
body > div.body > footer > h1.hero-image a {
  color: white !important;
  text-shadow: 0.1rem 0.1rem 0.2rem black;
  font-weight: normal;
}
body > h2,
body > section > h2,
body > article > h2,
body > header > h2,
body > footer > h2,
body > div.body > h2,
body > div.body > section > h2,
body > div.body > article > h2,
body > div.body > header > h2,
body > div.body > footer > h2 {
  padding-left: calc(50vw - 20rem);
  padding-right: calc(50vw - 20rem);
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
  color: hsl(254, 29%, 35%);
  font-size: 1.5em;
  margin-bottom: 0.5em;
}
@media (min-width: 888.8888888889px) {
  body > h2,
  body > section > h2,
  body > article > h2,
  body > header > h2,
  body > footer > h2,
  body > div.body > h2,
  body > div.body > section > h2,
  body > div.body > article > h2,
  body > div.body > header > h2,
  body > div.body > footer > h2 {
    padding-left: calc(50vw - 20rem);
    padding-right: calc(50vw - 20rem);
  }
}
@media (max-width: 666.6666666667px) {
  body > h2,
  body > section > h2,
  body > article > h2,
  body > header > h2,
  body > footer > h2,
  body > div.body > h2,
  body > div.body > section > h2,
  body > div.body > article > h2,
  body > div.body > header > h2,
  body > div.body > footer > h2 {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
body > h2 strong,
body > section > h2 strong,
body > article > h2 strong,
body > header > h2 strong,
body > footer > h2 strong,
body > div.body > h2 strong,
body > div.body > section > h2 strong,
body > div.body > article > h2 strong,
body > div.body > header > h2 strong,
body > div.body > footer > h2 strong {
  color: #ffffff;
}
body > h3,
body > section > h3,
body > article > h3,
body > header > h3,
body > footer > h3,
body > div.body > h3,
body > div.body > section > h3,
body > div.body > article > h3,
body > div.body > header > h3,
body > div.body > footer > h3 {
  padding-left: calc(50vw - 20rem);
  padding-right: calc(50vw - 20rem);
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
  color: hsl(183, 81%, 35%);
  font-size: 1em;
  margin-bottom: 0.5em;
}
@media (min-width: 888.8888888889px) {
  body > h3,
  body > section > h3,
  body > article > h3,
  body > header > h3,
  body > footer > h3,
  body > div.body > h3,
  body > div.body > section > h3,
  body > div.body > article > h3,
  body > div.body > header > h3,
  body > div.body > footer > h3 {
    padding-left: calc(50vw - 20rem);
    padding-right: calc(50vw - 20rem);
  }
}
@media (max-width: 666.6666666667px) {
  body > h3,
  body > section > h3,
  body > article > h3,
  body > header > h3,
  body > footer > h3,
  body > div.body > h3,
  body > div.body > section > h3,
  body > div.body > article > h3,
  body > div.body > header > h3,
  body > div.body > footer > h3 {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
body > h3 strong,
body > section > h3 strong,
body > article > h3 strong,
body > header > h3 strong,
body > footer > h3 strong,
body > div.body > h3 strong,
body > div.body > section > h3 strong,
body > div.body > article > h3 strong,
body > div.body > header > h3 strong,
body > div.body > footer > h3 strong {
  color: #ffffff;
}
body > p,
body > section > p,
body > article > p,
body > header > p,
body > footer > p,
body > div.body > p,
body > div.body > section > p,
body > div.body > article > p,
body > div.body > header > p,
body > div.body > footer > p {
  padding-left: calc(50vw - 20rem);
  padding-right: calc(50vw - 20rem);
}
@media (min-width: 888.8888888889px) {
  body > p,
  body > section > p,
  body > article > p,
  body > header > p,
  body > footer > p,
  body > div.body > p,
  body > div.body > section > p,
  body > div.body > article > p,
  body > div.body > header > p,
  body > div.body > footer > p {
    padding-left: calc(50vw - 20rem);
    padding-right: calc(50vw - 20rem);
  }
}
@media (max-width: 666.6666666667px) {
  body > p,
  body > section > p,
  body > article > p,
  body > header > p,
  body > footer > p,
  body > div.body > p,
  body > div.body > section > p,
  body > div.body > article > p,
  body > div.body > header > p,
  body > div.body > footer > p {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
body > p code,
body > section > p code,
body > article > p code,
body > header > p code,
body > footer > p code,
body > div.body > p code,
body > div.body > section > p code,
body > div.body > article > p code,
body > div.body > header > p code,
body > div.body > footer > p code {
  background: hsl(40, 100%, 67%);
}
body > div > pre,
body > div > div > pre,
body > section > div > pre,
body > section > div > div > pre,
body > article > div > pre,
body > article > div > div > pre,
body > header > div > pre,
body > header > div > div > pre,
body > footer > div > pre,
body > footer > div > div > pre,
body > div.body > div > pre,
body > div.body > div > div > pre,
body > div.body > section > div > pre,
body > div.body > section > div > div > pre,
body > div.body > article > div > pre,
body > div.body > article > div > div > pre,
body > div.body > header > div > pre,
body > div.body > header > div > div > pre,
body > div.body > footer > div > pre,
body > div.body > footer > div > div > pre {
  padding-left: calc(50vw - 20rem);
  padding-right: calc(50vw - 20rem);
  padding: 0 2em;
  word-wrap: normal;
  white-space: break-spaces;
  background: hsl(254, 29%, 35%);
}
@media (min-width: 888.8888888889px) {
  body > div > pre,
  body > div > div > pre,
  body > section > div > pre,
  body > section > div > div > pre,
  body > article > div > pre,
  body > article > div > div > pre,
  body > header > div > pre,
  body > header > div > div > pre,
  body > footer > div > pre,
  body > footer > div > div > pre,
  body > div.body > div > pre,
  body > div.body > div > div > pre,
  body > div.body > section > div > pre,
  body > div.body > section > div > div > pre,
  body > div.body > article > div > pre,
  body > div.body > article > div > div > pre,
  body > div.body > header > div > pre,
  body > div.body > header > div > div > pre,
  body > div.body > footer > div > pre,
  body > div.body > footer > div > div > pre {
    padding-left: calc(50vw - 20rem);
    padding-right: calc(50vw - 20rem);
  }
}
@media (max-width: 666.6666666667px) {
  body > div > pre,
  body > div > div > pre,
  body > section > div > pre,
  body > section > div > div > pre,
  body > article > div > pre,
  body > article > div > div > pre,
  body > header > div > pre,
  body > header > div > div > pre,
  body > footer > div > pre,
  body > footer > div > div > pre,
  body > div.body > div > pre,
  body > div.body > div > div > pre,
  body > div.body > section > div > pre,
  body > div.body > section > div > div > pre,
  body > div.body > article > div > pre,
  body > div.body > article > div > div > pre,
  body > div.body > header > div > pre,
  body > div.body > header > div > div > pre,
  body > div.body > footer > div > pre,
  body > div.body > footer > div > div > pre {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
body > div > pre > code,
body > div > div > pre > code,
body > section > div > pre > code,
body > section > div > div > pre > code,
body > article > div > pre > code,
body > article > div > div > pre > code,
body > header > div > pre > code,
body > header > div > div > pre > code,
body > footer > div > pre > code,
body > footer > div > div > pre > code,
body > div.body > div > pre > code,
body > div.body > div > div > pre > code,
body > div.body > section > div > pre > code,
body > div.body > section > div > div > pre > code,
body > div.body > article > div > pre > code,
body > div.body > article > div > div > pre > code,
body > div.body > header > div > pre > code,
body > div.body > header > div > div > pre > code,
body > div.body > footer > div > pre > code,
body > div.body > footer > div > div > pre > code {
  -moz-tab-size: 4;
  tab-size: 4;
  color: white;
}
body > div > pre > code .kd, body > div > pre > code .k, body > div > pre > code .kc, body > div > pre > code .kr,
body > div > div > pre > code .kd,
body > div > div > pre > code .k,
body > div > div > pre > code .kc,
body > div > div > pre > code .kr,
body > section > div > pre > code .kd,
body > section > div > pre > code .k,
body > section > div > pre > code .kc,
body > section > div > pre > code .kr,
body > section > div > div > pre > code .kd,
body > section > div > div > pre > code .k,
body > section > div > div > pre > code .kc,
body > section > div > div > pre > code .kr,
body > article > div > pre > code .kd,
body > article > div > pre > code .k,
body > article > div > pre > code .kc,
body > article > div > pre > code .kr,
body > article > div > div > pre > code .kd,
body > article > div > div > pre > code .k,
body > article > div > div > pre > code .kc,
body > article > div > div > pre > code .kr,
body > header > div > pre > code .kd,
body > header > div > pre > code .k,
body > header > div > pre > code .kc,
body > header > div > pre > code .kr,
body > header > div > div > pre > code .kd,
body > header > div > div > pre > code .k,
body > header > div > div > pre > code .kc,
body > header > div > div > pre > code .kr,
body > footer > div > pre > code .kd,
body > footer > div > pre > code .k,
body > footer > div > pre > code .kc,
body > footer > div > pre > code .kr,
body > footer > div > div > pre > code .kd,
body > footer > div > div > pre > code .k,
body > footer > div > div > pre > code .kc,
body > footer > div > div > pre > code .kr,
body > div.body > div > pre > code .kd,
body > div.body > div > pre > code .k,
body > div.body > div > pre > code .kc,
body > div.body > div > pre > code .kr,
body > div.body > div > div > pre > code .kd,
body > div.body > div > div > pre > code .k,
body > div.body > div > div > pre > code .kc,
body > div.body > div > div > pre > code .kr,
body > div.body > section > div > pre > code .kd,
body > div.body > section > div > pre > code .k,
body > div.body > section > div > pre > code .kc,
body > div.body > section > div > pre > code .kr,
body > div.body > section > div > div > pre > code .kd,
body > div.body > section > div > div > pre > code .k,
body > div.body > section > div > div > pre > code .kc,
body > div.body > section > div > div > pre > code .kr,
body > div.body > article > div > pre > code .kd,
body > div.body > article > div > pre > code .k,
body > div.body > article > div > pre > code .kc,
body > div.body > article > div > pre > code .kr,
body > div.body > article > div > div > pre > code .kd,
body > div.body > article > div > div > pre > code .k,
body > div.body > article > div > div > pre > code .kc,
body > div.body > article > div > div > pre > code .kr,
body > div.body > header > div > pre > code .kd,
body > div.body > header > div > pre > code .k,
body > div.body > header > div > pre > code .kc,
body > div.body > header > div > pre > code .kr,
body > div.body > header > div > div > pre > code .kd,
body > div.body > header > div > div > pre > code .k,
body > div.body > header > div > div > pre > code .kc,
body > div.body > header > div > div > pre > code .kr,
body > div.body > footer > div > pre > code .kd,
body > div.body > footer > div > pre > code .k,
body > div.body > footer > div > pre > code .kc,
body > div.body > footer > div > pre > code .kr,
body > div.body > footer > div > div > pre > code .kd,
body > div.body > footer > div > div > pre > code .k,
body > div.body > footer > div > div > pre > code .kc,
body > div.body > footer > div > div > pre > code .kr {
  color: hsl(183, 81%, 35%);
}
body > div > pre > code .p, body > div > pre > code .o,
body > div > div > pre > code .p,
body > div > div > pre > code .o,
body > section > div > pre > code .p,
body > section > div > pre > code .o,
body > section > div > div > pre > code .p,
body > section > div > div > pre > code .o,
body > article > div > pre > code .p,
body > article > div > pre > code .o,
body > article > div > div > pre > code .p,
body > article > div > div > pre > code .o,
body > header > div > pre > code .p,
body > header > div > pre > code .o,
body > header > div > div > pre > code .p,
body > header > div > div > pre > code .o,
body > footer > div > pre > code .p,
body > footer > div > pre > code .o,
body > footer > div > div > pre > code .p,
body > footer > div > div > pre > code .o,
body > div.body > div > pre > code .p,
body > div.body > div > pre > code .o,
body > div.body > div > div > pre > code .p,
body > div.body > div > div > pre > code .o,
body > div.body > section > div > pre > code .p,
body > div.body > section > div > pre > code .o,
body > div.body > section > div > div > pre > code .p,
body > div.body > section > div > div > pre > code .o,
body > div.body > article > div > pre > code .p,
body > div.body > article > div > pre > code .o,
body > div.body > article > div > div > pre > code .p,
body > div.body > article > div > div > pre > code .o,
body > div.body > header > div > pre > code .p,
body > div.body > header > div > pre > code .o,
body > div.body > header > div > div > pre > code .p,
body > div.body > header > div > div > pre > code .o,
body > div.body > footer > div > pre > code .p,
body > div.body > footer > div > pre > code .o,
body > div.body > footer > div > div > pre > code .p,
body > div.body > footer > div > div > pre > code .o {
  color: hsl(40, 100%, 67%);
}
body > div > pre > code .c, body > div > pre > code .c1, body > div > pre > code .cm,
body > div > div > pre > code .c,
body > div > div > pre > code .c1,
body > div > div > pre > code .cm,
body > section > div > pre > code .c,
body > section > div > pre > code .c1,
body > section > div > pre > code .cm,
body > section > div > div > pre > code .c,
body > section > div > div > pre > code .c1,
body > section > div > div > pre > code .cm,
body > article > div > pre > code .c,
body > article > div > pre > code .c1,
body > article > div > pre > code .cm,
body > article > div > div > pre > code .c,
body > article > div > div > pre > code .c1,
body > article > div > div > pre > code .cm,
body > header > div > pre > code .c,
body > header > div > pre > code .c1,
body > header > div > pre > code .cm,
body > header > div > div > pre > code .c,
body > header > div > div > pre > code .c1,
body > header > div > div > pre > code .cm,
body > footer > div > pre > code .c,
body > footer > div > pre > code .c1,
body > footer > div > pre > code .cm,
body > footer > div > div > pre > code .c,
body > footer > div > div > pre > code .c1,
body > footer > div > div > pre > code .cm,
body > div.body > div > pre > code .c,
body > div.body > div > pre > code .c1,
body > div.body > div > pre > code .cm,
body > div.body > div > div > pre > code .c,
body > div.body > div > div > pre > code .c1,
body > div.body > div > div > pre > code .cm,
body > div.body > section > div > pre > code .c,
body > div.body > section > div > pre > code .c1,
body > div.body > section > div > pre > code .cm,
body > div.body > section > div > div > pre > code .c,
body > div.body > section > div > div > pre > code .c1,
body > div.body > section > div > div > pre > code .cm,
body > div.body > article > div > pre > code .c,
body > div.body > article > div > pre > code .c1,
body > div.body > article > div > pre > code .cm,
body > div.body > article > div > div > pre > code .c,
body > div.body > article > div > div > pre > code .c1,
body > div.body > article > div > div > pre > code .cm,
body > div.body > header > div > pre > code .c,
body > div.body > header > div > pre > code .c1,
body > div.body > header > div > pre > code .cm,
body > div.body > header > div > div > pre > code .c,
body > div.body > header > div > div > pre > code .c1,
body > div.body > header > div > div > pre > code .cm,
body > div.body > footer > div > pre > code .c,
body > div.body > footer > div > pre > code .c1,
body > div.body > footer > div > pre > code .cm,
body > div.body > footer > div > div > pre > code .c,
body > div.body > footer > div > div > pre > code .c1,
body > div.body > footer > div > div > pre > code .cm {
  color: hsl(40, 100%, 67%);
}
body code,
body > section code,
body > article code,
body > header code,
body > footer code,
body > div.body code,
body > div.body > section code,
body > div.body > article code,
body > div.body > header code,
body > div.body > footer code {
  font-size: 0.8em;
  font-family: "MonacoBT", "Monaco", "Consolas", "Droid Sans Mono", "Source Code Pro", monospace;
}
body > ul:not(.links),
body > ol,
body > section > ul:not(.links),
body > section > ol,
body > article > ul:not(.links),
body > article > ol,
body > header > ul:not(.links),
body > header > ol,
body > footer > ul:not(.links),
body > footer > ol,
body > div.body > ul:not(.links),
body > div.body > ol,
body > div.body > section > ul:not(.links),
body > div.body > section > ol,
body > div.body > article > ul:not(.links),
body > div.body > article > ol,
body > div.body > header > ul:not(.links),
body > div.body > header > ol,
body > div.body > footer > ul:not(.links),
body > div.body > footer > ol {
  margin-left: calc(50vw - 20rem);
  margin-right: calc(50vw - 20rem);
  padding: 0.5em 2em;
}
@media (min-width: 888.8888888889px) {
  body > ul:not(.links),
  body > ol,
  body > section > ul:not(.links),
  body > section > ol,
  body > article > ul:not(.links),
  body > article > ol,
  body > header > ul:not(.links),
  body > header > ol,
  body > footer > ul:not(.links),
  body > footer > ol,
  body > div.body > ul:not(.links),
  body > div.body > ol,
  body > div.body > section > ul:not(.links),
  body > div.body > section > ol,
  body > div.body > article > ul:not(.links),
  body > div.body > article > ol,
  body > div.body > header > ul:not(.links),
  body > div.body > header > ol,
  body > div.body > footer > ul:not(.links),
  body > div.body > footer > ol {
    margin-left: calc(50vw - 20rem);
    margin-right: calc(50vw - 20rem);
  }
}
@media (max-width: 666.6666666667px) {
  body > ul:not(.links),
  body > ol,
  body > section > ul:not(.links),
  body > section > ol,
  body > article > ul:not(.links),
  body > article > ol,
  body > header > ul:not(.links),
  body > header > ol,
  body > footer > ul:not(.links),
  body > footer > ol,
  body > div.body > ul:not(.links),
  body > div.body > ol,
  body > div.body > section > ul:not(.links),
  body > div.body > section > ol,
  body > div.body > article > ul:not(.links),
  body > div.body > article > ol,
  body > div.body > header > ul:not(.links),
  body > div.body > header > ol,
  body > div.body > footer > ul:not(.links),
  body > div.body > footer > ol {
    margin-left: 5vw;
    margin-right: 5vw;
  }
}
body > .banner-section,
body > section > .banner-section,
body > article > .banner-section,
body > header > .banner-section,
body > footer > .banner-section,
body > div.body > .banner-section,
body > div.body > section > .banner-section,
body > div.body > article > .banner-section,
body > div.body > header > .banner-section,
body > div.body > footer > .banner-section {
  padding-left: calc(50vw - 20rem);
  padding-right: calc(50vw - 20rem);
  background: hsl(254, 29%, 35%);
  color: #ffffff;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
@media (min-width: 888.8888888889px) {
  body > .banner-section,
  body > section > .banner-section,
  body > article > .banner-section,
  body > header > .banner-section,
  body > footer > .banner-section,
  body > div.body > .banner-section,
  body > div.body > section > .banner-section,
  body > div.body > article > .banner-section,
  body > div.body > header > .banner-section,
  body > div.body > footer > .banner-section {
    padding-left: calc(50vw - 20rem);
    padding-right: calc(50vw - 20rem);
  }
}
@media (max-width: 666.6666666667px) {
  body > .banner-section,
  body > section > .banner-section,
  body > article > .banner-section,
  body > header > .banner-section,
  body > footer > .banner-section,
  body > div.body > .banner-section,
  body > div.body > section > .banner-section,
  body > div.body > article > .banner-section,
  body > div.body > header > .banner-section,
  body > div.body > footer > .banner-section {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
body > .banner-section strong,
body > section > .banner-section strong,
body > article > .banner-section strong,
body > header > .banner-section strong,
body > footer > .banner-section strong,
body > div.body > .banner-section strong,
body > div.body > section > .banner-section strong,
body > div.body > article > .banner-section strong,
body > div.body > header > .banner-section strong,
body > div.body > footer > .banner-section strong {
  color: #ffffff;
}
body > .banner-section.alt,
body > section > .banner-section.alt,
body > article > .banner-section.alt,
body > header > .banner-section.alt,
body > footer > .banner-section.alt,
body > div.body > .banner-section.alt,
body > div.body > section > .banner-section.alt,
body > div.body > article > .banner-section.alt,
body > div.body > header > .banner-section.alt,
body > div.body > footer > .banner-section.alt {
  background: hsl(183, 81%, 35%);
  color: #ffffff;
}
body > .banner-section.alt strong,
body > section > .banner-section.alt strong,
body > article > .banner-section.alt strong,
body > header > .banner-section.alt strong,
body > footer > .banner-section.alt strong,
body > div.body > .banner-section.alt strong,
body > div.body > section > .banner-section.alt strong,
body > div.body > article > .banner-section.alt strong,
body > div.body > header > .banner-section.alt strong,
body > div.body > footer > .banner-section.alt strong {
  color: #ffffff;
}
body > .banner-section.alt a,
body > section > .banner-section.alt a,
body > article > .banner-section.alt a,
body > header > .banner-section.alt a,
body > footer > .banner-section.alt a,
body > div.body > .banner-section.alt a,
body > div.body > section > .banner-section.alt a,
body > div.body > article > .banner-section.alt a,
body > div.body > header > .banner-section.alt a,
body > div.body > footer > .banner-section.alt a {
  color: hsl(40, 100%, 67%);
}
body > .banner-section.alt a:hover,
body > section > .banner-section.alt a:hover,
body > article > .banner-section.alt a:hover,
body > header > .banner-section.alt a:hover,
body > footer > .banner-section.alt a:hover,
body > div.body > .banner-section.alt a:hover,
body > div.body > section > .banner-section.alt a:hover,
body > div.body > article > .banner-section.alt a:hover,
body > div.body > header > .banner-section.alt a:hover,
body > div.body > footer > .banner-section.alt a:hover {
  color: hsl(254, 29%, 35%);
}
body > .banner-section a,
body > section > .banner-section a,
body > article > .banner-section a,
body > header > .banner-section a,
body > footer > .banner-section a,
body > div.body > .banner-section a,
body > div.body > section > .banner-section a,
body > div.body > article > .banner-section a,
body > div.body > header > .banner-section a,
body > div.body > footer > .banner-section a {
  color: hsl(40, 100%, 67%);
}
body > .banner-section a:hover,
body > section > .banner-section a:hover,
body > article > .banner-section a:hover,
body > header > .banner-section a:hover,
body > footer > .banner-section a:hover,
body > div.body > .banner-section a:hover,
body > div.body > section > .banner-section a:hover,
body > div.body > article > .banner-section a:hover,
body > div.body > header > .banner-section a:hover,
body > div.body > footer > .banner-section a:hover {
  color: hsl(183, 81%, 35%);
}
body > blockquote,
body > section > blockquote,
body > article > blockquote,
body > header > blockquote,
body > footer > blockquote,
body > div.body > blockquote,
body > div.body > section > blockquote,
body > div.body > article > blockquote,
body > div.body > header > blockquote,
body > div.body > footer > blockquote {
  margin-left: calc(50vw - 20rem);
  margin-right: calc(50vw - 20rem);
  padding: 0.5em 2em;
  background: hsl(254, 29%, 35%);
  color: #ffffff;
}
@media (min-width: 888.8888888889px) {
  body > blockquote,
  body > section > blockquote,
  body > article > blockquote,
  body > header > blockquote,
  body > footer > blockquote,
  body > div.body > blockquote,
  body > div.body > section > blockquote,
  body > div.body > article > blockquote,
  body > div.body > header > blockquote,
  body > div.body > footer > blockquote {
    margin-left: calc(50vw - 20rem);
    margin-right: calc(50vw - 20rem);
  }
}
@media (max-width: 666.6666666667px) {
  body > blockquote,
  body > section > blockquote,
  body > article > blockquote,
  body > header > blockquote,
  body > footer > blockquote,
  body > div.body > blockquote,
  body > div.body > section > blockquote,
  body > div.body > article > blockquote,
  body > div.body > header > blockquote,
  body > div.body > footer > blockquote {
    margin-left: 5vw;
    margin-right: 5vw;
  }
}
body > blockquote strong,
body > section > blockquote strong,
body > article > blockquote strong,
body > header > blockquote strong,
body > footer > blockquote strong,
body > div.body > blockquote strong,
body > div.body > section > blockquote strong,
body > div.body > article > blockquote strong,
body > div.body > header > blockquote strong,
body > div.body > footer > blockquote strong {
  color: #ffffff;
}
body > blockquote.scam-them,
body > section > blockquote.scam-them,
body > article > blockquote.scam-them,
body > header > blockquote.scam-them,
body > footer > blockquote.scam-them,
body > div.body > blockquote.scam-them,
body > div.body > section > blockquote.scam-them,
body > div.body > article > blockquote.scam-them,
body > div.body > header > blockquote.scam-them,
body > div.body > footer > blockquote.scam-them {
  background: hsl(183, 81%, 35%);
  color: #ffffff;
  position: relative;
  left: -2em;
}
body > blockquote.scam-them strong,
body > section > blockquote.scam-them strong,
body > article > blockquote.scam-them strong,
body > header > blockquote.scam-them strong,
body > footer > blockquote.scam-them strong,
body > div.body > blockquote.scam-them strong,
body > div.body > section > blockquote.scam-them strong,
body > div.body > article > blockquote.scam-them strong,
body > div.body > header > blockquote.scam-them strong,
body > div.body > footer > blockquote.scam-them strong {
  color: #ffffff;
}
body > blockquote.scam-me,
body > section > blockquote.scam-me,
body > article > blockquote.scam-me,
body > header > blockquote.scam-me,
body > footer > blockquote.scam-me,
body > div.body > blockquote.scam-me,
body > div.body > section > blockquote.scam-me,
body > div.body > article > blockquote.scam-me,
body > div.body > header > blockquote.scam-me,
body > div.body > footer > blockquote.scam-me {
  background: hsl(40, 100%, 67%);
  color: #000000;
  position: relative;
  left: 2em;
}
body > blockquote.scam-me strong,
body > section > blockquote.scam-me strong,
body > article > blockquote.scam-me strong,
body > header > blockquote.scam-me strong,
body > footer > blockquote.scam-me strong,
body > div.body > blockquote.scam-me strong,
body > div.body > section > blockquote.scam-me strong,
body > div.body > article > blockquote.scam-me strong,
body > div.body > header > blockquote.scam-me strong,
body > div.body > footer > blockquote.scam-me strong {
  color: #000000;
}
body > blockquote a,
body > section > blockquote a,
body > article > blockquote a,
body > header > blockquote a,
body > footer > blockquote a,
body > div.body > blockquote a,
body > div.body > section > blockquote a,
body > div.body > article > blockquote a,
body > div.body > header > blockquote a,
body > div.body > footer > blockquote a {
  color: hsl(40, 100%, 67%);
}
body > blockquote a:hover,
body > section > blockquote a:hover,
body > article > blockquote a:hover,
body > header > blockquote a:hover,
body > footer > blockquote a:hover,
body > div.body > blockquote a:hover,
body > div.body > section > blockquote a:hover,
body > div.body > article > blockquote a:hover,
body > div.body > header > blockquote a:hover,
body > div.body > footer > blockquote a:hover {
  color: hsl(183, 81%, 35%);
}
body > p > img,
body > p > video,
body > section > p > img,
body > section > p > video,
body > article > p > img,
body > article > p > video,
body > header > p > img,
body > header > p > video,
body > footer > p > img,
body > footer > p > video,
body > div.body > p > img,
body > div.body > p > video,
body > div.body > section > p > img,
body > div.body > section > p > video,
body > div.body > article > p > img,
body > div.body > article > p > video,
body > div.body > header > p > img,
body > div.body > header > p > video,
body > div.body > footer > p > img,
body > div.body > footer > p > video {
  max-width: 100%;
}
body > * > p:first-child,
body > section > * > p:first-child,
body > article > * > p:first-child,
body > header > * > p:first-child,
body > footer > * > p:first-child,
body > div.body > * > p:first-child,
body > div.body > section > * > p:first-child,
body > div.body > article > * > p:first-child,
body > div.body > header > * > p:first-child,
body > div.body > footer > * > p:first-child {
  margin-top: 0;
}
body > * > img + p,
body > section > * > img + p,
body > article > * > img + p,
body > header > * > img + p,
body > footer > * > img + p,
body > div.body > * > img + p,
body > div.body > section > * > img + p,
body > div.body > article > * > img + p,
body > div.body > header > * > img + p,
body > div.body > footer > * > img + p {
  margin-top: 0;
}
body > * > p:last-child,
body > section > * > p:last-child,
body > article > * > p:last-child,
body > header > * > p:last-child,
body > footer > * > p:last-child,
body > div.body > * > p:last-child,
body > div.body > section > * > p:last-child,
body > div.body > article > * > p:last-child,
body > div.body > header > * > p:last-child,
body > div.body > footer > * > p:last-child {
  margin-bottom: 0;
}

p, ul, ol {
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
  line-height: 1.3;
  margin: 1em 0;
}

strong, b {
  color: black;
}

a {
  font-weight: 700;
  font-style: normal;
  cursor: pointer;
  color: hsl(183, 81%, 35%);
  text-decoration: none;
}
a:hover {
  color: hsl(254, 29%, 35%);
  text-decoration: underline;
}

.float-left {
  float: left;
  padding-left: calc(50vw - 20rem) !important;
  background: hsl(183, 81%, 35%);
  color: #ffffff;
  margin: 0 1em 1em 0;
}
@media (min-width: 888.8888888889px) {
  .float-left {
    padding-left: calc(50vw - 20rem) !important;
  }
}
@media (max-width: 666.6666666667px) {
  .float-left {
    padding-left: 5vw !important;
  }
}
.float-left strong {
  color: #ffffff;
}
.float-left a {
  color: hsl(40, 100%, 67%);
}
.float-left a:hover {
  color: hsl(254, 29%, 35%);
}

p .float-left {
  margin: 0 1em 1em 1em;
}

.float-right {
  float: right;
  padding-right: calc(50vw - 20rem) !important;
  background: hsl(254, 29%, 35%);
  color: #ffffff;
  margin: 0 0 1em 1em;
}
@media (min-width: 888.8888888889px) {
  .float-right {
    padding-right: calc(50vw - 20rem) !important;
  }
}
@media (max-width: 666.6666666667px) {
  .float-right {
    padding-right: 5vw !important;
  }
}
.float-right strong {
  color: #ffffff;
}
.float-right a {
  color: hsl(40, 100%, 67%);
}
.float-right a:hover {
  color: hsl(183, 81%, 35%);
}

p .float-right {
  margin: 1em 0 1em 1em;
}

.float-left, .float-right {
  padding: 1em;
  max-width: 20rem;
  position: relative;
  z-index: 1;
}
.float-left p:first-child, .float-right p:first-child {
  margin-top: 0;
}
.float-left p:last-child, .float-right p:last-child {
  margin-bottom: 0;
}

ul.links {
  padding-left: calc(50vw - 20rem);
  padding-right: calc(50vw - 20rem);
  list-style: none;
  margin: 0;
}
@media (min-width: 888.8888888889px) {
  ul.links {
    padding-left: calc(50vw - 20rem);
    padding-right: calc(50vw - 20rem);
  }
}
@media (max-width: 666.6666666667px) {
  ul.links {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
ul.links > li {
  display: inline;
}
ul.links > li > a {
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
  color: hsl(254, 29%, 35%);
  text-decoration: none;
}
ul.links > li > a:hover {
  color: hsl(183, 81%, 35%);
}
ul.links > li:nth-child(n+2):before {
  content: " | ";
}
ul.links > li.right {
  float: right;
}
ul.links > li.right:before {
  display: none;
}

footer {
  clear: both;
  padding: 1em 0;
  color: #000000;
  margin-bottom: 1rem;
}
footer > *:first-child {
  margin-top: 0;
}

article > .hero {
  box-sizing: border-box;
  position: relative;
  left: calc(50vw - 20rem);
  right: calc(50vw - 20rem);
  width: calc(100% - 2 * calc(50vw - 20rem));
}
@media (min-width: 888.8888888889px) {
  article > .hero {
    left: calc(50vw - 20rem);
    width: calc(100% - 2 * calc(50vw - 20rem));
  }
}
@media (max-width: 666.6666666667px) {
  article > .hero {
    left: 5vw;
    width: calc(100% - 2 * 5vw);
  }
}

article > p > .hero {
  box-sizing: border-box;
  max-width: 100%;
}

.hero {
  border: 0.5rem hsl(183, 81%, 35%) solid;
  clear: both;
}

.pull-quote {
  box-sizing: border-box;
  position: relative;
  left: calc(50vw - 20rem);
  right: calc(50vw - 20rem);
  width: calc(100% - 2 * calc(50vw - 20rem));
  background: hsl(183, 81%, 35%);
  color: #ffffff;
  padding: 1rem;
  clear: both;
  font-size: 2em;
}
@media (min-width: 888.8888888889px) {
  .pull-quote {
    left: calc(50vw - 20rem);
    width: calc(100% - 2 * calc(50vw - 20rem));
  }
}
@media (max-width: 666.6666666667px) {
  .pull-quote {
    left: 5vw;
    width: calc(100% - 2 * 5vw);
  }
}
.pull-quote strong {
  color: #ffffff;
}
.pull-quote.alt {
  background: hsl(254, 29%, 35%);
  color: #ffffff;
}
.pull-quote.alt strong {
  color: #ffffff;
}
.pull-quote > p {
  text-align: center;
  font-family: Taste;
}

.maths {
  font-family: "Times New Roman", "Times", serif;
  font-weight: normal;
  font-style: italic;
}

p.centred {
  text-align: center;
}
p.centred img {
  max-width: 100%;
}

ul.blogposts {
  list-style: none;
  padding: 0 !important;
}
ul.blogposts > li {
  cursor: pointer;
  margin: 0.5em 0;
  padding: 1em 2em;
}
ul.blogposts > li a {
  color: hsl(40, 100%, 67%);
}
ul.blogposts > li a:hover {
  text-decoration: none;
}
ul.blogposts > li :first-child {
  margin-top: 0;
}
ul.blogposts > li :last-child {
  margin-bottom: 0;
}
ul.blogposts > li:nth-child(2n) {
  background: hsl(183, 81%, 35%);
  color: #ffffff;
}
ul.blogposts > li:nth-child(2n) strong {
  color: #ffffff;
}
ul.blogposts > li:nth-child(2n-1) {
  background: hsl(254, 29%, 35%);
  color: #ffffff;
}
ul.blogposts > li:nth-child(2n-1) strong {
  color: #ffffff;
}
ul.blogposts > li:hover {
  background: hsl(40, 100%, 67%);
  color: #000000;
}
ul.blogposts > li:hover strong {
  color: #000000;
}
ul.blogposts > li:hover:nth-child(2n) a {
  color: hsl(183, 81%, 35%);
}
ul.blogposts > li:hover:nth-child(2n-1) a {
  color: hsl(254, 29%, 35%);
}

h2.date {
  font-size: 1em;
}

.pagination {
  position: relative;
  left: calc(50vw - 20rem);
  right: calc(50vw - 20rem);
  width: calc(100% - 2 * calc(50vw - 20rem));
  text-align: center;
}
@media (min-width: 888.8888888889px) {
  .pagination {
    left: calc(50vw - 20rem);
    width: calc(100% - 2 * calc(50vw - 20rem));
  }
}
@media (max-width: 666.6666666667px) {
  .pagination {
    left: 5vw;
    width: calc(100% - 2 * 5vw);
  }
}
.pagination span, .pagination a {
  padding: 0.5em 1em;
  display: inline-block;
}
.pagination a.prev, .pagination a.next {
  background: hsl(254, 29%, 35%);
  color: #ffffff;
}
.pagination a.prev:hover, .pagination a.next:hover {
  background: hsl(40, 100%, 67%);
  color: hsl(254, 29%, 35%);
  text-decoration: none;
}
.pagination a.page {
  background: hsl(183, 81%, 35%);
  color: #ffffff;
}
.pagination a.page:hover {
  background: hsl(40, 100%, 67%);
  color: hsl(183, 81%, 35%);
  text-decoration: none;
}
.pagination span.page {
  background: hsl(40, 100%, 67%);
  color: #000000;
}
.parallax-image {
  background-color: hsl(254, 29%, 35%);
}

.page-footer {
  font-size: 0.75em;
}

button {
  background: hsl(40, 100%, 67%);
  color: hsl(254, 29%, 35%);
  border: 0.2em solid hsl(254, 29%, 35%);
  font-size: 1em;
  padding: 0.5em;
  font-family: "Taste";
  cursor: pointer;
}
button:hover {
  background: hsl(183, 81%, 35%);
  color: #ffffff;
  border: 0.2em solid hsl(183, 81%, 35%);
}

::-webkit-scrollbar {
  width: 12px;
}

::-webkit-scrollbar-track {
  background: hsl(254, 29%, 35%);
}

::-webkit-scrollbar-thumb {
  background: hsl(40, 100%, 67%);
  border: 1px solid hsl(254, 29%, 35%);
}

.crossword {
  position: relative;
  left: calc(50vw - 20rem);
  right: calc(50vw - 20rem);
  width: calc(100% - 2 * calc(50vw - 20rem));
  border: 1px solid black;
  border-collapse: collapse;
  box-model: border-box;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  background: black;
  color: black;
}
@media (min-width: 888.8888888889px) {
  .crossword {
    left: calc(50vw - 20rem);
    width: calc(100% - 2 * calc(50vw - 20rem));
  }
}
@media (max-width: 666.6666666667px) {
  .crossword {
    left: 5vw;
    width: calc(100% - 2 * 5vw);
  }
}
.crossword td {
  border: 1px solid black;
  box-shadow: 0 0 0 2px black;
  box-model: border-box;
  background: white;
  overflow: hidden;
  vertical-align: top;
  padding: 0;
  margin: 0;
  position: relative;
}
.crossword td.block {
  background: black;
}
.crossword td .value, .crossword td:before {
  position: absolute;
  font-size: 2em;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  text-align: center;
  text-transform: uppercase;
}
.crossword td:before {
  color: #aaf;
}
.crossword:focus, .crossword.fake-focus {
  outline: none;
}
.crossword:focus .highlight, .crossword.fake-focus .highlight {
  background: hsl(40, 100%, 67%) !important;
}
.crossword:focus .selected, .crossword.fake-focus .selected {
  background: #ccf !important;
  outline: 1px solid #08f;
}

.crossword.across:focus .selected:before,
.crossword.across.fake-focus .selected:before {
  content: "→";
}

.crossword.down:focus .selected:before,
.crossword.down.fake-focus .selected:before {
  content: "↓";
}

.crossword[width="5"] td {
  width: 20%;
}

.crossword[height="5"] td {
  height: 8rem;
}

.crossword[width="6"] td {
  width: 16.6666666667%;
}

.crossword[height="6"] td {
  height: 6.6666666667rem;
}

.crossword[width="7"] td {
  width: 14.2857142857%;
}

.crossword[height="7"] td {
  height: 5.7142857143rem;
}

.crossword[width="8"] td {
  width: 12.5%;
}

.crossword[height="8"] td {
  height: 5rem;
}

.crossword[width="9"] td {
  width: 11.1111111111%;
}

.crossword[height="9"] td {
  height: 4.4444444444rem;
}

.crossword[width="10"] td {
  width: 10%;
}

.crossword[height="10"] td {
  height: 4rem;
}

.crossword[width="11"] td {
  width: 9.0909090909%;
}

.crossword[height="11"] td {
  height: 3.6363636364rem;
}

.crossword[width="12"] td {
  width: 8.3333333333%;
}

.crossword[height="12"] td {
  height: 3.3333333333rem;
}

.crossword[width="13"] td {
  width: 7.6923076923%;
}

.crossword[height="13"] td {
  height: 3.0769230769rem;
}

.crossword[width="14"] td {
  width: 7.1428571429%;
}

.crossword[height="14"] td {
  height: 2.8571428571rem;
}

.crossword[width="15"] td {
  width: 6.6666666667%;
}

.crossword[height="15"] td {
  height: 2.6666666667rem;
}

.crossword[width="16"] td {
  width: 6.25%;
}

.crossword[height="16"] td {
  height: 2.5rem;
}

.crossword[width="17"] td {
  width: 5.8823529412%;
}

.crossword[height="17"] td {
  height: 2.3529411765rem;
}

.crossword[width="18"] td {
  width: 5.5555555556%;
}

.crossword[height="18"] td {
  height: 2.2222222222rem;
}

.crossword[width="19"] td {
  width: 5.2631578947%;
}

.crossword[height="19"] td {
  height: 2.1052631579rem;
}

.crossword[width="20"] td {
  width: 5%;
}

.crossword[height="20"] td {
  height: 2rem;
}

.crossword[width="21"] td {
  width: 4.7619047619%;
}

.crossword[height="21"] td {
  height: 1.9047619048rem;
}

.crossword[width="22"] td {
  width: 4.5454545455%;
}

.crossword[height="22"] td {
  height: 1.8181818182rem;
}

.crossword[width="23"] td {
  width: 4.347826087%;
}

.crossword[height="23"] td {
  height: 1.7391304348rem;
}

.crossword[width="24"] td {
  width: 4.1666666667%;
}

.crossword[height="24"] td {
  height: 1.6666666667rem;
}

.crossword[width="25"] td {
  width: 4%;
}

.crossword[height="25"] td {
  height: 1.6rem;
}

ul.clues {
  list-style: none;
  margin: 0 !important;
}
ul.clues li {
  margin-left: 2em;
  text-indent: -2em;
}
ul.clues li .clue-number:after {
  content: ".";
}
ul.clues li[data-lights] {
  cursor: pointer;
}
ul.clues li[data-lights]:hover {
  color: hsl(183, 81%, 35%);
}
ul.clues li.has-container {
  margin-left: 0em;
  text-indent: 0em;
}
ul.clues li.has-container.highlight {
  background: hsl(40, 100%, 67%);
  color: #000000;
  position: relative;
}
ul.clues li.has-container.highlight:before {
  content: " ";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -100vw;
  width: 300vw;
  z-index: -1;
  background: hsl(40, 100%, 67%);
}
ul.clues li.has-container .clue-text-container {
  display: block;
  margin-left: 2em;
  text-indent: -2em;
}

@media (min-width: 800px) and (min-aspect-ratio: 3/2) {
  body {
    padding-bottom: 0 !important;
    overflow-x: hidden;
  }
  article > *,
  header > *,
  footer.banner > * {
    padding-left: 100vh !important;
    padding-right: 1em !important;
  }
  article > *#controls,
  header > *#controls,
  footer.banner > *#controls {
    left: 0 !important;
    width: auto !important;
  }
  article > ul {
    margin-left: 1em !important;
    margin-right: 1em !important;
  }
  article > ul li {
    text-align: left;
  }
  article > .crossword {
    position: fixed;
    z-index: 5;
    left: 5vh;
    top: 5vh;
    width: 90vh;
    height: 90vh;
    box-shadow: 0 0.2em 1em black;
  }
  article > .crossword td {
    font-size: 2vh;
  }
  article > .crossword[width="5"] td {
    width: calc(20vh - 1px);
  }
  article > .crossword[height="5"] td {
    height: calc(20vh - 1px);
  }
  article > .crossword[height="5"] td > .value, article > .crossword[height="5"] td:before {
    line-height: calc(20vh - 1px);
    font-size: calc(15vh - 1px);
  }
  article > .crossword[width="6"] td {
    width: calc(16.6666666667vh - 1px);
  }
  article > .crossword[height="6"] td {
    height: calc(16.6666666667vh - 1px);
  }
  article > .crossword[height="6"] td > .value, article > .crossword[height="6"] td:before {
    line-height: calc(16.6666666667vh - 1px);
    font-size: calc(12.5vh - 1px);
  }
  article > .crossword[width="7"] td {
    width: calc(14.2857142857vh - 1px);
  }
  article > .crossword[height="7"] td {
    height: calc(14.2857142857vh - 1px);
  }
  article > .crossword[height="7"] td > .value, article > .crossword[height="7"] td:before {
    line-height: calc(14.2857142857vh - 1px);
    font-size: calc(10.7142857143vh - 1px);
  }
  article > .crossword[width="8"] td {
    width: calc(12.5vh - 1px);
  }
  article > .crossword[height="8"] td {
    height: calc(12.5vh - 1px);
  }
  article > .crossword[height="8"] td > .value, article > .crossword[height="8"] td:before {
    line-height: calc(12.5vh - 1px);
    font-size: calc(9.375vh - 1px);
  }
  article > .crossword[width="9"] td {
    width: calc(11.1111111111vh - 1px);
  }
  article > .crossword[height="9"] td {
    height: calc(11.1111111111vh - 1px);
  }
  article > .crossword[height="9"] td > .value, article > .crossword[height="9"] td:before {
    line-height: calc(11.1111111111vh - 1px);
    font-size: calc(8.3333333333vh - 1px);
  }
  article > .crossword[width="10"] td {
    width: calc(10vh - 1px);
  }
  article > .crossword[height="10"] td {
    height: calc(10vh - 1px);
  }
  article > .crossword[height="10"] td > .value, article > .crossword[height="10"] td:before {
    line-height: calc(10vh - 1px);
    font-size: calc(7.5vh - 1px);
  }
  article > .crossword[width="11"] td {
    width: calc(9.0909090909vh - 1px);
  }
  article > .crossword[height="11"] td {
    height: calc(9.0909090909vh - 1px);
  }
  article > .crossword[height="11"] td > .value, article > .crossword[height="11"] td:before {
    line-height: calc(9.0909090909vh - 1px);
    font-size: calc(6.8181818182vh - 1px);
  }
  article > .crossword[width="12"] td {
    width: calc(8.3333333333vh - 1px);
  }
  article > .crossword[height="12"] td {
    height: calc(8.3333333333vh - 1px);
  }
  article > .crossword[height="12"] td > .value, article > .crossword[height="12"] td:before {
    line-height: calc(8.3333333333vh - 1px);
    font-size: calc(6.25vh - 1px);
  }
  article > .crossword[width="13"] td {
    width: calc(7.6923076923vh - 1px);
  }
  article > .crossword[height="13"] td {
    height: calc(7.6923076923vh - 1px);
  }
  article > .crossword[height="13"] td > .value, article > .crossword[height="13"] td:before {
    line-height: calc(7.6923076923vh - 1px);
    font-size: calc(5.7692307692vh - 1px);
  }
  article > .crossword[width="14"] td {
    width: calc(7.1428571429vh - 1px);
  }
  article > .crossword[height="14"] td {
    height: calc(7.1428571429vh - 1px);
  }
  article > .crossword[height="14"] td > .value, article > .crossword[height="14"] td:before {
    line-height: calc(7.1428571429vh - 1px);
    font-size: calc(5.3571428571vh - 1px);
  }
  article > .crossword[width="15"] td {
    width: calc(6.6666666667vh - 1px);
  }
  article > .crossword[height="15"] td {
    height: calc(6.6666666667vh - 1px);
  }
  article > .crossword[height="15"] td > .value, article > .crossword[height="15"] td:before {
    line-height: calc(6.6666666667vh - 1px);
    font-size: calc(5vh - 1px);
  }
  article > .crossword[width="16"] td {
    width: calc(6.25vh - 1px);
  }
  article > .crossword[height="16"] td {
    height: calc(6.25vh - 1px);
  }
  article > .crossword[height="16"] td > .value, article > .crossword[height="16"] td:before {
    line-height: calc(6.25vh - 1px);
    font-size: calc(4.6875vh - 1px);
  }
  article > .crossword[width="17"] td {
    width: calc(5.8823529412vh - 1px);
  }
  article > .crossword[height="17"] td {
    height: calc(5.8823529412vh - 1px);
  }
  article > .crossword[height="17"] td > .value, article > .crossword[height="17"] td:before {
    line-height: calc(5.8823529412vh - 1px);
    font-size: calc(4.4117647059vh - 1px);
  }
  article > .crossword[width="18"] td {
    width: calc(5.5555555556vh - 1px);
  }
  article > .crossword[height="18"] td {
    height: calc(5.5555555556vh - 1px);
  }
  article > .crossword[height="18"] td > .value, article > .crossword[height="18"] td:before {
    line-height: calc(5.5555555556vh - 1px);
    font-size: calc(4.1666666667vh - 1px);
  }
  article > .crossword[width="19"] td {
    width: calc(5.2631578947vh - 1px);
  }
  article > .crossword[height="19"] td {
    height: calc(5.2631578947vh - 1px);
  }
  article > .crossword[height="19"] td > .value, article > .crossword[height="19"] td:before {
    line-height: calc(5.2631578947vh - 1px);
    font-size: calc(3.9473684211vh - 1px);
  }
  article > .crossword[width="20"] td {
    width: calc(5vh - 1px);
  }
  article > .crossword[height="20"] td {
    height: calc(5vh - 1px);
  }
  article > .crossword[height="20"] td > .value, article > .crossword[height="20"] td:before {
    line-height: calc(5vh - 1px);
    font-size: calc(3.75vh - 1px);
  }
  article > .crossword[width="21"] td {
    width: calc(4.7619047619vh - 1px);
  }
  article > .crossword[height="21"] td {
    height: calc(4.7619047619vh - 1px);
  }
  article > .crossword[height="21"] td > .value, article > .crossword[height="21"] td:before {
    line-height: calc(4.7619047619vh - 1px);
    font-size: calc(3.5714285714vh - 1px);
  }
  article > .crossword[width="22"] td {
    width: calc(4.5454545455vh - 1px);
  }
  article > .crossword[height="22"] td {
    height: calc(4.5454545455vh - 1px);
  }
  article > .crossword[height="22"] td > .value, article > .crossword[height="22"] td:before {
    line-height: calc(4.5454545455vh - 1px);
    font-size: calc(3.4090909091vh - 1px);
  }
  article > .crossword[width="23"] td {
    width: calc(4.347826087vh - 1px);
  }
  article > .crossword[height="23"] td {
    height: calc(4.347826087vh - 1px);
  }
  article > .crossword[height="23"] td > .value, article > .crossword[height="23"] td:before {
    line-height: calc(4.347826087vh - 1px);
    font-size: calc(3.2608695652vh - 1px);
  }
  article > .crossword[width="24"] td {
    width: calc(4.1666666667vh - 1px);
  }
  article > .crossword[height="24"] td {
    height: calc(4.1666666667vh - 1px);
  }
  article > .crossword[height="24"] td > .value, article > .crossword[height="24"] td:before {
    line-height: calc(4.1666666667vh - 1px);
    font-size: calc(3.125vh - 1px);
  }
  article > .crossword[width="25"] td {
    width: calc(4vh - 1px);
  }
  article > .crossword[height="25"] td {
    height: calc(4vh - 1px);
  }
  article > .crossword[height="25"] td > .value, article > .crossword[height="25"] td:before {
    line-height: calc(4vh - 1px);
    font-size: calc(3vh - 1px);
  }
  .software-keyboard {
    display: none !important;
  }
}
.software-keyboard {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: #bbb;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  padding: 1vw 0;
}
.software-keyboard > div {
  text-align: center;
}
.software-keyboard > div.sticky-clue {
  margin: 0.5em;
}
.software-keyboard > div.sticky-clue .clue-number:after {
  content: ".";
}
.software-keyboard > div > div {
  font-size: 8vw;
  text-align: center;
  display: inline-block;
  width: 9vw;
  overflow: hidden;
  margin: 0.5vw;
  background: #ddd !important;
  color: #000;
  border-radius: 1.5vw;
  border: 0 solid #888;
  border-width: 0 0 0.5vw 0;
}
.software-keyboard > div > div:focus {
  outline: none;
}
.software-keyboard > div > div.pressed {
  transform: translate(0, -9vw) scale(1.5, 1.5);
}

@media (pointer: coarse) {
  body {
    padding-bottom: 33vw;
  }
  body .software-keyboard {
    display: block;
  }
}
body:-moz-system-metric(touch-enabled) {
  padding-bottom: 33vw;
}
body:-moz-system-metric(touch-enabled) .software-keyboard {
  display: block;
}

/*# sourceMappingURL=crosswords.css.map */