/* Sam Barret shared design system */
:root{
  --ink:#1B2432; --ink-2:#2A3646; --iron:#2F4A6B; --barrel:#9E2A2B; --barrel-d:#822223;
  --paper:#F7F4EC; --paper2:#FCFAF5; --paper3:#EFEADD;
  --brass:#A98040; --brass-l:#C9A468; --rule:#DCD5C6; --rule2:#C4BAA6; --soft:#5C6675; --soft2:#5F6B7A; --brass-t:#8A6520;
  --dsp:'Instrument Serif',Georgia,serif;
  --body:'Source Serif 4',Georgia,serif;
  --sans:'Inter',system-ui,-apple-system,sans-serif;
  --max:1120px; --col:640px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.66;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.wrap{max-width:var(--max);margin:0 auto;padding:0 32px}
a{color:inherit}
img,svg{display:block;max-width:100%}
h1,h2,h3,h4{font-family:var(--dsp);font-weight:400;letter-spacing:-.004em}
.caps{font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--brass-t)}
.caps-q{font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--soft)}
.num{font-variant-numeric:tabular-nums}
::selection{background:#E7D9BE}
:focus-visible{outline:2px solid var(--iron);outline-offset:2px}

/* mockup switcher chrome */
.sw{background:var(--ink);color:#A9B2BF;font-family:var(--sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:9px 0}
.sw .wrap{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.sw a{text-decoration:none;opacity:.6;border-bottom:1px solid transparent;padding-bottom:2px}
.sw a:hover{opacity:1}
.sw a.on{opacity:1;color:#fff;border-bottom-color:var(--barrel)}
.sw em{font-style:normal;opacity:.5}

/* nameplate */
header.site{background:var(--paper2);border-bottom:1px solid var(--rule2)}
.dateline{border-bottom:1px solid var(--rule);font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--soft2)}
.dateline .wrap{display:flex;gap:22px;align-items:center;padding:8px 32px;flex-wrap:wrap}
.dateline .r{margin-left:auto;display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.dateline a{text-decoration:none;color:var(--soft2)}
.dateline a:hover{color:var(--barrel)}
.plate{display:grid;grid-template-columns:auto minmax(120px,1fr) auto;align-items:center;padding:26px 0 22px;gap:28px}
nav.main{display:flex;gap:22px;font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.11em;text-transform:uppercase}
nav.main a{text-decoration:none;color:var(--soft);padding-bottom:4px;border-bottom:1px solid transparent;white-space:nowrap}
nav.main a:hover,nav.main a[aria-current]{color:var(--ink);border-bottom-color:var(--barrel)}
.mark{text-align:center;text-decoration:none;display:block;width:max-content;max-width:100%;margin-left:auto;margin-right:auto}
.mark .mo{font-family:var(--dsp);font-style:italic;font-size:29px;color:var(--barrel);line-height:1;display:block;white-space:nowrap}
.mark .hair{height:1px;background:var(--rule2);margin:8px auto 7px;width:92%;display:block}
.mark .nm{font-family:var(--sans);font-size:9.5px;font-weight:600;letter-spacing:.26em;color:var(--ink);display:block;white-space:nowrap}
.right{display:flex;justify-content:flex-end;gap:12px;align-items:center}
.plate .right .btn{white-space:nowrap}
@media (max-width:1240px){nav.main{gap:16px;font-size:11px;letter-spacing:.09em}
  .plate{gap:22px}
  .mark .mo{font-size:26px}}

.btn{display:inline-block;background:var(--barrel);color:#FDFCF9;text-decoration:none;font-family:var(--sans);font-size:12.5px;font-weight:600;letter-spacing:.06em;padding:11px 20px;border:1px solid var(--barrel);cursor:pointer;transition:background .15s,border-color .15s}
.btn:hover{background:var(--barrel-d);border-color:var(--barrel-d)}
.btn.o{background:transparent;color:var(--iron);border-color:var(--rule2)}
.btn.o:hover{background:var(--paper3);border-color:var(--rule2)}
.btn.q{background:transparent;color:#F3EFE5;border-color:rgba(243,239,229,.4)}
.btn.q:hover{background:rgba(243,239,229,.08);border-color:#F3EFE5}

/* structure */
section{padding:74px 0;border-bottom:1px solid var(--rule)}
section.tight{padding:56px 0}
h1{font-size:clamp(33px,4.8vw,54px);line-height:1.1}
h2{font-size:clamp(26px,3.3vw,38px);line-height:1.17;max-width:24em}
h3{font-size:20px;line-height:1.3}
.sub{margin-top:16px;color:#42505F;max-width:37em}
.marg{display:grid;grid-template-columns:168px 1fr;gap:46px}
.marg .rail{padding-top:4px}
.marg .rail p{font-family:var(--sans);font-size:12.5px;line-height:1.68;color:var(--soft)}
.marg .rail .n{font-family:var(--dsp);font-size:16px;color:var(--brass-t);display:block;margin-bottom:9px}
.marg .rail .sep{height:1px;background:var(--rule);margin:14px 0}
.measure{max-width:var(--col)}
.duo{display:grid;grid-template-columns:1fr .85fr;gap:52px;align-items:start}
.tbl{overflow-x:auto;-webkit-overflow-scrolling:touch;min-width:0}
.marg>*,.duo>*{min-width:0}

/* editorial breadcrumb + page head */
.crumb{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--soft2)}
.crumb a{text-decoration:none}
.crumb a:hover{color:var(--barrel)}
.pagehead{padding:58px 0 46px;background:var(--paper2);border-bottom:1px solid var(--rule)}
.pagehead h1{margin-top:16px;max-width:26em}
.pagehead .lede{margin-top:18px;font-size:19.5px;color:#42505F;max-width:38em}
.pagehead .cta{margin-top:30px;display:flex;gap:12px;flex-wrap:wrap}

/* entries / ledger rows */
.entries{margin-top:32px}
.entry{display:grid;grid-template-columns:34px 1fr auto;gap:20px;align-items:baseline;padding:19px 0;border-top:1px solid var(--rule)}
.entry:last-child{border-bottom:1px solid var(--rule)}
.entry .i{font-family:var(--dsp);font-style:italic;color:var(--brass-t);font-size:16px}
.entry h3{display:inline}
.entry p{color:#4B5867;font-size:16.5px;margin-top:5px}
.entry .amt{font-family:var(--sans);font-size:14.5px;font-weight:600;color:var(--iron);white-space:nowrap}
.entry .amt em{display:block;font-style:normal;font-weight:400;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--soft);margin-top:4px;text-align:right}
.entry a.more{display:inline-block;margin-top:9px;font-family:var(--sans);font-size:12.5px;font-weight:600;letter-spacing:.03em;color:var(--barrel);text-decoration:none;border-bottom:1px solid var(--rule2);padding-bottom:2px}
.entry a.more:hover{border-bottom-color:var(--barrel)}

/* note block */
.terms{background:var(--paper3);padding:24px 28px;margin-top:32px;border-left:2px solid var(--brass)}
.terms p{font-size:16.5px;color:#3D4A58}
.terms p+p{margin-top:10px}
.terms.iron{border-left-color:var(--iron)}

/* tables */
table.led{width:100%;border-collapse:collapse;margin-top:28px;background:var(--paper2);border:1px solid var(--rule)}
table.led th,table.led td{text-align:left;padding:13px 18px;border-bottom:1px solid var(--rule);font-size:16px}
table.led thead th{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--soft);background:var(--paper3)}
table.led tbody tr:last-child td{border-bottom:none}
table.led td.n{font-family:var(--sans);font-weight:600;font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--iron)}
table.led tr.tot td{background:var(--paper3);font-weight:600}

/* dark desk band */
.dark{background:var(--ink);color:#DDE3EA;border-bottom:none}
.dark h2,.dark h1,.dark h3{color:#FBF8F1}
.dark .sub{color:#AEB9C6}
.dark .caps{color:var(--brass-l)}
.card{background:var(--paper2);color:var(--ink);padding:26px 28px;border-top:3px solid var(--barrel)}
.card .top{display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap}
.card .top .t{font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--soft)}
.badge{font-family:var(--sans);font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#8A5A11;background:#F2E7CF;padding:3px 7px}
.fig{font-family:var(--dsp);font-size:52px;line-height:1;margin-top:18px;color:var(--iron);font-variant-numeric:tabular-nums}
.fig small{font-family:var(--sans);font-size:13px;color:var(--soft);margin-left:8px;font-weight:400}
.chg{margin-top:8px;font-family:var(--sans);font-size:13.5px;font-weight:600;color:var(--barrel)}
.kv{margin-top:20px;border-top:1px solid var(--rule)}
.kv div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--rule);font-size:15.5px}
.kv div span:last-child{font-family:var(--sans);font-weight:600;font-size:14px;font-variant-numeric:tabular-nums}
.prov{margin-top:16px;font-family:var(--sans);font-size:11.5px;line-height:1.7;color:var(--soft)}
.prov a{color:var(--iron)}

/* index list on dark */
.index a{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:baseline;padding:15px 0;border-bottom:1px solid rgba(221,227,234,.16);text-decoration:none;color:#EDF1F5}
.index a:first-child{border-top:1px solid rgba(221,227,234,.16)}
.index .tt{font-family:var(--dsp);font-size:20px}
.index a:hover .tt{text-decoration:underline;text-decoration-color:var(--brass-l);text-underline-offset:4px}
.index small{display:block;font-family:var(--sans);font-size:12px;color:#95A2B1;margin-top:4px}
.index .fl{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#95A2B1}
.index .fl.live{color:#F3EFE5;border-bottom:1.5px solid var(--barrel)}

/* subscribe band */
.subs{background:var(--iron);color:#E6EDF4;border-bottom:1px solid var(--rule)}
.subs .inner{max-width:660px;margin:0 auto;text-align:center}
.subs h2{color:#fff;margin:0 auto}
.subs p{margin-top:14px;color:#C7D5E3}
.subs form{margin-top:26px;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.subs input{flex:1 1 260px;background:var(--paper);border:1px solid #4A6484;padding:13px 15px;font-family:var(--body);font-size:17px;color:var(--ink)}
.subs .fine{margin-top:16px;font-family:var(--sans);font-size:11.5px;line-height:1.7;color:#AFC1D3}

/* forms */
form.app{border:1px solid var(--rule2);padding:28px;background:var(--paper2)}
label{display:block;font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--soft);margin-bottom:6px}
.f{margin-top:16px}
input.t,select{width:100%;background:#fff;border:1px solid var(--rule2);padding:12px 14px;font-family:var(--body);font-size:17px;color:var(--ink)}
input.t:focus,select:focus{outline:2px solid var(--iron);outline-offset:-1px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
form.app .btn{width:100%;margin-top:22px;padding:14px}
.fine{font-family:var(--sans);font-size:11.5px;line-height:1.7;color:var(--soft);margin-top:14px}
.check{display:flex;gap:10px;align-items:flex-start;margin-top:14px;font-size:15px;color:#3D4A58;font-family:var(--body);font-weight:400;letter-spacing:0;text-transform:none;line-height:1.5}
.check input{margin-top:5px;accent-color:var(--iron)}

/* numbered steps */
ol.steps{margin-top:10px;counter-reset:s}
ol.steps li{list-style:none;counter-increment:s;padding:18px 0 18px 44px;border-top:1px solid var(--rule);position:relative;color:#4B5867;font-size:17px}
ol.steps li:last-child{border-bottom:1px solid var(--rule)}
ol.steps li:before{content:counter(s);position:absolute;left:0;top:17px;font-family:var(--dsp);font-style:italic;color:var(--brass-t);font-size:19px}
ol.steps b{display:block;font-family:var(--dsp);font-size:19px;color:var(--ink);margin-bottom:2px;font-weight:400}

/* boundaries */
ul.nope li{list-style:none;padding:15px 0;border-top:1px solid var(--rule);font-size:17.5px;color:#3D4A58;display:grid;grid-template-columns:24px 1fr;gap:12px}
ul.nope li:last-child{border-bottom:1px solid var(--rule)}
ul.nope li b{font-family:var(--dsp);color:var(--barrel);font-size:17px}

/* swatches */
.swat{display:flex;margin-top:24px;border:1px solid var(--rule)}
.swat div{flex:1;height:60px;display:flex;align-items:flex-end;padding:7px}
.swat b{font-family:var(--sans);font-size:9px;font-weight:600;letter-spacing:.1em}

/* footer */
footer{background:var(--ink);color:#A9B4C1;padding:58px 0 42px;font-size:15px}
.fgrid{display:grid;grid-template-columns:1.3fr repeat(5,minmax(0,1fr));gap:30px}
footer h5{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#F1EDE3;margin-bottom:13px}
footer a{display:block;text-decoration:none;color:#A9B4C1;padding:5px 0}
footer a:hover{color:#fff}
.seal{font-family:var(--dsp);font-style:italic;font-size:22px;color:var(--brass-l)}
.legal{margin-top:44px;padding-top:26px;border-top:1px solid rgba(233,228,216,.16);font-family:var(--sans);font-size:12px;color:#8E9DAD;line-height:1.75;max-width:76em}
.legal p+p{margin-top:8px}

/* motion */
@media (prefers-reduced-motion: no-preference){
  .rise{opacity:0;transform:translateY(14px);transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1)}
  .rise.in{opacity:1;transform:none}
}

@media(max-width:1000px){
  .plate{grid-template-columns:1fr;justify-items:center;gap:16px}
  nav.main{order:2;flex-wrap:wrap;justify-content:center;gap:18px}
  .right{order:3;justify-content:center}
  .dateline .r{margin-left:0}
}


@media(max-width:920px){
  .marg{grid-template-columns:1fr;gap:28px}
  .marg .rail{border-left:2px solid var(--brass);padding-left:16px}
  .entry{grid-template-columns:26px 1fr;row-gap:8px}
  .entry .amt{grid-column:2;text-align:left}
  .entry .amt em{text-align:left}
  section{padding:52px 0}
  .fgrid{grid-template-columns:1fr 1fr;gap:26px}
  .two{grid-template-columns:1fr}
  .duo{grid-template-columns:1fr;gap:34px}
  ul.nope{columns:1!important}
  table.led th,table.led td{padding:11px 13px;font-size:15px}
  .wrap{padding:0 22px}
  .dateline .wrap{padding:8px 22px}
}

/* ============ site chrome: group bar ============ */
.gbar{background:var(--ink);color:#93A0AF;font-family:var(--sans);font-size:10.5px;font-weight:500;letter-spacing:.17em;text-transform:uppercase}
.gbar .wrap{display:flex;align-items:center;gap:20px;padding:9px 32px;flex-wrap:wrap}
.gbar .grp{color:#F1EDE3;letter-spacing:.2em}
.gbar .grp b{font-weight:600}
.gbar .divs{margin-left:auto;display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.gbar a{text-decoration:none;color:#93A0AF;padding-bottom:2px;border-bottom:1px solid transparent}
.gbar a:hover{color:#fff}
.gbar a.on{color:#fff;border-bottom-color:var(--barrel)}
.gbar span.res{opacity:.42}
.gbar .divs .r{padding-left:18px;border-left:1px solid #33415A}
.gbar .divs .r a{color:#C6D0DB}
header.site.stuck{position:sticky;top:0;z-index:40;box-shadow:0 1px 0 var(--rule2),0 10px 24px -20px rgba(27,36,50,.5)}

/* ============ hero ============ */
.hero{padding:78px 0 66px;background:linear-gradient(180deg,var(--paper2) 0%,var(--paper) 100%)}
.hero h1{max-width:20em}
.hero .lede{margin-top:20px;font-size:20px;line-height:1.6;color:#42505F;max-width:34em}
.hero .cta{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.hero .cta .aside{font-family:var(--sans);font-size:12px;color:var(--soft);letter-spacing:.02em}
.hero .cta .aside a{color:var(--iron);text-decoration:underline;text-decoration-color:var(--rule2);text-underline-offset:2px}
.hero .lede2{margin-top:14px;font-size:18px;line-height:1.6;color:#42505F;max-width:34em}
.dark .lede2,.hero.dk .lede2{color:#C6D0DB}
.heroduo{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:end}

/* ============ stat panels ============ */
.stats{display:grid;gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:34px}
.stats.c2{grid-template-columns:1fr 1fr}
.stats.c3{grid-template-columns:repeat(3,1fr)}
.stats.c4{grid-template-columns:repeat(4,1fr)}
.stats>div{background:var(--paper2);padding:22px 24px 20px;min-width:0}
.stats .v{font-family:var(--dsp);font-size:38px;line-height:1;color:var(--iron);font-variant-numeric:tabular-nums;display:block}
.stats .v.red{color:var(--barrel)}
.stats .l{margin-top:10px;font-size:15.5px;line-height:1.5;color:#3D4A58}
.stats .s{margin-top:11px;font-family:var(--sans);font-size:11px;line-height:1.6;color:var(--soft2);display:block}
.stats .s a{color:var(--iron)}
.stats .u{font-family:var(--sans);font-size:13px;color:var(--soft);margin-left:6px;font-weight:400}

/* ============ generic panel ============ */
.panel{background:var(--paper2);border:1px solid var(--rule);padding:26px 28px;min-width:0}
.panel.brass{border-top:3px solid var(--brass)}
.panel.iron{border-top:3px solid var(--iron)}
.panel.red{border-top:3px solid var(--barrel)}
.panel h3{font-size:21px}
.panel .hd{display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.grid2>*,.grid3>*{min-width:0}

/* ============ bar meters ============ */
.bars{margin-top:26px}
.bars .row{display:grid;grid-template-columns:190px 78px 1fr;gap:16px;align-items:center;padding:9px 0;border-bottom:1px solid var(--rule)}
.bars .row:first-child{border-top:1px solid var(--rule)}
.bars .nm{font-size:16px;color:#3D4A58}
.bars .vv{font-family:var(--sans);font-size:14.5px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--iron);text-align:right}
.bars .tr{height:9px;background:var(--paper3);position:relative;min-width:0}
.bars .tr i{display:block;height:9px;background:var(--iron)}
.bars .row.hi .tr i{background:var(--barrel)}
.bars .row.hi .vv{color:var(--barrel)}
.bars .row.tot{border-bottom:none;padding-top:14px}
.bars .row.tot .nm{font-family:var(--dsp);font-size:19px;color:var(--ink)}
.bars .row.tot .vv{font-size:17px;color:var(--ink)}

/* ============ chip wall (how much there is to track) ============ */
.chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(216px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:28px}
.chips>div{background:var(--paper2);padding:14px 16px;min-width:0}
.chips .t{font-size:16px;color:var(--ink);line-height:1.35}
.chips .c{margin-top:7px;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--soft2)}
.chips .c.w{color:var(--barrel)}
.chips>div:hover{background:var(--paper3)}

/* ============ penalty rows ============ */
.pen{margin-top:28px}
.pen .r{display:grid;grid-template-columns:1fr 150px;gap:24px;align-items:baseline;padding:17px 0;border-top:1px solid var(--rule)}
.pen .r:last-child{border-bottom:1px solid var(--rule)}
.pen .t{font-size:17.5px;color:var(--ink)}
.pen .d{margin-top:5px;font-family:var(--sans);font-size:12.5px;line-height:1.65;color:var(--soft)}
.pen .d a{color:var(--iron)}
.pen .m{font-family:var(--dsp);font-size:27px;color:var(--barrel);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.pen .m em{display:block;font-style:normal;font-family:var(--sans);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--soft2);margin-top:4px}

/* ============ accordion ============ */
.acc{margin-top:26px;border-top:1px solid var(--rule)}
.acc details{border-bottom:1px solid var(--rule)}
.acc summary{cursor:pointer;list-style:none;padding:17px 34px 17px 0;position:relative;font-family:var(--dsp);font-size:20px;color:var(--ink)}
.acc summary::-webkit-details-marker{display:none}
.acc summary:after{content:"+";position:absolute;right:6px;top:15px;font-family:var(--sans);font-size:19px;font-weight:400;color:var(--brass-t);transition:transform .2s}
.acc details[open] summary:after{content:"\2013"}
.acc summary:hover{color:var(--barrel)}
.acc .bd{padding:0 0 20px;color:#42505F;font-size:17px;max-width:44em}
.acc .bd p+p{margin-top:11px}
.acc .bd a{color:var(--iron)}

/* ============ process rail ============ */
.rail-steps{margin-top:34px;position:relative}
.rail-steps:before{content:"";position:absolute;left:19px;top:14px;bottom:14px;width:1px;background:var(--rule2)}
.rail-steps .st{position:relative;padding:0 0 32px 62px;min-width:0}
.rail-steps .st:last-child{padding-bottom:0}
.rail-steps .dot{position:absolute;left:8px;top:2px;width:23px;height:23px;border-radius:50%;background:var(--paper);border:1px solid var(--rule2);display:flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:11px;font-weight:600;color:var(--iron)}
.rail-steps .st.now .dot{background:var(--barrel);border-color:var(--barrel);color:#fff}
.rail-steps .wh{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-t)}
.rail-steps h3{margin-top:5px;font-size:22px}
.rail-steps p{margin-top:7px;color:#42505F;font-size:17px;max-width:40em}
.rail-steps .who{margin-top:9px;font-family:var(--sans);font-size:11.5px;letter-spacing:.06em;color:var(--soft);text-transform:uppercase}
.rail-steps .who b{color:var(--iron);font-weight:600}

/* ============ regional table ============ */
table.led td.st{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--ink);white-space:nowrap}
table.led tr.tx td{background:#F4EDE0}
table.led caption{caption-side:bottom;text-align:left;font-family:var(--sans);font-size:11.5px;line-height:1.7;color:var(--soft);padding-top:12px}
table.led caption a{color:var(--iron)}
.led-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;min-width:0;margin-top:28px}
.led-wrap table.led{margin-top:0}
.duo .led-wrap table.led th,.duo .led-wrap table.led td,
.grid2 .led-wrap table.led th,.grid2 .led-wrap table.led td,
.grid3 .led-wrap table.led th,.grid3 .led-wrap table.led td,
.panel .led-wrap table.led th,.panel .led-wrap table.led td{padding:12px 13px}
@media (min-width:761px) and (max-width:1120px){
  .duo .led-wrap table.led th,.duo .led-wrap table.led td,
  .grid2 .led-wrap table.led th,.grid2 .led-wrap table.led td,
  .grid3 .led-wrap table.led th,.grid3 .led-wrap table.led td,
  .panel .led-wrap table.led th,.panel .led-wrap table.led td{padding:11px 9px;font-size:14.5px}}
@media (min-width:761px) and (max-width:1000px){
  .panel .led-wrap table.led th,.panel .led-wrap table.led td{padding:10px 7px;font-size:13.5px}}
@media (min-width:761px) and (max-width:860px){
  .led-wrap table.led th,.led-wrap table.led td{padding:11px 9px;font-size:14px}}
@media (max-width:760px){.led-wrap table.led{min-width:640px}
  .led-wrap{box-shadow:inset -16px 0 14px -14px rgba(27,36,50,.28)}
  .dark .led-wrap{box-shadow:inset -16px 0 14px -14px rgba(0,0,0,.5)}}

/* ============ pull quote ============ */
.pull{margin:34px 0;padding:0 0 0 26px;border-left:3px solid var(--barrel);font-family:var(--dsp);font-size:clamp(22px,2.5vw,29px);line-height:1.28;color:var(--ink);max-width:28em}
.pull cite{display:block;margin-top:12px;font-family:var(--sans);font-style:normal;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--soft)}

/* ============ in page sub nav ============ */
.subnav{position:sticky;top:0;z-index:30;background:rgba(252,250,245,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule);border-top:1px solid var(--rule)}
.subnav .wrap{display:flex;gap:24px;padding:12px 32px;overflow-x:auto;font-family:var(--sans);font-size:11.5px;font-weight:500;letter-spacing:.13em;text-transform:uppercase}
.subnav a{text-decoration:none;color:var(--soft);white-space:nowrap;padding-bottom:2px;border-bottom:1px solid transparent}
.subnav a:hover{color:var(--ink);border-bottom-color:var(--barrel)}

/* ============ misc ============ */
.src{font-family:var(--sans);font-size:11.5px;line-height:1.7;color:var(--soft);margin-top:14px}
.src a{color:var(--iron)}
.big{font-family:var(--dsp);font-size:clamp(46px,7vw,86px);line-height:.98;color:var(--iron);font-variant-numeric:tabular-nums}
.two-up{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--rule);margin-top:30px}
.two-up>div{padding:26px 28px;min-width:0}
.two-up>div+div{border-left:1px solid var(--rule);background:var(--paper2)}
.two-up h4{font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--soft);margin-bottom:12px}
.two-up ul li{list-style:none;padding:8px 0;border-bottom:1px solid var(--rule);font-size:16.5px;color:#3D4A58;display:grid;grid-template-columns:18px 1fr;gap:9px}
.two-up ul li:last-child{border-bottom:none}
.two-up ul li b{color:var(--brass-t);font-family:var(--dsp)}
.two-up.bad>div+div ul li b{color:var(--barrel)}
.ratio{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:26px;margin-top:30px}
.ratio .v{font-family:var(--dsp);font-size:34px;color:var(--iron);line-height:1}
.ratio .l{margin-top:8px;font-family:var(--sans);font-size:12px;line-height:1.6;color:var(--soft);letter-spacing:.02em}
.tag{display:inline-block;font-family:var(--sans);font-size:9.5px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;padding:3px 8px;border:1px solid var(--rule2);color:var(--soft)}
.tag.live{border-color:var(--barrel);color:var(--barrel)}
.tag.plan{opacity:.7}
.dark .panel{background:#243044;border-color:#33415A;color:#DDE3EA}
.dark .panel h3{color:#FBF8F1}
.dark table.led{background:#243044;border-color:#33415A}
.dark table.led th,.dark table.led td{border-color:#33415A;color:#D6DEE7}
.dark table.led thead th{background:#1F2A3C;color:#95A2B1}
.dark table.led td.n{color:#F0E5CD}
.dark .src{color:#8E9DAD}
.dark .src a{color:#C9A468}

@media(max-width:920px){
  .heroduo{grid-template-columns:1fr;gap:36px}
  .stats.c4{grid-template-columns:1fr 1fr}
  .stats.c3{grid-template-columns:1fr}
  .grid2,.grid3{grid-template-columns:1fr;gap:20px}
  .bars .row{grid-template-columns:1fr 72px;row-gap:6px}
  .bars .tr{grid-column:1 / -1}
  .pen .r{grid-template-columns:1fr;row-gap:8px}
  .pen .m{text-align:left}
  .pen .m em{text-align:left}
  .two-up{grid-template-columns:1fr}
  .two-up>div+div{border-left:none;border-top:1px solid var(--rule)}
  .hero{padding:52px 0 46px}
  .gbar .wrap{padding:9px 22px}
  .gbar .divs{margin-left:0}
  .subnav .wrap{padding:11px 22px;gap:18px}
  .rail-steps .st{padding-left:50px}
}
@media(max-width:520px){
  .stats.c4,.stats.c2{grid-template-columns:1fr}
}

/* step rail: numeric span + note variants */
.rail-steps .st>.n{position:absolute;left:8px;top:2px;width:23px;height:23px;border-radius:50%;background:var(--paper);border:1px solid var(--rule2);display:flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:11px;font-weight:600;color:var(--iron)}
.rail-steps .mt{margin-top:10px;font-family:var(--sans);font-size:11.5px;letter-spacing:.05em;color:var(--soft);text-transform:uppercase}
.dark .rail-steps .st>.n{background:#243044;border-color:#3B4B63;color:#E7DCC2}
.dark .rail-steps p{color:#C6D0DB}
.dark .rail-steps .mt{color:#93A1B1}
.dark .rail-steps:before{background:#3B4B63}

/* desk page header, dark reference variant */
.pagehead.dk{background:var(--ink);border-bottom:1px solid #33415A}
.pagehead.dk h1{color:#F5F1E6}
.pagehead.dk .lede{color:#C6D0DB}
.pagehead.dk .crumb,.pagehead.dk .crumb a{color:#9BA9B8}
.pagehead.dk .crumb a:hover{color:#E7DCC2}
.pagehead .meta{margin-top:26px;display:flex;gap:22px;flex-wrap:wrap;font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--soft)}
.pagehead.dk .meta{color:#8E9DAD}
.pagehead.dk .meta span+span{position:relative}

/* dark section overrides for stats, panels, bars, terms */
.dark .stats{background:#33415A;border-color:#33415A}
.dark .stats>div{background:#243044}
.dark .stats .v{color:#F0E5CD}
.dark .stats .v.red{color:#E5A0A1}
.dark .stats .l{color:#C6D0DB}
.dark .stats .s{color:#8E9DAD}
.dark .stats .s a{color:#C9A468}
.dark .stats .u{color:#9DAAB8}
.dark .bars .nm{color:#C6D0DB}
.dark .bars .vv{color:#F0E5CD}
.dark .bars .row,.dark .bars .row:first-child{border-color:#33415A}
.dark .bars .tr{background:#1F2A3C}
.dark .bars .tr i{background:#7E93AE}
.dark .bars .row.hi .tr i{background:#C9A468}
.dark .bars .row.hi .vv{color:#E7C98A}
.dark .panel .fig{color:#F5F1E6}
.dark .panel .fig small{color:#9DAAB8}
.dark .panel .chg{color:#E7C98A}
.dark .panel .kv{border-color:#33415A}
.dark .panel .kv div{border-color:#33415A;color:#C6D0DB}
.dark .panel .kv div span:last-child{color:#F0E5CD}
.dark .panel p{color:#C6D0DB}
.dark .terms{background:#243044;border-left-color:#C9A468}
.dark .terms p{color:#C6D0DB}
.dark .terms p b{color:#F0E5CD}
.dark .terms a{color:#C9A468}
.dark .terms.iron{border-left-color:#7E93AE}
.dark .caps-q{color:#D8C79B}
.dark .lede{color:#C6D0DB}
.dark .btn.o{border-color:#5A6C86;color:#EFE7D6}
.dark .btn.o:hover{background:#2C3A52;border-color:#C9A468}
.dark .app label{color:#9DAAB8}
.dark .app input.t,.dark .app select{background:#1F2A3C;border-color:#3B4B63;color:#F0E5CD}
.dark .fine{color:#8E9DAD}
.dark .led-wrap table.led caption{color:#8E9DAD}

/* compact mobile masthead */
@media(max-width:760px){
  .plate{grid-template-columns:auto 1fr;grid-template-areas:"mark cta" "nav nav";justify-items:stretch;align-items:center;padding:13px 0 0;gap:10px 12px}
  .mark{grid-area:mark;text-align:left}
  .mark .mo{font-size:21px}
  .mark .hair{display:none}
  .mark .nm{font-size:8.5px;letter-spacing:.2em;margin-top:4px}
  .plate .right{grid-area:cta;justify-self:end;display:flex;justify-content:flex-end}
  nav.main{grid-area:nav;order:0;display:flex;flex-wrap:nowrap;overflow-x:auto;gap:17px;justify-content:flex-start;padding:9px 0 10px;border-top:1px solid var(--rule);-webkit-overflow-scrolling:touch;scrollbar-width:none}
  nav.main::-webkit-scrollbar{display:none}
  nav.main a{white-space:nowrap;font-size:11px;padding-bottom:3px}
  .plate .right .btn{font-size:10.5px;padding:9px 13px}
  .dateline .wrap{gap:12px;padding:7px 22px}
  .dateline .wrap>span:first-child{display:none}
  .gbar span.res{display:none}
  .gbar .wrap{gap:14px}
}
@media(max-width:760px){
  .dateline .r{gap:15px;flex-wrap:nowrap}
  .dateline .r a,.dateline .r span{white-space:nowrap}
  .dateline .r a+a{display:none}
}
@media(max-width:430px){
  .dateline .wrap{padding:7px 16px;gap:10px}
  .dateline .r{gap:10px;flex-wrap:wrap;row-gap:4px}
}

/* index list in a light section */
section:not(.dark) .index a{color:var(--ink);border-bottom-color:var(--rule)}
section:not(.dark) .index a:first-child{border-top-color:var(--rule)}
section:not(.dark) .index small{color:var(--soft)}
section:not(.dark) .index .fl{color:var(--soft2)}
section:not(.dark) .index .fl.live{color:var(--barrel);border-bottom-color:var(--barrel)}

.pagehead.dk .crumb{color:#9DAAB8}
.pagehead.dk .crumb a{color:#C6D0DB}
.dark .rail-steps .wh{color:var(--brass-l)}
.dark .two-up ul li b{color:var(--brass-l)}
.dark .marg .rail .n{color:var(--brass-l)}
.dark .entry .i{color:var(--brass-l)}
.dark table.led tr.tot td{background:#1F2A3C;color:#F5F1E6}
.dark table.led tr.tot td.n{color:#F0E5CD}
.dark table.led tr.tx td{background:#2A3850}

.nope.onDark li{color:#DCE4EC}
.nope.onDark li b{color:#C9A468}

/* ============ responsibility matrix + legal pages ============ */
.led .rl{margin-top:5px;font-family:var(--sans);font-size:11px;line-height:1.5;letter-spacing:.04em;color:var(--soft2);text-transform:none;font-weight:400}
.dark .led .rl{color:#9FB0C4}
.legal-body{max-width:760px}
.lgs{padding-top:30px;margin-top:30px;border-top:1px solid var(--rule)}
.lgs:first-child{padding-top:0;margin-top:0;border-top:0}
.lgs h2{font-size:26px;line-height:1.2}
.lgs .sub{margin-top:12px;max-width:none}
.eqgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:30px}
.eqgrid a{display:block;background:var(--paper2);padding:24px 26px 22px;text-decoration:none;transition:background .18s ease}
.eqgrid a:hover{background:#fff}
.eqgrid .h{font-family:var(--dsp);font-size:25px;line-height:1.15;color:var(--ink)}
.eqgrid .m{margin-top:9px;font-family:var(--sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--barrel)}
.eqgrid .p{margin-top:11px;font-size:15.5px;line-height:1.55;color:#42505F}
@media (max-width:920px){.eqgrid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.eqgrid{grid-template-columns:1fr}.lgs h2{font-size:23px}}
@media (min-width:761px) and (max-width:1180px){.fgrid{grid-template-columns:1fr 1fr 1fr;gap:26px}}
footer .fgrid a{overflow-wrap:anywhere}
.dark ul.nope li{color:#DCE4EC;border-top-color:#33415A}
.dark ul.nope li:last-child{border-bottom-color:#33415A}
.dark ul.nope li b{color:#C9A468}
.dark ul.nope li b:first-child+b,.dark ul.nope li>b{color:#C9A468}
.dark .panel p[style]{color:#DCE4EC!important}
.dark .panel h3,.dark .panel h3 a{color:#F1EDE3}
.dark .panel p a{color:#C9A468}

/* ---------- normalized spacing + new components (turn 16) ---------- */
.btnrow{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.panel p{font-size:16.5px;line-height:1.75;color:var(--ink-2);margin-top:10px}
.panel p.src{font-size:11.5px;line-height:1.7;color:var(--soft);margin-top:16px}
.panel.night{background:#243044;border-color:#33415A}
.panel.night h3,.panel.night h4{color:#F1EDE3}
.panel.night p{color:#C6D0DB}
.panel.night .src{color:#8E9DAD}
.dark .panel p{color:#C6D0DB}
.dark .panel h3{color:#F1EDE3}
.sub.wide{max-width:52em}
.prose{margin-top:20px;max-width:40em}
.prose p{font-size:17.5px;line-height:1.75;color:var(--ink-2);margin-top:16px}
.prose p:first-child{margin-top:0}
.prose b{font-weight:600;color:var(--ink)}
.q{font-family:var(--serif);font-style:italic;color:var(--iron)}
a.tl{font-family:var(--sans);font-size:14.5px;font-weight:500;color:var(--barrel);text-decoration:none;border-bottom:1px solid var(--rule2);padding-bottom:2px}
a.tl:hover{border-bottom-color:var(--barrel)}
.kv.tight div{padding:8px 0;font-size:15px}
.kv div span:last-child a{color:inherit;text-decoration:none;border-bottom:1px solid var(--rule2)}

/* numbered step cards */
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:32px}
.stp{min-width:0;border-top:2px solid var(--brass);padding-top:18px}
.stp .no{font-family:var(--dsp);font-size:34px;line-height:1;color:var(--brass-t)}
.stp h3{font-family:var(--dsp);font-size:20px;line-height:1.2;margin-top:10px;color:var(--ink)}
.stp p{font-size:15.5px;line-height:1.7;color:var(--ink-2);margin-top:10px}
.dark .stp{border-top-color:var(--brass-l)}
.dark .stp .no{color:var(--brass-l)}
.dark .stp h3{color:#F1EDE3}
.dark .stp p{color:#AEB9C6}

/* keep/take table verdict cells */
.led td.yy,.led td.nn{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.led td.yy{color:#2E6B45}
.led td.nn{color:var(--barrel)}
.dark .led td.yy{color:#7FC79B}
.dark .led td.nn{color:#E08D8E}

/* per-row source cell */
.led td.s{font-family:var(--sans);font-size:12px;white-space:nowrap}
.led td.s a{color:var(--soft);text-decoration:none;border-bottom:1px solid var(--rule2)}
.led td.s a:hover{color:var(--barrel);border-bottom-color:var(--barrel)}
.dark .led td.s a{color:#9FB0C0;border-bottom-color:#3B4A61}
.dark .led td.s a:hover{color:var(--brass-l);border-bottom-color:var(--brass-l)}

/* linked key-value table inside panels */
table.kvl{width:100%;border-collapse:collapse;margin-top:18px}
table.kvl td{padding:9px 0;border-bottom:1px solid var(--rule);font-size:15px;vertical-align:baseline}
table.kvl tr:first-child td{border-top:1px solid var(--rule)}
table.kvl td.n{font-family:var(--sans);font-weight:600;font-size:14px;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
table.kvl td.s{font-family:var(--sans);font-size:11.5px;padding-left:14px;white-space:nowrap}
table.kvl td.s a{color:var(--soft);text-decoration:none;border-bottom:1px solid var(--rule2)}
table.kvl td.s a:hover{color:var(--barrel);border-bottom-color:var(--barrel)}
.night table.kvl td,.dark table.kvl td{border-color:#33415A;color:#C6D0DB}
.night table.kvl tr:first-child td,.dark table.kvl tr:first-child td{border-top-color:#33415A}
.night table.kvl td.s a,.dark table.kvl td.s a{color:#9FB0C0;border-bottom-color:#3B4A61}
.night table.kvl td.s a:hover,.dark table.kvl td.s a:hover{color:var(--brass-l);border-bottom-color:var(--brass-l)}

/* affirmative list, mirror of .nope */
ul.yep li{list-style:none;padding:15px 0;border-top:1px solid var(--rule);font-size:17.5px;color:#3D4A58;display:grid;grid-template-columns:24px 1fr;gap:12px}
ul.yep li:last-child{border-bottom:1px solid var(--rule)}
ul.yep li b{font-family:var(--dsp);color:#2E6B45;font-size:17px}
.dark ul.yep li{color:#DCE4EC;border-top-color:#33415A}
.dark ul.yep li:last-child{border-bottom-color:#33415A}
.dark ul.yep li b{color:#7FC79B}
.grid2.tt{margin-top:0}
.grid2.tt .panel h3{font-size:19px}

/* light-surface index list */
.index.bare a{border-color:var(--rule);color:var(--ink)}
.index.bare a:first-child{border-top-color:var(--rule)}
.index.bare small{color:var(--soft)}
.index.bare a:hover .tt{text-decoration-color:var(--barrel)}

@media (max-width:1000px){.steps{grid-template-columns:1fr 1fr;gap:26px}}
@media (max-width:600px){.steps{grid-template-columns:1fr;gap:22px}.stp{padding-top:14px}.stp .no{font-size:28px}}

/* clickable citations inside rule lines and data cells */
.led .rl a{color:inherit;text-decoration:none;border-bottom:1px solid var(--rule2)}
.led .rl a:hover{color:var(--barrel);border-bottom-color:var(--barrel)}
.dark .led .rl a,.rise.dark .led .rl a{border-bottom-color:#3B4A61}
.dark .led .rl a:hover,.rise.dark .led .rl a:hover{color:var(--brass-l);border-bottom-color:var(--brass-l)}
.led td a{color:var(--iron);text-decoration:none;border-bottom:1px solid var(--rule2)}
.led td a:hover{color:var(--barrel);border-bottom-color:var(--barrel)}
.dark .led td a,.rise.dark .led td a{color:#9FC0DE;border-bottom-color:#3B4A61}
.dark .led td a:hover,.rise.dark .led td a:hover{color:var(--brass-l);border-bottom-color:var(--brass-l)}
