/* CertainTIQ v4 — "The Record". Shared stylesheet for all pages. */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--hdr-h) + 24px)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{background:var(--paper);color:var(--ink);font:400 var(--t-body)/1.6 var(--f-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
img,video,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
::selection{background:var(--ink);color:var(--paper)}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
.archive :focus-visible{outline-color:var(--signal)}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:10px;z-index:200;background:var(--ink);color:var(--paper);padding:.6rem 1rem;text-decoration:none;font-size:var(--t-sm)}
.skip:focus{left:10px}

/* ---------- Grid ---------- */
.wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--gut)}
.g{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap)}
.sec{padding-block:var(--sec);position:relative}
.sec--tight{padding-block:var(--sec-sm)}
.sec--p2{background:var(--paper-2)}
.sec + .sec:not(.sec--p2):not(.archive):not(.flush-top){border-top:1px solid var(--line)}
.sec--p2 + .sec,.archive + .sec{border-top:0!important}

/* ---------- Type ---------- */
.display{font-size:var(--t-hero);font-weight:500;line-height:.86;letter-spacing:-.055em}
.h1{font-size:var(--t-h1);font-weight:500;line-height:.98;letter-spacing:-.04em;text-wrap:balance}
.h2{font-size:var(--t-h2);font-weight:500;line-height:1.02;letter-spacing:-.035em;text-wrap:balance}
.h3{font-size:var(--t-h3);font-weight:500;line-height:1.14;letter-spacing:-.02em;text-wrap:balance}
.h4{font-size:1.125rem;font-weight:500;line-height:1.3;letter-spacing:-.01em}
.lede{font-size:var(--t-lede);line-height:1.45;color:var(--ink-2);letter-spacing:-.005em;text-wrap:pretty}
.body{color:var(--ink-2);max-width:62ch;text-wrap:pretty}
.body + .body{margin-top:1em}
.small{font-size:var(--t-sm);color:var(--ink-2)}
.eyebrow{font-size:var(--t-xs);font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-tx)}
.mono{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.12em;text-transform:uppercase}
.note{font-family:var(--f-mono);font-size:.75rem;line-height:1.65;letter-spacing:.01em;color:var(--ink-3);max-width:68ch}
.note::before{content:'';display:block;width:24px;height:1px;background:var(--line-2);margin-bottom:12px}
.note--plain::before{display:none}
.cap{display:flex;flex-wrap:wrap;gap:12px;align-items:baseline;margin-top:14px;font-size:var(--t-xs);line-height:1.5;color:var(--ink-3)}
.cap > span:first-of-type{flex:1 1 180px}
.cap::before{content:'';flex:none;width:18px;height:1px;background:var(--line-2);transform:translateY(-3px)}

/* ---------- Section index (big mono numerals) ---------- */
.sx{display:flex;align-items:flex-end;gap:20px;padding-bottom:18px;margin-bottom:clamp(40px,5vw,80px);border-bottom:1px solid var(--line)}
.sx__n{font-family:var(--f-mono);font-weight:400;font-size:clamp(3rem,6.2vw,6.5rem);line-height:.8;letter-spacing:-.06em;color:var(--ink)}
.sx__n span{color:var(--ink-3)}
.sx__l{flex:1;min-width:0;padding-bottom:4px}
.anchor{display:block;height:0}
.sx__a{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);padding-bottom:4px;white-space:nowrap}
.sx__a [data-anchor]{color:var(--ink-2)}
[data-anchor]:empty::before{content:'········'}

/* ---------- Evidence layer: exhibit tags ---------- */
.exh{display:inline-flex;align-items:center;gap:.7em;font-family:var(--f-mono);font-size:12px;line-height:1;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);background:var(--paper);border:1px solid var(--line-2);padding:7px 9px 6px;white-space:nowrap;border-radius:1px}
.exh i{font-style:normal;color:var(--teal-tx)}
.exh b{font-weight:400;color:var(--ink-2)}
.fig{position:relative}
.fig__img{position:relative;overflow:hidden;background:var(--paper-3)}
.fig__img img{width:100%;height:100%;object-fit:cover}
.fig__img > .exh{display:none}
.fig .cap .exh{position:static;flex:0 0 auto;align-self:flex-start;width:max-content;max-width:100%;white-space:nowrap}
@media (max-width:359px){.fig .cap .exh{letter-spacing:.08em;gap:.45em}}
.fig .cap:has(.exh)::before{display:none}
.r-32{aspect-ratio:3/2}.r-43{aspect-ratio:4/3}.r-45{aspect-ratio:4/5}.r-23{aspect-ratio:2/3}.r-169{aspect-ratio:16/9}.r-21{aspect-ratio:21/9}.r-11{aspect-ratio:1/1}

/* ---------- Buttons + links ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:48px;padding:0 22px;border-radius:2px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);font-size:var(--t-sm);font-weight:500;letter-spacing:-.005em;text-decoration:none;cursor:pointer;transition:background .25s var(--ease),border-color .25s var(--ease),color .25s var(--ease)}
.btn:hover{background:var(--teal);border-color:var(--teal)}
.btn--ghost{background:transparent;color:var(--ink);border-color:var(--line-2)}
.btn--ghost:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.btn--sm{min-height:40px;padding:0 16px;font-size:.875rem}
.archive .btn{background:var(--a-tx);color:var(--archive);border-color:var(--a-tx)}
.archive .btn:hover{background:var(--signal);border-color:var(--signal)}
.lnk{display:inline-flex;gap:.5em;align-items:baseline;font-size:var(--t-sm);font-weight:500;text-decoration:none;border-bottom:1px solid var(--line-2);padding-bottom:3px;transition:border-color .2s var(--ease),color .2s var(--ease)}
.lnk:hover{border-color:currentColor;color:var(--teal-tx)}
.archive .lnk{border-color:var(--a-line-2)}
.archive .lnk:hover{color:var(--signal)}
.ctas{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center}

/* ---------- Header ---------- */
.hdr{position:fixed;inset:0 0 auto;z-index:60;height:var(--hdr-h);transition:background .35s var(--ease),border-color .35s var(--ease);border-bottom:1px solid transparent}
.hdr.is-s,.hdr.is-open{background:var(--paper);border-color:var(--line)}
.hdr__in{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.logo__mark{width:34px;height:26px;color:var(--teal)}
.logo__word{font-size:1.125rem;font-weight:500;letter-spacing:-.015em}
.logo__word b{font-weight:600}
.nav{display:flex;align-items:center;gap:clamp(20px,2.6vw,40px)}
.nav__a{font-size:var(--t-sm);text-decoration:none;color:var(--ink-2);padding:6px 0;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.nav__a:hover{color:var(--ink)}
.nav__a[aria-current="page"]{color:var(--ink);border-color:var(--ink)}
.burger{display:none;width:44px;height:44px;border:0;background:none;cursor:pointer;position:relative;margin-right:-10px}
.burger span{position:absolute;left:11px;right:11px;height:1.5px;background:var(--ink);transition:transform .3s var(--ease)}
.burger span:first-child{top:18px}.burger span:last-child{top:25px}
.burger[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
@media (max-width:860px){
  .burger{display:block}
  .nav{position:fixed;top:var(--hdr-h);left:0;right:0;height:calc(100svh - var(--hdr-h));background:var(--paper);flex-direction:column;align-items:stretch;gap:0;padding:12px var(--gut) 32px;visibility:hidden;opacity:0;transition:opacity .25s var(--ease),visibility .25s}
  .nav.is-open{visibility:visible;opacity:1}
  .nav__a{font-size:1.75rem;letter-spacing:-.02em;padding:18px 0;border-bottom:1px solid var(--line)}
  .nav__a[aria-current="page"]{border-color:var(--line)}
  .nav .btn{margin-top:28px;min-height:52px}
}

/* ---------- Hero (index film) ---------- */
.hero{position:relative;height:100svh;min-height:600px;max-height:1200px;overflow:hidden;background:#c9c6be;color:var(--ink)}
.hero__media{position:absolute;inset:0}
.hero__media video,.hero__media img{width:100%;height:100%;object-fit:cover;object-position:28% 50%}
.hero__scrim{position:absolute;left:0;right:0;bottom:0;height:64%;pointer-events:none;
  background:linear-gradient(to top,rgba(252,252,251,.9) 0%,rgba(252,252,251,.8) 30%,rgba(252,252,251,.62) 52%,rgba(252,252,251,.3) 74%,rgba(252,252,251,.08) 90%,rgba(252,252,251,0) 100%)}
.hero__eyebrow{color:var(--ink);margin-bottom:clamp(10px,1.6vh,20px)}
.hero h1{max-width:9ch;margin-left:-.04em}
.hero__bot{position:absolute;left:0;right:0;bottom:clamp(24px,4.5vh,48px)}
.hero__h{margin-bottom:clamp(36px,5.2vh,64px)}
.hero__row{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}
.hero__lede{max-width:46ch;font-size:clamp(1.05rem,.95rem + .4vw,1.3rem);line-height:1.45;color:var(--ink);margin-bottom:22px;text-wrap:pretty}
.hero__meta{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex:none}
.hero__cap{font-size:var(--t-xs);color:var(--ink-2);text-align:right;max-width:30ch}
.hero__ctl{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 10px;border:1px solid var(--line-2);background:rgba(252,252,251,.8);font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:1px;color:var(--ink)}
.hero__ctl:hover{background:var(--paper)}
.hero__ctl svg{width:10px;height:10px}
@media (prefers-reduced-motion:reduce){.hero__ctl{display:none}}
@media (max-width:860px){
  .hero{min-height:640px}
  .hero__media video,.hero__media img{object-position:14% 50%}
  .hero__scrim{height:74%}
  .hero__row{flex-direction:column;align-items:flex-start;gap:22px}
  .hero__meta{align-items:flex-start;flex-direction:row-reverse;flex-wrap:wrap;gap:10px}
  .hero__cap{display:none}
}

/* ---------- Page hero (interior pages) ---------- */
.phero{padding-top:calc(var(--hdr-h) + clamp(56px,9vw,150px));padding-bottom:clamp(56px,7vw,112px)}
.phero__meta{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:clamp(28px,4vw,56px);padding-bottom:16px;border-bottom:1px solid var(--line)}
.phero h1{grid-column:1/11}
.phero .lede{grid-column:6/12;margin-top:clamp(28px,3.5vw,52px)}
@media (max-width:860px){.phero h1,.phero .lede{grid-column:1/-1}}

/* ---------- Full-bleed opener ---------- */
.bleed{position:relative}
.bleed .fig__img{height:clamp(420px,78vh,900px)}
.bleed .cap{padding-inline:var(--gut);max-width:var(--max);margin-inline:auto}
.bleed .exh{left:var(--gut);bottom:22px}

/* ---------- Index: question ---------- */
.q__text{grid-column:1/6;align-self:end}
.q__fig{grid-column:7/13}
.q__text .h2{margin-bottom:clamp(28px,3vw,44px)}
.three{margin-top:clamp(80px,9vw,150px)}
.three__h{grid-column:1/4;padding-top:22px;border-top:1px solid var(--ink)}
.three__list{grid-column:4/13;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--col-gap);list-style:none;counter-reset:q}
.three__list li{padding-top:22px;border-top:1px solid var(--line-2);counter-increment:q}
.three__list li::before{content:'Q.0' counter(q);display:block;font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;color:var(--teal-tx);margin-bottom:28px}
.three__list .h4{font-size:clamp(1.2rem,1rem + .5vw,1.5rem);letter-spacing:-.02em;margin-bottom:12px}
@media (max-width:960px){
  .q__text,.q__fig,.three__h,.three__list{grid-column:1/-1}
  .q__fig{margin-top:48px;order:2}
  .three__list{grid-template-columns:1fr;row-gap:36px;margin-top:28px}
}

/* ---------- Archive (dark chapter) ---------- */
.archive{background:var(--archive);color:var(--a-tx)}
.archive .body,.archive .lede,.archive .small{color:var(--a-tx-2)}
.archive .eyebrow{color:var(--signal)}
.archive .sx{border-color:var(--a-line)}
.archive .sx__n{color:var(--a-tx)}
.archive .sx__n span,.archive .sx__a{color:var(--a-tx-3)}
.archive .sx__a [data-anchor]{color:var(--a-tx-2)}
.archive .note{color:var(--a-tx-3)}
.archive .note::before{background:var(--a-line-2)}
.archive .cap{color:var(--a-tx-3)}
.archive .cap::before{background:var(--a-line-2)}
.archive .exh{background:var(--archive);color:var(--a-tx);border-color:var(--a-line-2)}
.archive .exh i{color:var(--signal)}
.archive .exh b{color:var(--a-tx-2)}

/* ---------- Ledger table ---------- */
.ledger__head{grid-column:1/8}
.ledger__lede{grid-column:8/13;align-self:end}
.ledger{grid-column:1/-1;margin-top:clamp(56px,6vw,96px);width:100%;border-collapse:collapse;text-align:left}
.ledger th,.ledger td{padding:22px 0;vertical-align:top;border-top:1px solid var(--a-line);font-weight:400}
.ledger thead th{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--a-tx-3);padding-block:0 16px;border-top:0}
.ledger thead th:last-child{color:var(--signal)}
.ledger tbody th{width:20%;font-size:var(--t-sm);font-weight:500;color:var(--a-tx);padding-right:24px}
.ledger td{width:40%;padding-right:clamp(16px,3vw,48px);font-size:var(--t-body);line-height:1.5}
.ledger td.a{color:var(--a-tx-3)}
.ledger td.b{color:var(--a-tx);position:relative;padding-left:22px}
.ledger td.b::before{content:'';position:absolute;left:0;top:31px;width:8px;height:8px;border:1px solid var(--signal)}
.ledger__foot{grid-column:1/-1;margin-top:40px}
@media (max-width:860px){
  .ledger__head,.ledger__lede{grid-column:1/-1}
  .ledger__lede{margin-top:24px}
  .ledger thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .ledger,.ledger tbody,.ledger tr,.ledger th,.ledger td{display:block;width:100%!important}
  .ledger tr{border-top:1px solid var(--a-line);padding:22px 0}
  .ledger th,.ledger td{border:0;padding:0}
  .ledger tbody th{margin-bottom:12px;font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--a-tx-3)}
  .ledger td.a{margin-bottom:10px;padding-left:22px;position:relative}
  .ledger td.a::before{content:'';position:absolute;left:0;top:9px;width:8px;height:8px;border:1px solid var(--a-tx-3)}
  .ledger td.b::before{top:9px}
}

/* ---------- Substrate diagram ---------- */
.sub__head{grid-column:1/8}
.sub__body{grid-column:9/13;align-self:end}
.dia{margin-top:clamp(56px,6vw,96px);display:grid;grid-template-columns:minmax(0,1fr) 48px minmax(0,1.5fr) 48px minmax(0,1fr);align-items:stretch;border-top:1px solid var(--ink);padding-top:28px}
.dia__col h3,.dia__core h3,.dia__out h3{font-family:var(--f-mono);font-size:var(--t-mono);font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:18px}
.dia__col ul{list-style:none}
.dia__col li{padding:12px 0;border-top:1px solid var(--line);font-size:var(--t-sm)}
.dia__wire{position:relative}
.dia__wire::before{content:'';position:absolute;left:8px;right:8px;top:50%;height:1px;background:var(--line-2)}
.dia__wire::after{content:'';position:absolute;right:8px;top:calc(50% - 3px);border:3.5px solid transparent;border-left:6px solid var(--ink-3);border-right:0}
.dia__core{border:1px solid var(--ink);padding:22px;background:var(--paper)}
.dia__core h3{color:var(--teal-tx)}
.dia__env{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.dia__env span{display:flex;align-items:center;justify-content:center;min-height:56px;border:1px solid var(--line-2);font-size:.8125rem;text-align:center;padding:8px 10px;overflow-wrap:anywhere}
@media (max-width:1180px) and (min-width:861px){.dia__env{grid-template-columns:repeat(3,minmax(0,1fr))}}
.dia__ops{margin-top:16px;font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);text-align:center}
.dia__out{grid-column:3/4;margin-top:0;padding-top:28px;position:relative;text-align:center}
.dia__out::before{content:'';position:absolute;left:50%;top:0;height:22px;width:1px;background:var(--line-2)}
.dia__out p{font-size:var(--t-sm);color:var(--ink-2);max-width:40ch;margin:0 auto}
.dia__out h3{color:var(--ink);margin-bottom:8px}
.sub__fig{grid-column:1/8;margin-top:clamp(64px,7vw,120px)}
.reasons{grid-column:9/13;margin-top:clamp(64px,7vw,120px);list-style:none;align-self:end}
.reasons li{padding:20px 0;border-top:1px solid var(--line)}
.reasons li:last-child{border-bottom:1px solid var(--line)}
.reasons h3{font-size:1.0625rem;font-weight:500;margin-bottom:6px}
.reasons p{font-size:var(--t-sm);color:var(--ink-2)}
@media (max-width:960px){
  .sub__head,.sub__body,.sub__fig,.reasons{grid-column:1/-1}
  .sub__body{margin-top:24px}
  .dia{grid-template-columns:1fr;row-gap:0}
  .dia__wire{height:40px}
  .dia__wire::before{left:50%;right:auto;top:6px;bottom:6px;width:1px;height:auto}
  .dia__wire::after{left:calc(50% - 3.5px);right:auto;top:auto;bottom:6px;border:3.5px solid transparent;border-top:6px solid var(--ink-3);border-bottom:0}
  .dia__out{grid-column:1/-1}
  .dia__env{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dia__env span:last-child{grid-column:1/-1}
  .reasons{margin-top:48px}
}

/* ---------- Record field ---------- */
.rfsec{padding-top:var(--sec);padding-bottom:0}
.rfsec .sx{margin-bottom:0;border-bottom:0}
.rfwrap{position:relative;height:clamp(460px,62vh,720px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.rf{position:absolute;inset:0}
.rf__over{position:absolute;left:var(--gut);bottom:clamp(24px,4vw,56px);max-width:min(560px,calc(100% - 2*var(--gut)));background:rgba(252,252,251,.92);padding:24px 28px 22px 0;pointer-events:none}
.rf__over .h2{font-size:clamp(2rem,3.4vw,3.75rem);margin-bottom:18px}
.rf__over .note{margin-top:4px}
.rf__hint{position:absolute;right:var(--gut);top:20px;font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);background:rgba(252,252,251,.9);padding:6px 0 6px 10px;pointer-events:none}
.rf noscript p{padding:40px var(--gut);color:var(--ink-2)}
.rec__body{grid-column:1/6;align-self:center}
.rec__fig{grid-column:7/13}
.rec{padding-top:clamp(64px,7vw,120px);padding-bottom:var(--sec)}
@media (max-width:860px){
  .rfwrap{height:clamp(520px,80svh,700px)}
  .rf__over{padding:20px 20px 18px 0;bottom:20px}
  .rf__hint{left:var(--gut);right:auto;padding-left:0}
  .rec__body,.rec__fig{grid-column:1/-1}
  .rec__fig{margin-top:40px}
}

/* ---------- Applications index (home) ---------- */
.ai__head{grid-column:1/8}
.ai__side{grid-column:9/13;align-self:end;display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.ai__list{list-style:none;margin-top:clamp(56px,6vw,96px);border-bottom:1px solid var(--line)}
.ai__row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);align-items:center;padding:22px 0;border-top:1px solid var(--line);text-decoration:none;color:inherit;transition:background .3s var(--ease)}
.ai__row:hover{background:var(--paper-2)}
.ai__n{grid-column:1/2;font-family:var(--f-mono);font-size:.875rem;color:var(--ink-3);padding-left:4px}
.ai__k{grid-column:2/5;font-size:var(--t-sm);font-weight:500}
.ai__t{grid-column:5/10;font-size:clamp(1.2rem,1rem + .6vw,1.6rem);font-weight:500;letter-spacing:-.02em;line-height:1.2;text-wrap:balance}
.ai__t small{display:block;margin-top:8px;font-family:var(--f-mono);font-size:.75rem;font-weight:400;letter-spacing:.01em;color:var(--ink-3);line-height:1.55}
.ai__img{grid-column:10/13;aspect-ratio:3/2;overflow:hidden;background:var(--paper-3)}
.ai__img img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.ai__row:hover .ai__img img{transform:scale(1.03)}
.ai__img--type{display:flex;flex-direction:column;justify-content:space-between;padding:14px 16px;background:var(--paper);border:1px solid var(--ink)}
.ai__img--type span{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.ai__img--type em{font-style:normal;font-size:.875rem;line-height:1.4;color:var(--ink);letter-spacing:-.005em}
@media (max-width:860px){
  .ai__head,.ai__side{grid-column:1/-1}
  .ai__side{margin-top:24px}
  .ai__row{grid-template-columns:44px minmax(0,1fr);row-gap:10px;align-items:start}
  .ai__n{grid-column:1;grid-row:1/3;padding-top:3px;padding-left:0}
  .ai__k{grid-column:2}
  .ai__t{grid-column:2}
  .ai__img{grid-column:2;margin-top:8px}
  .ai__img--type{display:none}
}

/* ---------- Phase bar (30 days, to scale) ---------- */
.ph{margin-top:clamp(48px,5vw,80px)}
.ph__scale{display:grid;grid-template-columns:repeat(30,minmax(0,1fr));font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.06em;color:var(--ink-3);margin-bottom:10px}
.ph__scale span{grid-column:span 5;border-left:1px solid var(--line-2);padding-left:6px;height:18px}
.ph__scale span:last-child{border-right:0}
.ph__bar{display:grid;grid-template-columns:5fr 10fr 10fr 5fr;gap:4px;list-style:none}
.ph__seg{position:relative}
.ph__seg::before{content:'';display:block;height:10px;background:var(--ink);transform-origin:left center}
.ph__seg:nth-child(2)::before{background:var(--teal)}
.ph__seg:nth-child(3)::before{background:var(--ink-2)}
.ph__seg:nth-child(4)::before{background:var(--ink-3)}
.ph__seg b{display:block;margin-top:18px;font-family:var(--f-mono);font-size:var(--t-mono);font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.ph__seg strong{display:block;margin-top:6px;font-size:1.25rem;font-weight:500;letter-spacing:-.02em}
.ph__seg p{margin-top:6px;font-size:var(--t-sm);color:var(--ink-2);padding-right:12px;line-height:1.5}
@media (prefers-reduced-motion:no-preference){
  .ctq-m .ph:not(.is-in) .ph__seg::before{transform:scaleX(0)}
  .ph__seg::before{transition:transform 1s var(--ease)}
  .ph__seg:nth-child(2)::before{transition-delay:.15s}.ph__seg:nth-child(3)::before{transition-delay:.3s}.ph__seg:nth-child(4)::before{transition-delay:.45s}
}
@media (max-width:860px){
  .ph__scale{display:none}
  .ph__bar{grid-template-columns:1fr;gap:0}
  .ph__seg{display:grid;grid-template-columns:minmax(0,1fr);padding:18px 0 18px 0;border-top:1px solid var(--line)}
  .ph__seg::before{height:6px;width:calc(var(--d) / 30 * 100%)}
  .ph__seg b{margin-top:14px}
}
.ev__head{grid-column:1/8}
.ev__body{grid-column:9/13;align-self:end}
@media (max-width:860px){.ev__head,.ev__body{grid-column:1/-1}.ev__body{margin-top:20px}}

/* ---------- IP line + briefing band ---------- */
.ipl{grid-column:3/11;text-align:left}
.ipl .eyebrow{margin-bottom:20px}
.ipl p.big{font-size:clamp(1.5rem,1.1rem + 1.4vw,2.5rem);font-weight:500;letter-spacing:-.025em;line-height:1.2;text-wrap:balance}
.band__h{grid-column:1/8}
.band__b{grid-column:9/13;align-self:end}
.band__b .body{margin-bottom:28px}
.band__b .small{margin-top:18px}
.band__b .small a{color:var(--ink)}
@media (max-width:860px){.ipl,.band__h,.band__b{grid-column:1/-1}.band__b{margin-top:28px}}

/* ---------- Platform: life of a task ---------- */
.life__head{grid-column:1/7}
.life__fig{grid-column:8/13}
.life{margin-top:clamp(72px,8vw,140px)}
.rail{grid-column:1/4;position:sticky;top:calc(var(--hdr-h) + 32px);align-self:start}
.rail p{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px}
.rail ol{list-style:none;border-left:1px solid var(--line)}
.rail a{display:block;padding:11px 0 11px 18px;margin-left:-1px;border-left:2px solid transparent;text-decoration:none;color:var(--ink-3);font-size:var(--t-sm);transition:color .25s var(--ease),border-color .25s var(--ease)}
.rail a span{font-family:var(--f-mono);font-size:.75rem;margin-right:10px}
.rail a:hover{color:var(--ink)}
.rail a.is-on{color:var(--ink);border-left-color:var(--teal);font-weight:500}
.stages{grid-column:4/13}
.stage{padding-bottom:clamp(72px,8vw,128px)}
.stage + .stage{padding-top:clamp(40px,4vw,64px);border-top:1px solid var(--line)}
.stage__tag{display:flex;justify-content:space-between;gap:16px;margin-bottom:22px}
.stage .h3{font-size:clamp(1.8rem,1.3rem + 1.6vw,3rem);letter-spacing:-.03em;margin-bottom:22px;max-width:20ch}
.stage .body{max-width:64ch}
.stage .instr{margin-top:36px}
.stage__hint{margin-top:36px;margin-bottom:-22px;font-family:var(--f-mono);font-size:.75rem;color:var(--ink-3)}
.stage .note{margin-top:28px}
.env5{margin-top:36px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--ink)}
.env5 div{padding:18px 16px 20px;border-left:1px solid var(--line-2)}
.env5 div:first-child{border-left:0}
.env5 b{display:block;font-family:var(--f-mono);font-size:var(--t-mono);font-weight:400;letter-spacing:.12em;color:var(--teal-tx);margin-bottom:28px}
.env5 span{font-size:var(--t-sm);font-weight:500}
.recipe{margin-top:36px;border:1px solid var(--ink);padding:22px 24px;font-family:var(--f-mono);font-size:.8125rem;line-height:1.9;color:var(--ink-2);overflow-wrap:anywhere}
.recipe em{font-style:normal;color:var(--teal-tx)}
.recipe .cap{margin-top:14px;font-family:var(--f-sans)}
@media (max-width:960px){
  .life__head,.life__fig{grid-column:1/-1}
  .life__fig{margin-top:40px}
  .rail{grid-column:1/-1;position:sticky;top:var(--hdr-h);z-index:10;background:var(--paper);margin:0 calc(-1*var(--gut));padding:10px var(--gut);border-bottom:1px solid var(--line)}
  .rail p{display:none}
  .rail ol{display:flex;border-left:0;overflow-x:auto;scrollbar-width:none;gap:6px;position:relative;scroll-padding-inline:16px}
  .rail ol::-webkit-scrollbar{display:none}
  .rail a{white-space:nowrap;border-left:0;border-bottom:2px solid transparent;padding:8px 8px;margin:0}
  .rail a.is-on{border-left:0;border-bottom-color:var(--teal)}
  .stages{grid-column:1/-1;margin-top:40px}
  .env5{grid-template-columns:1fr}
  .env5 div{border-left:0;border-top:1px solid var(--line-2);display:flex;gap:16px;align-items:baseline;padding:14px 16px}
  .env5 div:first-child{border-top:0}
  .env5 b{margin:0;min-width:28px}
}

/* ---------- Platform: lineage archive (record field dark) ---------- */
.lin__text{grid-column:1/6;align-self:center}
.lin__field{grid-column:7/13;position:relative;height:clamp(380px,48vh,560px);border:1px solid var(--a-line)}
.lin__field .rf{position:absolute;inset:0}
.lin__field .rf__hint{background:transparent;color:var(--a-tx-3);right:16px;top:14px}
@media (max-width:960px){.lin__text,.lin__field{grid-column:1/-1}.lin__field{margin-top:40px}}

/* ---------- Products ---------- */
.prods{margin-top:clamp(56px,6vw,96px);align-items:start}
.prod--hpc{grid-column:1/8}
.prod--db{grid-column:9/13;margin-top:clamp(120px,14vw,240px)}
.prod .fig{margin-bottom:36px}
.prod__k{margin-bottom:14px}
.prod .h3{font-size:clamp(1.8rem,1.3rem + 1.6vw,3rem);letter-spacing:-.03em;margin-bottom:20px}
.spec{margin-top:28px;border-top:1px solid var(--ink)}
.spec div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.spec dt{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);padding-top:3px}
.spec dd{font-size:var(--t-sm)}
.prod .note{margin-top:24px}
@media (max-width:960px){.prod--hpc,.prod--db{grid-column:1/-1}.prod--db{margin-top:80px}}

/* ---------- Sovereignty specimen ---------- */
.sov__text{grid-column:1/6}
.sov__text ul{list-style:none;margin-top:28px;border-top:1px solid var(--line)}
.sov__text li{padding:14px 0 14px 28px;border-bottom:1px solid var(--line);font-size:var(--t-sm);position:relative}
.sov__text li::before{content:'';position:absolute;left:0;top:21px;width:10px;height:1px;background:var(--teal)}
.sov__text .note{margin-top:28px}
.spec-card{grid-column:7/13;align-self:start;background:var(--paper);border:1px solid var(--ink);position:relative;font-family:var(--f-mono)}
.spec-card__h{display:flex;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid var(--ink);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase}
.spec-card__h span:last-child{color:var(--ink-3)}
.spec-card dl{padding:6px 20px 8px}
.spec-card dl div{display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px dashed var(--line-2);font-size:.8125rem;line-height:1.5}
.spec-card dl div:last-child{border-bottom:0}
.spec-card dt{color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase;font-size:var(--t-mono);padding-top:2px}
.spec-card dd{color:var(--ink);font-family:var(--f-sans);font-size:var(--t-sm)}
.spec-card__f{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:14px 20px;border-top:1px solid var(--ink);background:var(--paper-2);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase}
.stamp{display:inline-flex;align-items:center;gap:8px;color:#9E3A22;border:1px solid #9E3A22;padding:6px 9px 5px}
.stamp::before{content:'';width:7px;height:7px;background:var(--seal)}
.spec-card__f .ok{color:var(--teal-tx)}
@media (max-width:960px){.sov__text,.spec-card{grid-column:1/-1}.spec-card{margin-top:48px}.spec-card dl div{grid-template-columns:1fr;gap:4px}}

/* ---------- Capacity ---------- */
.cap__text{grid-column:1/5}
.cap__instr{grid-column:6/13}
.src{margin-top:24px;font-size:var(--t-xs);color:var(--ink-3);line-height:1.6}
.src a{color:var(--ink-2)}
@media (max-width:1100px){.cap__text,.cap__instr{grid-column:1/-1}.cap__instr{margin-top:40px}}

/* ---------- Applications page ---------- */
.apps{align-items:start;padding-top:clamp(24px,3vw,48px);border-top:1px solid var(--line)}
.apps .chix,.apps .chapters{padding-top:clamp(40px,4vw,64px)}
.chix{grid-column:1/4;position:sticky;top:calc(var(--hdr-h) + 32px);align-self:start}
.chix p{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px}
.chix-picker{display:none}
.chix ol{list-style:none;border-left:1px solid var(--line)}
.chix a{display:flex;gap:12px;align-items:baseline;padding:10px 0 10px 18px;margin-left:-1px;border-left:2px solid transparent;text-decoration:none;color:var(--ink-3);font-size:var(--t-sm);transition:color .25s var(--ease),border-color .25s var(--ease)}
.chix a span{font-family:var(--f-mono);font-size:.75rem}
.chix a:hover{color:var(--ink)}
.chix a.is-on{color:var(--ink);border-left-color:var(--teal);font-weight:500}
.chapters{grid-column:4/13}
.ch{padding-bottom:clamp(96px,10vw,168px)}
.ch + .ch{padding-top:clamp(48px,5vw,80px);border-top:1px solid var(--line)}
.ch__meta{display:flex;justify-content:space-between;gap:16px;align-items:baseline;margin-bottom:28px}
.ch .h2{max-width:16ch;margin-bottom:clamp(32px,3.5vw,52px)}
.ch .fig{margin-bottom:clamp(40px,4vw,64px)}
.ch__grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,5fr);column-gap:var(--col-gap)}
.ch__q{font-size:var(--t-lede);line-height:1.4;letter-spacing:-.01em;color:var(--ink);text-wrap:pretty}
.ch__q small{display:block;font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px}
.cap3 h3{font-family:var(--f-mono);font-size:var(--t-mono);font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}
.cap3 ol{list-style:none;counter-reset:c}
.cap3 li{counter-increment:c;display:grid;grid-template-columns:36px minmax(0,1fr);padding:14px 0;border-bottom:1px solid var(--line);font-size:var(--t-sm);line-height:1.55}
.cap3 li::before{content:'0' counter(c);font-family:var(--f-mono);font-size:.75rem;color:var(--teal-tx);padding-top:2px}
.outcome{margin-top:28px;padding:20px 0 0;border-top:1px solid var(--ink)}
.outcome small{display:block;font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--teal-tx);margin-bottom:8px}
.outcome p{font-size:1.25rem;font-weight:500;letter-spacing:-.015em;line-height:1.3}
.ch .note{margin-top:28px}
.ch__detail{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,4fr);column-gap:var(--col-gap);margin-top:clamp(48px,5vw,80px);align-items:end}
.ch__detail .fig{margin-bottom:0}
.ch__detail .body{padding-bottom:40px}
.ch--dark{background:var(--archive);color:var(--a-tx);padding:clamp(40px,5vw,72px) clamp(24px,4vw,64px) clamp(56px,6vw,96px);margin-block:clamp(24px,3vw,48px)}
.ch + .ch--dark,.ch--dark + .ch{border-top:0}
.ch--dark .ch__q{color:var(--a-tx)}
.ch--dark .eyebrow{color:var(--signal)}
.ch--dark .sx__a,.ch--dark .sx__a [data-anchor]{color:var(--a-tx-3)}
.ch--dark .ch__q small,.ch--dark .cap3 h3{color:var(--a-tx-3)}
.ch--dark .cap3 li{border-color:var(--a-line);color:var(--a-tx-2)}
.ch--dark .cap3 li::before{color:var(--signal)}
.ch--dark .outcome{border-color:var(--a-tx)}
.ch--dark .outcome small{color:var(--signal)}
.inv{margin-top:clamp(48px,5vw,80px);border-top:1px solid var(--a-line);padding-top:28px}
.inv h3,.scope h3,.delta h3{font-family:var(--f-mono);font-size:var(--t-mono);font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--signal);margin-bottom:20px}
.inv ol{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;counter-reset:s}
.inv li{counter-increment:s;padding:16px 14px 18px;border:1px solid var(--a-line);font-size:var(--t-sm);color:var(--a-tx-2);line-height:1.45}
.inv li::before{content:'0' counter(s);display:block;font-family:var(--f-mono);font-size:.75rem;color:var(--a-tx-3);margin-bottom:22px}
.inv li:nth-child(4){border-color:var(--alarm)}
.inv li:nth-child(4)::before{color:var(--alarm)}
.ds{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,5fr);column-gap:var(--col-gap);margin-top:clamp(48px,5vw,80px);border-top:1px solid var(--a-line);padding-top:28px}
.delta p,.scope p{color:var(--a-tx-2);font-size:var(--t-sm);line-height:1.6}
.scope__lede{font-size:var(--t-h3)!important;color:var(--a-tx)!important;font-weight:500;letter-spacing:-.02em;line-height:1.2!important;margin-bottom:16px}
.scope ul{list-style:none;margin:20px 0}
.scope li{padding:12px 0 12px 22px;border-top:1px solid var(--a-line);font-size:var(--t-sm);color:var(--a-tx);position:relative}
.scope li::before{content:'';position:absolute;left:0;top:20px;width:8px;height:8px;border:1px solid var(--signal)}
.scope p + p{margin-top:12px}
.ch--dark .note{color:var(--a-tx-3)}
.ch--dark .note::before{background:var(--a-line-2)}
.ch--dark .cap{color:var(--a-tx-3)}
.ch--dark .exh{background:var(--archive);color:var(--a-tx);border-color:var(--a-line-2)}
.ch--dark .exh i{color:var(--signal)}
.ch--dark .exh b{color:var(--a-tx-2)}
@media (max-width:1100px){.inv ol{grid-template-columns:repeat(2,minmax(0,1fr))}.inv li:last-child{grid-column:1/-1}}
@media (max-width:960px){
  .chix{grid-column:1/-1;position:sticky;top:var(--hdr-h);z-index:10;background:var(--paper);margin:0 calc(-1*var(--gut));padding:10px var(--gut);border-bottom:1px solid var(--line)}
  .chix p{display:none}
  .chix.has-picker ol{display:none}
  .chix.has-picker .chix-picker{display:flex;align-items:center;gap:12px;margin:0}
  .chix-picker span{font-family:var(--f-mono);font-size:12px;color:var(--ink-2);flex:none}
  .chix-picker select{flex:1;min-width:0;min-height:44px;padding:8px 32px 8px 12px;font:inherit;font-size:14px;color:var(--ink);background:var(--paper);border:1px solid var(--line-2)}
  .chix ol{display:flex;border-left:0;overflow-x:auto;scrollbar-width:none;gap:4px;position:relative;scroll-padding-inline:16px}
  .chix ol::-webkit-scrollbar{display:none}
  .chix a{white-space:nowrap;border-left:0;border-bottom:2px solid transparent;padding:8px 8px;margin:0}
  .chix a.is-on{border-left:0;border-bottom-color:var(--teal)}
  .chapters{grid-column:1/-1;margin-top:48px}
  .ch__grid,.ch__detail,.ds{grid-template-columns:1fr}
  .cap3{margin-top:32px}
  .ch__detail .body{padding:28px 0 0;order:2}
  .scope{margin-top:36px}
  .ch--dark{margin-inline:calc(-1*var(--gut));padding-inline:var(--gut)}
}
@media (max-width:560px){.inv ol{grid-template-columns:1fr}.inv li:last-child{grid-column:auto}}

/* ---------- Evaluation page ---------- */
.score{width:100%;border-collapse:collapse;margin-top:clamp(48px,5vw,80px);text-align:left}
.score th,.score td{padding:20px 0;border-top:1px solid var(--line);vertical-align:top;font-weight:400}
.score thead th{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);border-top:0;padding-block:0 14px}
.score tbody tr:last-child td,.score tbody tr:last-child th{border-bottom:1px solid var(--line)}
.score tbody th{width:30%;font-size:1.125rem;font-weight:500;letter-spacing:-.01em;padding-right:24px}
.score tbody th span{display:inline-block;width:40px;font-family:var(--f-mono);font-size:.75rem;color:var(--ink-3);font-weight:400}
.score td{color:var(--ink-2);padding-right:24px}
.score td.agr{width:22%;padding-right:0}
.agree{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--teal-tx)}
.agree::before{content:'';width:12px;height:12px;border:1px solid var(--teal)}
.score__note{margin-top:24px}
@media (max-width:860px){
  .score thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .score,.score tbody,.score tr,.score th,.score td{display:block;width:100%!important}
  .score tr{padding:18px 0;border-top:1px solid var(--line)}
  .score th,.score td{border:0!important;padding:0}
  .score td{margin-top:8px}
}
.gates__text{grid-column:1/6}
.gates__list{grid-column:7/13;list-style:none;counter-reset:g}
.gates__list li{counter-increment:g;display:grid;grid-template-columns:64px minmax(0,1fr);padding:22px 0;border-top:1px solid var(--a-line);font-size:1.125rem;line-height:1.45;color:var(--a-tx)}
.gates__list li:last-child{border-bottom:1px solid var(--a-line)}
.gates__list li::before{content:'G.0' counter(g);font-family:var(--f-mono);font-size:.75rem;letter-spacing:.08em;color:var(--signal);padding-top:4px}
@media (max-width:960px){.gates__text,.gates__list{grid-column:1/-1}.gates__list{margin-top:40px}}
.cust__fig{grid-column:1/7}
.cust__text{grid-column:8/13;align-self:center}
.cust__text ul{list-style:none;margin-top:28px;border-top:1px solid var(--line)}
.cust__text li{padding:14px 0;border-bottom:1px solid var(--line);font-size:var(--t-sm);display:grid;grid-template-columns:28px minmax(0,1fr)}
.cust__text li::before{content:'—';color:var(--teal-tx)}
@media (max-width:960px){.cust__fig,.cust__text{grid-column:1/-1}.cust__text{margin-top:40px}}
.faq__h{grid-column:1/5}
.faq{grid-column:5/13;border-top:1px solid var(--ink)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:48px minmax(0,1fr) 24px;align-items:baseline;gap:8px;padding:22px 0;font-size:clamp(1.1rem,1rem + .35vw,1.3rem);font-weight:500;letter-spacing:-.015em}
.faq summary::-webkit-details-marker{display:none}
.faq summary span{font-family:var(--f-mono);font-size:.75rem;color:var(--ink-3);font-weight:400}
.faq summary i{position:relative;width:14px;height:14px;justify-self:end;align-self:center}
.faq summary i::before,.faq summary i::after{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:var(--ink);transition:transform .3s var(--ease)}
.faq summary i::after{transform:rotate(90deg)}
.faq details[open] summary i::after{transform:rotate(0)}
.faq summary:hover{color:var(--teal-tx)}
.faq details p{padding:0 32px 26px 56px;color:var(--ink-2);max-width:72ch}
@media (max-width:960px){.faq__h,.faq{grid-column:1/-1}.faq{margin-top:40px}.faq summary{grid-template-columns:36px minmax(0,1fr) 20px}.faq details p{padding:0 0 22px 44px}}

/* ---------- Briefing form ---------- */
.brief__text{grid-column:1/6}
.brief__text ul{list-style:none;margin-top:32px;border-top:1px solid var(--line)}
.brief__text li{padding:14px 0 14px 28px;border-bottom:1px solid var(--line);font-size:var(--t-sm);position:relative}
.brief__text li::before{content:'';position:absolute;left:0;top:19px;width:12px;height:7px;border-left:1.5px solid var(--teal);border-bottom:1.5px solid var(--teal);transform:rotate(-45deg)}
.form{grid-column:7/13;display:grid;gap:20px;background:var(--paper);border:1px solid var(--ink);padding:clamp(24px,3vw,40px)}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.form label{display:grid;gap:8px;font-size:var(--t-xs);font-weight:500;color:var(--ink-2)}
.form input,.form select,.form textarea{width:100%;min-height:48px;border:0;border-bottom:1px solid var(--line-2);background:transparent;padding:10px 0;font-size:1rem;color:var(--ink);border-radius:0;transition:border-color .2s}
.form textarea{min-height:96px;resize:vertical;border:1px solid var(--line-2);padding:12px}
.form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 12px) 22px,calc(100% - 7px) 22px;background-size:5px 5px;background-repeat:no-repeat;padding-right:28px}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--teal)}
.form input:focus-visible,.form select:focus-visible,.form textarea:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.form [aria-invalid="true"]{border-color:var(--seal)}
.form .btn{width:100%;min-height:54px}
.form__note{font-size:var(--t-xs);color:var(--ink-3)}
.form__note.is-err{color:var(--seal)}
.form__note a{color:var(--ink-2)}
@media (max-width:960px){.brief__text,.form{grid-column:1/-1}.form{margin-top:40px}}
@media (max-width:560px){.f2{grid-template-columns:1fr}}

/* ---------- Generic two-up text ---------- */
.tl2__h{grid-column:1/7}
.tl2__b{grid-column:8/13;align-self:end}
@media (max-width:860px){.tl2__h,.tl2__b{grid-column:1/-1}.tl2__b{margin-top:24px}}
.hfig{grid-column:1/-1;margin-top:clamp(48px,5vw,80px)}

/* ---------- Custody strip + footer ---------- */
.custody{background:var(--paper-2);border-top:1px solid var(--line);padding:28px 0}
.custody__in{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);column-gap:var(--col-gap);align-items:start}
.custody__h{font-size:var(--t-xs);color:var(--ink-2);line-height:1.5;display:flex;gap:10px}
.custody__h::before{content:'';flex:none;width:8px;height:8px;margin-top:4px;border:1px solid var(--teal);background:var(--teal)}
.custody__list{list-style:none;display:flex;flex-wrap:wrap;gap:8px 22px;font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.06em;color:var(--ink-3)}
.custody__list li{display:flex;gap:8px;opacity:.45;transition:opacity .4s var(--ease)}
.custody__list li.is-on{opacity:1}
.custody__list b{font-weight:500;color:var(--ink)}
.custody__list a{text-decoration:none}
@media (max-width:860px){.custody__in{grid-template-columns:1fr;row-gap:16px}}
.ftr{background:var(--paper-2);border-top:1px solid var(--line);padding:clamp(56px,6vw,96px) 0 32px}
.ftr__top{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:40px}
.ftr__brand{grid-column:1/5}
.ftr__tag{margin-top:28px;font-size:clamp(2.4rem,4.2vw,4.5rem);font-weight:500;letter-spacing:-.045em;line-height:.95}
.ftr__col{grid-column:span 2}
.ftr__col + .ftr__col{grid-column:7/9}
.ftr__col:first-of-type{grid-column:5/7}
.ftr__col h2{font-family:var(--f-mono);font-size:var(--t-mono);font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:16px}
.ftr__col ul{list-style:none;display:grid;gap:8px}
.ftr__col a{font-size:var(--t-sm);text-decoration:none;color:var(--ink-2)}
.ftr__col a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.ftr__root{grid-column:9/13}
.ftr__root h2{font-family:var(--f-mono);font-size:var(--t-mono);font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}
.ftr__root code{display:block;font-family:var(--f-mono);font-size:.75rem;line-height:1.6;color:var(--ink);overflow-wrap:anywhere;padding:12px 14px;border:1px solid var(--line-2);background:var(--paper)}
.ftr__root p{margin-top:10px;font-size:var(--t-xs);color:var(--ink-3)}
.ftr__bot{margin-top:clamp(48px,5vw,80px);padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;font-size:var(--t-xs);color:var(--ink-3)}
.ftr__bot p:first-child{max-width:80ch}
@media (max-width:960px){.ftr__brand,.ftr__root{grid-column:1/-1}.ftr__col,.ftr__col + .ftr__col,.ftr__col:first-of-type{grid-column:span 6}.ftr__bot{flex-direction:column}}

/* ---------- Utilities ---------- */
.mt-s{margin-top:20px}.mt-m{margin-top:36px}.mt-l{margin-top:clamp(48px,5vw,80px)}
.c-full{grid-column:1/-1}

/* ---------- Final integration: editorial opening (type on paper, film in its own frame) ---------- */
.opening{padding-top:calc(var(--hdr-h) + clamp(36px,6vw,96px));background:var(--paper)}
.opening__category{margin-bottom:clamp(12px,1.6vw,24px);color:var(--teal-tx)}
.opening__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);align-items:end}
.opening h1.display{grid-column:1/9;font-size:clamp(3.5rem,11.2vw,12.5rem);line-height:.88;margin-left:-.045em}
.opening__side{grid-column:9/13;padding-bottom:.5rem}
.opening__side .lede{color:var(--ink);margin-bottom:28px}
.opening__film{margin-top:clamp(40px,5vw,80px);position:relative}
.opening__frame{width:100%;height:clamp(300px,46vw,760px);overflow:hidden;background:var(--paper-3)}
.opening__frame video{width:100%;height:100%;object-fit:cover;object-position:30% 72%}
.opening__toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:14px;margin-top:0}
.opening__toolbar .cap{margin:0}
.opening .hero__ctl{background:var(--paper);flex:none}
@media (max-width:960px){
  .opening h1.display{grid-column:1/-1}
  .opening__side{grid-column:1/-1;margin-top:28px;padding:0}
  .opening__side .lede{margin-bottom:22px}
}
@media (max-width:560px){
  .opening{padding-top:calc(var(--hdr-h) + 20px)}
  .opening h1.display{font-size:clamp(3.4rem,17.4vw,5rem)}
  .opening__frame{height:clamp(240px,62vw,320px)}
  .opening__film{margin-top:32px}
  .opening__toolbar{align-items:flex-start;flex-direction:column;gap:10px}
}

/* ---------- Field guides and dossier ---------- */
.field-guide{background:var(--paper)}
.r-acoustic{aspect-ratio:650/515}.r-visual{aspect-ratio:21/8}.r-legal{aspect-ratio:2/3}
.guide-hero{padding-top:calc(var(--hdr-h) + clamp(44px,6vw,104px));padding-bottom:clamp(36px,5vw,72px)}
.guide-title{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:28px;align-items:end}
.guide-title h1{grid-column:1/8;font-size:clamp(3rem,7.4vw,8rem);line-height:.94}
.guide-title > div{grid-column:9/13}
.guide-title .lede{color:var(--ink)}
.guide-back{margin-top:26px}
.guide-plate{padding-bottom:clamp(24px,3vw,40px)}
.guide-plate .fig__img,.acoustic-opener .fig__img,.legal-opener .fig__img,.dossier-overview .fig__img{overflow:hidden;background:var(--paper-3)}
.guide-plate img,.acoustic-opener img,.legal-opener img,.dossier-overview img{width:100%;height:100%;object-fit:cover}
.r-visual img{object-position:50% 38%}
.fig .cap span{display:block;max-width:76ch}
.fig .cap a{text-decoration-thickness:1px;text-underline-offset:3px}
.guide-section{padding-block:clamp(48px,6vw,96px);border-top:1px solid var(--line)}
.guide-section--paper{background:var(--paper-2)}
.guide-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:24px;align-items:start}
.guide-margin{grid-column:1/4;position:sticky;top:calc(var(--hdr-h) + 28px)}
.guide-margin .mono,.guide-margin .eyebrow{display:block;color:var(--teal-tx);margin-bottom:14px}
.guide-margin p{font-family:var(--f-mono);font-size:.75rem;line-height:1.65;color:var(--ink-3);max-width:28ch}
.guide-margin .h3{margin-bottom:14px}
.guide-margin .h3+p{font-family:var(--f-sans);font-size:var(--t-sm)}
.guide-copy{grid-column:5/12;min-width:0}
.guide-copy .h3{margin-bottom:22px;max-width:22ch}
.guide-copy p{color:var(--ink-2);max-width:66ch;text-wrap:pretty}
.guide-copy p+p{margin-top:1em}
.guide-copy .ctas{margin-top:26px}
.guide-path{list-style:none;counter-reset:gp;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;border-top:1px solid var(--ink);margin-bottom:24px}
.guide-path li{counter-increment:gp;padding:16px 16px 20px 0;border-bottom:1px solid var(--line);font-size:var(--t-sm);line-height:1.5}
.guide-path li::before{content:'0' counter(gp);display:block;font-family:var(--f-mono);font-size:.75rem;color:var(--teal-tx);margin-bottom:16px}
.guide-path b{display:block;font-weight:500;font-size:1.0625rem;margin-bottom:4px}
.guide-path span{color:var(--ink-2)}
.guide-register{margin-top:28px;border-top:1px solid var(--ink)}
.guide-register div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.guide-register dt{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);padding-top:3px}
.guide-register dd{font-size:var(--t-sm);color:var(--ink-2)}
.guide-close{padding-block:clamp(56px,7vw,104px);border-top:1px solid var(--line);background:var(--paper-2)}
.guide-close .eyebrow{grid-column:1/4}
.guide-close .guide-copy{grid-column:5/12}
.acoustic-opener{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:32px;align-items:start;padding-bottom:clamp(40px,5vw,72px)}
.acoustic-note{grid-column:1/6;border-top:1px solid var(--ink);padding-top:20px}
.acoustic-note .eyebrow{margin-bottom:20px}
.acoustic-note .lede{color:var(--ink);max-width:28ch}
.acoustic-reference{grid-column:7/13;max-width:650px;justify-self:end;width:100%}
.legal-opener{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:32px;align-items:start;padding-bottom:clamp(40px,5vw,72px)}
.legal-example{grid-column:1/7;border:1px solid var(--ink);padding:clamp(24px,3vw,44px);background:var(--paper)}
.legal-example .eyebrow{margin-bottom:24px}
.legal-example .h3{font-size:clamp(2rem,1.4rem + 2vw,3.6rem);line-height:1.02;margin-bottom:24px}
.legal-example p{color:var(--ink-2);max-width:48ch}
.legal-example .mono{display:block;margin-top:28px;color:var(--teal-tx)}
.legal-reference{grid-column:9/13;max-width:420px;justify-self:end;width:100%}
.legal-reference img{object-position:50% 40%}
.legal-steps{list-style:none;counter-reset:ls;border-top:1px solid var(--ink)}
.legal-steps li{counter-increment:ls;position:relative;padding:13px 0 13px 44px;border-bottom:1px solid var(--line);font-size:var(--t-sm);color:var(--ink-2)}
.legal-steps li::before{content:'0' counter(ls);position:absolute;left:0;top:15px;font-family:var(--f-mono);font-size:.75rem;color:var(--teal-tx);padding-top:2px}
.legal-steps b{color:var(--ink);font-weight:500;margin-right:.35em}
.dossier-hero .guide-title h1{grid-column:1/8}
.dossier-overview{padding-block:clamp(40px,5vw,80px);border-top:1px solid var(--line)}
.dossier-overview__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--col-gap);row-gap:36px;align-items:start}
.dossier-overview__grid>div{grid-column:1/6}
.dossier-overview .fig{grid-column:7/13}
.dossier-overview .eyebrow{margin-bottom:18px}
.dossier-overview p{color:var(--ink-2);max-width:56ch;margin-bottom:1em}
.filing-scope{padding-block:clamp(56px,7vw,112px);border-top:1px solid var(--line)}
.filing-scope h2{font-size:clamp(2.8rem,8vw,8.5rem);font-weight:500;line-height:.95;letter-spacing:-.05em;margin:18px 0 clamp(28px,4vw,52px)}
.filing-scope h2 span{color:var(--ink-3)}
.part-sequence{list-style:none;display:grid;grid-template-columns:repeat(17,minmax(0,1fr));border:1px solid var(--ink);background:var(--paper)}
.part-sequence li{padding:16px 0;text-align:center;font-family:var(--f-mono);font-size:clamp(.8rem,1.2vw,1.1rem);border-left:1px solid var(--line-2)}
.part-sequence li:first-child{border-left:0}
.scope-statement{margin-top:24px;font-size:var(--t-lede);color:var(--ink);font-weight:500;letter-spacing:-.01em}
.filing-scope .small{margin-top:10px;max-width:70ch;color:var(--ink-3)}
.dossier-agenda,.dossier-tools,.dossier-credits{padding-block:clamp(48px,6vw,96px);border-top:1px solid var(--line)}
.diligence-list{border-top:1px solid var(--ink)}
.diligence-list details{border-bottom:1px solid var(--line)}
.diligence-list summary{cursor:pointer;list-style:none;padding:20px 0;font-family:var(--f-mono);font-size:.75rem;color:var(--ink-3);display:flex;gap:18px;align-items:baseline}
.diligence-list summary::-webkit-details-marker{display:none}
.diligence-list summary span{font-family:var(--f-sans);font-size:clamp(1.15rem,1rem + .4vw,1.4rem);font-weight:500;letter-spacing:-.015em;color:var(--ink)}
.diligence-list summary:hover span{color:var(--teal-tx)}
.diligence-list details p{padding:0 0 24px 0;max-width:64ch}
.dossier-guides{padding-block:clamp(48px,6vw,96px);border-top:1px solid var(--line)}
.dossier-guides .h3{margin:14px 0 clamp(28px,3vw,44px)}
.field-index{border-top:1px solid var(--ink)}
.field-index a{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,6fr) 32px;gap:var(--col-gap);align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line);text-decoration:none}
.field-index a span{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.field-index a b{font-size:clamp(1.2rem,1rem + .7vw,1.8rem);font-weight:500;letter-spacing:-.02em}
.field-index a i{font-style:normal;justify-self:end}
.field-index a:hover{background:var(--paper-2)}
.credit-list{list-style:none;margin:20px 0;border-top:1px solid var(--line)}
.credit-list li{padding:12px 0;border-bottom:1px solid var(--line);font-size:var(--t-sm);color:var(--ink-2)}
.guide-copy a:not(.btn):not(.lnk){color:var(--ink)}
.why-now{padding-block:clamp(48px,6vw,96px)}
@media (max-width:960px){
  .guide-title h1,.guide-title>div,.dossier-hero .guide-title h1{grid-column:1/-1}
  .guide-margin{grid-column:1/-1;position:static}
  .guide-margin p{max-width:60ch}
  .guide-copy,.guide-close .guide-copy,.guide-close .eyebrow{grid-column:1/-1}
  .acoustic-note,.acoustic-reference,.legal-example,.legal-reference,.dossier-overview__grid>div,.dossier-overview .fig{grid-column:1/-1}
  .acoustic-reference,.legal-reference{justify-self:start}
  .legal-reference{justify-self:center}
  .legal-reference{max-width:340px}
  .r-visual{aspect-ratio:16/9}
  .field-index a{grid-template-columns:1fr 24px}
  .field-index a span{grid-column:1/-1}
}
@media (max-width:560px){
  .part-sequence{grid-template-columns:repeat(9,minmax(0,1fr))}
  .part-sequence li:nth-child(9n+1){border-left:0}
  .part-sequence li:nth-child(n+10){border-top:1px solid var(--line-2)}
  .guide-register div{grid-template-columns:1fr;gap:4px}
  .guide-path{grid-template-columns:1fr}
}
.dossier-overview .h3{margin-bottom:18px}
.guide-register+p{margin-top:22px}
.legal-steps{margin-top:22px}

/* ---------- Fix pass ---------- */
.evidence-ladder .guide-path{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1180px) and (min-width:741px){.evidence-ladder .guide-path{grid-template-columns:repeat(3,minmax(0,1fr))}.evidence-ladder .guide-path li{padding-right:14px}}
@media (max-width:740px){.evidence-ladder .guide-path{grid-template-columns:1fr}}
.rf{outline-offset:-3px}.rf:focus-visible{outline:2px solid var(--teal);outline-offset:-3px}
.topicnote{font-size:var(--t-sm);color:var(--teal-tx);border-left:2px solid var(--teal);padding:2px 0 2px 12px;margin:0 0 4px}
.topicnote[hidden]{display:none}
@media (max-width:860px){
  .stage{scroll-margin-top:calc(var(--hdr-h) + 72px)}
  .ch{scroll-margin-top:calc(var(--hdr-h) + 104px)}
}
@media (max-width:600px){
  .sx__a,.phero__meta p{white-space:normal;overflow-wrap:anywhere}
  .ftr__col a,.ftr__root,.ftr__root *{overflow-wrap:anywhere}
}
.phero__meta,.sx{flex-wrap:wrap;row-gap:.4em}
h1,.h1,.display,.h2{overflow-wrap:break-word;hyphens:auto}
@media (max-width:600px){h1,.h1,.display{overflow-wrap:anywhere}}
.ftr__col a{overflow-wrap:anywhere}
.fs-lead{max-width:62ch;margin:28px 0 20px;color:var(--ink-2)}
.life__study{margin-top:clamp(48px,6vw,96px)}
.spec dt,.spec-card dt,.guide-register dt{overflow-wrap:anywhere;min-width:0}
@media (max-width:600px){.eyebrow,.sx__l{white-space:normal;overflow-wrap:anywhere;min-width:0}}
.ai__img--type{aspect-ratio:auto;align-self:start;justify-content:flex-start;gap:14px}
