:root{font-size:16px;--ink:#092c36;--muted:#47616a;--paper:#f4f7f7;--line:#bdcccf;--teal:#006b70;--lime:#a6f06c;--orange:#a64217}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.6 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}a{color:var(--teal);text-underline-offset:.22em}a:hover{text-decoration-thickness:2px}button,input,select{font:inherit}button,a,select,input,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #bb470d;outline-offset:4px}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:white;padding:1rem;z-index:100}main,.site-header,.site-footer{max-width:1280px;margin:auto;padding-left:3rem;padding-right:3rem}.site-header{display:flex;gap:2rem;align-items:center;min-height:100px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.85rem;font-size:1.5rem;font-weight:750;color:var(--ink);text-decoration:none}.brand span{font-size:1rem;font-weight:600}.site-header nav{display:flex;gap:1.5rem;margin-left:auto}.site-header nav a{color:var(--ink);font-size:.95rem}.edition,.mono,.eyebrow,.card-index{font: .875rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.edition{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.06em;color:var(--teal)}h1,h2,h3,h4{line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.5rem,5vw,4.5rem);max-width:1000px;margin:1rem 0 1.5rem}h2{font-size:clamp(1.7rem,3vw,2.5rem)}h3{font-size:1.8rem}h4{font-size:1.1rem;letter-spacing:0}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:4rem;padding:5rem 0 4rem;align-items:end}.hero h1{font-size:clamp(4rem,8vw,7.6rem);font-weight:650;line-height:.97;letter-spacing:-.065em}.accent{color:var(--teal)}.hero-copy{font-size:1.5rem;line-height:1.4}.hero-note{padding:2rem;border-top:4px solid var(--teal);background:#e4eeef}.hero-note>p:not(.fine){font-size:1.2rem}.fine{font-size:.875rem;color:var(--muted)}.button,button{display:inline-block;min-height:46px;padding:.65rem 1.1rem;border:1px solid var(--ink);border-radius:2px;background:var(--ink);color:white;text-decoration:none;cursor:pointer}.button:hover,button:hover{background:#155261}section{padding:2.5rem 0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.section-head h2{margin:0}.section-head .mono{color:var(--muted)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.project-card{display:block;padding:2rem;background:white;border:1px solid var(--line);text-decoration:none;color:var(--ink);position:relative;transition:border-color .15s}.project-card:hover{border-color:var(--teal)}.project-card h3{max-width:450px;margin:1.7rem 0 1rem}.project-card p{color:var(--muted);max-width:450px}.card-index{color:var(--teal)}.card-link{display:block;margin-top:1.5rem;text-decoration:underline;font-weight:600}.card-chart{display:flex;align-items:flex-end;height:85px;gap:8px;margin:1.8rem 0 .8rem;border-bottom:1px solid var(--line)}.card-chart i{flex:1;background:var(--teal);opacity:.7}.card-stat{border-top:1px solid var(--line);padding-top:1.3rem;margin-top:2rem;display:flex;align-items:baseline;gap:1rem;flex-wrap:wrap}.card-stat strong{font:2rem/1.2 ui-monospace,monospace}.card-stat span{font-size:.875rem;color:var(--muted)}.approach{display:grid;grid-template-columns:1fr 1fr;column-gap:4rem;border-top:1px solid var(--line);margin-top:3rem;padding:3rem 0 5rem}.approach>.eyebrow{grid-column:1/-1}.approach h2{margin-top:0;font-size:2.7rem}.approach p{margin-top:0}.site-footer{border-top:1px solid var(--line);padding-top:2rem;padding-bottom:2rem;display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;font-size:.875rem;color:var(--muted)}.project-heading{padding:2.5rem 0 1rem}.project-heading>p:last-child{font-size:1.2rem;color:var(--muted);max-width:780px}.back{font-size:.9rem}.explorer{padding-top:1rem}.controls{display:flex;flex-wrap:wrap;gap:1rem;align-items:end;background:#e3ecee;padding:1.25rem;margin:0 0 1.5rem}.control{flex:1;min-width:150px}label{display:block;font-size:.875rem;font-weight:650;margin-bottom:.35rem}select,input{width:100%;max-width:100%;min-height:46px;padding:.6rem .7rem;color:var(--ink);background:white;border:1px solid #7c969d;border-radius:2px}select{min-width:0}button{flex-shrink:0}#result{min-height:60px}.metrics{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0}.metric{background:white;border:1px solid var(--line);padding:1.3rem;flex:1;min-width:170px}.metric strong{display:block;font-size:2rem;line-height:1.3;letter-spacing:-.04em}.metric span{color:var(--muted);font-size:.9rem}.note,.warning{padding:1rem 1.2rem;border-left:4px solid var(--teal);background:#e2edef;margin:1rem 0}.warning{border-color:var(--orange);background:#f8ede7}.chart-panel{background:white;border:1px solid var(--line);padding:1.5rem;margin:1.5rem 0}.chart-panel h2{font-size:1.35rem;letter-spacing:-.02em;margin-top:0}.chart-panel svg{width:100%;height:auto;max-height:360px;display:block}.chart-panel svg text{font:14px system-ui;fill:var(--muted)}.bar-row{display:grid;grid-template-columns:minmax(110px,1.2fr) 3fr minmax(65px,.6fr);gap:.8rem;align-items:center;margin:.65rem 0}.bar-track{height:20px;background:#e5edee}.bar-fill{height:100%;background:var(--teal);min-width:1px}.bar-value{font-variant-numeric:tabular-nums;text-align:right}.table-wrap{max-width:100%;overflow:auto;border:1px solid var(--line);background:white}table{border-collapse:collapse;width:100%;font-size:.9rem}caption{text-align:left;font-weight:650;padding:1rem}th,td{padding:.75rem 1rem;border-bottom:1px solid #d3dfe1;text-align:left;font-variant-numeric:tabular-nums}th{background:#edf3f4}td{white-space:nowrap}details{border-bottom:1px solid var(--line);padding:1rem 0}summary{font-weight:650;cursor:pointer;font-size:1.05rem;min-height:32px}details p{max-width:900px}.study-details{border-top:1px solid var(--line)}.download-links{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem}.download-links a{overflow-wrap:anywhere}.downloads p{max-width:950px}.claim-list{display:grid;gap:.75rem}.claim{background:white;border:1px solid var(--line);padding:1rem 1.3rem}.claim h3{font-size:1rem;letter-spacing:0;line-height:1.5;margin:0}.claim .status{font:.875rem ui-monospace,monospace;color:var(--teal);display:block;margin-top:.5rem}.claim p{margin-bottom:0}.empty{padding:2rem;border:1px dashed var(--muted)}.map-explorer section{border-bottom:1px solid var(--line)}.map-explorer .grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.map-explorer .map{background:white;padding:1rem;border:1px solid var(--line)}.map h3{font-size:1.1rem;letter-spacing:0}.map svg{width:100%;height:auto;display:block}.district{fill:#dce7e9;stroke:#203b42;stroke-width:.6}.moved{fill:#a64217;stroke:none;opacity:.78}.map svg text{font-size:13px;font-weight:750;fill:#092c36;paint-order:stroke;stroke:white;stroke-width:3px}.legend{display:flex;gap:1rem;flex-wrap:wrap}.swatch{display:inline-block;width:15px;height:15px;margin-right:7px;background:#a64217}.quiet{color:var(--muted);font-size:.9rem}.map-explorer .controls>div{flex:1;min-width:180px}.map-explorer .downloads{display:flex;flex-wrap:wrap;gap:1rem}.matrix{font-size:.875rem}.matrix th,.matrix td{padding:.5rem}.map-explorer section:first-child{padding-top:1rem}[hidden]{display:none!important}@media(max-width:900px){.edition{display:none}.hero{gap:2rem}.brand span{display:none}}@media(max-width:680px){main,.site-header,.site-footer{padding-left:1.1rem;padding-right:1.1rem}.site-header{min-height:80px;gap:1rem}.site-header nav{gap:1rem}.hero{grid-template-columns:1fr;padding-top:2.5rem;gap:1.5rem}.hero h1{font-size:4.8rem}.hero-note{padding:1.5rem}.project-grid,.approach,.map-explorer .grid{grid-template-columns:1fr}.project-card{padding:1.5rem}.section-head{align-items:start;flex-direction:column}.approach{gap:1rem;padding-bottom:3rem}.approach h2{font-size:2.2rem}.controls{padding:1rem}.control{min-width:100%;width:100%}.controls button{width:100%}h1{font-size:2.6rem}.bar-row{grid-template-columns:1fr 2fr .7fr;font-size:.9rem;gap:.5rem}.chart-panel{padding:1rem}.project-heading{padding-top:1.5rem}.table-wrap{overscroll-behavior-x:contain}.metrics{gap:.65rem}.metric{min-width:140px}.metric strong{font-size:1.65rem}.site-footer{flex-direction:column}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{.site-header,button,.controls{display:none}body{background:white}details{break-inside:avoid}.project-grid{display:block}}
/* Keep navigation and long scientific labels usable at enlarged text sizes. */
.site-header{flex-wrap:wrap;padding-top:1rem;padding-bottom:1rem}.site-header nav{flex-wrap:wrap}.hero>* , .project-grid>* , .approach>*{min-width:0}h1,h2,h3,summary,.eyebrow,.mono{overflow-wrap:anywhere}.metric{min-width:0;overflow-wrap:anywhere}p{overflow-wrap:break-word}@media(max-width:680px){.hero h1{font-size:clamp(3rem,20vw,4.8rem)}.site-header nav{margin-left:0;flex:1;min-width:220px}.site-header{gap:.7rem}.control{min-width:0}.controls{display:grid;grid-template-columns:minmax(0,1fr)}.map-explorer .controls>div{min-width:0}.bar-row{grid-template-columns:1fr 1.5fr .9fr}}

/* Static-looking homepage previews reuse the actual chart renderer and editable copy. */
.embedded-chart body{background:white}.embedded-chart .site-header,.embedded-chart .site-footer,.embedded-chart .skip,.embedded-chart .project-heading,.embedded-chart .study-details,.embedded-chart .downloads{display:none!important}.embedded-chart main{padding:0;max-width:none}.embedded-chart .explorer{padding:0}.embedded-chart #filters,.embedded-chart #result,.embedded-chart #table{display:none!important}.embedded-chart .chart-panel{border:0;margin:0;padding:12px}.embedded-chart .chart-panel h2{font-size:16px;margin:0 0 5px}.embedded-chart .chart-panel p{font-size:12px;margin:4px 0}.embedded-chart .chart-panel svg{max-height:190px}.embedded-chart .bar-row{font-size:12px;margin:4px 0;gap:8px}.embedded-chart .bar-track{height:14px}.embedded-chart .map-explorer>section{display:none}.embedded-chart .map-explorer>section:first-child{display:block;padding:0;border:0}.embedded-chart .map-explorer>section:first-child>*:not(.grid){display:none}.embedded-chart .map-explorer .grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}.embedded-chart .map-explorer .map{padding:7px;border:0}.embedded-chart .map h3{font-size:12px;margin:0 0 4px}.embedded-chart .map svg{max-height:235px}.embedded-chart .map-explorer{overflow:hidden}
