:root{--ink:#16181d;--char:#23262d;--navy:#0f2340;--navy2:#172f52;--paper:#f6f3ec;--paper2:#ece7dc;--line:#d8d1c2;--mute:#5d6470;--gold:#c9a24a;--gold2:#e3c477;--teal:#2f7f86;--max:1180px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 "Source Serif 4",Georgia,serif}
h1,h2,h3,.sans,nav,.chip,.kpi,.btn,table,.eyebrow,.dek,footer{font-family:"Inter",system-ui,-apple-system,Segoe UI,sans-serif}
.num,.kpi .v,table td.n{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum","lnum"}
a{color:var(--navy2)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
header.site{background:var(--ink);color:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #000}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px}
.brand{color:#fff;text-decoration:none;font:700 15px/1.1 Inter,system-ui,sans-serif;letter-spacing:.02em;display:flex;align-items:center;gap:10px}
.brand b{color:var(--gold2)}.brand svg{flex:none}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:2px;flex-wrap:wrap}
nav a{color:#cfd3da;text-decoration:none;font-size:14px;padding:8px 10px;border-radius:4px}
nav a:hover,nav a[aria-current]{color:#fff;background:#2b2f37}
.menu{display:none;background:none;border:1px solid #444;color:#fff;border-radius:4px;padding:6px 10px;font:600 14px Inter,sans-serif}
@media(max-width:900px){.menu{display:block}nav{display:none;position:absolute;top:60px;left:0;right:0;background:var(--ink);padding:8px 12px 16px}nav.open{display:block}nav ul{flex-direction:column}nav a{display:block;padding:12px}}
.asof{background:var(--navy);color:#c8d2e0;font:500 12.5px/1.4 Inter,sans-serif}
.asof .wrap{padding-top:7px;padding-bottom:7px}.asof b{color:#fff}
.hero{background:radial-gradient(1200px 500px at 80% -10%,#1d3a63 0%,var(--navy) 55%,#0a1830 100%);color:#fff;position:relative;overflow:hidden}
.hero .art{position:absolute;inset:auto 0 0 0;height:100%;opacity:.55;pointer-events:none}
.hero .wrap{position:relative;padding-top:64px;padding-bottom:56px}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:600;color:var(--gold2)}
.hero h1{font-size:clamp(20px,2.6vw,28px);font-weight:500;margin:10px 0 4px;color:#e9edf3}
.big{font:700 clamp(68px,15vw,168px)/0.95 Inter,system-ui,sans-serif;letter-spacing:-.035em;color:var(--gold2);font-variant-numeric:tabular-nums lining-nums;margin:6px 0 8px}
.big small{font-size:.28em;letter-spacing:0;color:#c8d2e0;font-weight:500;margin-left:.3em}
.hero p.lede{max-width:640px;color:#d6dde8;font-size:18px}
.secondary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#2c4568;margin-top:28px;border:1px solid #2c4568;border-radius:6px;overflow:hidden}
.secondary>div{background:rgba(10,24,48,.75);padding:18px 18px 14px}
.secondary .v{font:700 30px/1.1 Inter,sans-serif;color:#fff}
.secondary .l{font:500 13px/1.4 Inter,sans-serif;color:#b9c4d4;margin-top:4px}
@media(max-width:700px){.secondary{grid-template-columns:1fr}}
.page-head{background:var(--char);color:#fff;padding:52px 0 40px;position:relative;overflow:hidden}
.page-head h1{font-size:clamp(32px,5vw,52px);line-height:1.08;margin:10px 0 12px;letter-spacing:-.02em;max-width:900px}
.page-head p{color:#cfd5de;max-width:720px;font-size:18px;margin:0}
.page-head .art{position:absolute;right:-40px;top:0;height:100%;opacity:.35}
section{padding:56px 0}section.alt{background:var(--paper2)}section.dark{background:var(--ink);color:#e8e8e8}
h2{font-size:clamp(24px,3.2vw,34px);line-height:1.15;letter-spacing:-.015em;margin:0 0 8px}
h3{font-size:18px;margin:0 0 6px}
.dek{color:var(--mute);font-size:15.5px;max-width:760px;margin:0 0 22px}
section.dark .dek{color:#aab}
.grid{display:grid;gap:20px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px;box-shadow:0 1px 0 rgba(0,0,0,.03)}
.kpi .l{font:600 12px/1.3 Inter,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--mute)}
.kpi .v{font:700 40px/1.1 Inter,sans-serif;letter-spacing:-.02em;margin:8px 0 4px;color:var(--ink)}
.kpi .v.acc{color:var(--teal)}.kpi .s{font:14px/1.45 Inter,sans-serif;color:var(--mute)}
.chip{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;line-height:1.3;color:#3d4450;background:#efeae0;border:1px solid var(--line);border-radius:999px;padding:3px 10px;margin-top:10px;text-decoration:none}
.chip:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--teal);flex:none}
.hero .chip,.page-head .chip,section.dark .chip{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.18);color:#c9d2df}
.chart{position:relative;height:340px}.chart.sm{height:220px}
@media(max-width:640px){.chart{height:280px}}
table{width:100%;border-collapse:collapse;font-size:14.5px}
th{text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--mute);border-bottom:2px solid var(--ink);padding:10px 8px;cursor:pointer;white-space:nowrap}
td{border-bottom:1px solid var(--line);padding:11px 8px}td.n,th.n{text-align:right}
.scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.note{border-left:3px solid var(--gold);background:#fffaf0;padding:14px 18px;font-size:15.5px;border-radius:0 6px 6px 0}
.receipt{background:#fffdf8;max-width:520px;margin:0 auto;padding:30px 28px 24px;font:14px/1.5 "IBM Plex Mono",ui-monospace,Menlo,monospace;box-shadow:0 18px 40px rgba(15,35,64,.18);position:relative;border:1px solid #e6dfcf}
.receipt:after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:10px;background:linear-gradient(-45deg,transparent 7px,#fffdf8 0) 0 0/14px 10px,linear-gradient(45deg,transparent 7px,#fffdf8 0) 0 0/14px 10px}
.receipt h3{font:700 15px "IBM Plex Mono",monospace;text-align:center;letter-spacing:.1em;margin:0}
.receipt .c{text-align:center;color:#666;font-size:12px}
.receipt .row{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px dotted #cfc6b3}
.receipt .row span:last-child{white-space:nowrap}
.receipt .bar{height:4px;background:var(--navy2);margin:-3px 0 4px;opacity:.75}
.receipt .tot{border-top:2px solid #111;border-bottom:2px solid #111;font-weight:700;margin-top:8px}
.toggle{display:inline-flex;border:1px solid var(--ink);border-radius:6px;overflow:hidden;margin-bottom:18px}
.toggle button{font:600 14px Inter,sans-serif;background:#fff;border:0;padding:9px 16px;cursor:pointer}
.toggle button.on{background:var(--ink);color:#fff}
.lead{font-size:20px;max-width:760px}
.prose{max-width:760px}.prose h2{margin-top:36px}
.btn{display:inline-block;background:var(--ink);color:#fff;text-decoration:none;font-weight:600;font-size:15px;padding:12px 18px;border-radius:6px}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.ladder .step{display:grid;grid-template-columns:150px 1fr;gap:14px;align-items:center;margin:10px 0;font-family:Inter,sans-serif;font-size:14px}
.ladder .b{height:26px;background:var(--navy2);border-radius:3px;color:#fff;font:600 13px/26px Inter,sans-serif;padding-left:8px;white-space:nowrap}
@media(max-width:640px){.ladder .step{grid-template-columns:1fr}}
.tile{display:flex;flex-direction:column;justify-content:space-between;min-height:150px}
.tile a{font:600 14px Inter,sans-serif;text-decoration:none}
.map{width:100%;height:auto}.map path,.map rect{stroke:#fff;stroke-width:2;cursor:pointer;transition:opacity .2s}.map path:hover,.map rect:hover{opacity:.8}
.map text{font:600 13px Inter,sans-serif;fill:#fff;pointer-events:none}.map text.d{font-weight:500;font-size:12px}
footer{background:var(--ink);color:#aab0ba;font-size:14px;padding:40px 0 30px}
footer a{color:#dfe3e9}footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px}
@media(max-width:700px){footer .cols{grid-template-columns:1fr}}
footer .fine{border-top:1px solid #333;margin-top:28px;padding-top:16px;font-size:12.5px}
.tag{display:inline-block;font:600 11px Inter,sans-serif;text-transform:uppercase;letter-spacing:.08em;padding:3px 8px;border-radius:3px;background:var(--gold);color:#111}
.tl{border-left:2px solid var(--line);padding-left:20px;margin-left:6px}.tl>div{position:relative;margin-bottom:22px}.tl>div:before{content:"";position:absolute;left:-27px;top:7px;width:12px;height:12px;border-radius:50%;background:var(--teal);border:2px solid var(--paper)}
.grid>*{min-width:0}.chip{max-width:100%;flex-wrap:wrap}
html,body{overflow-x:hidden}
@media(max-width:640px){.big small{display:block;font-size:18px;margin:8px 0 0}.hero .wrap{padding-top:40px}section{padding:40px 0}.receipt{padding:24px 16px;font-size:12.5px}.kpi .v{font-size:34px}.page-head{padding:36px 0 30px}}
th{white-space:normal;vertical-align:bottom}.map text{font-size:12px}.map text.d{font-size:11px}
.calc{font-family:Inter,sans-serif;font-size:14.5px}
.calcrow{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0 12px}
.calc input{font:700 20px Inter,sans-serif;width:120px;padding:8px 10px;border:1px solid #9fb4d1;border-radius:6px;background:#fff;color:var(--ink)}
.calc .ex{font:500 13px Inter,sans-serif;background:transparent;border:1px dashed currentColor;color:inherit;opacity:.85;border-radius:6px;padding:8px 12px;cursor:pointer;text-align:left}
.calcout{display:grid;grid-template-columns:1fr 1fr;gap:12px}.calcout>div{background:rgba(255,255,255,.06);border:1px solid rgba(159,180,209,.35);border-radius:6px;padding:12px 14px}
.calcout .v{display:block;font:700 26px Inter,sans-serif;color:#fff}.calcout .l{font-size:12.5px;color:#b9c4d4}
.cnote{font-size:12.5px;color:#b9c4d4;margin:10px 0 0}
.calc.light{margin-bottom:18px}.calc.light .ex{margin-top:8px;display:block}.calc.light input{font-size:16px;width:80px}
@media(max-width:640px){.calcout{grid-template-columns:1fr}}
