@page { size: Letter; margin: 0; }

:root {
  --ink: #071323;
  --ink-soft: #0d2138;
  --paper: #f3ecde;
  --paper-bright: #fffaf0;
  --muted: #9ca7ae;
  --orange: #f4782b;
  --blue: #2f8fc7;
  --lime: #c4d73d;
  --gold: #c89145;
  --rule: rgba(245, 236, 222, .25);
  --serif: Iowan Old Style, Baskerville, Georgia, serif;
  --sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }

html { background: #101720; }

body {
  margin: 0;
  background: #101720;
  color: var(--paper);
  font-family: var(--sans);
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}

a { color: inherit; text-decoration-color: currentColor; text-underline-offset: .14em; }

.magazine { width: 8.5in; margin: 0 auto; }

.page {
  position: relative;
  isolation: isolate;
  width: 8.5in;
  height: 11in;
  overflow: hidden;
  padding: .56in .58in .58in;
  background:
    radial-gradient(circle at 85% 8%, rgba(47, 143, 199, .12), transparent 24%),
    linear-gradient(145deg, #09172a 0%, #071323 52%, #0b1b2c 100%);
  break-after: page;
  page-break-after: always;
}

.page::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.014) 1px, transparent 1px);
  background-size: 26px 26px;
  opacity: .52;
  content: "";
  pointer-events: none;
}

.page:last-child { break-after: auto; page-break-after: auto; }

.folio {
  position: absolute;
  right: .58in;
  bottom: .25in;
  left: .58in;
  display: flex;
  justify-content: space-between;
  color: rgba(243, 236, 222, .62);
  font-size: 6.4pt;
  font-weight: 700;
  letter-spacing: .15em;
}

.eyebrow,
.desk-mark,
.project-card__meta,
.builder-card__count,
.gallery-header > p,
.directory-page > p,
.contents li span,
.cover-copy > p:first-child {
  margin: 0 0 .14in;
  color: var(--orange);
  font-size: 7.3pt;
  font-weight: 800;
  letter-spacing: .18em;
  line-height: 1.15;
  text-transform: uppercase;
}

.desk-mark {
  display: flex;
  justify-content: space-between;
  gap: .18in;
  margin-bottom: .18in;
  color: rgba(243,236,222,.58);
  font-size: 6.2pt;
  letter-spacing: .12em;
}

.desk-mark span:first-child { color: var(--lime); }
.desk-mark strong { color: var(--paper-bright); font-weight: 900; }

h1, h2, h3, p, blockquote { margin-top: 0; }

h1 {
  max-width: 6.8in;
  margin-bottom: .25in;
  color: var(--paper-bright);
  font-family: var(--serif);
  font-size: 31pt;
  font-weight: 500;
  letter-spacing: -.045em;
  line-height: .98;
}

h2 {
  margin-bottom: .09in;
  color: var(--paper-bright);
  font-family: var(--serif);
  font-size: 16pt;
  font-weight: 500;
  letter-spacing: -.025em;
  line-height: 1.02;
}

h3 {
  margin-bottom: .05in;
  color: var(--paper-bright);
  font-size: 9pt;
  line-height: 1.1;
}

p { color: rgba(243,236,222,.84); font-size: 9.2pt; line-height: 1.45; }

em { font-style: normal; }

.cover-art,
.cover-art::after { position: absolute; inset: 0; }

.cover-art { background: #071323; }
.cover-art img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.cover-art::after { background: linear-gradient(180deg, rgba(5,15,29,.12) 0%, rgba(5,15,29,.08) 42%, rgba(4,11,22,.75) 100%); content: ""; }

.page--cover { padding: 0; }

.cover-copy {
  position: absolute;
  right: .57in;
  bottom: .63in;
  left: .57in;
  z-index: 1;
}

.cover-copy h1 {
  max-width: 4.4in;
  margin: 0 0 .14in;
  color: #fffaf0;
  font-family: var(--sans);
  font-size: 47pt;
  font-weight: 900;
  letter-spacing: -.08em;
  line-height: .78;
}

.cover-subtitle { max-width: 4.4in; margin: .18in 0; color: #fffaf0; font-size: 10.2pt; font-weight: 700; line-height: 1.25; }
.cover-rule { width: 1.35in; height: 5px; margin-bottom: .16in; background: var(--orange); }
.cover-meta { margin: 0; color: rgba(255,250,240,.75); font-size: 6.9pt; letter-spacing: .1em; text-transform: uppercase; }

.masthead { padding-top: .2in; }
.masthead > h1 { max-width: 5.6in; font-size: 35pt; }
.masthead-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .4in; margin-top: .32in; }
.masthead-grid h2 { font-family: var(--sans); font-size: 10pt; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.masthead-grid p { margin-bottom: .13in; font-size: 8.7pt; }
.credit-box { margin-top: .26in; padding: .18in .2in; border-left: 5px solid var(--lime); background: rgba(196,215,61,.10); }
.credit-box strong { color: var(--lime); font-size: 8pt; letter-spacing: .07em; text-transform: uppercase; }
.credit-box p { margin: .07in 0 0; font-size: 8.2pt; }

.contents { padding-top: .15in; }
.contents h1 { font-size: 37pt; }
.contents-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .38in; margin-top: .35in; }
.contents ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--rule); }
.contents li { display: grid; grid-template-columns: .34in 1fr; gap: .12in; padding: .16in 0; border-bottom: 1px solid var(--rule); }
.contents li span { margin: .03in 0 0; color: var(--orange); }
.contents li strong { display: block; color: var(--paper-bright); font-size: 11pt; line-height: 1.05; }
.contents li em { display: block; margin-top: .04in; color: rgba(243,236,222,.66); font-size: 7.8pt; line-height: 1.25; }

.letter { padding-top: .3in; }
.letter h1 { max-width: 5.9in; font-size: 35pt; }
.letter-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: .38in; }
.letter-grid p { margin-bottom: .13in; font-family: var(--serif); font-size: 9.6pt; line-height: 1.36; }
.signature { margin-top: .3in !important; color: var(--orange) !important; font-family: var(--sans) !important; font-size: 9pt !important; font-weight: 800; }
.signature span { color: rgba(243,236,222,.62); font-size: 7.2pt; font-weight: 500; }

.data-page h1 { max-width: 5.8in; font-size: 35pt; }
.stat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .09in; margin: .27in 0; }
.stat { min-height: 1.15in; padding: .14in; border: 1px solid rgba(243,236,222,.18); background: rgba(255,255,255,.035); }
.stat strong { display: block; color: var(--orange); font-family: var(--serif); font-size: 32pt; font-weight: 500; letter-spacing: -.05em; line-height: .88; }
.stat span { display: block; margin-top: .08in; color: var(--paper-bright); font-size: 7.5pt; font-weight: 800; letter-spacing: .06em; line-height: 1.1; text-transform: uppercase; }
.stat small { display: block; margin-top: .05in; color: rgba(243,236,222,.58); font-size: 6.6pt; line-height: 1.1; }
.bar-list { display: grid; gap: .08in; margin: .22in 0 .17in; }
.bar-list div { display: grid; grid-template-columns: .6in 1fr .28in; align-items: center; gap: .1in; }
.bar-list span { color: var(--paper-bright); font-size: 7.4pt; font-weight: 800; }
.bar-list i { position: relative; display: block; height: 7px; overflow: hidden; background: rgba(243,236,222,.12); }
.bar-list i::before { display: block; width: var(--bar); height: 100%; background: linear-gradient(90deg, var(--blue), var(--lime)); content: ""; }
.bar-list strong { color: var(--orange); font-size: 8pt; }
.data-page__note { max-width: 5.8in; color: rgba(243,236,222,.62); font-size: 7.3pt; }

.method-page h1 { max-width: 5.5in; font-size: 35pt; }
.method-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .35in; }
.method-grid h2 { color: var(--lime); font-family: var(--sans); font-size: 8.8pt; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.method-grid p { font-size: 8.7pt; }
.method-quote { margin-top: .28in; padding: .22in; border: 1px solid rgba(243,236,222,.2); color: var(--paper-bright); font-family: var(--serif); font-size: 19pt; letter-spacing: -.025em; }
.method-quote strong { display: block; margin-bottom: .07in; color: var(--orange); font-family: var(--sans); font-size: 6.6pt; letter-spacing: .14em; text-transform: uppercase; }
.method-quote span { display: block; }

.page--chapter { padding: 0; background: var(--ink); }
.chapter-art { position: absolute; inset: 0; }
.chapter-art img { display: block; width: 100%; height: 100%; object-fit: cover; }
.chapter-art::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,19,35,.89), rgba(7,19,35,.40) 54%, rgba(7,19,35,.12)); content: ""; }
.chapter-copy { position: absolute; top: .62in; left: .58in; max-width: 4.35in; }
.chapter-copy .eyebrow { color: var(--lime); }
.chapter-copy h1 { margin-bottom: .17in; font-family: var(--sans); font-size: 47pt; font-weight: 900; letter-spacing: -.07em; line-height: .83; }
.chapter-copy p { max-width: 3.85in; color: rgba(255,250,240,.85); font-size: 11pt; line-height: 1.3; }
.chapter-index { display: inline-block; margin-top: .19in; color: var(--orange); font-family: var(--serif); font-size: 29pt; }
.chapter--gold .chapter-copy .eyebrow { color: #f7c86e; }
.chapter--lime .chapter-copy .eyebrow { color: var(--lime); }
.chapter--blue .chapter-copy .eyebrow { color: #75c7f0; }

.feature-layout { --feature-accent: var(--blue); padding-top: .02in; }
.feature-layout--field { --feature-accent: var(--lime); }
.feature-layout--builder { --feature-accent: var(--orange); }
.feature-layout--scorekeeper { --feature-accent: var(--gold); }
.feature-layout--culture { --feature-accent: #f39b68; }
.feature-layout--systems { --feature-accent: #75c7f0; }
.feature-layout--archive { --feature-accent: #b9a9df; }
.feature-layout h1 { max-width: 6.45in; margin-bottom: .12in; font-size: 28pt; line-height: .95; }
.feature-dek { max-width: 6.35in; margin-bottom: .18in; color: rgba(255,250,240,.82); font-family: var(--serif); font-size: 10.7pt; font-style: italic; line-height: 1.28; }
.feature-grid { display: grid; grid-template-columns: 1.32fr .68fr; gap: .22in; align-items: start; }
.feature-copy p { margin-bottom: .092in; font-family: var(--serif); font-size: 8.6pt; line-height: 1.32; }
.feature-copy > p:first-child::first-letter { float: left; margin: .01in .055in 0 0; color: var(--feature-accent); font-family: var(--sans); font-size: 27pt; font-weight: 900; line-height: .76; }
.feature-subhead { margin: .12in 0 .055in; color: var(--feature-accent); font-family: var(--sans); font-size: 7.6pt; font-weight: 900; letter-spacing: .1em; line-height: 1.1; text-transform: uppercase; }
.citation { display: grid; gap: .045in; margin-top: .14in; padding-top: .09in; border-top: 1px solid rgba(243,236,222,.18); color: rgba(243,236,222,.68); font-size: 5.75pt; line-height: 1.28; }
.citation__label { color: var(--feature-accent); font-size: 5.8pt; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.evidence-item { display: block; }
.evidence-item strong { display: block; overflow: hidden; color: var(--paper-bright); font-size: 5.9pt; line-height: 1.15; text-overflow: ellipsis; white-space: nowrap; }
.evidence-item a { margin-right: .045in; color: rgba(243,236,222,.62); }
.evidence-item > span { margin: 0 .035in; color: rgba(243,236,222,.3); }
.evidence-item > .print-only { margin: .025in 0 0; color: rgba(243,236,222,.62); }
.print-source-route { margin-top: .035in; color: rgba(243,236,222,.55); }
.source-figure { margin: 0; }
.source-figure img { display: block; width: 100%; height: 2.65in; object-fit: cover; border: 1px solid rgba(243,236,222,.2); background: #0d2138; }
.source-figure figcaption { margin-top: .06in; color: rgba(243,236,222,.52); font-size: 6.2pt; line-height: 1.2; }
.pull-note { margin-top: .17in; padding: .14in; border-top: 4px solid var(--feature-accent); background: rgba(255,255,255,.035); color: var(--paper-bright); }
.pull-note strong { display: block; margin-bottom: .06in; color: var(--feature-accent); font-family: var(--sans); font-size: 6.2pt; letter-spacing: .12em; text-transform: uppercase; }
.pull-note span { display: block; font-family: var(--serif); font-size: 10.5pt; line-height: 1.22; }

.gallery-header h1 { max-width: 5.9in; font-size: 30pt; }
.gallery-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .11in; }
.project-card { display: grid; grid-template-columns: .9in 1fr; min-height: .93in; border-top: 1px solid var(--rule); }
.project-card:last-child:nth-child(odd) { grid-column: span 2; }
.project-card img { width: .9in; height: .91in; object-fit: cover; background: #123; }
.project-card > div { padding: .08in .1in; }
.project-card__meta { margin-bottom: .035in; color: var(--orange); font-size: 5.7pt; }
.project-card h3 { display: -webkit-box; margin: 0 0 .05in; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 7.4pt; }
.project-card__links { margin: 0; color: rgba(243,236,222,.62); font-size: 5.6pt; line-height: 1.25; }
.project-card__links span { margin: 0 .035in; color: rgba(243,236,222,.35); }

.index-page h1 { max-width: 5.8in; font-size: 33pt; }
.entry-index { display: grid; grid-template-columns: 1fr 1fr; gap: 0 .25in; margin-top: .22in; }
.entry-index a { display: grid; grid-template-columns: .24in .44in 1fr; gap: .05in; align-items: baseline; padding: .065in 0; border-top: 1px solid rgba(243,236,222,.18); color: var(--paper-bright); text-decoration: none; }
.entry-index a:hover { color: var(--lime); }
.entry-index span { color: var(--orange); font-size: 6.1pt; font-weight: 800; }
.entry-index strong { color: var(--lime); font-size: 6.1pt; }
.entry-index em { font-size: 6.5pt; line-height: 1.15; }
.entry-index--two { grid-template-columns: 1fr 1fr; }
.map-note { max-width: 5.8in; margin: -.08in 0 .14in; color: rgba(243,236,222,.62); font-size: 6.8pt; }
.index-page--dense h1 { font-size: 29pt; }
.index-page--dense .entry-index a { padding: .038in 0; }
.index-page--dense .entry-index em { font-size: 5.85pt; }

.score-spread h1 { max-width: 5.8in; font-size: 38pt; }
.score-spread__grid { display: grid; grid-template-columns: 1fr .85fr; gap: .38in; }
.score-spread__grid p { font-family: var(--serif); font-size: 12pt; line-height: 1.34; }
.score-steps { display: grid; grid-template-columns: .42in 1fr; gap: .11in .12in; align-content: start; padding: .17in; border: 1px solid rgba(243,236,222,.2); background: rgba(255,255,255,.035); }
.score-steps span { color: var(--orange); font-family: var(--serif); font-size: 21pt; line-height: 1; }
.score-steps p { margin: .02in 0 .16in; font-family: var(--sans); font-size: 8pt; line-height: 1.25; }

.quote-page { display: flex; flex-direction: column; justify-content: center; min-height: 9.6in; padding: .4in; border: 1px solid rgba(243,236,222,.22); background: radial-gradient(circle at 79% 12%, rgba(244,120,43,.22), transparent 31%), rgba(255,255,255,.025); }
.quote-page blockquote { max-width: 6.4in; margin-bottom: .35in; color: var(--paper-bright); font-family: var(--serif); font-size: 36pt; letter-spacing: -.05em; line-height: .93; }
.quote-page > p:last-child { max-width: 4.7in; color: rgba(243,236,222,.78); font-size: 10pt; }
.quote-attribution { margin: -.2in 0 .3in; color: var(--orange); font-size: 7.2pt; font-weight: 800; letter-spacing: .05em; }
.display-statement { max-width: 6.4in; margin: .08in 0 .35in; color: var(--paper-bright); font-family: var(--serif); font-size: 36pt; letter-spacing: -.05em; line-height: .93; }
.quote-page--systems { background: radial-gradient(circle at 14% 86%, rgba(196,215,61,.2), transparent 34%), rgba(255,255,255,.025); }
.quote-page--after { background: radial-gradient(circle at 80% 20%, rgba(47,143,199,.2), transparent 36%), rgba(255,255,255,.025); }

.stat-grid--five { grid-template-columns: repeat(5, 1fr); }
.stat-grid--five .stat { min-height: 1.3in; }
.stat-grid--five .stat strong { color: var(--lime); font-size: 19pt; }
.data-page--punk h1 { font-size: 35pt; }

.note-page h1 { max-width: 5.4in; font-size: 37pt; }
.note-columns,
.essay-columns { columns: 2; column-gap: .32in; }
.note-columns p,
.essay-columns p { margin-bottom: .15in; font-family: var(--serif); font-size: 12pt; line-height: 1.37; }
.essay-columns p { margin-bottom: .14in; font-size: 11.75pt; line-height: 1.35; }

.handoff-page h1 { max-width: 5.5in; font-size: 38pt; }
.handoff-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .12in; margin-top: .31in; }
.handoff-grid > div { min-height: 2.2in; padding: .18in; border-top: 4px solid var(--orange); background: rgba(255,255,255,.035); }
.handoff-grid h2 { font-family: var(--sans); font-size: 12pt; font-weight: 850; }
.handoff-grid p { font-size: 8.5pt; }

.builders-page h1 { max-width: 5.7in; font-size: 32pt; }
.builder-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .16in; margin-top: .22in; }
.builder-card { border: 1px solid rgba(243,236,222,.19); background: rgba(255,255,255,.03); }
.builder-card img { width: 100%; height: 2.2in; object-fit: cover; }
.builder-card > div { padding: .15in; }
.builder-card__count { margin: 0 0 .06in; color: var(--orange); font-size: 5.8pt; }
.builder-card h2 { margin-bottom: .06in; font-family: var(--sans); font-size: 17pt; font-weight: 850; }
.builder-card p { font-size: 7.15pt; line-height: 1.31; }
.builder-card__trail { margin-top: .12in; padding-top: .09in; border-top: 1px solid rgba(243,236,222,.17); }
.builder-card__trail strong { display: block; margin-bottom: .045in; color: var(--orange); font-size: 5.5pt; letter-spacing: .12em; text-transform: uppercase; }
.builder-card__trail a { display: block; margin: .035in 0; overflow: hidden; color: rgba(243,236,222,.68); font-size: 5.5pt; line-height: 1.15; text-overflow: ellipsis; white-space: nowrap; }

.network-page h1 { max-width: 5.5in; font-size: 37pt; }
.network-lines { display: grid; grid-template-columns: repeat(4, 1fr); gap: .1in; margin: .27in 0; }
.network-lines div { min-height: 1.18in; padding: .11in; border: 1px solid rgba(243,236,222,.16); background: linear-gradient(145deg, rgba(47,143,199,.18), rgba(255,255,255,.02)); }
.network-lines div:nth-child(3n) { background: linear-gradient(145deg, rgba(244,120,43,.2), rgba(255,255,255,.02)); }
.network-lines strong { display: block; color: var(--paper-bright); font-size: 9pt; }
.network-lines span { display: block; margin-top: .08in; color: var(--lime); font-size: 6.1pt; }
.network-page > p:last-child { max-width: 5.9in; font-size: 9pt; }

.season-table h1 { font-size: 38pt; }
.season-table table { width: 100%; margin-top: .28in; border-collapse: collapse; }
.season-table th { padding: .08in; border-bottom: 2px solid var(--orange); color: var(--orange); font-size: 6.5pt; letter-spacing: .1em; text-align: left; text-transform: uppercase; }
.season-table td { padding: .09in .08in; border-bottom: 1px solid rgba(243,236,222,.18); color: var(--paper-bright); font-size: 8pt; }
.season-table td:nth-child(2) { color: var(--lime); font-size: 13pt; font-weight: 800; }
.season-table > p { max-width: 5.6in; margin-top: .23in; color: rgba(243,236,222,.6); font-size: 7pt; }

.essay-page h1 { max-width: 5.7in; font-size: 37pt; }
.essay-page--final h1 { max-width: 6.2in; font-size: 34pt; }

.mailroom-page h1 { max-width: 6.3in; margin-bottom: .12in; font-size: 31pt; }
.mailroom-intro { max-width: 6.2in; margin-bottom: .2in; color: rgba(243,236,222,.72); font-family: var(--serif); font-size: 9.4pt; line-height: 1.35; }
.mail-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .13in; align-items: start; }
.mail-letter { min-height: 6.55in; padding: .16in; border-top: 5px solid var(--orange); background: rgba(255,255,255,.035); }
.mail-letter:nth-child(2) { border-top-color: var(--lime); }
.mail-letter:nth-child(3) { border-top-color: var(--blue); }
.mail-letter__subject { margin-bottom: .14in; color: var(--orange); font-size: 5.9pt; font-weight: 900; letter-spacing: .12em; line-height: 1.25; text-transform: uppercase; }
.mail-letter h2 { margin-bottom: .035in; font-family: var(--sans); font-size: 12pt; font-weight: 900; line-height: 1.02; }
.mail-letter__place { margin-bottom: .16in; color: rgba(243,236,222,.5); font-size: 6pt; font-style: italic; }
.mail-letter > p:last-of-type { font-family: var(--serif); font-size: 8.3pt; line-height: 1.42; }
.mail-letter__reply { margin-top: .16in; padding-top: .12in; border-top: 1px solid rgba(243,236,222,.18); }
.mail-letter__reply strong { color: var(--lime); font-size: 5.8pt; letter-spacing: .1em; text-transform: uppercase; }
.mail-letter__reply p { margin: .055in 0 0; color: rgba(243,236,222,.68); font-size: 6.8pt; line-height: 1.35; }
.mailroom-disclosure { margin-top: .16in; color: rgba(243,236,222,.55); font-size: 6.2pt; line-height: 1.3; }

.connection-directory h1 { max-width: 5.6in; font-size: 35pt; }
.connection-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: .1in; margin-top: .22in; }
.connection-grid > div { min-height: 1.75in; padding: .11in; border-top: 3px solid var(--blue); background: rgba(255,255,255,.028); }
.connection-grid h2 { margin-bottom: .07in; color: var(--lime); font-family: var(--sans); font-size: 11pt; font-weight: 850; }
.connection-grid a { display: block; margin: .045in 0; color: rgba(243,236,222,.75); font-size: 5.7pt; line-height: 1.14; }
.connection-directory > p:last-child { margin-top: .22in; font-size: 8.2pt; }

.route-page h1 { max-width: 5.5in; font-size: 37pt; }
.route-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .13in; margin-top: .3in; }
.route-grid > div { min-height: 2.2in; padding: .18in; background: linear-gradient(145deg, rgba(47,143,199,.2), rgba(255,255,255,.03)); }
.route-grid > div:nth-child(2) { background: linear-gradient(145deg, rgba(244,120,43,.22), rgba(255,255,255,.03)); }
.route-grid > div:nth-child(3) { background: linear-gradient(145deg, rgba(196,215,61,.18), rgba(255,255,255,.03)); }
.route-grid span { color: var(--paper-bright); font-family: var(--serif); font-size: 30pt; }
.route-grid h2 { margin: .06in 0; font-family: var(--sans); font-size: 14pt; font-weight: 850; }
.route-grid p { font-size: 8pt; }

.style-notes { display: grid; grid-template-columns: .95fr 1.05fr; align-items: stretch; min-height: 9.75in; }
.style-notes > div { padding: .43in .32in .3in 0; }
.style-notes h1 { font-size: 34pt; }
.style-notes p { font-size: 9.2pt; }
.style-notes img { width: 100%; height: 100%; object-fit: cover; }

.credits-page h1 { font-size: 38pt; }
.credits-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .4in; }
.credits-grid h2 { color: var(--lime); font-family: var(--sans); font-size: 8pt; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.credits-grid p { font-size: 8.8pt; }
.credit-line { margin-top: .24in; padding-top: .13in; border-top: 1px solid var(--rule); color: var(--orange); font-size: 7.4pt; }

.directory-page { padding-top: .05in; }
.directory-page h1 { margin-bottom: .14in; font-size: 27pt; }
.directory-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 .18in; }
.directory-list > div { display: grid; grid-template-columns: .18in .33in .16in 1fr; gap: .04in; align-items: start; min-height: .18in; padding: .025in 0; border-top: 1px solid rgba(243,236,222,.15); }
.directory-list span { color: var(--orange); font-size: 5.8pt; font-weight: 800; }
.directory-list strong { color: var(--lime); font-size: 5.9pt; }
.directory-list em { color: rgba(243,236,222,.54); font-size: 5.7pt; font-style: normal; }
.directory-list a { color: var(--paper-bright); font-size: 6pt; line-height: 1.08; }
.directory-list small { grid-column: 4; color: rgba(243,236,222,.52); font-size: 4.7pt; line-height: 1.05; }
.directory-list small a { color: rgba(243,236,222,.66); font-size: inherit; }

.back-cover { position: absolute; inset: 0; background: #071323; }
.back-cover img { display: block; width: 100%; height: 100%; object-fit: cover; }
.back-cover::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,19,35,.83), rgba(7,19,35,.15)); content: ""; }
.back-cover > div { position: absolute; z-index: 1; top: .62in; left: .58in; max-width: 3.8in; }
.back-cover p { color: var(--lime); font-size: 7pt; font-weight: 800; letter-spacing: .14em; }
.back-cover h1 { margin: .16in 0 .31in; font-family: var(--sans); font-size: 47pt; font-weight: 900; letter-spacing: -.08em; line-height: .78; }
.back-cover > div > p:last-child { color: rgba(255,250,240,.8); font-size: 6.4pt; }

@media screen {
  .print-only { display: none !important; }
  .magazine { margin: 20px auto; }
  .page { margin: 0 auto 22px; box-shadow: 0 18px 44px rgba(0,0,0,.45); }
}

@media print {
  .screen-only { display: none !important; }
  .print-only { display: block !important; }
  a { text-decoration: none; }
  html, body { width: 8.5in; height: auto; background: transparent; }
  .magazine { margin: 0; }
  .page { margin: 0; box-shadow: none; }
}
