
/* Layout: a consulting-report reading experience. One narrative spine (task → workflow → process → operating model → value), each section a single exhibit with a numbered caption, diagrams instead of paragraphs, navy for structure, cyan only where agents and AI flows move. */
:root{
  --bg:#FFFFFF; --bg2:#F5F6F8; --tint:#EDF4FA; --ink:#14181F; --muted:#586172; --line:#DCE1E8;
  --brand:#0B2545; --brand-fill:#0B2545; --on-brand:#FFFFFF; --ai:#0A8FD0; --ai-ink:#006A9C; --ai-soft:#D9EEF9; --warn:#006A9C;
  --final:#07101E; --final-ink:#F2F5FA; --final-muted:#8E9AAF;
  --f-display:"Aptos Display","Aptos","Hanken Grotesk","Segoe UI",Helvetica,Arial,sans-serif;
  --f-sans:"Aptos","Hanken Grotesk","Segoe UI",Helvetica,Arial,sans-serif;
  --f-mono:"Aptos","Hanken Grotesk","Segoe UI",Helvetica,Arial,sans-serif;
  --gl:max(16px,env(safe-area-inset-left,0px)); --gr:max(16px,env(safe-area-inset-right,0px));
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#0A0E14; --bg2:#10151E; --tint:#0D1A27; --ink:#E7EBF1; --muted:#9AA4B4; --line:#253042;
  --brand:#AFC7EA; --brand-fill:#143058; --on-brand:#FFFFFF; --ai:#38BDF2; --ai-ink:#68CEF6; --ai-soft:#0F2D40; --warn:#68CEF6;
  --final:#050A13; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0A0E14; --bg2:#10151E; --tint:#0D1A27; --ink:#E7EBF1; --muted:#9AA4B4; --line:#253042;
  --brand:#AFC7EA; --brand-fill:#143058; --on-brand:#FFFFFF; --ai:#38BDF2; --ai-ink:#68CEF6; --ai-soft:#0F2D40; --warn:#68CEF6;
  --final:#050A13; color-scheme:dark}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{background:var(--bg);color:var(--ink);font-family:var(--f-sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit}
:focus-visible{outline:2px solid var(--ai);outline-offset:3px}
.wrap{max-width:1240px;margin:0 auto;padding-left:var(--gl);padding-right:var(--gr)}
@media(min-width:900px){.wrap{padding-left:max(40px,env(safe-area-inset-left,0px));padding-right:max(40px,env(safe-area-inset-right,0px))}}
section{padding-block:clamp(64px,7.5vw,96px);scroll-margin-top:60px}
.alt{background:var(--bg2)} .tinted{background:var(--tint)}
.eyebrow{font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ai-ink);display:flex;gap:12px;align-items:center}
.eyebrow::before{content:"";width:28px;height:1px;background:currentColor}
h1,h2,h3{text-wrap:balance}
h2{font-family:var(--f-display);font-weight:400;font-size:clamp(34px,4.4vw,58px);line-height:1.05;letter-spacing:-.015em;margin:16px 0 0;color:var(--brand)}
.lede{font-size:clamp(17px,1.5vw,20px);color:var(--muted);max-width:62ch;margin:20px 0 0}
.head{margin-bottom:clamp(32px,4vw,48px)}
.exhibit{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-top:1px solid var(--line);padding-top:10px;margin-top:20px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.tag{display:inline-block;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:3px 7px;border:1px solid currentColor;line-height:1.3}
.tag.report{color:var(--brand)} .tag.illus{color:var(--warn)}
.quote{font-family:var(--f-display);font-size:clamp(24px,2.6vw,34px);line-height:1.2;color:var(--brand);margin:clamp(36px,4vw,48px) 0 0;padding-left:24px;border-left:2px solid var(--ai);max-width:30ch}
.arrow{color:var(--ai)}

/* nav */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:20;background:var(--bg)}
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:19;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;gap:28px;height:60px}
.brand{font-family:var(--f-display);font-size:19px;color:var(--brand);text-decoration:none;white-space:nowrap}
.brand b{font-weight:600}
.nav .wrap>ul{list-style:none;margin:0 0 0 auto;padding:0;display:flex;gap:22px;overflow-x:auto;scrollbar-width:none;min-width:0}
.nav .wrap>ul::-webkit-scrollbar{display:none}
.nav a.l{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--muted);white-space:nowrap;padding-block:20px;border-bottom:2px solid transparent}
.nav a.l:hover,.nav a.l.on{color:var(--brand);border-color:var(--ai)}
.progress{position:absolute;left:0;bottom:-1px;height:2px;background:var(--ai);width:0}


/* hero */
.hero{padding-block:96px 72px}
.hero h1{font-family:var(--f-display);font-weight:400;font-size:clamp(42px,6.4vw,92px);line-height:.98;letter-spacing:-.025em;color:var(--brand);margin:0;max-width:15ch}
.hero h1 em{font-style:italic;color:var(--ai-ink)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;margin-top:32px}
@media(min-width:900px){.hero-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px}}
.sub{font-family:var(--f-display);font-size:clamp(21px,2vw,26px);line-height:1.3;margin:0;color:var(--ink)}
.support{margin:0;color:var(--muted)}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.btn{font-family:var(--f-sans);font-weight:500;font-size:15px;text-decoration:none;padding:13px 20px;border:1px solid var(--brand);display:inline-flex;gap:10px;align-items:center;transition:background .2s,color .2s}
.btn.primary{background:var(--brand-fill);color:var(--on-brand);border-color:var(--brand-fill)}
.btn.primary:hover{background:var(--ai-ink);border-color:var(--ai-ink)}
.btn.ghost{color:var(--brand)} .btn.ghost:hover{background:var(--tint)}

.flow{margin-top:72px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;position:relative}
.fnode{position:relative;padding:18px 14px 0 0;display:grid;gap:8px;align-content:start}
.fnode::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--line);transition:background .5s}
.fnode .dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--line);background:var(--bg);position:absolute;top:-6px;left:0;transition:all .5s}
.fnode .n{font-family:var(--f-mono);font-size:11px;color:var(--muted)}
.fnode b{font-family:var(--f-display);font-weight:500;font-size:clamp(17px,1.6vw,22px);line-height:1.15;color:var(--muted);transition:color .5s}
.fnode span.d{font-size:13px;color:var(--muted);line-height:1.4}
.fnode.on::before{background:var(--brand)}
.fnode.on .dot{border-color:var(--brand);background:var(--brand)}
.fnode.on b{color:var(--brand)}
.fnode.on.ai::before{background:var(--ai)}
.fnode.on.ai .dot{border-color:var(--ai);background:var(--ai);box-shadow:0 0 0 6px var(--ai-soft)}
.fnode.on.ai b{color:var(--ai-ink)}
@media(max-width:820px){.flow{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}}
.flow-scale{display:flex;justify-content:space-between;font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:28px;border-top:1px dashed var(--line);padding-top:10px;gap:8px;flex-wrap:wrap}

/* paradox */
.paradox{display:grid;grid-template-columns:minmax(0,1fr);gap:48px}
@media(min-width:960px){.paradox{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:start}}
.improves{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.improves li{font-size:14px;padding:6px 12px;background:var(--bg);border:1px solid var(--line)}
.bars{display:grid;gap:30px}
.bar{display:grid;gap:10px}
.bar-top{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.bar-top b{font-family:var(--f-display);font-weight:400;font-size:clamp(44px,5vw,68px);line-height:1;color:var(--brand);font-variant-numeric:tabular-nums}
.bar-top span{font-size:15px;color:var(--muted);text-align:right;max-width:30ch}
.track{height:14px;background:var(--line);position:relative}
.track i{position:absolute;inset:0 auto 0 0;background:var(--brand)}
.track.ai i{background:var(--ai)}
.bar.low b{color:var(--ai-ink)}

/* horizontal vs vertical */
.hv{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
@media(min-width:900px){.hv{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.hv-col{border:1px solid var(--line);background:var(--bg);padding:32px;display:grid;gap:22px;align-content:start;transition:border-color .3s,transform .3s}
.hv-col:hover{border-color:var(--brand);transform:translateY(-2px)}
.hv-col.vert{border-top:3px solid var(--ai)} .hv-col.horiz{border-top:3px solid var(--brand)}
.hv-col h3{font-family:var(--f-display);font-weight:500;font-size:32px;margin:0;color:var(--brand)}
.hv-col svg{width:100%;height:auto;max-width:100%}
.kv{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px 16px;font-size:15px;border-top:1px solid var(--line);padding-top:18px}
.kv dt{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:3px}
.kv dd{margin:0}
.kv dd.strong{font-weight:600;color:var(--brand)}
.statement{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:20px;border:1px solid var(--line)}
.statement p{margin:0;padding:22px 32px;font-family:var(--f-display);font-size:clamp(20px,2.2vw,28px);line-height:1.2}
.statement p + p{border-left:1px solid var(--line);color:var(--ai-ink)}
@media(max-width:700px){.statement{grid-template-columns:minmax(0,1fr)}.statement p+p{border-left:0;border-top:1px solid var(--line)}}
.pilot{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin-top:20px;font-size:15px;color:var(--muted)}

/* three levels */
.levels{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media(min-width:1000px){.levels{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.55fr)}}
.lvl{border:1px solid var(--line);background:var(--bg);padding:28px;display:grid;gap:18px;align-content:start;transition:transform .3s,border-color .3s}
.lvl:hover{transform:translateY(-3px);border-color:var(--brand)}
.lvl .ln{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.lvl h3{font-family:var(--f-display);font-weight:500;font-size:28px;line-height:1.1;margin:0;color:var(--brand)}
.lvl p{margin:0;font-size:15px;color:var(--muted)}
.lvl .label{font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;border-top:1px solid var(--line);padding-top:14px;display:flex;justify-content:space-between;gap:12px}
.lvl ul{margin:0;padding-left:18px;font-size:14.5px;display:grid;gap:3px}
.lvl.l3{background:var(--brand-fill);color:var(--on-brand);border-color:var(--brand-fill)}
.lvl.l3 h3,.lvl.l3 .label{color:var(--on-brand)}
.lvl.l3 p,.lvl.l3 .ln{color:rgba(255,255,255,.72)}
.lvl.l3 .label{border-color:rgba(255,255,255,.25)}
.l3-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.l3-cols h4{margin:0 0 6px;font-family:var(--f-mono);font-weight:500;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#7FD3F7}
.l3-cols ul{color:rgba(255,255,255,.9)}
@media(max-width:520px){.l3-cols{grid-template-columns:minmax(0,1fr)}}
.stack{display:grid;justify-items:center;gap:4px;padding:18px 8px;background:var(--bg2);font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.stack .c{padding:6px 10px;border:1px solid var(--line);background:var(--bg);text-align:center}
.stack .c.ai{border-color:var(--ai);color:var(--ai-ink);background:var(--ai-soft)}
.stack .a{color:var(--ai);line-height:1}
.chain{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px}
.lvl.l3 .stack{background:rgba(255,255,255,.06)}
.lvl.l3 .stack .c{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
.lvl.l3 .stack .c.ai{border-color:#38BDF2;color:#BFEAFB;background:rgba(56,189,242,.14)}
.lvl.l3 .stack .c.out{background:#fff;color:#0B2545;border-color:#fff}
.orch-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:100%}
.lvl-est{font-size:13.5px;line-height:1.45;display:grid;gap:6px}
.lvl-est .tag{justify-self:start}
.lvl.l3 .lvl-est .tag{color:#9ADCF8}
.est-note{font-size:13px;color:var(--muted);margin-top:16px;max-width:90ch}

/* before / after */
.toggle{display:inline-flex;border:1px solid var(--brand);margin-bottom:32px}
.toggle button{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;background:transparent;color:var(--brand);border:0;padding:12px 20px;cursor:pointer}
.toggle button[aria-pressed="true"]{background:var(--brand-fill);color:var(--on-brand)}
.ba{border:1px solid var(--line);background:var(--bg);padding:32px}
.seq{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:stretch;gap:8px 0}
.seq li{display:flex;align-items:center}
.seq .s{border:1px solid var(--line);padding:10px 12px;font-size:14px;line-height:1.3;max-width:150px;background:var(--bg)}
.seq .s small{display:block;font-family:var(--f-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.seq .s.wait{border-style:dashed;border-color:var(--warn);color:var(--warn)}
.seq .s.hand{border-left:3px solid var(--warn)}
.seq .x{padding:0 6px;color:var(--muted)}
.after{display:grid;gap:14px;justify-items:center}
.after .s{border:1px solid var(--line);padding:10px 16px;font-size:15px;text-align:center;background:var(--bg)}
.after .s.ai{border-color:var(--ai);background:var(--ai-soft);color:var(--ai-ink);font-weight:500}
.after .v{color:var(--ai);font-size:18px;line-height:1}
.par{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;max-width:760px;padding:16px;border:1px dashed var(--ai);position:relative}
.par .lbl{position:absolute;top:-10px;left:14px;background:var(--bg);padding:0 8px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ai-ink)}
.par .p{font-size:14px;padding:10px;border:1px solid var(--line);background:var(--bg);text-align:center;transition:all .4s}
.par.go .p{border-color:var(--ai);box-shadow:inset 3px 0 0 var(--ai)}
@media(max-width:620px){.par{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.split{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center;width:100%;max-width:760px}
.split .or{font-family:var(--f-mono);font-size:11px;color:var(--muted)}
.split .s{height:100%}
.split .s.hum{border-color:var(--brand);color:var(--brand)}
@media(max-width:620px){.split{grid-template-columns:minmax(0,1fr)}}
.s.out{background:var(--brand-fill)!important;color:var(--on-brand)!important;border-color:var(--brand-fill)!important;font-weight:500}
.traits{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}
.traits span{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.04em;padding:5px 10px}
.traits.bad span{color:var(--warn);border:1px solid color-mix(in srgb,var(--warn) 45%,transparent)}
.traits.good span{color:var(--ai-ink);border:1px solid color-mix(in srgb,var(--ai) 45%,transparent)}
.counts{display:flex;gap:28px;flex-wrap:wrap;margin-top:18px;font-size:14px;color:var(--muted)}
.counts b{font-family:var(--f-display);font-weight:500;font-size:26px;color:var(--ink);margin-right:6px;font-variant-numeric:tabular-nums}

/* value cards */
.cards6{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.vcard{background:var(--bg);padding:30px 28px;display:grid;gap:14px;align-content:start;position:relative;overflow:hidden}
.vcard::after{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--ai);transition:width .9s cubic-bezier(.2,.7,.2,1)}
.vcard.in::after{width:100%}
.vcard:hover{background:var(--tint)}
.vcard svg{width:44px;height:44px;stroke:var(--brand);fill:none;stroke-width:1.5}
.vcard svg .ai{stroke:var(--ai)}
.vcard h3{margin:0;font-family:var(--f-mono);font-weight:500;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--brand)}
.vcard p{margin:0;font-family:var(--f-display);font-size:21px;line-height:1.3}
.conclude{margin-top:40px;font-family:var(--f-display);font-size:clamp(24px,2.6vw,34px);line-height:1.2;max-width:34ch;color:var(--brand)}
.conclude em{color:var(--ai-ink)}

/* operating model */
.om{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
@media(min-width:900px){.om{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}}
.om-col{border:1px solid var(--line);background:var(--bg);padding:28px;display:grid;gap:16px;align-content:start}
.om-col h3{margin:0;font-family:var(--f-mono);font-weight:500;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.om-col .big{font-family:var(--f-display);font-size:24px;line-height:1.2;margin:0;color:var(--brand)}
.lane{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;align-items:center}
.lane .who{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.chip{font-size:13.5px;padding:6px 10px;border:1px solid var(--line);background:var(--bg)}
.chip.ai{border-color:var(--ai);background:var(--ai-soft);color:var(--ai-ink)}
.chip.h{border-color:var(--brand);color:var(--brand)}
.chips .x{color:var(--muted);font-size:13px}
.shift{margin:28px 0 0;text-align:center;font-family:var(--f-display);font-size:clamp(24px,3vw,38px);line-height:1.15;color:var(--brand)}
.shift em{color:var(--ai-ink)}
.spectrum{margin-top:64px}
.spec-h{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:18px}
.spec-h h3{margin:0;font-family:var(--f-display);font-weight:500;font-size:28px;color:var(--brand)}
.spec{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;align-items:end}
.spec button{font:inherit;text-align:left;background:var(--bg);border:1px solid var(--line);padding:0;cursor:pointer;display:grid;color:var(--ink)}
.spec button .gov{display:block;background:var(--brand-fill);opacity:.18;transition:opacity .25s}
.spec button span.t{padding:12px 12px 14px;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;line-height:1.35;min-height:62px}
.spec button[aria-pressed="true"]{border-color:var(--ai)}
.spec button[aria-pressed="true"] .gov,.spec button:hover .gov{opacity:1}
.spec button[aria-pressed="true"] span.t{color:var(--ai-ink)}
.spec-axis{display:flex;justify-content:space-between;font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:10px}
.spec-desc{margin-top:18px;padding:18px 22px;background:var(--tint);border-left:3px solid var(--ai);font-size:16px;min-height:60px}
@media(max-width:640px){.spec{grid-template-columns:minmax(0,1fr)}.spec button{grid-template-columns:auto minmax(0,1fr)}.spec button .gov{width:var(--gw)!important;height:auto!important}}

/* governance */
.gov-stack{display:grid;gap:10px}
.gl{border:1px solid var(--line);padding:18px 22px;display:grid;gap:12px;background:var(--bg)}
.gl h4{margin:0;font-family:var(--f-mono);font-weight:500;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.gl.control{border:2px solid var(--brand);background:var(--bg)}
.gl.control h4{color:var(--brand)}
.ctrl-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
@media(max-width:900px){.ctrl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ctrl{padding:12px;border:1px solid var(--line);font-size:14px;font-weight:500;color:var(--brand);background:var(--tint);transition:background .2s}
.ctrl:hover{background:var(--ai-soft)}
.agents-row{display:flex;flex-wrap:wrap;gap:8px}
.gov-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:48px;margin-top:56px}
@media(min-width:960px){.gov-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start}}
.matrix{display:grid;gap:8px}
.mrow{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:center;padding:16px 18px;border:1px solid var(--line);background:var(--bg)}
.mrow .risk{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500}
.mrow .what{font-size:15px}
.meter{display:flex;gap:3px;margin-top:8px}
.meter i{width:22px;height:6px;background:var(--line)}
.meter i.on{background:var(--ai)}
.principle{font-family:var(--f-display);font-size:clamp(26px,3vw,40px);line-height:1.15;color:var(--brand);margin:0}
.principle em{color:var(--ai-ink)}

/* from/to */
.ft{width:100%;border-collapse:collapse}
.ft th{font-family:var(--f-mono);font-weight:500;font-size:12px;letter-spacing:.1em;text-transform:uppercase;text-align:left;padding:0 0 14px;color:var(--muted);border-bottom:2px solid var(--brand)}
.ft td{padding:18px 0;border-bottom:1px solid var(--line);vertical-align:baseline}
.ft td.from{color:var(--muted);font-size:17px;width:44%}
.ft td.arr{width:12%;color:var(--ai);text-align:center;transition:transform .3s}
.ft td.to{font-family:var(--f-display);font-size:clamp(20px,2.2vw,28px);line-height:1.2;color:var(--brand)}
.ft tr:hover td.arr{transform:translateX(6px)}
.ft tr:hover td.to{color:var(--ai-ink)}
.ft tr:last-child td.to{font-weight:600}

/* pillars */
.temple{display:grid;gap:0}
.pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media(max-width:900px){.pillars{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.pillars{grid-template-columns:minmax(0,1fr)}}
.pillar{border:1px solid var(--line);border-bottom:0;background:var(--bg);padding:26px 22px 30px;display:grid;gap:14px;align-content:start;position:relative}
.pillar::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--brand)}
.pillar:nth-child(2)::before{background:var(--ai)}
.pillar h3{margin:0;font-family:var(--f-mono);font-weight:500;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--brand)}
.pillar ul{margin:0;padding:0;list-style:none;display:grid;gap:0}
.pillar li{font-size:15px;padding:8px 0;border-top:1px solid var(--line)}
.base{background:var(--brand-fill);color:var(--on-brand);text-align:center;padding:22px 16px;font-family:var(--f-mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.base2{height:10px;background:var(--brand-fill);opacity:.5;margin:4px 3% 0}

/* roadmap */
.road{display:grid;grid-template-columns:minmax(0,1fr);gap:48px}
@media(min-width:960px){.road{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}}
.road-aside{position:sticky;top:96px;align-self:start}
.steps{list-style:none;margin:0;padding:0 0 0 34px;position:relative}
.steps::before{content:"";position:absolute;left:9px;top:8px;bottom:8px;width:2px;background:var(--line)}
.steps::after{content:"";position:absolute;left:9px;top:8px;width:2px;background:var(--ai);height:var(--fill,0px)}
.steps>li{position:relative;border-bottom:1px solid var(--line)}
.steps>li::before{content:"";position:absolute;left:-30px;top:22px;width:12px;height:12px;border-radius:50%;background:var(--bg);border:2px solid var(--line);transition:all .3s}
.steps>li.done::before{border-color:var(--ai);background:var(--ai)}
.steps>li.lh::before{width:16px;height:16px;left:-32px;top:20px;border-color:var(--brand);background:var(--brand-fill)}
details summary{list-style:none;cursor:pointer;padding:16px 0;display:grid;grid-template-columns:44px minmax(0,1fr) 20px;gap:12px;align-items:baseline}
details summary::-webkit-details-marker{display:none}
details summary .num{font-family:var(--f-mono);font-size:13px;color:var(--ai-ink)}
details summary .tt{font-family:var(--f-display);font-size:24px;line-height:1.15;color:var(--brand)}
details summary .tt small{display:block;font-family:var(--f-sans);font-size:15px;color:var(--muted);margin-top:4px}
details summary .pm{font-family:var(--f-mono);color:var(--muted);transition:transform .2s}
details[open] summary .pm{transform:rotate(45deg)}
details .body{padding:0 0 22px 56px;display:grid;gap:10px;font-size:15px}
details .body .q{font-family:var(--f-display);font-style:italic;font-size:18px;color:var(--ai-ink)}
details .body ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}
details .body li{font-family:var(--f-mono);font-size:11.5px;padding:4px 9px;border:1px solid var(--line)}

/* decision framework */
.decide{display:grid;grid-template-columns:minmax(0,1fr);gap:40px}
@media(min-width:1000px){.decide{grid-template-columns:minmax(0,6fr) minmax(0,5fr);align-items:start}}
.presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.presets button{font-family:var(--f-sans);font-size:14px;background:var(--bg);color:var(--brand);border:1px solid var(--line);padding:8px 12px;cursor:pointer}
.presets button[aria-pressed="true"]{border-color:var(--brand);background:var(--brand-fill);color:var(--on-brand)}
.sliders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 28px}
@media(max-width:560px){.sliders{grid-template-columns:minmax(0,1fr)}}
.sl{display:grid;gap:4px}
.sl label{display:flex;justify-content:space-between;font-size:14px;gap:8px}
.sl label span.g{font-family:var(--f-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.sl output{font-family:var(--f-mono);font-size:13px;color:var(--ai-ink);font-variant-numeric:tabular-nums}
input[type=range]{width:100%;accent-color:var(--brand)}
.quad-wrap{background:var(--bg);border:1px solid var(--line);padding:22px}
.quad-wrap svg{width:100%;height:auto;display:block}
.verdict{margin-top:18px;display:grid;gap:10px}
.verdict .cls{font-family:var(--f-display);font-size:40px;line-height:1;color:var(--brand)}
.verdict .cls.re{color:var(--ai-ink)}
.verdict p{margin:0;font-size:15px}
.verdict dl{display:grid;grid-template-columns:130px minmax(0,1fr);gap:6px 12px;margin:6px 0 0;font-size:14px;border-top:1px solid var(--line);padding-top:12px}
.verdict dt{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:2px}
.verdict dd{margin:0}
.fine{font-size:13px;color:var(--muted);margin-top:16px}

/* simulator */
.sim{display:grid;grid-template-columns:minmax(0,1fr);gap:32px}
@media(min-width:1000px){.sim{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:start}}
.inputs{display:grid;gap:14px;background:var(--bg);border:1px solid var(--line);padding:24px}
.in{display:grid;gap:4px}
.in label{font-size:14px;display:flex;justify-content:space-between;gap:8px}
.in label small{color:var(--muted);font-family:var(--f-mono);font-size:11px}
.in input[type=number]{font:inherit;font-variant-numeric:tabular-nums;padding:9px 10px;border:1px solid var(--line);background:var(--bg2);color:var(--ink);width:100%}
.in .rg{display:grid;grid-template-columns:minmax(0,1fr) 54px;gap:10px;align-items:center}
.in .rg output{font-family:var(--f-mono);font-size:13px;text-align:right;color:var(--ai-ink)}
.inputs h4{margin:8px 0 0;font-family:var(--f-mono);font-weight:500;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--warn);border-top:1px solid var(--line);padding-top:14px}
.scen{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media(max-width:760px){.scen{grid-template-columns:minmax(0,1fr)}}
.sc{border:1px solid var(--line);background:var(--bg);padding:22px;display:grid;gap:16px;align-content:start}
.sc.top{background:var(--brand-fill);color:var(--on-brand);border-color:var(--brand-fill)}
.sc h3{margin:0;font-family:var(--f-mono);font-weight:500;font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.metric{display:grid;gap:4px}
.metric span{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;opacity:.7}
.metric b{font-family:var(--f-display);font-weight:400;font-size:30px;line-height:1;font-variant-numeric:tabular-nums}
.metric .mbar{height:6px;background:color-mix(in srgb,currentColor 15%,transparent);margin-top:6px;position:relative}
.metric .mbar i{position:absolute;inset:0 auto 0 0;background:var(--ai)}
.disclaimer{margin-top:16px;padding:14px 18px;border:1px solid var(--warn);color:var(--warn);font-size:14px;display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
details.how{margin-top:12px;font-size:14px;color:var(--muted)}
details.how summary{display:block;padding:8px 0;font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--brand)}
details.how ul{margin:0;padding-left:18px;display:grid;gap:4px}

/* final */
.final{background:var(--final);color:var(--final-ink);padding-block:clamp(96px,11vw,150px);position:relative;overflow:hidden}
.final h2{color:var(--final-ink);font-size:clamp(38px,5.6vw,80px);max-width:18ch;margin:0}
.final h2.reveal{color:#38BDF2;margin-top:10px;transition:color 1.2s,opacity 1.2s}
.final h2.reveal.pre{opacity:.35}
.final p{color:var(--final-muted);max-width:62ch;font-size:18px;margin:36px 0 0}
.final .ctas{margin-top:40px}
.final .btn.primary{background:#38BDF2;border-color:#38BDF2;color:#07101E}
.final .btn.primary:hover{background:#fff;border-color:#fff}
.final .btn.ghost{color:var(--final-ink);border-color:rgba(255,255,255,.4)}
.final .btn.ghost:hover{background:rgba(255,255,255,.08)}
footer{background:var(--final);color:var(--final-muted);border-top:1px solid rgba(255,255,255,.1)}
footer .wrap{padding-block:32px;display:grid;gap:10px;font-size:13px}
footer a{color:#9ADCF8}

/* ---- v2: photography and motion ---- */
.hero{padding:0}
.hero-top{position:relative;overflow:hidden;background:#07101E;color:#F2F5FA}
.hero-bg{position:absolute;inset:-6% 0;will-change:transform}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.9}
@media(prefers-reduced-motion:no-preference){.hero-bg img{animation:kb 26s ease-in-out infinite alternate}}
@keyframes kb{from{transform:scale(1.02) translate3d(0,0,0)}to{transform:scale(1.14) translate3d(-2%,-1.5%,0)}}
.hero-top::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(7,16,30,.82) 0%,rgba(7,16,30,.55) 45%,rgba(7,16,30,.08) 100%);pointer-events:none}
.hero-inner{position:relative;z-index:1;padding-block:clamp(48px,6vw,80px) clamp(64px,8vw,104px)}
.hero-top .eyebrow{color:#7FD3F7}
.hero-top h1{color:#FFFFFF}
.hero-top h1 em{color:#7FD3F7}
.hero-top .sub{color:#FFFFFF}
.hero-top .support{color:rgba(246,248,252,.96)}
.hero-top h1,.hero-top .lede,.hero-top .support,.hero-top .eyebrow,.page-hero h1,.page-hero .sub{text-shadow:0 1px 3px rgba(7,16,30,.55),0 2px 18px rgba(7,16,30,.75)}
.hero-top .btn.primary{background:#38BDF2;border-color:#38BDF2;color:#07101E}
.hero-top .btn.primary:hover{background:#FFFFFF;border-color:#FFFFFF}
.hero-top .btn.ghost{color:#FFFFFF;border-color:rgba(255,255,255,.45)}
.hero-top .btn.ghost:hover{background:rgba(255,255,255,.1)}
.hero-flow{padding-block:clamp(48px,6vw,72px)}
.hero-flow .flow{margin-top:0}
@media(prefers-reduced-motion:no-preference){
  .hero-top h1,.hero-top .sub,.hero-top .support,.hero-top .ctas{animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
  .hero-top .sub{animation-delay:.12s}.hero-top .support{animation-delay:.2s}.hero-top .ctas{animation-delay:.28s}
}
@keyframes rise{from{transform:translateY(18px)}to{transform:none}}
.fnode.on:not(:last-child)::after{content:"";position:absolute;top:-2px;left:0;width:36px;height:7px;border-radius:4px;background:var(--ai);filter:blur(3px);opacity:.8}
@media(prefers-reduced-motion:no-preference){.fnode.on:not(:last-child)::after{animation:travel 2.4s linear infinite}}
@keyframes travel{from{left:0}to{left:calc(100% - 36px)}}

.band{position:relative;margin:0;height:clamp(300px,46vw,560px);overflow:hidden;background:#07101E}
.band img{position:absolute;left:0;top:-14%;width:100%;height:128%;object-fit:cover;will-change:transform}
@media(prefers-reduced-motion:no-preference){.band.in img{animation:kb2 18s ease-out both}}
@keyframes kb2{from{scale:1.12}to{scale:1.0}}
.band::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,16,30,.88) 0%,rgba(7,16,30,.3) 55%,rgba(7,16,30,.1) 100%);pointer-events:none}
.band figcaption{position:absolute;left:0;right:0;bottom:0;z-index:1;color:#FFFFFF}
.band figcaption .wrap{padding-block:0 clamp(32px,5vw,56px)}
.band .eyebrow{color:#7FD3F7}
.band p{margin:14px 0 0;font-family:var(--f-display);font-weight:400;font-size:clamp(30px,4.6vw,64px);line-height:1.04;letter-spacing:-.015em;max-width:20ch;text-wrap:balance}
@media(prefers-reduced-motion:no-preference){
  .band p,.band .eyebrow{transition:transform 1s cubic-bezier(.2,.7,.2,1),clip-path 1.1s cubic-bezier(.2,.7,.2,1)}
  .band:not(.in) p{transform:translateY(28px)}
  .band:not(.in) .eyebrow{clip-path:inset(0 100% 0 0)}
  .band.in .eyebrow{clip-path:inset(0 0 0 0)}
}

.rv{transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.rv:not(.in){transform:translateY(22px)}
@media(prefers-reduced-motion:reduce){.rv:not(.in){transform:none}}
.head .eyebrow::before{transition:width .8s ease .2s}
.head:not(.in) .eyebrow::before{width:0}

.track i{transform-origin:left;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.bars:not(.in) .track i{transform:scaleX(0)}
.bars .bar:nth-child(2) .track i{transition-delay:.2s}.bars .bar:nth-child(3) .track i{transition-delay:.4s}

.lvl{transform-style:preserve-3d;will-change:transform}
@media(prefers-reduced-motion:no-preference){
  .lvl.l3 .orch-row .c.ai{animation:glow 2.4s ease-in-out infinite}
  .lvl.l3 .orch-row .c.ai:nth-child(2){animation-delay:.4s}
  .lvl.l3 .stack > .c.ai{animation:glow 2.4s ease-in-out infinite;animation-delay:-.8s}
}
@keyframes glow{0%,100%{box-shadow:0 0 0 0 rgba(56,189,242,0)}50%{box-shadow:0 0 0 5px rgba(56,189,242,.22),0 0 22px rgba(56,189,242,.45)}}

.seq li .s{transition:background .3s,border-color .3s,color .3s,transform .3s}
.seq li.cur .s{background:var(--brand-fill);color:var(--on-brand);border-color:var(--brand-fill);transform:translateY(-3px)}
.seq li.cur .s small{color:rgba(255,255,255,.7)}
.seq li.cur .s.wait{background:var(--warn);border-color:var(--warn)}
.seq li.past .s{border-color:var(--brand)}
.after [data-a]{transition:box-shadow .3s,transform .3s}
.after [data-a].cur{box-shadow:0 0 0 4px var(--ai-soft);transform:scale(1.03)}
.par .p{transition:all .35s}
.par.go .p{background:var(--ai-soft)}
.runner{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:22px;font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.runner span:last-child{color:var(--ai-ink)}

.vcard svg path,.vcard svg rect,.vcard svg circle{stroke-dasharray:120;stroke-dashoffset:0;transition:stroke-dashoffset 1.4s ease}
.vcard:not(.in) svg path,.vcard:not(.in) svg rect,.vcard:not(.in) svg circle{stroke-dashoffset:120}
.vcard{transition:background .3s,transform .3s}
.vcard:hover{transform:translateY(-4px)}
.vcard:hover svg{transform:scale(1.08);transition:transform .3s}

.ctrl{transition:background .25s,transform .25s}
.ctrl:hover{transform:translateY(-2px)}
.gl.control{position:relative;overflow:hidden}
@media(prefers-reduced-motion:no-preference){.gl.control::after{content:"";position:absolute;top:0;bottom:0;width:30%;left:-30%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--ai) 14%,transparent),transparent);animation:scan 5s ease-in-out infinite;pointer-events:none}}
@keyframes scan{0%{left:-30%}60%,100%{left:110%}}
.ft tbody tr{transition:background .25s}
.ft tbody tr:hover{background:var(--tint)}
.ft tbody tr.rv:not(.in){transform:translateX(-16px)}
.pillar{transition:transform .3s,border-color .3s}
.pillar:hover{transform:translateY(-6px)}
.base{position:relative;overflow:hidden}
@media(prefers-reduced-motion:no-preference){.base::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(56,189,242,.35),transparent);transform:translateX(-100%);animation:sweep 4.5s ease-in-out infinite}}
@keyframes sweep{to{transform:translateX(100%)}}
.final-bg{position:absolute;inset:0}
.final-bg img{width:100%;height:100%;object-fit:cover;opacity:.22}
.final::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,10,19,.7),rgba(5,10,19,.92));pointer-events:none}
.final .wrap{z-index:2}
.spot{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(420px circle at var(--mx,70%) var(--my,30%),rgba(56,189,242,.16),transparent 70%)}
.nav{transition:background .3s}
.nav.scrolled{box-shadow:0 1px 0 var(--line)}

/* ---- v3: Aptos typography, gains list, chart ---- */
h1,h2,.hero h1{font-weight:600;letter-spacing:-.022em}
h2{font-size:clamp(32px,4vw,54px);line-height:1.06}
.hero h1{font-size:clamp(40px,6vw,86px);line-height:1}
.hero h1 em,.hero-top h1 em{font-style:normal}
.sub,.quote,.conclude,.principle,.shift,.band p,.statement p,.om-col .big,.vcard p,details summary .tt,.ft td.to,.lvl h3,.hv-col h3,.spec-h h3,.verdict .cls,.metric b,.foot-cta{font-weight:500;letter-spacing:-.012em}
.band p{font-weight:600;letter-spacing:-.02em}
.vcard p{font-size:19px;font-weight:400;line-height:1.4}
.final h2{font-weight:600}
body{font-size:17px;line-height:1.62}

.gains{margin-top:28px;border-top:1px solid var(--line)}
.gains-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:560px){.gains-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gain{display:grid;gap:10px;padding:18px 14px 18px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.3;transition:color .25s}
.gain svg{width:24px;height:24px;fill:none;stroke:var(--ai);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s}
.gain:hover{color:var(--brand)}
.gain:hover svg{transform:translateY(-2px)}
.gains-foot{display:flex;flex-wrap:wrap;gap:8px 24px;padding-top:14px;font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.gains-foot span{display:flex;align-items:center;gap:8px}
.gains-foot i{width:18px;height:3px;display:inline-block}
.g-on{background:var(--ai)} .g-off{background:var(--line);outline:1px dashed var(--muted);outline-offset:1px}

.chart{display:grid;gap:0;--lab:clamp(150px,30%,230px);--val:96px}
.chart-row{display:grid;grid-template-columns:var(--lab) minmax(0,1fr) var(--val);gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}
.chart-row:first-child{border-top:1px solid var(--line)}
.c-label{font-size:15px;line-height:1.35;color:var(--ink)}
.c-track{height:28px;position:relative;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),var(--line) calc(25% - 1px),var(--line) 25%)}
.c-bar{position:absolute;left:0;top:4px;bottom:4px;width:var(--w);min-width:3px;transform-origin:left;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.c-bar.navy{background:var(--brand-fill)}
.c-bar.cyan{background:var(--ai)}
.c-bar.lt::after{content:"";position:absolute;right:-14px;top:0;bottom:0;width:14px;background:repeating-linear-gradient(90deg,var(--ai) 0 2px,transparent 2px 5px);opacity:.55}
.c-val{font-family:var(--f-display);font-weight:600;font-size:clamp(28px,3vw,40px);line-height:1;color:var(--brand);text-align:right;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.c-val.cyan{color:var(--ai-ink)}
.chart-row:hover .c-label{color:var(--brand)}
#bars:not(.in) .c-bar{transform:scaleX(0)}
.chart-row:nth-child(2) .c-bar{transition-delay:.25s}.chart-row:nth-child(3) .c-bar{transition-delay:.5s}
.chart-axis{display:grid;grid-template-columns:var(--lab) minmax(0,1fr) var(--val);gap:20px;padding-top:8px}
.ticks{position:relative;height:16px;font-family:var(--f-mono);font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.ticks span{position:absolute;transform:translateX(-50%)}
.ticks span:first-child{transform:none}.ticks span:last-child{transform:translateX(-100%)}
.gap{display:grid;grid-template-columns:var(--lab) minmax(0,1fr) var(--val);gap:20px;margin-top:-2px}
.gap-line{grid-column:2;position:relative;height:30px}
.gap-brace{position:absolute;left:19%;width:59%;top:6px;height:12px;border:1.5px solid var(--warn);border-top:0}
.gap-note{margin:6px 0 0;font-size:15px;color:var(--muted);max-width:56ch;padding-left:calc(var(--lab) + 20px)}
.gap-note b{color:var(--warn);font-weight:600}
@media(max-width:620px){
  .chart-row{grid-template-columns:minmax(0,1fr) 72px;row-gap:8px}
  .c-label{grid-column:1 / -1}
  .chart-axis,.gap{grid-template-columns:minmax(0,1fr) 72px}
  .chart-axis>span:first-child,.gap>.gap-line{grid-column:1}
  .chart-axis>span:first-child{display:none}
  .gap-note{padding-left:0}
}

/* ---- v4: aligned process boxes ---- */
.seq{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px 28px;align-items:stretch}
.seq li{display:block;position:relative;min-width:0}
.seq .s{display:flex;flex-direction:column;justify-content:space-between;gap:8px;height:100%;min-height:96px;max-width:none;width:100%;padding:14px 16px;font-size:15px;line-height:1.3;border:1px solid var(--line);border-left-width:3px}
.seq .s small{font-size:11px;letter-spacing:.08em}
.seq .s.hand{border-left-color:var(--warn)}
.seq .s.wait{border-style:dashed;border-left-style:solid;border-left-color:var(--warn);color:var(--warn)}
.seq li::after{content:"→";position:absolute;right:-21px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:15px}
.seq li:nth-child(5n)::after,.seq li:last-child::after{content:none}
@media(max-width:900px){
  .seq{grid-template-columns:repeat(2,minmax(0,1fr))}
  .seq li:nth-child(5n)::after{content:"→"}
  .seq li:nth-child(2n)::after,.seq li:last-child::after{content:none}
}
@media(max-width:420px){.seq{grid-template-columns:minmax(0,1fr)}.seq li::after{content:none!important}}

/* ---- v5: language, consent, privacy, footer ---- */
body.locked{overflow:hidden}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lang{position:relative;flex-shrink:0}
.lang-btn{display:flex;align-items:center;gap:8px;font:inherit;font-size:13px;font-weight:500;color:var(--brand);background:transparent;border:1px solid var(--line);padding:7px 10px;cursor:pointer}
.lang-btn:hover{border-color:var(--brand)}
.lang-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}
.lang-btn .chev{width:14px;height:14px}
.lang-menu[hidden]{display:none!important}
.lang-menu{position:absolute;right:0;top:calc(100% + 6px);min-width:180px;list-style:none;margin:0;padding:6px;background:var(--bg);border:1px solid var(--line);box-shadow:0 12px 32px rgba(7,16,30,.14);z-index:40}
.lang-menu button{display:flex;justify-content:space-between;width:100%;font:inherit;font-size:14px;text-align:start;background:transparent;border:0;padding:9px 10px;color:var(--ink);cursor:pointer}
.lang-menu button:hover,.lang-menu button:focus-visible{background:var(--tint)}
.lang-menu button[aria-checked="true"]{color:var(--ai-ink);font-weight:600}
.lang-menu button[aria-checked="true"]::after{content:"✓"}
.nav .lang{margin-inline-start:18px}


.foot{background:#1E2330;color:#C9CFDA}
.foot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.5fr);gap:40px 32px;padding-block:clamp(56px,6vw,80px)}
@media(max-width:1000px){.foot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fside{grid-column:1 / -1}}
@media(max-width:620px){.foot-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.fcol h3{font-family:var(--f-display);font-weight:600;font-size:24px;color:#FFFFFF;margin:0 0 16px;letter-spacing:-.01em}
.fcol ul+h3{margin-top:32px}
.fcol ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.fcol a,.linkbtn{font:inherit;font-size:16px;color:#B9C1CE;text-decoration:none;background:none;border:0;padding:0;cursor:pointer;text-align:start;transition:color .2s}
.fcol a:hover,.linkbtn:hover{color:#FFFFFF}
.fcol li.muted{font-size:14px;color:#8892A3}
.fside{display:grid;gap:18px;align-content:start}
.fside hr{border:0;border-top:1px solid rgba(255,255,255,.16);margin:4px 0;width:100%}
.fside p{margin:0;font-size:16px;line-height:1.6;color:#B9C1CE;max-width:52ch}
.foot .lang{justify-self:start}
.foot .lang-btn{background:#2C3343;border-color:#2C3343;color:#FFFFFF;padding:10px 14px;font-size:15px}
.foot .lang-btn:hover{border-color:#4A5468}
.foot .lang-menu{top:auto;bottom:calc(100% + 6px);left:0;right:auto;background:#2C3343;border-color:#3A4255}
.foot .lang-menu button{color:#E4E8EF}
.foot .lang-menu button:hover,.foot .lang-menu button:focus-visible{background:#3A4255}
.foot .lang-menu button[aria-checked="true"]{color:#7FD3F7}
.fcontact{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.fcontact svg{width:20px;height:20px;fill:none;stroke:#B9C1CE;stroke-width:1.5}
.fcontact code{font-family:var(--f-sans);font-size:15px;color:#FFFFFF;user-select:all;word-break:break-all}
.copybtn{font:inherit;font-size:12px;letter-spacing:.06em;text-transform:uppercase;background:transparent;color:#B9C1CE;border:1px solid rgba(255,255,255,.3);padding:5px 10px;cursor:pointer}
.copybtn:hover{color:#fff;border-color:#fff}
.foot-base{background:#171B25;color:#AEB6C3;font-size:15px;text-align:center}
.foot-base .wrap{padding-block:22px}
.foot-base b{color:#FFFFFF;font-weight:600}

.cmodal{position:fixed;inset:0;z-index:60;background:rgba(7,16,30,.55);display:grid;place-items:center;padding:16px max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px));backdrop-filter:blur(3px)}
.cmodal[hidden]{display:none}
.cbox{background:var(--bg);color:var(--ink);width:min(640px,100%);max-height:min(88vh,860px);display:flex;flex-direction:column;box-shadow:0 30px 80px rgba(7,16,30,.35);border-radius:6px;overflow:hidden}
@media(prefers-reduced-motion:no-preference){.cmodal:not([hidden]) .cbox{animation:pop .35s cubic-bezier(.2,.7,.2,1)}}
@keyframes pop{from{transform:translateY(16px) scale(.98)}to{transform:none}}
.c-head{padding:26px 26px 6px}
.c-head h2{font-size:24px;margin:0 0 10px;color:var(--ink)}
.c-head p{margin:0;font-size:15.5px;line-height:1.55}
.c-head a{color:var(--ink)}
.c-links{display:flex;gap:20px;margin-top:14px;font-size:14px}
.c-links a{color:var(--ink)}
.c-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);margin-top:14px}
.c-tabs button{font:inherit;font-size:16px;background:transparent;border:0;border-bottom:3px solid transparent;padding:14px 8px;cursor:pointer;color:var(--ink)}
.c-tabs button[aria-selected="true"]{color:var(--brand);font-weight:600;border-bottom-color:var(--brand)}
.c-scroll{overflow:auto;padding:16px 26px;display:grid;gap:12px}
#pane-cat,#pane-srv{display:grid;gap:12px}
#pane-cat[hidden],#pane-srv[hidden]{display:none}
.c-item{border:1px solid var(--line);border-radius:4px}
.c-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:16px 14px 16px 16px}
.c-txt h3{margin:0 0 4px;font-family:var(--f-display);font-size:17px;font-weight:600;color:var(--ink)}
.c-txt p{margin:0;font-size:14.5px;color:var(--muted);line-height:1.45}
.sw{position:relative;display:inline-block;width:52px;height:28px;cursor:pointer}
.sw input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.sw .knob{position:absolute;inset:0;border-radius:14px;background:#4A4F59;transition:background .2s}
.sw .knob::before{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .2s}
.sw .knob::after{content:"✕";position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:11px;color:#fff}
.sw input:checked+.knob{background:var(--brand-fill)}
.sw input:checked+.knob::before{transform:translateX(24px)}
.sw input:checked+.knob::after{content:"✓";right:auto;left:9px}
.sw input:disabled+.knob{background:#B9BEC7;cursor:not-allowed}
.sw input:focus-visible+.knob{outline:2px solid var(--ai);outline-offset:2px}
.c-exp{width:34px;height:34px;display:grid;place-items:center;background:transparent;border:0;cursor:pointer;color:var(--ink)}
.c-exp svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .2s}
.c-exp[aria-expanded="true"] svg{transform:rotate(180deg)}
.c-det{padding:0 16px 16px;font-size:14px;color:var(--muted)}
.c-det p{margin:0;padding-top:12px;border-top:1px solid var(--line)}
.srv{border:1px solid var(--line);border-radius:4px;padding:14px 16px}
.srv-h{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}
.srv h3{margin:0;font-family:var(--f-display);font-size:16px;font-weight:600}
.srv .tag{color:var(--brand)}
.srv dl{display:grid;grid-template-columns:110px minmax(0,1fr);gap:4px 12px;margin:10px 0 0;font-size:14px}
.srv dt{color:var(--muted)}.srv dd{margin:0}
.c-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:16px 26px 22px;border-top:1px solid var(--line)}
.c-actions{flex-shrink:0}
@media(max-width:600px){.cbox{overflow:auto;max-height:calc(100dvh - 32px)}.c-scroll{overflow:visible}.c-head{padding:20px 20px 4px}.c-head h2{font-size:21px}.c-head p{font-size:14.5px;line-height:1.5}.c-scroll{padding:14px 20px}
 .c-actions{position:sticky;bottom:0;background:var(--bg);grid-template-columns:1fr 1fr;grid-template-areas:"none all" "save save";gap:10px;padding:12px 20px 16px}
 #c-none{grid-area:none}#c-all{grid-area:all}#c-save{grid-area:save}.c-actions .cbtn{padding:12px 10px;font-size:15px}}
.cbtn{font:inherit;font-weight:600;font-size:16px;background:var(--brand-fill);color:var(--on-brand);border:0;border-radius:4px;padding:15px 16px;cursor:pointer;transition:background .2s}
.cbtn:hover{background:var(--ai-ink)}
.cbtn.small{font-size:14px;padding:10px 16px}

.ppanel{position:fixed;inset:0;z-index:70;background:var(--bg);overflow:auto;padding-top:env(safe-area-inset-top,0px)}
.ppanel[hidden]{display:none}
.pp-bar{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px max(16px,env(safe-area-inset-right,0px)) 14px max(16px,env(safe-area-inset-left,0px));background:var(--bg);border-bottom:1px solid var(--line)}
.pp-brand{font-family:var(--f-display);font-weight:600;color:var(--brand)}
#pp-close{font:inherit;font-size:14px;background:transparent;border:1px solid var(--line);padding:8px 14px;cursor:pointer;color:var(--ink)}
#pp-close:hover{border-color:var(--brand)}
.pp-body{max-width:760px;margin:0 auto;padding:56px max(16px,env(safe-area-inset-right,0px)) 96px max(16px,env(safe-area-inset-left,0px))}
.pp-body h2{margin-top:12px}
.pp-date{color:var(--muted);font-size:14px;margin:8px 0 28px}
.pp-body h3{font-family:var(--f-display);font-weight:600;font-size:22px;color:var(--brand);margin:36px 0 10px;scroll-margin-top:80px}
.pp-body p,.pp-body li{font-size:16.5px;line-height:1.65}
.pp-body p{margin:0 0 12px}
.pp-body ul{padding-inline-start:20px;margin:0 0 12px;display:grid;gap:8px}
.pp-mail code{font-family:var(--f-sans);user-select:all}

/* RTL */
[dir="rtl"] *{letter-spacing:0!important}
[lang="ar"]{--f-display:"Noto Sans Arabic","Segoe UI","Tahoma",Arial,sans-serif;--f-sans:"Noto Sans Arabic","Segoe UI","Tahoma",Arial,sans-serif;--f-mono:"Noto Sans Arabic","Segoe UI","Tahoma",Arial,sans-serif}
[dir="rtl"] .quote{border-left:0;padding-left:0;border-right:2px solid var(--ai);padding-right:24px}
[dir="rtl"] .lang-menu{right:auto;left:0}
[dir="rtl"] .nav .wrap>ul{margin:0 auto 0 0}
[dir="rtl"] .foot .lang-menu{left:auto;right:0}
[dir="rtl"] .seq li::after{content:"←";right:auto;left:-21px}
[dir="rtl"] .seq li:nth-child(5n)::after,[dir="rtl"] .seq li:last-child::after{content:none}
@media(max-width:900px){[dir="rtl"] .seq li:nth-child(5n)::after{content:"←"}[dir="rtl"] .seq li:nth-child(2n)::after,[dir="rtl"] .seq li:last-child::after{content:none}}
[dir="rtl"] .c-track,[dir="rtl"] .ticks,[dir="rtl"] .gap-line,[dir="rtl"] .flow-scale{direction:ltr}
[dir="rtl"] .gap-note{padding-left:0;padding-right:calc(var(--lab) + 20px)}
[dir="rtl"] .steps{padding:0 34px 0 0}
[dir="rtl"] .steps::before,[dir="rtl"] .steps::after{left:auto;right:9px}
[dir="rtl"] .steps li::before{left:auto;right:-30px}
[dir="rtl"] .steps li.lh::before{left:auto;right:-32px}
[dir="rtl"] details .body{padding:0 56px 22px 0}
[dir="rtl"] .fnode{padding:18px 0 0 14px}
[dir="rtl"] .fnode .dot{left:auto;right:0}
[dir="rtl"] .eyebrow::before{order:0}
[dir="rtl"] .sw .knob::before{left:auto;right:3px}
[dir="rtl"] .sw input:checked+.knob::before{transform:translateX(-24px)}
[dir="rtl"] .sw .knob::after{right:auto;left:8px}
[dir="rtl"] .sw input:checked+.knob::after{left:auto;right:9px}
[dir="rtl"] .c-row{padding:16px 16px 16px 14px}

.c-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.c-top h2{margin:0 0 10px}
.lang-modal .lang-btn{padding:6px 9px;font-size:13px}

/* ---- v6: hero runs under a transparent menu bar ---- */
.hero{margin-top:-60px}
.hero-inner{padding-top:calc(60px + clamp(48px,6vw,80px))}
.hero-top::before{content:"";position:absolute;inset:0 0 auto;height:160px;background:linear-gradient(180deg,rgba(7,16,30,.75),rgba(7,16,30,0));z-index:1;pointer-events:none}
.nav,.nav .brand,.nav a.l,.nav .lang-btn{transition:background .35s,color .35s,border-color .35s,box-shadow .35s}
html.nav-over .nav{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom-color:rgba(255,255,255,.16);box-shadow:none}
html.nav-over .nav .brand{color:#FFFFFF}
html.nav-over .nav a.l{color:rgba(255,255,255,.8)}
html.nav-over .nav a.l:hover,html.nav-over .nav a.l.on{color:#FFFFFF;border-color:#7FD3F7}
html.nav-over .nav .lang-btn{color:#FFFFFF;border-color:rgba(255,255,255,.4)}
html.nav-over .nav .lang-btn:hover{border-color:#FFFFFF}
html.nav-over body::before{background:#07101E}

/* ---- v7: hamburger menu on phones and small tablets ---- */
.burger{display:none}
@media(max-width:1100px){
  .nav .wrap{gap:10px}
  .nav .wrap>ul{display:none;position:absolute;left:0;right:0;top:60px;margin:0;flex-direction:column;gap:0;overflow:visible;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 18px 36px rgba(7,16,30,.14);padding:6px max(16px,env(safe-area-inset-right,0px)) 14px max(16px,env(safe-area-inset-left,0px))}
  .nav.open .wrap>ul{display:flex}
  .nav .wrap>ul li{border-bottom:1px solid var(--line)}
  .nav .wrap>ul li:last-child{border-bottom:0}
  .nav .wrap>ul a.l{display:block;padding:16px 0;font-size:13px;color:var(--ink);border-bottom:0}
  .nav .wrap>ul a.l.on{color:var(--ai-ink)}
  .nav .lang{margin-inline-start:auto}
  .burger{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:40px;padding:0;background:transparent;border:1px solid var(--line);color:var(--brand);cursor:pointer;flex-shrink:0;transition:border-color .35s,color .35s}
  .burger span{display:block;width:20px;height:2px;background:currentColor;transition:transform .25s,opacity .2s}
  .nav.open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav.open .burger span:nth-child(2){opacity:0}
  .nav.open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  html.nav-over .nav .burger{color:#FFFFFF;border-color:rgba(255,255,255,.4)}
  .nav.open{background:var(--bg)}
}
@media(max-width:420px){.nav .lang-cur{display:none}.brand{font-size:17px}}
@media(prefers-reduced-motion:reduce){.burger span{transition:none}}

/* ---- v8: flags in the language switch ---- */
.flag{display:inline-block;width:22px;height:15px;border-radius:2px;background-size:cover;background-position:center;box-shadow:0 0 0 1px rgba(0,0,0,.14);flex-shrink:0}
.flag-nl{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 6'><path fill='%2321468B' d='M0 0h9v6H0z'/><path fill='%23fff' d='M0 0h9v4H0z'/><path fill='%23AE1C28' d='M0 0h9v2H0z'/></svg>")}
.flag-fr{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3 2'><path fill='%23ED2939' d='M0 0h3v2H0z'/><path fill='%23fff' d='M0 0h2v2H0z'/><path fill='%23002395' d='M0 0h1v2H0z'/></svg>")}
.flag-de{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5 3'><path fill='%23FFCE00' d='M0 0h5v3H0z'/><path fill='%23DD0000' d='M0 0h5v2H0z'/><path d='M0 0h5v1H0z'/></svg>")}
.flag-en{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 30'><clipPath id='c'><path d='M0 0h60v30H0z'/></clipPath><g clip-path='url(%23c)'><path fill='%23012169' d='M0 0h60v30H0z'/><path stroke='%23fff' stroke-width='6' d='M0 0l60 30M60 0L0 30'/><path stroke='%23C8102E' stroke-width='2.4' d='M0 0l60 30M60 0L0 30'/><path stroke='%23fff' stroke-width='10' d='M30 0v30M0 15h60'/><path stroke='%23C8102E' stroke-width='6' d='M30 0v30M0 15h60'/></g></svg>")}
.flag-ar{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 6'><path fill='%23000' d='M0 0h12v6H0z'/><path fill='%23fff' d='M0 0h12v4H0z'/><path fill='%2300732F' d='M0 0h12v2H0z'/><path fill='%23FF0000' d='M0 0h3v6H0z'/></svg>")}
.lang-menu button{justify-content:flex-start;align-items:center;gap:12px}
.lang-menu button[aria-checked="true"]::after{margin-inline-start:auto}
html.nav-over .nav .lang-btn .flag,.foot .lang-btn .flag{box-shadow:0 0 0 1px rgba(255,255,255,.35)}

/* ---- v9: larger section labels, GenAI spelling, blue instead of brown ---- */
.eyebrow{font-size:clamp(15px,1.25vw,17px);font-weight:600;letter-spacing:.01em;text-transform:none;gap:14px}
.eyebrow::before{width:32px;height:2px}
.head h2,.paradox h2,.road-aside h2{margin-top:14px}
.band .eyebrow{font-size:clamp(15px,1.25vw,17px)}
.nav a.l{text-transform:none;font-size:14px;letter-spacing:.005em;font-weight:500}
.sc h3{text-transform:none;font-size:16px;letter-spacing:0;font-weight:600}

/* ---- v10: numbered label becomes the title, headline becomes the subtitle ---- */
section .eyebrow{display:block;font-family:var(--f-display);font-size:clamp(30px,3.8vw,50px);font-weight:600;line-height:1.08;letter-spacing:-.02em;text-transform:none;color:var(--brand);text-wrap:balance}
section .eyebrow::before{content:none;display:none}
section .eyebrow + h2{font-size:clamp(21px,2.3vw,30px);font-weight:500;line-height:1.25;letter-spacing:-.01em;color:var(--ink);margin-top:14px;max-width:36ch}
section .eyebrow + h2 + .lede,section .head .lede{font-size:clamp(16px,1.3vw,18px)}
.paradox .lede{font-size:clamp(16px,1.3vw,18px)}
@media(max-width:959px){.road-aside{position:static}}

/* ---- v11: refined adoption chart ---- */
.chart2{display:grid;gap:24px;padding-top:4px}
.c2-row{display:grid;gap:10px}
.c2-top{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.c2-label{font-size:15px;line-height:1.4;color:var(--ink);max-width:40ch}
.c2-val{font-family:var(--f-display);font-weight:600;font-size:clamp(17px,1.5vw,20px);line-height:1;color:var(--brand);font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap}
.c2-val.cyan{color:var(--ai-ink)}
.c2-track{position:relative;height:6px;background:color-mix(in srgb,var(--line) 70%,transparent)}
.c2-bar{position:absolute;left:0;top:0;bottom:0;width:var(--w);min-width:2px;background:var(--brand);transform-origin:left;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.c2-bar.cyan{background:var(--ai)}
.c2-bar::after{content:"";position:absolute;right:-1px;top:-4px;bottom:-4px;width:2px;background:inherit}
#bars:not(.in) .c2-bar{transform:scaleX(0)}
.c2-row:nth-child(2) .c2-bar{transition-delay:.2s}.c2-row:nth-child(3) .c2-bar{transition-delay:.4s}
.c2-axis{position:relative;height:24px;border-top:1px solid var(--line);margin-top:2px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.c2-axis span{position:absolute;top:9px;transform:translateX(-50%);line-height:1}
.c2-axis span::before{content:"";position:absolute;left:50%;top:-9px;height:5px;width:1px;background:var(--muted);opacity:.5}
.c2-axis span:first-child{left:0;transform:none}.c2-axis span:first-child::before{left:0}
.c2-axis span:last-child{left:auto;right:0;transform:none}.c2-axis span:last-child::before{left:auto;right:0}
.c2-gap{position:relative;height:36px;margin-top:-4px}
.c2-brace{position:absolute;left:19%;width:59%;top:2px;height:8px;border:1px solid var(--warn);border-top:0}
.c2-gaplbl{position:absolute;left:48.5%;top:16px;transform:translateX(-50%);font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--warn);white-space:nowrap}
.chart2 .gap-note{padding:0;margin:0;font-size:15px}

.band figcaption p{margin-top:0}

/* ---- v12: from/to as aligned rows (no table) ---- */
.ft2{display:grid}
.ft2-head,.ft2-row{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1.25fr);gap:12px;align-items:baseline}
.ft2-head{padding-bottom:14px;border-bottom:2px solid var(--brand);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ft2-row{padding:18px 0;border-bottom:1px solid var(--line);transition:background .25s,transform .9s cubic-bezier(.2,.7,.2,1)}
.ft2-row:hover{background:var(--tint)}
.ft2-from{color:var(--muted);font-size:17px;line-height:1.35}
.ft2-arr{color:var(--ai);text-align:center;transition:transform .3s}
.ft2-row:hover .ft2-arr{transform:translateX(6px)}
.ft2-to{font-family:var(--f-display);font-size:clamp(20px,2.2vw,28px);font-weight:500;line-height:1.2;letter-spacing:-.012em;color:var(--brand)}
.ft2-row:hover .ft2-to{color:var(--ai-ink)}
.ft2-row:last-child .ft2-to{font-weight:600}
.ft2-row.rv:not(.in){transform:translateX(-16px)}
@media(max-width:600px){
  .ft2-head,.ft2-row{grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr);gap:8px}
  .ft2-row{padding:14px 0}
  .ft2-from{font-size:15px}
  .ft2-to{font-size:17px}
}
@media(prefers-reduced-motion:reduce){.ft2-row.rv:not(.in){transform:none}}

/* ---- v13: footer text 30% smaller ---- */
.foot{line-height:1.45}
.fcol h3{font-size:calc(24px * .7);margin:0 0 11px}
.fcol ul+h3{margin-top:22px}
.fcol ul{gap:6px}
.fcol a,.foot .linkbtn{font-size:calc(16px * .7)}
.fcol li.muted{font-size:calc(14px * .7)}
.fside{gap:13px}
.fside p{font-size:calc(16px * .7);line-height:1.55}
.foot .lang-btn{font-size:calc(15px * .7);padding:7px 10px}
.foot .lang-menu button{font-size:calc(14px * .7)}
.foot-base{font-size:calc(15px * .7)}
.foot-base .wrap{padding-block:16px}
.foot-grid{padding-block:clamp(40px,4.5vw,56px);gap:28px 24px;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}
@media(max-width:1000px){.foot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:620px){.foot-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}

/* ---- v14: BPMN diagrams ---- */
.bpmn-wrap{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:6px}
.bpmn{display:block;width:100%;height:auto}
.bp-pool{fill:none;stroke:var(--ink);stroke-width:1.2}
.bp-lane{fill:var(--bg);stroke:var(--line)}
.bp-lane.alt{fill:color-mix(in srgb,var(--bg2) 55%,var(--bg))}
.bp-lh{fill:var(--bg2);stroke:var(--line)}
.bp-lt{fill:var(--brand);font-family:var(--f-sans);font-size:10.5px;font-weight:600;letter-spacing:.03em}
.bp-e{fill:none;stroke:var(--muted);stroke-width:1.3}
.bp-e.ho{stroke:var(--warn);stroke-dasharray:5 4;stroke-width:1.5}
.bp-e.ag{stroke:var(--ai);stroke-width:1.4}
.bp-e.ex{stroke:var(--muted);stroke-dasharray:4 4}
.bp-mk{fill:var(--muted)}.bp-mk.w{fill:var(--warn)}.bp-mk.a{fill:var(--ai)}
.bp-el{font-family:var(--f-sans);font-size:10px;font-weight:600;fill:var(--muted)}
.bp-n rect{fill:var(--bg);stroke:var(--brand);stroke-width:1.3;transition:fill .35s,stroke .35s}
.bp-n.agent rect{fill:var(--ai-soft);stroke:var(--ai)}
.bp-n.svc rect{stroke:color-mix(in srgb,var(--brand) 55%,var(--line))}
.bp-n.wait rect{stroke:var(--warn);stroke-dasharray:5 3}
.bp-ic{fill:none;stroke:var(--brand);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}
.bp-n.agent .bp-ic{stroke:var(--ai-ink)}.bp-n.wait .bp-ic{stroke:var(--warn)}
.bp-num{font-family:var(--f-sans);font-size:9.5px;fill:var(--muted);font-variant-numeric:tabular-nums}
.bp-lbl{font-family:var(--f-sans);font-size:11px;line-height:1.2;color:var(--ink);text-align:center;display:flex;align-items:center;justify-content:center;height:100%;overflow:hidden;padding:0 1px;transition:color .35s}
.bp-lbl.sm{justify-content:flex-start;text-align:start;font-size:10.5px}
.bp-lbl.ev{align-items:flex-start;color:var(--muted);font-size:10.5px}
.bp-lbl.ev.up{align-items:flex-end}
.bp-ev circle,.bp-ev path.d{fill:var(--bg);stroke:var(--brand);stroke-width:1.5;transition:fill .35s,stroke .35s}
.bp-n.end circle{stroke-width:3.5}
.bp-n.timer circle{stroke:var(--warn)}
.bp-ev path.s{fill:none;stroke:var(--brand);stroke-width:2}
.bp-n.timer path.s{stroke:var(--warn);stroke-width:1.4}
.bp-n.past rect{stroke-width:2}
.bp-n.cur rect,.bp-n.cur circle,.bp-n.cur path.d{fill:var(--brand-fill);stroke:var(--brand-fill)}
.bp-n.cur.agent rect,.bp-n.cur.svc rect{fill:var(--ai);stroke:var(--ai)}
.bp-n.cur.wait rect,.bp-n.cur.timer circle{fill:var(--warn);stroke:var(--warn)}
.bp-n.cur .bp-lbl:not(.ev){color:#FFFFFF}
.bp-n.cur .bp-ic,.bp-n.cur path.s{stroke:#FFFFFF}
.bp-n.cur .bp-num{fill:#FFFFFF}
.bp-n.cur .bp-lbl.ev{color:var(--brand);font-weight:600}
.bp-token{fill:var(--ai);stroke:#FFFFFF;stroke-width:2;filter:drop-shadow(0 0 5px rgba(56,189,242,.85));transition:transform .75s cubic-bezier(.4,0,.2,1);pointer-events:none}
.bp-hint{display:none;align-items:center;gap:6px;font-size:12.5px;color:var(--muted);margin:0 0 10px}
.bp-hint span{color:var(--ai)}
@media(max-width:1000px){.bp-hint{display:flex}}
@media(prefers-reduced-motion:no-preference){.bp-hint span{animation:nudge 1.6s ease-in-out infinite}}
@keyframes nudge{50%{transform:translateX(5px)}}
.bp-legend{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px;padding-top:16px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}
.bp-legend span{display:inline-flex;align-items:center;gap:8px}
.bp-legend svg{width:26px;height:18px;overflow:visible}
.lg-ev,.lg-t,.lg-tm{fill:var(--bg);stroke:var(--brand);stroke-width:1.4}
.lg-ev.end{stroke-width:3}
.lg-t.ag{fill:var(--ai-soft);stroke:var(--ai)}.lg-t.sv{stroke:color-mix(in srgb,var(--brand) 55%,var(--line))}
.lg-tm{stroke:var(--warn)}
.lg-s{fill:none;stroke:var(--brand);stroke-width:1.8}
.lg-ho{fill:none;stroke:var(--warn);stroke-width:1.5;stroke-dasharray:4 3}
#p-before .runner,#p-after .runner{margin-top:14px}
@media(max-width:600px){.ba{padding:18px 14px}}
.bp-n.tall .bp-lbl{font-size:10.5px}
.kv{grid-template-columns:minmax(0,1fr);gap:4px 0}
.kv dt{padding-top:0}
.kv dd{margin:0 0 14px}
.kv dd:last-child{margin-bottom:0}

/* ---- v15: flags only in the language switch ---- */
.lang-cur{display:none!important}
.lang-btn{gap:6px;padding:7px 9px}
.lang-btn .flag{width:26px;height:17px}
.lang-menu .ln{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lang-menu{min-width:0;padding:6px}
.lang-menu:not([hidden]){display:flex;gap:4px}
.lang-menu li{display:block}
.lang-menu button{padding:7px;justify-content:center;border-radius:3px;outline-offset:1px}
.lang-menu button .flag{width:30px;height:20px}
.lang-menu button[aria-checked="true"]{background:var(--tint);box-shadow:inset 0 0 0 2px var(--ai)}
.lang-menu button[aria-checked="true"]::after{content:none}
.foot .lang-menu button[aria-checked="true"],.lang-modal .lang-menu button[aria-checked="true"]{box-shadow:inset 0 0 0 2px var(--ai)}

/* ---- v16: executive summary, author, contact ---- */
.summary{background:var(--bg)}
.sum-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:18px 0 0;color:var(--muted);font-size:15px}
.tk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
@media(max-width:960px){.tk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.tk-grid{grid-template-columns:minmax(0,1fr)}}
.tk{background:var(--bg);padding:26px 24px 22px;display:grid;gap:10px;align-content:start;text-decoration:none;color:var(--ink);transition:background .25s}
.tk:hover{background:var(--tint)}
.tk-n{font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--ai-ink);font-variant-numeric:tabular-nums}
.tk h3{margin:0;font-family:var(--f-display);font-size:clamp(18px,1.5vw,21px);font-weight:600;line-height:1.25;letter-spacing:-.01em;color:var(--brand)}
.tk p{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}
.tk-go{margin-top:4px;font-size:13px;font-weight:600;color:var(--ai-ink)}
.tk-go span{display:inline-block;transition:transform .25s}
.tk:hover .tk-go span{transform:translateX(4px)}
.author{background:var(--bg2)}
.au-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:40px}
@media(min-width:900px){.au-grid{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:64px;align-items:start}}
.au-photo{margin:0;max-width:420px;aspect-ratio:4/5;overflow:hidden;background:var(--line)}
.au-photo img{width:100%;height:100%;object-fit:cover}
@media(max-width:899px){.au-photo{max-width:260px}}
.au-text{display:grid;gap:14px;align-content:start}
.au-text h2{margin-top:6px}
section .au-text .eyebrow + h2{font-size:clamp(30px,3.6vw,46px);font-weight:600;color:var(--brand)}
.au-role{margin:-4px 0 4px;font-size:17px;font-weight:600;color:var(--ai-ink)}
.au-text>p{margin:0;max-width:60ch}
.au-creds{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.au-creds li{font-size:12.5px;font-weight:500;padding:5px 10px;border:1px solid var(--line);background:var(--bg);color:var(--brand)}
.au-contact{margin-top:18px;padding:26px;background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--ai);display:grid;gap:12px}
.au-contact h3{margin:0;font-family:var(--f-display);font-size:22px;font-weight:600;color:var(--brand)}
.au-contact p{margin:0;color:var(--muted);max-width:56ch}
.au-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.au-btns .btn{gap:10px}
.au-btns svg{width:18px;height:18px;flex-shrink:0}
.au-btns #li-btn svg{fill:currentColor}
.au-btns a[href^="mailto"] svg{fill:none;stroke:currentColor;stroke-width:1.6}
.au-mail{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px}
.au-mail code{font-family:var(--f-sans);color:var(--ink);user-select:all;word-break:break-all}
.au-copy{font:inherit;font-size:12px;font-weight:600;letter-spacing:.04em;background:transparent;color:var(--ai-ink);border:1px solid var(--line);padding:4px 10px;cursor:pointer}
.au-copy:hover{border-color:var(--ai)}
.final-contact{margin:22px 0 0;font-size:16px}
.final-contact a{color:#9ADCF8;text-decoration:none;border-bottom:1px solid rgba(154,220,248,.4);padding-bottom:2px}
.final-contact a:hover{color:#FFFFFF;border-color:#FFFFFF}
.nav .wrap>ul a.nav-cta{color:var(--brand);font-weight:600}
html.nav-over .nav .wrap>ul a.nav-cta{color:#FFFFFF}
@media(min-width:1101px){.nav .wrap>ul a.nav-cta{border:1px solid currentColor;padding:6px 12px;border-bottom-width:1px;align-self:center}.nav .wrap>ul li:has(.nav-cta){display:flex;align-items:center}}
section .au-text .eyebrow{font-family:var(--f-sans);font-size:clamp(14px,1.2vw,16px);font-weight:600;letter-spacing:.02em;color:var(--ai-ink)}
section .au-text .eyebrow + h2{margin-top:4px}

/* ---- v17: fixes ---- */
.road-aside .eyebrow{font-size:clamp(26px,2.6vw,36px);hyphens:manual}
.road-aside .eyebrow + h2{font-size:clamp(20px,2vw,26px)}
.ft2-from,.ft2-to{font-size:clamp(17px,1.7vw,22px);line-height:1.3}
.ft2-from{font-family:var(--f-display);font-weight:400}
@media(max-width:600px){.ft2-from,.ft2-to{font-size:16px}}

/* ---- v18: equal chapter title size ---- */
section .eyebrow{font-size:clamp(26px,2.6vw,36px)}

/* ---- v19: full-width contact band ---- */
.au-grid>.au-contact{grid-column:1 / -1;margin-top:8px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px 48px;align-items:center;padding:clamp(24px,3vw,36px)}
.au-c-text{display:grid;gap:10px}
.au-c-act{display:grid;gap:12px;justify-items:start}
.au-contact h3{font-size:clamp(22px,2.2vw,28px)}
@media(max-width:860px){.au-grid>.au-contact{grid-template-columns:minmax(0,1fr)}}

/* ---- v20: logo + nav fit ---- */
.brand{display:flex;align-items:center;flex-shrink:0}
.brand .logo{height:40px;width:auto;display:block}
.logo .lg-ac{stroke:var(--ai)}
.logo .lg-ac2{fill:var(--ai)}
.logo .lg-tx{fill:var(--brand)}
html.nav-over .nav .logo .lg-ac{stroke:#38BDF2}
html.nav-over .nav .logo .lg-ac2{fill:#38BDF2}
html.nav-over .nav .logo .lg-tx{fill:#FFFFFF}
.nav.open .logo .lg-tx{fill:var(--brand)}
@media(min-width:1101px){
  .nav .wrap>ul{overflow:visible;gap:18px}
  .nav a.l{font-size:13.5px;white-space:nowrap}
}

/* ---- v21: menu falls back to hamburger whenever items do not fit ---- */
.nav.compact .wrap{gap:10px}
.nav.compact .wrap>ul{display:none;position:absolute;left:0;right:0;top:60px;margin:0;flex-direction:column;gap:0;overflow:visible;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 18px 36px rgba(7,16,30,.14);padding:6px max(16px,env(safe-area-inset-right,0px)) 14px max(16px,env(safe-area-inset-left,0px))}
.nav.compact.open .wrap>ul{display:flex}
.nav.compact .wrap>ul li{border-bottom:1px solid var(--line)}
.nav.compact .wrap>ul li:last-child{border-bottom:0}
.nav.compact .wrap>ul a.l{display:block;padding:16px 0;font-size:13px;color:var(--ink);border-bottom:0}
.nav.compact .wrap>ul a.l.on{color:var(--ai-ink)}
.nav.compact .lang{margin-inline-start:auto}
.nav.compact .burger{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:40px;padding:0;background:transparent;border:1px solid var(--line);color:var(--brand);cursor:pointer;flex-shrink:0;transition:border-color .35s,color .35s}
.nav.compact .burger span{display:block;width:20px;height:2px;background:currentColor;transition:transform .25s,opacity .2s}
.nav.compact.open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav.compact.open .burger span:nth-child(2){opacity:0}
.nav.compact.open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
html.nav-over .nav.compact .burger{color:#FFFFFF;border-color:rgba(255,255,255,.4)}
.nav.compact.open{background:var(--bg)}
.nav.compact .wrap>ul a.nav-cta{border:0;padding:16px 0}
.nav.compact .wrap>ul li:has(.nav-cta){display:block}

/* ---- v22: seamless menu over hero ---- */
html.nav-over .nav{border-bottom-color:transparent;box-shadow:none}
html.nav-over .nav .progress{opacity:0}
.hero-top::before{height:240px;background:linear-gradient(180deg,rgba(7,16,30,.5) 0%,rgba(7,16,30,.22) 45%,rgba(7,16,30,0) 100%)}
html.nav-over .nav a.l,html.nav-over .nav .logo{text-shadow:0 1px 10px rgba(7,16,30,.65);filter:drop-shadow(0 1px 6px rgba(7,16,30,.45))}
html.nav-over .nav a.l{color:rgba(255,255,255,.92)}

/* coherence lens */
.coh{display:grid;border-top:2px solid var(--brand)}
.coh-row{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--line);align-items:baseline}
.coh-head{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.coh-k{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.coh-f{font-size:16px;color:var(--muted);line-height:1.35}
.coh-c{font-size:17px;font-weight:600;color:var(--brand);line-height:1.35}
.coh-row.amp .coh-f{color:var(--ink);font-family:var(--f-display);font-size:clamp(20px,2vw,26px)}
.coh-row.amp .coh-c{color:var(--ai-ink);font-family:var(--f-display);font-size:clamp(20px,2vw,26px);font-weight:500}
@media(max-width:640px){.coh-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.coh-k{grid-column:1/-1}.coh-head .coh-k{display:none}}
.coh-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:48px}
@media(min-width:1000px){.coh-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:start}}
.coh-metrics h3{margin:0 0 14px;font-family:var(--f-display);font-weight:500;font-size:clamp(20px,2vw,24px);line-height:1.25;color:var(--brand)}
.coh-metrics dl{margin:0;display:grid;gap:0;border-top:1px solid var(--line)}
.coh-metrics dl>div{padding:12px 0;border-bottom:1px solid var(--line);display:grid;gap:2px}
.coh-metrics dt{font-weight:600;color:var(--ai-ink)}
.coh-metrics dd{margin:0;font-size:15px;color:var(--muted)}
.tag.own{color:var(--ai-ink)}
/* coherence diagnostic */
.diag{margin-top:56px;background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--ai);padding:clamp(20px,3vw,32px);display:grid;gap:28px}
@media(min-width:1000px){.diag{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px}}
.diag h3{margin:0 0 6px;font-family:var(--f-display);font-weight:500;font-size:clamp(22px,2.2vw,28px);color:var(--brand)}
.diag-intro p{margin:0 0 18px;color:var(--muted)}
.dg-rows{display:grid;gap:10px}
.dg-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--line)}
.dg-row b{font-weight:600;color:var(--brand)}
.dg-row small{grid-column:1;color:var(--muted);font-size:13px}
.dg-row.low b{color:var(--ai-ink)}
.dg-sc{grid-row:1/span 2;grid-column:2;display:flex;gap:4px}
.dg-sc button{font-family:var(--f-mono);font-size:13px;width:32px;height:32px;border:1px solid var(--line);background:var(--bg);color:var(--brand);cursor:pointer;padding:0}
.dg-sc button[aria-pressed="true"]{background:var(--brand-fill);border-color:var(--brand);color:var(--on-brand)}
.dg-sc button:focus-visible{outline:2px solid var(--ai);outline-offset:2px}
.dg-out{display:grid;gap:12px;align-content:start}
.dg-out .k{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.dg-out .bn{font-family:var(--f-display);font-size:clamp(30px,3.4vw,42px);line-height:1.05;color:var(--ai-ink);font-weight:500}
.dg-out p{margin:0}
.dg-bars{display:grid;gap:5px;margin-top:6px}
.dg-bar{display:grid;grid-template-columns:120px minmax(0,1fr) 20px;gap:8px;align-items:center;font-size:12.5px;color:var(--muted)}
.dg-bar i{display:block;height:6px;background:var(--line);position:relative}
.dg-bar i::after{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--w);background:var(--brand)}
.dg-bar.low i::after{background:var(--ai)}
.dg-bar span:last-child{font-family:var(--f-mono);text-align:right}
@media(max-width:560px){.dg-row{grid-template-columns:minmax(0,1fr)}.dg-sc{grid-row:auto;grid-column:1}.dg-bar{grid-template-columns:96px minmax(0,1fr) 20px}}
/* author book */
.au-book{margin:6px 0 4px;padding:18px 20px;border:1px solid var(--line);border-left:3px solid var(--ai);background:var(--bg);display:grid;gap:6px}
.au-book .k{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.au-book cite{font-style:normal;font-family:var(--f-display);font-size:22px;font-weight:500;color:var(--brand)}
.au-book p{margin:0;font-size:15px}
.au-book a{justify-self:start;font-weight:600;color:var(--ai-ink)}

/* translator + opportunity filter */
.trx{margin-top:56px;display:grid;grid-template-columns:minmax(0,1fr);gap:40px}
@media(min-width:1000px){.trx{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:start}}
.trx h3{margin:0 0 6px;font-family:var(--f-display);font-weight:500;font-size:clamp(22px,2.2vw,28px);color:var(--brand)}
.trx .sub{margin:0 0 18px;color:var(--muted)}
.pga{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}
.pga div{background:var(--bg);padding:16px 18px;display:grid;grid-template-columns:96px minmax(0,1fr);gap:4px 14px;align-items:baseline}
.pga b{font-family:var(--f-mono);font-weight:500;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--brand)}
.pga div.act b{color:var(--ai-ink)}
.pga span{font-size:15px}
.pga small{grid-column:2;color:var(--muted);font-size:13px}
.ofil{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;counter-reset:of}
@media(min-width:700px){.ofil{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ofil li{counter-increment:of;background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--brand);padding:18px;display:grid;gap:8px;align-content:start;position:relative}
.ofil li:last-child{border-top-color:var(--ai)}
.ofil li::before{content:"0" counter(of);font-family:var(--f-mono);font-size:12px;color:var(--muted)}
.ofil b{font-size:17px;color:var(--brand)}
.ofil span{font-size:14.5px;color:var(--muted)}
.trx p.sub,.dr p.sub{font-family:var(--f-sans);font-size:16px;line-height:1.5;font-weight:400;letter-spacing:0}
.ofil-stop{margin:14px 0 0;font-size:15px;font-weight:600;color:var(--ai-ink)}
/* decision rights */
.dr{margin-top:64px}
.dr h3{margin:0 0 6px;font-family:var(--f-display);font-weight:500;font-size:28px;color:var(--brand)}
.dr .sub{margin:0 0 18px;color:var(--muted)}
.dr-t{display:grid;border-top:2px solid var(--brand)}
.dr-r{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1.4fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--line);align-items:baseline}
.dr-r.h{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.dr-q{font-weight:600;color:var(--brand)}
.dr-o{font-family:var(--f-display);font-size:19px;font-weight:500;color:var(--ai-ink)}
.dr-w{font-size:15px;color:var(--muted)}
@media(max-width:700px){.dr-r{grid-template-columns:minmax(0,1fr)}.dr-r.h{display:none}.dr-r{gap:4px}}
/* proportional governance */
.gov-rules{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px}
.gov-rules li{padding:12px 0 0;border-top:1px solid var(--line);font-size:15.5px}
.gov-rules b{display:block;color:var(--brand);font-weight:600}
/* simulator: flow + business case */
.in2{display:grid;grid-template-columns:minmax(0,1fr) 92px 92px;gap:6px 8px;align-items:center;font-size:13.5px}
.in2 .hd{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.in2 input{font:inherit;font-variant-numeric:tabular-nums;padding:7px 8px;border:1px solid var(--line);background:var(--bg2);color:var(--ink);width:100%}
.simt{margin-top:22px;border:1px solid var(--line);background:var(--bg);padding:20px 22px;overflow-x:auto}
.simt h3{margin:0 0 4px;font-family:var(--f-mono);font-weight:500;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--brand)}
.simt p.n{margin:0 0 12px;font-size:13.5px;color:var(--muted)}
.simt table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums;min-width:520px}
.simt th,.simt td{padding:9px 8px;border-bottom:1px solid var(--line);text-align:right;vertical-align:baseline}
.simt th:first-child,.simt td:first-child{text-align:left}
.simt thead th{font-family:var(--f-mono);font-weight:500;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.simt td.top{color:var(--ai-ink);font-weight:600}
.simt tr.key td{font-weight:600;color:var(--brand)}
.simt tr.key td.top{color:var(--ai-ink)}
.simt .neg{color:#B4232A}
:root[data-theme="dark"] .simt .neg{color:#F08A8F}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .simt .neg{color:#F08A8F}}

/* five principles */
.fp{margin-top:40px;border-top:1px solid rgba(255,255,255,.18);padding-top:22px;max-width:1100px}
.fp-h{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;align-items:baseline;margin-bottom:16px}
.fp-h h3{margin:0;font-family:var(--f-mono);font-weight:500;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#9ADCF8}
.fp-h span{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--final-muted)}
.fp ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14);counter-reset:fp}
@media(min-width:700px){.fp ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.fp ol{grid-template-columns:repeat(5,minmax(0,1fr))}}
.fp li{counter-increment:fp;background:rgba(7,16,30,.72);padding:16px;display:grid;gap:6px;align-content:start}
.fp li::before{content:"0" counter(fp);font-family:var(--f-mono);font-size:11px;color:#38BDF2}
.fp b{font-size:16px;font-weight:600;color:var(--final-ink);line-height:1.3}
.fp span{font-size:14px;color:var(--final-muted);line-height:1.45}

/* BPMN: sequence flows are solid; dashed is reserved for message flows */
.bp-e.ex{stroke-dasharray:none}
/* nav: no frames around Contact and language */
.nav .nav-cta{border:0!important;padding-inline:0!important}
.lang-top .lang-btn,.lang-top .lang-btn:hover{border-color:transparent!important;box-shadow:none!important;background:transparent!important}
/* author: photo and book in one column */
.au-side{display:grid;gap:20px;align-content:start;max-width:420px}
.au-side .au-photo{max-width:none;width:100%}
.au-side .au-book{margin:0}
@media(max-width:959px){.au-side{max-width:520px}.au-side .au-photo{max-width:260px}}

.bp-lbl.ev.left{text-align:right;justify-content:flex-end;align-items:center;display:flex;height:100%}

/* multi-page: page header + next page */
.page-hero .hero-inner{padding-bottom:clamp(48px,6vw,80px)}
.page-hero h1{font-size:clamp(36px,5.2vw,72px);line-height:1.02;max-width:18ch}
.page-hero .eyebrow{display:block;margin-bottom:18px;font-family:var(--f-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.page-hero .sub{max-width:58ch;margin:22px 0 0;font-size:clamp(17px,1.5vw,21px);line-height:1.45;color:rgba(242,245,250,.86)!important}
.page-hero + section,.page-hero + figure{margin-top:0}
.next-pg{padding-block:clamp(40px,5vw,64px);border-top:1px solid var(--line);background:var(--bg)}
.next-pg a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 24px;align-items:end;text-decoration:none;color:inherit;padding:28px clamp(20px,3vw,36px);border:1px solid var(--line);border-left:3px solid var(--ai);background:var(--bg);transition:background .25s}
.next-pg a:hover{background:var(--tint)}
.next-pg .k{grid-column:1;font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.next-pg b{grid-column:1;font-family:var(--f-display);font-weight:500;font-size:clamp(26px,3vw,38px);line-height:1.1;color:var(--brand)}
.next-pg .d{grid-column:1;color:var(--muted);font-size:16px}
.next-pg .arr{grid-column:2;grid-row:1/span 3;align-self:center;font-size:clamp(28px,3vw,40px);color:var(--ai-ink);transition:transform .25s}
.next-pg a:hover .arr{transform:translateX(6px)}
.nav a.l.cur{border-color:var(--ai)}

/* book links */
.au-grid>.au-reads{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media(min-width:760px){.au-grid>.au-reads{grid-template-columns:repeat(2,minmax(0,1fr))}}
.au-read{background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--brand);padding:clamp(22px,3vw,32px);display:grid;gap:12px;align-content:start;grid-template-rows:auto auto 1fr auto auto}
.au-read:last-child{border-top-color:var(--ai)}
.au-read .k{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.au-read h3{margin:0;font-family:var(--f-display);font-weight:500;font-size:clamp(22px,2.2vw,28px);color:var(--brand)}
.au-read p{margin:0;font-size:15.5px;line-height:1.55}
.au-read .btn{justify-self:start;margin-top:6px}
.au-read small{font-size:12.5px;color:var(--muted)}

/* book card with cover */
.au-book.has-cover{display:grid;grid-template-columns:clamp(110px,14vw,170px) minmax(0,1fr);gap:20px;align-items:center;padding:16px 20px 16px 16px}
.au-cover{width:100%;height:auto;display:block;filter:drop-shadow(0 10px 18px rgba(11,37,69,.22))}
.au-book-t{display:grid;gap:6px}
@media(max-width:520px){.au-book.has-cover{grid-template-columns:110px minmax(0,1fr);gap:14px}}

/* language switcher: text labels (Belgian style) */
.lang .lang-cur{display:inline!important}
.lang .lang-btn{font-size:12.5px!important;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:6px 4px!important;gap:6px!important;white-space:nowrap}
.lang .lang-menu:not([hidden]){display:block!important;min-width:210px;padding:10px!important;border-radius:14px;background:var(--bg)!important;border:1px solid var(--line)!important;box-shadow:0 16px 40px rgba(7,16,30,.18)}
.lang .lang-menu li{display:block}
.lang .lang-menu button{display:flex!important;justify-content:flex-start!important;align-items:center;width:100%;padding:10px 14px!important;font-size:15px!important;color:var(--muted)!important;border-radius:8px;box-shadow:none!important;background:transparent!important}
.lang .lang-menu button:hover,.lang .lang-menu button:focus-visible{background:var(--tint)!important;color:var(--brand)!important}
.lang .lang-menu button[aria-checked="true"]{color:var(--brand)!important;font-weight:600}
.lang .lang-menu button[aria-checked="true"]::after{content:"✓"!important;margin-left:auto;color:var(--ai-ink)}
.lang .lang-menu .ln{position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip:auto!important;font-family:var(--f-sans)!important;font-size:inherit!important;letter-spacing:0!important;text-transform:none!important;color:inherit!important}
.lang-modal .lang-btn{color:var(--brand)!important}

@media(max-width:480px){.lang-top .lang-cur{display:none!important}.lang-top .lang-btn::before{content:attr(data-code)}}

/* insights */
.ins-list{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-bottom:clamp(48px,6vw,80px)}
@media(min-width:900px){.ins-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ins-card{display:grid;gap:10px;align-content:start;padding:24px;border:1px solid var(--line);border-top:3px solid var(--ai);background:var(--bg);text-decoration:none;color:inherit;transition:background .25s,transform .25s}
.ins-card:hover{background:var(--tint);transform:translateY(-2px)}
.ins-card h3{margin:0;font-family:var(--f-display);font-weight:500;font-size:22px;line-height:1.2;color:var(--brand)}
.ins-card p{margin:0;color:var(--muted);font-size:15px}
.ins-tag{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ai-ink)}
.ins-meta{font-size:13px;color:var(--muted)}
.ins-arts{display:grid;gap:clamp(48px,6vw,72px)}
.ins-art{max-width:72ch;display:grid;gap:14px;padding-top:clamp(28px,3vw,40px);border-top:1px solid var(--line);scroll-margin-top:90px}
.ins-art h2{margin:0;font-family:var(--f-display);font-weight:500;font-size:clamp(28px,3vw,40px);line-height:1.12;color:var(--brand)}
.ins-art p{margin:0;font-size:17.5px;line-height:1.65}
.ins-art .ins-meta{margin:0}
.ins-foot{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;margin-top:8px}
.ins-rel{color:var(--ai-ink);font-weight:600;text-decoration:none}
.ins-rel:hover{text-decoration:underline}
/* homepage hero headline */
.hero:not(.page-hero) h1{font-size:clamp(38px,5.4vw,78px);max-width:17ch;line-height:1.02}

html,body{overflow-x:clip}


/* nav over hero: solid once the page scrolls, so text never shows through */
html.nav-over .nav.scrolled{background:rgba(7,16,30,.96)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;border-bottom-color:rgba(255,255,255,.1)}
/* author: photo column as tall as the text column, so the book card never drops below the photo */
@media(min-width:900px){
  .au-grid>.au-side{align-self:stretch;max-width:none}
  .au-grid>.au-side{display:flex!important;flex-direction:column}
  .au-side .au-photo{flex:1 1 auto;height:auto;min-height:0;aspect-ratio:auto!important;max-width:none}
  .au-side .au-photo img{height:100%;width:100%;object-fit:cover}
  .au-side .au-photo img{object-position:50% 30%}
}

/* Contact aligned with the other menu items */
@media(min-width:1101px){.nav:not(.compact) .wrap>ul li:has(.nav-cta){display:block}
.nav:not(.compact) .wrap>ul a.nav-cta{padding:20px 0!important;border:0!important;border-bottom:2px solid transparent!important;align-self:auto}
.nav:not(.compact) .wrap>ul a.nav-cta.on,.nav:not(.compact) .wrap>ul a.nav-cta:hover{border-bottom-color:#7FD3F7!important}}

/* ---- v16: legal pages ---- */
.legal-body{padding-top:8px}
.legal-body .lg{display:none}
html[lang="en"] .lg[lang="en"],html[lang="nl"] .lg[lang="nl"],html[lang="fr"] .lg[lang="fr"],html[lang="de"] .lg[lang="de"],html[lang="ar"] .lg[lang="en"]{display:block}
.legal-body h2{font-family:var(--f-display);font-weight:600;font-size:22px;color:var(--brand);margin:36px 0 10px;scroll-margin-top:90px}
.legal-body a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}
.lg-tw{overflow-x:auto;margin:6px 0 18px;border:1px solid var(--line);border-radius:10px}
.lg-t{width:100%;border-collapse:collapse;font-size:14.5px;line-height:1.5;min-width:640px}
.lg-t th,.lg-t td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line)}
.lg-t th{background:rgba(10,143,208,.07);color:var(--brand);font-weight:600}
.lg-t tr:last-child td{border-bottom:0}
.lg-t code,.legal-body code{font-size:.92em}
.legal-hero .hero-top{min-height:0}

/* ---- v17: banner logo, width, spacing ---- */
.cbox{width:min(820px,100%)}
.c-top{align-items:center;margin-bottom:22px}
.c-logo{display:flex;align-items:center}
.c-logo .logo{height:42px;width:auto;display:block;filter:none;text-shadow:none}
.c-head h2,.c-top+h2{margin:0 0 16px}
.c-links{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 22px;margin-top:16px;font-size:14.5px}
.c-more{color:var(--muted)}
@media(max-width:600px){.c-top{margin-bottom:16px}.c-logo .logo{height:34px}.c-head h2,.c-top+h2{margin:0 0 12px}.c-links{gap:4px 14px;font-size:13.5px}.c-more{flex-basis:100%}}

/* ---- v18: two-step banner ---- */
#c-cust{display:none}
.cmodal.compact #c-cust{display:block}
.cmodal.compact #c-save,.cmodal.compact .c-tabs,.cmodal.compact .c-scroll{display:none}
.cmodal.compact .c-actions{border-top:0;padding-top:8px}
.cmodal.compact .c-head{padding-bottom:18px}
#c-cust span{display:inline-block;margin-left:6px;font-size:1.15em;line-height:1}
@media(max-width:600px){#c-cust{grid-area:save}}

/* ---- v19: hero byline ---- */
.hero-by{display:block;margin-bottom:18px;font-family:var(--f-mono);font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:#7FD3F7}

/* ---- v20: responsive images ---- */
picture{display:contents}picture>source{display:none}

/* ---- v21: coherence realization, governance law ---- */
.coh-sim{border:1px solid var(--line);border-left:3px solid var(--ai);padding:18px 20px;margin-bottom:18px;background:var(--bg)}
.coh-sim .cs-top{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px}
.coh-sim .cs-top b{font-size:28px;font-family:var(--f-display);color:var(--brand);font-weight:600}
.coh-sim .k{font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);width:100%}
.coh-sim p{margin:8px 0 12px;font-size:14.5px;line-height:1.55}
.cs-bars{display:grid;gap:8px}
.cs-bar{display:grid;grid-template-columns:minmax(110px,170px) 1fr 44px;gap:10px;align-items:center;font-size:14px}
.cs-bar i{height:8px;background:var(--line);position:relative;display:block}
.cs-bar i::after{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--w);background:var(--ai)}
.cs-bar b{text-align:right;font-weight:600}
.coh-sim .wi{margin:14px 0 0;font-weight:600;color:var(--brand)}
.sc .metric .pot{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.gov-law{margin-top:30px}
.gov-law h3{font-family:var(--f-display);font-weight:600;font-size:19px;color:var(--brand);margin:0 0 4px}
.gov-note{font-size:13px;color:var(--muted);margin:12px 0 0}

/* ---- v22: layout fixes ---- */
.sc .metric .pot{text-transform:none;letter-spacing:0;font-family:inherit}
.sc.top .metric .pot{color:rgba(255,255,255,.72)}
.gov-law{margin-top:44px;padding-top:28px;border-top:1px solid var(--line)}
@media(min-width:900px){.gov-law .gov-rules{grid-template-columns:1fr 1fr;column-gap:40px}}

/* ---- v23: coherence lens + diagnostic anchors ---- */
.lens{margin-top:40px;padding:20px 24px 22px;border-left:3px solid var(--ai);background:rgba(10,143,208,.06);max-width:900px}
.lens-k{display:block;font-family:var(--f-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ai-ink);margin-bottom:8px}
.lens p{margin:0;font-family:var(--f-display);font-size:19px;line-height:1.5;color:var(--brand);font-weight:500}
.road-aside .lens{margin-top:26px;padding:16px 18px}
.road-aside .lens p{font-size:16px}
.dg-anc{grid-column:1;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12.5px;color:var(--muted);line-height:1.4}
.dg-anc>span{display:inline-flex;gap:6px;align-items:baseline}
.dg-anc i{font-style:normal;font-weight:600;font-size:11px;min-width:16px;height:16px;line-height:16px;text-align:center;border:1px solid var(--line);border-radius:50%}
.dg-anc .on{color:var(--brand);font-weight:600}
.dg-anc .on i{background:var(--brand);color:#fff;border-color:var(--brand)}
@media(max-width:600px){.lens p{font-size:17px}.dg-anc{flex-direction:column}}

/* ---- v24: Enterprise Coherence page ---- */
.ec-page .lgx{display:none}
html[lang="en"] .ec-page .lgx[lang="en"],html[lang="nl"] .ec-page .lgx[lang="nl"],html[lang="fr"] .ec-page .lgx[lang="fr"],html[lang="de"] .ec-page .lgx[lang="de"],html[lang="ar"] .ec-page .lgx[lang="en"]{display:block}
.ec-sec{padding-block:clamp(48px,7vw,88px)}
.ec-sec.alt{background:var(--bg2)}
.ec-sec .head{margin-bottom:28px;max-width:860px}
.ec-sec .head h2{margin:10px 0 12px}
.ec-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.ec-tile{background:var(--bg);padding:22px 22px 18px;display:grid;gap:6px;align-content:start}
.ec-tile b{font-family:var(--f-display);font-size:clamp(34px,4vw,48px);line-height:1;color:var(--brand);font-weight:600;font-variant-numeric:tabular-nums}
.ec-tile p{margin:0;font-size:15.5px;line-height:1.45}
.ec-src{font-size:12px;color:var(--muted);letter-spacing:.02em}
.ec-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}
.ec-card{border:1px solid var(--line);background:var(--bg);padding:22px}
.ec-card.ec-wide{grid-column:1/-1}
.ec-card h3{margin:0 0 14px;font-size:18px;color:var(--brand)}
.ec-legend{display:flex;gap:18px;font-size:13px;color:var(--muted);margin-bottom:12px}
.ec-legend i{display:inline-block;width:12px;height:12px;margin-right:6px;vertical-align:-1px}
.ec-legend i.ld,.ec-pb i.ld{background:var(--ai)}.ec-legend i.ot,.ec-pb i.ot{background:var(--line)}
.ec-pair{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:4px 18px;padding:10px 0;border-top:1px solid var(--line)}
.ec-pl{grid-row:span 2;display:grid;align-content:center;gap:2px;font-size:15px}
.ec-pb{display:flex;align-items:center;gap:10px;font-variant-numeric:tabular-nums}
.ec-pb i{display:block;height:12px;width:var(--w);min-width:3px;max-width:calc(100% - 70px)}
.ec-pb em{font-style:normal;font-size:14px;font-weight:600;white-space:nowrap}
.ec-note{margin:12px 0 0;font-size:12.5px;color:var(--muted)}
.ec-mult{display:grid;gap:14px}
.ec-mrow{display:grid;grid-template-columns:minmax(0,1fr) 54px;gap:4px 12px;align-items:center}
.ec-mrow span{grid-column:1/-1;font-size:14.5px}
.ec-mb{position:relative;height:14px;background:var(--bg2)}
.ec-mb i{position:absolute;left:0;top:0;bottom:0;width:var(--w)}
.ec-mb i.lead{background:var(--ai)}
.ec-mb::after{content:"";position:absolute;left:var(--base);top:-4px;bottom:-4px;border-left:2px solid var(--brand);z-index:2}
.ec-mrow b{font-size:18px;color:var(--brand);text-align:right;font-variant-numeric:tabular-nums}
.ec-split{display:flex;height:120px;gap:2px}
.ec-seg{width:var(--w);display:grid;align-content:end;gap:2px;padding:10px;color:#fff;min-width:0}
.ec-seg b{font-size:22px;line-height:1}
.ec-seg span{font-size:12.5px;line-height:1.3}
.ec-seg.s10{background:#7C93B3}.ec-seg.s20{background:#2F5D8C}.ec-seg.s70{background:var(--brand-fill)}
.ec-seg.s10 span{display:none}
.ec-seg.s10{padding:8px 4px}.ec-seg.s10 b{font-size:15px}
.ec-exps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px}
.ec-exp{background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--ai);padding:20px;display:grid;gap:8px;align-content:start}
.ec-org{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ai-ink);font-weight:600}
.ec-exp h3{margin:0;font-size:17px;color:var(--brand)}
.ec-exp p{margin:0;font-size:15px;line-height:1.55}
.ec-dim{font-size:13px;color:var(--muted)}.ec-dim span{font-weight:600}
.ec-tw{overflow-x:auto}
.ec-map{width:100%;border-collapse:collapse;min-width:560px;font-size:15px}
.ec-map th,.ec-map td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.ec-map thead th{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600}
.ec-map tbody th{color:var(--brand);font-weight:600;white-space:nowrap}
.ec-map td:last-child{color:var(--muted);white-space:nowrap}
.ec-simhead{padding-bottom:8px}
.ec-simbox{padding-top:0}
.ec-simwrap{max-width:1680px}
#ec-sim{display:block;width:100%;height:1500px;border:0;background:var(--bg)}
.ec-formula{text-align:center;display:grid;gap:8px;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ec-formula .eq{font-family:var(--f-display);font-size:clamp(22px,3.2vw,36px);font-weight:600;color:var(--brand);letter-spacing:.02em}
.ec-formula .eq em{font-style:normal;color:var(--ai)}
.ec-formula p{margin:0;color:var(--muted);font-size:14px}
.ec-formula .claim{color:var(--ink);font-size:17px;max-width:62ch;margin:4px auto 0}
.ec-sources{margin-top:32px}
.ec-sources h3{font-size:15px;color:var(--brand);margin:0 0 8px}
.ec-sources ul{margin:0;padding-left:18px;display:grid;gap:4px;font-size:14px}
.ec-sources a{color:var(--ai-ink)}
@media(max-width:900px){.ec-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-charts{grid-template-columns:minmax(0,1fr)}.ec-pair{grid-template-columns:minmax(0,1fr)}.ec-pl{grid-row:auto}}
@media(max-width:520px){.ec-tiles{grid-template-columns:minmax(0,1fr)}.ec-seg.s20 span{font-size:11px}}
.foot-base .fb-tag{font-style:italic;opacity:.85}
.foot-base .fb-l{display:block;margin:0;line-height:1.7}.foot-base .fb-l *{display:inline}

/* Quiet reading surfaces; explanatory simulations retain their own motion. */
.skip-link{position:fixed;top:12px;left:16px;z-index:1000;max-width:calc(100vw - 32px);padding:12px 18px;background:var(--brand-fill);color:var(--on-brand);border:2px solid var(--ai);font-weight:600;transform:translateY(-200%)}
.skip-link:focus{transform:none;outline:2px solid var(--bg);outline-offset:3px}
main:focus{outline:none}
.hero-bg img,.band.in img,.hero-top h1,.hero-top .sub,.hero-top .support,.hero-top .ctas{animation:none!important}
.hero-bg,.band img{transform:none!important;will-change:auto}
.rv,.rv:not(.in),.band:not(.in) p{transform:none;transition:none}
.band:not(.in) .eyebrow{clip-path:none}
.head .eyebrow::before{transition:none}
.head:not(.in) .eyebrow::before{width:28px}
.fnode.on:not(:last-child)::after,.gl.control::after,.base::after{animation:none!important;display:none}
.lvl.l3 .orch-row .c.ai,.lvl.l3 .stack>.c.ai{animation:none!important}
h1,h2,h3,p,a,li,dd,dt{overflow-wrap:break-word}
.ins-card,.ins-art,.au-text,.au-c-text,.hero-grid>*{min-width:0}
.au-mail code{overflow-wrap:anywhere;white-space:normal}
@media(max-width:1100px){.nav .wrap>ul{max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px);overflow-y:auto;overscroll-behavior:contain}}
@media(max-width:520px){.btn{max-width:100%;white-space:normal}.ins-card h3{overflow-wrap:anywhere}}
