@charset "UTF-8";
/* To use the light Solarized highlighting theme uncomment the following line */
/* If you want to tweak the Solarized colors you can do that here */
/* Non highlighted code colors */
/*! normalize-opentype.css v0.2.4 | MIT License | kennethormandy.com/journal/normalize-opentype-css */
/**
 * 1. Inherit style issues with custom selections, per robsterlini.co.uk/journal/opentype-and-selection-dont-mix
 * 2. Turn on kerning, standard ligatures, and proportional, oldstyle numerals
 *    Turn off all other ligatures, tabular, lining numerals, and alternates
      Uses same settings for tables
 * 3. Hard-codes fallback text selection for issue #18, color is Chrome’s per via http://stackoverflow.com/a/16094931/864799
 */
::selection {
  color: inherit; /* 1. */
  text-shadow: inherit; /* 2. */
  background-color: #ACCEF7; /* 3. */
}

html,
body,
table {
  font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "dlig" 0; /* 2. */
}

/* Headings
========================================================================== */
/**
 * 1. Turn on discretionary ligatures for larger headings
 */
h1,
h2,
h3 {
  font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "dlig" 1; /* 1. */
}

/* Text-level semantics
========================================================================== */
/**
 * 1. Change all letters to uppercase
 * 2. Turn on small caps for upper and lowercase letters
 */
abbr {
  text-transform: uppercase; /* 1 */
  font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "smcp" 1, "c2sc" 1; /* 2 */
}

/*
 * TODO: Turn on diagonal fractions where appropriate
 */
time {
  font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0;
}

/*
 * 1. Turn off kerning and ligatures,
 *    Turn on lining, tabular numerals, slashed zero
 */
pre,
kbd,
samp,
code {
  font-feature-settings: "kern" 0, "liga" 0, "calt" 1, "dlig" 0, "pnum" 0, "tnum" 1, "onum" 0, "lnum" 1, "zero" 1; /* 1. */
}

/**
 * 1. Turn on proper supercript numerals
 */
sup {
  font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "dlig" 0, "sups" 1; /* 1. */
}

/**
 * 1. Turn on proper subscript numerals
 */
sub {
  font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "dlig" 0, "subs" 1; /* 1. */
}

/* Grouping content
========================================================================== */
/**
 * TODO: Adds proper bullets
 */
/*
 * TODO:
 * 1. Adds counters for lists
 * 2. Use proper numerals for lists
 */
/**
 * Adds proper small caps
 */
/**
 * TODO: scmp, sc2c, pnum, case sensitive forms for postal codes
 */
/* Forms
========================================================================== */
/**
 * 1. Turns on lining, proportional numerals without clarified zeroes
 * TODO: Additional input modes https://developer.mozilla.org/en/docs/Web/HTML/Element/Input#attr-inputmode
 */
input[type=color],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=number],
input[type=range],
input[type=tel],
input[type=week] {
  font-feature-settings: "kern" 0, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 0, "lnum" 1, "zero" 0; /* 1. */
}

/* Localisation
========================================================================== */
/* Tables
========================================================================== */
/**
 * 1. Turns on tabular, lining numerals and slashed zero
 */
tbody,
caption {
  font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 0, "tnum" 1, "onum" 0, "lnum" 1, "zero" 1; /* 1. */
}

@font-face {
  font-family: "leanderregular";
  src: url("/assets/fonts/Leander-webfont.eot");
  src: url("/assets/fonts/Leander-webfont.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/Leander-webfont.woff") format("woff"), url("/assets/fonts/Leander-webfont.ttf") format("truetype"), url("/assets/fonts/Leander-webfont.svg#leanderregular") format("svg");
  font-display: swap;
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Crimson Text";
  src: url("/assets/fonts/CrimsonText-Bold.eot"); /* IE9 Compat Modes */
  src: url("/assets/fonts/CrimsonText-Bold.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/CrimsonText-Bold.woff") format("woff"), url("/assets/fonts/CrimsonText-Bold.ttf") format("truetype"), url("/assets/fonts/CrimsonText-Bold.svg#bfe4717502f841845321b5f9b9f45ab7") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: "Crimson Text";
  src: url("/assets/fonts/CrimsonText-BoldItalic.eot"); /* IE9 Compat Modes */
  src: url("/assets/fonts/CrimsonText-BoldItalic.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/CrimsonText-BoldItalic.woff") format("woff"), url("/assets/fonts/CrimsonText-BoldItalic.ttf") format("truetype"), url("/assets/fonts/CrimsonText-BoldItalic.svg#25df70ecdc24859f98685389d9497763") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-style: italic;
  font-weight: 700;
}
@font-face {
  font-family: "Crimson Text";
  src: url("/assets/fonts/CrimsonText-Italic.eot"); /* IE9 Compat Modes */
  src: url("/assets/fonts/CrimsonText-Italic.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/CrimsonText-Italic.woff") format("woff"), url("/assets/fonts/CrimsonText-Italic.ttf") format("truetype"), url("/assets/fonts/CrimsonText-Italic.svg#36e89fd555251cd3973cf29047a6c1e7") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-style: italic;
  font-weight: 400;
}
@font-face {
  font-family: "Crimson Text";
  src: url("/assets/fonts/CrimsonText-Regular.eot"); /* IE9 Compat Modes */
  src: url("/assets/fonts/CrimsonText-Regular.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/CrimsonText-Regular.woff") format("woff"), url("/assets/fonts/CrimsonText-Regular.ttf") format("truetype"), url("/assets/fonts/CrimsonText-Regular.svg#13dc73e3781b936ac8184d25c72fae4c") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}
@font-face {
  font-family: "Crimson Text";
  src: url("/assets/fonts/CrimsonText-Semibold.eot"); /* IE9 Compat Modes */
  src: url("/assets/fonts/CrimsonText-Semibold.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/CrimsonText-Semibold.woff") format("woff"), url("/assets/fonts/CrimsonText-Semibold.ttf") format("truetype"), url("/assets/fonts/CrimsonText-Semibold.svg#1a6af48eff0e5255a3bc47a902c47298") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-style: normal;
  font-weight: 600;
}
@font-face {
  font-family: "Crimson Text";
  src: url("/assets/fonts/CrimsonText-SemiboldItalic.eot"); /* IE9 Compat Modes */
  src: url("/assets/fonts/CrimsonText-SemiboldItalic.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/CrimsonText-SemiboldItalic.woff") format("woff"), url("/assets/fonts/CrimsonText-SemiboldItalic.ttf") format("truetype"), url("/assets/fonts/CrimsonText-SemiboldItalic.svg#a0ae1b4dc4cbc79571b025e54460add4") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-style: italic;
  font-weight: 600;
}
@font-face {
  font-family: "Gabriele Light Ribbon FG";
  src: url("/assets/fonts/gabriele-l.eot"); /* IE9 Compat Modes */
  src: url("/assets/fonts/gabriele-l.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/gabriele-l.woff") format("woff"), url("/assets/fonts/gabriele-l.ttf") format("truetype"), url("/assets/fonts/gabriele-l.svg#0ed3fed2c65fed3284b90a3f59d496d5") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-style: normal;
  font-weight: 200;
}
@font-face {
  font-family: "Special Elite";
  src: url("/assets/fonts/SpecialElite.eot"); /* IE9 Compat Modes */
  src: url("/assets/fonts/SpecialElite.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/SpecialElite.woff") format("woff"), url("/assets/fonts/SpecialElite.ttf") format("truetype"), url("/assets/fonts/SpecialElite.svg#e4c10bffce45b73048dcaf1bee6de156") format("svg"); /* Legacy iOS */
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}
.SiteHeader-logo {
  background-color: transparent;
  border: 0;
  overflow: hidden;
  /* IE 6/7 fallback */
  *text-indent: -9999px;
}
.SiteHeader-logo::before {
  content: "";
  display: block;
  width: 0;
  height: 150%;
}

.Signup-checkbox {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.u-hidden {
  display: none;
}

.twitter-tweet-rendered {
  margin-left: auto;
  margin-right: auto;
}

/* non highlighted code colors */
html {
  padding: 0;
  margin: 0;
}

.force-wrap {
  white-space: -moz-pre-wrap;
  white-space: -o-pre-wrap;
  white-space: pre-wrap;
  word-wrap: break-word;
}

body {
  background: #e4dfd6;
  color: #4a4a49;
  font-family: Georgia, Times, "Times New Roman", serif;
  font-size: 0.9375rem;
  line-height: 1.7;
  letter-spacing: -0.03em;
  margin: 0;
  padding: 0;
  position: relative;
}
body.fonts-loaded {
  font-family: "Crimson Text", Georgia, Times, "Times New Roman", serif;
  line-height: 1.5rem;
  letter-spacing: 0;
  font-size: 100%;
}
body::before {
  content: " ";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0.5;
  background: url("/assets/book-bg.jpg") top left;
  background-size: 62.0625rem 69.9375rem;
  z-index: -1;
}

h1,
.ArticleList-h {
  font-family: Georgia, serif;
  font-size: 1.125rem;
  font-weight: normal;
  line-height: 1.5rem;
  margin-bottom: 1.5rem;
  position: relative;
  text-align: center;
  text-transform: uppercase;
}
h1::after,
.ArticleList-h::after {
  background: url("/assets/owl.svg") center center no-repeat;
  background-size: contain;
  content: " ";
  display: block;
  height: 12.5vw;
  margin: 0.5rem auto 0;
  max-height: 2.5rem;
  max-width: 5.9375rem;
  width: 29.6875%;
}
.fonts-loaded h1,
.fonts-loaded .ArticleList-h {
  font-family: Leander, "leanderregular", Georgia, serif;
}

h2 {
  border-bottom: solid 0.0625rem #b95951;
  color: #b95951;
  font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "smcp" 1, "c2sc" 1;
  font-size: 1.125rem;
  font-variant: small-caps;
  font-weight: normal;
  margin: 1.4375rem 0 0;
  text-shadow: rgba(255, 255, 255, 0.7) 0 0.0625rem;
  text-transform: lowercase;
}

h3 {
  font-size: 1.125rem;
  font-style: italic;
  font-weight: 600;
  margin: 1.5rem 0 0;
}

h4 {
  font-size: 1rem;
  margin: 1.5rem 0 0;
}

figure {
  margin: 1.5rem 0;
  text-align: center;
}
figure img {
  display: block;
  height: auto;
  margin: 0 auto;
  max-width: 100%;
}

.caption,
figcaption {
  font-size: 0.875rem;
  font-style: italic;
  text-align: center;
}
.caption code,
figcaption code {
  font-size: 0.78125rem;
}

small {
  display: block;
  font-size: 0.75rem;
}

.footnotes p {
  text-align: left;
}

a {
  border-bottom: solid 0.0625rem;
  color: #1a4969;
  font-style: italic;
  text-decoration: none;
  transition: color 0.5s ease-in-out;
}

a:visited {
  color: #585161;
}

a:hover {
  color: #02918f;
}

a:focus,
a:active {
  background: #4a4a49;
  color: #02d2ce;
  outline: solid 0.1875rem #4a4a49;
  text-shadow: none;
}

p {
  -webkit-hyphens: auto;
  -webkit-hyphenate-limit-before: 3;
  -webkit-hyphenate-limit-after: 3;
  -webkit-hyphenate-limit-chars: 6 3 3;
  -webkit-hyphenate-limit-lines: 2;
  -webkit-hyphenate-limit-last: always;
  -webkit-hyphenate-limit-zone: 8%;
  -moz-hyphens: auto;
  -moz-hyphenate-limit-chars: 6 3 3;
  -moz-hyphenate-limit-lines: 2;
  -moz-hyphenate-limit-last: always;
  -moz-hyphenate-limit-zone: 8%;
  -ms-hyphens: auto;
  -ms-hyphenate-limit-chars: 6 3 3;
  -ms-hyphenate-limit-lines: 2;
  -ms-hyphenate-limit-last: always;
  -ms-hyphenate-limit-zone: 8%;
  hyphens: auto;
  hyphenate-limit-chars: 6 3 3;
  hyphenate-limit-lines: 2;
  hyphenate-limit-last: always;
  hyphenate-limit-zone: 8%;
  margin: 0;
  text-align: justify;
  text-shadow: rgba(255, 255, 255, 0.7) 0 0.0625rem;
}
p + p {
  text-indent: 1.5rem;
}

ul,
ol {
  margin: 0.75rem 0;
  padding-left: 1.125rem;
}

hr {
  background: url("/assets/hrule.svg") center center no-repeat;
  border: 0;
  display: block;
  height: 0.75rem;
  margin: 0 auto;
  padding: 1.125rem 0;
}

sup {
  font-size: 0.75em;
  line-height: 0;
  padding-left: 0.1666666667em;
}

blockquote {
  color: #b95951;
  font-size: 1.3125rem;
  font-style: italic;
  margin: 1.5rem 0;
  padding: 3rem 0;
  position: relative;
}
blockquote p {
  margin-bottom: 0.375rem;
  text-align: left;
}
blockquote p + p {
  text-indent: 0;
}
blockquote p:last-child {
  margin-bottom: 0;
}
blockquote::after, blockquote::before {
  background: url("/assets/decorative-top-border.svg") center center no-repeat;
  background-size: contain;
  content: " ";
  display: block;
  height: 1.5rem;
  margin: 0 auto;
  position: absolute;
  width: 100%;
}
blockquote::before {
  top: 0.375rem;
}
blockquote::after {
  bottom: 0.375rem;
  -moz-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.equation {
  padding-left: 2.25rem;
}

.var {
  font-style: italic;
}

.meta {
  font-style: italic;
  hyphens: none;
  line-height: 1.125rem;
  padding-bottom: 0.5625rem;
  padding-top: 0.1875rem;
  text-align: left;
}

[rel=footnote],
[rev=footnote],
.footnote,
.reversefootnote {
  border-bottom: 0;
  bottom: 0.5em;
  font-size: 0.75em;
  line-height: 0;
  padding: 0 0 0 0.5em;
  position: relative;
}
[rel=footnote]:hover,
[rev=footnote]:hover,
.footnote:hover,
.reversefootnote:hover {
  text-decoration: underline;
}

.citation {
  font-style: normal;
  border-bottom: none;
}
.citation:hover {
  border-bottom: solid 0.0625rem;
}

table {
  border-spacing: 0;
  margin: 1.5rem auto 0.75rem auto;
  overflow-x: auto;
  width: 100%;
  display: block;
}
table caption {
  text-align: left;
  font-weight: bold;
  margin-bottom: 0.75rem;
  padding-top: 0.75rem;
  position: caption;
}

tbody tr:last-child td {
  border-bottom: solid 2px;
}

td,
th {
  padding: 0 0.75rem;
}

thead th {
  border-bottom: solid 2px;
}

tbody > tr:nth-of-type(1) > td {
  padding-top: 0.625rem;
}

sub,
sup {
  line-height: 0;
}

.asc {
  text-transform: lowercase;
  font-variant: small-caps;
}

abbr {
  font-variant: all-small-caps;
}

@media (min-width: 42.625em) {
  main {
    font-size: 1.0625rem;
    line-height: 1.5882352941;
  }
  main.fonts-loaded {
    letter-spacing: -0.1px;
  }
  h1 {
    font-size: 1.25rem;
    line-height: 1.6875rem;
    margin-bottom: 1.6875rem;
    margin-top: 2.9375rem;
  }
  h1::after {
    height: 5.9895833333vw;
    margin: 1.6875rem auto 0;
    max-height: 2.875rem;
    max-width: 6.8125rem;
    width: 19.8181818182%;
  }
  .meta {
    line-height: 1.1666666667;
    padding: 0.375rem 0;
  }
  h2 {
    font-size: 1.25rem;
    line-height: 1.25rem;
    margin-bottom: 0.1875rem;
    margin-top: 1.875rem;
  }
  h3 {
    font-size: 1.3125rem;
    line-height: 1.6875rem;
    margin-top: 1.6875rem;
  }
  h4 {
    margin: 1.6875rem 0 0;
  }
  blockquote p {
    line-height: 1.2857142857;
  }
  hr {
    background-size: auto 0.8125rem;
    height: 3.375rem;
    padding: 0;
  }
  table {
    margin: 1.6875rem auto 0.84375rem;
  }
  td, th {
    padding: 0 0.84375rem;
  }
  tbody > tr:nth-of-type(1) > td {
    padding-top: 0.71875rem;
  }
  table caption {
    margin-bottom: 0.84375rem;
  }
  ol {
    padding-left: 1.6875rem;
  }
  .FigImg-img--2col {
    width: 47.545454545%;
    display: inline-block;
  }
}
@media (min-width: 64em) {
  main {
    font-size: 1.28125rem;
    line-height: 2.25rem;
  }
  h1 {
    font-size: 1.5rem;
    line-height: 2.25rem;
    margin-bottom: 2.5625rem;
    margin-top: 4.8125rem;
  }
  h1:after {
    height: 4.625rem;
    margin-top: 2rem;
    max-height: 4.625rem;
    max-width: 10.875rem;
    width: 10.875rem;
  }
  .meta {
    line-height: 1.875rem;
    padding: 0.0625rem 0 0.3125rem;
  }
  h2 {
    border-bottom: 0;
    font-size: 1.4375rem;
    line-height: 2.25rem;
    margin-bottom: 0;
    margin-top: 2.1875rem;
  }
  h2:after {
    background: #b95951;
    content: "";
    display: block;
    height: 0.0625rem;
    position: relative;
    top: -0.5rem;
    width: 100%;
  }
  h3 {
    font-size: 1.5rem;
    line-height: 2.25rem;
    margin-top: 2.25rem;
    position: relative;
    top: -0.125rem;
  }
  h4 {
    font-size: 1.28125rem;
    margin: 2.25rem 0 0 0;
  }
  hr {
    height: 4.5rem;
  }
  ul,
  ol {
    margin: 1.125rem 0;
  }
  ol {
    padding-left: 36px;
  }
  ul {
    padding-left: 0;
  }
  ul li {
    list-style: none;
    position: relative;
    padding-left: 2.25rem;
    margin-bottom: 1.125rem;
  }
  ul li:before {
    content: url("/assets/leaf-decoration-txt.svg");
    height: 1.1rem;
    width: 1.55rem;
    position: absolute;
    top: 0;
    left: 0;
  }
  [rel=footnote],
  [rev=footnote],
  .footnote,
  .reversefootnote {
    padding-left: 0.25em;
    font-style: normal;
  }
  blockquote {
    margin: 2.25rem 0;
    padding: 3.375rem 1.875rem;
    font-size: 24px;
  }
  blockquote:after, blockquote:before {
    height: 2.25rem;
  }
  blockquote:before {
    top: 0;
  }
  blockquote:after {
    bottom: 0;
  }
  blockquote p {
    margin-bottom: 0;
    line-height: 2.25rem;
    position: relative;
    top: -2px;
  }
  table {
    margin: 2.25rem auto 1.125rem auto;
  }
  td, th {
    padding: 0 1.125rem;
  }
  tbody > tr:nth-of-type(1) > td {
    padding-top: 1rem;
  }
  table caption {
    margin-bottom: 1.125rem;
  }
  figure {
    margin: 1.125rem 0;
  }
}
.flex-content {
  max-width: 100%;
  height: auto;
}

.l-footer {
  text-align: center;
  margin-top: 3rem;
}

.l-main,
.l-footer {
  padding: 0 5.625%;
}

.l-navContentWrapper-listing {
  display: table;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
}
.l-navContentWrapper-listing .l-nav {
  -webkit-box-ordinal-group: 1;
  -moz-box-ordinal-group: 1;
  -ms-flex-order: 1;
  -webkit-order: 1;
  order: 1;
  -webkit-box-flex: 1 100%;
  -moz-box-flex: 1 100%;
  -webkit-flex: 1 100%;
  -ms-flex: 1 100%;
  flex: 1 100%;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
  -webkit-flex-basis: auto;
  flex-basis: auto;
  display: table-caption;
}
.l-navContentWrapper-listing .l-main {
  -webkit-box-ordinal-group: 2;
  -moz-box-ordinal-group: 2;
  -ms-flex-order: 2;
  -webkit-order: 2;
  order: 2;
  -webkit-box-flex: 1 100%;
  -moz-box-flex: 1 100%;
  -webkit-flex: 1 100%;
  -ms-flex: 1 100%;
  flex: 1 100%;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
  -webkit-flex-basis: auto;
  flex-basis: auto;
}
.l-navContentWrapper-listing .l-footer {
  -webkit-box-ordinal-group: 3;
  -moz-box-ordinal-group: 3;
  -ms-flex-order: 3;
  -webkit-order: 3;
  order: 3;
  -webkit-box-flex: 1 100%;
  -moz-box-flex: 1 100%;
  -webkit-flex: 1 100%;
  -ms-flex: 1 100%;
  flex: 1 100%;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
  -webkit-flex-basis: auto;
  flex-basis: auto;
}

@media (min-width: 42.625em) {
  .l-navContentWrapper {
    display: table;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    margin: 0 3.125%;
  }
  .l-main {
    -webkit-box-ordinal-group: 2;
    -moz-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
    -webkit-box-flex: 1 100%;
    -moz-box-flex: 1 100%;
    -webkit-flex: 1 100%;
    -ms-flex: 1 100%;
    flex: 1 100%;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    -webkit-flex-basis: auto;
    flex-basis: auto;
    padding: 0 23.6111111111% 0 0;
    position: relative;
  }
  .l-main:after {
    background: url("/assets/mustachioed-gentleman.svg") top right no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 0;
    padding-bottom: 68.1818181818%;
    position: absolute;
    right: 0;
    top: 17.125rem;
    width: 19.8611111111%;
  }
  .l-nav {
    display: table-caption;
    display: flex;
    -webkit-box-flex: 1 100%;
    -moz-box-flex: 1 100%;
    -webkit-flex: 1 100%;
    -ms-flex: 1 100%;
    flex: 1 100%;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    -webkit-flex-basis: auto;
    flex-basis: auto;
    -webkit-box-ordinal-group: 1;
    -moz-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    width: 100%;
  }
  .l-footer {
    -webkit-box-ordinal-group: 3;
    -moz-box-ordinal-group: 3;
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
    -webkit-box-flex: 1 100%;
    -moz-box-flex: 1 100%;
    -webkit-flex: 1 100%;
    -ms-flex: 1 100%;
    flex: 1 100%;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    -webkit-flex-basis: auto;
    flex-basis: auto;
    padding: 0;
  }
}
@media (min-width: 64em) {
  [role=banner] {
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 90rem;
  }
  .SiteHeader {
    margin-right: 36.9444444444%;
  }
  .l-navContentWrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin: 0 auto;
    max-width: 1440px;
  }
  .l-main,
  .l-navContentWrapper-listing .l-main {
    -webkit-box-ordinal-group: 1;
    -moz-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    box-sizing: border-box;
    padding-right: 12.0833333333%;
    width: 75.1388888889%;
  }
  .l-main:after,
  .l-navContentWrapper-listing .l-main:after {
    padding-bottom: 50.4405286344%;
    top: 46.4375rem;
    width: 16.1737523105%;
  }
  .content {
    box-sizing: border-box;
    padding: 0 3.9647577093%;
  }
  .l-nav,
  .l-navContentWrapper-listing .l-nav {
    -webkit-box-flex: 1 24.8611111111%;
    -moz-box-flex: 1 24.8611111111%;
    -webkit-flex: 1 24.8611111111%;
    -ms-flex: 1 24.8611111111%;
    flex: 1 24.8611111111%;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    -webkit-flex-basis: auto;
    flex-basis: auto;
    -webkit-box-ordinal-group: 2;
    -moz-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
    box-sizing: border-box;
    display: block;
    margin-top: 4.5rem;
    padding-right: 2.5%;
    width: 24.8611111111%;
  }
  .l-footer {
    -webkit-box-ordinal-group: 3;
    -moz-box-ordinal-group: 3;
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
    padding: 0 2.5%;
  }
}
.SiteHeader-title {
  padding-top: 2.4375rem;
}

.SiteHeader-logo {
  background: url("/assets/james-sinclair.svg") center center no-repeat;
  background-size: contain;
  display: block;
  height: 50.9375vw;
  margin: 0 auto 2.25rem;
  max-height: 10.1875rem;
  max-width: 17.3125rem;
  position: relative;
  width: 86.5625%;
}
.SiteHeader-logo:focus {
  background-color: transparent;
  background-image: url("/assets/james-sinclair.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  outline: dotted 1px;
}

.SiteHeader-title {
  margin: 0;
}
.SiteHeader-title:after {
  content: none;
}

@media (min-width: 42.625em) {
  .SiteHeader-logo {
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 64em) {
  .SiteHeader-title {
    padding-top: 1.125rem;
  }
  .SiteHeader-logo {
    height: 12.375rem;
    margin-bottom: 0;
    margin-top: 0;
    max-height: 12.375rem;
    max-width: 21.0625rem;
    width: 21.0625rem;
  }
}
.ArticleList-h {
  border-bottom: 0;
  margin-bottom: 1.125rem;
  margin-top: 1.5rem;
}
.ArticleList-h:after {
  content: none;
}

.ArticleList-hlink:link, .ArticleList-hlink:visited {
  text-decoration: none;
  border-bottom: 0;
  color: #b95951;
  font-style: normal;
}
.ArticleList-hlink:hover {
  border-bottom: dotted 1px;
}

.ArticleList-meta {
  text-align: center;
}

.ArticleList-item + .ArticleList-item {
  margin-top: 1.875rem;
}
.ArticleList-item + .ArticleList-item:before {
  content: " ";
  display: block;
  height: 2.25rem;
  background: url("/assets/curly-divider.svg") no-repeat center center;
  background-size: contain;
  margin-bottom: 1.875rem;
}

.ArticleList-summary--story {
  text-align: center;
  font-style: italic;
}

@media (min-width: 42.625em) {
  .ArticleList {
    margin-top: 3.375rem;
  }
  .ArticleList-h {
    font-size: 1.25rem;
    line-height: 1.6875rem;
    margin-bottom: 1.125rem;
    margin-top: 1.6875rem;
    text-shadow: none;
  }
  .ArticleList-meta {
    font-size: 1rem;
    line-height: 1.3125rem;
    text-align: center;
    margin-bottom: 1.3125rem;
    padding: 0;
  }
  .ArticleList-item + .ArticleList-item:before {
    content: none;
  }
  .ArticleList-item:after {
    content: " ";
    display: block;
    height: 1.875rem;
    margin-bottom: 3.4375rem;
    margin-top: 2.75rem;
    background-size: contain;
    background: url("/assets/ornate-border.svg") center top no-repeat;
  }
  .l-main-listing:after {
    background-image: url("/assets/angel-with-bowl.svg");
    background-size: contain;
    width: 22.6388888889%;
    right: -2.1818181818%;
    padding-bottom: 47.6363636364%;
  }
}
@media (min-width: 64em) {
  .ArticleList {
    margin-top: 4.5rem;
    padding-top: 2.6875rem;
    position: relative;
  }
  .ArticleList:before {
    background-size: contain;
    background: url("/assets/ornate-border.svg") center top no-repeat;
    content: " ";
    display: block;
    height: 1.875rem;
    width: 100%;
    margin-top: 0.375rem;
    position: absolute;
    top: 0;
    transform: rotate(180deg);
  }
  .ArticleList-h {
    margin: 2.25rem 0;
    line-height: 2.25rem;
  }
  .ArticleList-meta {
    font-size: 1.28125rem;
    text-align: left;
    line-height: 2.25rem;
    margin: 0;
  }
  .ArticleList-item:after {
    margin: 2.25rem 0 4.5rem;
  }
  .ArticleList-h--story {
    margin-bottom: 1.125rem;
  }
}
nav {
  display: block;
}

.MainNav {
  list-style: none;
  margin: 1.5rem 0 0;
  padding: 0;
  text-align: center;
  width: 100%;
}
.MainNav:after {
  background: url("/assets/ornate-border.svg") center center no-repeat;
  content: " ";
  display: block;
  height: 3rem;
  padding-top: 0.75rem;
  width: 100%;
}

.MainNav-link {
  border-bottom: 0;
  display: block;
  font-family: Georgia, serif;
  font-size: 1.125rem;
  font-style: normal;
  line-height: 1;
  padding: 0 0 1.125rem;
}
.MainNav-link:link, .MainNav-link:visited {
  color: #b95951;
}
.fonts-loaded .MainNav-link {
  font-family: Leander, "leanderregular", Georgia, serif;
}

@media (min-width: 42.625em) {
  .MainNav {
    border-top: double 3px #b95951;
    border-bottom: double 3px #b95951;
    font-size: 1.09375rem;
    line-height: 1.125rem;
    margin-top: 0;
  }
  .MainNav:after {
    content: none;
  }
  .MainNav-item {
    display: inline;
    font-size: 1.09375rem;
    line-height: 2.375rem;
  }
  .MainNav-item:before {
    content: none;
  }
  .MainNav-item + .MainNav-item:before {
    content: url("/assets/dagger.svg");
    padding: 0 0.5em;
  }
  .MainNav-link {
    display: inline;
    padding-bottom: 0;
  }
  .MainNav-link:link,
  .MainNav-link:visited {
    color: #4a4a49;
  }
  .MainNav-link:link:hover,
  .MainNav-link:visited:hover {
    color: #02918f;
  }
}
@media (min-width: 64em) {
  .MainNav {
    border: 0;
  }
  .MainNav:before, .MainNav:after {
    background: url("/assets/ornate-border.svg") center top no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 0;
    padding-bottom: 9.3167701863%;
    width: 100%;
  }
  .MainNav:before {
    transform: rotate(180deg);
  }
  .MainNav-item {
    display: block;
    margin-bottom: 0.375rem;
    padding-left: 0;
  }
  .MainNav-item:first-child {
    margin-top: 0.5rem;
  }
  .MainNav-item:last-child {
    margin-bottom: 0.625rem;
  }
  .MainNav-item + .MainNav-item:before {
    content: none;
  }
  .MainNav-link:link,
  .MainNav-link:visited {
    color: #b95951;
    font-size: 1.5rem;
    line-height: 2.625rem;
  }
  .MainNav-link:link:hover,
  .MainNav-link:visited:hover {
    color: #b95951;
  }
  .MainNav-link:hover:before {
    content: url("/assets/leaf-decoration.svg");
    padding-right: 0.375rem;
    position: absolute;
    margin-left: -1.9375rem;
  }
}
.Sharing {
  margin: 3rem 0 4.5rem;
  padding: 0;
  list-style: none;
  text-align: center;
}
.Sharing::before, .Sharing::after {
  background: url("/assets/ornate-border.svg") center bottom no-repeat;
  content: "";
  display: block;
  height: 1.75rem;
  padding-top: 1.25rem;
}
.Sharing::before {
  transform: rotate(180deg);
}

.Sharing-item::after {
  background: url("/assets/hrule.svg") center center no-repeat;
  content: "";
  display: block;
  height: 4.5rem;
}
.Sharing-item:last-child::after {
  content: none;
}

@media (min-width: 42.625em) {
  .Sharing {
    background: none;
    margin: 1.6875rem 0;
    display: flex;
    justify-content: space-between;
  }
  .Sharing::before, .Sharing::after {
    content: none;
  }
  .Sharing-item {
    padding-bottom: 3.375rem;
    position: relative;
    width: 47.8181818182%;
  }
  .Sharing-item::before, .Sharing-item::after {
    background: url("/assets/ornate-border.svg") center bottom no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 1.6875rem;
    margin-top: 1.6875rem;
    width: 100%;
  }
  .Sharing-item::before {
    transform: rotate(180deg);
    position: relative;
    top: -1.6875rem;
  }
  .Sharing-item::after {
    position: absolute;
    bottom: 0;
  }
  .Sharing-item:last-child::after {
    content: "";
  }
}
@media (min-width: 64em) {
  .Sharing {
    font-size: 1.4375rem;
    line-height: 1.5652173913;
    background-size: 25.5rem 2.375rem;
    margin: 2.25rem 0;
    padding: 0 0 4.5rem;
  }
  .Sharing::before {
    height: 4.5rem;
  }
  .Sharing-item {
    padding-left: 0;
  }
}
.SignUpForm {
  margin-bottom: 1.5rem;
}
@media (min-width: 42.625em) {
  .SignUpForm {
    margin-bottom: 1.6875rem;
  }
}
@media (min-width: 64em) {
  .SignUpForm {
    margin-bottom: 2.25rem;
  }
}

code,
.gutter,
.line-numbers-rows > span:before {
  font-family: "Courier New", monospace;
  font-size: 0.875em;
  line-height: 1.125rem;
}
.fonts-loaded code,
.fonts-loaded .gutter,
.fonts-loaded .line-numbers-rows > span:before {
  font-family: "Gabriele Light Ribbon FG", "Courier New", monospace;
}
.windows code,
.windows .gutter,
.windows .line-numbers-rows > span:before {
  font-family: "Courier New", monospace;
}

p > code {
  font-size: 0.926829268em;
}

pre {
  margin: 1.5rem -6.6176470588%;
  position: relative;
}
pre:before {
  background: url("/assets/code-block-top.svg") top left no-repeat;
  content: " ";
  display: block;
  height: 5.4375rem;
  width: 100%;
}
pre:after {
  background: url("/assets/code-block-bottom.svg") bottom left no-repeat;
  content: " ";
  display: block;
  height: 5.625rem;
  margin-top: -2.625rem;
  width: 100%;
  z-index: -1;
}
pre code {
  background: #4b4a49;
  color: #eee8d5;
  display: block;
  margin-top: -2.4375rem;
  overflow: auto;
  padding: 0 5.625%;
}

.line-number {
  color: #9ac2cd;
}

.comment {
  color: #9ac2cd;
}

.delimiter {
  color: #9ac2cd;
}

.keyword,
.builtin {
  color: #ecb100;
}

.property {
  color: #ca4a15;
}

.tag {
  color: #ecb100;
}

.attr-name {
  color: #abc500;
}

.variable,
.this,
.global {
  color: #6cc2ff;
}

.function,
.constant,
.scope {
  color: #abc500;
}

.number {
  color: #36cfc3;
}

.string,
.attr-value {
  color: #36cfc3;
}

.class-name {
  color: #ff9cc1;
}

.punctuation {
  color: #eee8d5;
}

pre {
  scrollbar-face-color: #9ac2cd;
  scrollbar-shadow-color: #4b4a49;
  scrollbar-highlight-color: #4b4a49;
  scrollbar-3dlight-color: #4b4a49;
  scrollbar-darkshadow-color: #4b4a49;
  scrollbar-track-color: #656462;
  scrollbar-arrow-color: transparent;
}
pre ::-webkit-scrollbar {
  width: 10px;
  height: 10px;
  margin-left: 10px;
}
pre ::-webkit-scrollbar-track-piece {
  background-color: #656462;
}
pre ::-webkit-scrollbar-thumb {
  width: 3.125rem;
  background-color: #9ac2cd;
  border: 0.0625rem solid #4b4a49;
  -webkit-border-radius: 0.375rem;
}

.codetable tbody > tr td {
  display: block;
  padding: 0;
}

.codetable td:nth-child(1) pre {
  margin-bottom: 0;
}

.codetable td:nth-child(2) pre {
  margin-top: 0;
}

@media (min-width: 64em) {
  .codetable {
    margin: 1.25rem -4.3062200957% 1.3125rem;
  }
  .codetable pre {
    margin-left: 0;
    height: 100%;
  }
  .codetable tbody > tr td {
    display: table-cell;
    vertical-align: top;
    position: relative;
  }
  .codetable td:nth-child(1) pre {
    margin-bottom: 1.3125rem;
  }
  .codetable td:nth-child(2) pre {
    margin-top: 1.25rem;
  }
}
pre.line-numbers {
  position: relative;
  counter-reset: linenumber;
}

pre.line-numbers > code {
  position: relative;
  padding-left: 3em;
  padding-bottom: 1.125rem;
}

.line-numbers .line-numbers-rows {
  position: absolute;
  pointer-events: none;
  top: 0;
  font-size: 100%;
  left: 0;
  width: 3em; /* works for line-numbers below 1000 lines */
  letter-spacing: -1px;
  border-right: 0px solid #73868b;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.line-numbers-rows > span {
  pointer-events: none;
  display: block;
  counter-increment: linenumber;
  min-height: 1.125rem;
}

.line-numbers-rows > span:before {
  content: counter(linenumber);
  color: #9ac2cd;
  display: block;
  padding-right: 0.8em;
  text-align: right;
}

@media (min-width: 42.625em) {
  pre {
    border-image-slice: 6.8965517241% 7.8636959371% 7.0993914807% 0 fill;
    border-image-source: url("/assets/code-med.svg");
    border-width: 2.125rem 3.75rem 2.1875rem 0;
    border-style: solid;
    margin: 0.5rem -3.6363636364% 1.9375rem -4.5454545455%;
    -moz-border-image: url("/assets/code-med.png") 34 60 35 0 fill; /* Workaround for Firefox bug (fixed in v48, but as yet unreleased) */
    overflow: hidden;
    padding: 0.875rem 0 0.8125rem;
  }
  pre:before, pre:after {
    content: none;
  }
  pre code {
    margin-right: -7.4906367041%;
    margin-top: 0;
    padding: 0 0 0 4.4943820225%;
  }
}
@media (min-width: 64em) {
  pre {
    margin: 1.25rem -4.3062200957% 1.3125rem;
    padding: 1.6875rem 0;
  }
  pre.line-numbers > code {
    box-sizing: border-box;
    left: 0.125rem;
    padding-bottom: 1.6875rem;
    padding-left: 2.8125rem;
    top: 0.125rem;
    width: 100%;
  }
  .line-numbers .line-numbers-rows {
    width: 2.8125rem;
  }
  code,
  .line-numbers-rows > span::before {
    font-size: 1rem;
    line-height: 1.6875rem;
  }
  .line-numbers-rows > span {
    min-height: 1.6875rem;
  }
}
.googleplus h1 {
  -moz-box-shadow: none !important;
  -webkit-box-shadow: none !important;
  -o-box-shadow: none !important;
  box-shadow: none !important;
  border-bottom: 0px none !important;
}
.googleplus a {
  text-decoration: none;
  white-space: normal !important;
  line-height: 32px;
}
.googleplus a img {
  float: left;
  margin-right: 0.5em;
  border: 0 none;
}

.googleplus-hidden {
  position: absolute;
  top: -1000em;
  left: -1000em;
}

.delicious-posts a.delicious-link {
  margin-bottom: 0.5em;
  display: block;
}
.delicious-posts p {
  font-size: 1em;
}

.SmallPrint {
  display: table;
  width: 100%;
  font-style: italic;
}

.SmallPrint-copyright,
.SmallPrint-subscribe {
  display: table-cell;
  text-align: left;
}

.SmallPrint-subscribe {
  text-align: right;
}

.RSS {
  list-style: none;
  margin: 0;
  padding: 0;
}

.RSS-item {
  line-height: 1.5rem;
  text-align: center;
}

.RSS-link {
  font-size: 0.75rem;
  line-height: 1.5rem;
}

.mc-form::before, .mc-form::after,
.formkit-form::before,
.formkit-form::after {
  background: url("/assets/curly-divider.svg") no-repeat center;
  background-size: contain;
  content: " ";
  display: block;
  height: 2.25rem;
}
.mc-form::before,
.formkit-form::before {
  margin: 1.875rem 0;
}
.mc-form::after,
.formkit-form::after {
  margin: 1.875rem 0 2.125rem;
}

.mc-intro {
  font-style: italic;
  margin-bottom: 1.5rem;
  text-align: center;
}

.mc-field-group,
.formkit-field {
  display: flex;
}

.Signup-label {
  display: block;
  flex-basis: auto;
  font-style: italic;
  font-weight: bold;
  width: 6.1875rem;
}

.Signup-field,
.Signup-checkboxesList,
.formkit-input {
  display: block;
  flex-grow: 3;
}

.Signup-field,
.formkit-input {
  background: transparent url("/assets/dotted-bg.svg") left -3px repeat-x;
  border-width: 0;
  box-sizing: border-box;
  color: #10102b;
  font-family: "Gabriele Light Ribbon FG", "Courier New", monospace;
  height: 1.5rem;
}

.Signup-checkboxesLabel {
  box-sizing: border-box;
  float: left;
  padding: 0;
  width: 6.1875rem;
}

.Signup-checkboxes,
.Signup-checkboxesList {
  border: 0;
  margin: 0;
  padding: 0;
}

.Signup-checkboxes {
  display: block;
  margin-bottom: 1.125rem;
}

.Signup-checkboxesList {
  list-style: none;
  margin-left: 6.1875rem;
}

.Signup-checkboxLabel {
  font-style: italic;
}

.Signup-submitRow {
  text-align: right;
}
.Signup-submitRow::before {
  background: transparent url("/assets/button-arrow-right.svg") no-repeat center center;
  content: " ";
  display: inline-block;
  height: 1.125rem;
  position: relative;
  top: 0.25rem;
  width: 1rem;
}

.Signup-button {
  background: transparent;
  border: 0;
  color: #1a4969;
  font-family: "Crimson Text", Georgia, Times, "Times New Roman", serif;
  font-size: 1rem;
  font-style: italic;
  line-height: 1rem;
  padding: 0;
  text-decoration: underline;
}

[type=checkbox] + label::before {
  background: transparent url("/assets/checkbox.svg") right center no-repeat;
  content: " ";
  display: inline-block;
  height: 0.75rem;
  margin-right: 0.375rem;
  width: 0.75rem;
}
[type=checkbox]:checked + label::before {
  background-position: left center;
}

.SignUpForm--cheatsheet {
  margin: 4.5em 0 3.75em;
}

.Signup-submitRow--cheatsheet {
  text-align: center;
  margin-top: 1.5em;
}

.Signup-submitRow--cheatsheet::after {
  background: transparent url("/assets/button-arrow-right.svg") no-repeat center center;
  content: " ";
  display: inline-block;
  height: 1.125rem;
  position: relative;
  top: 0.25rem;
  transform: rotate(180deg);
  width: 1rem;
}

@media (min-width: 42.625em) {
  .mc-form, .formkit-form {
    margin: 0 auto 5.0625rem;
    max-width: 27rem;
  }
  .mc-form::before, .mc-form::after, .formkit-form::before, .formkit-form::after {
    background: url("/assets/ornate-border.svg") no-repeat center;
    height: 1.875rem;
  }
  .mc-form::before, .formkit-form::before {
    margin: 1.6875rem 0;
    transform: rotate(180deg);
  }
  .mc-form::after, .formkit-form::after {
    margin: 1.5rem 0 0;
  }
  .mc-intro {
    font-size: 1.0625rem;
    line-height: 1.5882352941;
    margin-bottom: 1.375rem;
  }
  .fonts-loaded .mc-intro {
    font-size: 1.125rem;
    line-height: 1.5;
  }
  .Signup-fields {
    font-size: 1.125rem;
    line-height: 2;
  }
  .Signup-checkboxesLabel,
  .Signup-label {
    width: 6.5rem;
  }
  .Signup-checkboxesList {
    margin-left: 6.5rem;
  }
  .Signup-checkboxes {
    margin-bottom: 0;
  }
  .Signup-submitRow {
    position: relative;
    top: -0.25rem;
  }
  .Signup-button {
    font-size: 1.125rem;
    line-height: 1.5;
  }
  .Signup-field,
  .formkit-input {
    background-position: left 0.375rem;
    font-size: 1rem;
    height: 2.25rem;
    line-height: 2.25;
  }
  .SignUpForm--cheatsheet {
    margin-top: 3.375rem;
    margin-bottom: 0;
  }
}
@media (min-width: 64em) {
  .mc-form, .formkit-form {
    margin-bottom: 1.125rem;
    max-width: 35.875rem;
  }
  .mc-form::before, .formkit-form::before {
    margin: 1.125rem 0;
  }
  .mc-form::after, .formkit-form::after {
    margin-bottom: 1.125rem;
  }
  .mc-intro,
  .fonts-loaded .mc-intro {
    font-size: 1.5rem;
    line-height: 1.5;
    margin-bottom: 1.125rem;
  }
  .Signup-label,
  .Signup-checkboxesLabel,
  .Signup-checkboxLabel {
    font-size: 1.5rem;
    line-height: 2;
  }
  .Signup-checkboxesLabel,
  .Signup-label {
    width: 9.25rem;
  }
  .Signup-checkboxesList {
    margin-left: 9.25rem;
  }
  .Signup-field,
  .formkit-input {
    font-size: 1.3125rem;
    line-height: 2.2857142857;
  }
  .Signup-checkboxItem {
    margin-bottom: 0;
    padding-left: 0;
  }
  .Signup-checkboxItem::before {
    content: none;
  }
  [type=checkbox] + label::before {
    background-image: url("/assets/checkboxes-lrg.svg");
    height: 1.125rem;
    margin-right: 0.5625rem;
    width: 1.125rem;
  }
  .Signup-button {
    font-size: 1.5rem;
    line-height: 1.5;
  }
  .Signup-submitRow::before,
  .Signup-submitRow--cheatsheet::after {
    background-size: contain;
    height: 1.3125rem;
    top: 0.125rem;
    width: 1.3125rem;
  }
  .Signup-submitRow {
    top: -0.4375rem;
  }
  .SignUpForm--cheatsheet {
    margin-bottom: 4.5rem;
  }
}
.CheatsheetCTA::before, .CheatsheetCTA::after {
  background: url("/assets/curly-divider.svg") no-repeat center;
  background-size: contain;
  content: " ";
  display: block;
  height: 2.25rem;
}
.CheatsheetCTA::before {
  margin: 3.375rem 0 1.875rem;
}
.CheatsheetCTA::after {
  margin: 1.875rem 0 3.375rem;
}

.CheatsheetCTA-title {
  text-align: center;
  border-bottom: none;
  margin-bottom: 0.0625rem;
}

.CheatsheetCTA-link {
  background: url(/assets/cta-button-bg.svg) center center no-repeat;
  border: none;
  display: block;
  height: 1.5rem;
  margin: 1.5rem auto 2.25rem;
  padding: 2.625rem 0;
  text-align: center;
  width: 10.9375rem;
}
.CheatsheetCTA-link:link, .CheatsheetCTA-link:visited {
  color: #f6f4f1;
}
.CheatsheetCTA-link:link, .CheatsheetCTA-link:focus {
  background: url(/assets/cta-button-bg.svg) center center no-repeat;
}
.CheatsheetCTA-link:focus, .CheatsheetCTA-link:active {
  outline: dotted 0.0625rem #02d2ce;
}
.CheatsheetCTA-link:hover {
  color: #fff;
}

@media (min-width: 42.625em) {
  .CheatsheetCTA {
    margin: 3.375rem auto 4.25rem;
    max-width: 27rem;
  }
  .CheatsheetCTA::before, .CheatsheetCTA::after {
    background: url("/assets/ornate-border.svg") no-repeat center;
    height: 1.875rem;
  }
  .CheatsheetCTA::before {
    margin: 0 0 1.6875rem;
    transform: rotate(180deg);
  }
  .CheatsheetCTA::after {
    margin: 2.34375rem 0 0;
  }
  .CheatsheetCTA-title {
    margin: 0.5rem 0 0.25rem;
  }
  .CheatsheetCTA-link {
    margin: 1.125rem auto 2.25rem;
  }
}
@media (min-width: 64em) {
  .CheatsheetCTA {
    margin: 3.75rem auto 4.75rem;
    max-width: 35.875rem;
  }
  .CheatsheetCTA::before {
    margin: 0;
  }
  .CheatsheetCTA::after {
    margin-bottom: 0;
  }
  .CheatsheetCTA-title {
    margin: 1.0625rem 0 0.0625rem;
  }
  .CheatsheetCTA-title::after {
    content: none;
  }
  .CheatsheetCTA-link {
    padding: 3.375rem;
    height: 2.25rem;
    width: 14.5625rem;
    margin-bottom: 1.125rem;
  }
}
.shopify-buy-frame {
  margin: 0 auto;
  margin-bottom: 1.5em;
}

.buy-buttons {
  margin-bottom: 3em;
  margin-top: 3em;
}

@media (min-width: 64em) {
  .buy-buttons {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
  }
}
@media (min-width: 64em) {
  .header-buy-buttons {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
  }
}
.book-container-skeptics-guide {
  display: flex;
  align-items: center;
  justify-content: center;
  perspective: 600px;
  margin: 5em 0;
}

@keyframes initAnimation-skeptics-guide {
  0% {
    transform: rotateY(-5deg);
  }
  100% {
    transform: rotateY(-30deg);
  }
}
.book-container-skeptics-guide .book {
  width: 306px;
  height: 459px;
  position: relative;
  transform-style: preserve-3d;
  transform: rotateY(-30deg);
  transition: transform 1s ease;
  animation: 1s ease 0s 1 initAnimation-skeptics-guide;
}

.book-container-skeptics-guide .book:hover {
  transform: rotateY(-5deg);
}

.book-container-skeptics-guide .book > :first-child {
  position: absolute;
  top: 0;
  left: 0;
  width: 306px;
  height: 459px;
  transform: translateZ(50px);
  background-color: #01060f;
  border-radius: 0 2px 2px 0;
  box-shadow: 5px 5px 20px #aaaaaa;
  background-color: #01060f;
}

.book-container-skeptics-guide .book::before {
  position: absolute;
  content: " ";
  left: 0;
  top: 0.1875rem;
  width: 3rem;
  height: 28.3125rem;
  transform: translateX(17.375rem) rotateY(90deg);
  background: linear-gradient(90deg, #fff 0%, #f9f9f9 5%, #fff 10%, #f9f9f9 15%, #fff 20%, #f9f9f9 25%, #fff 30%, #f9f9f9 35%, #fff 40%, #f9f9f9 45%, #fff 50%, #f9f9f9 55%, #fff 60%, #f9f9f9 65%, #fff 70%, #f9f9f9 75%, #fff 80%, #f9f9f9 85%, #fff 90%, #f9f9f9 95%, #fff 100%);
}

.book-container-skeptics-guide .book::after {
  position: absolute;
  top: 0;
  left: 0;
  content: " ";
  width: 306px;
  height: 459px;
  transform: translateZ(-1.5625rem);
  background-color: #01060f;
  border-radius: 0 2px 2px 0;
  box-shadow: -10px 0 50px 10px #aaaaaa;
}

.shop-iframe {
  width: 100%;
  border: 0 none;
  min-height: 100vh;
}