@font-face { font-family: "Libre Caslon Text"; font-style: normal; font-weight: 400 700; font-display: swap; src: url(fonts/caslon-text.woff) format("woff"); }
@font-face { font-family: "Libre Caslon Text"; font-style: italic; font-weight: 400 700; font-display: swap; src: url(fonts/caslon-text-italic.woff) format("woff"); }
@font-face { font-family: "Libre Caslon Display"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/caslon-display.woff) format("woff"); }
:root { color-scheme: light dark; --paper: #f3efe4; --ink: #1d1b16; --dim: #575145; --rule: #cfc7b5; --rubric: #a22a1b; --tint: #e6dfcc; --field: #8c8576; --text: "Libre Caslon Text", "Iowan Old Style", Georgia, serif; --display: "Libre Caslon Display", "Libre Caslon Text", Georgia, serif; }
@media (prefers-color-scheme: dark) { :root { --paper: #1c2920; --ink: #ebe4d2; --dim: #b4b7a5; --rule: #3c5143; --rubric: #ec8b75; --tint: #2a3b2f; --field: #7d8a7f; } }
@view-transition { navigation: auto; }
@media (prefers-reduced-motion: reduce) { @view-transition { navigation: none; } }
::view-transition-group(plate) { animation-duration: 420ms; animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1); }
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scrollbar-color: var(--rule) var(--paper); }
body { margin: 0; background: var(--paper); color: var(--ink); font: 18px/1.58 var(--text); font-variant-numeric: oldstyle-nums; text-rendering: optimizeLegibility; caret-color: var(--rubric); }
::selection { background: var(--rubric); color: var(--paper); }
i, em, dt, cite, dfn, var, address, blockquote, figcaption, ::placeholder { font-variant-ligatures: no-common-ligatures; }
a { color: inherit; text-decoration-color: var(--rubric); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: var(--rubric); }
:focus-visible { outline: 2px solid var(--rubric); outline-offset: 2px; }
.mast { display: grid; justify-items: center; padding: max(4px, env(safe-area-inset-top)) 16px 0; border-bottom: 1px solid var(--rule); }
.mast .mark { font: 400 25px/1 var(--display); letter-spacing: 0.07em; text-transform: uppercase; text-decoration: none; padding: 14px 0 4px; white-space: nowrap; }
.mast nav { display: flex; justify-content: space-between; width: 100%; max-width: 340px; }
.mast nav a { min-height: 44px; display: inline-flex; align-items: center; padding: 0 6px; font-size: 13px; letter-spacing: 0.16em; text-transform: uppercase; text-decoration: none; }
.mast nav a[aria-current] { text-decoration: underline 1px var(--rubric); text-underline-offset: 7px; }
@media (max-width: 374px) { .mast nav a { padding: 0 2px; letter-spacing: 0.1em; } }
.trail ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 0 10px; font-size: 13px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--dim); }
.trail li { display: inline-flex; align-items: center; gap: 10px; }
.trail li + li::before { content: ""; width: 5px; height: 5px; border-right: 1.5px solid currentColor; border-top: 1.5px solid currentColor; transform: rotate(45deg); }
.trail a { color: var(--dim); text-decoration: none; display: inline-flex; align-items: center; min-height: 32px; }
.trail a:hover { color: var(--rubric); }
.trail [aria-current] { color: var(--ink); }
h2.sec { font: 400 13px/1.3 var(--text); letter-spacing: 0.24em; text-transform: uppercase; text-align: center; margin: 44px 0 16px; display: flex; align-items: center; gap: 14px; }
h2.sec::before, h2.sec::after { content: ""; flex: 1; border-top: 1px solid var(--rule); }
h2.sec a { text-decoration-color: var(--rubric); text-underline-offset: 5px; padding: 13px 0; margin: -13px 0; }
.leaders { list-style: none; margin: 0; padding: 0; }
.leaders a, .leaders .ln { display: flex; align-items: baseline; gap: 8px; min-height: 44px; padding: 10px 0 2px; text-decoration: none; }
.leaders .nm { font-size: 19px; line-height: 1.25; }
.leaders .lead { flex: 1; min-width: 20px; border-bottom: 2px dotted var(--rule); transform: translateY(-5px); }
.leaders .n { font-size: 17px; color: var(--dim); text-align: right; }
.leaders .lead:last-child { visibility: hidden; }
.leaders a:hover .nm { color: var(--rubric); }
.leaders a:hover .lead { border-color: var(--rubric); }
.leaders .ex { display: block; font-size: 15px; line-height: 1.4; color: var(--dim); margin: -1px 0 4px; }
.leaders.cols { columns: 150px 2; column-gap: 24px; }
.leaders.cols li { break-inside: avoid; }
.leaders.cols .nm { font-size: 17px; }
.leaders.cols .n { font-size: 15px; }
@media (max-width: 1099px) {
  .leaders.runin { font-size: 17px; line-height: 1.8; }
  .leaders.runin li { display: inline; }
  .leaders.runin a, .leaders.runin .ln { display: inline; min-height: 0; padding: 3px 0; }
  .leaders.runin .lead { display: none; }
  .leaders.runin .nm { font-size: 17px; white-space: nowrap; }
  .leaders.runin a .nm { text-decoration: underline 1px var(--rubric); text-underline-offset: 3px; }
  .leaders.runin .n { font-size: 15px; margin-left: 4px; }
  .leaders.runin li:not(:last-child)::after { content: "; "; color: var(--dim); }
}
@media (min-width: 1100px) {
  .leaders.runin { columns: 2; column-gap: 36px; }
  .leaders.runin li { break-inside: avoid; }
  .leaders.runin .nm { font-size: 17px; }
  .leaders.runin .n { font-size: 15px; }
  .leaders.runin a, .leaders.runin .ln { min-height: 40px; padding-top: 8px; }
  .leaders.cols { columns: 150px 3; }
}
.colophon { text-align: center; display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 14px; padding: 28px 16px calc(28px + env(safe-area-inset-bottom)); border-top: 1px solid var(--rule); font-size: 13px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--dim); }
.colophon a { color: var(--ink); text-decoration: none; padding: 12px 0; margin: -12px 0; }
@media (min-width: 760px) {
  .mast { grid-template-columns: auto 1fr; justify-items: stretch; align-items: center; padding: 0 max(16px, calc((100% - 1240px) / 2)); }
  .mast .mark { padding: 16px 0 14px; }
  .mast nav { justify-content: flex-end; gap: 30px; max-width: none; }
}

.atlas { max-width: 1240px; margin: 0 auto; padding: 0 16px 48px; display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: "head" "index" "map" "list"; }
.atlas-head { grid-area: head; padding-top: 26px; }
.atlas-index { grid-area: index; margin-top: 14px; }
.atlas-map { grid-area: map; }
.atlas-list { grid-area: list; }
@media (max-width: 1099px) { .atlas.zoomed { grid-template-areas: "head" "map" "index" "list"; } }
.atlas-head .trail { margin-bottom: 4px; }
.atlas-head h1 { font: 700 clamp(30px, 8.4vw, 46px)/1.04 var(--text); text-transform: uppercase; letter-spacing: 0.035em; margin: 0 0 10px; text-wrap: balance; }
.atlas-head .dek { font-size: 17px; line-height: 1.5; color: var(--dim); margin: 0; max-width: 40em; text-wrap: pretty; }
.mapwrap { position: relative; margin: 22px 0 4px; }
.maphint { margin: 2px 0 0; font-size: 15px; font-style: italic; font-variant-ligatures: no-common-ligatures; color: var(--dim); }
.maphint a { white-space: nowrap; }
@media (hover: none) { .maphint .fine { display: none; } }
@media (hover: hover) { .maphint .coarse, .card .go { display: none; } }
.endpaper { display: block; width: 100%; height: auto; font-family: var(--text); }
.endpaper.zoomed { max-height: 58vh; }
.endpaper path { fill: var(--tint); stroke: var(--ink); stroke-width: 0.8px; stroke-linejoin: round; vector-effect: non-scaling-stroke; transition: fill 200ms; }
.endpaper a { outline: none; }
.endpaper a:hover path, .endpaper a:focus-visible path { fill: var(--rule); }
.endpaper a:focus-visible path { stroke: var(--rubric); stroke-width: 2px; }
.endpaper .edge { fill: none; stroke: var(--ink); }
.endpaper .edge, .endpaper .water, .endpaper .dots { pointer-events: none; }
.endpaper text { font-size: calc(14px * var(--u, 1)); letter-spacing: 0.18em; text-anchor: middle; fill: var(--ink); pointer-events: none; paint-order: stroke; stroke: var(--tint); stroke-width: calc(3px * var(--u, 1)); }
.endpaper .water path { fill: none; stroke: var(--dim); stroke-width: 0.7px; stroke-linecap: round; opacity: 0.75; }
.endpaper .water path.lake { fill: var(--paper); stroke-width: 0.5px; }
.endpaper text.river { font-size: calc(11px * var(--u, 1)); font-style: italic; font-variant-ligatures: no-common-ligatures; letter-spacing: 0.04em; fill: var(--dim); stroke-width: calc(2.5px * var(--u, 1)); }
.endpaper .dots path { fill: none; stroke: var(--rubric); stroke-width: 3px; stroke-linecap: round; opacity: 0.8; transition: opacity 160ms; }
.endpaper.zoomed .dots path { stroke-width: var(--dot); opacity: 0.85; }
.endpaper .dots path.far { opacity: 0.18; stroke-width: calc(var(--dot, 4px) * 0.6); }
.endpaper.zoomed a.away path { fill: var(--paper); stroke: var(--field); }
.endpaper.zoomed a.away:hover path, .endpaper.zoomed a.away:focus-visible path { fill: var(--tint); }
.endpaper.zoomed text { font-size: calc(17px * var(--u, 1)); }
.endpaper.zoomed text.away { fill: var(--dim); stroke: var(--paper); }
.endpaper .mark circle { fill: none; stroke: var(--ink); stroke-width: 1.5px; vector-effect: non-scaling-stroke; pointer-events: none; }
.endpaper .mark text { font-size: calc(15px * var(--u, 1)); font-style: italic; font-variant-ligatures: no-common-ligatures; letter-spacing: 0.04em; text-anchor: start; }
.endpaper .mark text.end { text-anchor: end; }
.endpaper.dotting { cursor: pointer; }
.endpaper.dotting a:hover path { fill: var(--tint); }
.endpaper.zoomed.dotting a.away:hover path { fill: var(--paper); }
.endpaper.kinded .dots path { opacity: 0.1; }
.endpaper.kinded .dots path.hk { opacity: 1; stroke-width: 6px; }
.endpaper.zoomed.kinded .dots path.hk { stroke-width: calc(var(--dot) + 2px); }
@media (max-width: 759px) { .endpaper text.river { font-size: calc(17px * var(--u, 1)); } .endpaper:not(.zoomed) text.river.minor { display: none; } }
@media (min-width: 760px) { .endpaper .dots path { stroke-width: 4px; } }
@media (prefers-reduced-motion: reduce) { .endpaper path, .endpaper .dots path { transition: none; } }
.card { position: absolute; z-index: 4; display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: center; width: max-content; max-width: min(300px, 86%); padding: 7px 12px 7px 7px; background: var(--paper); border: 1px solid var(--ink); color: var(--ink); text-decoration: none; }
.card:not(:has(img)) { grid-template-columns: 1fr; padding-left: 12px; }
.card[hidden], .ring[hidden] { display: none; }
.card img { width: 58px; height: 58px; object-fit: cover; display: block; }
.card span { display: grid; gap: 1px; min-width: 0; }
.card b { font-size: 17px; line-height: 1.25; }
.card i { font-size: 14px; line-height: 1.3; color: var(--dim); }
.card .go { font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--rubric); margin-top: 3px; }
.card:hover b { color: var(--rubric); }
.ring { position: absolute; z-index: 3; width: 16px; height: 16px; margin: -8px 0 0 -8px; border: 1.5px solid var(--rubric); border-radius: 50%; pointer-events: none; }
.rows { list-style: none; margin: 0; padding: 0; }
.atlas-list > .rows:first-child { margin-top: 18px; }
.rows a { display: grid; grid-template-columns: 1fr auto; gap: 14px; align-items: start; padding: 12px 0; border-bottom: 1px dotted var(--rule); text-decoration: none; }
.rows a:hover b { color: var(--rubric); }
.rows .t { display: grid; gap: 1px; min-width: 0; }
.rows b { font-size: 18px; line-height: 1.3; }
.rows i { color: var(--dim); font-size: 15px; }
.rows .dek { font-size: 15px; line-height: 1.42; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin-top: 3px; }
.rows img { width: 72px; height: 72px; object-fit: cover; display: block; }
.next { font-size: 17px; color: var(--dim); margin: 28px 0 0; text-wrap: pretty; }
.next a { color: var(--ink); }
@media (min-width: 760px) { .rows img { width: 96px; height: 96px; } }
@media (min-width: 1100px) {
  .atlas { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); grid-template-areas: "map head" "map index" "map list"; grid-template-rows: auto auto 1fr; column-gap: 56px; align-items: start; }
  .atlas-head { padding-top: 34px; }
  .atlas-map { position: sticky; top: 12px; }
  .endpaper.zoomed { max-height: calc(100vh - 80px); }
}

.atlas-head h1.say { font: 700 clamp(26px, 7vw, 36px)/1.14 var(--text); text-transform: none; letter-spacing: 0; max-width: 21em; }
.findbox { margin-top: 20px; max-width: 520px; display: grid; gap: 3px; }
.findbox[hidden] { display: none; }
.findbox label { font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--dim); }
.findbox input { font: 17px var(--text); color: var(--ink); background: var(--paper); border: 1px solid var(--field); border-radius: 2px; padding: 9px 10px; min-height: 44px; width: 100%; appearance: none; }
.findbox input::placeholder { color: var(--dim); font-style: italic; }
.findbox input:focus { outline: 2px solid var(--rubric); outline-offset: 0; border-color: transparent; }
.findbox output { font-size: 15px; font-style: italic; font-variant-ligatures: no-common-ligatures; color: var(--dim); min-height: 0; }
.findbox output:not(:empty) { margin-top: 6px; }
.results { list-style: none; margin: 0; padding: 0; }
.results a { display: grid; padding: 9px 0; border-bottom: 1px dotted var(--rule); text-decoration: none; }
.results a:hover b { color: var(--rubric); }
.results i { color: var(--dim); font-size: 15px; }
.contents h3 { font: 400 12px/1.3 var(--text); letter-spacing: 0.2em; text-transform: uppercase; color: var(--dim); margin: 22px 0 0; }
.contents .part:first-child h3 { margin-top: 0; }
@media (min-width: 760px) {
  .contents .parts { columns: 2; column-gap: 32px; }
  .contents .part { break-inside: avoid; }
}

.crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 0 16px; padding: 4px max(16px, calc((100% - 688px) / 2)); border-bottom: 1px solid var(--rule); }
.crumbs > span { margin-left: auto; font-size: 13px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--dim); }
@media (max-width: 759px) {
  .crumbs .trail ol { font-size: 12px; letter-spacing: 0.12em; }
  .crumbs li:first-child:not(:only-child), .crumbs > span { display: none; }
  .crumbs li:first-child:not(:only-child) + li::before { display: none; }
}
.entry { max-width: 720px; margin: 0 auto; padding: 0 16px 48px; display: flex; flex-direction: column; }
.entry > * { min-width: 0; }
.gallery { margin: 0 -16px; }
.stage { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
.stage::-webkit-scrollbar { display: none; }
.plate { flex: 0 0 100%; margin: 0; scroll-snap-align: start; }
.plate .open { display: block; }
.plate img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; background: var(--tint); }
.plate:first-child img { view-transition-name: plate; }
.plate figcaption { padding: 6px 16px 0; }
figcaption { font-size: 14px; line-height: 1.45; color: var(--dim); font-style: italic; font-variant-ligatures: no-common-ligatures; }
figcaption b { font-style: normal; font-weight: 400; letter-spacing: 0.08em; text-transform: uppercase; font-size: 12px; color: var(--rubric); margin-right: 2px; }
figcaption cite { font-style: normal; }
figcaption a { text-decoration-color: var(--rule); }
figcaption a[rel="license"] { white-space: nowrap; }
.strip { list-style: none; margin: 0; padding: 10px 16px 4px; display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; }
.strip::-webkit-scrollbar { display: none; }
.strip li { flex: none; }
.strip a { display: block; width: 52px; text-decoration: none; }
.strip img { display: block; width: 52px; height: 52px; object-fit: cover; background: var(--tint); transition: opacity 160ms; }
.strip:has([aria-current]) a:not([aria-current]) img { opacity: 0.62; }
.strip a:hover img { opacity: 1; }
.strip a[aria-current] img { outline: 2px solid var(--rubric); outline-offset: 2px; }
.strip span { display: none; }
.entry h1 { font: 700 clamp(30px, 8.4vw, 46px)/1.04 var(--text); text-transform: uppercase; letter-spacing: 0.035em; margin: 20px 0 6px; text-wrap: balance; }
.entry[data-plates="0"] h1 { margin-top: 26px; }
.runin { margin: 0 0 4px; font-size: 19px; }
.runin .kind { font-style: italic; font-variant-ligatures: no-common-ligatures; color: var(--dim); }
.info { display: flex; flex-direction: column; }
.info h2.sec { margin: 28px 0 12px; }
.locator { order: 1; margin: 14px 0 0; }
.locator .map { position: relative; border: 1px solid var(--rule); background: var(--paper); }
.locator img { display: block; width: 100%; height: auto; }
.locator .pin { position: absolute; width: 12px; height: 12px; margin: -6px 0 0 -6px; border: 2px solid var(--paper); border-radius: 50%; background: var(--rubric); }
.locator figcaption { margin-top: 6px; }
.details { margin: 0; font-size: 17px; line-height: 1.5; }
.details div { margin: 0 0 9px; }
.details dt { display: inline; font-style: italic; font-variant-ligatures: no-common-ligatures; color: var(--dim); }
.details dt::after { content: ": "; }
.details dd { display: inline; margin: 0; }
.details .go { display: flex; width: fit-content; align-items: center; min-height: 44px; margin: 8px 0 4px; padding: 0 18px; border: 1px solid var(--rubric); border-radius: 2px; color: var(--rubric); text-decoration: none; font-size: 13px; letter-spacing: 0.16em; text-transform: uppercase; }
.details .go:hover { background: var(--rubric); color: var(--paper); }
.essay { margin-top: 40px; hyphens: auto; -webkit-hyphens: auto; }
.essay p { margin: 0 0 1em; text-wrap: pretty; }
.essay > p:first-child::first-line { text-transform: uppercase; font-size: 0.86em; letter-spacing: 0.05em; }
.essay h2 { font: 700 17px/1.35 var(--text); letter-spacing: 0.12em; text-transform: uppercase; text-align: center; margin: 2.2em 0 1em; text-wrap: balance; }
.essay blockquote { margin: 1em 0 1em 1.4em; font-style: italic; font-variant-ligatures: no-common-ligatures; }
.essay ul { margin: 0 0 1em; padding-left: 1.4em; }
.essay li { margin: 0 0 0.4em; padding-left: 0.2em; text-wrap: pretty; }
.events { list-style: none; padding: 0; margin: 0; font-size: 17px; }
.events li { display: grid; grid-template-columns: 3.3em 1fr; gap: 16px; padding: 7px 0; }
.events b { font-variant-numeric: lining-nums tabular-nums; text-align: right; color: var(--rubric); white-space: nowrap; }
.events span { grid-column: 2; }
.src { font-size: 13px; color: var(--dim); white-space: nowrap; }
.people { list-style: none; padding: 0; margin: 0; font-size: 17px; }
.people li { margin: 0 0 8px; padding-left: 1.4em; text-indent: -1.4em; }
.people .yrs { color: var(--dim); font-variant-numeric: lining-nums; }
.sources { margin: 0; padding-left: 1.6em; font-size: 14px; line-height: 1.5; font-variant-numeric: lining-nums; }
.sources li { margin-bottom: 6px; overflow-wrap: anywhere; color: var(--dim); }
.sources a { text-decoration: none; color: var(--dim); }
.sources i { color: var(--ink); font-variant-ligatures: no-common-ligatures; }
.viewer { --paper: #1c2920; --ink: #ebe4d2; --dim: #b4b7a5; --rubric: #ec8b75; --rule: #3c5143; position: fixed; inset: 0; width: 100%; height: 100%; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; background: var(--paper); color: var(--ink); overflow: hidden; }
.viewer::backdrop { background: #1c2920; }
html:has(.viewer[open]) { overflow: hidden; }
.viewer .track { display: flex; height: 100%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior: contain; }
.viewer .track::-webkit-scrollbar { display: none; }
.viewer figure { flex: 0 0 100%; height: 100%; margin: 0; scroll-snap-align: center; scroll-snap-stop: always; display: flex; flex-direction: column; justify-content: center; padding: calc(56px + env(safe-area-inset-top)) 16px calc(20px + env(safe-area-inset-bottom)); }
.viewer img { display: block; min-height: 0; max-width: 100%; max-height: 100%; width: auto; height: auto; margin: 0 auto; object-fit: contain; }
.viewer figcaption { flex: none; max-width: 62ch; margin: 12px auto 0; text-align: center; text-wrap: balance; }
.viewer .vcount { position: absolute; top: calc(14px + env(safe-area-inset-top)); left: 16px; margin: 0; font-size: 13px; line-height: 28px; letter-spacing: 0.16em; text-transform: uppercase; }
.viewer button { position: absolute; padding: 0; border: 0; background: none; color: var(--ink); cursor: pointer; }
.viewer button:hover { color: var(--rubric); }
.viewer button:focus-visible { outline-color: var(--rubric); }
.viewer .vclose { top: calc(6px + env(safe-area-inset-top)); right: 6px; width: 44px; height: 44px; }
.viewer .vclose::before, .viewer .vclose::after { content: ""; position: absolute; left: 13px; top: 21px; width: 18px; height: 1.5px; background: currentColor; transform: rotate(45deg); }
.viewer .vclose::after { transform: rotate(-45deg); }
.viewer .vprev, .viewer .vnext { top: calc(50% - 44px); width: 48px; height: 88px; }
.viewer .vprev { left: 4px; }
.viewer .vnext { right: 4px; }
.viewer .vprev::before, .viewer .vnext::before { content: ""; position: absolute; top: 38px; width: 12px; height: 12px; border-left: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; }
.viewer .vprev::before { left: 20px; transform: rotate(45deg); }
.viewer .vnext::before { right: 20px; transform: rotate(-135deg); }
.viewer button[disabled] { visibility: hidden; }
@media (pointer: coarse) { .viewer .vprev, .viewer .vnext { display: none; } }
@media (min-width: 760px) {
  .gallery { margin: 24px 0 0; }
  .plate img { aspect-ratio: 16 / 9; }
  .plate figcaption { padding: 6px 0 0; }
  .strip { padding: 12px 0 4px; flex-wrap: wrap; overflow: visible; }
  .info { display: flow-root; }
  .locator { float: right; width: 44%; margin: 4px 0 14px 28px; }
}
@media (min-width: 1024px) {
  .crumbs { padding-inline: max(16px, calc((100% - 1216px) / 2)); }
  .entry { max-width: 1248px; display: grid; padding-top: 32px; grid-template-columns: minmax(0, 680px) minmax(300px, 472px); justify-content: center; column-gap: clamp(40px, 4.4vw, 64px); grid-template-rows: auto auto auto 1fr; grid-template-areas: "head gallery" "info gallery" "essay gallery" "apparatus gallery"; }
  .entry[data-plates="0"] { grid-template-rows: auto auto 1fr; grid-template-areas: "head apparatus" "info apparatus" "essay apparatus"; }
  .entry[data-plates="0"] .apparatus > section:first-child h2.sec { margin-top: 0; }
  .gallery { grid-area: gallery; margin: 0; align-self: start; position: sticky; top: min(24px, calc(100vh - var(--side-h, 0px) - 16px)); }
  .plate img { aspect-ratio: 3 / 2; }
  .strip { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 10px 6px; padding: 12px 0 0; }
  .strip a, .strip img { width: 100%; }
  .strip img { height: auto; aspect-ratio: 1; }
  .strip span { display: block; margin-top: 4px; font-size: 12px; line-height: 15px; letter-spacing: 0.08em; text-align: center; color: var(--dim); font-variant-numeric: lining-nums; }
  .strip a[aria-current] span { color: var(--rubric); }
  .head { grid-area: head; }
  .entry h1, .entry[data-plates="0"] h1 { margin-top: -4px; }
  .info { grid-area: info; }
  .info h2.sec { margin-top: 26px; }
  .essay { grid-area: essay; }
  .apparatus { grid-area: apparatus; }
}

.missing { max-width: 720px; margin: 0 auto; padding: 48px 16px 64px; }
.missing h1 { font: 700 clamp(30px, 8.4vw, 46px)/1.04 var(--text); text-transform: uppercase; letter-spacing: 0.035em; margin: 0 0 18px; text-wrap: balance; text-align: center; }
.missing > p { margin: 0 auto 1em; max-width: 30em; text-wrap: pretty; text-align: center; }

.about { max-width: 720px; margin: 0 auto; padding: 0 16px 56px; hyphens: auto; -webkit-hyphens: auto; }
.about h1 { font: 700 clamp(30px, 8.4vw, 46px)/1.04 var(--text); text-transform: uppercase; letter-spacing: 0.035em; margin: 34px 0 22px; text-wrap: balance; }
.about p { margin: 0 0 1em; text-wrap: pretty; }
.about > p:first-of-type::first-line { text-transform: uppercase; font-size: 0.86em; letter-spacing: 0.05em; }
.about .tests { margin: 0; }
.about .tests div { margin: 0 0 0.8em; }
.about .tests dt { display: inline; font-style: italic; color: var(--dim); }
.about .tests dt::after { content: ". "; }
.about .tests dd { display: inline; margin: 0; }

.atlas-head .runin { margin: 0 0 10px; }
.atlas-index h2.sec { margin: 28px 0 12px; }
.fn { font-size: 0.64em; line-height: 0; font-variant-numeric: lining-nums; font-style: normal; margin-left: 1px; }
.fn a { color: var(--rubric); text-decoration: none; padding: 0 1px; }
.fn a:hover { text-decoration: underline; }
.essay.history { margin-top: 0; }
.history h3 { font: 700 17px/1.35 var(--text); letter-spacing: 0.12em; text-transform: uppercase; text-align: center; margin: 2.2em 0 1em; text-wrap: balance; }
.history h3:first-child { margin-top: 6px; }
.history h3:first-child + p::first-line { text-transform: uppercase; font-size: 0.86em; letter-spacing: 0.05em; }
.measure { font-size: 15px; font-style: italic; font-variant-ligatures: no-common-ligatures; color: var(--dim); margin: -6px 0 0; }
.sources li:target, .sources li:target a { color: var(--ink); }
.townbook { max-width: 760px; margin: 0 auto; padding: 0 16px 56px; }
.townbook .trail { margin: 20px 0 4px; }
.townbook h1 { font: 700 clamp(30px, 8.4vw, 46px)/1.04 var(--text); text-transform: uppercase; letter-spacing: 0.035em; margin: 0 0 10px; text-wrap: balance; }
.townbook .dek { font-size: 17px; line-height: 1.5; color: var(--dim); margin: 0 0 8px; max-width: 40em; text-wrap: pretty; }
@media (min-width: 760px) { .townbook .leaders { columns: 2; column-gap: 36px; } .townbook .leaders li { break-inside: avoid; } }
