/* ============================================================
   Bearing Cohort-Position State Estimation Read — Track 4
   Consumer-brand altitude. Forked from the VC/PE precedent;
   adds category selector, cohort portfolio, sensitivity heatmap,
   historical compare, plan-variance, MMM filter, avoided-loss,
   alert architecture, cross-category synthesis.
   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;}
}

/* ============================================================
   TRACK 4 ADDITIONS
   ============================================================ */

/* hero H1 reverts to serif-structural per Track 4 brief altitude */
.hero h1{max-width:20ch;}

/* ===== Category selector ===== */
.catsel-lbl{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);
  margin:clamp(34px,5vh,56px) 0 16px;padding-top:16px;border-top:2px solid var(--teal);}
.catsel{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.catbtn{display:flex;flex-direction:column;gap:5px;text-align:left;background:var(--paper);
  border:1px solid var(--rule-hard);padding:15px 17px 16px;line-height:1.25;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;}
.catbtn:hover{border-color:var(--teal);}
.catbtn .ct-cat{font-family:var(--sans);font-weight:600;font-size:15px;letter-spacing:-.01em;color:var(--teal-ink);}
.catbtn .ct-meta{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);}
.catbtn .ct-op{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-2);}
.catbtn.active{border-color:var(--ox);box-shadow:inset 0 0 0 1px var(--ox);background:var(--cream-2);}
.catbtn.active .ct-meta{color:var(--ox);}
.catbtn.active .ct-cat{color:var(--ox);}

/* category-scoped content blocks (JS toggles .cat-on) */
.cat-block{display:none;}
.cat-block.cat-on{display:block;}

/* anchor strip tweaks for category state */
.anchor-val .u{font-size:.42em;letter-spacing:-.01em;color:var(--teal);font-weight:600;vertical-align:.06em;margin-left:.12em;}

/* ===== Section 2 · Cohort portfolio ===== */
.port{border-top:1px solid var(--rule);}
.port-band{border-bottom:1px solid var(--rule-soft);padding:20px 0 18px;}
.port-band:last-child{border-bottom:0;}
.port-band-h{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:14px;flex-wrap:wrap;}
.port-band-h .bn{font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--teal);}
.port-band-h .bn .sub{color:var(--ink-3);}
.port-band-h .bs{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-3);}
.port-band-h .bs b{color:var(--teal-ink);font-weight:600;}
.port-rows{display:grid;gap:7px;}
.prow{display:grid;grid-template-columns:minmax(210px,290px) 1fr 50px;gap:16px;align-items:center;min-height:22px;}
.prow .pn{display:flex;align-items:baseline;gap:9px;min-width:0;}
.prow .pid{flex:none;width:34px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.03em;
  color:var(--teal);font-variant-numeric:tabular-nums;}
.prow.cmp .pid{color:var(--ox);}
.prow .pnm{min-width:0;font-family:var(--serif);font-size:13.5px;line-height:1.25;color:var(--ink);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.prow .pt{position:relative;height:18px;background:var(--cream-2);overflow:hidden;}
.prow .pf{position:absolute;top:0;bottom:0;left:0;background:var(--teal);}
.prow.cmp .pf{background:var(--ox);}
.prow.cmp-mod .pf{background:var(--ox-tint);}
.prow.exp .pf{background:var(--teal);}
.prow.bidir .pf{background:repeating-linear-gradient(90deg,var(--teal) 0 8px,var(--ox) 8px 16px);}
.prow .pp{font-family:var(--mono);font-size:12px;font-variant-numeric:tabular-nums;color:var(--teal-ink);text-align:right;}
.port-legend{display:flex;flex-wrap:wrap;gap:14px 22px;margin-top:22px;font-family:var(--mono);font-size:10px;
  letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);}
.port-legend .lg{display:inline-flex;align-items:center;gap:8px;}
.port-legend .sw{width:15px;height:11px;}

/* ===== Section 3 · Sensitivity heatmap ===== */
.hm-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.hm{min-width:880px;display:grid;
  grid-template-columns:230px repeat(5,minmax(118px,1fr));
  gap:1px;background:var(--rule);border:1px solid var(--rule-hard);font-variant-numeric:tabular-nums;}
.hm .hcorner{background:var(--teal-ink);color:var(--on-teal-2);font-family:var(--mono);font-size:10px;
  letter-spacing:.13em;text-transform:uppercase;line-height:1.5;padding:11px 13px;display:flex;flex-direction:column;justify-content:flex-end;}
.hm .hcorner .big{color:var(--cream);font-size:11px;letter-spacing:.15em;margin-bottom:4px;}
.hm .hcol{background:var(--teal-deep);color:var(--cream);font-family:var(--mono);font-size:10px;font-weight:500;
  letter-spacing:.08em;line-height:1.3;padding:11px 12px;min-height:74px;display:flex;flex-direction:column;justify-content:center;cursor:pointer;}
.hm .hcol .cn{color:var(--ox-tint);letter-spacing:.15em;}
.hm .hcol .cl{color:var(--cream);text-transform:none;letter-spacing:.01em;font-size:11px;margin:4px 0 4px;line-height:1.22;}
.hm .hcol .cs{color:var(--on-teal-3);font-size:8.5px;letter-spacing:.09em;text-transform:uppercase;}
.hm .hrow{background:var(--cream-2);font-family:var(--serif);font-size:14.5px;color:var(--teal-ink);line-height:1.16;
  padding:9px 13px;display:flex;flex-direction:column;justify-content:center;cursor:pointer;}
.hm .hrow .rk{font-family:var(--mono);font-size:8.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:3px;}
.hm .hrow .rw{font-family:var(--mono);font-size:8.5px;letter-spacing:.06em;color:var(--teal);margin-top:3px;}
.hm .hc{background:var(--cream);padding:8px 11px 9px;min-height:62px;display:flex;flex-direction:column;justify-content:center;gap:3px;cursor:default;}
.hm .hc .dir{font-family:var(--sans);font-size:15px;line-height:1;display:flex;align-items:center;gap:6px;}
.hm .hc .dir .mg{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:0;}
.hm .hc .met{font-family:var(--mono);font-size:8.5px;letter-spacing:.08em;text-transform:uppercase;display:flex;gap:7px;align-items:center;}
.hm .hc .met .st{font-size:10px;}
/* cell tones — coloring discipline */
.hm .hc.acute{background:var(--ox);}
.hm .hc.acute .dir,.hm .hc.acute .mg{color:var(--cream);}
.hm .hc.acute .met{color:rgba(250,250,247,.72);}
.hm .hc.mod{background:var(--cream-2);}
.hm .hc.mod .dir,.hm .hc.mod .mg{color:var(--ox);}
.hm .hc.mod .met{color:var(--ink-3);}
.hm .hc.stable{background:var(--cream);}
.hm .hc.stable .dir,.hm .hc.stable .mg{color:var(--ink);}
.hm .hc.stable .met{color:var(--ink-3);}
.hm .hc.exp{background:var(--teal);}
.hm .hc.exp .dir,.hm .hc.exp .mg{color:var(--cream);}
.hm .hc.exp .met{color:var(--on-teal-3);}
.hm .hc.bidir{background:var(--cream-2);background-image:linear-gradient(115deg,rgba(11,59,54,.16) 0%,rgba(11,59,54,0) 46%,rgba(138,28,32,0) 54%,rgba(138,28,32,.16) 100%);}
.hm .hc.bidir .dir{color:var(--teal);}
.hm .hc.bidir .mg{color:var(--ox);}
.hm .hc.bidir .met{color:var(--ink-3);}
.hm .hc.dormant{background:var(--cream);}
.hm .hc.dormant .dir,.hm .hc.dormant .mg{color:var(--ink-3);}
.hm .hc.dormant .met{color:rgba(11,59,54,.4);}
/* hover/highlight */
.hm.lit .hc:not(.row-lit):not(.col-lit){opacity:.34;}
.hm .hc.row-lit,.hm .hc.col-lit{outline:2px solid var(--teal-ink);outline-offset:-2px;z-index:2;}
.hm .hc.acute.row-lit,.hm .hc.acute.col-lit{outline-color:var(--ink);}
.hm-legend{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:20px;font-family:var(--mono);font-size:10px;
  letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);}
.hm-legend .lg{display:inline-flex;align-items:center;gap:8px;}
.hm-legend .sw{width:16px;height:16px;border:1px solid var(--rule);}
.hm-legend .sw.bidir{background:var(--cream-2);background-image:linear-gradient(115deg,rgba(11,59,54,.5) 0%,rgba(11,59,54,0) 46%,rgba(138,28,32,0) 54%,rgba(138,28,32,.5) 100%);}
.hm-note{font-family:var(--serif);font-size:14.5px;font-style:italic;color:var(--ink-2);margin-top:16px;max-width:84ch;}

/* ===== Section 4 · Configuration substrate read (inverted) ===== */
.cfgsub{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--rule-inv);border:1px solid var(--rule-inv-2);}
.cfgsub .cb{background:var(--teal-deep);padding:18px 18px 20px;display:flex;flex-direction:column;}
.cfgsub .cb .cnum{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ox-tint);}
.cfgsub .cb .cnm{font-family:var(--serif);font-size:18px;line-height:1.18;color:var(--cream);margin:6px 0 10px;}
.cfgsub .cb .cst{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--on-teal-3);line-height:1.6;border-top:1px solid var(--rule-inv);padding-top:10px;margin-bottom:10px;}
.cfgsub .cb .cst b{color:var(--cream);font-weight:500;}
.cfgsub .cb .cx{font-family:var(--serif);font-size:13.5px;line-height:1.45;color:var(--on-teal-2);margin:0 0 12px;}
.cfgsub .cb .cx em{font-style:italic;color:var(--ox-tint);}
.cfgsub .cb .csrc{font-family:var(--mono);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--on-teal-3);margin-top:auto;padding-top:10px;}
.invert .lead-in{font-family:var(--serif);font-size:clamp(16px,1.3vw,18.5px);line-height:1.6;color:var(--on-teal-2);max-width:78ch;margin:0 0 clamp(28px,4vh,44px);}
.invert .lead-in em{color:var(--ox-tint);font-style:italic;}
.invert .lead-in strong{color:var(--cream);font-weight:600;}

/* ===== Section 5 · Historical compare ===== */
.hist-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.hist-wrap{min-width:1040px;}
.histchart{display:grid;grid-template-columns:78px repeat(5,1fr);gap:clamp(10px,1.4vw,22px);align-items:end;}
.histchart .hy{position:relative;height:264px;font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;color:var(--ink-3);text-align:right;padding-right:2px;}
.histchart .hy span{position:absolute;right:2px;transform:translateY(-50%);}
.histchart .hy .yp{top:0;}
.histchart .hy .yz{top:132px;color:var(--teal);}
.histchart .hy .yn{top:264px;}
.histcol{display:flex;flex-direction:column;}
.histcol .plot{position:relative;height:264px;}
.histcol .plot::before{content:"";position:absolute;left:0;right:0;top:132px;border-top:1px solid var(--rule-hard);}
.histcol .bar{position:absolute;left:22%;width:56%;background:var(--teal);}
.histcol .bar.exp{background:var(--teal-2);}
.histcol .bar.match{background:var(--ox);}
.histcol .pk{position:absolute;left:50%;transform:translateX(-50%);font-family:var(--mono);font-size:10px;font-weight:500;color:var(--teal-ink);white-space:nowrap;}
.histcol .bar.dn .pk{top:calc(100% + 3px);}
.histcol .bar.up .pk{bottom:calc(100% + 3px);}
.histcol.match .bar.dn .pk,.histcol.match .bar.up .pk{color:var(--ox);}
.histcol .cyr{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--teal-ink);margin-top:12px;font-weight:500;}
.histcol .cyl{font-family:var(--mono);font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);margin-top:3px;line-height:1.45;}
.histcol.match .cyr{color:var(--ox);}
.histcol .rec{font-family:var(--mono);font-size:9px;letter-spacing:.05em;color:var(--teal);margin-top:6px;}
.hist-cur{display:flex;align-items:center;gap:9px;margin-top:18px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);}
.hist-cur .ln{width:34px;height:0;border-top:2px dashed var(--ox);}
.hist-read{margin-top:clamp(26px,3.5vh,40px);border-top:1px solid var(--rule);padding-top:24px;
  display:grid;grid-template-columns:var(--rail) 1fr;gap:clamp(24px,3vw,48px);}
.hist-read .hr-k{font-family:var(--mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--teal);line-height:1.7;}
.hist-read p{font-family:var(--serif);font-size:17px;line-height:1.6;color:var(--ink);margin:0 0 16px;max-width:74ch;text-wrap:pretty;}
.hist-read p:last-child{margin-bottom:0;}
.hist-read p em{font-style:italic;color:var(--ox);}
.hist-read p strong{font-weight:600;color:var(--teal-ink);}
.hist-dist{display:grid;gap:10px;margin-top:6px;}
.hist-dist .hd{display:grid;grid-template-columns:26px 1fr;gap:13px;align-items:baseline;}
.hist-dist .hd .dn{font-family:var(--mono);font-size:11px;font-weight:600;color:var(--ox);}
.hist-dist .hd .dt{font-family:var(--serif);font-size:15px;line-height:1.4;color:var(--ink-2);}
.hist-dist .hd .dt b{color:var(--teal-ink);font-weight:600;}

/* ===== Section 6 · Plan-vs-substrate variance ===== */
.pv{display:grid;grid-template-columns:0.92fr 1.18fr;gap:1px;background:var(--rule);border:1px solid var(--rule);}
.pv .pv-col{background:var(--paper);padding:22px 22px 24px;}
.pv .pv-col.plan{background:var(--cream-2);}
.pv .pv-h{font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px;}
.pv .pv-col.plan .pv-h{color:var(--teal);}
.pv .pv-row{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--rule-soft);}
.pv .pv-row:last-child{border-bottom:0;}
.pv .pv-row .l{font-family:var(--serif);font-size:14.5px;color:var(--ink);}
.pv .pv-row .v{font-family:var(--mono);font-size:13px;color:var(--teal-ink);text-align:right;white-space:nowrap;}
.pv-seg{display:grid;gap:9px;}
.pvs{display:grid;grid-template-columns:1fr auto;gap:6px 14px;align-items:baseline;padding:11px 0;border-bottom:1px solid var(--rule-soft);}
.pvs:last-child{border-bottom:0;}
.pvs .pvs-n{font-family:var(--serif);font-size:15px;color:var(--teal-ink);}
.pvs .pvs-b{font-family:var(--sans);font-weight:700;font-size:17px;letter-spacing:-.02em;text-align:right;white-space:nowrap;}
.pvs.cmp .pvs-b{color:var(--ox);}
.pvs.exp .pvs-b{color:var(--teal);}
.pvs.bidir .pvs-b{color:var(--ink);}
.pvs .pvs-d{grid-column:1/-1;font-family:var(--serif);font-size:13.5px;line-height:1.4;color:var(--ink-2);margin-top:-2px;}
.pvs .pvs-d em{font-style:italic;color:var(--ox);}
.pv-integ{margin-top:clamp(24px,3vh,36px);background:var(--teal);color:var(--cream);padding:22px 24px;
  display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;}
.pv-integ .pi-l{font-family:var(--serif);font-size:16px;line-height:1.4;color:var(--on-teal);max-width:52ch;}
.pv-integ .pi-l em{color:var(--ox-tint);font-style:italic;}
.pv-integ .pi-v{font-family:var(--sans);font-weight:700;font-size:clamp(28px,3.4vw,46px);letter-spacing:-.03em;color:var(--cream);text-align:right;white-space:nowrap;}
.pv-integ .pi-v .u{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ox-tint);font-weight:400;margin-top:5px;}

/* ===== Section 7 · MMM filter pass ===== */
.mmm{display:grid;grid-template-columns:1fr;gap:18px;}
.mmm-rec{border:1px solid var(--rule);background:var(--cream-2);padding:20px 22px;}
.mmm-rec .mr-h{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;align-items:baseline;margin-bottom:6px;}
.mmm-rec .mr-h .t{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);}
.mmm-rec .mr-h .src{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--teal);}
.mmm-rec .mr-v{font-family:var(--sans);font-weight:700;font-size:clamp(24px,2.6vw,34px);letter-spacing:-.02em;color:var(--teal-ink);}
.mmm-rec p{font-family:var(--serif);font-size:14.5px;line-height:1.5;color:var(--ink-2);margin:8px 0 0;max-width:80ch;}
.mmm-pass{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);}
.mmm-pass .mp{background:var(--paper);padding:18px 18px 20px;display:flex;flex-direction:column;}
.mmm-pass .mp.hold{box-shadow:inset 0 3px 0 var(--ox);}
.mmm-pass .mp.redir{box-shadow:inset 0 3px 0 var(--teal);}
.mmm-pass .mp.monitor{box-shadow:inset 0 3px 0 var(--teal-ink);}
.mmm-pass .mp .mk{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:9px;}
.mmm-pass .mp.hold .mk{color:var(--ox);}
.mmm-pass .mp.redir .mk{color:var(--teal);}
.mmm-pass .mp .mv{font-family:var(--sans);font-weight:700;font-size:clamp(22px,2.4vw,30px);letter-spacing:-.02em;color:var(--teal-ink);line-height:1;}
.mmm-pass .mp.hold .mv{color:var(--ox);}
.mmm-pass .mp .md{font-family:var(--serif);font-size:13.5px;line-height:1.45;color:var(--ink-2);margin-top:10px;}
.mmm-pass .mp .md em{font-style:italic;color:var(--ox);}
.mmm-pass .mp .mc{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-top:auto;padding-top:12px;}

/* ===== Section 8 · Avoided over-investment ===== */
.avoid{background:var(--teal-ink);color:var(--on-teal);position:relative;padding:clamp(30px,4vh,46px) clamp(28px,4vw,52px);}
.avoid::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%);}
.avoid .av-claim{font-family:var(--serif);font-style:italic;font-size:clamp(20px,2.3vw,30px);line-height:1.3;color:var(--cream);max-width:34ch;margin:0 0 clamp(26px,3.5vh,40px);}
.avoid .av-claim em{color:var(--ox-tint);}
.avoid .av-econ{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule-inv);border:1px solid var(--rule-inv-2);}
.avoid .ae{background:var(--teal-deep);padding:20px 20px 22px;}
.avoid .ae .ak{font-family:var(--mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--on-teal-3);margin-bottom:11px;}
.avoid .ae .av{font-family:var(--sans);font-weight:700;font-size:clamp(26px,3vw,40px);letter-spacing:-.03em;color:var(--cream);line-height:1;}
.avoid .ae.net .av{color:var(--ox-tint);}
.avoid .ae .ad{font-family:var(--serif);font-size:13px;line-height:1.4;color:var(--on-teal-2);margin-top:10px;}
.avoid .av-foot{font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;color:var(--on-teal-3);line-height:1.7;margin-top:22px;max-width:96ch;}

/* ===== Section 9 · Alert architecture ===== */
.alert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.alert{border:1px solid var(--rule);background:var(--paper);padding:18px 18px 20px;display:flex;flex-direction:column;}
.alert.prox{box-shadow:inset 3px 0 0 var(--ox);}
.alert.active{box-shadow:inset 3px 0 0 var(--teal);}
.alert .al-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;}
.alert .al-cfg{font-family:var(--mono);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--teal);}
.alert .al-st{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);display:inline-flex;align-items:center;gap:5px;}
.alert.prox .al-st{color:var(--ox);}
.alert h4{font-family:var(--serif);font-size:17px;line-height:1.25;color:var(--teal-ink);margin:0 0 8px;font-weight:500;}
.alert p{font-family:var(--serif);font-size:13.5px;line-height:1.5;color:var(--ink-2);margin:0;}
.alert p em{font-style:italic;color:var(--ox);}
.alert .al-freq{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-top:auto;padding-top:12px;}
.alert .al-freq b{color:var(--teal);font-weight:500;}

/* ===== Section 10 · Cross-category synthesis ===== */
.xcat-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.xcat{min-width:820px;display:grid;grid-template-columns:200px repeat(5,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule-hard);}
.xcat .xc{background:var(--cream);padding:13px 14px;min-height:72px;display:flex;flex-direction:column;justify-content:center;}
.xcat .xcorner{background:var(--teal-ink);color:var(--on-teal-2);font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;justify-content:flex-end;line-height:1.5;}
.xcat .xcol{background:var(--teal-deep);color:var(--cream);font-family:var(--mono);font-size:10px;letter-spacing:.08em;line-height:1.3;}
.xcat .xcol .cn{color:var(--ox-tint);letter-spacing:.14em;}
.xcat .xcol .cl{color:var(--cream);text-transform:none;font-size:10.5px;margin-top:4px;}
.xcat .xrow{background:var(--cream-2);font-family:var(--serif);font-size:15px;color:var(--teal-ink);line-height:1.2;}
.xcat .xrow .rs{font-family:var(--mono);font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);display:block;margin-top:3px;}
.xcat .xc.dom{background:var(--ox);}
.xcat .xc.dom .xt,.xcat .xc.dom .xm{color:var(--cream);}
.xcat .xc.sec{background:var(--cream-2);}
.xcat .xc.sec .xt{color:var(--ox);}
.xcat .xc.exp{background:var(--teal);}
.xcat .xc.exp .xt,.xcat .xc.exp .xm{color:var(--cream);}
.xcat .xc .xt{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:-.01em;color:var(--ink);line-height:1.15;}
.xcat .xc .xm{font-family:var(--mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-top:5px;}
.xcat-props{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:clamp(28px,4vh,44px);}
.xprop{background:var(--cream);padding:22px 22px 24px;}
.xprop .xp-cat{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin-bottom:10px;}
.xprop h4{font-family:var(--serif);font-size:18px;line-height:1.25;color:var(--teal-ink);margin:0 0 9px;font-weight:500;}
.xprop h4 em{font-style:italic;color:var(--ox);}
.xprop p{font-family:var(--serif);font-size:14.5px;line-height:1.52;color:var(--ink-2);margin:0;}
.xprop p em{font-style:italic;color:var(--ox);}
.depth{margin-top:clamp(28px,4vh,44px);background:var(--cream-2);padding:clamp(26px,3.5vw,42px);border-left:3px solid var(--teal);}
.depth .dh{font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--teal);margin-bottom:14px;}
.depth p{font-family:var(--serif);font-size:clamp(17px,1.4vw,20px);line-height:1.55;color:var(--ink);margin:0 0 14px;max-width:78ch;text-wrap:pretty;}
.depth p:last-child{margin-bottom:0;}
.depth p em{font-style:italic;color:var(--ox);}
.depth p strong{font-weight:600;color:var(--teal-ink);}

/* ===== Section header eyebrow used per-category ===== */
.cat-tag{display:inline-block;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ox);border:1px solid var(--ox);padding:3px 8px;margin-bottom:14px;}

/* ============================================================
   AMENDMENT 01 — operator-question-anchored, CMO altitude
   ============================================================ */

/* ===== Section 2 · Marketing plan ===== */
.mplan{display:grid;grid-template-columns:0.82fr 1.18fr;gap:1px;background:var(--rule);border:1px solid var(--rule);}
.mplan .mp-col{background:var(--paper);padding:22px 22px 24px;}
.mplan .mp-col.kpis{background:var(--cream-2);}
.mplan .mp-h{display:flex;justify-content:space-between;gap:12px;align-items:baseline;flex-wrap:wrap;
  font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-3);margin-bottom:16px;}
.mplan .mp-h .t{color:var(--teal);}
.mplan .mp-big{font-family:var(--sans);font-weight:700;font-size:clamp(26px,3vw,38px);letter-spacing:-.03em;color:var(--teal-ink);line-height:.95;}
.mplan .mp-big .u{font-size:.4em;font-weight:600;color:var(--teal);letter-spacing:.02em;margin-left:.18em;font-family:var(--mono);}
.mplan .mp-sub{font-family:var(--mono);font-size:11px;letter-spacing:.05em;color:var(--ink-3);margin-top:6px;}
.kpi-row{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--rule-soft);}
.kpi-row:last-child{border-bottom:0;}
.kpi-row .l{font-family:var(--serif);font-size:14px;color:var(--ink);}
.kpi-row .v{font-family:var(--mono);font-size:12.5px;color:var(--teal-ink);text-align:right;white-space:nowrap;}
.chan-rows{display:grid;gap:7px;margin-top:4px;}
.chan-row{display:grid;grid-template-columns:minmax(150px,1fr) 1.1fr 96px;gap:13px;align-items:center;}
.chan-row .cn{font-family:var(--serif);font-size:13.5px;color:var(--ink);line-height:1.2;}
.chan-row .ct{position:relative;height:16px;background:var(--cream-2);overflow:hidden;}
.chan-row .cf{position:absolute;top:0;bottom:0;left:0;background:var(--teal);}
.chan-row .cv{font-family:var(--mono);font-size:11.5px;font-variant-numeric:tabular-nums;color:var(--teal-ink);text-align:right;white-space:nowrap;}
.mplan-attr{font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;color:var(--ink-3);line-height:1.6;
  margin-top:16px;padding-top:14px;border-top:1px solid var(--rule);}
.mplan-attr b{color:var(--teal);font-weight:500;}

/* ===== Section 3 · Attainment + leading-indicator ===== */
.attain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);}
.akpi{background:var(--paper);padding:15px 16px 17px;}
.akpi .ak{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px;line-height:1.4;}
.akpi .av{font-family:var(--sans);font-weight:700;font-size:21px;letter-spacing:-.02em;color:var(--teal-ink);line-height:1;}
.akpi .av.adv{color:var(--ox);}
.akpi .av.fav{color:var(--teal);}
.akpi .ad{font-family:var(--mono);font-size:10px;letter-spacing:.03em;color:var(--ink-3);margin-top:7px;line-height:1.45;}
.lead{margin-top:clamp(22px,3vh,34px);background:var(--cream-2);border-left:3px solid var(--ox);padding:24px 26px;}
.lead .li-k{font-family:var(--mono);font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--ox);margin-bottom:12px;}
.lead p{font-family:var(--serif);font-size:clamp(16px,1.4vw,19px);line-height:1.55;color:var(--ink);margin:0;max-width:80ch;text-wrap:pretty;}
.lead p em{font-style:italic;color:var(--ox);}
.lead p strong{font-weight:600;color:var(--teal-ink);}

/* ===== Section 4 · Bearing's read (variance scorecard) ===== */
.vtable{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;}
.vtable th{font-family:var(--mono);font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3);
  text-align:right;padding:8px 14px 11px;border-bottom:1px solid var(--rule-hard);font-weight:500;}
.vtable th:first-child{text-align:left;}
.vtable td{font-family:var(--mono);font-size:13px;color:var(--teal-ink);text-align:right;padding:12px 14px;border-bottom:1px solid var(--rule-soft);vertical-align:top;}
.vtable td:first-child{font-family:var(--serif);font-size:15px;text-align:left;color:var(--ink);line-height:1.3;}
.vtable td.adv{color:var(--ox);font-weight:500;}
.vtable td.fav{color:var(--teal);font-weight:500;}
.vtable tr:last-child td{border-bottom:0;}
.vread-integ{margin-top:24px;background:var(--teal);color:var(--cream);padding:22px 24px;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;}
.vread-integ .vi-l{font-family:var(--serif);font-size:16px;line-height:1.4;color:var(--on-teal);max-width:54ch;}
.vread-integ .vi-l em{color:var(--ox-tint);font-style:italic;}
.vread-integ .vi-l b{color:var(--cream);font-weight:600;}
.vread-integ .vi-v{font-family:var(--sans);font-weight:700;font-size:clamp(28px,3.4vw,44px);letter-spacing:-.03em;color:var(--cream);text-align:right;white-space:nowrap;}
.vread-integ .vi-v .u{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ox-tint);font-weight:400;margin-top:6px;}

/* ===== Section 5 · MMM filter pass (central, comparison panel) ===== */
.mf{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule);border:1px solid var(--rule);}
.mf .mf-side{padding:22px 22px 24px;}
.mf .mf-side.mmm-rec-side{background:var(--cream-2);}
.mf .mf-side.bearing{background:var(--paper);box-shadow:inset 3px 0 0 var(--ox);}
.mf .mf-k{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px;}
.mf .mf-side.bearing .mf-k{color:var(--ox);}
.mf .mf-vendor{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--teal);margin-bottom:12px;}
.mf .mf-side p{font-family:var(--serif);font-size:14.5px;line-height:1.5;color:var(--ink);margin:0;text-wrap:pretty;}
.mf .mf-side p em{font-style:italic;color:var(--ox);}
.mf .mf-side p strong{font-weight:600;color:var(--teal-ink);}
.mf-just{margin-top:18px;display:flex;align-items:center;gap:14px;font-family:var(--mono);font-size:10.5px;letter-spacing:.05em;color:var(--ink-3);line-height:1.6;background:var(--cream-2);border:1px solid var(--rule);padding:14px 18px;}
.mf-just .jk{flex:none;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ox);border:1px solid var(--ox);padding:3px 7px;}
.mf-net{margin-top:18px;background:var(--teal-ink);color:var(--cream);padding:18px 22px;display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;}
.mf-net .mn-l{font-family:var(--serif);font-size:15px;color:var(--on-teal-2);max-width:60ch;}
.mf-net .mn-l em{color:var(--ox-tint);font-style:italic;}
.mf-net .mn-v{font-family:var(--sans);font-weight:700;font-size:clamp(22px,2.6vw,32px);letter-spacing:-.02em;color:var(--cream);white-space:nowrap;}

/* ===== Section 6 · Q3-Q4 budget recommendations ===== */
.rec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);}
.rec-col{background:var(--paper);padding:18px 18px 20px;}
.rec-col.hold{box-shadow:inset 0 3px 0 var(--ox);}
.rec-col.redirect{box-shadow:inset 0 3px 0 var(--teal);}
.rec-col.preserve{box-shadow:inset 0 3px 0 var(--teal-ink);}
.rec-col .rc-h{font-family:var(--sans);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--teal-ink);margin-bottom:4px;}
.rec-col.hold .rc-h{color:var(--ox);}
.rec-col.redirect .rc-h{color:var(--teal);}
.rec-col .rc-sub{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px;}
.rec-item{padding:11px 0;border-bottom:1px solid var(--rule-soft);}
.rec-item:last-child{border-bottom:0;}
.rec-item .ri-v{font-family:var(--mono);font-size:15px;font-weight:600;color:var(--teal-ink);letter-spacing:.01em;}
.rec-col.hold .rec-item .ri-v{color:var(--ox);}
.rec-item .ri-d{font-family:var(--serif);font-size:13.5px;line-height:1.42;color:var(--ink-2);margin-top:4px;}
.rec-item .ri-d em{font-style:italic;color:var(--ox);}

/* ===== responsive (Track 4) ===== */
/* heatmap C05 background-state + text-valued cells */
.hm .hc .met .st.bg{font-size:7.5px;letter-spacing:.1em;color:var(--ink-3);border:1px solid var(--rule);padding:0 3px;line-height:1.5;}
.hm .hc.exp .met .st.bg,.hm .hc.acute .met .st.bg{color:rgba(250,250,247,.7);border-color:rgba(250,250,247,.3);}
.hm .hc .dir .mg.txt{font-size:9.5px;font-style:italic;letter-spacing:0;}
@media(max-width:1000px){
  .catsel{grid-template-columns:1fr 1fr;}
  .cfgsub{grid-template-columns:1fr;}
  .pv,.mmm-pass,.avoid .av-econ,.alert-grid,.xcat-props{grid-template-columns:1fr;}
  .pv-integ{grid-template-columns:1fr;}
  .hist-read{grid-template-columns:1fr;}
  .prow{grid-template-columns:minmax(150px,1fr) 1.4fr 46px;}
  .mplan,.mf,.rec-grid{grid-template-columns:1fr;}
  .attain-grid{grid-template-columns:1fr 1fr;}
  .vread-integ,.mf-net{grid-template-columns:1fr;display:flex;flex-direction:column;align-items:flex-start;}
  .chan-row{grid-template-columns:120px 1fr 84px;}
}
@media(max-width:620px){
  .catsel{grid-template-columns:1fr;}
  .attain-grid{grid-template-columns:1fr;}
  .vtable td,.vtable th{padding-left:8px;padding-right:8px;}
}
