/* ============================================================
   Bearing Pre-Position Validation Read — VC/PE
   Page styles. IC-pack-grade composition.
   Brand discipline: single brand teal #0B3B36. Oxblood #8A1C20
   ONLY in chart/diagram contexts as data semantics (canonical accent).
   ============================================================ */

:root{
  --cream:#FAFAF7; --cream-2:#F1EEE4; --cream-3:#ECE8DB; --paper:#FFFFFF;
  --teal:#0B3B36; --teal-ink:#04201C; --teal-deep:#062722; --teal-2:#0F4A43;
  --ox:#8A1C20; --ox-tint:#B85055;
  --ink:#0B1311; --ink-2:#353B38; --ink-3:rgba(11,59,54,.60);
  --rule-soft:rgba(11,59,54,.10); --rule:rgba(11,59,54,.18); --rule-hard:rgba(11,59,54,.34);
  --on-teal:#FAFAF7; --on-teal-2:rgba(250,250,247,.80); --on-teal-3:rgba(250,250,247,.55);
  --rule-inv:rgba(250,250,247,.16); --rule-inv-2:rgba(250,250,247,.30);
  --sans:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,sans-serif;
  --serif:"Archivo","Söhne",-apple-system,BlinkMacSystemFont,"Helvetica Neue",sans-serif"Iowan Old Style",Georgia,serif;
  --mono:"JetBrains Mono",ui-monospace,Menlo,monospace;
  --max:1320px; --pad:clamp(20px,4vw,64px); --rail:172px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--cream);color:var(--ink-2);font-family:var(--sans);
  font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  font-feature-settings:"kern","liga","ss01";}
::selection{background:var(--teal);color:var(--cream);}
a{color:inherit;text-decoration:none;cursor:pointer;}
button{font:inherit;cursor:pointer;background:none;border:none;color:inherit;}
.mono{font-family:var(--mono);font-feature-settings:"tnum","zero";}
.tnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad);}

/* kicker / eyebrow */
.kick{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--teal);}
.kick .num{color:var(--ink-3);}
.kick.top{padding-top:16px;border-top:2px solid var(--teal);}

/* ===== Masthead ===== */
.topwrap{position:sticky;top:0;z-index:60;}
.mast{background:rgba(250,250,247,.92);
  backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);
  border-bottom:1px solid var(--rule);}
.mast-in{max-width:var(--max);margin:0 auto;padding:0 var(--pad);height:62px;
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;}
.mark{display:inline-flex;align-items:center;gap:11px;}
.mark .glyph{width:22px;height:22px;flex:none;}
.mark .wm{font-family:var(--serif);font-size:18px;letter-spacing:-.01em;color:var(--teal-ink);}
.mark .wm em{font-style:italic;color:var(--ox);}
.mark .sub{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--ink-3);border-left:1px solid var(--rule-hard);padding-left:10px;margin-left:3px;}
.mast-nav{display:flex;justify-content:center;gap:28px;font-family:var(--mono);font-size:11px;
  letter-spacing:.15em;text-transform:uppercase;color:var(--ink-3);}
.mast-cta{background:var(--teal-ink);color:var(--cream);padding:11px 18px;font-family:var(--mono);
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;display:inline-flex;align-items:center;gap:9px;}

/* masthead label strip */
.mastlabel{background:var(--teal-ink);color:var(--on-teal-3);}
.mastlabel-in{max-width:var(--max);margin:0 auto;padding:8px var(--pad);font-family:var(--mono);font-size:10px;
  letter-spacing:.16em;text-transform:uppercase;display:flex;gap:12px;align-items:center;white-space:nowrap;overflow:hidden;}
.mastlabel a{color:var(--ox-tint);}
.mastlabel .sp{opacity:.4;}

/* ===== HERO ===== */
.hero{padding:clamp(46px,7vh,86px) 0 clamp(34px,4vh,52px);position:relative;}
.hero-eye{display:flex;gap:14px;align-items:baseline;flex-wrap:wrap;margin-bottom:30px;font-family:var(--mono);
  font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);}
.hero-eye .b{color:var(--teal-ink);font-weight:600;letter-spacing:.16em;}
.hero h1{font-family:var(--sans);font-weight:700;font-size:clamp(44px,5.4vw,78px);line-height:1.0;
  letter-spacing:-.028em;color:var(--teal-ink);margin:0;max-width:18ch;text-wrap:balance;}
.hero .claim{font-family:var(--serif);font-style:italic;font-weight:400;
  font-size:clamp(28px,3.2vw,48px);line-height:1.08;letter-spacing:-.015em;color:var(--ox);
  margin:14px 0 0;text-wrap:balance;}

/* empirical anchor strip */
.anchor{margin-top:clamp(40px,5vh,64px);border-top:2px solid var(--teal);padding-top:30px;}
.anchor-lbl{font-family:var(--mono);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);
  margin-bottom:6px;}
.anchor-val{font-family:var(--sans);font-weight:700;font-size:clamp(108px,13vw,180px);line-height:.86;
  letter-spacing:-.04em;color:var(--teal-ink);margin:6px 0 2px;}
.anchor-sub{font-family:var(--mono);font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3);}
.anchor hr{height:1px;background:var(--rule);border:0;margin:26px 0;}
.anchor-claim{font-family:var(--serif);font-style:italic;font-size:clamp(20px,2.1vw,27px);line-height:1.25;
  color:var(--ox);margin:0 0 18px;max-width:30ch;letter-spacing:-.01em;}
.anchor-body{font-family:var(--serif);font-size:clamp(16px,1.2vw,18.5px);line-height:1.62;color:var(--ink);
  max-width:74ch;margin:0;}
.anchor-body em{font-style:italic;color:var(--ox);}
.anchor-body strong{font-weight:600;color:var(--teal-ink);}
.anchor-prov{font-family:var(--mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3);
  margin-top:22px;}

/* ===== Section frame ===== */
section.band{padding:clamp(60px,8vh,104px) 0;border-top:1px solid var(--rule);}
.sec-head{display:grid;grid-template-columns:var(--rail) 1fr auto;gap:clamp(24px,3vw,48px);
  align-items:start;margin-bottom:clamp(34px,4.5vh,52px);}
.sec-head h2{font-family:var(--sans);font-weight:700;font-size:clamp(26px,3vw,42px);line-height:1.04;
  letter-spacing:-.022em;color:var(--teal-ink);margin:0;max-width:20ch;text-wrap:balance;}
.sec-head h2 em{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--teal);}
.sec-head .aux{font-family:var(--mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--ink-3);text-align:right;line-height:1.9;}
.sec-head .aux .v{color:var(--teal);}

/* ===== VM1 · 8×6 MEASUREMENT MATRIX ===== */
.mtx-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.mtx{min-width:960px;display:grid;
  grid-template-columns:200px repeat(6,minmax(118px,1fr));
  border:1px solid var(--rule-hard);background:var(--rule);gap:1px;
  font-variant-numeric:tabular-nums;}
.mtx .c{background:var(--cream);padding:11px 12px;min-height:64px;display:flex;flex-direction:column;justify-content:center;}
/* corner + column heads */
.mtx .corner{background:var(--teal-ink);color:var(--on-teal-2);font-family:var(--mono);font-size:10px;
  letter-spacing:.14em;text-transform:uppercase;line-height:1.5;justify-content:flex-end;}
.mtx .corner .big{color:var(--cream);font-size:11px;letter-spacing:.16em;margin-bottom:4px;}
.mtx .colhead{background:var(--teal-deep);color:var(--cream);font-family:var(--mono);font-size:10px;font-weight:500;
  letter-spacing:.11em;text-transform:uppercase;line-height:1.35;cursor:pointer;min-height:78px;}
.mtx .colhead .cnum{color:var(--ox-tint);letter-spacing:.16em;}
.mtx .colhead .cname{color:var(--cream);text-transform:none;letter-spacing:.01em;font-size:11px;margin:4px 0 5px;line-height:1.25;}
.mtx .colhead .cstate{color:var(--on-teal-3);font-size:9px;letter-spacing:.1em;}
.mtx .colhead.amberhead .cnum{color:var(--ox-tint);}
/* row heads */
.mtx .rowhead{background:var(--cream-2);font-family:var(--serif);font-size:16px;color:var(--teal-ink);line-height:1.18;
  cursor:pointer;}
.mtx .rowhead .rnum{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);display:block;margin-bottom:3px;}
/* data cells */
.mtx .cell{cursor:pointer;}
.mtx .cell .v{font-family:var(--serif);font-size:14.5px;line-height:1.25;color:var(--teal-ink);}
.mtx .cell .num{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.01em;}
.mtx .cell .lab{font-family:var(--mono);font-size:8.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3);margin-top:5px;}
/* tones */
.mtx .cell.down{background:var(--teal);}
.mtx .cell.down .v,.mtx .cell.down .num{color:var(--cream);}
.mtx .cell.down .lab{color:var(--on-teal-3);}
.mtx .cell.managed{background:var(--cream-2);}
.mtx .cell.managed .v,.mtx .cell.managed .num{color:var(--teal);}
.mtx .cell.amber{background:var(--teal);box-shadow:inset 3px 0 0 var(--ox);}
.mtx .cell.amber .v,.mtx .cell.amber .num{color:var(--cream);}
.mtx .cell.amber .num{color:var(--ox-tint);}
.mtx .cell.amber .lab{color:var(--ox-tint);}
.mtx .cell.none{background:var(--cream);}
.mtx .cell.none .dot{color:var(--ink-3);font-family:var(--mono);font-size:15px;opacity:.5;}
.mtx .cell.hot{outline:2px solid var(--ox);outline-offset:-2px;z-index:2;}
.mtx-legend{display:flex;flex-wrap:wrap;gap:18px 26px;margin-top:20px;font-family:var(--mono);font-size:10px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);}
.mtx-legend .lg{display:inline-flex;align-items:center;gap:9px;}
.mtx-legend .sw{width:16px;height:16px;border:1px solid var(--rule);}
.mtx-note{font-family:var(--serif);font-size:14.5px;color:var(--ink-2);margin-top:16px;max-width:80ch;font-style:italic;}

/* ===== Opening reasoning ===== */
.reason{max-width:none;margin-left:calc(var(--rail) + clamp(24px,3vw,48px));}
.reason p{font-family:var(--serif);font-size:clamp(17px,1.3vw,19px);line-height:1.66;color:var(--ink);margin:0 0 22px;text-wrap:pretty;}
.reason p em{font-style:italic;color:var(--ox);}
.reason p strong{font-weight:600;color:var(--teal-ink);}
.reason .lead::first-letter{float:left;font-family:var(--serif);font-weight:500;font-size:62px;line-height:.78;
  padding:6px 12px 0 0;color:var(--teal);}

/* ===== VM2 · CAUSE/IMPACT (dark inverted) ===== */
.invert{background:var(--teal);color:var(--on-teal);position:relative;}
.invert::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--ox) 0%,var(--ox-tint) 34%,rgba(11,59,54,0) 100%);}
.invert-in{max-width:var(--max);margin:0 auto;padding:clamp(64px,9vh,116px) var(--pad);}
.invert .sec-head h2{color:var(--cream);}
.invert .sec-head h2 em{color:var(--ox-tint);}
.invert .sec-head .aux{color:var(--on-teal-3);}
.invert .sec-head .aux .v{color:var(--ox-tint);}
.invert .kick{color:var(--on-teal-2);}
.invert .kick.top{border-top-color:var(--rule-inv-2);}
.invert .kick .num{color:var(--on-teal-3);}

.ci-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.ci{min-width:1080px;position:relative;}
.ci-grid{display:grid;grid-template-columns:1fr 0.92fr 1.16fr;gap:clamp(28px,3.4vw,60px);align-items:stretch;position:relative;}
.ci-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;}
.ci-col{display:flex;flex-direction:column;gap:14px;position:relative;z-index:1;}
.ci-col .col-lbl{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--on-teal-3);
  padding-bottom:9px;border-bottom:1px solid var(--rule-inv);margin-bottom:2px;}
/* cause nodes */
.ci-node{border:1px solid var(--rule-inv-2);background:var(--teal-deep);padding:12px 14px;}
.ci-node.amber{border-color:rgba(184,80,85,.55);box-shadow:inset 3px 0 0 var(--ox-tint);}
.ci-node.resid{background:rgba(243,240,230,.06);border-style:dashed;}
.ci-node .anchor-id{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ox-tint);}
.ci-node.teal-id .anchor-id{color:var(--on-teal-2);}
.ci-node .nm{font-family:var(--serif);font-size:16px;color:var(--cream);line-height:1.18;margin:4px 0 5px;}
.ci-node .st{font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--on-teal-3);line-height:1.5;}
.ci-node .st .mag{color:var(--cream);}
/* transmission middle */
.ci-mid{border-left:1px solid var(--rule-inv);padding:10px 0 10px 16px;}
.ci-mid .path{font-family:var(--serif);font-size:13.5px;line-height:1.4;color:var(--on-teal-2);}
.ci-mid .path .hl{color:var(--cream);font-style:italic;}
.ci-mid .path .amberhl{color:var(--ox-tint);}
.ci-mid .src{font-family:var(--mono);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--on-teal-3);margin-top:5px;display:block;}
/* impact cells */
.ci-out{background:var(--teal-deep);border:1px solid var(--rule-inv-2);padding:13px 15px;}
.ci-out.amber{box-shadow:inset 3px 0 0 var(--ox-tint);}
.ci-out .ok{font-family:var(--mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--on-teal-3);margin-bottom:6px;}
.ci-out .ov{font-family:var(--sans);font-weight:700;font-size:clamp(22px,2.2vw,30px);line-height:1.0;letter-spacing:-.02em;color:var(--cream);}
.ci-out .ov.amber{color:var(--ox-tint);}
.ci-out .od{font-family:var(--serif);font-size:13px;line-height:1.35;color:var(--on-teal-2);margin-top:6px;}
.ci-out .osrc{font-family:var(--mono);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--on-teal-3);margin-top:7px;}

/* sensitivity band row */
.ci-sens{margin-top:clamp(30px,4vh,50px);border-top:1px solid var(--rule-inv);padding-top:26px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2vw,34px);}
.ci-sens .sb{}
.ci-sens .sb .lbl{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--on-teal-3);margin-bottom:10px;}
.ci-sens .sb .track{height:9px;background:rgba(250,250,247,.10);position:relative;overflow:hidden;}
.ci-sens .sb .fill{position:absolute;top:0;bottom:0;left:0;}
.ci-sens .sb .fill.teal{background:var(--on-teal-2);}
.ci-sens .sb .fill.amber{background:var(--ox-tint);}
.ci-sens .sb .vals{display:flex;justify-content:space-between;margin-top:8px;font-family:var(--mono);font-size:11px;letter-spacing:.02em;color:var(--on-teal-2);}
.ci-sens .sb .vals .bad{color:var(--ox-tint);}

/* scenario callouts */
.ci-scn{margin-top:clamp(36px,4.5vh,56px);display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,1.8vw,28px);}
.scn{background:var(--cream-2);color:var(--ink);padding:20px 20px 22px;position:relative;}
.scn.amber{box-shadow:inset 0 3px 0 var(--ox);}
.scn .tag{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin-bottom:10px;}
.scn .seq{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:12px;}
.scn .seq .s{font-family:var(--mono);font-size:11px;font-weight:600;color:var(--teal-ink);background:var(--cream);padding:3px 7px;border:1px solid var(--rule);}
.scn .seq .arr{color:var(--ink-3);font-size:12px;}
.scn .desc{font-family:var(--serif);font-size:14px;line-height:1.45;color:var(--ink-2);margin:0 0 14px;}
.scn .out{border-top:1px solid var(--rule);padding-top:12px;display:flex;justify-content:space-between;align-items:baseline;}
.scn .out .ol{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);}
.scn .out .ov{font-family:var(--sans);font-weight:700;font-size:22px;letter-spacing:-.02em;color:var(--teal-ink);}
.scn.amber .out .ov{color:var(--ox);}

.ci-foot{margin-top:clamp(34px,4vh,52px);border-top:1px solid var(--rule-inv);padding-top:20px;
  font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--on-teal-3);line-height:1.7;max-width:96ch;text-transform:none;}

/* ===== VM3 · HOLD-HORIZON TIMELINE ===== */
.tl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.tl-wrap{min-width:1200px;}
.tl-legend{display:flex;flex-wrap:wrap;gap:16px 24px;margin-top:18px;font-family:var(--mono);font-size:10px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);}
.tl-legend .lg{display:inline-flex;align-items:center;gap:8px;}
.tl-legend .sw{width:18px;height:10px;}
.tl-legend .sw.solid{background:var(--teal);}
.tl-legend .sw.band{background:repeating-linear-gradient(90deg,rgba(11,59,54,.5) 0 5px,transparent 5px 10px);}
.tl-legend .sw.amber{background:var(--ox);}
.tl-legend .sw.fade{background:linear-gradient(90deg,var(--teal),rgba(11,59,54,.08));}

/* ===== Configuration sections ===== */
.cfg-head{display:grid;grid-template-columns:var(--rail) 1fr;gap:clamp(24px,3vw,48px);align-items:start;margin-bottom:clamp(24px,3vh,40px);}
.cfg-eye{font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--teal);
  padding-top:16px;border-top:2px solid var(--teal);line-height:1.6;}
.cfg-eye .num{color:var(--ink-3);}
.cfg-eye .anchor-id{display:block;color:var(--ink-3);margin-top:3px;font-size:10px;letter-spacing:.12em;}
.cfg-head h2{font-family:var(--sans);font-weight:700;font-size:clamp(24px,2.7vw,38px);line-height:1.05;
  letter-spacing:-.02em;color:var(--teal-ink);margin:0;max-width:20ch;text-wrap:balance;}
.cfg-head h2 em{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--teal);display:block;margin-top:2px;}
.cfg-grid{display:grid;grid-template-columns:var(--rail) minmax(0,1fr);gap:clamp(24px,3vw,48px);align-items:start;}
.cfg-state{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);line-height:1.95;}
.cfg-state .k{color:var(--teal);display:block;margin-top:14px;}
.cfg-state .k:first-child{margin-top:0;}
.cfg-state .v{color:var(--teal-ink);}
.cfg-body{max-width:none;}
.cfg-body p{font-family:var(--serif);font-size:17.5px;line-height:1.62;color:var(--ink);margin:0 0 20px;text-wrap:pretty;}
.cfg-body p em{font-style:italic;color:var(--ox);}
.cfg-body p strong{font-weight:600;color:var(--teal-ink);}
.cfg-body .dim{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);
  display:inline-block;margin:0 0 4px;}
.cfg-src{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);
  margin-top:26px;padding-top:14px;border-top:1px solid var(--rule);}
.cfg-src .id{color:var(--teal);}

/* inline artefact frame */
.art{background:var(--paper);border:1px solid var(--rule);margin:28px 0;}
.art-h{background:var(--cream-2);padding:12px 18px;border-bottom:1px solid var(--rule);
  display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);}
.art-h .t{color:var(--teal);}
.art-b{padding:20px 18px;}

/* derivation / comparison tables */
.dtable{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;}
.dtable th{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);
  text-align:right;padding:6px 12px 10px;border-bottom:1px solid var(--rule);font-weight:500;}
.dtable th:first-child{text-align:left;}
.dtable td{font-family:var(--mono);font-size:13px;color:var(--teal-ink);text-align:right;padding:11px 12px;border-bottom:1px solid var(--rule-soft);}
.dtable td:first-child{font-family:var(--serif);font-size:15px;text-align:left;color:var(--ink);}
.dtable tr:last-child td{border-bottom:0;}
.dtable tr.tot td{border-top:1px solid var(--rule-hard);font-weight:600;color:var(--teal);padding-top:13px;}
.dtable td.amber{color:var(--ox);}

/* decision tree */
.tree{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.branch{border:1px solid var(--rule);padding:14px;display:flex;flex-direction:column;gap:8px;}
.branch.cede{box-shadow:inset 0 3px 0 var(--ox);}
.branch.hold{box-shadow:inset 0 3px 0 var(--teal);}
.branch .path-nm{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);}
.branch.cede .path-nm{color:var(--ox);}
.branch .leaf{font-family:var(--serif);font-size:14px;line-height:1.35;color:var(--ink-2);}
.branch .ebd{font-family:var(--sans);font-weight:700;font-size:19px;letter-spacing:-.02em;color:var(--teal-ink);margin-top:auto;}
.branch.cede .ebd{color:var(--ox);}

/* stacked bar (customer verticals) */
.stack{display:flex;height:46px;border:1px solid var(--rule);overflow:hidden;}
.stack .seg{display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px;font-weight:500;
  color:var(--cream);border-right:1px solid rgba(250,250,247,.25);}
.stack .seg:last-child{border-right:0;}
.stack-key{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px;}
.stack-key .k{font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:var(--ink-3);line-height:1.5;}
.stack-key .k .nm{display:block;font-family:var(--serif);font-size:14px;text-transform:none;letter-spacing:0;color:var(--teal-ink);margin-bottom:3px;}
.stack-key .k .vuln{display:block;color:var(--teal);margin-top:4px;}
.stack-key .k.amber .vuln{color:var(--ox);}

/* recession band */
.recband{display:grid;gap:14px;}
.recband .rb{display:grid;grid-template-columns:200px 1fr auto;gap:16px;align-items:center;}
.recband .rb .rl{font-family:var(--serif);font-size:14.5px;color:var(--ink);}
.recband .rb .rl .s{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);}
.recband .rb .track{height:18px;background:var(--cream-2);position:relative;}
.recband .rb .fill{position:absolute;top:0;bottom:0;left:0;background:var(--teal);}
.recband .rb .fill.amber{background:var(--ox);}
.recband .rb .rv{font-family:var(--mono);font-size:13px;color:var(--teal-ink);text-align:right;white-space:nowrap;}
.recband .rb .rv.amber{color:var(--ox);}

/* amplification two-up (config 06) */
.amp{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule);border:1px solid var(--rule);}
.amp .col{background:var(--paper);padding:20px;}
.amp .col.elevated{background:var(--cream-2);box-shadow:inset 0 3px 0 var(--ox);}
.amp .col .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px;}
.amp .col .big{font-family:var(--sans);font-weight:700;font-size:clamp(30px,3.4vw,46px);letter-spacing:-.03em;color:var(--teal-ink);line-height:.95;}
.amp .col.elevated .big{color:var(--ox);}
.amp .col .cap{font-family:var(--serif);font-size:13.5px;line-height:1.4;color:var(--ink-2);margin-top:10px;}
.amp .col .delta{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ox);margin-top:8px;}

/* substrate sustainment (config 05) */
.sustain{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;}
.sustain .core{background:var(--teal);color:var(--cream);padding:18px 20px;text-align:center;}
.sustain .core .nm{font-family:var(--serif);font-style:italic;font-size:18px;line-height:1.2;}
.sustain .core .s{font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--ox-tint);margin-top:6px;}
.sustain .feeds{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
.sustain .feeds .f{border:1px solid var(--rule);padding:9px 11px;font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;color:var(--teal-ink);
  display:flex;align-items:center;gap:8px;}
.sustain .feeds .f::before{content:"";width:14px;height:1px;background:var(--ox);flex:none;}

/* ===== Seams ===== */
.seam-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--rule);}
.seam{padding:30px 30px 30px 0;border-right:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft);}
.seam:nth-child(2n){border-right:0;padding-left:30px;padding-right:0;}
.seam:nth-child(2n+1){padding-right:30px;}
.seam:nth-last-child(-n+2){border-bottom:0;}
.seam .r1{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;margin-bottom:14px;}
.seam .r1 .n{color:var(--teal);font-weight:600;}
.seam .r1 .ref{color:var(--ink-3);cursor:pointer;}
.seam h3{font-family:var(--serif);font-size:21px;line-height:1.25;color:var(--teal-ink);margin:0 0 12px;font-weight:500;}
.seam h3 em{font-style:italic;color:var(--ox);}
.seam p{font-family:var(--serif);font-size:15.5px;line-height:1.55;color:var(--ink-2);margin:0;}
.seam p em{font-style:italic;color:var(--ox);}

/* ===== Partner's work ===== */
.pw-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);}
.pw{background:var(--cream);padding:24px 20px;}
.pw .n{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin-bottom:12px;}
.pw h4{font-family:var(--serif);font-size:17px;line-height:1.25;color:var(--teal-ink);margin:0 0 9px;font-weight:500;}
.pw p{font-family:var(--serif);font-size:13.5px;line-height:1.5;color:var(--ink-2);margin:0;}

/* ===== Colophon ===== */
.colo{max-width:none;margin-left:calc(var(--rail) + clamp(24px,3vw,48px));}
.colo p{font-family:var(--serif);font-size:16px;line-height:1.62;color:var(--ink-2);margin:0 0 18px;}
.colo p em{font-style:italic;color:var(--teal);}
.colo p strong{font-weight:600;color:var(--teal-ink);}
.colo .commit{font-family:var(--serif);font-style:italic;font-size:clamp(20px,2.2vw,27px);line-height:1.3;color:var(--ox);
  border-left:3px solid var(--ox);padding-left:20px;margin:24px 0;max-width:30ch;}
.seam .fnd{color:var(--ox);font-style:normal;}
.colo .prov{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);line-height:1.9;margin-top:24px;}

/* ===== Architectural footer ===== */
.arch{background:var(--teal-ink);color:var(--on-teal-2);position:relative;}
.arch::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--ox) 0%,var(--ox-tint) 34%,rgba(11,59,54,0) 100%);}
.arch-in{max-width:var(--max);margin:0 auto;padding:clamp(60px,8vh,100px) var(--pad) 40px;}
.arch-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:36px;border-bottom:1px solid var(--rule-inv);padding-bottom:40px;}
.arch-wm{font-family:var(--serif);font-size:clamp(40px,6vw,72px);line-height:.95;color:var(--cream);letter-spacing:-.02em;margin:0;}
.arch-wm em{font-style:italic;color:var(--ox-tint);}
.arch-tag{font-family:var(--serif);font-size:15px;line-height:1.5;color:var(--on-teal-2);max-width:36ch;margin:14px 0 0;}
.arch-col h5{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--on-teal-3);margin:0 0 14px;}
.arch-col a{display:block;font-family:var(--serif);font-size:15px;color:var(--on-teal-2);padding:5px 0;}
.arch-col a .p{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--on-teal-3);display:block;}
.arch-bot{display:flex;justify-content:space-between;gap:20px;padding-top:24px;font-family:var(--mono);font-size:10px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--on-teal-3);flex-wrap:wrap;}

/* reveal — content is always visible (static analytical artefact, no entrance gating) */
.reveal{opacity:1;transform:none;}

/* ===== responsive ===== */
@media(max-width:1000px){
  .reason,.colo{margin-left:0;}
  .sec-head{grid-template-columns:1fr;}.sec-head .aux{text-align:left;}
  .cfg-head{grid-template-columns:1fr;}
  .cfg-grid{grid-template-columns:1fr;}
  .ci-sens,.ci-scn{grid-template-columns:1fr;}
  .seam-grid,.pw-grid,.amp{grid-template-columns:1fr;}
  .arch-top{grid-template-columns:1fr 1fr;}
  .tree{grid-template-columns:1fr 1fr;}
  .stack-key{grid-template-columns:1fr 1fr;}
  .mast-nav{display:none;}
  .recband .rb{grid-template-columns:1fr;gap:6px;}
}
@media(max-width:620px){
  .tree,.stack-key,.arch-top,.pw-grid{grid-template-columns:1fr;}
  .seam:nth-child(odd),.seam:nth-child(even){padding:24px 0;border-right:0;}
}
