/* ─────────────────────────────  TOKENS  ───────────────────────────── */
:root{
  /* light (default) */
  --bg:#EEF1F4;
  --surface:#FFFFFF;
  --surface-2:#E3E8EE;
  --text:#0B1B2B;
  --text-2:#4E6072;
  --text-3:#77899A;
  --rule:#C9D4DE;
  --rule-soft:#DCE3EA;

  /* constant dark bands */
  --ink:#08192A;
  --ink-2:#0E2739;
  --on-ink:#E8EEF3;
  --on-ink-2:#8FA5B7;
  --on-ink-rule:#1C3B55;

  --sea:#0F4C75;
  --brass:#A6672A;
  --brass-ink:#D9A05B;

  --tech:#20618D;
  --energy:#A6672A;
  --travel:#166254;
  --auto:#97303F;
  --estate:#5B3E8C;

  --shadow:0 1px 0 rgba(11,27,43,.05), 0 12px 32px -20px rgba(11,27,43,.45);

  --gutter:clamp(20px,5vw,64px);
  --maxw:1240px;

  --f-display:"Archivo","Helvetica Neue",Arial,sans-serif;
  --f-body:"Newsreader",Georgia,"Times New Roman",serif;
  --f-mono:"IBM Plex Mono","SFMono-Regular",Consolas,monospace;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#08192A;
    --surface:#0E2436;
    --surface-2:#143047;
    --text:#E9EFF4;
    --text-2:#9AAEBF;
    --text-3:#7089A0;
    --rule:#1D3A52;
    --rule-soft:#152C40;

    --ink:#040E18;
    --ink-2:#0C2134;
    --on-ink:#E9EFF4;
    --on-ink-2:#8FA5B7;
    --on-ink-rule:#1A374F;

    --sea:#5AA3D6;
    --brass:#D9A05B;
    --brass-ink:#D9A05B;

    --tech:#63AEDD;
    --energy:#D9A05B;
    --travel:#4FBFA5;
    --auto:#E88397;
    --estate:#B49AE0;

    --shadow:0 1px 0 rgba(0,0,0,.4), 0 18px 40px -24px rgba(0,0,0,.8);
  }
}
:root[data-theme="dark"]{
  --bg:#08192A;
  --surface:#0E2436;
  --surface-2:#143047;
  --text:#E9EFF4;
  --text-2:#9AAEBF;
  --text-3:#7089A0;
  --rule:#1D3A52;
  --rule-soft:#152C40;

  --ink:#040E18;
  --ink-2:#0C2134;
  --on-ink:#E9EFF4;
  --on-ink-2:#8FA5B7;
  --on-ink-rule:#1A374F;

  --sea:#5AA3D6;
  --brass:#D9A05B;
  --brass-ink:#D9A05B;

  --tech:#63AEDD;
  --energy:#D9A05B;
  --travel:#4FBFA5;
  --auto:#E88397;
  --estate:#B49AE0;

  --shadow:0 1px 0 rgba(0,0,0,.4), 0 18px 40px -24px rgba(0,0,0,.8);
}

/* ─────────────────────────────  BASE  ───────────────────────────── */
*,*::before,*::after{box-sizing:border-box;}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--f-body);
  font-size:17px;
  line-height:1.6;
  font-optical-sizing:auto;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{font-family:var(--f-display);margin:0;text-wrap:balance;line-height:1.05;font-weight:700;}
p{margin:0;}
a{color:inherit;}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:2px;}
img,canvas,svg{max-width:100%;display:block;}

.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);}

.eyebrow{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--text-3);
  margin:0;
}
.band .eyebrow{color:var(--on-ink-2);}

.rule{height:1px;background:var(--rule);border:0;margin:0;}

/* reveal */
.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 (prefers-reduced-motion:reduce){
  .rise{opacity:1;transform:none;transition:none;}
  *{animation-duration:.001ms !important;transition-duration:.001ms !important;}
}

/* ─────────────────────────────  MASTHEAD  ───────────────────────────── */
.masthead{
  position:sticky;top:0;z-index:50;
  background:color-mix(in srgb,var(--ink) 88%,transparent);
  backdrop-filter:saturate(1.4) blur(14px);
  border-bottom:1px solid var(--on-ink-rule);
  color:var(--on-ink);
}
.masthead .wrap{display:flex;align-items:center;gap:28px;height:66px;}
.mark{display:flex;align-items:center;gap:11px;text-decoration:none;flex:0 0 auto;}
.mark svg{width:26px;height:26px;flex:0 0 auto;}
.mark .wordmark{
  font-family:var(--f-display);
  font-variation-settings:"wdth" 118,"wght" 700;
  font-size:15px;letter-spacing:.06em;text-transform:uppercase;line-height:1;
  color:var(--on-ink);
}
.mark .wordmark span{color:var(--brass-ink);}
.nav{display:flex;gap:26px;margin-left:auto;align-items:center;}
.nav a{
  font-family:var(--f-display);font-weight:500;font-size:13.5px;
  letter-spacing:.03em;text-decoration:none;color:var(--on-ink-2);
  padding:6px 0;border-bottom:1px solid transparent;transition:color .2s,border-color .2s;
}
.nav a:hover{color:var(--on-ink);border-bottom-color:var(--brass-ink);}
.ir{
  font-family:var(--f-display);font-weight:600;font-size:13.5px;letter-spacing:.03em;
  text-decoration:none;color:var(--ink);background:var(--brass-ink);
  padding:8px 15px;border-radius:2px;white-space:nowrap;transition:filter .2s;
}
.ir:hover{color:var(--ink);filter:brightness(1.09);}
@media (max-width:560px){.ir{display:none;}}

/* ─────────────────────────────  HERO  ───────────────────────────── */
.hero{position:relative;background:var(--ink);color:var(--on-ink);overflow:hidden;isolation:isolate;}
#seismic{position:absolute;inset:0;width:100%;height:100%;z-index:0;opacity:.85;}
.hero::after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,color-mix(in srgb,var(--ink) 55%,transparent) 0%,transparent 32%,color-mix(in srgb,var(--ink) 78%,transparent) 92%);
}
.hero .wrap{position:relative;z-index:2;padding-block:clamp(72px,13vh,132px) clamp(54px,8vh,92px);}
.hero-tag{display:flex;gap:14px;align-items:center;flex-wrap:wrap;color:var(--on-ink-2);}
.hero-tag .dot{width:5px;height:5px;background:var(--brass-ink);border-radius:50%;}
h1.hero-h{
  font-variation-settings:"wdth" 108,"wght" 700;
  font-size:clamp(40px,7.4vw,92px);
  letter-spacing:-.02em;line-height:.97;
  margin:26px 0 0;max-width:15ch;
}
h1.hero-h em{font-style:normal;color:var(--brass-ink);}
.hero-lede{
  margin-top:26px;max-width:56ch;
  font-size:clamp(17px,1.65vw,20px);line-height:1.62;color:var(--on-ink);
  opacity:.86;font-weight:300;
}
.hero-cta{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap;}
.btn{
  font-family:var(--f-display);font-weight:600;font-size:14px;letter-spacing:.03em;
  padding:13px 22px;text-decoration:none;border-radius:2px;
  display:inline-flex;align-items:center;gap:10px;transition:transform .2s,background .2s,border-color .2s;
}
.btn-primary{background:var(--brass-ink);color:#08192A;}
.btn-primary:hover{transform:translateY(-2px);}
.btn-ghost{border:1px solid var(--on-ink-rule);color:var(--on-ink);}
.btn-ghost:hover{border-color:var(--brass-ink);transform:translateY(-2px);}

/* hero ledger strip */
.rail{
  position:relative;z-index:2;margin-top:clamp(40px,6vh,66px);
  display:grid;gap:0;max-width:620px;
}
.rail div{
  display:grid;grid-template-columns:minmax(0,1fr) auto;
  align-items:baseline;column-gap:24px;
  padding:11px 0;border-bottom:1px solid var(--on-ink-rule);
}
.rail div:first-child{border-top:1px solid var(--on-ink-rule);}
.rail dt{
  font-family:var(--f-mono);font-size:10.5px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--on-ink-2);
}
.rail dd{
  justify-self:end;margin:0;
  font-family:var(--f-display);font-variation-settings:"wdth" 100,"wght" 600;
  font-size:clamp(19px,2.1vw,25px);letter-spacing:-.015em;
  font-variant-numeric:tabular-nums;color:var(--on-ink);
}
.rail dd small{font-size:.5em;font-weight:500;color:var(--on-ink-2);letter-spacing:.02em;margin-left:5px;}
}
@media (max-width:760px){
  .strip{grid-template-columns:repeat(2,1fr);}
  .strip div:nth-child(2n){border-right:0;}
  .strip div:nth-child(-n+2){border-bottom:1px solid var(--on-ink-rule);}
}

/* ─────────────────────────────  SECTION SHELL  ───────────────────────────── */
.sec{padding-block:clamp(72px,10vw,120px);}
.sec-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,5vw,72px);align-items:end;}
.sec-head h2{
  font-variation-settings:"wdth" 102,"wght" 700;
  font-size:clamp(28px,4vw,46px);letter-spacing:-.015em;margin-top:14px;
}
.sec-head p{color:var(--text-2);font-size:17px;line-height:1.65;}
@media (max-width:860px){.sec-head{grid-template-columns:1fr;align-items:start;}}

/* ─────────────────────────────  VERTICALS  ───────────────────────────── */
.stack{margin-top:clamp(34px,4vw,48px);border-top:1px solid var(--rule);}
.vrow{border-bottom:1px solid var(--rule);}
.vrow h3{margin:0;font-size:inherit;font-weight:inherit;}
.vtog{
  width:100%;appearance:none;background:none;border:0;cursor:pointer;text-align:left;
  display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;
  gap:clamp(14px,2.6vw,34px);align-items:baseline;
  padding:clamp(20px,2.5vw,28px) 0;font-family:var(--f-display);color:var(--text-3);
}
.vtog .code{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;opacity:.75;transition:color .2s,opacity .2s;}
.vname{
  font-variation-settings:"wdth" 100,"wght" 600;
  font-size:clamp(21px,3vw,32px);letter-spacing:-.018em;color:var(--text);transition:color .2s;
}
.vco{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);justify-self:end;transition:color .2s;}
.vtog:hover .vname{color:var(--sec);}
.vtog[aria-expanded="true"] .code,.vtog[aria-expanded="true"] .vco{color:var(--sec);opacity:1;}
.vic{position:relative;width:15px;height:15px;justify-self:end;align-self:center;}
.vic::before,.vic::after{content:"";position:absolute;background:var(--sec);transition:transform .3s ease,opacity .3s ease;}
.vic::before{top:6.5px;left:0;width:15px;height:2px;}
.vic::after{left:6.5px;top:0;width:2px;height:15px;}
.vtog[aria-expanded="true"] .vic::after{transform:scaleY(0);opacity:0;}

.vdet{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.4,0,.2,1);}
.vdet.open{grid-template-rows:1fr;}
.vwrap{overflow:hidden;min-height:0;}
.vin{
  padding:2px 0 clamp(30px,3.6vw,46px);
  border-left:2px solid var(--sec);padding-left:clamp(18px,2.4vw,32px);
  display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(24px,4vw,56px);
}
.vlead{
  font-family:var(--f-display);font-variation-settings:"wdth" 100,"wght" 700;
  font-size:clamp(20px,2.4vw,27px);letter-spacing:-.015em;line-height:1.22;color:var(--text);
}
.blurb{margin-top:16px;color:var(--text-2);max-width:52ch;}
.caps{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule-soft);counter-reset:cap;}
.caps li{
  counter-increment:cap;
  display:grid;grid-template-columns:auto minmax(0,1fr);
  column-gap:clamp(14px,1.5vw,18px);
  padding:15px 0;border-bottom:1px solid var(--rule-soft);
}
.caps li::before{
  content:counter(cap,decimal-leading-zero);
  grid-column:1;grid-row:1 / span 2;
  font-family:var(--f-mono);font-size:10.5px;letter-spacing:.02em;
  line-height:22px;color:var(--sec);opacity:.9;
  transform:translateY(1px);
  font-variant-numeric:tabular-nums;transition:opacity .2s;
}
.caps li:hover::before{opacity:1;}
.caps li b{
  grid-column:2;grid-row:1;
  font-family:var(--f-display);font-weight:600;font-size:15px;
  line-height:22px;letter-spacing:-.005em;color:var(--text);
}
.caps li span{
  grid-column:2;grid-row:2;
  margin-top:3px;color:var(--text-2);font-size:14.5px;line-height:1.55;
}
.caps li a{color:var(--brass-ink);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--brass-ink) 38%,transparent);}
.caps li a:hover{border-bottom-color:var(--brass-ink);}

.plug{
  display:grid;margin-top:clamp(22px,2.6vw,30px);padding:18px 20px;
  text-decoration:none;border:1px solid var(--rule);border-left:3px solid var(--sec);
  background:color-mix(in srgb,var(--sec) 5%,var(--surface));border-radius:3px;
  transition:background .2s,border-color .2s;
}
.plug:hover{background:color-mix(in srgb,var(--sec) 10%,var(--surface));border-color:color-mix(in srgb,var(--sec) 35%,var(--rule));}
.plug-k{font-family:var(--f-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--sec);}
.plug-n{margin-top:9px;font-family:var(--f-display);font-variation-settings:"wdth" 100,"wght" 700;font-size:clamp(19px,2vw,23px);letter-spacing:-.015em;color:var(--text);}
.plug-d{margin-top:7px;font-size:14.5px;line-height:1.55;color:var(--text-2);}
.plug-u{margin-top:13px;font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;color:var(--brass-ink);display:flex;align-items:center;gap:8px;}
.plug:hover .plug-u span{transform:translateX(3px);}
.plug-u span{transition:transform .2s;}

.mets{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:auto;border-top:1px solid var(--rule-soft);margin:clamp(26px,3vw,38px) 0 0;}
.mets div{display:grid;grid-template-rows:subgrid;grid-row:span 2;align-content:start;padding:16px 18px 14px 0;border-right:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft);}
.mets div:nth-child(2n){border-right:0;padding-right:0;}
.mets div:nth-last-child(-n+2){border-bottom:0;}
.mets dt{font-family:var(--f-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-3);line-height:1.5;}
.mets dd{margin:9px 0 0;font-family:var(--f-display);font-variation-settings:"wdth" 100,"wght" 600;font-size:clamp(19px,2vw,25px);letter-spacing:-.02em;color:var(--text);}
.mets dd small{font-size:.48em;font-weight:500;color:var(--text-3);letter-spacing:.02em;margin-left:4px;}
@media (max-width:920px){.vin{grid-template-columns:1fr;}}
@media (max-width:560px){
  .vco{display:none;}
  .vtog{grid-template-columns:auto minmax(0,1fr) auto;}
  .mets{grid-template-columns:1fr;}
  .mets div{border-right:0;padding-right:0;border-bottom:1px solid var(--rule-soft);}
  .mets div:last-child{border-bottom:0;}
}
@media (prefers-reduced-motion:reduce){.vdet{transition:none;}}

/* ─────────────────────────────  DARK BAND  ───────────────────────────── */
.band{background:var(--ink);color:var(--on-ink);}
.band h2{color:var(--on-ink);}
.band .sec-head p{color:var(--on-ink-2);}

.figs{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--on-ink-rule);margin-top:52px;border:1px solid var(--on-ink-rule);}
.fig{background:var(--ink);padding:30px 26px 34px;}
.fig .k{
  font-family:var(--f-display);font-variation-settings:"wdth" 100,"wght" 600;
  font-size:clamp(30px,4.4vw,52px);letter-spacing:-.02em;line-height:1;
  font-variant-numeric:tabular-nums;color:var(--on-ink);
}
.fig .k .unit{font-size:.42em;color:var(--brass-ink);margin-left:6px;letter-spacing:.02em;}
.fig .l{margin-top:14px;font-size:14.5px;color:var(--on-ink-2);line-height:1.5;}
.fig .n{margin-top:10px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--brass-ink);opacity:.85;}
@media (max-width:820px){.figs{grid-template-columns:repeat(2,1fr);}}
@media (max-width:520px){.figs{grid-template-columns:1fr;}}

/* footprint */
.footprint{margin-top:56px;border-top:1px solid var(--on-ink-rule);padding-top:34px;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(20px,4vw,56px);}
.footprint h3{font-size:20px;font-variation-settings:"wdth" 100,"wght" 600;color:var(--on-ink);}
.footprint p{margin-top:12px;color:var(--on-ink-2);font-size:15.5px;}
.geos{display:flex;flex-wrap:wrap;gap:8px;align-content:start;}
.geos span{
  font-family:var(--f-mono);font-size:11.5px;letter-spacing:.06em;
  border:1px solid var(--on-ink-rule);color:var(--on-ink-2);
  padding:7px 11px;border-radius:2px;transition:border-color .2s,color .2s;
}
.geos span:hover{border-color:var(--brass-ink);color:var(--on-ink);}
.geos span.hq{border-color:var(--brass-ink);color:var(--brass-ink);}
@media (max-width:760px){.footprint{grid-template-columns:1fr;}}

/* ─────────────────────────────  COMMITMENTS  ───────────────────────────── */
.pledges{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,2.4vw,32px);margin-top:52px;}
.pledge{border-top:2px solid var(--sea);padding-top:20px;}
.pledge:nth-child(2){border-color:var(--tech);}
.pledge:nth-child(3){border-color:var(--energy);}
.pledge:nth-child(4){border-color:var(--travel);}
.pledge .yr{font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;color:var(--text-3);}
.pledge h4{margin-top:12px;font-size:19px;font-variation-settings:"wdth" 100,"wght" 600;letter-spacing:-.01em;}
.pledge p{margin-top:10px;font-size:15px;color:var(--text-2);line-height:1.55;}
@media (max-width:900px){.pledges{grid-template-columns:repeat(2,1fr);}}
@media (max-width:520px){.pledges{grid-template-columns:1fr;}}

/* ─────────────────────────────  CHAIRPERSON  ───────────────────────────── */
.note{background:var(--ink-2);color:var(--on-ink);}
.note .wrap{padding-block:clamp(64px,9vw,104px);}
.note blockquote{
  margin:0;max-width:24ch;font-family:var(--f-display);
  font-variation-settings:"wdth" 100,"wght" 500;
  font-size:clamp(26px,3.8vw,44px);line-height:1.16;letter-spacing:-.02em;
  text-wrap:balance;
}
.note blockquote em{font-style:normal;color:var(--brass-ink);}
.note-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,72px);align-items:end;}
.note-body p{color:var(--on-ink-2);font-size:16.5px;line-height:1.7;}
.note-body p + p{margin-top:16px;}
.sig{margin-top:28px;padding-top:20px;border-top:1px solid var(--on-ink-rule);}
.sig b{font-family:var(--f-display);font-weight:600;font-size:15px;color:var(--on-ink);display:block;}
.sig span{font-family:var(--f-mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--on-ink-2);}
@media (max-width:860px){.note-grid{grid-template-columns:1fr;align-items:start;}}

/* ─────────────────────────────  NEWSROOM  ───────────────────────────── */
.news{list-style:none;padding:0;margin:48px 0 0;border-top:1px solid var(--rule);}
.news li{border-bottom:1px solid var(--rule);}
.news a{
  display:grid;grid-template-columns:130px 108px minmax(0,1fr) auto;
  gap:clamp(14px,3vw,40px);align-items:baseline;
  padding:26px 0;text-decoration:none;transition:padding-left .25s ease;
}
.news a:hover{padding-left:12px;}
.news .date{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.08em;color:var(--text-3);white-space:nowrap;}
.news .tag{font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--sec);white-space:nowrap;}
.news h4{font-variation-settings:"wdth" 100,"wght" 600;font-size:clamp(17px,2.1vw,22px);letter-spacing:-.01em;line-height:1.25;}
.news .arrow{color:var(--text-3);font-family:var(--f-mono);font-size:15px;transition:color .2s,transform .2s;}
.news a:hover .arrow{color:var(--brass);}
@media (max-width:860px){
  .news a{grid-template-columns:1fr auto;grid-template-areas:"tag arrow" "title title" "date date";row-gap:8px;}
  .news .tag{grid-area:tag;} .news .arrow{grid-area:arrow;} .news h4{grid-area:title;} .news .date{grid-area:date;}
}

/* ─────────────────────────────  FOOTER  ───────────────────────────── */
footer{background:var(--ink);color:var(--on-ink-2);padding-block:clamp(56px,7vw,80px) 34px;}
.f-top{display:grid;grid-template-columns:minmax(0,4fr) repeat(3,minmax(0,2fr));gap:clamp(24px,4vw,48px);}
.f-brand .wordmark{
  font-family:var(--f-display);font-variation-settings:"wdth" 118,"wght" 700;
  font-size:17px;letter-spacing:.06em;text-transform:uppercase;color:var(--on-ink);
}
.f-brand .wordmark span{color:var(--brass-ink);}
.f-brand address{font-style:normal;margin-top:20px;font-size:14.5px;line-height:1.65;max-width:34ch;}
.f-brand address a{color:var(--brass-ink);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--brass-ink) 38%,transparent);}
.f-brand address a:hover{border-bottom-color:var(--brass-ink);}
.f-col h5{
  font-family:var(--f-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--on-ink);margin:0 0 16px;font-weight:500;
}
.f-col ul{list-style:none;padding:0;margin:0;display:grid;gap:11px;}
.f-col a{font-family:var(--f-display);font-size:14px;font-weight:400;text-decoration:none;color:var(--on-ink-2);transition:color .2s;}
.f-col a:hover{color:var(--brass-ink);}
.f-bot{
  margin-top:clamp(40px,6vw,64px);padding-top:24px;border-top:1px solid var(--on-ink-rule);
  display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;
  font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;
}
.f-bot p{color:var(--text-3);}
@media (max-width:860px){.f-top{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.f-top{grid-template-columns:1fr;}}

/* ─────────────────────────────  MEGA MENU  ───────────────────────────── */
.mast-actions{display:flex;align-items:center;gap:clamp(16px,2vw,28px);margin-left:auto;}
.menu-btn{
  appearance:none;background:none;border:0;cursor:pointer;
  display:inline-flex;align-items:center;gap:11px;padding:8px 0;
  font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--on-ink-2);transition:color .2s;
}
.menu-btn:hover{color:var(--on-ink);}
.menu-ico{position:relative;display:block;width:19px;height:11px;}
.menu-ico i{position:absolute;left:0;right:0;height:1.5px;background:currentColor;transition:transform .32s cubic-bezier(.4,0,.2,1),opacity .2s;}
.menu-ico i:first-child{top:0;}
.menu-ico i:last-child{bottom:0;}
.menu-btn[aria-expanded="true"] .menu-ico i:first-child{transform:translateY(4.75px) rotate(45deg);}
.menu-btn[aria-expanded="true"] .menu-ico i:last-child{transform:translateY(-4.75px) rotate(-45deg);}

.mega-scrim{
  position:fixed;inset:0;z-index:38;background:rgba(6,12,22,.55);
  opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s;
}
.mega-scrim.open{opacity:1;visibility:visible;}
.mega{
  position:fixed;left:0;right:0;top:0;z-index:40;
  background:var(--ink);color:var(--on-ink);
  border-bottom:1px solid var(--on-ink-rule);
  height:52vh;min-height:412px;max-height:660px;
  display:flex;align-items:flex-end;overflow:auto;
  transform:translateY(-101%);transition:transform .46s cubic-bezier(.4,0,.2,1);
}
.mega.open{transform:translateY(0);}
.mega-in{
  width:100%;padding-top:104px;padding-bottom:clamp(26px,4vh,50px);
  display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr) minmax(0,4fr);
  gap:clamp(22px,4vw,56px);align-items:start;
}
.mega .eyebrow{color:var(--on-ink-2);}
.mega-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:2px;}
.mega-list a{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:baseline;
  text-decoration:none;color:var(--on-ink);padding:7px 0;
  font-family:var(--f-display);font-variation-settings:"wdth" 100,"wght" 600;
  font-size:clamp(21px,2.6vw,34px);letter-spacing:-.018em;line-height:1.16;
  transition:color .2s;
}
.mega-list a .mega-code{
  font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;
  font-variation-settings:normal;color:var(--sec,var(--brass-ink));opacity:.85;
}
.mega-list a:hover{color:var(--brass-ink);}
.mega-list.sm a{font-size:clamp(15px,1.5vw,18px);grid-template-columns:1fr;font-variation-settings:"wdth" 100,"wght" 500;padding:6px 0;}
.mega-meta{font-size:14px;line-height:1.7;color:var(--on-ink-2);}
.mega-meta a{color:var(--brass-ink);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--brass-ink) 38%,transparent);}
.mega-meta .mm-h{display:block;color:var(--on-ink);font-family:var(--f-display);font-weight:600;font-size:15px;margin-bottom:10px;}
body.menu-open{overflow:hidden;}
@media (max-width:900px){
  .mega{height:auto;max-height:88vh;min-height:0;}
  .mega-in{grid-template-columns:1fr;padding-top:92px;gap:26px;}
  .mega-meta{display:none;}
}
@media (prefers-reduced-motion:reduce){
  .mega,.mega-scrim,.menu-ico i{transition:none;}
}

/* ─────────────────────────────  SUBPAGES  ───────────────────────────── */
.page-hero{background:var(--ink);color:var(--on-ink);position:relative;}
.page-hero .wrap{padding-block:clamp(92px,13vh,146px) clamp(44px,7vh,78px);}
.crumb{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--on-ink-2);margin-bottom:20px;display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.crumb a{color:var(--on-ink-2);text-decoration:none;border-bottom:1px solid transparent;}
.crumb a:hover{color:var(--on-ink);border-bottom-color:var(--brass-ink);}
.crumb .sep{opacity:.45;}
.page-hero h1{
  font-variation-settings:"wdth" 104,"wght" 700;
  font-size:clamp(34px,5.6vw,66px);letter-spacing:-.022em;line-height:1.03;max-width:17ch;color:var(--on-ink);
}
.page-hero h1 em{font-style:normal;color:var(--sec,var(--brass-ink));}
.page-hero .lede{margin-top:22px;max-width:58ch;color:var(--on-ink-2);font-size:clamp(16px,1.55vw,19px);line-height:1.62;}
.page-hero .strip-min{margin-top:clamp(34px,5vh,54px);display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--on-ink-rule);}
.page-hero .strip-min div{padding:22px 22px 26px 0;border-right:1px solid var(--on-ink-rule);}
.page-hero .strip-min div:last-child{padding-right:0;}
.page-hero .strip-min div:last-child{border-right:0;}
.page-hero .strip-min dt{font-family:var(--f-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--on-ink-2);line-height:1.5;}
.page-hero .strip-min dd{margin:11px 0 0;font-family:var(--f-display);font-variation-settings:"wdth" 100,"wght" 600;font-size:clamp(19px,2vw,25px);color:var(--on-ink);letter-spacing:-.015em;}
.page-hero .strip-min dd small{font-size:.5em;font-weight:500;color:var(--on-ink-2);margin-left:4px;}
@media (max-width:760px){
  .page-hero .strip-min{grid-template-columns:repeat(2,1fr);}
  .page-hero .strip-min div:nth-child(2){border-right:0;padding-right:0;}
  .page-hero .strip-min div:nth-child(-n+2){border-bottom:1px solid var(--on-ink-rule);}
}

.prose{max-width:70ch;}
.prose h2{font-size:clamp(23px,2.9vw,33px);letter-spacing:-.018em;margin-top:clamp(38px,4.6vw,60px);line-height:1.12;}
.prose h2:first-child{margin-top:0;}
.prose h3{font-family:var(--f-display);font-size:18px;font-variation-settings:"wdth" 100,"wght" 600;letter-spacing:-.01em;margin-top:30px;color:var(--text);}
.prose p{margin-top:15px;color:var(--text-2);line-height:1.7;}
.prose p.big{font-size:clamp(17px,1.7vw,20px);color:var(--text);line-height:1.6;}
.prose ul{margin:16px 0 0;padding:0;list-style:none;}
.prose ul li{position:relative;padding-left:22px;margin-top:11px;color:var(--text-2);line-height:1.62;}
.prose ul li::before{content:"";position:absolute;left:0;top:.66em;width:6px;height:6px;border-radius:1px;background:var(--sec,var(--brass-ink));}
.prose strong{color:var(--text);font-weight:600;}
.prose a{color:var(--brass-ink);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--brass-ink) 38%,transparent);}
.prose a:hover{border-bottom-color:var(--brass-ink);}

.faq{border-top:1px solid var(--rule);margin-top:clamp(42px,5vw,66px);}
.faq details{border-bottom:1px solid var(--rule);}
.faq summary{
  cursor:pointer;list-style:none;padding:18px 0;
  font-family:var(--f-display);font-weight:600;font-size:17px;letter-spacing:-.01em;color:var(--text);
  display:flex;justify-content:space-between;gap:24px;align-items:baseline;
}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";font-family:var(--f-mono);font-size:15px;color:var(--sec,var(--brass-ink));}
.faq details[open] summary::after{content:"–";}
.faq details p{padding:0 0 20px;color:var(--text-2);line-height:1.68;max-width:72ch;}

.related{display:grid;grid-template-columns:repeat(auto-fit,minmax(212px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:clamp(20px,3vw,34px);}
.related a{background:var(--bg);padding:22px 20px;text-decoration:none;display:block;transition:background .2s;}
.related a:hover{background:var(--surface);}
.related .rc{font-family:var(--f-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--sec,var(--brass-ink));}
.related .rt{display:block;margin-top:9px;font-family:var(--f-display);font-weight:600;font-size:17px;color:var(--text);letter-spacing:-.012em;}
.related .rd{display:block;margin-top:7px;font-size:13.5px;color:var(--text-2);line-height:1.55;}
.page-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0;}

/* ── hero stats: label row and value row share rows even when a label wraps ── */
.page-hero .strip-min{grid-auto-rows:auto;}
.page-hero .strip-min div{display:grid;grid-template-rows:subgrid;grid-row:span 2;align-content:start;}

/* ─────────────────────────────  SUBPAGE BLOCKS  ───────────────────────────── */
.sub-h{font-size:clamp(23px,2.9vw,33px);letter-spacing:-.018em;}
.qband{background:var(--ink);color:var(--on-ink);}
.qband .wrap{padding-block:clamp(50px,7vw,86px);}
.qband blockquote{
  margin:0;font-family:var(--f-display);font-variation-settings:"wdth" 100,"wght" 600;
  font-size:clamp(23px,3.3vw,40px);line-height:1.17;letter-spacing:-.022em;max-width:23ch;color:var(--on-ink);
}
.qband blockquote em{font-style:normal;color:var(--sec,var(--brass-ink));}
.qband .qmeta{margin-top:22px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--on-ink-2);}

.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(206px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:clamp(20px,3vw,32px);}
.steps > div{background:var(--bg);padding:24px 22px 26px;}
.steps .sn{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.15em;color:var(--sec,var(--brass-ink));}
.steps h3{margin-top:12px;font-family:var(--f-display);font-weight:600;font-size:16.5px;letter-spacing:-.01em;color:var(--text);}
.steps p{margin-top:9px;font-size:14px;color:var(--text-2);line-height:1.6;}

.cta-band{background:var(--ink);color:var(--on-ink);border-top:1px solid var(--on-ink-rule);}
.cta-band .wrap{padding-block:clamp(44px,6vw,74px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(20px,4vw,48px);align-items:end;}
.cta-band h2{font-size:clamp(23px,3.1vw,37px);letter-spacing:-.02em;color:var(--on-ink);max-width:19ch;}
.cta-band p{margin-top:13px;color:var(--on-ink-2);max-width:50ch;font-size:15.5px;line-height:1.6;}
.cta-band .btn-primary{background:var(--brass-ink);color:var(--ink);}
@media (max-width:760px){.cta-band .wrap{grid-template-columns:1fr;align-items:start;}}
