/* Pro-Life Field Guide — field-guide stylesheet.
   Paper, ink and burgundy. § moral reasoning (burgundy), △ evidence (teal), ¶ law (gold).
   Sections: tokens · base · header · cover · chapters · arguments · ladder · medicine · evidence · statistics · law · history · practice · sources · footer · motion · responsive · print */

/* ---------- Tokens ---------- */
:root{
 --paper:#f5f2e9;--paper-2:#eeeade;--paper-3:#e7e1d2;
 --ink:#292a24;--muted:#5d6166;--line:#d6d1c4;--line-strong:#bcb6a7;--field:#7d8384;
 --red:#8e3647;--teal:#215d66;--gold:#715b28;--forest:#343c34;
 --serif:'Newsreader',Georgia,'Times New Roman',serif;--sans:'DM Sans',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
 --gutter:5%;--fast:.15s;--swap:.18s
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:16px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:4px}
button,input,select,textarea{font:inherit;color:inherit}
button,a,input,select,summary,label{touch-action:manipulation}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--red);outline-offset:4px}
h2,h3{font-family:var(--serif);font-weight:400}
h3{font-size:36px;line-height:1.15;letter-spacing:-.015em;margin:16px 0 18px}
h4{font-size:16px;font-weight:600;line-height:1.4}
.eyebrow{font:600 12px/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase;margin:0}
h4.eyebrow{margin:0 0 8px}
.ink{font-size:13px;font-weight:600;letter-spacing:.03em}
.ethics{color:var(--red)}.evidence{color:var(--teal)}.legal{color:var(--gold)}
.lead{font:22px/1.5 var(--serif);max-width:760px}
.small{font-size:14px;line-height:1.65;color:var(--muted);margin-top:22px}
label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}
input,select,textarea{background:transparent;border:1px solid var(--field);padding:11px 12px;width:100%;border-radius:0;font-size:16px}
select{background-color:var(--paper)}
.text-button{background:none;border:0;border-bottom:1px solid currentColor;padding:4px 0;font-size:15px;color:var(--ink);text-decoration:none;display:inline-block}
.text-button:hover{color:var(--red)}
.sources-inline{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:14px;margin-top:20px;color:var(--muted)}
.sources-inline a{overflow-wrap:anywhere}
.source-missing{font-style:italic}
.notice{border-left:3px solid var(--gold);background:var(--paper-2);padding:12px 18px;font-size:15px;max-width:900px}
.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;top:-60px;left:10px;padding:12px;background:#fff;z-index:100}
.skip:focus{top:10px}
.editorial-details{margin-top:28px;border-top:1px solid #bdc5c1;border-bottom:1px solid #bdc5c1;padding:16px 0}
.editorial-details summary{cursor:pointer;font-size:16px;font-weight:500}
.editorial-details>p{max-width:900px;font-size:16px}
.empty{font-size:15px;padding:14px 0}

/* ---------- Header ---------- */
.site-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:16px 28px;margin:0 var(--gutter);padding:24px 0 18px;border-bottom:1px solid var(--ink)}
.brand{display:inline-flex;align-items:baseline;gap:8px;font:500 27px/1.2 var(--serif);letter-spacing:-.02em;text-decoration:none;white-space:nowrap}
.brand-subtitle{font:500 12px/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase}
.site-nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px 20px;font-size:14px;min-width:0}
.source-link{padding-left:20px!important;border-left:1px solid var(--line-strong)}
.site-nav a,.source-link{text-decoration:none;padding:6px 0;font-size:14px}
.site-nav a:hover,.source-link:hover{color:var(--red)}

/* ---------- Cover ---------- */
.hero{margin:0 var(--gutter);padding-top:28px}
.cover-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 20px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.hero h1{font:400 clamp(40px,9.5vw,124px)/.96 var(--serif);letter-spacing:-.035em;margin:36px 0 28px;max-width:1100px}
.hero h1 em{color:var(--red)}
.cover-bottom{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;align-items:start;margin-bottom:40px}
.cover-lede{grid-column:1/3;padding-right:24px}
.cover-note{grid-column:3/5}
.intro{font:24px/1.45 var(--serif);max-width:580px;margin:0}
.quick-questions{margin-top:28px}
.quick-questions .eyebrow{color:var(--red)}
.quick-questions ul{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.quick-questions a{display:block;height:100%;border:1px solid var(--line-strong);padding:10px 14px;font-size:15px;line-height:1.4;text-decoration:none;transition:background var(--fast),border-color var(--fast)}
.quick-questions a:hover{border-color:var(--ink);background:var(--paper-3)}
.button{display:inline-flex;gap:28px;align-items:center;margin-top:22px;padding:12px 20px;border:1px solid var(--red);background:var(--red);color:#fff;text-decoration:none;font-size:14px;transition:background var(--fast),border-color var(--fast)}
.button:hover{background:var(--ink);border-color:var(--ink)}
.cover-note{border-left:1px solid var(--line);padding-left:24px}
.cover-note p{font:21px/1.65 var(--serif);margin:14px 0}
.cover-note a{font-size:14px;color:var(--muted)}
.ledger{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink);border-bottom:1px solid var(--line)}
.ledger a{display:flex;flex-direction:column;padding:22px 24px 24px 0;text-decoration:none;transition:background var(--fast)}
.ledger a+a{border-left:1px solid var(--line);padding-left:24px}
.ledger a:hover{background:var(--paper-3)}
.ledger-top{display:flex;justify-content:space-between;gap:8px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ledger-top b{font-size:18px;color:var(--red);line-height:1}
.ledger-title{display:block;font:400 30px/1.1 var(--serif);letter-spacing:-.02em;margin:26px 0 10px}
.ledger-text{font-size:14px;line-height:1.55;color:var(--muted);max-width:240px}

/* ---------- Chapters ---------- */
.chapter{padding:88px var(--gutter);border-bottom:1px solid var(--line);scroll-margin-top:0}
.section-heading{margin-bottom:40px;max-width:1000px}
.section-heading .eyebrow{color:var(--red)}
.section-heading h2{font-size:clamp(40px,4.8vw,68px);line-height:1.05;letter-spacing:-.03em;margin:16px 0 0}
.section-heading>p{font:20px/1.5 var(--serif);color:var(--muted);max-width:740px;margin:18px 0 0}
.js-fallback h2,.chapter-error h2{font-size:40px;line-height:1.1;margin:14px 0}
.js-fallback p,.chapter-error p{max-width:760px}

/* ---------- Arguments ---------- */
.core-case{border-top:2px solid var(--ink);padding:24px 0 28px;margin-bottom:32px;max-width:960px}
.core-case>p:first-of-type{font:25px/1.45 var(--serif)}
.core-link a{font-size:15px;color:var(--teal)}
.core-case summary{cursor:pointer;color:var(--red);font-size:16px}
.core-case details p{font-size:16px;line-height:1.7}
.core-case details a{color:var(--teal)}
.explorer{display:grid;grid-template-columns:300px minmax(0,1fr);border-top:1px solid var(--line)}
.argument-index{padding:34px 28px 28px 0;border-right:1px solid var(--line);align-self:start;position:sticky;top:0;max-height:100vh;display:flex;flex-direction:column}
.picker{display:none}
.filters{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0 10px}
.filters button{border:1px solid var(--line-strong);background:transparent;padding:6px 12px;font-size:14px;min-height:40px;transition:background var(--fast)}
.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.argument-count{font-size:14px;color:var(--muted);margin:0 0 8px}
.argument-list{overflow:auto;min-height:0;flex:1;scrollbar-width:thin}
.argument-list button{display:grid;grid-template-columns:28px 1fr;gap:6px;width:100%;padding:14px 8px;text-align:left;border:0;border-top:1px solid var(--line);background:none;color:var(--muted);font-size:15px;line-height:1.45;transition:background var(--fast),color var(--fast)}
.argument-list button:hover{color:var(--ink);background:var(--paper-2)}
.argument-list button[aria-current=true]{color:var(--red);font-weight:600;background:#eae4d7;box-shadow:inset 3px 0 var(--red)}
.argument-list button span{font-size:12px;padding-top:3px;font-variant-numeric:tabular-nums}
.argument-detail{padding:34px 0 40px 56px;max-width:none;min-width:0}
.argument-detail>*{max-width:46rem}
.share-row .text-button{border:0;padding:0;text-decoration:underline;text-underline-offset:4px;font-size:15px}
.detail-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px}
.detail-count{font-size:13px;color:var(--muted);letter-spacing:.03em}
.kinds{display:flex;flex-wrap:wrap;gap:4px 14px}
.argument-detail h3{font-size:42px;line-height:1.12;margin:12px 0 22px;max-width:720px}
.argument-detail h3[tabindex="-1"]:focus{outline:none}
.conversation-answer{border-left:3px solid var(--red);padding:6px 0 6px 22px;margin:0 0 30px}
.conversation-answer .eyebrow{color:var(--red)}
.conversation-answer p{font:27px/1.4 var(--serif);margin:10px 0 0;max-width:760px}
.share-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:14px;font-size:14px}
.share-link{color:var(--ink);font-size:15px}
.copy-status{color:var(--muted);font-size:14px}
.copy-field{flex-basis:100%;font-size:14px;padding:8px 10px}
.argument-why .lead{margin:8px 0 0}
.argument-block{border-top:1px solid var(--line);padding-top:20px;margin-top:26px}
.argument-block p{font-size:17px;max-width:750px;margin:8px 0 0}
.argument-block.objection{background:#ebece5;border-top:0;border-left:3px solid #7d8b7f;padding:18px 24px}
.argument-block.hinge{border-top:0;border-left:2px solid var(--red);padding:6px 22px;margin-top:30px}
.argument-block.hinge .eyebrow{color:var(--red)}
.argument-block.hinge p{font:23px/1.4 var(--serif)}
.positions{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.positions button{padding:8px 15px;font-size:14px;min-height:44px;border:1px solid var(--line-strong);background:transparent;transition:background var(--fast)}
.positions button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.reflection{font-size:14px;color:var(--muted);min-height:24px}
.argument-pager{display:grid;grid-template-columns:1fr auto 1fr;gap:16px 24px;align-items:start;border-top:2px solid var(--ink);margin-top:32px;padding-top:18px}
.argument-pager a{text-decoration:none;font:19px/1.3 var(--serif);transition:color var(--fast)}
.argument-pager a:hover{color:var(--red)}
.argument-pager a span{display:block;font:600 12px/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.pager-next{text-align:right}
.pager-all{background:transparent;border:1px solid var(--line-strong);padding:10px 14px;font-size:14px;min-height:44px;white-space:nowrap}
.pager-all:hover{border-color:var(--ink)}
.no-js .argument-index{display:none}
.no-js .explorer{grid-template-columns:minmax(0,1fr)}
.no-js .argument-detail{padding-left:0}

/* ---------- Premise ladder ---------- */
.ladder-section{background:var(--forest);color:#f7f7f2;display:grid;grid-template-columns:.9fr 1.3fr;gap:8%;padding:72px var(--gutter)}
.ladder-intro .eyebrow{color:#e6c173}
.ladder-intro h2{font-size:50px;line-height:1.1;letter-spacing:-.02em;margin:18px 0}
.ladder-intro p{font-size:16px;color:#ced2d5;max-width:380px}
.ladder fieldset{border:0;padding:0;margin:0}
.ladder legend{font-size:14px;margin-bottom:16px;color:#e6c173}
.ladder label{display:flex;align-items:start;gap:16px;border-top:1px solid #596068;padding:18px 0;font-weight:400;font-size:17px;cursor:pointer;margin:0}
.ladder input{width:20px;height:20px;margin-top:5px;flex-shrink:0;accent-color:#e6c173}
.ladder b{font:600 14px var(--sans);color:#e6c173;margin-right:10px}
#ladder-result{margin-top:16px;border-left:2px solid #e6c173;padding:14px 18px;font-size:15px;color:#e9e9e3;background:#414b41}
.ladder-link{font-size:15px;color:#ced2d5;margin:16px 0 0}
.ladder-link a{color:#f1dca6}

/* ---------- Medicine ---------- */
.care-answer{display:grid;grid-template-columns:1fr 1.6fr;gap:9%;border-top:2px solid var(--ink);padding:30px 0 44px;margin:0 0 30px}
.care-answer h3{font-size:38px;max-width:300px}
.care-answer>div>p{font-size:15px;color:var(--muted);max-width:300px}
.care-findings>div{padding:0 0 18px;margin:0 0 18px;border-bottom:1px solid var(--line)}
.care-findings strong{font-size:17px;font-weight:600}
.care-findings p{font-size:16px;margin:8px 0 0}
.medical-tabs{display:flex;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.medical-tabs button{flex:1;background:transparent;border:0;padding:18px 16px;font-size:15px;color:var(--muted);transition:background var(--fast),color var(--fast)}
.medical-tabs button:hover{color:var(--ink)}
.medical-tabs button[aria-pressed=true]{box-shadow:inset 0 -3px var(--teal);color:var(--teal);background:#e8e9df}
.medical-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;padding:40px 0}
.medical-statement .lead{font-size:25px}
.medical-margin{background:#eceade;padding:25px 30px;align-self:start}
.medical-margin>div+div{margin-top:26px}
.medical-margin p{font-size:16px}
.say-it{border-top:1px solid var(--line);padding:24px 0 0}
.say-it p{font:26px/1.4 var(--serif);margin:10px 0 0;max-width:900px}
.care-note{font-size:14px;color:var(--muted);margin:20px 0;max-width:970px}
.evidence-study{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;border-top:1px solid var(--line);margin-top:56px;padding-top:40px}
.evidence-study h3{font-size:36px}
.evidence-study p{font-size:16px}

/* ---------- Evidence files ---------- */
.evidence-chapter{background:var(--paper-2)}
.evidence-index{display:flex;flex-wrap:wrap;border-top:2px solid var(--ink);border-bottom:1px solid var(--line)}
.evidence-index button{border:0;background:transparent;padding:18px 24px;font-size:15px;transition:background var(--fast),color var(--fast)}
.evidence-index button:hover{background:var(--paper-3)}
.evidence-index button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.evidence-panel[hidden]{display:none!important}
.file-intro{max-width:900px;padding:24px 0 12px;font-size:17px}
.file-intro p{margin:0 0 14px}
.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 44px;margin-top:12px}
.case-file{border-top:1px solid var(--line-strong);padding:28px 0;min-width:0}
.case-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font-size:13px;letter-spacing:.03em;color:var(--muted)}
.record-label{color:var(--teal);border:1px solid #abb5a9;padding:2px 8px;letter-spacing:0}
.case-file h3{font-size:34px;margin:18px 0 6px}
.case-place{font-size:15px;color:var(--muted);margin:0 0 18px}
.case-file p{font-size:16px}
.case-file details{margin-top:18px}
.case-file summary{font-size:15px;cursor:pointer;color:var(--red)}
.case-file summary:hover{text-decoration:underline}
.case-finding{border-left:2px solid #b9b49f;padding-left:20px;margin-top:22px}
.case-finding h4,.study-limit h4{font-size:15px;margin:18px 0 6px}
.case-finding p{margin:0 0 20px}
/* Timeline: shapes and labels, not colour alone, distinguish record types. */
.timeline-block{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:48px;border-top:2px solid var(--ink);margin-top:36px;padding-top:26px}
.timeline-head h3{font-size:34px;margin-top:12px}
.timeline-head>p{font-size:16px}
.timeline-legend{list-style:none;margin:18px 0 0;padding:0;font-size:14px;line-height:1.5}
.timeline-legend li{position:relative;padding-left:30px;margin:10px 0}
.timeline-legend .tl-mark{top:2px}
.timeline{list-style:none;margin:0;padding:0;position:relative}
.timeline::before{content:'';position:absolute;left:8px;top:8px;bottom:28px;width:2px;background:var(--line-strong)}
.timeline>li{position:relative;padding:0 0 24px 36px}
.tl-mark{position:absolute;left:1px;top:6px;width:16px;height:16px;background:var(--paper-2)}
.tl-allegation .tl-mark{border:2px solid var(--ink);border-radius:50%}
.tl-filing .tl-mark{border:2px solid var(--ink);border-radius:50%;background:radial-gradient(circle,var(--ink) 0 3px,var(--paper-2) 3.5px)}
.tl-finding .tl-mark{background:var(--teal)}
.tl-law .tl-mark{background:var(--gold);transform:rotate(45deg) scale(.82)}
.tl-when{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;margin:0}
.tl-date{font:20px/1.3 var(--serif)}
.tl-kind{font:600 12px/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.tl-finding .tl-kind{color:var(--teal)}.tl-law .tl-kind{color:var(--gold)}
.timeline>li>p:not(.tl-when){font-size:16px;margin:6px 0 0}
.timeline .sources-inline{margin-top:8px}
.timeline-block>.small{grid-column:2;margin-top:0}
/* Outcome table becomes stacked cards on phones. */
.outcome-table{margin:24px 0}
.outcome-table table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.65;text-align:left}
.outcome-table th,.outcome-table td{vertical-align:top;padding:22px 20px 22px 0;border-bottom:1px solid var(--line-strong)}
.outcome-table thead th{font-size:14px;border-top:2px solid var(--ink)}
.outcome-table tbody th{width:20%;font-weight:600}
.outcome-table td{width:40%}
/* Uncertainty panels: one scale per panel; zero is drawn as the reference. */
.estimates{border-top:2px solid var(--ink);margin:44px 0 12px;padding-top:26px}
.estimates h3{font-size:34px;margin-top:0}
.estimates>p{font-size:16px;max-width:900px}
.estimate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 48px;margin-top:18px}
.estimate{margin:0;border-top:1px solid var(--line-strong);padding:20px 0 6px;min-width:0}
.estimate figcaption .eyebrow{color:var(--teal)}
.estimate h4{font:400 23px/1.25 var(--serif);margin:6px 0 4px}
.estimate-unit{font-size:14px;color:var(--muted);margin:0}
.plot{margin:24px 8px 4px}
.plot-track{position:relative;height:30px}
.plot-track::before{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:var(--line-strong)}
.plot-zero{position:absolute;top:-6px;bottom:-6px;width:2px;margin-left:-1px;background:var(--ink)}
.plot-range{position:absolute;top:50%;height:3px;margin-top:-1.5px;background:var(--teal)}
.plot-range::before,.plot-range::after{content:'';position:absolute;top:-6px;width:2px;height:15px;background:var(--teal)}
.plot-range::before{left:-1px}.plot-range::after{right:-1px}
.plot-point{position:absolute;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:var(--teal);border:3px solid var(--paper-2);box-shadow:0 0 0 1px var(--teal)}
.plot-axis{position:relative;height:22px;margin-top:10px;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.plot-axis span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.plot-axis span:first-child{transform:none}
.plot-axis span:last-child{transform:translateX(-100%)}
.plot-axis .is-zero{color:var(--ink);font-weight:600}
.estimate-text{font-size:16px;margin:12px 0 0}
.estimate .small{margin-top:10px}
.estimate .sources-inline{margin-top:10px}
.study-list>article{display:grid;grid-template-columns:1fr 1.3fr;gap:60px;padding:34px 0;border-top:1px solid var(--line-strong)}
.study-list h3{font-size:32px}
.study-list .eyebrow{color:var(--teal)}
.study-list p{font-size:16px}
.study-limit{border-left:2px solid var(--red);padding-left:20px;margin-top:22px}
.mental-intro{max-width:870px;margin:36px 0}
.mental-intro h3{font-size:42px}
.mental-intro>p{font:23px/1.5 var(--serif)}
.mental-columns{display:grid;grid-template-columns:1fr 1fr;gap:56px;border-top:1px solid var(--line-strong);padding-top:12px}
.mental-columns h4{font-size:18px;margin:18px 0 8px}
.mental-columns p,.statute-example p{font-size:16px}
.burden-columns{margin-top:36px}
.statute-example{border:1px solid var(--line-strong);padding:30px;margin-top:26px}
.statute-example h3{font-size:34px}
.support-rows{display:grid;grid-template-columns:1fr 1fr;gap:24px 48px}
.support-rows article{border-top:1px solid var(--line);padding-top:14px}
.support-rows h4{font-size:19px}
.support-rows p{font-size:16px}
.evidence-conclusion{border-top:2px solid var(--ink);margin-top:28px;padding-top:24px;max-width:970px}
.evidence-conclusion h3{font-size:32px;margin-top:0}
.evidence-conclusion p{font-size:16px}
.evidence-conclusion .lead{font-size:26px;line-height:1.4}
.secondary-material summary{color:var(--muted)}
.reddit-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 48px;margin-top:12px}
.reddit-grid article{border-top:1px solid var(--line);padding:18px 0}
.reddit-grid h4{font:400 22px/1.25 var(--serif);margin:6px 0 8px}
.reddit-grid p{font-size:16px}
.reddit-grid a{font-size:14px;color:var(--red)}

/* ---------- Statistics ---------- */
.statistics-chapter{border-top:2px solid var(--ink)}
.stats-tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--ink)}
.stats-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:18px 24px;font-size:15px;transition:color var(--fast)}
.stats-tabs button[aria-pressed=true]{border-bottom-color:var(--red);color:var(--red)}
.stats-controls{margin:28px 0 12px;display:flex;gap:20px;align-items:center}
.stats-controls label{margin:0;white-space:nowrap}
.stats-controls select{max-width:100%;width:auto;border-color:var(--line-strong)}
.stats-link a{font-size:15px;color:var(--teal)}
.stats-context{max-width:900px;margin:36px 0}
.stats-context h3{font-size:46px;line-height:1.1;margin:18px 0}
.stats-context p{font-size:18px}
.stats-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:64px}
.stats-layout h4{font-size:15px;margin:0 0 18px}
.stat-bar-row{margin:18px 0}
.stat-bar-row>div:first-child{display:flex;justify-content:space-between;gap:20px;font-size:15px;line-height:1.5;margin-bottom:8px}
.stat-bar-row strong{white-space:nowrap;font-variant-numeric:tabular-nums}
.stat-track{height:9px;background:#dedbcf}
.stat-track span{display:block;height:100%;background:var(--teal)}
.stats-method{border-left:2px solid var(--red);padding-left:28px}
.stats-method h4{margin:22px 0 8px}
.stats-method p{font-size:16px}
.stats-method a{color:var(--red)}
.stats-table{margin:24px 0}
.stats-table summary,.claim-check summary{cursor:pointer;color:var(--red);font-size:17px}
.table-scroll{overflow-x:auto}
.stats-table table{border-collapse:collapse;width:100%;font-size:15px;margin:14px 0}
.stats-table th,.stats-table td{text-align:left;border-bottom:1px solid var(--line);padding:12px 10px 12px 0}
.stats-table caption{text-align:left;padding:12px 0}
.claim-check{border-top:1px solid var(--line);padding:24px 0;margin-top:24px}
.claim-check p,.claim-check li{max-width:900px;font-size:16px}
.claim-check h3{font-size:32px;line-height:1.2}
.stats-bibliography{border-top:2px solid var(--ink);margin-top:48px;padding-top:24px}
.stats-bibliography h3{font-size:30px;margin:0 0 6px}
.stats-bibliography>p{font-size:15px;color:var(--muted);margin:0}
.stats-bibliography ul{padding-left:20px;margin:14px 0 0}
.stats-bibliography li{font-size:15px;margin:8px 0}
.stats-bibliography a{color:var(--teal);overflow-wrap:anywhere}

/* ---------- Law ---------- */
.law-note{display:grid;grid-template-columns:250px 1fr;gap:20px;border-top:1px solid #c7cdca;padding-top:24px}
.law-note p{font-size:15px;margin:0;max-width:800px}
.law-note .sources-inline{grid-column:2;margin-top:0}
.law-audit>p{max-width:1000px;font-size:16px}
.law-screen article{display:grid;grid-template-columns:150px 1fr;gap:24px;border-top:1px solid var(--line);padding:18px 0}
.law-screen h4{margin:0}
.law-screen p{font-size:15px;margin:0}
.law-screen a{overflow-wrap:anywhere;color:var(--teal)}
.law-subhead{font-size:32px;margin:48px 0 8px}
.state-legend{display:flex;flex-wrap:wrap;gap:10px 28px;font-size:14px;margin:16px 0 8px}
.state-legend span{display:flex;align-items:center;gap:8px}
.state-legend i{display:inline-block;width:12px;height:12px}
.ban{background:#843e4e;color:#fff}.early{background:#b4a579;color:#252a31}.later{background:#6d9398;color:#182126}.none{background:#dbe2dd;color:#252a31}
.state-grid{display:grid;grid-template-columns:repeat(17,1fr);gap:8px;margin:16px 0 36px}
.state{border:0;min-height:44px;font-size:14px;transition:transform var(--fast)}
.state:hover{transform:translateY(-2px)}
.state[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:3px}
.comparison-controls{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.state-comparison{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-top:30px}
.state-comparison article{background:#eeeadd;padding:28px;border-top:1px solid #bdc5c1}
.state-comparison p{font-size:16px}
.state-comparison article>div{margin-top:22px}
.law-question{padding:18px 20px;background:#e1e5df;font-size:15px}
.law-question p{margin-bottom:0}
.same-state{grid-column:1/-1;border-left:3px solid var(--gold);padding:12px 20px;background:#e2e4dc;font-size:15px;margin:0}
.check-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;font-size:15px}

/* ---------- History ---------- */
.history-row{display:grid;grid-template-columns:1fr 1.5fr;gap:10%;border-top:1px solid var(--line);padding:35px 0}
.history-row p{font-size:16px;margin:0 0 26px}
.history-row h4.eyebrow{color:var(--muted)}
.year{font:italic 23px var(--serif);color:var(--red)}
.history-title h3{font-size:40px}
.voices{border-top:1px solid var(--line);padding-top:36px;margin-top:24px}
.voices>.eyebrow{font-family:var(--sans)}
.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px}
.voice-grid h4{font:400 28px/1.2 var(--serif);margin:18px 0 10px}
.voice-grid p{font-size:16px}

/* ---------- Practice ---------- */
.scenario-picker{max-width:650px}
.practice-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:64px;margin-top:36px}
.interlocutor h3{font-size:34px;line-height:1.25;margin:14px 0 16px}
.interlocutor p{font-size:16px;color:var(--muted)}
.replies>.eyebrow{display:block;margin-bottom:12px}
.replies button{display:flex;gap:16px;width:100%;text-align:left;background:transparent;border:0;border-top:1px solid #b8c6c3;padding:18px 12px;font-size:16px;line-height:1.6;transition:background var(--fast)}
.replies button:hover{background:#ebeadf}
.replies button[aria-pressed=true]{background:#e3e6da;box-shadow:inset 3px 0 var(--teal)}
.choice-letter{flex:none;width:22px;font:24px/1.2 var(--serif);color:var(--teal)}
.replies .small{margin-top:12px}
.practice-debrief{border-top:2px solid var(--ink);margin-top:28px;padding:26px 30px;background:#e9ebdf}
.verdict{display:inline-block;margin:0;padding:4px 10px;font:600 13px/1.5 var(--sans);letter-spacing:.06em;text-transform:uppercase}
.verdict.best{background:var(--teal);color:#fff}
.verdict.partial{border:1px solid var(--gold);color:var(--gold)}
.feedback{font-size:17px;max-width:860px;margin:12px 0 0}
.debrief-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid var(--line-strong);margin:22px 0 18px;padding-top:20px}
.next-question{font:23px/1.4 var(--serif);margin:0}
.pushback{font:italic 21px/1.4 var(--serif);margin:0 0 16px}
.second-turn p:last-child{font-size:16px;margin:0}
.pitfalls{font-size:16px;padding-left:20px;columns:2;column-gap:50px}
.pitfalls li{break-inside:avoid;margin-bottom:14px;padding-left:8px}

/* ---------- Sources ---------- */
.method{display:grid;grid-template-columns:1fr 1fr;gap:10px 56px;border-top:1px solid var(--line);padding-top:20px}
.method p{font-size:15px}
.method .sources-inline{grid-column:2;margin-top:0}
.source-group{margin-top:44px}
.source-group h3{font-size:28px;margin:0 0 8px}
.source-group h3 span{font:14px var(--sans);color:var(--muted);margin-left:6px}
.source-catalog{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}
.source-catalog article{border-top:1px solid var(--line);padding:18px 0}
.source-type{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);margin-bottom:4px}
.source-catalog a{font-size:15px}
.source-catalog p{font-size:14px;color:var(--muted);margin:6px 0 0}

/* ---------- Footer ---------- */
footer{margin:0 var(--gutter);padding:36px 0;display:flex;justify-content:space-between;align-items:center;gap:24px}
footer p,footer>a:last-child{font-size:14px;color:var(--muted);margin:0}

/* ---------- Motion: brief, and only to show what changed ---------- */
@keyframes fp-fade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.is-fresh{animation:fp-fade var(--swap) ease-out}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* ---------- Responsive ---------- */
@media(min-width:1500px){:root{--gutter:max(5%,calc((100vw - 1400px)/2))}}
@media(max-width:1050px){
 .site-header{grid-template-columns:minmax(0,1fr) auto;padding:18px 0 14px;gap:10px 24px}
 .site-nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;width:100%;gap:4px 22px}
 .cover-bottom{gap:0}.cover-note p{font-size:19px}.intro{font-size:23px}
 .ledger-title{font-size:27px}.ledger a{padding-right:18px}.ledger a+a{padding-left:18px}
 .explorer{grid-template-columns:250px minmax(0,1fr)}.argument-detail{padding-left:30px}
 .state-grid{grid-template-columns:repeat(13,1fr)}.check-grid{grid-template-columns:1fr 1fr}
 .medical-layout{gap:35px}.voice-grid{gap:25px}.practice-layout{gap:40px}
 .timeline-block{grid-template-columns:1fr;gap:20px}.timeline-block>.small{grid-column:1}
}
@media(max-width:700px){
 :root{--gutter:6%}
 body{font-size:17px}
 .site-header{padding:16px 0 12px}
 .brand{font-size:25px}
 .site-nav{flex-wrap:nowrap;overflow-x:auto;gap:0 20px;padding-bottom:5px;padding-right:32px;scrollbar-width:thin;mask-image:linear-gradient(to right,#000 85%,transparent)}
 .site-nav a{white-space:nowrap}
 .cover-lede{padding-right:0}
 .brand{gap:6px}.brand-subtitle{font-size:10px;letter-spacing:.04em}
 .source-link{padding-left:10px!important}
 .hero{padding-top:20px}
 .cover-meta span:last-child{text-align:left}
 .hero h1{margin:32px 0 22px;letter-spacing:-.03em}
 .cover-bottom{display:block;margin-bottom:36px}
 .intro{font-size:22px;line-height:1.4}
 .quick-questions{margin-top:24px}
 .quick-questions ul{display:grid;grid-template-columns:1fr 1fr}
 .quick-questions a{height:100%;padding:12px}
 .cover-note{margin-top:32px;padding-left:18px}.cover-note p{font-size:20px}
 .ledger{grid-template-columns:1fr 1fr}
 .ledger a,.ledger a+a{padding:18px 14px 20px 0;border-left:0}
 .ledger a:nth-child(even){padding-left:16px;border-left:1px solid var(--line)}
 .ledger a:nth-child(n+3){border-top:1px solid var(--line)}
 .ledger-top{letter-spacing:.06em}
 .ledger-title{font-size:24px;margin:16px 0 8px}
 .chapter{padding-top:56px;padding-bottom:56px}
 .section-heading{margin-bottom:28px}
 .section-heading h2{font-size:40px;letter-spacing:-.02em}
 .section-heading>p{font-size:19px}
 h3{font-size:30px}
 .lead{font-size:20px}
 .core-case>p:first-of-type{font-size:21px}
 /* Phone picker: a native menu plus search. Results appear in the page flow; nothing scrolls inside a box. */
 .explorer{display:block}
 .argument-index{position:static;max-height:none;display:block;border-right:0;padding:20px 0 4px}
 .picker{display:block;margin-bottom:16px}
 .filters{display:none}
 .argument-list{display:none;overflow:visible}
 .explorer.is-filtering .argument-list{display:block;border-bottom:1px solid var(--line)}
 .explorer:not(.is-filtering) .argument-count{display:none}
 .argument-count{margin-top:10px}
 .argument-detail{padding:24px 0 0}
 .argument-detail h3{font-size:34px}
 .conversation-answer{padding-left:18px}
 .conversation-answer p{font-size:23px}
 .argument-block.objection{padding:16px 18px}
 .argument-block.hinge{padding:4px 18px}.argument-block.hinge p{font-size:21px}
 .argument-pager{grid-template-columns:1fr 1fr;grid-template-areas:"all all" "prev next"}
 .pager-all{grid-area:all;justify-self:stretch}
 .argument-pager>:first-child{grid-area:prev}.argument-pager>:last-child{grid-area:next}
 .argument-pager a{font-size:17px}
 .ladder-section{display:block;padding:48px var(--gutter)}
 .ladder-intro{margin-bottom:32px}.ladder-intro h2{font-size:40px}
 .care-answer{display:block;padding:22px 0;margin-top:0}
 .care-answer h3{font-size:34px;max-width:none}.care-answer>div>p{max-width:none}
 .care-findings{margin-top:26px}
 .medical-tabs{display:grid;grid-template-columns:1fr 1fr}
 .medical-tabs button{padding:14px 12px;text-align:left;border-bottom:1px solid var(--line)}
 .medical-layout,.evidence-study,.history-row,.practice-layout{display:block}
 .medical-layout{padding:28px 0}
 .medical-statement .lead{font-size:22px}
 .medical-margin{margin-top:28px;padding:22px}
 .say-it p{font-size:22px}
 .evidence-study h3{font-size:30px}
 .evidence-index{display:grid;grid-template-columns:1fr 1fr}
 .evidence-index button{padding:14px 12px;text-align:left}
 .case-grid,.study-list>article,.mental-columns,.reddit-grid,.support-rows,.estimate-grid{display:block}
 .case-file h3,.study-list h3{font-size:30px}
 .study-list>article{padding:26px 0}
 .mental-intro h3{font-size:34px}.mental-intro>p{font-size:21px}
 .mental-columns article{margin-bottom:24px}
 .statute-example{padding:22px}
 .support-rows article{margin-bottom:22px}
 .estimate{margin-bottom:22px}
 .evidence-conclusion h3,.estimates h3,.timeline-head h3{font-size:30px}
 /* Stacked cards: each row keeps its question, finding and limit together. */
 .outcome-table table,.outcome-table tbody,.outcome-table tr,.outcome-table th,.outcome-table td{display:block;width:auto}
 .outcome-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
 .outcome-table tr{border-top:2px solid var(--ink);padding:16px 0 6px}
 .outcome-table tbody th{font:400 23px/1.25 var(--serif);padding:0 0 6px;border:0;width:auto}
 .outcome-table td{padding:10px 0;border:0;width:auto}
 .outcome-table td::before{content:attr(data-label);display:block;font:600 12px/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--teal);margin-bottom:4px}
 .outcome-table td+td::before{color:var(--red)}
 .stats-layout{grid-template-columns:1fr;gap:24px}
 .stats-controls{display:block}.stats-controls label{margin-bottom:8px}.stats-controls select{width:100%}
 .stats-tabs button{padding:14px 12px}
 .stats-context h3{font-size:36px}.stats-context p{font-size:17px}
 .stats-method{padding-left:20px}
 .law-note{display:block}.law-note p{margin-top:14px}.law-note .sources-inline{margin-top:14px}
 .law-screen article{display:block}.law-screen h4{margin-bottom:10px}
 .state-grid{grid-template-columns:repeat(7,1fr)}
 .comparison-controls,.state-comparison{grid-template-columns:1fr;gap:18px}
 .state-comparison article{padding:22px}
 .state-comparison h3{font-size:32px}
 .check-grid{grid-template-columns:1fr;gap:0}
 .history-title{margin-bottom:24px}.history-title h3{font-size:34px}
 .voice-grid,.method,.source-catalog{display:block}
 .voice-grid article{margin-top:28px}
 .interlocutor h3{font-size:28px}
 .replies{margin-top:28px}
 .replies button{padding:16px 8px}
 .practice-debrief{padding:22px 18px}
 .debrief-grid{grid-template-columns:1fr;gap:22px}
 .next-question{font-size:21px}
 .pitfalls{columns:1}
 footer{display:block}footer p{margin:12px 0}
}
@media(max-width:380px){
 .brand{font-size:23px}
 .quick-questions ul{grid-template-columns:1fr}
 .ledger-title{font-size:22px}
 .section-heading h2{font-size:36px}
 .argument-detail h3{font-size:30px}
 .conversation-answer p{font-size:21px}
 .state-grid{grid-template-columns:repeat(6,1fr);gap:6px}
 .evidence-index{grid-template-columns:1fr}
 .medical-tabs{grid-template-columns:1fr}
}


/* Research index: compact closed records, full evidence on request. */
[hidden]{display:none!important}
.file-intro,.evidence-conclusion,.estimates>p,.editorial-details>p,.mental-intro{max-width:44rem}
.case-tools{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;margin:28px 0 12px;max-width:62rem}
.case-result-count{font-size:14px;color:var(--muted);margin:14px 0}
.case-list{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink);max-width:62rem}
.case-row{border-bottom:1px solid var(--line-strong)}
.case-row summary{display:grid;grid-template-columns:30px minmax(0,1fr);gap:6px 20px;align-items:baseline;padding:20px 0;cursor:pointer;list-style:none}
.case-row summary::-webkit-details-marker{display:none}
.case-row summary::before{content:'+';font:400 24px/1 var(--serif);color:var(--red)}
.case-row details[open]>summary::before{content:'−'}
.case-row strong{font:400 26px/1.25 var(--serif)}
.case-row details[open] strong{color:var(--red)}
.case-row .case-place{display:block;margin:3px 0 0;font-size:14px}
.case-body{padding:0 0 28px 50px;max-width:48rem}
.case-body>p{font-size:16px}
.case-body h4{margin:22px 0 6px}
.case-body .case-scope{font-size:14px;color:var(--muted)}
.case-row .record-label{grid-column:2;justify-self:start;font-size:12px;max-width:220px;white-space:normal}
.case-body .small,.case-body .sources-inline,.case-permalink{font-size:14px}
.law-developments{margin:32px 0;max-width:62rem;border-top:2px solid var(--ink)}
.developments-heading{margin:24px 0}
.developments-heading h3{margin:0}.developments-heading .small{margin-top:8px}
.development{border-top:1px solid var(--line);padding:16px 0}
.development summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;font-weight:500}
.development-status{font-size:13px;color:var(--muted);font-weight:400;text-align:right}
.development p{max-width:44rem;font-size:16px}
@media(max-width:700px){
 .case-tools{grid-template-columns:1fr 1fr;gap:12px}.case-tools>div:first-child{grid-column:1/-1}
 .case-row summary{grid-template-columns:22px minmax(0,1fr);gap:6px 10px}
 .case-row .record-label{grid-column:2;justify-self:start;max-width:none}
 .case-body{padding-left:0}.case-row strong{font-size:25px}
 .development summary{display:block}.development-status{display:block;text-align:left;margin-top:5px}
}
@media(max-width:380px){.site-header{column-gap:10px}.brand{font-size:22px}.source-link{font-size:12px}.case-tools{grid-template-columns:1fr}.case-tools>div:first-child{grid-column:auto}}

/* ---------- Print ---------- */
@media print{
 .site-nav,.argument-index,.positions,.state-grid,.replies,.argument-pager,.share-row,.quick-questions,.evidence-index,.medical-tabs,.skip{display:none}
 .hero,.explorer,.medical-layout,.state-comparison,.history-row,.voice-grid,.practice-layout,.method,.source-catalog,.estimate-grid,.timeline-block{display:block}
 .chapter{padding:20px 0}.argument-detail{padding:15px 0}.hero h1{font-size:45px}
 .evidence-panel[hidden]{display:block!important}
 .ladder-section{background:#fff;color:#000}.ladder label,.ladder-intro p{color:#000}
 a{overflow-wrap:anywhere}
}

/* Optional examples keep the main reply concise. */
.conversation-example{border-top:1px solid var(--line);margin-top:28px;padding-top:18px}
.conversation-example summary{cursor:pointer;color:var(--red);font-weight:500}
.conversation-example dl{margin:22px 0 0}
.conversation-example dt{font:600 12px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:18px}
.conversation-example dd{margin:6px 0 0;font:20px/1.45 var(--serif);max-width:40rem}
.duty-limits{max-width:960px;margin:0 0 32px}

/* Focused entry and chapter views */
[hidden]{display:none!important}
.home-cover{padding-top:40px;padding-bottom:28px;min-height:0}
.home-cover h1{font-size:clamp(54px,7.8vw,108px);line-height:.98;max-width:1100px;margin:35px 0 30px}
.welcome-copy{max-width:820px}.welcome-copy .intro{max-width:760px;font-size:clamp(23px,2.4vw,30px)}
.welcome-copy>p:not(.intro){font-size:17px;max-width:740px}.letter-link{font-weight:600;color:var(--red)}
.entry-paths{display:grid;grid-template-columns:repeat(3,1fr);margin-top:42px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.entry-paths>a{position:relative;padding:27px 28px 32px 0;text-decoration:none;transition:background .18s}
.entry-paths>a+a{border-left:1px solid var(--line-strong);padding-left:28px}.entry-paths h2{font-size:clamp(32px,3.6vw,50px);line-height:1.04;margin:23px 0 15px}.entry-paths p{font-size:15px;max-width:300px;margin:0 0 22px}.entry-paths a:hover{background:var(--paper-2)}.path-arrow{position:absolute;right:24px;bottom:22px;font-size:26px;color:var(--red)}
.home-secondary{font-size:14px;display:flex;gap:15px;flex-wrap:wrap;margin:22px 0 0}
.nav-more{position:relative;font-size:14px;white-space:nowrap}.nav-more summary{cursor:pointer;padding:8px 0}.nav-more>div{position:absolute;right:0;top:42px;background:var(--paper);border:1px solid var(--line-strong);padding:16px;min-width:170px;z-index:20;box-shadow:0 12px 30px #292a2418}.nav-more>div>a{display:block;padding:7px}
.site-nav{overflow:visible!important}.site-nav>a[aria-current=page]{color:var(--red);text-decoration:underline}
.reasoning-steps{max-width:920px}.reasoning-steps article{position:relative;padding:26px 0 30px 76px;border-bottom:1px solid var(--line)}.step-number{position:absolute;left:0;top:30px;font:40px var(--serif);color:var(--red)}.serious-objection{padding:18px 22px;background:var(--paper-2);font-size:16px}
.facts-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.facts-grid>a{border-top:1px solid var(--line-strong);padding:25px 0;text-decoration:none}.facts-grid h3{font-size:33px}.facts-grid a:hover h3{text-decoration:underline}
.author-letter{max-width:900px;margin:auto}.author-letter>p{font:23px/1.6 var(--serif);max-width:760px}.author-letter h2{font-size:clamp(44px,5vw,70px);line-height:1.04}.letter-signature{color:var(--red);font-style:italic!important}.language-note{border-top:1px solid var(--line);margin-top:40px;padding-top:20px}.language-note p{font-size:16px}
body[data-route] .chapter{padding-top:45px}body[data-route] .section-heading{margin-bottom:30px}
/* Data review: labels remain readable without color, animation or hover. */
.data-wayfinding{display:flex;gap:30px;border-top:1px solid var(--line-strong);padding:16px 0;color:var(--teal);font-size:12px;letter-spacing:.07em;text-transform:uppercase}
.data-poster{background:var(--teal);color:#fffaf0;display:grid;grid-template-columns:1.4fr 1fr;gap:38px;padding:38px;margin:28px 0 34px;align-items:center;overflow:hidden}
.data-poster .eyebrow{color:#e0efeb}.poster-number{font:clamp(48px,6.3vw,90px)/1.1 var(--serif);letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin:20px 0 8px;overflow-wrap:anywhere}.poster-number small{font-size:.56em}.data-poster p{font-size:16px;margin:12px 0;max-width:510px}.poster-note{border-left:1px solid #ffffff55;padding-left:28px}.poster-note strong{font:clamp(24px,3vw,40px)/1.2 var(--serif)}.data-poster .small{color:#e2eeeb;font-size:13px}
.percent-tiles{display:grid;grid-template-columns:repeat(10,1fr);gap:5px;max-width:290px}.percent-tiles i{aspect-ratio:1;background:linear-gradient(to right,#f3d69b var(--fill),#ffffff24 var(--fill));border:1px solid #ffffff29}
.race-explainer{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:5px 0 22px}.race-explainer h4{margin-top:0}.race-explainer p{font-size:16px}
.population-rates{padding:30px;background:var(--paper-2);margin:0 0 35px}.population-rates h3{font-size:35px}.population-rates>p{max-width:760px}.rate-line{display:grid;grid-template-columns:190px 1fr 45px;align-items:center;gap:15px;margin:18px 0;font-size:14px}.rate-line>div{height:20px;border-left:1px solid var(--ink);background:#ddd8ca}.rate-line i{height:100%;display:block;background:var(--red)}.rate-line b{text-align:right;font-variant-numeric:tabular-nums}
/* Source-led history and a deliberately non-autoplay media library. */
.history-dossier{border-top:1px solid var(--ink);padding:35px 0 45px;margin-bottom:50px}.dossier-intro{max-width:760px}.dossier-intro h3{font-size:clamp(36px,4.5vw,60px)}.document-timeline{padding:0;list-style:none;margin:38px 0}.document-timeline>li{display:grid;grid-template-columns:150px 1fr;gap:25px;padding:28px 0;border-top:1px solid var(--line)}.document-year{font:30px var(--serif);color:var(--red)}.document-timeline article{max-width:800px}.document-timeline h4{font:30px/1.2 var(--serif);margin:12px 0}.document-limit{border-left:3px solid var(--gold);padding-left:18px;font-size:15px}.history-bottom{background:var(--paper-2);padding:25px 30px;max-width:930px}.history-bottom h3{font-size:30px}
.voice-method{font-size:15px;max-width:900px}.voice-library{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:35px}.voice-library>article{border:1px solid var(--line-strong);padding:26px;background:#ffffff30}.voice-band{display:flex;justify-content:space-between;align-items:center;background:var(--forest);color:var(--paper);margin:-26px -26px 25px;padding:20px 26px;font-size:13px}.voice-band>span:last-child{font:34px var(--serif);color:#e4c5a0}.voice-library h3{font-size:39px;margin-bottom:5px}.voice-perspective{font-size:14px;color:var(--muted);margin-top:0}.voice-library h4{font-size:19px}.voice-library p{font-size:16px}.voice-library p.small{font-size:12px}.listen-question{border-top:1px solid var(--line);padding-top:16px}
@media(max-width:760px){.site-header{flex-wrap:wrap;gap:12px}.site-nav{flex-wrap:wrap;gap:16px;width:100%;justify-content:flex-start;white-space:normal}.site-nav::after{display:none}.nav-more>div{right:0}.home-cover{padding-top:25px}.cover-meta{font-size:10px}.entry-paths{grid-template-columns:1fr;margin-top:30px}.entry-paths>a,.entry-paths>a+a{padding:24px 38px 23px 0;border-left:0;border-bottom:1px solid var(--line)}.entry-paths>a:last-child{border-bottom:0}.entry-paths h2{font-size:34px;margin:12px 0}.entry-paths h2 br{display:none}.entry-paths p{max-width:460px;margin-bottom:0}.path-arrow{right:5px}.facts-grid,.voice-library{grid-template-columns:1fr}.data-poster{grid-template-columns:1fr;gap:22px;padding:26px}.poster-number{font-size:clamp(42px,10vw,75px)}.poster-note{border-left:0;border-top:1px solid #ffffff55;padding:20px 0 0}.race-poster{grid-template-columns:1fr}.percent-tiles{max-width:250px}.race-explainer{grid-template-columns:1fr;gap:10px}.population-rates{padding:22px}.rate-line{grid-template-columns:1fr 42px;gap:7px}.rate-line>span{grid-column:1/3}.rate-line>div{grid-column:1}.document-timeline>li{grid-template-columns:1fr;gap:12px}.document-year{font-size:25px}.reasoning-steps article{padding-left:45px}.step-number{font-size:28px}.data-wayfinding{gap:16px;font-size:10px}.author-letter>p{font-size:21px}.home-secondary{gap:9px}}
@media(prefers-reduced-motion:reduce){.entry-paths>a{transition:none}}
@media print{body[data-route] section[hidden]{display:none!important}.site-nav,.home-secondary{display:none}.data-poster{background:white;color:black;border:1px solid black}.data-poster .eyebrow,.data-poster .small{color:black}.poster-note{border-color:black}.voice-library{display:block}.voice-library article{break-inside:avoid;margin-bottom:20px}}
.statistics-chapter .section-heading h2{font-size:clamp(40px,4.7vw,64px);line-height:1.03;margin:18px 0}
.statistics-chapter .section-heading>p{font:18px/1.5 var(--sans);margin-bottom:8px}
.statistics-chapter .stats-tabs{margin-top:18px}.statistics-chapter .stats-controls{margin:20px 0 10px}.statistics-chapter .stats-link{margin:8px 0;font-size:13px}.statistics-chapter .data-poster{margin-top:18px}
@media(max-width:760px){.site-nav{gap:16px}.site-nav a,.nav-more{font-size:13px}.home-cover h1{font-size:48px;margin:26px 0 24px}.welcome-copy .intro{font-size:23px;line-height:1.4}.welcome-copy>p:not(.intro){font-size:16px}.entry-paths{margin-top:25px}.statistics-chapter .stats-tabs{display:flex;gap:0}.statistics-chapter .stats-tabs button{font-size:12px;padding:12px 9px}.statistics-chapter .section-heading{margin-bottom:15px}.statistics-chapter .stats-controls label{font-size:12px}.statistics-chapter .stats-controls select{font-size:13px}.statistics-chapter .stats-controls{gap:8px}.statistics-chapter .data-poster{padding:22px}}
.site-header{position:relative;z-index:30;overflow:visible}
.site-nav{mask-image:none;-webkit-mask-image:none;padding-right:0}
/* Visible choices make sources and conversation topics discoverable. */
.statistics-chapter .stats-controls{display:block}.stats-controls h3,.scenario-picker h3{font:600 16px var(--sans);margin:22px 0 12px}
.source-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px}
.source-choices button,.conversation-choices button{font:inherit;text-align:left;background:transparent;border:1px solid var(--line-strong);color:var(--ink);padding:16px;cursor:pointer;border-radius:0}
.source-choices button strong{display:block;font-size:16px}.source-choices button span{display:block;font-size:14px;line-height:1.5;margin-top:8px;color:var(--muted)}
.source-choices button[aria-pressed=true],.conversation-choices button[aria-pressed=true]{border:2px solid var(--teal);padding:15px;background:#245e6810}
.source-choices button[aria-pressed=true] strong::before{content:'✓ ';color:var(--teal)}
.conversation-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.scenario-picker{display:block;max-width:none}.conversation-choices button{font-size:15px;line-height:1.5}
.share-track{height:36px;background:#ffffff30;border:1px solid #ffffff65;margin-top:14px}.share-track>span{display:block;height:100%;background:#f3d69b}.share-label{display:grid;gap:8px;font-size:15px}.share-label strong{color:#f3d69b}.share-axis{display:flex;justify-content:space-between;font-size:12px;margin-top:8px}
.home-directory{margin-top:32px}.home-directory h2{font:600 18px var(--sans)}.home-directory>div{display:grid;grid-template-columns:repeat(4,1fr);gap:0 24px}.home-directory a{padding:16px 0;border-bottom:1px solid var(--line);font-size:15px;color:var(--teal)}
@media(max-width:760px){.conversation-choices{grid-template-columns:1fr}.home-directory>div{grid-template-columns:1fr 1fr}.home-directory a{font-size:14px}.source-choices{grid-template-columns:1fr}}
