@font-face{font-family:"Fraunces";font-style:normal;font-weight:300 900;font-display:swap;src:url(fonts/Fraunces-display.woff2) format("woff2")}
@font-face{font-family:"Atkinson Next";font-style:normal;font-weight:200 800;font-display:swap;src:url(fonts/AtkinsonHyperlegibleNext.woff2) format("woff2")}

:root{color-scheme:light;--bg:#f6f0e2;--bg-2:#eee5d0;--surface:#fffaf0;--surface-2:#f0e7d1;--text:#171510;--text-2:#38342b;--muted:#4c473c;--line:#c7ba98;--line-soft:#ddd2b6;--accent:#83290c;--accent-ink:#ffffff;--accent-soft:#f6dfd4;--link:#083f75;--focus:#083f75;--ok:#14532d;--ok-soft:#d7eedd;--gold:#5a3d00;--gold-soft:#f5e3b3;--no:#8a1c1c;--no-soft:#f7d9d6;--c-m:#054a78;--c-s:#664000;--c-d:#563394;--era-cen:#7ea0d6;--era-cre:#6fb5a2;--era-jur:#c2b95c;--era-tri:#d59a6a;--blk-moesia:#d9a24b;--blk-baltica:#5c9fd6;--blk-tisza:#d16a7c;--blk-dacia:#6dbb7c;--blk-eac:#a780d8;--blk-other:#8b95a8;--g-halo:rgba(90,130,190,.28);--g-sea-a:#d5e5ec;--g-sea-b:#a9c5d3;--g-grid:rgba(20,35,60,.22);--g-equator:rgba(120,60,10,.6);--g-land:rgba(176,131,66,.97);--g-ghost:rgba(20,35,60,.55);--g-ro:#c2401f;--g-trail:#5b2a00;--g-ref:#171510;--g-ref-text:#171510;--g-town:#c2401f;--g-town-ring:#ffffff;--g-town-halo:rgba(194,64,31,.3);--g-limb:rgba(20,35,60,.45);--r-abyss:#7aa4c6;--r-deep:#9bbdd6;--r-shelf:#c2dbe8;--r-coast:#e3efe6;--r-low:#cfd9a6;--r-mid:#c4a978;--r-high:#a98456;--r-peak:#f4efe6;--shadow:0 1px 2px rgba(60,40,10,.08),0 8px 30px rgba(60,40,10,.10);--bar-h:3.25rem;--serif:"Fraunces",Georgia,"Times New Roman",serif;--sans:"Atkinson Next","Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;}
:root[data-theme="dark"]{color-scheme:dark;--bg:#0a0f1c;--bg-2:#0e1526;--surface:#121a2f;--surface-2:#1a2440;--text:#f3ecdc;--text-2:#d9d2c0;--muted:#b5b0a2;--line:#3a4868;--line-soft:#26314d;--accent:#ff9670;--accent-ink:#1c0c05;--accent-soft:#2b1a1d;--link:#a5cdff;--focus:#ffd08a;--ok:#9be7b4;--ok-soft:#14352a;--gold:#ffd98a;--gold-soft:#3a2f14;--no:#ffb0a8;--no-soft:#3d1c1a;--c-m:#7fd4ff;--c-s:#ffd27a;--c-d:#cfa8ff;--era-cen:#5c86c4;--era-cre:#4f9c8a;--era-jur:#a8a04a;--era-tri:#c27a4a;--blk-moesia:#e8b86a;--blk-baltica:#7fb7e8;--blk-tisza:#e58b9a;--blk-dacia:#8fd19a;--blk-eac:#c9a3f0;--blk-other:#9aa3b5;--g-halo:rgba(140,190,255,.30);--g-sea-a:#22557f;--g-sea-b:#0a1b33;--g-grid:rgba(255,255,255,.15);--g-equator:rgba(255,238,190,.55);--g-land:rgba(206,170,98,.96);--g-ghost:rgba(255,255,255,.5);--g-ro:#ff9670;--g-trail:#ffe9b0;--g-ref:#f3ecdc;--g-ref-text:#f3ecdc;--g-town:#ff9670;--g-town-ring:#ffffff;--g-town-halo:rgba(255,150,112,.34);--g-limb:rgba(255,255,255,.38);--r-abyss:#050f26;--r-deep:#0d2b55;--r-shelf:#2f80b0;--r-coast:#86cbd8;--r-low:#9fbf7c;--r-mid:#a58a54;--r-high:#c5a77c;--r-peak:#f3ecdf;--shadow:0 1px 2px rgba(0,0,0,.4),0 10px 34px rgba(0,0,0,.45);}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;--bg:#0a0f1c;--bg-2:#0e1526;--surface:#121a2f;--surface-2:#1a2440;--text:#f3ecdc;--text-2:#d9d2c0;--muted:#b5b0a2;--line:#3a4868;--line-soft:#26314d;--accent:#ff9670;--accent-ink:#1c0c05;--accent-soft:#2b1a1d;--link:#a5cdff;--focus:#ffd08a;--ok:#9be7b4;--ok-soft:#14352a;--gold:#ffd98a;--gold-soft:#3a2f14;--no:#ffb0a8;--no-soft:#3d1c1a;--c-m:#7fd4ff;--c-s:#ffd27a;--c-d:#cfa8ff;--era-cen:#5c86c4;--era-cre:#4f9c8a;--era-jur:#a8a04a;--era-tri:#c27a4a;--blk-moesia:#e8b86a;--blk-baltica:#7fb7e8;--blk-tisza:#e58b9a;--blk-dacia:#8fd19a;--blk-eac:#c9a3f0;--blk-other:#9aa3b5;--g-halo:rgba(140,190,255,.30);--g-sea-a:#22557f;--g-sea-b:#0a1b33;--g-grid:rgba(255,255,255,.15);--g-equator:rgba(255,238,190,.55);--g-land:rgba(206,170,98,.96);--g-ghost:rgba(255,255,255,.5);--g-ro:#ff9670;--g-trail:#ffe9b0;--g-ref:#f3ecdc;--g-ref-text:#f3ecdc;--g-town:#ff9670;--g-town-ring:#ffffff;--g-town-halo:rgba(255,150,112,.34);--g-limb:rgba(255,255,255,.38);--r-abyss:#050f26;--r-deep:#0d2b55;--r-shelf:#2f80b0;--r-coast:#86cbd8;--r-low:#9fbf7c;--r-mid:#a58a54;--r-high:#c5a77c;--r-peak:#f3ecdf;--shadow:0 1px 2px rgba(0,0,0,.4),0 10px 34px rgba(0,0,0,.45);}}


/* ------------------------------------------------------------------ base */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--bar-h) + .75rem)}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:1.125rem;line-height:1.62;overflow-x:clip;text-rendering:optimizeLegibility}
img,svg,canvas{max-width:100%}
img{height:auto;display:block}
a{color:var(--link);text-underline-offset:.18em;text-decoration-thickness:.08em}
a:hover{text-decoration-thickness:.14em}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}
button,input{font:inherit;color:inherit}
[hidden]{display:none !important}
.skip{position:absolute;left:-999px;top:0;background:var(--accent);color:var(--accent-ink);padding:.6rem 1rem;z-index:100;border-radius:0 0 .5rem 0}
.skip:focus{left:0}
.wrap{width:min(100% - 2rem,76rem);margin-inline:auto}
.narrow{width:min(100% - 2rem,42rem);margin-inline:auto}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.08;letter-spacing:-.012em;margin:0;text-wrap:balance;font-optical-sizing:auto}
h1{font-size:clamp(2.35rem,6.4vw,4.7rem);font-weight:650}
h2{font-size:clamp(1.75rem,3.9vw,2.85rem);margin-bottom:1rem}
h3{font-size:1.32rem;line-height:1.2}
p{margin:0 0 1rem;text-wrap:pretty}
.kicker{font-size:.86rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:0 0 .9rem}
.lede{font-size:1.28rem;line-height:1.5;color:var(--text-2)}
small,.small{font-size:.92rem}
.num{font-variant-numeric:tabular-nums lining-nums}

/* ------------------------------------------------------------------ top bar */
.topbar{position:sticky;top:0;z-index:50;height:var(--bar-h);display:flex;align-items:center;gap:.9rem;padding:0 max(1rem,calc((100% - 76rem)/2));background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft)}
.topbar .home{font-weight:700;color:var(--text);text-decoration:none;white-space:nowrap;font-size:.98rem}
.topnav{display:flex;gap:.2rem;overflow-x:auto;scrollbar-width:none;min-width:0}
.topnav::-webkit-scrollbar{display:none}
.topnav a{color:var(--text-2);text-decoration:none;padding:.35rem .7rem;border-radius:2rem;font-size:.95rem;white-space:nowrap}
.topnav a:hover{background:var(--surface-2);color:var(--text)}
.spacer{flex:1}
.chip{border:1px solid var(--line);border-radius:2rem;padding:.3rem .8rem;text-decoration:none;color:var(--text);font-size:.92rem;font-weight:600;white-space:nowrap}
.chip:hover{background:var(--surface-2)}
.icon-btn{width:2.75rem;height:2.75rem;border-radius:50%;border:1px solid var(--line);background:transparent;display:inline-grid;place-items:center;cursor:pointer;color:var(--text);flex:none}
.icon-btn:hover{background:var(--surface-2)}

/* ------------------------------------------------------------------ hero and instrument */
.hero{display:grid;gap:1.6rem;padding:clamp(1.6rem,4vw,3rem) 0 1rem;grid-template-columns:minmax(0,1fr)}
.hero-copy{display:flex;flex-direction:column;justify-content:center;min-width:0}
.deck{font-size:clamp(1.12rem,2.1vw,1.36rem);line-height:1.5;color:var(--text-2);max-width:36rem;margin:1.1rem 0 1.4rem}
.finder{max-width:34rem}
.finder label{display:block;font-weight:700;font-size:.95rem;margin-bottom:.4rem}
.combo{position:relative}
.combo input{width:100%;padding:.85rem 1rem;border-radius:.8rem;border:1.5px solid var(--line);background:var(--surface);font-size:1.1rem;min-height:3.1rem}
.combo input:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-color:var(--accent)}
.combo input::placeholder{color:var(--muted);opacity:1}
#q-list{position:absolute;left:0;right:0;top:calc(100% + .3rem);z-index:20;margin:0;padding:.3rem;list-style:none;background:var(--surface);border:1.5px solid var(--line);border-radius:.8rem;box-shadow:var(--shadow)}
#q-list li{display:flex;justify-content:space-between;gap:1rem;padding:.6rem .8rem;border-radius:.5rem;cursor:pointer;min-height:2.75rem;align-items:center}
#q-list li[aria-selected="true"],#q-list li:hover{background:var(--accent-soft)}
.q-county{color:var(--muted);font-size:.92rem}
.hint{font-size:.92rem;color:var(--muted);margin:.5rem 0 .8rem}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chips button{border:1.5px solid var(--line);background:transparent;border-radius:2rem;padding:.4rem .95rem;cursor:pointer;min-height:2.75rem;font-size:1rem}
.chips button:hover{background:var(--surface-2)}
.chips button[aria-pressed="true"]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:700}
.no-js .finder,.no-js .instrument-tools,.no-js .timebar{display:none}
.hero-example{margin:1.2rem 0 0;padding:.9rem 1rem;border-left:4px solid var(--accent);background:var(--surface);border-radius:0 .7rem .7rem 0;font-size:1.02rem;max-width:34rem}

.instrument{min-width:0;display:flex;flex-direction:column;gap:.7rem}
.globe-frame{position:relative;aspect-ratio:1/1;width:100%;max-height:min(78vh,44rem);margin-inline:auto;touch-action:pan-y}
#globe{width:100%;height:100%;display:block;border-radius:50%;cursor:grab;touch-action:pan-y}
#globe:active{cursor:grabbing}
#globe:focus-visible{outline-offset:6px;border-radius:50%}
.globe-note{position:absolute;left:0;right:0;bottom:.4rem;text-align:center;font-size:.9rem;color:var(--muted);pointer-events:none}
.no-js .globe-frame{display:none}
.instrument-tools{display:flex;flex-wrap:wrap;gap:.6rem .9rem;align-items:center;justify-content:space-between}
#model-tabs{display:inline-flex;border:1.5px solid var(--line);border-radius:2rem;padding:.2rem;gap:.1rem;background:var(--surface)}
#model-tabs [role="radio"]{border:0;background:transparent;border-radius:2rem;padding:.4rem .9rem;cursor:pointer;min-height:2.6rem;font-size:.98rem;font-weight:600;color:var(--text-2);white-space:nowrap}
#model-tabs [role="radio"][aria-checked="true"]{background:var(--accent);color:var(--accent-ink)}
.rot{display:inline-flex;gap:.3rem}
.rot button{width:2.75rem;height:2.75rem;border-radius:50%;border:1.5px solid var(--line);background:transparent;cursor:pointer;font-size:.95rem;color:var(--text)}
.rot button:hover{background:var(--surface-2)}
.no-js .rot{display:none}
.tool-btn{border:1.5px solid var(--line);background:transparent;border-radius:2rem;padding:.4rem .95rem;cursor:pointer;min-height:2.6rem;font-size:.98rem;font-weight:600}
.tool-btn:hover{background:var(--surface-2)}
#globe-cap{font-size:.95rem;color:var(--muted);margin:0;min-height:2.9em}

.timebar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.4rem .9rem;align-items:center}
#play{width:3rem;height:3rem;border-radius:50%;border:1.5px solid var(--line);background:var(--surface);cursor:pointer;display:grid;place-items:center;color:var(--text)}
#play:hover{background:var(--surface-2)}
#play .i-pause{display:none}
#play.on .i-play{display:none}
#play.on .i-pause{display:block}
#time-out{font-family:var(--serif);font-size:1.25rem;font-weight:600;min-width:9.5rem;text-align:right;font-variant-numeric:lining-nums}
.range-wrap{position:relative;min-width:0}
#time{width:100%;height:2.75rem;margin:0;background:transparent;-webkit-appearance:none;appearance:none;cursor:pointer;display:block}
#time::-webkit-slider-runnable-track{height:.5rem;border-radius:1rem;background:linear-gradient(90deg,var(--era-cen),var(--era-cre) 44%,var(--era-jur) 68%,var(--era-tri) 100%)}
#time::-moz-range-track{height:.5rem;border-radius:1rem;background:linear-gradient(90deg,var(--era-cen),var(--era-cre) 44%,var(--era-jur) 68%,var(--era-tri) 100%)}
#time::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--accent);border:3px solid var(--bg);box-shadow:0 0 0 2px var(--accent);margin-top:-.55rem}
#time::-moz-range-thumb{width:1.3rem;height:1.3rem;border-radius:50%;background:var(--accent);border:3px solid var(--bg);box-shadow:0 0 0 2px var(--accent)}
.eras{display:grid;grid-template-columns:26.4fr 31.6fr 22.4fr 19.6fr;font-size:.82rem;color:var(--muted);margin-top:-.35rem;grid-column:2}
.eras span{padding-left:.15rem;border-left:1px solid var(--line);white-space:nowrap;overflow:hidden}
.jumps{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.4rem}
.jumps button{border:1.5px solid var(--line);background:transparent;border-radius:2rem;padding:.3rem .8rem;cursor:pointer;min-height:2.75rem;font-size:.95rem}
.jumps button:hover{background:var(--surface-2)}
.jl{flex-basis:100%;font-size:.92rem;color:var(--muted)}

/* ------------------------------------------------------------------ answer strip */
.answer{margin:1.2rem auto 0;padding:1.1rem 1.3rem;border:1.5px solid var(--line);border-radius:1.1rem;background:var(--surface);display:grid;gap:1rem 1.6rem;grid-template-columns:repeat(2,minmax(0,1fr))}
.answer .who{grid-column:1/-1;font-weight:700;font-size:1rem;color:var(--text-2)}
.metric dt{font-size:.86rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:.15rem}
.metric dd{margin:0;font-family:var(--serif);font-size:clamp(1.35rem,3.2vw,1.9rem);line-height:1.15;font-weight:600;font-variant-numeric:lining-nums}
.metric dd small{display:block;font-family:var(--sans);font-size:.92rem;font-weight:400;color:var(--text-2);margin-top:.2rem;line-height:1.35}
.answer .share-line{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center;border-top:1px solid var(--line-soft);padding-top:.8rem}
#copy-field{width:100%;padding:.6rem .8rem;border:1.5px solid var(--line);border-radius:.6rem;background:var(--bg);font-size:.95rem}

/* ------------------------------------------------------------------ chapters */
section.block{padding:clamp(2.6rem,6vw,4.8rem) 0}
section.block+section.block{border-top:1px solid var(--line-soft)}
.head-link{color:inherit;text-decoration:none}
.head-link:hover{text-decoration:underline;text-decoration-thickness:.06em}
.head-link::after{content:" #";opacity:0;font-size:.6em;color:var(--muted)}
.head-link:hover::after,.head-link:focus-visible::after{opacity:1}
.journey{display:grid;gap:clamp(2rem,5vw,3.6rem);margin-top:2rem}
.chapter{display:grid;gap:1.2rem;align-items:center;grid-template-columns:minmax(0,1fr)}
.chapter .when{font-family:var(--serif);font-size:clamp(2.5rem,7vw,4.2rem);line-height:1;color:var(--accent);font-weight:650;font-variant-numeric:lining-nums;margin:0 0 .4rem}
.chapter .when small{font-family:var(--sans);font-size:1rem;font-weight:600;color:var(--muted);display:block;letter-spacing:.02em;margin-top:.3rem}
.chapter h3{font-size:clamp(1.4rem,3vw,1.9rem);margin-bottom:.7rem}
.chapter .snapbox{aspect-ratio:1/1;width:min(100%,24rem);justify-self:center}
canvas.snap{width:100%;height:100%;display:block;border-radius:50%}
.no-js canvas.snap,.no-js .snapbox{display:none}
.chapter .go{border:1.5px solid var(--line);background:transparent;border-radius:2rem;padding:.4rem 1rem;cursor:pointer;font-weight:600;min-height:2.75rem}
.chapter .go:hover{background:var(--surface-2)}
.note{font-size:.96rem;color:var(--text-2);border-left:3px solid var(--line);padding:.1rem 0 .1rem .9rem;margin:1rem 0}
.fact-row{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;margin:.6rem 0 1rem;font-size:.98rem;color:var(--text-2)}
.fact-row b{color:var(--text);font-variant-numeric:lining-nums}

/* ------------------------------------------------------------------ models section */
.models-grid{display:grid;gap:1.6rem;margin-top:1.4rem}
figure{margin:0}
.figbox{background:var(--surface);border:1.5px solid var(--line);border-radius:1.1rem;padding:.9rem .9rem .6rem}
figcaption{font-size:.95rem;color:var(--text-2);margin-top:.6rem;line-height:1.45}
#chart{width:100%;height:auto;display:block;touch-action:pan-y;cursor:crosshair}
.ch-grid line{stroke:var(--line-soft);stroke-width:1}
.ch-grid .ch-zero{stroke:var(--line);stroke-width:1.4}
.ch-grid .ch-vgrid{stroke:var(--line-soft);stroke-dasharray:2 5}
.ch-tick{fill:var(--muted);font-size:13px;font-family:var(--sans)}
.ch-line{fill:none;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.ch-line.c-m{stroke:var(--c-m)}.ch-line.c-s{stroke:var(--c-s);stroke-dasharray:9 5}.ch-line.c-d{stroke:var(--c-d);stroke-dasharray:2 5}
.ch-label{font-size:14px;font-weight:700;font-family:var(--sans)}
.ch-label.c-m{fill:var(--c-m)}.ch-label.c-s{fill:var(--c-s)}.ch-label.c-d{fill:var(--c-d)}
.ch-band{fill:var(--c-m);opacity:.16}
.ch-now{stroke:var(--text-2);stroke-width:1.3;stroke-dasharray:6 4}
.ch-note{fill:var(--text-2);font-size:13px;font-family:var(--sans)}
.ch-marker line{stroke:var(--accent);stroke-width:1.6}
.ch-marker circle.c-m{fill:var(--c-m)}.ch-marker circle.c-s{fill:var(--c-s)}.ch-marker circle.c-d{fill:var(--c-d)}
.ch-marker circle{stroke:var(--bg);stroke-width:2}
.table-wrap{overflow-x:auto;border:1.5px solid var(--line);border-radius:1rem;background:var(--surface)}
table{border-collapse:collapse;width:100%;font-size:1rem;font-variant-numeric:lining-nums}
caption{text-align:left;font-weight:700;padding:.8rem 1rem .3rem}
th,td{padding:.6rem .9rem;text-align:left;border-top:1px solid var(--line-soft);vertical-align:top}
thead th{border-top:0;font-size:.86rem;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}
tbody th{font-weight:700}
.swatch{display:inline-block;width:.9rem;height:.9rem;border-radius:50%;margin-right:.5rem;vertical-align:-.1rem}
.sw-m{background:var(--c-m)}.sw-s{background:var(--c-s)}.sw-d{background:var(--c-d)}
.spread{font-size:1.06rem;padding:.9rem 1.1rem;border-radius:.8rem;background:var(--accent-soft);color:var(--text);margin:1rem 0 0}

/* ------------------------------------------------------------------ blocks and tables */
.blocks-grid{display:grid;gap:1.6rem;margin-top:1.4rem}
.rmap{width:100%;height:auto;display:block}
.rmap path.b{stroke:var(--bg);stroke-width:1.2;stroke-linejoin:round}
.b-319{fill:var(--blk-moesia)}.b-302{fill:var(--blk-baltica)}.b-337{fill:var(--blk-tisza)}.b-340{fill:var(--blk-dacia)}.b-3022{fill:var(--blk-eac)}.b-551,.b-349{fill:var(--blk-other)}
.legend{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;list-style:none;padding:0;margin:.6rem 0 0;font-size:.95rem}
.legend li{display:flex;align-items:center;gap:.4rem}
.legend i{width:.95rem;height:.95rem;border-radius:.25rem;display:inline-block;flex:none}
.legend .b-319{background:var(--blk-moesia)}.legend .b-302{background:var(--blk-baltica)}.legend .b-337{background:var(--blk-tisza)}.legend .b-340{background:var(--blk-dacia)}.legend .b-3022{background:var(--blk-eac)}
.small-multiples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}
.small-multiples figure{background:var(--surface);border:1.5px solid var(--line);border-radius:.8rem;padding:.4rem .4rem .2rem}
.small-multiples figcaption{font-size:.9rem;margin-top:.2rem;text-align:center;font-weight:600}
.rsm{width:100%;height:auto;display:block}
.rsm path{stroke:var(--bg);stroke-width:.8;fill-opacity:.94}
.rsm .frame{fill:none;stroke:var(--line-soft);stroke-width:1}
.rsm .lat{stroke:var(--line);stroke-width:.7;stroke-dasharray:2 3}
.town-dot{fill:var(--accent);stroke:var(--bg);stroke-width:2}

/* verdict table */
.verdict{display:grid;gap:1rem;margin-top:1.4rem}
.vcard{border:1.5px solid var(--line);border-radius:1rem;background:var(--surface);padding:1rem 1.2rem}
.vcard h3{margin-bottom:.4rem}
.vtag{display:inline-block;font-size:.8rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:.15rem .6rem;border-radius:2rem;margin-bottom:.5rem}
.v-yes{background:var(--ok-soft);color:var(--ok)}.v-part{background:var(--gold-soft);color:var(--gold)}.v-no{background:var(--no-soft);color:var(--no)}
.photos{display:grid;gap:1rem;margin-top:1.6rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}
.photos figure img{width:100%;border-radius:.8rem;aspect-ratio:4/3;object-fit:cover}
.credit{font-size:.86rem;color:var(--muted);margin-top:.3rem}
.credit a{color:inherit}

/* sources */
.sources ul{padding-left:1.2rem}
.sources li{margin:.4rem 0}
.site-footer{padding:2rem 0 3rem;border-top:1px solid var(--line-soft);color:var(--text-2);font-size:.95rem}
.site-footer p{margin:0}

/* ------------------------------------------------------------------ wide screens */
@media (min-width:52rem){
  .answer{grid-template-columns:repeat(4,minmax(0,1fr))}
  .chapter{grid-template-columns:minmax(0,1fr) minmax(0,26rem);gap:3rem}
  .chapter:nth-child(even){grid-template-columns:minmax(0,26rem) minmax(0,1fr)}
  .chapter:nth-child(even) .snapbox{order:-1}
  .models-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start}
  .blocks-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start}
  .verdict{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:64rem){
  .hero{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:3rem;align-items:center;padding-top:2rem}
  .globe-frame{max-height:min(74vh,42rem)}
}
@media (max-width:40rem){
  .topnav{display:none}
  .timebar{grid-template-columns:auto minmax(0,1fr)}
  #time-out{grid-column:1/-1;text-align:left;min-width:0;order:-1}
  .eras{grid-column:1/-1}
  .instrument-tools{justify-content:flex-start}
  .small-multiples{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-height:30rem){.globe-frame{max-height:80vh}}
@media (pointer:coarse){
  .chips button,.jumps button,.tool-btn,#model-tabs [role="radio"]{min-height:2.75rem}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation-duration:.001ms !important;transition-duration:.001ms !important}
}
.nf-main{padding:4rem 0}
