
:root{
  --bg:#f5f6f8; --surface:#ffffff; --ink:#17212e; --heading:#172236;
  --body:#4B5563; --muted:#8A93A3; --border:#DDE1E6; --border-soft:#EAEDF1;
  --accent:#234896; --teal:#134A5F; --teal-hover:#1B5E77; --navy:#172236;
  --good:#1F7A4C;
  --a:#2c7a54; --b:#4b9a5f; --c:#7fae4a; --d:#c9b03c; --e:#dc9a3c; --f:#e8874a; --g:#d5563f;
}
*{box-sizing:border-box}
body{margin:0; background:var(--bg); font-family:'IBM Plex Sans',-apple-system,'Segoe UI',Helvetica,Arial,sans-serif; color:var(--ink); -webkit-font-smoothing:antialiased}
a{color:var(--teal); text-decoration:none}
a:hover{color:var(--teal-hover)}
.mono{font-family:'IBM Plex Mono',monospace}
.wrap{max-width:980px; margin:0 auto; padding:0 28px}
.eyebrow{font-family:'IBM Plex Mono',monospace; font-size:11px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color:var(--teal)}
header{background:#fff; border-bottom:1px solid var(--border)}
.headerbar{display:flex; align-items:center; justify-content:space-between; padding:16px 0}
.brand{display:flex; align-items:center; gap:10px}
.brand .name{font-weight:700; font-size:16px; color:var(--heading)}
.brand .tag{font-size:12.5px; color:var(--muted); border-left:1px solid var(--border); padding-left:10px; margin-left:2px}
.cta-btn{display:inline-flex; align-items:center; gap:7px; padding:10px 18px; border-radius:8px; background:var(--navy); color:#fff; font-weight:600; font-size:13.5px; cursor:pointer; transition:background .15s ease}
.cta-btn:hover{background:var(--accent); color:#fff}
.breadcrumb{padding:16px 0 0; font-size:13px; color:var(--muted)}
.breadcrumb a{color:var(--muted)}
.breadcrumb a:hover{color:var(--teal)}
.breadcrumb .sep{margin:0 6px; color:#c7cdd6}
.breadcrumb .here{color:var(--body)}
.hero{padding:22px 0 8px}
.hero h1{font-size:40px; line-height:1.1; letter-spacing:-0.01em; margin:10px 0 14px; color:var(--heading); font-weight:700}
.hero .parentline{font-size:15px; color:var(--muted); margin:-6px 0 16px}
.hero .parentline a{font-weight:600; color:var(--teal)}
.hero p{font-size:16.5px; line-height:1.65; color:var(--body); max-width:70ch; margin:0 0 30px}
.labreak{margin-bottom:30px}
.labar{display:flex; height:16px; border-radius:8px; overflow:hidden; margin-bottom:12px}
.lachip-row{display:flex; gap:10px; flex-wrap:wrap}
.lachip{display:flex; align-items:center; gap:8px; border:1px solid var(--border); border-radius:20px; padding:7px 14px 7px 10px; font-size:13px; background:#fff}
.lachip .sw{width:10px; height:10px; border-radius:3px; flex-shrink:0}
.lachip b{font-family:'IBM Plex Mono',monospace; color:var(--heading)}
.statrow{display:flex; gap:44px; flex-wrap:wrap; padding:22px 0 30px; border-top:1px solid var(--border-soft); border-bottom:1px solid var(--border-soft)}
.stat .num{font-family:'IBM Plex Mono',monospace; font-size:30px; font-weight:700; color:var(--heading); line-height:1; display:block}
.stat .lbl{font-size:13px; color:var(--muted); margin-top:8px; display:block; max-width:22ch}
section{padding:44px 0}
section.divider{border-top:1px solid var(--border-soft)}
h2{font-size:21px; font-weight:700; color:var(--heading); margin:0 0 10px; letter-spacing:-0.005em}
.lede{font-size:15.5px; line-height:1.7; color:var(--body); max-width:68ch; margin:0 0 24px}
.bandbar{display:flex; height:38px; border-radius:9px; overflow:hidden; box-shadow:0 1px 0 rgba(0,0,0,0.02); margin-bottom:10px}
.bandbar div{display:flex; align-items:center; justify-content:center; color:#fff; font-weight:700; font-size:12.5px; font-family:'IBM Plex Mono',monospace}
.bandlegend{display:flex; gap:0; font-size:12px; color:var(--muted)}
.bandlegend div{flex:1; text-align:center}
.bandlegend b{color:var(--heading); font-family:'IBM Plex Mono',monospace}
.twocol{display:grid; grid-template-columns:1.15fr 0.85fr; gap:40px; align-items:start}
.movecard{border:1px solid var(--border); border-radius:14px; padding:22px 24px; background:#fff}
.movecard .pair{display:flex; align-items:baseline; gap:14px; margin-top:6px}
.movecard .pair .v{font-family:'IBM Plex Mono',monospace; font-size:26px; font-weight:700; color:var(--heading)}
.movecard .pair .arrow{color:var(--muted); font-size:18px}
.movecard .cap{font-size:13px; color:var(--muted); margin-top:10px; line-height:1.55}
.cardgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px}
.ccard{border:1px solid var(--border); border-radius:14px; padding:20px 20px 18px; background:#fff}
.ccard .icon{width:34px; height:34px; border-radius:9px; display:flex; align-items:center; justify-content:center; margin-bottom:14px; font-size:16px}
.ccard .num{font-family:'IBM Plex Mono',monospace; font-size:24px; font-weight:700; color:var(--heading); display:block}
.ccard .lbl{font-size:13.5px; color:var(--body); margin-top:4px; line-height:1.5}
.ccard .caveat{font-size:11.5px; color:var(--muted); margin-top:10px; padding-top:10px; border-top:1px solid var(--border-soft); line-height:1.5}
.decile{display:flex; align-items:flex-end; gap:5px; height:64px; margin:18px 0 8px}
.decile div{flex:1; background:var(--teal); border-radius:3px 3px 0 0; opacity:0.85}
.decilelabels{display:flex; gap:5px; font-size:10.5px; color:var(--muted); text-align:center}
.decilelabels div{flex:1}
.wimdnote{font-size:12.5px; color:var(--muted); margin-top:6px; line-height:1.6}
.teaser{background:var(--navy); border-radius:20px; padding:38px 40px; color:#fff; display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; box-shadow:0 24px 56px -28px rgba(23,34,54,0.4)}
.teaser h3{font-size:24px; font-weight:700; margin:0 0 12px; letter-spacing:-0.01em; line-height:1.25}
.teaser p{font-size:14.5px; line-height:1.65; color:#C8D4DC; margin:0 0 22px; max-width:44ch}
.teaser .cta-btn{background:#fff; color:var(--navy)}
.teaser .cta-btn:hover{background:#e7ecf3}
.ghosttable{border-radius:12px; overflow:hidden; border:1px solid rgba(255,255,255,0.14); position:relative}
.ghostrow{display:flex; justify-content:space-between; padding:12px 16px; font-size:12.5px; border-bottom:1px solid rgba(255,255,255,0.08); font-family:'IBM Plex Mono',monospace; color:#C8D4DC}
.ghostrow span:first-child{color:#8fa3b5}
.blurmask{position:absolute; inset:0; backdrop-filter:blur(3px); background:linear-gradient(180deg, rgba(23,34,54,0) 0%, rgba(23,34,54,0.55) 55%, rgba(23,34,54,0.92) 100%); display:flex; align-items:flex-end; justify-content:center; padding-bottom:14px}
.lockpill{background:rgba(255,255,255,0.12); border:1px solid rgba(255,255,255,0.24); padding:6px 13px; border-radius:20px; font-size:11.5px; display:flex; align-items:center; gap:6px}
.navhead{display:flex; align-items:baseline; justify-content:space-between; margin-bottom:16px}
.navhead .count{font-size:13px; color:var(--muted)}
.pillgrid{display:flex; flex-wrap:wrap; gap:9px}
.pill{border:1px solid var(--border); border-radius:20px; padding:8px 15px; font-size:13.5px; color:var(--teal); background:#fff; transition:all .12s ease}
.pill:hover{background:var(--teal); color:#fff; border-color:var(--teal)}
.pill.current{background:var(--navy); color:#fff; border-color:var(--navy)}
.footnote{font-size:12.5px; color:var(--muted); margin-top:16px; line-height:1.6}
.readpointer{border:1px solid var(--border); border-radius:12px; padding:16px 20px; background:#F5F5F3; display:flex; align-items:center; justify-content:space-between; gap:16px; font-size:14px; color:var(--body)}
.readpointer a{font-weight:600; white-space:nowrap}
.artgrid{display:grid; grid-template-columns:repeat(2,1fr); gap:18px}
.artcard{border:1px solid var(--border); border-radius:14px; padding:22px; background:#fff}
.artcard h4{font-size:16.5px; font-weight:700; color:var(--heading); margin:10px 0 8px; line-height:1.35}
.artcard p{font-size:13.5px; color:var(--body); line-height:1.6; margin:0 0 14px}
.artcard .readlink{font-size:13px; font-weight:600; color:var(--teal)}
.callout{background:#F5F5F3; border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:14px; color:var(--body); line-height:1.65}
.callout b{color:var(--heading)}
.sourcelist{display:flex; flex-wrap:wrap; gap:8px; margin:14px 0 4px}
.sourcelist span{border:1px solid var(--border); border-radius:20px; padding:6px 13px; font-size:12.5px; color:var(--teal); background:#fff}
footer{background:var(--navy); color:#9DB3C0; padding:40px 0 32px; margin-top:20px}
.footgrid{display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap}
.footbrand{display:flex; align-items:center; gap:9px; color:#fff; font-weight:700; font-size:15px}
.footmeta{font-size:12.5px; color:#7C8FA1; text-align:right; line-height:1.6}
