/* Hallmark · genre: editorial · macrostructure: Ecosystem Index / Dossier / Catalogue · theme: custom "almanac paper, moss accent" · enrichment: none · nav: N6 masthead · footer: Ft4 colophon · pre-emit critique: P4 H4 E4 S4 R5 V4 */
@import url("/tokens.css");
*{box-sizing:border-box}html,body{overflow-x:clip}
body{margin:0;background:var(--color-paper);color:var(--color-ink);font:var(--text-md)/1.55 var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:.15em}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,.card:focus-visible,.chip:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}
.wrap{max-width:1120px;margin:0 auto;padding:0 var(--space-sm)}
.skip{position:absolute;left:-9999px;top:8px;background:var(--color-accent);color:var(--color-accent-ink);padding:var(--space-2xs) var(--space-xs)}.skip:focus{left:var(--space-sm)}
h1,h2,h3,h4{font-family:var(--font-display);font-style:normal;overflow-wrap:anywhere;min-width:0}
h1{font-size:var(--text-display);font-weight:500;line-height:1.05;letter-spacing:-.015em;margin:var(--space-sm) 0 var(--space-xs);font-variation-settings:"opsz" 144}
h2{font-size:var(--text-xl);font-weight:600;line-height:1.15;letter-spacing:-.01em;margin:var(--space-xl) 0 var(--space-xs);display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap}
h2 .origin{font:var(--text-xs)/1.4 var(--font-outlier);color:var(--color-ink-2);letter-spacing:.04em}
h3{font-size:var(--text-lg);font-weight:600;margin:var(--space-md) 0 var(--space-2xs)}
aside h3{font:500 var(--text-xs)/1.4 var(--font-outlier);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-2);margin:var(--space-md) 0 var(--space-2xs)}
p{margin:0 0 var(--space-xs)}.lede{font-size:var(--text-lg);line-height:1.45;color:var(--color-ink-2);max-width:var(--measure);margin:0 0 var(--space-sm)}
.fine{font-size:var(--text-sm);color:var(--color-ink-2)}.muted{color:var(--color-ink-2)}
.eyebrow{font:500 var(--text-xs)/1.4 var(--font-outlier);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-2);margin:var(--space-md) 0 0}
code{font-family:var(--font-outlier);font-size:.92em}
.top{background:var(--color-paper);border-bottom:var(--rule-hair);box-shadow:0 2px 0 var(--color-paper),0 3px 0 var(--color-rule)}
.bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-md);min-height:64px}
.brand{display:inline-flex;align-items:center;gap:var(--space-2xs);font:600 var(--text-lg)/1 var(--font-display);color:var(--color-ink);letter-spacing:-.01em;white-space:nowrap}.brand:hover{text-decoration:none}
.mark{width:14px;height:14px;background:var(--color-accent);border-radius:3px;position:relative}.mark::after{content:"";position:absolute;inset:4px;background:var(--color-paper);border-radius:1px}
.bar form{display:flex;max-width:520px;margin:0 auto;width:100%}.bar input[type=search]{flex:1;min-width:0;border:var(--rule-hair);background:var(--color-paper-2);border-radius:var(--radius-input);padding:var(--space-2xs) var(--space-xs);font:var(--text-sm) var(--font-body);color:var(--color-ink)}
.top nav{display:flex;gap:var(--space-sm);align-items:center}.top nav a{font:500 var(--text-xs)/1 var(--font-outlier);letter-spacing:.05em;text-transform:uppercase;color:var(--color-ink-2);white-space:nowrap}.top nav a:hover{color:var(--color-accent);text-decoration:none}.top nav a[aria-current]{color:var(--color-ink)}
.top nav details{position:relative}.top nav summary{list-style:none;cursor:pointer;font:500 var(--text-xs)/1 var(--font-outlier);letter-spacing:.05em;text-transform:uppercase;color:var(--color-ink-2);padding:var(--space-xs) 0}.top nav summary::-webkit-details-marker{display:none}
.top nav details div{position:absolute;right:0;top:calc(100% + 4px);background:var(--color-paper);border:var(--rule-hair);border-radius:var(--radius-card);padding:var(--space-xs);display:grid;gap:var(--space-xs);min-width:220px;z-index:30}.top nav details div a{display:block;padding:var(--space-2xs) 0;font-size:var(--text-sm);text-transform:none;letter-spacing:0;font-family:var(--font-body)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-sm);min-height:40px;border:1px solid var(--color-ink-2);color:var(--color-ink);background:transparent;font:600 var(--text-sm)/1.2 var(--font-body);border-radius:var(--radius-input);cursor:pointer;white-space:nowrap;transition:background var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out)}
.btn:hover{background:var(--color-paper-3);text-decoration:none}.btn.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.btn.primary:hover{background:oklch(36% 0.09 160)}.btn.sm{padding:var(--space-3xs) var(--space-xs);font-size:var(--text-xs);min-height:32px}
.crumbs{font:var(--text-xs)/1.4 var(--font-outlier);color:var(--color-ink-2);margin:var(--space-sm) 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crumbs a{color:var(--color-ink-2)}
.hero{padding:var(--space-xl) 0 var(--space-md);display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--space-xl);align-items:start}
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:var(--rule-hair);border-left:var(--rule-hair)}
.stats div{padding:var(--space-sm);border-right:var(--rule-hair);border-bottom:var(--rule-hair)}.stats b{display:block;font:500 var(--text-2xl)/1 var(--font-display);font-variant-numeric:tabular-nums}.stats span{font-size:var(--text-sm);color:var(--color-ink-2)}
.search{display:flex;gap:var(--space-2xs);margin-top:var(--space-sm)}input[type=search]{flex:1;min-width:0;font:var(--text-md) var(--font-body);padding:var(--space-2xs) var(--space-xs);border:var(--rule-hair);background:var(--color-paper-2);color:var(--color-ink);border-radius:var(--radius-input)}
.rail{border-top:var(--rule-hair);padding-top:var(--space-sm);margin-top:var(--space-xl)}.rail h2{margin-top:0}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,minmax(0,1fr)));gap:var(--space-sm);margin:var(--space-xs) 0}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{display:grid;grid-template-columns:10px minmax(0,1fr);gap:var(--space-3xs) var(--space-xs);align-items:start;border:var(--rule-hair);border-radius:var(--radius-card);padding:var(--space-xs) var(--space-sm);color:var(--color-ink);background:var(--color-paper);min-width:0}
.card:hover{text-decoration:none;border-color:var(--color-ink-2)}.card .sw{width:10px;height:10px;border-radius:50%;margin-top:.45em;grid-row:span 3}.card b{font:600 var(--text-md)/1.3 var(--font-body)}.card span,.card em{font-style:normal;font-size:var(--text-sm);color:var(--color-ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card img{grid-column:1/-1;width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;border-radius:4px;margin:0 0 var(--space-2xs)}
.card.big{grid-template-columns:minmax(0,1fr);padding:var(--space-md)}.card.big b{font:600 var(--text-lg) var(--font-display)}
.sw.redevelop{background:var(--color-redevelop)}.sw.reinhabit{background:var(--color-reinhabit)}.sw.regreen{background:var(--color-regreen)}.sw.unknown{background:var(--color-none)}
.legend{display:flex;flex-wrap:wrap;gap:var(--space-sm);font:var(--text-xs) var(--font-outlier);color:var(--color-ink-2);margin:var(--space-2xs) 0}.legend span{display:inline-flex;align-items:center;gap:var(--space-2xs)}.legend .sw{width:10px;height:10px;border-radius:50%}
.states{list-style:none;padding:0;margin:var(--space-2xs) 0 var(--space-sm);columns:3;column-gap:var(--space-md)}.states li{break-inside:avoid;padding:var(--space-3xs) 0;border-bottom:var(--rule-hair);display:flex;justify-content:space-between;gap:var(--space-xs)}.states span{font:var(--text-xs) var(--font-outlier);color:var(--color-ink-2)}.states.inline{columns:4}
.audience{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,minmax(0,1fr)));gap:var(--space-sm);margin:var(--space-xs) 0}.audience a{display:block;border-top:2px solid var(--color-ink);padding:var(--space-xs) 0;color:var(--color-ink);min-width:0}.audience a:hover{text-decoration:none;border-top-color:var(--color-accent)}.audience b{display:block;font:600 var(--text-lg) var(--font-display)}.audience span{font-size:var(--text-sm);color:var(--color-ink-2)}
.rank{list-style:none;padding:0;margin:0;counter-reset:n}.rank li{display:grid;grid-template-columns:2ch minmax(0,1fr) auto;gap:var(--space-xs);padding:var(--space-2xs) 0;border-bottom:var(--rule-hair);font-size:var(--text-sm)}.rank li::before{counter-increment:n;content:counter(n);font:var(--text-xs) var(--font-outlier);color:var(--color-ink-2);padding-top:.2em}.rank b{font-weight:600}.rank .num{font:var(--text-sm) var(--font-outlier);font-variant-numeric:tabular-nums;color:var(--color-ink-2);white-space:nowrap}.rank span{color:var(--color-ink-2)}
.rec-head{border-top:3px solid var(--color-ink);padding-top:var(--space-sm);margin-top:var(--space-md)}.rec-head h1{margin-top:var(--space-2xs)}.h1loc{font-weight:500;font-size:.5em;color:var(--color-ink-2)}
.rec-meta{display:flex;flex-wrap:wrap;gap:var(--space-2xs) var(--space-sm);align-items:center;margin:var(--space-2xs) 0 var(--space-sm)}
.chip{display:inline-flex;align-items:center;gap:var(--space-3xs);font:500 var(--text-xs)/1.3 var(--font-outlier);letter-spacing:.03em;padding:var(--space-3xs) var(--space-xs);min-height:28px;border-radius:var(--radius-pill);border:1px solid var(--color-rule);color:var(--color-ink-2);background:transparent;cursor:default}
.chip.tier-curated{border-color:var(--color-ink);color:var(--color-ink)}.chip.tier-draft{color:var(--color-ink-2)}.chip.tier-contributed{border-color:var(--color-accent);color:var(--color-accent)}.chip .sw{width:8px;height:8px;border-radius:50%}
.strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:var(--space-sm) 0;border-top:var(--rule-hair)}.strip div{padding:var(--space-xs) var(--space-2xs) 0 0;min-width:0}.strip b{display:block;font:500 var(--text-xl)/1 var(--font-display);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.strip span{font:var(--text-xs) var(--font-outlier);color:var(--color-ink-2);letter-spacing:.04em;text-transform:uppercase}
.mall .two{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:var(--space-xl);margin-top:var(--space-sm)}
figure.key{margin:var(--space-sm) 0 var(--space-2xs)}figure.key img{width:100%;height:auto;max-height:420px;object-fit:cover;border-radius:var(--radius-card)}figure.key figcaption{font:var(--text-xs)/1.5 var(--font-outlier);color:var(--color-ink-2);margin-top:var(--space-2xs)}
.narr{max-width:var(--measure);margin:var(--space-sm) 0}.narr p{font-size:var(--text-md)}
.facts{width:100%;border-collapse:collapse;border-top:var(--rule-hair)}.facts th,.facts td{text-align:left;padding:var(--space-2xs) var(--space-xs) var(--space-2xs) 0;border-bottom:var(--rule-hair);vertical-align:top;font-size:var(--text-sm)}.facts th{width:30%;font:500 var(--text-xs)/1.5 var(--font-outlier);color:var(--color-ink-2);letter-spacing:.04em;text-transform:uppercase}.facts td{font-variant-numeric:tabular-nums}.facts td .src-tag{font:var(--text-xs) var(--font-outlier);color:var(--color-ink-2);margin-left:var(--space-2xs)}
.facts caption{text-align:left;font:var(--text-xs) var(--font-outlier);color:var(--color-ink-2);padding:var(--space-2xs) 0}.facts td.num,.facts th.num{text-align:right}
.tbl-wrap{overflow:auto}.facts.deals th,.facts.deals td{white-space:nowrap}.facts.deals td:nth-child(2){white-space:normal;min-width:180px}.facts.deals thead th{position:sticky;top:0;background:var(--color-paper)}
.src{padding-left:1.1em;font-size:var(--text-sm)}.src li{margin:var(--space-3xs) 0}.src details{display:inline}.src summary{cursor:pointer;color:var(--color-ink-2);font-size:var(--text-xs)}.src blockquote{margin:var(--space-3xs) 0 var(--space-2xs);padding-left:var(--space-xs);border-left:2px solid var(--color-rule);color:var(--color-ink-2)}
pre{white-space:pre-wrap;word-break:break-word;font:var(--text-xs)/1.5 var(--font-outlier);background:var(--color-paper-2);border:var(--rule-hair);border-radius:var(--radius-input);padding:var(--space-xs);margin:0 0 var(--space-2xs)}
.cite{font-size:var(--text-sm);background:var(--color-paper-2);border:var(--rule-hair);border-radius:var(--radius-input);padding:var(--space-xs);margin:0 0 var(--space-2xs)}
.minimap,.bigmap,.statemap{border:var(--rule-hair);border-radius:var(--radius-card);background:var(--color-paper-2)}.minimap{height:220px}.bigmap{height:70vh}.statemap{height:300px;margin:var(--space-xs) 0 var(--space-sm)}
.tl{list-style:none;padding:0;margin:var(--space-2xs) 0 0;border-left:2px solid var(--color-rule)}.tl li{padding:var(--space-3xs) 0 var(--space-3xs) var(--space-xs);font-size:var(--text-sm)}.tl b{font:500 var(--text-xs) var(--font-outlier);margin-right:var(--space-2xs);color:var(--color-ink-2)}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,minmax(0,1fr)));gap:var(--space-xs);margin:var(--space-2xs) 0}.gallery figure{margin:0;min-width:0}.gallery img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;border-radius:4px}.gallery figcaption{font:var(--text-xs)/1.4 var(--font-outlier);color:var(--color-ink-2);margin-top:var(--space-3xs)}
details.sec{border-top:var(--rule-hair)}details.sec summary{cursor:pointer;list-style:none;padding:var(--space-xs) 0;display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-sm)}details.sec summary::-webkit-details-marker{display:none}details.sec summary h2{margin:0;flex:1}details.sec summary::after{content:"+";font:var(--text-md) var(--font-outlier);color:var(--color-ink-2)}details.sec[open] summary::after{content:"–"}
.chips{display:flex;flex-wrap:wrap;gap:var(--space-2xs);margin:0 0 var(--space-xs)}.chip[aria-pressed]{cursor:pointer}.chip[aria-pressed="true"]{border-color:var(--color-ink);color:var(--color-ink)}.chip.red .sw{background:var(--color-redevelop)}.chip.org .sw{background:var(--color-reinhabit)}.chip.grn .sw{background:var(--color-regreen)}.chip.gry .sw{background:var(--color-none)}
.panel{border:var(--rule-hair);border-radius:var(--radius-card);padding:var(--space-sm) var(--space-md);background:var(--color-paper-2)}
.cta{margin:var(--space-2xl) 0 var(--space-md);padding:var(--space-md) 0 0;border-top:3px solid var(--color-ink)}.cta h2{margin-top:0}
form.contrib label{display:block;font:500 var(--text-xs)/1.4 var(--font-outlier);letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink-2);margin:var(--space-xs) 0 var(--space-3xs)}form.contrib input,form.contrib textarea,form.contrib select{width:100%;font:var(--text-md) var(--font-body);padding:var(--space-2xs) var(--space-xs);border:var(--rule-hair);background:var(--color-paper-2);color:var(--color-ink);border-radius:var(--radius-input)}
ul.terms{padding-left:1.1em;color:var(--color-ink-2);margin:var(--space-2xs) 0}ul.terms li{margin:var(--space-3xs) 0}
.status-note{border-left:3px solid var(--color-ink);padding:var(--space-2xs) var(--space-xs);margin:var(--space-sm) 0;font-size:var(--text-sm);color:var(--color-ink-2);background:var(--color-paper-2)}
footer.colophon{margin-top:var(--space-3xl);border-top:3px solid var(--color-ink);padding:var(--space-md) var(--space-sm) var(--space-2xl);font-size:var(--text-sm);color:var(--color-ink-2)}
footer.colophon .cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-md);max-width:1120px;margin:0 auto}footer.colophon h4{font:600 var(--text-sm) var(--font-body);color:var(--color-ink);margin:0 0 var(--space-2xs)}footer.colophon p{margin:0 0 var(--space-2xs)}
footer.colophon .line{max-width:1120px;margin:var(--space-md) auto 0;padding-top:var(--space-xs);border-top:var(--rule-hair);font:var(--text-xs) var(--font-outlier)}
.leaflet-popup-content{font:var(--text-sm) var(--font-body)}
.assess{border-left:3px solid var(--color-accent);padding:var(--space-2xs) var(--space-sm);margin:var(--space-2xs) 0 var(--space-sm)}.assess p{margin:0 0 var(--space-2xs)}.assess h3{font:600 var(--text-sm) var(--font-body);margin:var(--space-2xs) 0 var(--space-3xs)}.assess .cols2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.assess ul.terms{margin:0}
.profile{margin:var(--space-2xs) 0 var(--space-sm);padding:var(--space-2xs) 0;border-top:var(--rule-hair);border-bottom:var(--rule-hair)}.profile .pg{display:flex;gap:var(--space-xs);align-items:baseline;margin:var(--space-3xs) 0}.profile .pgl{flex:0 0 9rem;font:var(--text-xs) var(--font-outlier);color:var(--color-ink-2);text-transform:uppercase;letter-spacing:.04em}.profile .pgc{display:flex;flex-wrap:wrap;gap:4px}.chip.el{font-size:var(--text-xs);text-decoration:none}.spark rect{fill:var(--color-accent)}.hbars .hb{display:grid;grid-template-columns:minmax(0,14rem) minmax(0,1fr) 4rem;gap:var(--space-xs);align-items:center;margin:2px 0;font-size:var(--text-sm)}.hbars .bar{height:10px;background:var(--color-paper-3);border-radius:2px;overflow:hidden}.hbars .bar i{display:block;height:100%;background:var(--color-accent)}.hbars .num{text-align:right;font-family:var(--font-outlier)}.chart{width:100%;height:auto;max-width:640px}.chart .c1{fill:var(--color-ink-2);opacity:.55}.chart .c2{fill:var(--color-accent)}.chart .ax{font:10px var(--font-outlier);fill:var(--color-ink-2)}.sw.c1{background:var(--color-ink-2);opacity:.55}.sw.c2{background:var(--color-accent)}.eltab td.num{width:4rem}.mixt td.num{white-space:nowrap}
.insights{margin:var(--space-sm) 0}.ins{display:block;text-decoration:none;border:var(--rule-hair);border-radius:6px;padding:var(--space-xs) var(--space-sm);color:inherit;background:var(--color-paper-2)}.ins b{display:block;font:600 var(--text-2xl) var(--font-display);color:var(--color-accent);line-height:1.1}.ins span{font-size:var(--text-sm);color:var(--color-ink-2)}
.ba{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.ba h3{font:600 var(--text-sm) var(--font-body);margin:0 0 var(--space-3xs)}.src-tag[title]{cursor:help;text-decoration:underline dotted}
.lede a,.assess a,.fine a,p a,li a{text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:2px}code,pre{overflow-wrap:anywhere;white-space:pre-wrap}.profile details{display:inline}.profile details summary{list-style:none;cursor:pointer}.profile details summary::-webkit-details-marker{display:none}.profile details[open] .ev{display:block;font-size:var(--text-xs);color:var(--color-ink-2);margin:2px 0 4px;max-width:40rem}.profile .ev{display:none}.facts .src-tag[title]{cursor:help}
.facts8{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--space-xs);margin:var(--space-2xs) 0}.facts8>div{border:var(--rule-hair);border-radius:6px;padding:var(--space-3xs) var(--space-2xs);min-width:0}.facts8 .k{display:block;font:var(--text-xs) var(--font-outlier);color:var(--color-ink-2);text-transform:uppercase;letter-spacing:.04em}.facts8 b{display:block;font-size:var(--text-md);overflow-wrap:anywhere}.facts8 .o{display:block;font-size:var(--text-xs);color:var(--color-ink-2)}.happened{margin:var(--space-3xs) 0 var(--space-2xs);font-size:var(--text-md)}.dossier{display:flex;flex-wrap:wrap;gap:4px;margin:var(--space-2xs) 0}.legend{margin:0}.key.map iframe{width:100%;height:320px;border:0;border-radius:6px;display:block}.strip3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-xs);align-self:center}.strip3 a{display:block;text-decoration:none;min-width:0}.strip3 img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:6px;height:auto}.strip3 span{display:block;font-size:var(--text-xs);color:var(--color-ink-2);margin-top:2px}.tiles>div{border:var(--rule-hair);border-radius:6px;padding:var(--space-xs) var(--space-sm);background:var(--color-paper-2)}.tiles h3{font:600 var(--text-md) var(--font-body);margin:0 0 var(--space-3xs)}.tiles p{margin:0;font-size:var(--text-sm)}.ctas{display:flex;gap:var(--space-xs);align-items:center;flex-wrap:wrap}.pill{font:var(--text-xs) var(--font-outlier);border:var(--rule-hair);border-radius:999px;padding:2px 8px;color:var(--color-ink-2)}.eaform{display:grid;gap:var(--space-xs);max-width:36rem}.eaform label{display:grid;gap:4px;font-size:var(--text-sm)}.eaform input,.eaform select,.eaform textarea{font:inherit;padding:6px 8px;border:1px solid var(--color-ink-2);border-radius:4px;background:var(--color-paper)}details.profile>summary{list-style:none;cursor:pointer}details.profile>summary::-webkit-details-marker{display:none}details.profile>summary h2{margin:0}
.herlist li{margin:0 0 var(--space-sm)}.hers{margin:4px 0;padding:4px 10px;border-left:3px solid var(--color-paper-3);font-size:var(--text-sm);color:var(--color-ink-2)}.hbars .bar{display:inline-block;width:160px;height:8px;background:var(--color-paper-3);border-radius:2px;vertical-align:middle}.hbars .bar i{display:block;height:100%;background:var(--color-accent)}
@media (max-width:860px){.facts8{grid-template-columns:repeat(2,minmax(0,1fr))}.strip3{grid-template-columns:repeat(3,minmax(0,1fr))}.ba{grid-template-columns:minmax(0,1fr)}.profile .pg{flex-direction:column;gap:2px}.hbars .hb{grid-template-columns:minmax(0,8rem) minmax(0,1fr) 3.5rem}.assess .cols2{grid-template-columns:minmax(0,1fr)}.hero,.mall .two{grid-template-columns:minmax(0,1fr)}.bar{gap:var(--space-xs)}.top nav a:not(.btn){display:none}.top nav .btn{display:none}.states,.states.inline{columns:2}.grid.three{grid-template-columns:minmax(0,1fr)}.strip{grid-template-columns:repeat(2,minmax(0,1fr))}footer.colophon .cols{grid-template-columns:repeat(2,minmax(0,1fr))}.facts th{width:40%}.mall aside{order:1}}
@media (min-width:861px){.top nav details{display:none}}
@media (max-width:480px){.bar form{display:none}.states,.states.inline{columns:1}footer.colophon .cols{grid-template-columns:minmax(0,1fr)}h1{font-size:var(--text-2xl)}.facts th,.facts td{display:block;width:auto;border:0;padding:var(--space-3xs) 0}.facts tr{display:block;border-bottom:var(--rule-hair);padding:var(--space-2xs) 0}}
/* capital trends (d3) */
.chart-box{position:relative;margin:.5rem 0 1rem}.chart-box svg{width:100%;height:auto;display:block}.chart-box .d3tip{position:absolute;pointer-events:none;background:var(--color-bg,#fff);border:1px solid var(--color-border,#ddd);border-radius:6px;padding:.4rem .6rem;font-size:.8rem;line-height:1.35;box-shadow:0 2px 8px rgba(0,0,0,.12);z-index:3}.chart-box .chips .chip{cursor:default}.chart-box .sw{display:inline-block;width:.75em;height:.75em;border-radius:2px;margin-right:.35em;vertical-align:-1px}
/* gauntlet 20 Oct: wide tables keep their headers on phones; bigger tap targets; no iOS zoom on form fields */
@media (max-width:480px){.tbl-wrap .facts th,.tbl-wrap .facts td{display:table-cell;border-bottom:var(--rule-hair);padding:var(--space-3xs) var(--space-2xs);white-space:nowrap}.tbl-wrap .facts tr{display:table-row;border:0}.dossier .btn{min-height:44px;display:inline-flex;align-items:center}.dossier .btn.primary{flex:1 0 100%;justify-content:center}.eaform input,.eaform select,.eaform textarea{font-size:16px;min-height:44px}}
.chart-box .d3tip{background:var(--color-paper);border-color:var(--color-rule);color:var(--color-ink)}.tbl-wrap{scroll-margin-top:4rem}h2[id]{scroll-margin-top:4rem}.chips a.chip{text-decoration:none}
/* gauntlet cycle 2 */
.tbl-wrap{max-height:75vh}.tbl-wrap thead th{position:sticky;top:0;background:var(--color-paper);z-index:1}.tbl-wrap:focus-visible,.chart-box svg:focus-visible{outline:3px solid var(--color-ink);outline-offset:2px}
@media (max-width:600px){.tbl-wrap .facts td,.tbl-wrap .facts th{white-space:normal;min-width:12ch;max-width:34ch}.tbl-wrap .facts th:first-child,.tbl-wrap .facts td:first-child{position:sticky;left:0;background:var(--color-paper);z-index:2}.tbl-wrap .facts thead th:first-child{z-index:3}}
.dossier .btn.primary{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink)}.eaform button{min-height:44px;font-size:16px}.chips a.chip{min-height:36px;display:inline-flex;align-items:center}.eaform ::placeholder{color:#6b6b6b}
