:root{
  --paper:#f4eee1; --paper2:#ece4d3; --plate:#f8f3e8; --ink:#282018; --ink2:#574a3b;
  --faint:#75664f; --rule:#ddd2b9; --rule2:#c9b998; --line:#40342410;
  --accent:#a83a24; --accent-deep:#8b2e1a; --teal:#2f6b60;
  --disp:"Fraunces","Hoefler Text","Iowan Old Style",Palatino,Georgia,serif;
  --body:"Newsreader","Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;
  --measure:35rem; --wide:70rem;
  --pad:clamp(1.15rem,4.5vw,2.4rem);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:5rem}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.66;
  font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
/* faint paper grain */
body::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;opacity:.05;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
body::after{content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;
  background:radial-gradient(120% 80% at 50% -10%,#fbf6ec 0%,transparent 55%)}
img{max-width:100%;display:block}
a{color:var(--accent-deep);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:2px}
::selection{background:rgba(168,58,36,.16)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.skip{position:absolute;left:-999px}
.skip:focus{left:8px;top:8px;background:var(--accent);color:#fff;padding:8px 14px;z-index:100;font-family:var(--mono);font-size:13px}
.nowrap{white-space:nowrap}

/* labels — a monospaced catalog voice */
.section-eyebrow,.eyebrow,.part-eyebrow,.chapter-tag,.co-label{font-family:var(--mono);font-size:.7rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--accent);font-weight:500}

/* header — a running head */
.site-header{position:sticky;top:0;z-index:50;display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center;justify-content:space-between;
  padding:.85rem var(--pad);background:color-mix(in srgb,var(--paper) 86%,transparent);backdrop-filter:blur(9px) saturate(1.1);
  border-bottom:1px solid var(--ink)}
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:var(--rule2)}
.brand{display:flex;align-items:center;gap:.6rem;color:var(--ink)}
.brand-mark{display:flex;color:var(--accent)}
.brand-name{font-family:var(--disp);font-weight:500;font-size:1.15rem;letter-spacing:.005em}
.mainnav{display:flex;gap:1.35rem;flex-wrap:wrap}
.mainnav a{font-family:var(--mono);color:var(--ink2);font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}
.mainnav a:hover{color:var(--accent-deep);text-decoration:none}

.crumbs{max-width:var(--wide);margin:22px auto 0;padding:0 var(--pad);font-family:var(--mono);font-size:.72rem;letter-spacing:.04em;color:var(--faint)}
.crumbs a{color:var(--ink2)}
.crumbs .sep{margin:0 8px;color:var(--rule2)}

main{padding:0 var(--pad)}

/* plate — a mounted specimen; the ::before glow rescues dark mode */
.plate{position:relative;isolation:isolate}
.plate::before{content:"";position:absolute;inset:-9% -6%;z-index:-1;border-radius:50%;opacity:0;
  background:radial-gradient(closest-side,rgba(248,243,232,.9),transparent 74%);transition:opacity .3s}
.plate img{position:relative}
.plate-tick{position:absolute;width:13px;height:13px;z-index:2}
.plate-tick.tl{top:-3px;left:-3px;border-top:1px solid var(--rule2);border-left:1px solid var(--rule2)}
.plate-tick.tr{top:-3px;right:-3px;border-top:1px solid var(--rule2);border-right:1px solid var(--rule2)}
.plate-tick.bl{bottom:-3px;left:-3px;border-bottom:1px solid var(--rule2);border-left:1px solid var(--rule2)}
.plate-tick.br{bottom:-3px;right:-3px;border-bottom:1px solid var(--rule2);border-right:1px solid var(--rule2)}
.plate-id{display:block;font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--faint);text-align:right;margin-top:.9rem}

/* hero — asymmetric printed opening */
.hero{max-width:var(--wide);margin:0 auto;padding:clamp(2.6rem,6vw,4.6rem) 0 1rem;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(1.8rem,5vw,4rem);align-items:center}
.hero-text .eyebrow{display:block;margin-bottom:1.5rem}
h1{font-family:var(--disp);font-weight:400;letter-spacing:-.015em;line-height:1;color:var(--ink);font-optical-sizing:auto}
.hero h1{font-size:clamp(3.2rem,8.5vw,6rem);font-variation-settings:"opsz" 144;margin:-.1em 0 0 -.03em}
.hero-sub{font-family:var(--disp);font-size:clamp(1.1rem,2.3vw,1.45rem);font-style:italic;font-weight:340;
  color:var(--ink2);margin-top:1.1rem;line-height:1.35;max-width:26rem}
.hero-sub em{font-style:italic;color:var(--accent-deep)}
.lede{font-size:clamp(1rem,1.4vw,1.12rem);color:var(--ink2);margin-top:1.2rem;max-width:30rem;line-height:1.62}
.hero-cta{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.8rem}
.hero-figure{margin:0}
.hero-plate-link{display:block;color:inherit;border-radius:2px}
.hero-plate-link:hover{text-decoration:none}
.hero-figure img{width:100%;height:auto;filter:drop-shadow(0 16px 34px rgba(70,44,18,.16))}
.hero-plate-link img{transition:transform .24s ease,filter .24s ease}
.hero-plate-link:hover img{transform:translateY(-3px);filter:drop-shadow(0 19px 38px rgba(70,44,18,.2))}
.fig-key{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:1.1rem;border-top:1px solid var(--rule);padding-top:.9rem}
.fk{font-family:var(--mono);font-size:.68rem;letter-spacing:.02em;color:var(--ink2);display:flex;gap:.5em;align-items:baseline;line-height:1.4}
.fk b{color:var(--accent);font-weight:500}

.btn{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:500;
  background:var(--ink);color:var(--paper);padding:.9em 1.5em;border:1px solid var(--ink);border-radius:0;transition:background .16s,color .16s,border-color .16s}
.btn:hover{text-decoration:none;background:var(--accent-deep);border-color:var(--accent-deep);color:var(--paper)}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.ghost:hover{background:transparent;color:var(--accent-deep);border-color:var(--ink)}

/* stats — a data ledger */
.stats{max-width:var(--wide);margin:clamp(2.4rem,5vw,3.4rem) auto 0;display:grid;grid-template-columns:repeat(5,1fr);
  border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.stat{padding:1.3rem 1rem;border-left:1px solid var(--rule)}
.stat:first-child{border-left:0;padding-left:.1rem}
.stat-big{display:block;font-family:var(--disp);font-size:clamp(1.7rem,3.6vw,2.5rem);font-weight:400;
  font-variation-settings:"opsz" 90;color:var(--ink);line-height:1}
.stat-label{display:block;font-family:var(--mono);font-size:.62rem;letter-spacing:.11em;color:var(--faint);margin-top:.6rem;text-transform:uppercase;line-height:1.35}
@media(max-width:720px){.stats{grid-template-columns:repeat(2,1fr)}.stat:nth-child(odd){border-left:0;padding-left:.1rem}.stat{border-top:1px solid var(--rule)}.stat:nth-child(-n+2){border-top:0}.stat:last-child{grid-column:1/-1}}

/* summary + themes — set text with a drop cap */
.prose-inline p{font-size:1.06rem;line-height:1.72;color:var(--ink2);margin:0 0 1rem}
.prose-inline strong{color:var(--ink);font-weight:560}
.summary,.themes{max-width:var(--measure);margin:clamp(3rem,7vw,4.6rem) auto 0}
.summary .section-eyebrow,.themes .section-eyebrow{display:block;margin-bottom:.7rem}
.summary h2,.themes h2,.chapters-head h2{font-family:var(--disp);font-weight:400;font-size:clamp(1.7rem,4vw,2.5rem);
  letter-spacing:-.01em;line-height:1.08;margin:0 0 1.1rem;color:var(--ink)}
.summary .prose-inline>p:first-of-type::first-letter{font-family:var(--disp);float:left;font-size:3.6em;line-height:.72;
  font-weight:400;padding:.06em .09em 0 0;color:var(--accent)}

.chapters-head{max-width:var(--wide);margin:clamp(3.6rem,8vw,5.6rem) auto 0;border-top:2px solid var(--ink);padding-top:1.2rem}
.chapters-head .section-eyebrow{display:block;margin-bottom:.5rem}
.chapters-head h2{margin:0 0 .3rem}
.chapters-sub{color:var(--ink2);font-size:1.06rem;font-style:italic;font-family:var(--disp);font-weight:340}

/* parts + the List of Plates */
.part{max-width:var(--wide);margin:clamp(2.4rem,5vw,3.6rem) auto 0}
.part-head{display:grid;grid-template-columns:96px 1fr;gap:1.6rem;align-items:center;
  border-top:1px solid var(--rule2);padding:1.5rem .65rem .8rem 0;margin-bottom:.4rem;color:var(--ink);transition:background .18s,padding-left .18s}
.part-head:hover{background:linear-gradient(90deg,rgba(168,58,36,.055),transparent 72%);padding-left:.65rem;text-decoration:none}
.part-head:focus-visible{text-decoration:none}
.part-fig{width:96px}
.part-fig .plate img{width:96px;height:96px;object-fit:contain;filter:drop-shadow(0 5px 12px rgba(70,44,18,.14))}
.part-head .part-fig img{transition:transform .2s ease}.part-head:hover .part-fig img{transform:scale(1.045) rotate(-1deg)}
.part-eyebrow{display:block;margin-bottom:.35rem}
.part-intro h2{font-family:var(--disp);font-weight:400;font-size:clamp(1.4rem,3.2vw,2rem);letter-spacing:-.01em;
  color:var(--ink);margin:0 0 .35rem;line-height:1.08}
.part-blurb{color:var(--ink2);font-size:1rem;max-width:44rem;line-height:1.55}

.chapter-index{list-style:none;margin-top:1rem;border-top:1px solid var(--rule)}
.ci-row{display:grid;grid-template-columns:2.8rem 1fr auto;gap:0 1.3rem;align-items:baseline;position:relative;
  padding:1.15rem .3rem 1.15rem 1rem;border-bottom:1px solid var(--rule);color:var(--ink);transition:background .18s}
.ci-row::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--accent);transform:scaleY(0);transform-origin:center;transition:transform .2s}
.ci-row:hover{background:linear-gradient(90deg,rgba(168,58,36,.05),transparent 60%);text-decoration:none}
.ci-row:hover::before{transform:scaleY(1)}
.ci-num{font-family:var(--mono);font-size:.82rem;color:var(--faint);padding-top:.28rem;transition:color .18s}
.ci-row:hover .ci-num{color:var(--accent)}
.ci-title{display:block;font-family:var(--disp);font-weight:440;font-size:clamp(1.14rem,2vw,1.34rem);line-height:1.2;
  letter-spacing:-.005em;color:var(--ink);transition:color .18s}
.ci-row:hover .ci-title{color:var(--accent-deep)}
.ci-blurb{display:block;color:var(--ink2);font-size:.98rem;line-height:1.5;margin-top:.28rem;max-width:46rem}
.ci-go{font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);
  align-self:center;opacity:0;transform:translateX(-6px);transition:opacity .18s,transform .18s;white-space:nowrap}
.ci-row:hover .ci-go{opacity:1;transform:none}

/* pull quote — rubricated, ranged left */
.pullquote{max-width:46rem;margin:clamp(3.4rem,7vw,5rem) auto 0;padding:2rem 0;
  border-top:1px solid var(--rule2);border-bottom:1px solid var(--rule2)}
.pullquote::before{content:"\201C";display:block;font-family:var(--disp);color:var(--accent);
  font-size:3.4rem;line-height:.6;height:.5em}
.pullquote blockquote{font-family:var(--disp);font-style:italic;font-weight:360;font-size:clamp(1.4rem,3.4vw,2rem);
  line-height:1.34;letter-spacing:-.01em;color:var(--ink);max-width:34rem}
.pq-cite{font-family:var(--mono);text-transform:uppercase;letter-spacing:.16em;font-size:.66rem;color:var(--faint);margin-top:1.3rem}

/* callouts — the apparatus / back matter */
.callouts{max-width:var(--wide);margin:clamp(3rem,6vw,4.4rem) auto 0;display:grid;grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--ink);border-bottom:1px solid var(--rule2)}
.callout{padding:1.4rem 1.3rem 1.6rem;border-left:1px solid var(--rule);transition:background .18s}
.callout:first-child{border-left:0}
.callout:hover{background:var(--paper2);text-decoration:none}
.co-label{display:block;margin-bottom:.7rem;color:var(--faint)}
.callout:hover .co-label{color:var(--accent)}
.callout h3{font-family:var(--disp);font-weight:440;font-size:1.16rem;color:var(--ink);margin-bottom:.4rem}
.callout p{font-size:.94rem;color:var(--ink2);line-height:1.5}

/* article pages */
.prose{max-width:var(--measure);margin:1.4rem auto 0}
.plate-folio{font-family:var(--disp);font-style:italic;font-weight:300;font-size:clamp(2rem,7vw,3.4rem);
  color:var(--rule2);line-height:.9;text-align:right;margin-bottom:-.2em;letter-spacing:.01em}
.prose .chapter-tag{margin-bottom:.7rem}
.prose h1{font-family:var(--disp);font-weight:400;font-size:clamp(2rem,5.4vw,3.1rem);letter-spacing:-.018em;
  line-height:1.04;margin:.2rem 0 1.3rem;font-variation-settings:"opsz" 110}
.prose .lede{max-width:none;margin:0 0 1.6rem;font-family:var(--disp);font-style:italic;font-weight:340;
  font-size:clamp(1.15rem,2vw,1.35rem);line-height:1.4;color:var(--ink2)}
.prose h2{font-family:var(--disp);font-weight:440;font-size:clamp(1.4rem,3.4vw,1.8rem);letter-spacing:-.01em;
  margin:2.6rem 0 .7rem;color:var(--ink);padding-top:1.1rem;border-top:1px solid var(--rule);position:relative}
.prose h2::before{content:"";position:absolute;top:-1px;left:0;width:2.4rem;height:2px;background:var(--accent)}
.prose h3{font-family:var(--disp);font-weight:500;font-size:1.24rem;margin:1.9rem 0 .5rem;color:var(--ink)}
.prose p{font-size:1.16rem;line-height:1.75;color:var(--ink);margin:0 0 1.1rem}
.prose ul,.prose ol{font-size:1.12rem;line-height:1.7;color:var(--ink);margin:0 0 1.2rem;padding-left:1.4rem}
.prose li{margin:.35rem 0}
.prose li::marker{color:var(--accent)}
.prose strong{color:var(--ink);font-weight:600}
.prose em{color:var(--ink)}
.prose a{border-bottom:1px solid var(--rule2)}
.prose a:hover{border-color:var(--accent);text-decoration:none}
.prose h2 .anchor,.prose h3 .anchor{opacity:0;color:var(--faint);font-weight:400;text-decoration:none;font-size:.7em;border:0;font-family:var(--mono)}
.prose h2:hover .anchor,.prose h3:hover .anchor{opacity:1}
.prose blockquote{border-left:2px solid var(--accent);padding:.1rem 0 .1rem 1.1rem;margin:0 0 1.2rem;color:var(--ink2);font-style:italic;font-family:var(--disp)}
.prose code{font-family:var(--mono);font-size:.82em;background:var(--paper2);padding:1px 6px;border-radius:2px;color:var(--accent-deep)}

/* answer-engine summaries and agent park */
.answer-card{margin:1.2rem 0 1.8rem;padding:1.15rem 1.25rem 1.2rem;border:1px solid var(--rule2);border-left:3px solid var(--teal);background:color-mix(in srgb,var(--paper2) 58%,transparent)}
.answer-card h2{font-family:var(--mono);font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--teal);border:0;padding:0;margin:0 0 .45rem}
.answer-card h2::before{display:none}.answer-card p{font-size:1.05rem;line-height:1.6;color:var(--ink2);margin:0}
.park-invite{max-width:var(--wide);margin:clamp(3rem,7vw,5rem) auto 0;padding:clamp(1.5rem,4vw,2.4rem);border:1px solid var(--ink);background:var(--paper2)}
.park-invite h2{font-family:var(--disp);font-size:clamp(1.7rem,4vw,2.5rem);font-weight:400;line-height:1.1;margin:.5rem 0 .7rem}
.park-invite>p:not(.section-eyebrow){max-width:44rem;color:var(--ink2)}
.mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--rule2);border:1px solid var(--rule2);margin:1.5rem 0 2.5rem}
.mode-grid a{display:flex;flex-direction:column;gap:.25rem;background:var(--paper);padding:1.1rem 1.2rem;color:var(--ink)}
.mode-grid a:hover{background:var(--paper2);text-decoration:none}.mode-grid strong{font-family:var(--disp);font-weight:500;font-size:1.12rem}.mode-grid span{color:var(--ink2);font-size:.95rem}
.trail-row{padding:1rem 0;border-top:1px solid var(--rule)}.trail-row h3{margin:0 0 .2rem}.trail-row p{font-size:1rem;margin:0}.trail-question{font-style:italic;color:var(--teal)!important}
.trail-card{border-top:1px solid var(--rule2);padding:1.25rem 0}.trail-card h2{border:0;padding:0;margin:.2rem 0 .6rem}.trail-card h2::before{display:none}.trail-count,.debate-status{font-family:var(--mono);font-size:.68rem!important;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)!important;margin:0!important}
.trail-stops{list-style:none;padding:0!important;counter-reset:stops}.trail-stops>li{margin:0;padding:1.6rem 0;border-top:1px solid var(--rule)}.trail-stops h2{border:0;padding:0;margin:.25rem 0 .6rem}.trail-stops h2::before{display:none}.stop-num{font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.stop-surprise{border-left:2px solid var(--teal);padding-left:.8rem;color:var(--ink2)!important;font-size:1rem!important}.trail-exit{margin-top:2rem!important}
.related-rides{max-width:var(--measure);margin:2.5rem auto 0}.related-rides h2{font-family:var(--disp);font-weight:440;font-size:1.5rem;margin:.35rem 0 .8rem}.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule)}.related-grid a{background:var(--paper);padding:1rem;display:flex;flex-direction:column;gap:.3rem;color:var(--ink)}.related-grid a:hover{background:var(--paper2);text-decoration:none}.related-grid strong{font-family:var(--disp);font-weight:500;line-height:1.25}.related-grid span{font-size:.88rem;line-height:1.4;color:var(--ink2)}
.debate-card{padding:1.5rem 0;border-top:1px solid var(--rule2)}.debate-card h2{border:0;padding:0;margin:.25rem 0 .8rem}.debate-card h2::before{display:none}.debate-sides{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.debate-sides p{font-size:1rem;background:var(--paper2);padding:1rem;margin:0}.debate-sides strong{display:block;font-family:var(--mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:.4rem}
.answer-source{font-family:var(--mono);font-size:.72rem!important;letter-spacing:.02em;margin:.55rem 0 0!important}.source-note{font-size:1rem!important;color:var(--ink2)!important;border-left:2px solid var(--teal);padding-left:1rem}.source-kind{display:inline-block;font-family:var(--mono);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);border:1px solid var(--rule2);padding:.15rem .35rem;margin:0 .45rem .2rem 0;vertical-align:middle}.source-link{display:block;width:max-content;font-family:var(--mono);font-size:.68rem;margin-top:.25rem;border-bottom:0!important}
.chapter-source-links{margin-top:2.8rem;padding:1.2rem;border:1px solid var(--rule2);background:var(--paper2)}.chapter-source-links h2{margin:0 0 .4rem;padding:0;border:0}.chapter-source-links h2::before{display:none}.chapter-source-links>p{font-size:.96rem;color:var(--ink2)}.chapter-source-links ol{font-size:.92rem;margin:0}.chapter-source-links li{margin:.55rem 0}.chapter-source-links li span{display:block;font-family:var(--mono);font-size:.62rem;color:var(--faint)}

.faq-item{border-top:1px solid var(--rule);padding:1.4rem 0}
.faq-item h2{font-family:var(--disp);font-weight:460;font-size:1.34rem;margin:0 0 .55rem;color:var(--ink);border:0;padding:0}
.faq-item h2::before{display:none}
.faq-item p{font-size:1.1rem;line-height:1.7;color:var(--ink)}
.glossary dt{font-family:var(--disp);font-weight:500;font-size:1.24rem;color:var(--ink);margin-top:1.4rem}
.glossary dd{font-size:1.05rem;color:var(--ink2);margin:.25rem 0 0;line-height:1.6}
.biblio{padding-left:1.6rem}
.biblio li{font-size:1rem;line-height:1.62;color:var(--ink2);margin:.75rem 0}
.biblio li::marker{color:var(--faint);font-family:var(--mono);font-size:.85em}
.biblio em{color:var(--ink)}

/* pager */
.pager{max-width:var(--measure);margin:3rem auto 0;display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--ink)}
.pager a{padding:1.1rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:.35rem;transition:background .18s}
.pager .next{text-align:right;border-left:1px solid var(--rule)}
.pager a:hover{background:var(--paper2);text-decoration:none}
.pager span{font-family:var(--mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.pager strong{font-family:var(--disp);color:var(--ink);font-size:1.08rem;font-weight:440;line-height:1.2}
.md-hint{max-width:var(--measure);margin:1.6rem auto 0;font-family:var(--mono);color:var(--faint);font-size:.76rem}

/* footer — colophon */
.site-footer{max-width:var(--wide);margin:clamp(4rem,9vw,6rem) auto 0;padding:2.2rem var(--pad) 4rem;border-top:1px solid var(--ink)}
.colophon{text-align:center;max-width:40rem;margin:0 auto}
.col-mark{display:flex;justify-content:center;color:var(--accent);margin-bottom:1rem}
.foot-title{font-family:var(--disp);font-weight:500;font-size:1.3rem;color:var(--ink)}
.foot-tag{color:var(--ink2);font-size:1rem;margin-top:.4rem;line-height:1.55;font-family:var(--disp);font-style:italic;font-weight:340}
.colophon-set{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;color:var(--faint);margin-top:1.1rem;line-height:1.7}
.foot-links{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;color:var(--faint);margin-top:1rem;text-transform:uppercase}
.foot-links a{color:var(--ink2)}
.foot-links a:hover{color:var(--accent-deep)}

/* dark mode — a lamplit reading room */
@media(prefers-color-scheme:dark){
  :root{--paper:#191410;--paper2:#231b14;--plate:#efe6d4;--ink:#efe3cd;--ink2:#c3b298;
    --faint:#948468;--rule:#392d20;--rule2:#4d3d2b;
    --accent:#e0704a;--accent-deep:#e88a63;--teal:#5aa89c}
  body::before{mix-blend-mode:screen;opacity:.04}
  body::after{background:radial-gradient(120% 80% at 50% -10%,#221a12 0%,transparent 55%)}
  .site-header{background:color-mix(in srgb,var(--paper) 82%,transparent)}
  .plate::before{opacity:.9;background:radial-gradient(closest-side,rgba(233,222,199,.62),transparent 72%)}
  .hero-figure img{filter:none}
  .part-fig .plate img{filter:none}
  .btn{color:#1a120b}
  .btn:hover{color:#1a120b}
  ::selection{background:rgba(224,112,74,.24)}
}
@media(max-width:820px){
  .hero{grid-template-columns:1fr;gap:1.8rem}
  .hero-figure{max-width:520px;margin-inline:auto;width:100%}
  .hero-sub,.lede{max-width:none}
  .callouts{grid-template-columns:repeat(2,1fr)}
  .callout:nth-child(3){border-left:0}
}
@media(max-width:640px){
  body{font-size:17px}
  .part-head{grid-template-columns:72px 1fr;gap:1.1rem}
  .part-fig{width:72px}.part-fig .plate img{width:72px;height:72px}
  .ci-row{grid-template-columns:2.4rem 1fr;padding-left:.8rem}
  .ci-go{display:none}
  .pager{grid-template-columns:1fr}
  .pager .next{border-left:0;border-top:1px solid var(--rule);text-align:left}
  .mode-grid,.related-grid,.debate-sides{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
