@charset "UTF-8";
:root {
  --color-background: #f0eae6;
  --color-surface: #fff9f4;
  --color-surface-strong: #ffffff;
  --color-surface-nav: #e4e4e4;
  --color-border: #d8d0c8;
  --color-border-strong: #b8afa7;
  --color-text: rgba(0, 0, 0, 0.8);
  --color-text-strong: #13262F;
  --color-text-ui: #666666;
  --color-text-muted: #7a7a7a;
  --color-text-on-accent: #13262F;
  --color-link: #fff07c;
  --color-link-underline: #b1c1c0;
  --color-shadow: rgba(0, 0, 0, 0.2);
  --color-selection: #fff07c;
  --color-code-bg: rgba(0, 0, 0, 0.08);
  --color-code-border: rgba(0, 0, 0, 0.15);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) {
    --color-background: #0f141a;
    --color-surface: #1b232c;
    --color-surface-strong: #232f3a;
    --color-surface-nav: #1f2b35;
    --color-border: #2d3a45;
    --color-border-strong: #3c4b57;
    --color-text: rgba(233, 241, 247, 0.92);
    --color-text-strong: #f1f5f8;
    --color-text-ui: #b5c2cc;
    --color-text-muted: #9aaab5;
    --color-text-on-accent: #0f141a;
    --color-link: #ffd873;
    --color-link-underline: #556473;
    --color-shadow: rgba(0, 0, 0, 0.6);
    --color-selection: #32475c;
    --color-code-bg: rgba(255, 255, 255, 0.08);
    --color-code-border: rgba(255, 255, 255, 0.2);
  }
}
:root[data-theme=dark] {
  --color-background: #0f141a;
  --color-surface: #1b232c;
  --color-surface-strong: #232f3a;
  --color-surface-nav: #1f2b35;
  --color-border: #2d3a45;
  --color-border-strong: #3c4b57;
  --color-text: rgba(233, 241, 247, 0.92);
  --color-text-strong: #f1f5f8;
  --color-text-ui: #b5c2cc;
  --color-text-muted: #9aaab5;
  --color-text-on-accent: #0f141a;
  --color-link: #ffd873;
  --color-link-underline: #556473;
  --color-shadow: rgba(0, 0, 0, 0.6);
  --color-selection: #32475c;
  --color-code-bg: rgba(255, 255, 255, 0.08);
  --color-code-border: rgba(255, 255, 255, 0.2);
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/*! HTML5 Boilerplate v6.1.0 | MIT License | https://html5boilerplate.com/ */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
html {
  color: var(--color-text);
  font-size: 16px;
  line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */
::-moz-selection {
  background: var(--color-selection);
  text-shadow: none;
}

::selection {
  background: var(--color-selection);
  text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid var(--color-border-strong);
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */
.browserupgrade {
  margin: 0.2em 0;
  background: var(--color-surface-nav);
  color: var(--color-text-strong);
  padding: 0.2em 0;
}

/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
 * Hide visually and from screen readers
 */
.hidden {
  display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap; /* 1 */
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
  white-space: inherit;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */
.invisible {
  visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before,
.clearfix:after {
  content: " "; /* 1 */
  display: table; /* 2 */
}

.clearfix:after {
  clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */
@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}
/******************
*	FONTS
*******************/
/* @font-face {
	font-family: 'Bitter';
    src:
        local('Bitter'),
        url('/static/fonts/Bitter/Bitter-Regular.ttf') format('truetype');
	font-weight: normal;
    font-style: normal;
    font-display: swap;
} */
html {
  overflow-y: scroll;
}

html, body {
  height: 100%;
}

body {
  background: var(--color-background);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  width: 100%;
  position: relative;
  opacity: 1;
  height: auto;
  min-height: 100%;
  color: var(--color-text);
}

main a {
  color: var(--color-text);
}
main a:hover {
  color: var(--color-text);
}
main a:hover .cta {
  text-decoration: underline;
}
main a.cta, main a .cta {
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  text-decoration: none;
  color: var(--color-text-ui);
  display: inline-block;
  padding-right: 29px;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
main a.cta:hover, main a .cta:hover {
  color: var(--color-text);
  text-decoration: underline;
}
main a.cta::after, main a .cta::after {
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  display: inline-block;
  content: "→";
  color: var(--color-text);
  width: 33px;
  height: 11px;
  background-size: 100%;
  margin-right: -29px;
  padding-left: 5px;
}
main a img {
  display: none;
}
main p {
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
}
main p a, main p a.cta {
  color: var(--color-text);
  text-decoration: var(--color-link-underline) underline;
}
main p a:hover, main p a.cta:hover {
  color: var(--color-text);
}
main img.thumbnail, main .thumbnail, main .thumbnail img {
  border-radius: 5px;
}

h1, h2, h3, h4 {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  line-height: 120%;
}

p {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  font-size: 22px;
}
p.dek {
  position: relative;
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  font-size: 28px;
  line-height: 125%;
}
p.dek span {
  white-space: nowrap;
}
p.dek:first-of-type {
  padding-top: 50px;
}
p.dek:first-of-type::before {
  border-left: 1px solid var(--color-text-ui);
  height: 50px;
  position: absolute;
  top: -5px;
  left: 2px;
  display: inline-block;
  content: " ";
}

h1, h4.section-header {
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  font-size: 43px;
  margin: 6px 0 0 0;
}
h1 span, h4.section-header span {
  white-space: nowrap;
}

h2 {
  font-size: 34px;
  margin-top: 58px;
  margin-bottom: 22px;
}
h2 span {
  white-space: nowrap;
}

h3 {
  font-size: 27px;
  margin-top: 36px;
  margin-bottom: 14px;
}
h3 span {
  white-space: nowrap;
}

h4 {
  font-size: 21px;
  font-weight: bold;
  margin-bottom: 9px;
}
h4 span {
  white-space: nowrap;
}

ol, blockquote, pre {
  margin-bottom: 36px;
}

li {
  margin-bottom: 14px;
}

blockquote {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  margin: 0 0 36px 0;
  padding: 10px;
  background-color: var(--color-surface);
  border-style: solid;
  border-color: var(--color-text-ui);
  border-width: 0 1px;
  font-style: italic;
  line-height: 171%;
  font-size: 21px;
  color: var(--color-text);
}

sub, sup {
  padding: 0 1px;
}

code, pre, kbd {
  font-size: 19px;
}

code {
  background-color: var(--color-code-bg);
  padding: 5px 6px;
  border-radius: 9px;
  margin: 0 1px;
}

pre {
  padding: 14px;
  border-style: solid;
  border-color: var(--color-code-border);
  border-width: 0 0 0 9px;
}

.kicker {
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  font-size: 16px;
  text-transform: uppercase;
  color: var(--color-text-ui);
}

::selection {
  background-color: var(--color-link);
}

.nowrap {
  white-space: nowrap;
}

.transition-fade {
  transition: 0.4s;
  opacity: 1;
}

html.is-animating .transition-fade {
  opacity: 0;
}

#root {
  box-sizing: border-box;
  margin: 0 auto;
}

.container {
  margin: 0 auto;
  max-width: 1430px;
  min-width: 900px;
  display: grid;
  grid-template-areas: ". . . . . . . . . . . . . . . . . . . . . ." "face name name name name nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav ." ". . . . . . . . . . . . . . . . . . . . . ." ". . . . statement statement statement statement statement statement statement . . . . . . . . . . ." ". indent indent . main main main main main main main main main main main main main main main main main ." ". . . . footer footer footer footer footer . . . . . . . copyright copyright copyright copyright . ." ". . . . . . . . . . . . . . . . . . . . . .";
  grid-template-columns: repeat(22, 1fr);
  grid-template-rows: 65px auto 65px auto 1fr auto 65px;
  grid-row-gap: 0;
  min-height: 100vh;
}

main {
  grid-area: main;
  margin: 0;
}
main .cell.all {
  grid-column: 1/-1;
}
main .cell.full {
  grid-column: 1/span 16;
}
main .cell.extrawide {
  grid-column: 1/span 12;
}
main .cell.wide {
  grid-column: 1/span 11;
}
main .cell.thumbnail {
  grid-column: 13/span 5;
  justify-self: start;
  align-self: start;
}
main .cell.odd {
  grid-column: 1/span 8;
  justify-self: start;
}
main .cell.even {
  grid-column: 10/span 8;
  justify-self: start;
}
main .cell.narrow {
  grid-column: 1/span 5;
  justify-self: start;
}
main .cell.narrow.second {
  grid-column: 7/span 5;
  justify-self: start;
}
main .cell.narrow.third {
  grid-column: 13/span 5;
  justify-self: start;
}
main .cell.knockout {
  background: var(--color-surface);
  transition: 0.25s;
  transition-property: all;
  transition-duration: 0.25s;
  transition-timing-function: ease;
  transition-delay: 0s;
  border-radius: 10px;
  align-self: stretch;
}
main .cell.knockout:hover {
  background: var(--color-surface-strong);
  opacity: 1;
  box-shadow: 0 10px 40px var(--color-shadow);
  color: var(--color-text-strong);
  border-color: transparent !important;
}
main .cell-block {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
}
main .cell-block a {
  text-decoration: none;
  display: block;
  overflow: hidden;
  min-width: 100%;
  background-color: var(--color-surface);
  border-radius: 3px;
  height: 100%;
}
main .cell-block a:hover {
  background-color: var(--color-surface-strong);
}
main .cell-block a p.kicker {
  margin-bottom: 0px;
}
main .cell-block .title-block {
  display: block;
  overflow: hidden;
  margin: 50px;
  padding-bottom: 200px;
}
main .cell-block .thumb-block {
  width: 100%;
  height: 200px;
  position: absolute;
  bottom: 0;
  display: block;
  overflow: hidden;
}
main .cell-block .thumb-block .thumbnail {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
main .cell-block .thumb-block .thumbnail img {
  display: inline-block;
  overflow: hidden;
  width: 100%;
  vertical-align: middle;
}
main .cell-block .thumb-block .dek {
  display: block;
  overflow: hidden;
  margin: 0 50px 50px 50px;
  padding: 0;
  font-size: 20px;
}
main .cell-block .thumb-block .dek span {
  display: block;
  overflow: hidden;
  width: 100%;
  padding-top: 25px;
}
main .cell-block .thumb-block .dek::before {
  display: none;
}
main hr.clear {
  grid-column: 1/span 1;
  border-color: transparent;
}
main hr.small {
  grid-column: 1/span 1;
  border-color: var(--color-text-ui);
  margin-top: 11px;
  width: 90%;
}
main hr.first {
  grid-column: 1/span 2;
  border-color: var(--color-text-ui);
  margin-top: 11px;
  width: 98%;
}
main article {
  display: grid;
  grid-template-columns: repeat(17, 65px);
  grid-template-rows: auto;
  grid-row-gap: 65px;
}

section#spine {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  background-color: var(--color-surface-nav);
  width: 170px;
  height: 100%;
}

.indent {
  grid-area: indent;
  width: 100%;
  padding: 15px 0 0 0;
}
.indent p {
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  color: var(--color-text-ui);
  font-size: 12px;
  line-height: 140%;
  padding-bottom: 10px;
}
.indent p a {
  text-decoration: none;
  color: var(--color-text-ui);
}
.indent p a:hover {
  color: var(--color-text);
}

.name {
  grid-area: name;
  display: flex;
  align-items: flex-end;
}
.name p {
  color: var(--color-text-ui);
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  line-height: 1.2;
}
.name p a {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  position: relative;
  padding: 0 3px 3px 0;
  text-decoration: none;
  color: var(--color-text-ui);
  font-weight: 500;
}
.name p a:hover {
  color: var(--color-text);
}
.name p a:hover::after {
  border-bottom-color: var(--color-text);
}

.statement {
  grid-area: statement;
  display: flex;
  align-items: flex-end;
  padding-bottom: 2px;
  color: var(--color-text-ui);
}
.statement span {
  font-size: 22px;
}

.statement-line2 {
  display: flex;
  align-items: flex-end;
  padding-bottom: 2px;
  color: var(--color-text-ui);
  grid-area: statement;
  grid-row: 3/span 1;
  margin-top: -3px;
  align-items: flex-start;
}
.statement-line2 span {
  font-size: 22px;
}

nav {
  grid-area: nav;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  width: 100%;
}
nav ul {
  display: block;
  float: right;
  padding: 0;
  margin: 0;
  top: 0;
  /* Default (light) state */
  /* Dark state */
  /* Respect prefers-color-scheme when user hasn't set data-theme */
}
nav ul li {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  float: left;
  list-style: none;
  color: var(--color-text-ui);
  padding: 0 5px 2px 20px;
  margin: 0;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}
nav ul li a {
  padding: 2px 5px;
  margin: 0 -5px;
  border-radius: 2px;
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  text-decoration: none;
  color: var(--color-text-ui);
  -webkit-transition: all 0.4s ease-out, border-bottom-color 0.2s ease-out;
  -moz-transition: all 0.4s ease-out, border-bottom-color 0.2s ease-out;
  -ms-transition: all 0.4s ease-out, border-bottom-color 0.2s ease-out;
  -o-transition: all 0.4s ease-out, border-bottom-color 0.2s ease-out;
  transition: all 0.4s ease-out, border-bottom-color 0.2s ease-out;
}
nav ul li a:hover {
  color: var(--color-text-on-accent);
  background-color: var(--color-link) !important;
}
nav ul li a.on {
  background-color: var(--color-link);
  color: var(--color-text-on-accent);
}
nav ul li a.on:hover {
  background-color: var(--color-link);
  color: var(--color-text-on-accent);
}
nav ul:hover li a:not(.on) {
  background-color: transparent;
}
nav ul li.theme-toggle-item {
  display: flex;
  align-items: center;
  padding-right: 10px;
}
nav ul button.theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  gap: 0;
  width: 26px;
  height: 26px;
  padding: 0;
  margin: 0 -5px;
  border-radius: 8px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--color-text-ui);
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  font-size: 14px;
  cursor: pointer;
  -webkit-transition: color 0.3s ease-out, background-color 0.3s ease-out, border-color 0.2s ease-out;
  -moz-transition: color 0.3s ease-out, background-color 0.3s ease-out, border-color 0.2s ease-out;
  -ms-transition: color 0.3s ease-out, background-color 0.3s ease-out, border-color 0.2s ease-out;
  -o-transition: color 0.3s ease-out, background-color 0.3s ease-out, border-color 0.2s ease-out;
  transition: color 0.3s ease-out, background-color 0.3s ease-out, border-color 0.2s ease-out;
}
nav ul button.theme-toggle:hover {
  color: var(--color-text);
  background: transparent;
  border-color: transparent;
}
nav ul button.theme-toggle:focus-visible {
  outline: 2px solid var(--color-link);
  outline-offset: 2px;
}
nav ul button.theme-toggle .icon {
  position: absolute;
  top: 50%;
  left: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  margin: -10px 0 0 -9px;
  opacity: 0;
  -webkit-transition: opacity 0.45s ease, color 0.45s ease;
  -moz-transition: opacity 0.45s ease, color 0.45s ease;
  -ms-transition: opacity 0.45s ease, color 0.45s ease;
  -o-transition: opacity 0.45s ease, color 0.45s ease;
  transition: opacity 0.45s ease, color 0.45s ease;
}
nav ul button.theme-toggle svg {
  width: 100%;
  height: 100%;
  stroke: currentColor;
  stroke-width: 1.6;
  fill: none;
}
nav ul button.theme-toggle .icon.icon-sun {
  opacity: 1;
  color: var(--color-text-ui);
}
nav ul button.theme-toggle .icon.icon-moon {
  opacity: 0;
  color: var(--color-text-ui);
}
nav ul button.theme-toggle:hover .icon.icon-sun {
  opacity: 0;
}
nav ul button.theme-toggle:hover .icon.icon-moon {
  opacity: 1;
  color: var(--color-text-strong);
}
html[data-theme=dark] nav ul button.theme-toggle .icon.icon-sun {
  opacity: 0;
  color: var(--color-link);
}

html[data-theme=dark] nav ul button.theme-toggle .icon.icon-moon {
  opacity: 1;
  color: var(--color-text-ui);
}

html[data-theme=dark] nav ul button.theme-toggle:hover .icon.icon-sun {
  opacity: 1;
}

html[data-theme=dark] nav ul button.theme-toggle:hover .icon.icon-moon {
  opacity: 0;
}

@media (prefers-color-scheme: dark) {
  html:not([data-theme]) nav ul button.theme-toggle .icon.icon-sun {
    opacity: 0;
    color: var(--color-link);
  }
  html:not([data-theme]) nav ul button.theme-toggle .icon.icon-moon {
    opacity: 1;
    color: var(--color-text-ui);
  }
  html:not([data-theme]) nav ul button.theme-toggle:hover .icon.icon-sun {
    opacity: 1;
  }
  html:not([data-theme]) nav ul button.theme-toggle:hover .icon.icon-moon {
    opacity: 0;
  }
}
nav .menu-icon {
  display: none;
  cursor: pointer;
  width: 16px;
  height: 13px;
  border-radius: 3px;
  border: 2px solid var(--color-surface);
  background-color: var(--color-surface);
  padding: 2px 2px 1px 2px;
}
nav .menu-icon .menu-icon-line {
  border-top: 2px solid var(--color-text-ui);
  padding-bottom: 3px;
}
nav .menu-icon:hover .menu-icon-line {
  border-color: var(--color-text-strong);
}

footer {
  grid-area: footer;
  margin-top: 50px;
}
footer p {
  color: var(--color-text-ui);
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  font-size: 14px;
  line-height: 140%;
  padding-top: 2px;
}
footer p a {
  padding-bottom: 0;
  border-bottom: 1px solid var(--color-text-ui);
  text-decoration: none;
  color: var(--color-text-ui);
  -webkit-transition: color 0.4s ease-out, border-bottom-color 0.2s ease-out;
  -moz-transition: color 0.4s ease-out, border-bottom-color 0.2s ease-out;
  -ms-transition: color 0.4s ease-out, border-bottom-color 0.2s ease-out;
  -o-transition: color 0.4s ease-out, border-bottom-color 0.2s ease-out;
  transition: color 0.4s ease-out, border-bottom-color 0.2s ease-out;
}
footer p a:hover {
  color: var(--color-text);
  border-bottom-color: var(--color-text);
}
footer p:nth-child(2) {
  padding-top: 15px;
}

.copyright {
  grid-area: copyright;
  margin-top: 50px;
}
.copyright p {
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  color: var(--color-text-ui);
  font-size: 14px;
  line-height: 140%;
}
.copyright p span {
  white-space: nowrap;
}
.copyright p a {
  text-decoration: none;
  color: var(--color-text-ui);
}
.copyright p a:hover {
  color: var(--color-text);
}

.face {
  grid-area: face;
}
.face img {
  float: right;
  border-radius: 50%;
  max-width: 35px;
  padding-right: 10px;
}

body.home main h1 {
  margin-bottom: 50px;
}
body.home main h2 {
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  position: relative;
  padding-top: 50px;
  margin: 6px 0 0 0;
}
body.home main h2::before {
  border-left: 1px solid var(--color-text-ui);
  height: 50px;
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  content: " ";
}
body.home main .kicker {
  margin-top: 50px;
}
body.home main .cell.second .kicker {
  margin-top: 0;
}
body.home main a h3 {
  display: inline-block;
  padding-right: 29px;
  margin: 0;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  text-decoration: var(--color-background) underline;
}
body.home main a h3::after {
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  display: inline-block;
  content: "→";
  font-size: 22px;
  color: var(--color-text);
  width: 24px;
  height: 11px;
  background-size: 100%;
  margin-right: -29px;
  padding-left: 5px;
}
body.home main a:hover h3 {
  text-decoration: underline;
}
body.home main a:hover h3::after {
  transform: translateX(4px);
}
body.home main a.cta, body.home main a p span {
  font-size: 21px;
}
body.home main h4 {
  margin-top: 5px;
  font-size: 30px;
}
body.home main p.dek {
  font-size: 18px;
  padding-top: 22px;
}
body.home main img.thumbnail {
  margin-top: 22px;
}
body.home main span {
  white-space: nowrap;
}

body.stream main p.dek {
  padding-bottom: 50px;
  margin-bottom: 0;
}
body.stream main .exploremore {
  display: none;
}
body.stream main .kicker {
  padding-bottom: 5px;
}
body.stream main a {
  min-width: auto;
}
body.stream main a h2 {
  display: inline-block;
  padding-right: 29px;
  margin: 0;
  font-size: 26px;
  line-height: 140%;
}
body.stream main a h2::after {
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  display: inline-block;
  content: "→";
  font-size: 22px;
  color: var(--color-surface);
  width: 24px;
  height: 11px;
  background-size: 100%;
  margin-right: -29px;
  padding-left: 5px;
}
body.stream main a .dek {
  margin: 0;
  font-size: 18px;
}
body.stream main a:hover h2 {
  text-decoration: underline;
}
body.stream main a:hover h2::after {
  transform: translateX(4px);
  color: var(--color-text);
}
body.stream main .thumbnail a img {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
}

p.pagination {
  display: block;
  overflow: hidden;
  width: 100%;
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  font-size: 28px;
  font-weight: bold;
}
p.pagination .older {
  float: left;
}
p.pagination .older::before {
  padding-right: 10px;
  content: "«";
}
p.pagination .newer {
  float: right;
}
p.pagination .newer::after {
  padding-left: 10px;
  content: "»";
}

body.story main figure img {
  display: block;
}
body.story main .cell.thumbnail img {
  margin-top: 78px;
  max-width: 100%;
}
body.story main .cell.peruse h3 {
  margin: 0;
}
body.story main .cell.peruse p.dek {
  font-size: 18px;
  padding-top: 22px;
}
body.story main .cell a.sourcesite {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  background: var(--color-surface);
  transition: 0.25s;
  transition-property: all;
  transition-duration: 0.25s;
  transition-timing-function: ease;
  transition-delay: 0s;
  border-radius: 3px;
  align-self: stretch;
  padding: 50px;
}
body.story main .cell a.sourcesite:hover {
  background: var(--color-surface-strong);
  opacity: 1;
  box-shadow: 0 10px 40px var(--color-shadow);
  color: var(--color-text-strong);
  border-color: transparent !important;
}
body.story main .cell a.sourcesite p {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  float: left;
  max-width: 400px;
  margin: 0;
}
body.story main .cell a.sourcesite img {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  float: right;
  margin-left: 50px;
  max-width: 150px;
}
body.story main .cell p.leadin {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  background-color: var(--color-surface);
  margin-left: -15px;
  padding: 15px;
  border-left: 1px;
}
body.story main p {
  line-height: 145%;
  margin-bottom: 36px;
  hanging-punctuation: first;
}
body.story main p.dek {
  line-height: 140%;
  margin-bottom: 0;
}
body.story main p.auth {
  font-size: 16px;
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  color: var(--color-text-ui);
}
body.story main p.auth.credits {
  padding-bottom: 0;
  margin-top: 10px;
  margin-bottom: 0;
}
body.story main p.auth time {
  display: inline-block;
  overflow: hidden;
  float: left;
  padding-right: 20px;
}
body.story main p.auth span {
  white-space: nowrap;
  color: var(--color-text-ui);
}
body.story main p.auth a span {
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  text-decoration: var(--color-link-underline) underline;
}
body.story main p.auth a span:hover {
  color: var(--color-text);
  background-color: var(--color-link);
  text-decoration: var(--color-text) underline;
}
body.story main p.social {
  font-size: 16px;
  font-family: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Cantarell, Ubuntu, Roboto, Noto, Arial, sans-serif;
  color: var(--color-text-ui);
  margin-bottom: 0px;
}
body.story main .body h1 {
  padding-bottom: 10px;
}
body.story main .body p:last-of-type::after {
  display: inline;
  content: " ⌘";
  color: var(--color-text-ui);
  font-size: 18px;
}
body.story main .body p a, body.story main .body li a {
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  text-decoration: var(--color-link-underline) underline;
  font-weight: bold;
  color: var(--color-text-strong);
}
body.story main .body p a:hover, body.story main .body li a:hover {
  background-color: var(--color-link);
  text-decoration: underline;
}
body.story main .body blockquote p:last-of-type::after {
  content: "";
}
body.story main .body h2:first-of-type {
  margin-top: 0;
}
body.story main .body figure {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  margin: 0;
  max-width: 100%;
  background-color: transparent !important;
}
body.story main .body figure img {
  max-width: 100%;
}
body.story main ul, body.story main ol {
  margin-top: 0;
  padding-left: 0;
  margin-bottom: 36px;
}
body.story main ul li, body.story main ol li {
  font-size: 21px;
  line-height: 171%;
}
body.story main .cell.thumbnail div.thumbnail {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  position: relative;
  margin: 85px 0 0 0;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
  min-width: 337px;
  min-height: 200px;
  background-color: var(--color-surface-strong);
  color: var(--color-text-strong);
  text-align: center;
  font-size: 25px;
}
body.story main .cell.thumbnail div.thumbnail img, body.story main .cell.thumbnail div.thumbnail span {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  margin-top: 0;
  transform: translate(-50%, -50%);
  max-width: 90%;
}
body.story.about .body p:first-of-type::first-line {
  font-weight: normal;
}
body.story.about .body h2:first-of-type {
  margin-top: 0 !important;
}

@media only screen and (max-width: 1000px) {
  body.story main .cell.narrow.third {
    width: 100%;
  }
  body.story main .cell.narrow.third #substack-subscribe iframe {
    width: 100%;
  }
}
main .cell.inthenews {
  position: relative;
}
main .cell.inthenews h5 {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  margin: 0;
  padding: 50px 25px 25px 25px;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
  min-height: 150px;
  background-color: var(--color-surface-strong);
  color: var(--color-text-strong);
  text-align: center;
  font-size: 25px;
}
main .cell.inthenews a h3 {
  padding: 25px 25px 75px 25px;
  text-decoration: none;
}
main .cell.inthenews a h3::after {
  display: none;
}
main .cell.inthenews a:hover h3 {
  text-decoration: none;
}
main .cell.inthenews p {
  position: absolute;
  bottom: 25px;
  left: 25px;
}

body.inthenews.stream main article {
  grid-row-gap: 50px;
}

main .cell.speaking {
  position: relative;
}
main .cell.speaking h5 {
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  margin: 0;
  padding: 50px 25px 25px 25px;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
  min-height: 150px;
  background-color: var(--color-surface-strong);
  color: var(--color-text-strong);
  text-align: center;
  font-size: 25px;
}
main .cell.speaking a h3 {
  padding: 25px 25px 75px 25px;
  text-decoration: none;
}
main .cell.speaking a h3::after {
  display: none;
}
main .cell.speaking a:hover h3 {
  text-decoration: none;
}
main .cell.speaking p {
  position: absolute;
  bottom: 25px;
  left: 25px;
}

body.speaking.stream main article {
  grid-row-gap: 50px;
}

main .cell.recommending h2 {
  margin-top: 0;
  padding-top: 0;
}
main .cell.recommending.item-in-stream {
  border-top: 1px solid var(--color-text-ui);
  padding-top: 50px;
}
main .cell.recommending.item-in-stream .item-description {
  float: left;
  width: 65%;
}
main .cell.recommending.item-in-stream .item-description h3, main .cell.recommending.item-in-stream .item-description h4 {
  margin-top: 0;
}
main .cell.recommending.item-in-stream .item-description p {
  margin-bottom: 15px;
}
main .cell.recommending.item-in-stream .item-promo-sidebar {
  float: right;
  width: 30%;
  margin-top: 50px;
}
main .cell.recommending.item-promo-sidebar .thumbnail, main .cell.recommending .item-promo-sidebar .thumbnail {
  background-color: var(--color-surface-strong);
  width: 100%;
  padding-top: 100%;
  position: relative;
  overflow: hidden;
}
main .cell.recommending.item-promo-sidebar .thumbnail img, main .cell.recommending .item-promo-sidebar .thumbnail img {
  /* Fill the thumbnail container and crop cleanly for varied source sizes */
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* preserve aspect, crop to fill */
  box-sizing: border-box; /* include border inside width/height so it doesn't overflow */
  border: 10px solid var(--color-surface-strong);
  display: block;
}
main .cell.recommending.item-promo-sidebar p, main .cell.recommending .item-promo-sidebar p {
  text-align: center;
  display: block;
  overflow: hidden;
  box-sizing: border-box;
}
main .cell.recommending.item-promo-sidebar p .sourcesite, main .cell.recommending .item-promo-sidebar p .sourcesite {
  display: inline-block;
  background-color: var(--color-text-strong);
  color: var(--color-surface);
  text-decoration: none;
  text-align: center;
  margin-top: 20px;
  padding: 5px 10px;
  border-radius: 5px;
  border: 1px solid var(--color-text-strong);
}
main .cell.recommending.item-promo-sidebar p .sourcesite:hover, main .cell.recommending .item-promo-sidebar p .sourcesite:hover {
  border: 1px solid var(--color-surface);
  text-decoration: underline;
}
main .cell.recommending.item-promo-sidebar h6, main .cell.recommending .item-promo-sidebar h6 {
  text-align: center;
}

body.story main .cell.wide.body figure.image {
  display: block;
  margin: 36px 0;
  max-width: 100%;
}
body.story main .cell.wide.body figure.image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  border-radius: 5px;
}

body.stream main article {
  grid-row-gap: 50px;
}

@media only screen and (max-width: 1430px) {
  .container {
    max-width: 100%;
  }
  .container main article {
    grid-template-columns: repeat(17, 1fr);
    grid-row-gap: 50px;
  }
}
@media only screen and (max-width: 1000px) {
  .container {
    min-width: auto;
  }
  .container main article {
    grid-row-gap: 50px;
  }
  .container main .cell.wide, .container main .cell.extrawide {
    grid-column: 1/span 16;
  }
  .container main .cell.thumbnail {
    grid-column: 1/span 16;
  }
  .container main .cell.thumbnail img {
    margin-top: 0 !important;
  }
  .container main .cell.narrow.third {
    grid-column: 1/span 16 !important;
  }
  .container main .cell.odd, .container main .cell.even {
    grid-column: 1/span 16;
    justify-self: start;
  }
  .container .statement span, .container .statement-line2 span {
    font-size: 16px;
  }
}
@media only screen and (max-width: 1150px) {
  .container {
    grid-template-areas: ". . . . . . . . . . . . . . . . . . . . . ." "face name name name name name name name name name name name name name name name name name name name name ." ". nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav ." ". . . . . . . . . . . . . . . . . . . . . ." ". . . . statement statement statement statement statement statement statement . . . . . . . . . . ." ". indent indent . main main main main main main main main main main main main main main main main main ." ". . . . footer footer footer footer footer footer footer footer footer . . . copyright copyright copyright copyright . ." ". . . . . . . . . . . . . . . . . . . . . .";
    grid-template-rows: 25px auto auto 25px auto 1fr auto 25px;
  }
  .container nav {
    justify-content: flex-start;
  }
  .container nav ul {
    padding-left: 0;
  }
  .container nav ul li {
    padding-left: 5px;
    padding-right: 20px;
  }
}
@media only screen and (max-width: 600px) {
  .container {
    grid-template-areas: ". . . . . . . . . . . . . . . . . . . . . ." "face name name name name name name name name name name name name name name name name name name name name ." ". nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav nav ." ". . . . . . . . . . . . . . . . . . . . . ." ". statement statement statement statement statement statement statement statement statement statement statement statement statement statement statement statement statement statement statement statement ." ". main main main main main main main main main main main main main main main main main main main main ." ". footer footer footer footer footer footer footer footer footer footer footer footer footer footer footer footer footer footer footer footer ." ". copyright copyright copyright copyright copyright copyright copyright copyright copyright copyright copyright copyright copyright copyright copyright copyright copyright copyright copyright . ." ". . . . . . . . . . . . . . . . . . . . . .";
    grid-template-rows: 25px auto auto 25px auto 1fr auto auto 25px;
  }
  .container .indent {
    display: none;
  }
  .container nav {
    display: block;
    position: fixed;
    top: 24px;
    right: 15px;
    width: 110px;
    padding: 10px;
  }
  .container nav .menu-icon {
    display: block;
    float: right;
  }
  .container nav ul.menu {
    display: none;
    clear: both;
  }
  .container nav.active {
    background-color: var(--color-surface);
    border-radius: 3px;
  }
  .container nav.active ul.menu {
    display: block;
    clear: both;
    margin-top: 10px;
    background-color: var(--color-surface);
  }
  .container nav.active ul.menu li {
    float: right;
    clear: both;
    padding-right: 0;
  }
  main article {
    grid-row-gap: 25px;
  }
  main .cell.wide, main .cell.extrawide, main .cell.narrow.third {
    grid-column: 1/span 18 !important;
  }
  main .cell.odd, main .cell.even {
    grid-column: 1/span 18 !important;
    justify-self: start;
  }
  body main .cell-block .title-block {
    margin: 25px;
    padding-bottom: 200px;
  }
  body main .cell-block .thumb-block p.dek {
    margin: 0 25px 25px 25px;
  }
}
@media only screen and (max-width: 575px) {
  #root main article a h2 {
    margin: 0;
  }
  #root main article p, #root main article ul li, #root main article ol li {
    font-size: 17px;
    line-height: 160%;
    margin-bottom: 25px;
  }
  #root main article p.dek, #root main article ul li.dek, #root main article ol li.dek {
    margin-bottom: 0;
    padding-bottom: 0;
  }
  #root main article h1 {
    font-size: 31px;
    margin-bottom: 0;
    padding-top: 0;
  }
  #root main article h2 {
    font-size: 24px;
    margin-top: 40px;
    margin-bottom: 15px;
  }
  #root main article h3 {
    font-size: 19px;
    margin-top: 25px;
    margin-bottom: 9px;
  }
  #root main article h4 {
    font-size: 15px;
    margin-bottom: 6px;
  }
  #root main article ol, #root main article blockquote, #root main article pre {
    margin-bottom: 25px;
  }
  #root main article li {
    margin-bottom: 9px;
  }
  #root main article blockquote {
    font-size: 15px;
    line-height: 160%;
  }
  #root .headshot img {
    max-width: 30px;
  }
  body.home main a.cta, body.home main a p span {
    font-size: 15px;
    line-height: 125%;
  }
  body.home #root main p.dek, body.story #root main .cell.peruse p.dek {
    font-size: 15px;
    line-height: 125%;
  }
  body.home #root main a h3, body.story #root main .cell.peruse a h3 {
    margin: 0;
  }
  body.home #root main h2 {
    padding-top: 30px;
    margin: 6px 0 0 0;
  }
  body.home #root main h2::before {
    height: 30px;
  }
}
/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */
@media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 1.25dppx), (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}
@media print {
  .command,
.headshot,
.re,
main .cell.peruse,
hr.first,
footer,
nav {
    display: none;
  }
  .container {
    grid-template-areas: "name" "main" "copyright";
    grid-template-columns: 100%;
    grid-template-rows: auto;
  }
  .container main article {
    grid-template-columns: repeat(17, 1fr);
    grid-row-gap: 20px;
  }
  .container main article .cell.wide {
    grid-column: 1/span 17;
  }
  .container main article .cell.narrow.third {
    grid-column: 1/span 17 !important;
  }
  .container main article .cell.thumbnail {
    grid-column: 1/span 17;
    width: 100%;
  }
  .container main article .cell.thumbnail img {
    margin-top: 0px;
    width: 100%;
  }
  .container main article .cell.odd,
.container main article .cell.even {
    grid-column: 1/span 17;
    justify-self: start;
  }
  .container main article .cell.cell-block {
    display: none;
  }
  .turner a {
    width: 100%;
  }
  *,
*:before,
*:after {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster */
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
a:visited {
    text-decoration: underline;
  }
  body.story main {
    /*
    a[href]:after {
      content: " (" attr(href) ")";
    }

    abbr[title]:after {
      content: " (" attr(title) ")";
    }
    */
    /*
        * Don't show links that are fragment identifiers,
        * or use the `javascript:` pseudo protocol
        */
  }
  body.story main a[href^="#"]:after,
body.story main a[href^="javascript:"]:after {
    content: "";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */
  thead {
    display: table-header-group;
  }
  tr,
img {
    page-break-inside: avoid;
  }
  p,
h2,
h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
h3 {
    page-break-after: avoid;
  }
}

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