*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

/* GATE OVERLAY */
#gate{position:fixed;inset:0;background:#1a5045;display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .4s ease,visibility .4s ease;font-family:'Figtree',sans-serif;color:#f0ede6}
#gate[hidden]{display:none!important}
#gate.hidden{opacity:0;visibility:hidden;pointer-events:none}
.gate-card{width:min(560px,94vw);display:flex;flex-direction:column;gap:22px;padding:8px}
.gate-logo{display:flex;align-items:center;gap:12px;margin-bottom:30px}
.gate-logo-img{height:64px;width:auto;display:block}
.gate-brand{font-family:'Figtree',sans-serif;font-size:19px;font-weight:600;color:#f0ede6;letter-spacing:.5px;line-height:1}
.gate-brand-sub{font-size:10.5px;font-weight:300;color:rgba(240,237,230,.5);letter-spacing:4px;margin-top:3px}
.gate-pw-wrap{position:relative;display:flex;align-items:center}
.gate-pw-wrap #gate-pw{flex:1;padding-right:56px}
.gate-pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:transparent;border:0;padding:10px 14px;color:rgba(240,237,230,.55);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s ease}
.gate-pw-toggle:hover{color:rgba(240,237,230,.9)}
.gate-pw-toggle:focus{outline:none;color:rgba(240,237,230,.9)}
.gate-pw-toggle .gate-eye-off{display:none}
.gate-pw-toggle[aria-pressed="true"] .gate-eye-on{display:none}
.gate-pw-toggle[aria-pressed="true"] .gate-eye-off{display:block}
.gate-eye[hidden]{display:none}
.gate-title{font-family:'Fraunces',serif;font-weight:600;font-size:46px;color:#f0ede6;line-height:1.1;letter-spacing:-.3px}
.gate-sub{font-family:'Figtree',sans-serif;font-size:17px;color:rgba(240,237,230,.65);line-height:1.55;margin-bottom:6px}
#gate-form{display:flex;flex-direction:column;gap:14px}
#gate-pw{font-family:'Figtree',sans-serif;font-size:16px;padding:16px 20px;border-radius:10px;border:1px solid rgba(240,237,230,.18);background:rgba(240,237,230,.04);color:#f0ede6;outline:none;transition:border-color .15s ease,background .15s ease}
#gate-pw:focus{border-color:rgba(240,237,230,.45);background:rgba(240,237,230,.07)}
#gate-pw::placeholder{color:rgba(240,237,230,.35)}
#gate-submit{font-family:'Figtree',sans-serif;font-size:16px;font-weight:500;letter-spacing:.3px;padding:16px 20px;border-radius:10px;border:none;background:#f0ede6;color:#0d2218;cursor:pointer;transition:background .15s ease,transform .1s ease}
#gate-submit:hover{background:#fff}
#gate-submit:active{transform:scale(.99)}
#gate-submit:disabled{opacity:.5;cursor:not-allowed}
.gate-err{font-family:'Figtree',sans-serif;font-size:13px;color:#ffb6b6;padding:8px 0;min-height:1.2em}
.deck-loader{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:radial-gradient(circle at 70% 20%,#214d3f 0%,#0f261f 42%,#020604 100%);color:#f0ede6;font-family:'Figtree',sans-serif;letter-spacing:.14em;text-transform:uppercase}
.deck-loader-card{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}
.deck-loader-logo{height:42px;width:auto;display:block;opacity:.92}
.deck-loader-text{font-size:11px;font-weight:700;color:rgba(240,237,230,.72)}
.deck-loader-bar{width:120px;height:1px;background:rgba(240,237,230,.16);overflow:hidden}
.deck-loader-bar::after{content:"";display:block;width:44px;height:1px;background:#b89647;animation:deckLoad 1.1s ease-in-out infinite}
@keyframes deckLoad{0%{transform:translateX(-44px)}100%{transform:translateX(120px)}}
body.gated #stage{visibility:hidden}
body.gated #prog,
body.gated #counter,
body.gated #stage-wrap,
body.gated #ui,
body.gated .hint,
body.gated .dlbtn{visibility:hidden}
body:not(.stage-sized):not(.gated) #stage-wrap,
body:not(.stage-sized):not(.gated) #ui,
body:not(.stage-sized):not(.gated) .hint,
body:not(.stage-sized):not(.gated) .dlbtn{visibility:hidden}

/* === Gate: mobile/tablet responsive === */
@media (max-width:768px){
  #gate{padding:24px}
  .gate-card{width:100%;max-width:480px;gap:26px;padding:0}
  .gate-logo{margin-bottom:18px}
  .gate-logo-img{height:54px}
  .gate-title{font-size:42px}
  .gate-sub{font-size:16px}
  #gate-pw{font-size:17px;padding:18px 22px;padding-right:62px}
  #gate-submit{font-size:17px;padding:18px 22px}
  .gate-pw-toggle{padding:12px 16px}
  .gate-pw-toggle svg{width:24px;height:24px}
}
@media (max-width:420px){
  #gate{padding:18px}
  .gate-title{font-size:34px}
  .gate-logo-img{height:46px}
}

/* === Mobile/tablet warning overlay (post-login) === */
#mwo{position:fixed;inset:0;background:#1a5045;z-index:9998;display:flex;align-items:center;justify-content:center;padding:24px;font-family:'Figtree',sans-serif;color:#f0ede6;overflow-y:auto}
#mwo[hidden]{display:none}
.mwo-card{width:100%;max-width:520px;display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.mwo-logo{height:56px;width:auto;margin-bottom:6px}
.mwo-title{font-family:'Fraunces',serif;font-weight:600;font-size:44px;line-height:1.05;color:#f0ede6;letter-spacing:-.3px}
.mwo-sub{font-size:16px;line-height:1.55;color:rgba(240,237,230,.72);margin:0}
.mwo-dl{display:inline-flex;align-items:center;gap:10px;background:#f0ede6;color:#0d2218;padding:16px 22px;border-radius:10px;text-decoration:none;font-size:15px;font-weight:500;letter-spacing:.3px;transition:background .15s ease}
.mwo-dl:hover{background:#fff}
.mwo-dl .eb{letter-spacing:1.8px;font-size:12px}
.mwo-proceed{background:transparent;border:0;color:rgba(240,237,230,.55);font-family:'Figtree',sans-serif;font-size:14px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:6px 0;margin-top:4px;transition:color .15s ease}
.mwo-proceed:hover{color:#f0ede6}
@media (max-width:420px){
  .mwo-title{font-size:34px}
  .mwo-sub{font-size:15px}
  .mwo-logo{height:48px}
}

/* STAGE / FRAME */
html,body{width:100%;height:100%;overflow:hidden;font-family:'Figtree',sans-serif;background:#060c07;display:flex;align-items:center;justify-content:center}
#stage{display:flex;align-items:center;gap:0;position:relative}
#dw{position:relative;flex-shrink:0}
#deck{width:1280px;height:720px;position:absolute;top:0;left:0;transform-origin:top left;overflow:hidden;border-radius:5px;box-shadow:0 24px 80px rgba(0,0,0,.75),0 0 0 1px rgba(255,255,255,.06)}

/* NAV ARROWS */
.narr{width:48px;height:48px;border-radius:50%;border:1.5px solid rgba(13,34,24,.12);background:#fff;color:#1a5045;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease,opacity .25s ease;flex-shrink:0;z-index:10;position:relative}
.narr:hover{background:#f0ede6;color:#0d2218;border-color:rgba(13,34,24,.25)}
.pbgrp{position:relative;flex-shrink:0;margin-right:-24px;z-index:12;align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center}
#nb{margin-left:-24px}
.totop{position:absolute;left:calc(50% - 18px);top:calc(50% + 30px);display:flex;gap:10px;align-items:center;opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:11}
.totop.on{opacity:1;pointer-events:auto}
.totoplbl{background:rgba(13,34,24,.82);color:#f0ede6;font-family:'Figtree',sans-serif;font-size:15px;letter-spacing:.4px;padding:8px 16px;border-radius:6px;white-space:nowrap}
.totopicn{width:36px;height:36px;border-radius:50%;background:#fff;border:1.5px solid rgba(13,34,24,.12);color:#1a5045;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;padding:0}
.totopicn:hover{background:#f0ede6;color:#0d2218;border-color:rgba(13,34,24,.28)}
.dlbtn{position:fixed;right:0;top:110px;background:#fff;color:#1a5045;padding:22px 12px;border-top-left-radius:10px;border-bottom-left-radius:10px;display:flex;flex-direction:column;align-items:center;gap:9px;text-decoration:none;z-index:100;transition:background .2s ease,padding-right .2s ease,color .2s ease}
.dlbtn:hover{background:#f0ede6;color:#0d2218;padding-right:16px}
.dlbtn-txt{writing-mode:vertical-rl;font-size:11px;letter-spacing:2px}
.dlbtn svg{transform:rotate(90deg)}
.deck-switch{position:fixed;top:18px;left:18px;z-index:120;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;padding:0 14px;border:1px solid rgba(244,240,230,.26);background:rgba(20,40,33,.72);color:#f0ede6;text-decoration:none;font-size:10px;letter-spacing:1.8px;border-radius:999px;backdrop-filter:blur(8px);transition:background .16s,border-color .16s,color .16s}
.deck-switch:hover{background:#f0ede6;border-color:#f0ede6;color:#1a5045}
.narr.hide{opacity:0;pointer-events:none}
.narr::after{content:attr(data-label);position:absolute;top:50%;transform:translateY(-50%);background:rgba(13,34,24,.82);color:#f0ede6;font-family:'Figtree',sans-serif;font-size:17px;letter-spacing:.6px;padding:10px 20px;border-radius:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s ease}
#pb::after{left:calc(100% + 10px)}
#nb::after{right:calc(100% + 10px)}
.narr:hover::after{opacity:1}
.narr[data-label='']::after{display:none}

/* NAV DOTS / COUNTER */
#deckui{position:absolute;bottom:0;left:0;right:0;z-index:999;display:flex;align-items:center;justify-content:center;padding-bottom:14px;pointer-events:none}
#nav{display:flex;gap:6px;align-items:center;background:rgba(13,34,24,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;padding:7px 13px;border:1px solid rgba(13,34,24,.07)}
.ndot{width:6px;height:6px;border-radius:50%;background:rgba(13,34,24,.28);cursor:pointer;border:none;transition:all .3s ease;pointer-events:all;position:relative}
.ndot.on{background:#fff;box-shadow:0 0 0 1.5px #fff}
.ndot::before{content:attr(data-label);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%);background:rgba(13,34,24,.82);color:#f0ede6;font-family:'Figtree',sans-serif;font-size:12px;letter-spacing:.6px;padding:7px 14px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s ease}
.ndot:hover::before{opacity:1}
.ndot[data-label='']::before{display:none}
#ctr{font-family:'Figtree',sans-serif;font-size:9px;letter-spacing:2px;color:rgba(255,255,255,.22);position:absolute;right:20px;bottom:15px}

/* Pilot-style outer presentation frame */
#stage-wrap{position:fixed;inset:0;display:flex;align-items:center;justify-content:center}
#stage{position:relative;width:1280px;height:720px;flex:0 0 1280px;transform-origin:center center;box-shadow:0 40px 120px rgba(0,0,0,.55);border-radius:4px;overflow:hidden;background:#f0ede6;display:block}
#dw{position:absolute;inset:0;width:1280px;height:720px;flex-shrink:0}
#deck{width:1280px;height:720px;position:absolute;top:0;left:0;transform-origin:top left;overflow:hidden;border-radius:0;box-shadow:none}
#deckui{display:none}
#ui{position:fixed;left:0;right:0;bottom:20px;display:flex;align-items:center;justify-content:center;gap:20px;z-index:50}
.nav{width:40px;height:40px;border-radius:50%;border:1px solid rgba(244,240,230,.3);background:rgba(20,40,33,.6);color:#f0ede6;font-family:'Figtree',sans-serif;font-size:17px;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(6px);transition:.2s}
.nav:hover{background:#b89647;color:#1a5045;border-color:#b89647}
#dots{display:flex;gap:9px}
.dot-nav{width:8px;height:8px;border-radius:50%;background:rgba(244,240,230,.28);cursor:pointer;transition:.2s;position:relative}
.dot-nav::after{content:attr(data-tip);position:absolute;left:50%;bottom:22px;transform:translateX(-50%) translateY(6px);background:#fff;color:#1a5045;font-family:'Figtree',sans-serif;font-size:13px;font-weight:600;white-space:nowrap;padding:8px 13px;border-radius:7px;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;box-shadow:0 8px 22px rgba(0,0,0,.32)}
.dot-nav:hover::after{opacity:1;transform:translateX(-50%) translateY(0)}
.dot-nav.on{background:#b89647;transform:scale(1.4)}
#counter{position:fixed;top:22px;right:28px;z-index:50;font-family:'Figtree',sans-serif;font-size:11px;letter-spacing:.2em;color:rgba(244,240,230,.72);font-weight:600}
#prog{position:fixed;top:0;left:0;height:3px;width:100vw;background:#b89647;z-index:60;transform:scaleX(0);transform-origin:left center;transition:transform .4s ease}
.hint{position:fixed;bottom:22px;left:26px;font-family:'Figtree',sans-serif;font-size:10px;letter-spacing:.16em;color:rgba(244,240,230,.4);z-index:50;text-transform:uppercase}

/* SLIDE FRAMES */
.slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .6s cubic-bezier(.4,0,.2,1)}
.slide.on{opacity:1;pointer-events:all}
.si{width:100%;height:100%;display:flex;flex-direction:column;padding:34px 48px 28px;position:relative}
.lt{background:#f0ede6;color:#0d2218}
.xdk{background:#f0ede6;color:#0d2218}
.dkg{background:#f0ede6;color:#0d2218}

/* ENTRY ANIMATIONS */
.a{opacity:0;transform:translateY(13px);transition:opacity .5s ease,transform .5s ease}
.a.in{opacity:1;transform:none}
.al{opacity:0;transform:translateX(-13px);transition:opacity .5s ease,transform .5s ease}
.al.in{opacity:1;transform:none}
.ar{opacity:0;transform:translateX(13px);transition:opacity .5s ease,transform .5s ease}
.ar.in{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.22s}.d3{transition-delay:.36s}
.d4{transition-delay:.5s}.d5{transition-delay:.64s}.d6{transition-delay:.8s}

/* TYPOGRAPHY BASE — three core classes */
.hd{font-family:'Fraunces',serif;font-weight:600}
.eb{font-family:'Figtree',sans-serif;font-weight:500;text-transform:uppercase;letter-spacing:1.5px}
.bd{font-family:'Figtree',sans-serif;line-height:1.6;letter-spacing:.18px}
.bd-dk{font-weight:300;color:#fff;letter-spacing:.25px}

/* SLIDE LABEL */
.sl{font-size:11px;letter-spacing:3px;margin-bottom:14px;flex-shrink:0}
.sl-d{color:rgba(13,34,24,.36)}
.sl-l{color:rgba(13,34,24,.36)}
.gold{color:#d6b65c}

/* BAND (green band at bottom for light slides) */
.band{background:#1a5045;margin:0 -48px -28px;padding:22px 48px;flex-shrink:0;margin-top:auto}
#s2 .band{padding:32px 48px;display:flex;flex-direction:column;justify-content:center}
.band .gold{color:#e9c45e}

/* S4 PRODUCT ARC — investor adaptation of LOI product arc */
.product-arc-cosmos{background:radial-gradient(88% 95% at 58% 48%,#1e5a48 0%,#173e32 46%,#0b201a 100%);color:#f4f0e6;overflow:hidden}
.arc-field{position:absolute;inset:0;opacity:.78;background:
  radial-gradient(circle at 66% 24%,rgba(201,162,75,.15),transparent 12%),
  radial-gradient(circle at 82% 34%,rgba(191,224,205,.10),transparent 9%),
  radial-gradient(circle at 34% 72%,rgba(111,174,147,.10),transparent 12%),
  radial-gradient(circle at 18% 20%,rgba(255,255,255,.08) 0 1px,transparent 2px),
  radial-gradient(circle at 26% 44%,rgba(255,255,255,.08) 0 1px,transparent 2px),
  radial-gradient(circle at 46% 28%,rgba(255,255,255,.08) 0 1px,transparent 2px),
  radial-gradient(circle at 74% 62%,rgba(255,255,255,.08) 0 1px,transparent 2px),
  radial-gradient(circle at 90% 18%,rgba(255,255,255,.08) 0 1px,transparent 2px)}
.arc-pad{position:relative;z-index:2;width:100%;height:100%;padding:48px 76px 44px;display:flex;flex-direction:column}
.product-arc-cosmos .sl-l{color:rgba(244,240,230,.48)}
.arc-h{font-size:36px;line-height:1.06;color:#f4f0e6;max-width:980px;font-weight:500;margin:0}
.arc-lede{font-size:14px;line-height:1.45;color:#c6d0c8;max-width:930px;margin:12px 0 0}
.cosmos-grid{display:grid;grid-template-columns:350px 1fr;gap:28px;align-items:center;margin-top:17px;min-height:0;flex:1}
.arc-system-label{font-size:25px;line-height:1.05;font-weight:500;color:#d6b65c;margin-bottom:15px}
.arc-thread-list{display:flex;flex-direction:column;gap:10px}
.arc-thread-list div{position:relative;padding-left:22px}
.arc-thread-list div::before{content:"";position:absolute;left:0;top:3px;width:7px;height:7px;border-radius:50%;background:#d6b65c;box-shadow:0 0 0 4px rgba(214,182,92,.08)}
.arc-thread-list div:not(:last-child)::after{content:"";position:absolute;left:3px;top:15px;bottom:-9px;border-left:1px solid rgba(214,182,92,.48)}
.arc-thread-list b{display:block;font-size:11.5px;line-height:1.15;letter-spacing:.16em;color:#f4f0e6}
.arc-thread-list p{font-size:12.8px;line-height:1.34;color:#b9c5bb;margin-top:3px}
.arc-map{min-height:342px;position:relative}
.arc-map svg{width:100%;height:auto;display:block;overflow:visible}
.arc-drift{animation:arc-dash 34s linear infinite;will-change:stroke-dashoffset,opacity}
.arc-drift-purple{animation-duration:42s;animation-direction:reverse}
.arc-drift-green{animation-duration:50s}
.electron-shell{fill:none;stroke-width:1.25;stroke-dasharray:2.5 7;animation:arc-dash 28s linear infinite,arc-shell-breathe 6.5s ease-in-out infinite;will-change:stroke-dashoffset,opacity}
.shell-v1{stroke:rgba(111,174,147,.52)}
.shell-v2{stroke:rgba(141,138,196,.5);animation-duration:36s,7.5s;animation-direction:reverse,normal}
.shell-v3{stroke:rgba(201,162,75,.44);animation-duration:48s,8.5s}
.nucleus-core{animation:arc-core-pulse 7s ease-in-out infinite;transform-origin:190px 210px;will-change:opacity}
.arc-stars circle{animation:arc-twinkle 5.2s ease-in-out infinite;will-change:opacity}
.arc-stars circle:nth-child(2n){animation-duration:6.4s;animation-delay:-1.6s}
.arc-stars circle:nth-child(3n){animation-duration:7.2s;animation-delay:-2.8s}
@keyframes arc-dash{to{stroke-dashoffset:-90}}
@keyframes arc-shell-breathe{0%,100%{opacity:1}50%{opacity:.58}}
@keyframes arc-core-pulse{0%,100%{opacity:1}50%{opacity:.86}}
@keyframes arc-twinkle{0%,100%{opacity:.75}50%{opacity:.28}}
@media print{#sarc .arc-drift,#sarc .electron-shell,#sarc .nucleus-core,#sarc .arc-stars circle{animation:none!important}}
.nucleus-core text{font-family:'Figtree',sans-serif;text-transform:uppercase;font-weight:800}
.nucleus-label{font-size:12.2px;letter-spacing:.08em;fill:#7a551f;text-anchor:middle;stroke:rgba(247,223,145,.46);stroke-width:.5px;paint-order:stroke;stroke-linejoin:round}
.layer-callout text{font-family:'Figtree',sans-serif;font-size:10.5px;fill:#cdd6cd}
.layer-callout .layer-title{font-size:12px;letter-spacing:.09em;text-transform:uppercase;font-weight:600}
.layer-callout .callout-copy{font-family:'Figtree',sans-serif;font-size:10.8px;line-height:1.34;color:#cdd6cd;margin:0}
.layer-callout.core .layer-title{fill:#e58a7e}
.layer-callout.fanout .layer-title{fill:#b5a9ff}
.layer-callout.intel .layer-title{fill:#f0d18a}
.practice-rail{position:relative;display:grid;grid-template-columns:repeat(7,1fr);gap:14px;margin-top:-10px;padding-top:42px}
.practice-rail::after{content:"";position:absolute;left:42.86%;top:20px;height:58px;border-left:1px solid rgba(244,240,230,.26);z-index:0}
.rail-label{position:absolute;top:0;font-size:11px;letter-spacing:.26em;font-weight:600;color:#cdd6cd;white-space:nowrap}
.rail-label.launch{left:0}
.rail-label.adjacent{left:43.8%}
.rail-item{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px}
.rail-item::before{content:"";position:absolute;top:17px;left:-50%;width:100%;height:2px;background:rgba(244,240,230,.35);z-index:-1}
.rail-item:first-of-type::before{display:none}
.rail-item i{width:34px;height:34px;border-radius:50%;border:2px solid rgba(244,240,230,.45);background:rgba(8,31,24,.45);box-shadow:0 0 0 8px rgba(111,174,147,.07)}
.rail-item.now i{background:#72c3a0;border-color:rgba(114,195,160,.85)}
.rail-item b{font-size:12px;line-height:1.1;letter-spacing:.16em;color:#f4f0e6;margin-top:6px}
.rail-item small{font-size:10px;line-height:1.25;color:rgba(244,240,230,.45)}

/* S1 COVER */
.s1{background:#07140f}
.s1::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,20,15,.98) 0%,rgba(7,20,15,.96) 42%,rgba(7,20,15,.72) 58%,rgba(7,20,15,.16) 100%);z-index:1;pointer-events:none}
.s1::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 70% 58%,rgba(26,80,69,.34),transparent 34%),linear-gradient(90deg,rgba(255,255,255,.03),transparent 38%);z-index:1;pointer-events:none}
.cvg{position:relative;height:100%;overflow:hidden}
.cvl{display:flex;flex-direction:column;justify-content:flex-start;width:100%;height:100%;padding:48px 56px 42px;z-index:2;position:relative;color:#fff}
.cvm{transform:none;margin-top:66px}
.lf{font-size:19px;font-weight:600;color:#1a5045;letter-spacing:.5px}
.ll{font-size:11.5px;font-weight:300;color:rgba(13,34,24,.45);letter-spacing:4px}
.logo{display:flex;align-items:center;gap:12px}
.logo-img{height:62px;width:auto;display:block}
.cvt{font-size:49px;line-height:1.08;color:#fff;margin:0 0 22px;max-width:730px;font-weight:500}
.cvt span{color:#fff}
.cvt .cv-title-gold{color:#d6b65c}
.cvs{font-size:12px;letter-spacing:5px;color:#fff;margin-bottom:24px}
.cvtag{font-size:16.5px;color:rgba(255,255,255,.68);font-weight:300;line-height:1.55;max-width:735px}
.cvtag strong{font-weight:700;color:rgba(255,255,255,.94)}
.cvsteps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:32px;max-width:708px}
.cvstep{min-height:92px;padding:14px 17px 15px;background:rgba(26,80,69,.36);border:1px solid rgba(132,196,174,.36);border-left:4px solid #d6b65c}
.cvstep-expand{border-left-color:#8dcdb8}
.cvstep-compound{border-left-color:#8e7cab}
.cvstep .eb{font-size:11px;letter-spacing:2.6px;color:#f4efe5;margin-bottom:10px}
.cvstep p{font-size:12.5px;line-height:1.28;color:rgba(255,255,255,.62);margin:0}
.cvf{position:absolute;left:56px;right:56px;bottom:104px;display:flex;justify-content:flex-start;align-items:flex-end}
.cvfoot-left{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.cvtags{display:flex;gap:10px;flex-wrap:wrap;transform:translateY(-82px)}
.cvtags span{display:inline-flex;border:1px solid rgba(214,182,92,.72);padding:10px 15px;font-size:11px;letter-spacing:2px;color:#d6b65c;white-space:nowrap}
.cvcontact{display:flex;align-items:center;white-space:nowrap}
.cvf .cvcontact span{font-size:11px;color:rgba(255,255,255,.82)}
.cvr{position:absolute;inset:0 0 0 47%;overflow:hidden;background:transparent;z-index:0}
.cvr canvas{transform:translateX(0);opacity:.95;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.05) 12%,rgba(0,0,0,.28) 24%,#000 40%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.05) 12%,rgba(0,0,0,.28) 24%,#000 40%)}
.cvr img{display:block;width:100%;height:100%}
#cvC{position:absolute;inset:0;width:100%;height:100%}

/* S2 PROBLEM */
.phl{font-size:28px;line-height:1.22;color:#1a5045;text-align:center;max-width:980px;margin:0 auto 22px}
.psb{font-size:15.5px;text-align:center;color:rgba(13,34,24,.55);max-width:900px;margin:0 auto 36px}
#s5 .psb{max-width:1180px;margin-bottom:14px;font-size:12.5px}
#s2 .phl{font-size:33px;max-width:1220px;margin-top:8px;margin-bottom:14px}
#s2 .psb{max-width:1180px;margin-bottom:12px}
.pcols{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;flex:1;min-height:0;margin-top:4px;margin-bottom:12px}
.pcol{display:flex;flex-direction:column;background:color-mix(in srgb,var(--pc) 9%,#f0ede6);border:1px solid color-mix(in srgb,var(--pc) 38%,transparent);border-radius:4px;overflow:hidden}
.pcol-p{--pc:#8E7CAB}
.pcol-d{--pc:#B89647}
.pcol-c{--pc:#C25B4F}
.ptag{display:inline-block;background:#1a5045;color:#f0ede6;font-size:12px;letter-spacing:1.8px;padding:6px 13px;border-radius:3px;margin-bottom:12px;align-self:flex-start;line-height:1.3}
.pcol .ptag{display:block;align-self:stretch;background:var(--pc);color:#fff;text-align:center;font-size:14px;letter-spacing:1.6px;padding:11px 14px;border-radius:0;margin:0;line-height:1.3}
.pkick{color:var(--pc);font-size:12px;letter-spacing:1px;line-height:1.35;font-weight:600;margin-top:auto;padding:12px 18px 20px}
.phead{font-size:15px;color:#1a5045;line-height:1.35;margin-bottom:12px}
.pbody{font-size:14px;color:rgba(13,34,24,.62);line-height:1.5;padding:13px 18px 0}
.bhl{font-size:22px;color:#fff;margin-bottom:8px;line-height:1.3}
.bbd{font-size:15px;line-height:1.6}
.bbd strong{color:#e9c45e;font-weight:600}

/* S3 AGENTIC INTENSIFIER */
.agh{font-size:26px;line-height:1.25;color:#1a5045;text-align:center;max-width:900px;margin:0 auto 22px}
.agcols{display:grid;grid-template-columns:1fr 1fr;gap:26px;flex-shrink:0;margin-bottom:18px;align-items:start}
.agcol{padding:20px 22px;border-radius:8px}
.agcol-today{background:rgba(13,34,24,.03);border:1px solid rgba(13,34,24,.1)}
.agcol-tmrw{background:rgba(180,40,40,.04);border:1px solid rgba(180,40,40,.22)}
.agcol-lbl{font-size:9.5px;letter-spacing:2px;margin-bottom:10px}
.agcol-today .agcol-lbl{color:rgba(13,34,24,.5)}
.agcol-tmrw .agcol-lbl{color:rgba(180,40,40,.78)}
.agcol-body{font-size:13px;color:rgba(13,34,24,.65);line-height:1.65}
.agcanvas-wrap{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;margin-bottom:12px}
#agC{width:100%;max-width:560px;height:160px;display:block}
.agband{background:#1a5045;margin:0 -48px -28px;padding:18px 48px;flex-shrink:0;border-left:3px solid #4ffe9a}
.agband-body{font-size:13px;line-height:1.55}

/* S3 SOLUTION */
.solhl{font-size:46px;color:#1a5045;text-align:center;margin-bottom:18px;line-height:1.05}
.solhl-sub{text-align:center;font-size:22px;letter-spacing:2.5px;color:#1a5045;margin-bottom:12px}
.solsub-cols{display:grid;grid-template-columns:1fr 1fr;gap:48px;max-width:1200px;margin:0 auto 14px;align-items:start}
.solsub{font-size:13px;color:rgba(13,34,24,.62);text-align:left;line-height:1.6;margin:0}
.solsub strong{color:#0d2218;font-weight:600}
.solkg{display:block;font-size:9.5px;color:#1a5045;text-align:center;padding:8px 14px;margin:0 auto 12px;max-width:960px;background:rgba(26,74,50,.07);border-radius:4px}
.solwins{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.solwin{display:flex;flex-direction:column;gap:6px}
.solwin-tag{font-size:10.5px;color:#4ffe9a}
.solwin-lbl{font-size:15px;line-height:1.4}

/* S5 ARCHITECTURE */
.archhl{font-size:20px;color:#1a5045;text-align:center;max-width:820px;margin:0 auto 14px;line-height:1.35;font-weight:400}
.arch-stats{display:flex;justify-content:space-between;padding:0 12px;flex-shrink:0;margin-top:6px;gap:24px}
.arch-stat{font-size:9.5px;letter-spacing:1.2px;color:rgba(13,34,24,.5);text-transform:none;font-weight:400;line-height:1.5}

/* S3 SOLUTION — query routing canvas mockup */
.qr-wrap{width:100%;max-width:1180px;margin:-56px auto 0;display:flex;flex-direction:column;position:relative}
.qr-canvas{display:block;width:100%;background:transparent}
.qr-still{display:none}
.qr-mobile-prompt{display:none}

/* S4 INCIDENTAL BENEFITS — 2×2 panel grid */
.ibg{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;flex:1;min-height:0;margin-top:-10px}
.ibp{padding:20px 24px;border-left:3px solid;border-radius:0 6px 6px 0;display:flex;flex-direction:column}
.ibp-green{border-color:rgba(40,140,90,.65);background:rgba(40,140,90,.05)}
.ibp-gold{border-color:rgba(200,168,75,.7);background:rgba(200,168,75,.06)}
.ibp-purple{border-color:rgba(136,120,184,.7);background:rgba(136,120,184,.06)}
.ibp-rose{border-color:rgba(192,120,144,.7);background:rgba(192,120,144,.05)}
.ibp-lbl{font-size:10.5px;letter-spacing:2px;margin-bottom:10px}
.ibp-green .ibp-lbl{color:rgba(30,110,70,.9)}
.ibp-gold .ibp-lbl{color:rgba(160,130,40,.95)}
.ibp-purple .ibp-lbl{color:rgba(95,80,160,.9)}
.ibp-rose .ibp-lbl{color:rgba(160,75,105,.9)}
.ibp-body{font-size:13px;line-height:1.55;color:rgba(13,34,24,.7)}
.ibp-body .eb{display:block;margin-top:10px;font-size:11px}
.ibp-green .ibp-body .eb{color:rgba(30,110,70,.95)}
.ibp-gold .ibp-body .eb{color:rgba(160,130,40,.95)}
.ibp-purple .ibp-body .eb{color:rgba(95,80,160,.9)}
.ibp-rose .ibp-body .eb{color:rgba(160,75,105,.95)}

/* S4 VALUE-ADDED UPSIDES — radial donut 2×2 layout */
.vad{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:0;flex:1;min-height:0;position:relative}
.vad-card{padding:18px 26px;display:flex;flex-direction:column;overflow:hidden;position:relative}
.vad-tl{grid-area:1/1}
.vad-tr{grid-area:1/2;align-items:flex-end}
.vad-bl{grid-area:2/1}
.vad-br{grid-area:2/2;align-items:flex-end}
.vad-tl,.vad-bl{border-left:4px solid}
.vad-tr,.vad-br{border-right:4px solid}
.vad-green{background:#E2E7DA;border-color:#3A6B4A;--vad-accent:#3A6B4A}
.vad-gold{background:#EFE5CA;border-color:#B89647;--vad-accent:#B89647}
.vad-purple{background:#E2D9E7;border-color:#8E7CAB;--vad-accent:#8E7CAB}
.vad-coral{background:#EED8D2;border-color:#C25B4F;--vad-accent:#C25B4F}
.vad-content{max-width:420px;display:flex;flex-direction:column}
.vad-tl .vad-content,.vad-tr .vad-content{max-width:none}
.vad-tl .vad-body,.vad-tl .vad-stat{max-width:420px}
.vad-tl .vad-stat{font-size:28px;line-height:1.1}
.vad-bl .vad-stat{font-size:32px;line-height:1.08}
.vad-tr .vad-body,.vad-tr .vad-stat{max-width:420px;align-self:flex-end}
.vad-tr .vad-stat{font-size:22px;line-height:1.15}
.vad-tr .vad-content,.vad-br .vad-content{text-align:right}
.vad-header{font-size:10.5px;letter-spacing:1.8px;color:var(--vad-accent);margin-bottom:10px;line-height:1.5}
.vad-stat{font-size:46px;color:var(--vad-accent);letter-spacing:-.02em;line-height:1;margin-bottom:8px}
.vad-body{font-size:12px;line-height:1.55;color:var(--vad-accent)}
.vad-donut{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:270px;aspect-ratio:1;pointer-events:none;z-index:2}
.vad-donut svg{width:100%;height:100%;display:block}

/* S5 PARALLEL BET — equation block + 3-callout strip */
/* 4-column grid: attackers | + | Omnigraph | results. Rows size to content and the
   left/right columns share them via subgrid, so each attacker stays aligned with its
   result row and the tallest row (Frontier) gets the space it needs. */
/* THE HAND — scoring grid (s5 "Who could win").
   Four cards are the columns; attackers are the rows. A dashed "gate" before the
   Cross-firm column splits table-stakes (conceded) from the two decisive cards.
   Card colours reuse the deck's vad palette (green/gold/coral/purple). */
.hand{
  --c-ont:#3A6B4A; --c-arch:#B89647; --c-cross:#C25B4F; --c-inc:#8E7CAB;
  --tick:#1a5045; --lack:#9e4632; --hline:rgba(13,34,24,.1); --hmute:rgba(13,34,24,.42); --vline:rgba(13,34,24,.16);
  margin-top:18px;display:grid;
  /* cols: attacker | ontology | architecture (wider — long label) | cross-firm | incentive | hand | takeaway */
  grid-template-columns:210px 92px 106px 120px 86px 1fr;
  grid-template-rows:44px repeat(3,minmax(94px,1fr)) 98px;
  border-top:1px solid var(--hline);flex:1;min-height:0
}
/* column heads — .eb label + .bd gloss compose the typography */
.h-ch{padding:9px 2px 11px;border-bottom:1px solid var(--hline);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--hmute)}
.h-ch .h-lbl{font-size:13px;font-weight:600;letter-spacing:.2px;line-height:1.2;text-align:center}
.h-ch.c-ont{color:var(--c-ont)}.h-ch.c-arch{color:var(--c-arch)}
.h-ch.c-cross{color:var(--c-cross)}.h-ch.c-inc{color:var(--c-inc)}
.h-ch.c-fg{color:#1a5045}
.h-ch.take-h{align-items:flex-start;padding-left:42px;color:#1a5045}
/* the gate: table-stakes | decisive. Caption is a coral pill over the two decisive columns. */
.h-gate{}
.h-ch.h-gate{position:relative}
/* THE KICKERS — full-width banner spanning the two decisive columns (cross-firm + incentive), flush above the header */
.h-ch.h-gate .h-gate-cap{position:absolute;left:-1px;top:-22px;width:206px;background:var(--c-cross);color:#fff;padding:6px 0;border-radius:4px 4px 0 0;font-size:9px;letter-spacing:1.6px;text-align:center;white-space:nowrap}
.h-row{display:contents}
/* every cell vertically centres its content */
.h-cell{border-bottom:1px solid var(--hline);padding:8px 0;display:flex;align-items:center;justify-content:center}
.h-cell.h-gate{}
.h-atk{flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;padding-left:24px;padding-right:8px}
.h-atk .name{font-size:21px;line-height:1.08;color:#1a5045}
.h-atk .firms{font-size:9px;letter-spacing:1.3px;color:var(--hmute)}
.h-card{flex-direction:column;align-items:center;justify-content:center;gap:7px}
.h-qual{font-size:9.8px;line-height:1.35;letter-spacing:.1px;color:var(--hmute);text-align:center;max-width:88px}
/* mark icons — uniform-stroke SVG glyphs */
.mark{width:23px;height:23px;flex:none}
.mark svg{width:100%;height:100%;display:block}
.mk-fill{fill:var(--tick)}
.mk-line{fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.mark.yes .mk-line{stroke:#fff}
.mark.no .mk-ring{fill:none;stroke:var(--lack);stroke-width:1.7}
.mark.no .mk-line{stroke:var(--lack);stroke-width:2}
.mark.half .mk-ring{fill:none;stroke:var(--tick);stroke-width:1.7}
.mark.half .mk-half{fill:var(--tick)}
.h-score{flex-direction:column;align-items:center;justify-content:center}
.h-score .frac{font-size:19px;font-weight:600;letter-spacing:.2px;color:#1a5045}
.h-take{align-items:center;justify-content:flex-start;padding-left:14px;font-size:13px;line-height:1.46;color:rgba(13,34,24,.78)}
.h-take strong{color:#1a5045;font-weight:600}
.h-take .eq{color:var(--hmute);font-size:17px;line-height:1;width:18px;margin-right:10px;flex:none;text-align:left}
/* Matrix row — dark green band, like .band. No captions, so centre vertically. */
.h-row.matrix .h-cell{background:#1a5045;border-bottom:none;padding:28px 0;justify-content:center}
.h-row.matrix .h-cell:first-child{padding-left:24px}
.h-row.matrix .h-cell:last-child{padding-right:22px}
.h-row.matrix .h-atk .name{color:#f3efe4}
.h-row.matrix .h-atk .firms{color:#9fb0a0}
.h-row.matrix .mark.yes .mk-fill{fill:#d8b35e}
.h-row.matrix .mark.yes .mk-line{stroke:#fff}
.h-row.matrix .h-score .frac{color:#d8b35e}
.h-row.matrix .h-score .note{color:#9fb0a0}
.h-row.matrix .h-take{color:#fff;justify-content:flex-start;align-items:center;padding-left:14px}
.h-row.matrix .h-take strong{color:#fff}
.h-row.matrix .h-take .eq{color:#d8b35e}
.fpfoot{font-size:12.5px;line-height:1.55;text-align:center;color:rgba(13,34,24,.55);max-width:1120px;margin:12px auto 0}
.pbc{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;flex-shrink:0}

/* S6 OMNIGRAPH */
.shl{font-size:26px;color:#1a5045;text-align:center;max-width:940px;margin:0 auto 18px;line-height:1.28}
.shl em{font-style:normal;color:#1a5045}
.ssb{font-size:15.5px;color:rgba(13,34,24,.55);text-align:center;max-width:820px;margin:0 auto 16px}
.ogcols{display:grid;grid-template-columns:1fr 52px 1fr;flex-shrink:0;align-items:start;margin-bottom:10px}
.oghdr{background:#1a5045;color:#f0ede6;font-size:11.5px;letter-spacing:2px;text-align:center;padding:8px 12px;border-radius:4px;margin-bottom:12px}
.ogbdy{font-size:14.5px;line-height:1.6;color:rgba(13,34,24,.65);padding:0 18px}
.ogplus{display:flex;align-items:center;justify-content:center;font-size:26px;color:rgba(13,34,24,.16);padding-top:16px}
.sbot{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.sbt{font-size:16px;color:#fff;line-height:1.3;margin-bottom:5px}
.sbs{font-size:13.5px;line-height:1.55}

/* S7 THREE REQUIREMENTS */
.reqhl{font-size:22px;color:#1a5045;text-align:center;max-width:920px;margin:0 auto 22px;line-height:1.3;font-weight:400}
.req3{display:grid;grid-template-columns:repeat(3,1fr);gap:0;flex:1;min-height:0}
.reqp{display:flex;flex-direction:column;padding:24px 28px;border-right:1px solid rgba(13,34,24,.1)}
.reqp:last-child{border-right:none}
.reqn{font-size:30px;color:rgba(13,34,24,.18);margin-bottom:14px;letter-spacing:2px;line-height:1}
.reqt{font-size:24px;color:#1a5045;margin-bottom:12px;line-height:1.15}
.reqb{font-size:12.5px;color:rgba(13,34,24,.62);line-height:1.65;flex:1}
.reqfoot{font-size:17px;color:rgba(13,34,24,.62);text-align:center;padding:14px 0 0;flex-shrink:0;font-weight:400}

/* S8 DIRECTION-AGNOSTIC */
.dahl{font-size:30px;color:#1a5045;text-align:center;max-width:920px;margin:0 auto 6px;line-height:1.25}
.dasb{font-size:15.5px;color:rgba(13,34,24,.6);text-align:center;max-width:820px;margin:0 auto 22px}
.dagrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px;flex-shrink:0}
.dacard{background:rgba(255,255,255,.65);border:1px solid rgba(26,74,50,.18);border-radius:9px;padding:14px 18px;display:flex;align-items:center;gap:12px}
.dacard-lhs{font-size:11px;color:#1a5045;letter-spacing:1.4px;flex:1;font-weight:600}
.dacard-plus{font-size:18px;color:rgba(13,34,24,.22);flex-shrink:0}
.dacard-matrix{font-size:10px;color:#1a5045;background:rgba(26,74,50,.1);padding:5px 10px;border-radius:4px;flex-shrink:0;letter-spacing:1px}
.dacard-eq{font-size:16px;color:rgba(13,34,24,.22);flex-shrink:0}
.dacard-rhs{font-size:12.5px;color:rgba(13,34,24,.62);flex:1.5;line-height:1.5;font-weight:400}
.dabot{display:grid;grid-template-columns:1fr 1fr;gap:16px;flex-shrink:0;margin-top:auto}
.dabp{padding:14px 16px;border-left:3px solid;border-radius:0 4px 4px 0}
.dabp-model{border-color:rgba(40,140,90,.65);background:rgba(40,140,90,.05)}
.dabp-dir{border-color:rgba(200,168,75,.65);background:rgba(200,168,75,.05)}
.dabp-lbl{font-size:9px;letter-spacing:2px;margin-bottom:5px}
.dabp-model .dabp-lbl{color:rgba(30,110,70,.85)}
.dabp-dir .dabp-lbl{color:rgba(160,130,40,.9)}
.dabp-body{font-size:13.5px;line-height:1.6;color:rgba(13,34,24,.65)}

/* S9 TAM / BEACHHEAD */
.bhl2{font-size:21px;color:#1a5045;text-align:center;max-width:980px;margin:0 auto 16px;line-height:1.35}
.lcw{border:1px solid rgba(13,34,24,.1);border-radius:7px;overflow:hidden;margin-bottom:14px;display:grid;grid-template-columns:2fr 3fr 3fr;flex-shrink:0}
.lcg{border-right:1px solid rgba(13,34,24,.07);padding:10px 0}
.lcg:last-child{border-right:none}
.lcgl{font-size:10px;letter-spacing:2px;color:rgba(13,34,24,.4);text-align:center;padding:0 10px;margin-bottom:7px}
.lcs-row{display:flex}
.lcs{flex:1;text-align:center;padding:4px 3px}
.lcd{width:32px;height:32px;border-radius:50%;background:#e4e0d8;border:1.5px solid rgba(13,34,24,.1);margin:0 auto 6px;display:flex;align-items:center;justify-content:center;font-family:'Figtree',sans-serif;font-size:11.5px;color:rgba(13,34,24,.42);transition:all .4s ease}
.lcs.on .lcd{background:#1a5045;border-color:#1a5045;color:#f0ede6;transform:scale(1.1)}
.lcl{font-size:12px;color:rgba(13,34,24,.45);line-height:1.3}
.lcs.on .lcl{color:#1a5045;font-weight:500}
.tam3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:10px}
.tami{background:#fff;border-radius:8px;padding:14px 17px;border:1px solid rgba(13,34,24,.06)}
.tlbl{font-size:10px;color:rgba(13,34,24,.42);margin-bottom:5px}
.tamt{font-size:24px;color:#1a5045;line-height:1;margin-bottom:5px}
.tamd{font-size:13px;color:rgba(13,34,24,.58);line-height:1.45}
.tami-dk{background:#1a5045;border-color:#1a5045}
.tami-dk .tlbl{color:rgba(240,237,230,.42)}
.tami-dk .tamt{color:#4ffe9a}
.tami-dk .tamd{color:rgba(240,237,230,.6)}
.tamnote{font-size:12px;color:rgba(13,34,24,.5);text-align:center;line-height:1.55;max-width:920px;margin:4px auto 0}

/* S6 TAM & BEACHHEAD — pipeline + cards + growth band + footnote */
#s6 .phl{font-size:31px;text-align:left;max-width:1600px;margin-bottom:18px;line-height:1.18}
.tam-hl{color:#C25B4F}
.pipe{display:flex;align-items:stretch;gap:0;background:transparent;border:none;padding:10px 22px 12px;margin-bottom:14px;flex-shrink:0}
.pipe-sec{display:flex;flex-direction:column;padding:0 12px;flex:1}
.pipe-launch{flex:0 0 42%}
.pipe-divider{flex:0 0 1px;background:rgba(13,34,24,.08);margin:6px 8px 0}
.pipe-lbl{font-size:10.5px;letter-spacing:2.5px;margin-bottom:14px;text-align:center}
.pipe-launch .pipe-lbl{color:#1a5045}
.pipe-exp .pipe-lbl{color:rgba(13,34,24,.45)}
.pipe-stations{display:flex;align-items:flex-start;justify-content:space-around;position:relative;gap:8px}
.pipe-stations::before{content:'';position:absolute;top:10px;left:14px;right:14px;height:1px;background:rgba(13,34,24,.08);z-index:0}
.pipe-exp .pipe-stations::before{right:3px}
.pipe-exp .pipe-stations::after{content:'';position:absolute;top:2px;right:6px;width:16px;height:16px;border-top:1.5px solid rgba(13,34,24,.08);border-right:1.5px solid rgba(13,34,24,.08);transform:rotate(45deg);background:transparent;z-index:1}
.pipe-station{display:flex;flex-direction:column;align-items:center;position:relative;z-index:1;flex:1;text-align:center}
.pipe-dot{width:20px;height:20px;border-radius:50%;margin-bottom:10px;border:1.5px solid rgba(13,34,24,.18);background:#f0ede6}
.pipe-station.on .pipe-dot{background:#1a5045;border-color:#1a5045;box-shadow:0 0 0 4px rgba(26,74,50,.08)}
.pipe-name{font-size:11px;letter-spacing:1px;color:rgba(13,34,24,.65);line-height:1.3}
.pipe-station.on .pipe-name{color:#1a5045}
.pipe-sub{font-size:9.5px;color:rgba(13,34,24,.45);margin-top:4px;line-height:1.35}

.tcards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px;flex-shrink:0}
.tcard{padding:20px 24px 22px;border-left:3px solid;border-radius:0 6px 6px 0;display:flex;flex-direction:column}
.tcard-green{border-color:rgba(40,140,90,.65);background:rgba(40,140,90,.05)}
.tcard-gold{border-color:rgba(200,168,75,.7);background:rgba(200,168,75,.06)}
.tcard-purple{border-color:rgba(136,120,184,.7);background:rgba(136,120,184,.06)}
.tcard-tag{font-size:10px;letter-spacing:2px;margin-bottom:6px}
.tcard-green .tcard-tag{color:rgba(30,110,70,.9)}
.tcard-gold .tcard-tag{color:rgba(160,130,40,.95)}
.tcard-purple .tcard-tag{color:rgba(95,80,160,.9)}
.tcard-figure{font-size:28px;color:#0d2218;line-height:1.05;margin-bottom:4px;letter-spacing:-.01em}
.tcard-gold .tcard-figure{color:rgba(160,130,40,1)}
.tcard-purple .tcard-figure{color:rgba(95,80,160,1)}
.tcard-green .tcard-figure{color:rgba(30,110,70,1)}
.tcard-gold .tcard-body{color:rgba(160,130,40,.9)}
.tcard-gold .tcard-body strong{color:rgba(120,95,25,1)}
.tcard-purple .tcard-body{color:rgba(95,80,160,.9)}
.tcard-purple .tcard-body strong{color:rgba(70,55,130,1)}
.tcard-green .tcard-body{color:rgba(30,110,70,.9)}
.tcard-green .tcard-body strong{color:rgba(20,80,50,1)}
.tcard-sub{font-size:10px;margin-bottom:8px;letter-spacing:.5px}
.tcard-green .tcard-sub{color:rgba(30,110,70,.95)}
.tcard-gold .tcard-sub{color:rgba(160,130,40,1)}
.tcard-purple .tcard-sub{color:rgba(95,80,160,.95)}
.tcard-body{font-size:14px;line-height:1.55;color:rgba(13,34,24,.7);margin-bottom:8px}
.tcard-src{font-size:9.5px;color:rgba(13,34,24,.42);margin-top:auto;padding-top:6px;line-height:1.4}

.gband{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:14px;margin-bottom:12px;flex-shrink:0}
.gtile{display:flex;flex-direction:column;align-items:center;text-align:center;padding:14px 14px}
.gfig{font-size:22px;color:#1a5045;line-height:1;letter-spacing:-.01em;margin-bottom:4px}
.garrow{display:inline-block;font-size:15px;margin-right:2px;color:#1a5045}
.glbl{font-size:9.5px;color:rgba(13,34,24,.78);line-height:1.35;margin-bottom:3px;letter-spacing:.4px}
.gsrc{font-size:9px;color:rgba(13,34,24,.42);line-height:1.3}

.tamfoot{text-align:center;font-size:12px;color:rgba(13,34,24,.6);line-height:1.55;max-width:1500px;margin:0 auto 20px;flex-shrink:0}
.tamfoot strong{color:#0d2218;font-weight:600}
.taccent{color:#1a5045}
/* S6 TAM — fee-pool funnel bars + revenue explainer */
.tam-grid{display:grid;grid-template-columns:1.08fr 0.92fr;gap:40px;margin-bottom:10px;flex-shrink:0;align-items:start}
.tam-bars{display:flex;flex-direction:column;gap:10px}
.tam-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;border-radius:8px;padding:10px 26px}
.tam-bar-pool{background:#1a5045;color:#fff;width:100%}
.tam-bar-beach{background:#B89647;color:#22301a;width:75%}
.tam-bar-rev{background:#C25B4F;color:#fff;width:55%}
.tam-bar-lbl{font-size:10px;letter-spacing:1.5px;margin-bottom:3px;opacity:.85;line-height:1.3}
.tam-bar-fig{font-size:40px;line-height:1;letter-spacing:-.01em}
.tam-bar-pool .tam-bar-fig{font-size:52px}
.tam-bar-note{font-size:11.5px;line-height:1.4;text-align:right;max-width:250px;opacity:.92;margin:0}
.tam-rev{display:flex;flex-direction:column;gap:12px}
.tam-rev-lbl{font-size:11px;letter-spacing:1.8px;color:#1a5045}
.tam-rev-box{background:rgba(13,34,24,.04);border-left:3px solid #C25B4F;border-radius:0 6px 6px 0;padding:13px 18px}
.tam-rev-eq{font-size:14.5px;color:#0d2218;margin:0 0 8px;font-weight:600}
.tam-coral{color:#C25B4F}
.tam-rev-body{font-size:12.5px;line-height:1.5;color:rgba(13,34,24,.68);margin:0}
.tam-rev-body strong{color:#0d2218;font-weight:600}
.tam-rev-today{font-size:13.5px;line-height:1.5;color:rgba(13,34,24,.72);margin:0}
.tam-rev-today strong{color:#1a5045;font-weight:600}
.tam-rev-map{font-size:12px;line-height:1.5;color:rgba(13,34,24,.55);margin:0}
.tam-rev-map strong{color:#1a5045;font-weight:600}

/* S7 WHY NOW × THE COMPOUNDING UPSIDE — four force→revenue rows + dated-urgency clock */
#s7 .phl{font-size:30px;line-height:1.12;max-width:1040px;margin-bottom:6px}
#s7 .psb{font-size:13.5px;line-height:1.5;max-width:1160px;margin-bottom:0}
/* four accent-tinted rows: force → "becomes" → revenue */
.twrows{margin-top:12px;flex:1;min-height:0;display:flex;flex-direction:column;gap:8px}
.twrow{flex:1;display:grid;grid-template-columns:1fr 56px 1.3fr;align-items:stretch}
.twrow.r1{--c:#3A6B4A}.twrow.r2{--c:#B89647}.twrow.r3{--c:#8E7CAB}.twrow.r4{--c:#C25B4F}
.twtail{display:flex;flex-direction:column;justify-content:center;padding-right:22px}
.twlab{font-size:10.5px;font-weight:600;letter-spacing:1px;line-height:1.25;color:var(--c);margin-bottom:5px}
.twforce{font-size:12.2px;line-height:1.38;color:#4f574d}
.twforce strong{color:#1a5045;font-weight:600}
.twarrow{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--c)}
.twarrow .lbl{font-family:'Figtree',sans-serif;font-size:9px;letter-spacing:.4px;color:rgba(13,34,24,.4)}
.twarrow svg{width:38px;height:14px}
.twarrow svg path,.twarrow svg polyline{stroke:var(--c);stroke-width:2;fill:none}
.twrev{display:flex;flex-direction:column;justify-content:center;padding:9px 20px;background:color-mix(in srgb,var(--c) 8%,#f0ede6);border-left:3px solid var(--c);border-radius:0 10px 10px 0}
.twhead{display:flex;align-items:baseline;gap:11px;margin-bottom:5px;flex-wrap:wrap}
.twmetric{font-size:17px;line-height:1.15;letter-spacing:-.2px;color:var(--c)}
.twname{font-size:12.5px;font-weight:600;color:#1a5045}
.twbody{font-size:12.2px;line-height:1.36;color:var(--c)}
.twbody strong{color:var(--c);font-weight:600}
/* dated-urgency clock — rounded dark-green band, centred */
.wnm-clock{flex-shrink:0;margin-top:13px;background:#1a5045;border-radius:9px;padding:12px 22px;text-align:center;font-size:12.5px;line-height:1.5;color:#cdd3c6;letter-spacing:.2px}
.wnm-clock .k{color:#e9c45e;font-weight:600;letter-spacing:.3px}
.wnm-clock strong{color:#f3efe4;font-weight:600}
.wnm-clock .dot{color:rgba(243,239,228,.32);margin:0 6px}

/* S4 COMPETITIVE LANDSCAPE — sprawl symptoms → substrate ← platform tenants */
#scl .phl{text-align:center;max-width:1040px;margin:0 auto 7px;font-size:30px;line-height:1.12}
#scl .psb{text-align:center;max-width:1190px;margin:0 auto;font-size:13px;line-height:1.42}
#scl .cl-sym{color:#C25B4F;font-weight:600}
#scl .cl-ten{color:#8E7CAB;font-weight:600}
.clfield{--cl-terra:#C25B4F;--cl-slate:#8E7CAB;--cl-green:#1a5045;--cl-gold:#e9c45e;--cl-cloud:#8a8473;--cl-line:#b3bba8;
  margin-top:14px;flex:1;min-height:0;display:grid;grid-template-columns:1.02fr 130px 1.1fr 130px 1fr;align-items:stretch}
.clcol{display:flex;flex-direction:column;min-height:0}
.clglabel{font-size:12.5px;letter-spacing:1.1px;line-height:1.3}
.clsprawl .clglabel{color:var(--cl-terra)}
.clplatforms .clglabel{color:var(--cl-slate);text-align:right}
.clgsub{font-size:10px;line-height:1.3;letter-spacing:.2px;color:rgba(13,34,24,.45);margin-top:3px}
.clplatforms .clgsub{text-align:right}
/* LEFT — sprawl word cloud (size variation only) */
.clcloud{position:relative;flex:1;width:100%;margin-top:10px;overflow:visible}
.clw{position:absolute;white-space:nowrap;line-height:1;transform:translate(-50%,-50%);color:var(--cl-cloud);will-change:transform}
/* word-cloud: very subtle, very slow, multi-directional drift — a faint sense of chaos */
@keyframes clf1{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,-50%) translate(4px,-3px)}}
@keyframes clf2{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,-50%) translate(-4px,-4px)}}
@keyframes clf3{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,-50%) translate(4px,3px)}}
@keyframes clf4{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,-50%) translate(-3px,4px)}}
@keyframes clf5{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,-50%) translate(3px,2px)}}
@keyframes clf6{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,-50%) translate(-4px,2px)}}
.clcloud .clw:nth-child(1){animation:clf1 9s ease-in-out -2s infinite}
.clcloud .clw:nth-child(2){animation:clf3 11.5s ease-in-out -5s infinite}
.clcloud .clw:nth-child(3){animation:clf2 8.5s ease-in-out -1s infinite}
.clcloud .clw:nth-child(4){animation:clf5 12.5s ease-in-out -7s infinite}
.clcloud .clw:nth-child(5){animation:clf4 10s ease-in-out -3s infinite}
.clcloud .clw:nth-child(6){animation:clf6 9.5s ease-in-out -6s infinite}
.clcloud .clw:nth-child(7){animation:clf2 13s ease-in-out -4s infinite}
.clcloud .clw:nth-child(8){animation:clf4 8.8s ease-in-out -8s infinite}
.clcloud .clw:nth-child(9){animation:clf1 11s ease-in-out -1.5s infinite}
.clcloud .clw:nth-child(10){animation:clf5 9.8s ease-in-out -5.5s infinite}
.clcloud .clw:nth-child(11){animation:clf3 12s ease-in-out -2.5s infinite}
.clcloud .clw:nth-child(12){animation:clf6 10.8s ease-in-out -6.5s infinite}
.clcloud .clw:nth-child(13){animation:clf2 9.2s ease-in-out -3.5s infinite}
.clcloud .clw:nth-child(14){animation:clf4 11.8s ease-in-out -7.5s infinite}
@media print{.clw{animation:none!important}}
/* funnel gutters: curves merging into an arrowhead */
.clgutter{position:relative}
.clcurves{position:absolute;inset:0;width:100%;height:100%}
.clcurves path{fill:none;stroke:var(--cl-line);stroke-width:1.5}
.clahead{position:absolute;top:50%;transform:translateY(-50%);width:0;height:0}
.clahead.r{right:1px;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:12px solid var(--cl-line)}
.clahead.l{left:1px;border-top:8px solid transparent;border-bottom:8px solid transparent;border-right:12px solid var(--cl-line)}
.clgverb{position:absolute;top:50%;transform:translateY(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:rgba(240,237,230,.9);border-radius:4px;padding:6px 12px;min-width:100px;white-space:nowrap}
.clgverb .v{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;line-height:1.15}
.clgverb .c{display:block;font-size:9px;letter-spacing:.2px;color:rgba(13,34,24,.45);margin-top:1px}
.clgutter.left .clgverb{right:15px;left:auto}
.clgutter.right .clgverb{left:15px;right:auto}
.clgutter.left .clgverb .v{color:var(--cl-terra)}
.clgutter.right .clgverb .v{color:var(--cl-slate)}
/* CENTRE — the substrate monolith */
.clsubstrate{background:var(--cl-green);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px 22px;box-shadow:0 18px 44px rgba(14,31,25,.4)}
.clnodes svg{width:54px;height:126px;margin-bottom:10px}
.cllab{font-size:10px;letter-spacing:3.2px;color:#93a394;margin-bottom:12px}
.clbig{font-weight:500;line-height:1.05;color:#f3efe4;margin-top:3px}
.clbig .m{font-size:25px;display:block}
.clbig .g{font-size:34px;color:var(--cl-gold);display:block}
.cltag{font-size:12px;line-height:1.5;color:#cdd3c6;margin-top:13px;max-width:330px}
.cltag strong{color:#f3efe4;font-weight:600}
/* RIGHT — stacked platform cards */
.clstack{flex:1;margin-top:10px;display:flex;flex-direction:column;gap:12px}
.clcard{flex:1;display:flex;flex-direction:column;justify-content:center;background:color-mix(in srgb,var(--cl-slate) 13%,#f0ede6);border:1px solid color-mix(in srgb,var(--cl-slate) 30%,transparent);border-radius:8px;padding:13px 20px}
.clcard-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:7px}
.clnm{font-size:22px;line-height:1;color:var(--cl-slate)}
.clds{font-size:9.5px;letter-spacing:1px;color:var(--cl-slate);white-space:nowrap}
.clcardbody{font-size:11px;line-height:1.42;color:rgba(13,34,24,.6)}
.clfoot{flex-shrink:0;margin-top:10px;font-size:10px;letter-spacing:.2px;color:rgba(13,34,24,.45);text-align:center}
.clfoot strong{color:#5d655b;font-weight:600}

/* S10 WHY NOW */
.wnhl{font-size:22px;color:#1a5045;line-height:1.28;margin-bottom:10px;font-weight:500}
.wnbot{display:grid;grid-template-columns:1fr 1fr;gap:18px;flex-shrink:0}
.wnb{padding:14px 16px;border-left:2px solid}
.wnb h4{font-size:10.5px;margin-bottom:6px}
.wnb p{font-size:13.5px;line-height:1.55;color:rgba(13,34,24,.62)}
.gn{border-color:rgba(26,74,50,.45)}
.gn h4{color:#1a5045}
.rd{border-color:rgba(180,40,40,.45)}
.rd h4{color:rgba(180,40,40,.85)}

/* S11 MOAT */
.mhl{font-size:26px;color:#1a5045;text-align:center;margin-bottom:8px;line-height:1.28;max-width:980px;margin-left:auto;margin-right:auto}
.msb{font-size:15.5px;color:rgba(13,34,24,.55);text-align:center;max-width:880px;margin:0 auto 18px}
.mtl{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;flex:1;min-height:0;position:relative;align-items:start}
.mtl::before{content:'';position:absolute;top:28px;left:12.5%;right:12.5%;height:1px;background:rgba(13,34,24,.1)}
.mti{display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center;position:relative}
.mtim{background:#1a5045;color:#f0ede6;font-size:10.5px;padding:6px 12px;border-radius:3px}
.mtid{width:11px;height:11px;border-radius:50%;background:#1a5045}
.mtn{font-size:12px;letter-spacing:.8px;color:#0d2218}
.mtd{font-size:14px;color:rgba(13,34,24,.58);line-height:1.5}
.mband{background:#1a5045;margin:0 -48px -28px;padding:16px 48px;display:grid;grid-template-columns:1fr 260px;gap:24px;align-items:center;flex-shrink:0}
.mbtt{font-size:17px;color:#fff;margin-bottom:6px}
.mbts{font-size:14px}

/* S12 BUSINESS MODEL */
.bmt{display:grid;grid-template-columns:1fr 1fr;gap:28px;flex:1;min-height:0;align-items:start}
.bmhl{font-size:28px;color:#1a5045;line-height:1.22;margin-bottom:12px}
.prl{font-size:12px;color:#0d2218;line-height:2}
.prnote{color:rgba(13,34,24,.52);display:block;margin-bottom:9px;font-size:13px}
.prl strong{color:#1a5045;font-weight:500}
.bmband{background:#1a5045;margin:0 -48px -28px;padding:16px 48px;display:grid;grid-template-columns:1fr 1px 1fr 1px 1fr;gap:18px;align-items:center;flex-shrink:0}
.bmi h3{font-size:16px;color:#fff;margin-bottom:6px}
.bmi p{font-size:14px;line-height:1.55}
.bdiv{width:1px;background:rgba(255,255,255,.12);height:50px;justify-self:center}

/* S8 BUSINESS MODEL — hero £5m + pricing callout + tier bar */
.bmh{font-size:36px;color:#1a5045;line-height:1.18;letter-spacing:-.01em;margin-bottom:18px;max-width:1180px}
.bmmain{display:grid;grid-template-columns:1.1fr .85fr 1.05fr;gap:36px;align-items:end;margin-bottom:8px;flex-shrink:0}
.bmhero{display:flex;flex-direction:column;gap:6px;align-items:flex-start;text-align:left;padding-bottom:0}
.bmhero-row{display:flex;align-items:baseline;gap:14px;line-height:.9}
.bmnum{font-size:88px;color:#1a5045;letter-spacing:-.015em;line-height:.88}
.bmarr{font-size:34px;color:#1a5045;letter-spacing:-.02em;line-height:.88}
.bmsub{font-size:11px;letter-spacing:2.2px;color:rgba(13,34,24,.55);margin-top:6px;line-height:1.4}
.bmsub sup{font-size:9px;top:-3px;position:relative}
.bmhero-foot{font-size:9.5px;color:rgba(13,34,24,.55);line-height:1.45;margin:10px 0 0;max-width:none}
.bmhero-foot sup{margin-right:2px;font-size:8.5px;top:-2px;position:relative}
.bm-slide-foot{font-size:11.5px;color:rgba(13,34,24,.6);line-height:1.5;margin:14px 0 44px;max-width:none;flex-shrink:0}
.bmchart{display:flex;align-items:flex-end;justify-content:center}
.bmchart-bars{display:grid;grid-template-columns:1fr 1fr;gap:14px;width:100%;height:180px;align-items:end}
.bmchart-col{display:flex;flex-direction:column;justify-content:flex-end;height:100%;align-items:center}
.bmchart-amt-top{font-size:18px;line-height:1;letter-spacing:-.015em;margin-bottom:8px;text-align:center;white-space:nowrap}
.bmchart-amt-y2{color:#8E7CAB}
.bmchart-amt-y3{color:#C25B4F}
.bmchart-bar{width:100%;padding:10px 8px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;border-radius:3px 3px 0 0;color:#fff;text-align:center;overflow:hidden;box-sizing:border-box}
.bmchart-y2{background:#8E7CAB}
.bmchart-y3{background:#C25B4F}
.bmchart-desc{font-size:9.5px;letter-spacing:1.4px;color:rgba(255,255,255,.92);line-height:1.4;padding:0 2px}
.bmchart-yr{font-size:10.5px;letter-spacing:2.2px;color:#fff;line-height:1}
.bmprice{background:#1a5045;color:#f0ede6;padding:11px 20px;border-radius:3px}
.bmprice-lbl{font-size:9.5px;letter-spacing:2.4px;color:rgba(240,237,230,.65);margin-bottom:6px}
.bmprice-main{display:flex;align-items:baseline;gap:8px;margin-bottom:4px;flex-wrap:wrap}
.bmprice-amt{font-size:34px;color:#f0ede6;line-height:1;letter-spacing:-.02em}
.bmprice-unit{font-size:15px;color:#f0ede6;line-height:1}
.bmprice-desc{font-size:12px;color:rgba(240,237,230,.78);line-height:1.45}
.bmprice-div{height:1px;background:rgba(240,237,230,.18);margin:6px 0}
.bmsetup-val{font-size:22px;color:#f0ede6;line-height:1;margin-bottom:6px;letter-spacing:-.01em}
.bmsetup-note{font-size:11px;color:rgba(240,237,230,.72);line-height:1.45}
.bm-bottom{display:flex;gap:28px;align-items:flex-start;flex-shrink:0;margin-top:12px}
.bm-context{flex:1;display:flex;flex-direction:column;gap:14px;max-width:460px;padding-top:0}
.bm-cap{font-size:11px;letter-spacing:1.8px;color:#1a5045;line-height:1.2;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid #1a5045}
.bm-arch{display:flex;flex-direction:column;gap:6px}
.bm-arch-row{display:grid;grid-template-columns:110px 1fr;align-items:start;gap:14px;padding:2px 0}
.bm-arch-dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.bm-arch-dot-boutique{background:#B89647}
.bm-arch-dot-mid{background:#8E7CAB}
.bm-arch-dot-elite{background:#C25B4F}
.bm-arch-dot-neutral{background:rgba(13,34,24,.5)}
.bm-econ{margin-top:14px;padding:10px 14px;background:rgba(26,74,50,.07);border-left:2px solid #1a5045}
.bm-econ-label{display:block;font-size:9px;letter-spacing:1.8px;color:rgba(26,74,50,.7);margin-bottom:4px}
.bm-econ-body{font-size:11.5px;color:#1a5045;line-height:1.5;margin:0}
.bm-econ-body strong{font-weight:600;color:#0d2218}
.bm-arch-tier{font-size:10px;letter-spacing:1.6px;color:#1a5045}
.bm-arch-desc{font-size:10.5px;color:rgba(13,34,24,.65);line-height:1.4}
.bm-deal-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;column-gap:8px;row-gap:4px;align-items:baseline}
.bm-deal-head{font-size:10px;letter-spacing:1.6px;text-align:center;padding-bottom:4px}
.bm-deal-lbl{font-size:11px;color:rgba(13,34,24,.65);padding:3px 0;line-height:1.3}
.bm-deal-val{font-size:14px;color:#1a5045;text-align:center;line-height:1;letter-spacing:-.005em}
.bm-deal-src{font-size:9px;color:rgba(13,34,24,.5);line-height:1.4;margin-top:8px}
.bmstack{flex:0 0 372px;display:flex;flex-direction:column;gap:0}
.bmsubl{font-size:11px;color:rgba(13,34,24,.6);margin-top:6px;line-height:1.45;max-width:340px}
.bmmotif{font-size:10px;letter-spacing:2px;color:#B89647;font-weight:600;margin-top:10px}
.bmprice-head{font-size:10px;letter-spacing:2px;color:#f0ede6;margin-bottom:12px}
.bmprice-sub{font-size:8.5px;letter-spacing:1.3px;color:rgba(240,237,230,.6);margin-bottom:7px}
.bmprice-list{display:flex;flex-direction:column;gap:4px}
.bmprice-r{display:flex;justify-content:space-between;align-items:baseline;font-family:'Figtree',sans-serif}
.bmprice-r>span:first-child{font-size:11.5px;color:rgba(240,237,230,.85);font-weight:500}
.bmprice-v{font-size:14px;color:#f0ede6;font-weight:600;letter-spacing:-.01em}
.bmprice-foot{font-size:9.5px;color:rgba(240,237,230,.6);line-height:1.45;margin-top:7px}
.bmtbl{width:100%;border-collapse:collapse;font-family:'Figtree',sans-serif;margin-top:2px}
.bmtbl th{font-size:8px;letter-spacing:.8px;text-transform:uppercase;color:rgba(13,34,24,.5);font-weight:600;text-align:right;padding:0 0 6px;white-space:nowrap}
.bmtbl th:first-child{text-align:left}
.bmtbl th+th,.bmtbl td+td{padding-left:14px}
.bmtbl td{font-size:10.5px;color:rgba(13,34,24,.72);padding:4px 0;text-align:right;white-space:nowrap;border-top:1px solid rgba(13,34,24,.07)}
.bmtbl-h th{border:0}
.bmtbl-tier{text-align:left !important;font-weight:600;color:#1a5045 !important}
.bmtbl-x{color:rgba(13,34,24,.45);font-weight:500;font-size:9.5px}
.bmtbl-total td{border-top:1.5px solid #1a5045;font-weight:700;color:#0d2218;padding-top:7px}
.bmtbl-total .bmtbl-tier{color:#0d2218 !important}
.bmsplit{margin-top:13px}
.bmsplit-bar{display:flex;height:8px;border-radius:4px;overflow:hidden}
.bmsplit-seg{height:8px}
.bmsplit-labels{position:relative;height:32px;margin-top:4px;font-family:'Figtree',sans-serif}
.bmsplit-l{position:absolute;font-size:9px;letter-spacing:.4px;font-weight:600;white-space:nowrap}
.bmsplit-leaders{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible}
.bmsplit-leaders path{fill:none;stroke-width:1;vector-effect:non-scaling-stroke;opacity:.5}
#s8 .bmsplit-bar{clip-path:inset(0 100% 0 0);transition:clip-path 1.2s cubic-bezier(.4,0,.2,1) .25s}
#s8 .bm-bottom.in .bmsplit-bar{clip-path:inset(0 0 0 0)}
.bmstack-header,.bmstack-bar-row,.bmstack-row{display:flex;align-items:center;gap:10px}
.bmstack-gutter,.bmstack-pa{flex:0 0 70px}
.bmstack-pa{font-size:9px;color:#1a5045;line-height:1.2;letter-spacing:1.3px}
.bmstack-tier-labels,.bmstack-bar,.bmstack-cells{flex:1;display:flex;min-width:0;align-items:center}
.bmstack-tier-labels{position:relative;height:40px;display:block;overflow:visible}
.bmstack-tier-lbl{position:absolute;font-size:8px;letter-spacing:.8px;padding:0 0 0 6px;line-height:1.2;text-align:left;white-space:normal}
.bmstack-tier-lbl.bmstack-col-boutique{top:30px;left:18%;color:#B89647;max-width:60px}
.bmstack-tier-lbl.bmstack-col-mid{top:20px;left:40%;color:#8E7CAB;max-width:80px}
.bmstack-tier-lbl.bmstack-col-elite{top:0;left:62%;color:#C25B4F;max-width:75px}
.bmstack-leaders{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;display:block;overflow:visible}
.bmstack-leaders path{stroke-width:1;vector-effect:non-scaling-stroke;opacity:.55;fill:none}
.bmstack-bar{height:30px !important;border-radius:4px;overflow:hidden;margin:8px 0 4px !important;align-items:stretch !important}
.bmstack-seg{display:flex;align-items:center;justify-content:center;color:#fff;line-height:1;min-width:14px;height:30px}
.bmstack-boutique{background:#B89647}
.bmstack-mid{background:#8E7CAB}
.bmstack-elite{background:#C25B4F}
.bmstack-pct{color:#fff;font-size:10px;letter-spacing:1.2px}
.bmstack-row{padding:3px 0}
.bmstack-row + .bmstack-row{border-top:1px solid rgba(13,34,24,.08)}
.bmstack-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:0 2px;min-width:0;white-space:nowrap}
.bmstack-cell:first-child{padding-left:0}
.bmstack-x{font-size:9.5px;color:rgba(13,34,24,.78);letter-spacing:.2px;flex-shrink:0}
.bmstack-amt{font-size:9.5px;color:rgba(13,34,24,.65)}
.bmstack-dash{color:rgba(13,34,24,.3);font-size:12px;flex-direction:row}
.bmstack-foot{font-size:9.5px;color:rgba(13,34,24,.55);line-height:1.45;margin:14px 0 0;max-width:none}
.bmstack-foot sup{margin-right:2px}
/* bm-growth — middle bm-bottom column with growth-levers line chart */
.bm-growth{flex:0 0 340px;display:flex;flex-direction:column;gap:6px;padding-top:0;min-width:0}
.bm-growth-label{font-size:11px;letter-spacing:1.8px;color:#1a5045;line-height:1.2;padding-bottom:6px;border-bottom:1px solid #1a5045}
.bm-growth-chart{position:relative;width:100%;height:170px}
.bm-growth-chart canvas{display:block}
.bm-growth-legend{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;align-items:center;gap:10px;margin-top:4px}
.bm-growth-leg{display:flex;align-items:center;gap:5px;flex-shrink:0}
.bm-growth-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0}
.bm-growth-leg-text{font-size:8.5px;letter-spacing:.7px;white-space:nowrap}
.bm-growth-foot{font-size:9px;color:rgba(13,34,24,.55);line-height:1.45;margin:4px 0 0;text-align:center}
/* slide-8 coloured-element animations — bars grow on slide land */
#s8 .bmchart-y2{height:0;transition:height 1.4s cubic-bezier(.4,0,.2,1) .35s}
#s8 .bmchart-y3{height:0;transition:height 1.4s cubic-bezier(.4,0,.2,1) .65s}
#s8 .bmmain.in .bmchart-y2{height:35%}
#s8 .bmmain.in .bmchart-y3{height:100%}
#s8 .bmstack-bar{clip-path:inset(0 100% 0 0);transition:clip-path 1.2s cubic-bezier(.4,0,.2,1) .25s}
#s8 .bm-bottom.in .bmstack-bar{clip-path:inset(0 0 0 0)}

/* S13 TEAM */
.tgrid{display:grid;grid-template-columns:1fr;gap:36px;flex-shrink:0;align-content:start;align-items:start}
.tmem{display:grid;grid-template-columns:120px 1fr;gap:48px;align-items:start}
.tph{width:120px;height:120px;border-radius:50%;background:#1a5045;overflow:hidden;flex-shrink:0;display:block;clip-path:circle(50% at 50% 50%);-webkit-clip-path:circle(50% at 50% 50%);isolation:isolate}
.tph img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%;clip-path:circle(50% at 50% 50%);-webkit-clip-path:circle(50% at 50% 50%);backface-visibility:hidden}
#s9 .phl{font-size:25px;max-width:1140px;margin-bottom:14px;line-height:1.22}
#s9 .psb{font-size:14.5px;max-width:1180px;margin-bottom:18px;line-height:1.6}
#s9 .tfoot{padding:6px 0 0;background:transparent;border:none;border-radius:0;font-style:italic;font-size:11px;color:rgba(13,34,24,.55)}
.tnm{font-size:22px;color:#1a5045;margin-bottom:3px}
.ttl{font-size:13px;color:#1a5045;margin-bottom:10px;letter-spacing:1.6px}
.tbio{font-size:16px;line-height:1.6;color:rgba(13,34,24,.65)}
.tfoot{padding:14px 17px;background:rgba(13,34,24,.04);border-radius:7px;border:1px solid rgba(13,34,24,.07);font-size:14.5px;color:rgba(13,34,24,.52);line-height:1.55;flex-shrink:0;margin-top:auto}

/* S11 ASK */
.ask{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;height:100%;text-align:center;gap:14px;padding:34px 80px 30px;color:#0d2218}
.albl{font-size:11px;letter-spacing:3px;color:rgba(13,34,24,.42)}
.aamt{font-size:96px;color:#1a5045;line-height:1}
.asbt{font-size:12px;letter-spacing:2px;color:#1a5045;margin-top:-10px}
.askblk{position:relative;width:100%;max-width:1020px;aspect-ratio:1200/460;margin:-44px auto 0}
.askblk-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.askcard{position:absolute;display:flex;flex-direction:column;text-align:left}
.askcard-product{top:21%;left:62.5%;right:1.67%}
.askcard-ops{top:45%;left:1.67%;right:63.33%}
.askcard-gtm{top:77.5%;left:62.5%;right:1.67%}
.askcard-head{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:10px}
.askcard-title{font-size:13px;letter-spacing:1.1px;font-weight:600}
.askcard-pct{font-size:13.5px;letter-spacing:.2px;white-space:nowrap}
.askcard-body{font-size:13px;line-height:1.55;margin:0}
.askcard-product .askcard-title,.askcard-product .askcard-pct,.askcard-product .askcard-body{color:#C25B4F}
.askcard-ops .askcard-title,.askcard-ops .askcard-pct,.askcard-ops .askcard-body{color:#8E7CAB}
.askcard-note{display:block;margin-top:6px;font-size:11px;font-weight:400;opacity:.72}
.askcard-gtm .askcard-title,.askcard-gtm .askcard-pct,.askcard-gtm .askcard-body{color:#B89647}
#s5 .phl{font-size:34px;line-height:1.18;max-width:1080px}
.ask-donut{width:200px;height:200px;flex-shrink:0;position:relative}
.ask-donut svg{width:100%;height:100%;display:block}
.ask-leg{display:flex;flex-direction:column;gap:18px}
.ask-leg-row{display:flex;align-items:center;gap:14px}
.ask-leg-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0;display:block}
.ask-leg-text{display:flex;flex-direction:column;gap:2px}
.ask-leg-pct{font-size:22px;color:#1a5045;line-height:1}
.ask-leg-lbl{font-size:10px;color:rgba(13,34,24,.62);letter-spacing:1.5px}
.aui{padding:15px 17px;border:1px solid rgba(13,34,24,.14);border-radius:8px}
.aup{font-size:28px;color:#1a5045;line-height:1;margin-bottom:5px}
.aul{font-size:10px;color:rgba(13,34,24,.5)}
.atag{font-size:16.5px;color:rgba(13,34,24,.6);max-width:1040px;line-height:1.55}
.atag-lbl{display:block;color:#83661a;font-size:11px;letter-spacing:2px;margin-bottom:7px}
.ask-banner{max-width:1120px;margin:14px auto 0;background:#1a5045;border-radius:8px;padding:12px 28px;text-align:center;font-size:14.5px;line-height:1.5;color:#fff;font-weight:300;letter-spacing:.25px}
.ask-banner strong{color:#e9c45e;font-weight:600}
.aem{font-size:12px;letter-spacing:1.8px;color:#1a5045;text-decoration:none;transition:color .15s ease}
.aem:hover{color:#0d2218}
.alinks{display:flex;align-items:center;justify-content:center;gap:18px}
.alinks-sep{color:rgba(13,34,24,.45);font-size:18px;font-weight:700;line-height:1;transform:translateY(-1px)}

/* === S11 — Appendices divider (dark green, the one documented all-light exception) — omnigraph + Figtree index === */
.appdv{background:#1a5045}
.appdv-graph{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.appdv-node{pointer-events:auto;cursor:pointer}
.appdv-anode text{font-family:'Fraunces',serif;font-weight:400;font-size:4.3px;fill:#1a5045}
.appdv .si.appdv-si{width:761px;padding:90px 0 90px 96px;justify-content:center;align-items:flex-start;z-index:2;pointer-events:none}
.appdv-eyebrow{font-size:18px;letter-spacing:.26em;color:rgba(236,230,216,.42);margin:0 0 20px}
.appdv-title{font-size:96px;font-weight:500;line-height:.92;color:#ECE6D8;margin:0 0 50px}
.appdv-list{display:flex;flex-direction:column;width:100%}
.appdv-item{display:flex;align-items:center;gap:30px;margin-bottom:22px}
.appdv-item:last-child{margin-bottom:0}
.appdv-mk{flex:0 0 44px;font-size:33px;color:rgba(236,230,216,.55);letter-spacing:0}
.appdv-ti{font-size:26px;color:#ECE6D8;letter-spacing:.1em;line-height:1.25}

/* === Appendices (s12/s13/s14) shared === */
.kma-h{font-size:34px;color:#1a5045;line-height:1.18;letter-spacing:-.3px;max-width:1500px;margin-bottom:10px}
.kma-sub{font-size:14.5px;color:rgba(13,34,24,.62);line-height:1.55;max-width:1280px;margin-bottom:24px}
#s12 .kma-sub{margin-bottom:10px}

/* === S11 — Key Milestones (Gantt) === */
#s12 .si{padding-bottom:38px}
.kmg{display:grid;grid-template-columns:78px repeat(18,1fr);grid-auto-rows:44px;column-gap:3px;row-gap:6px;margin-top:0;flex:1;align-content:start}
.kmg-corner{grid-column:1;grid-row:1}
.kmg-mlbl{font-size:9.5px;letter-spacing:1.2px;color:rgba(13,34,24,.42);text-align:center;align-self:end;padding-bottom:6px;grid-row:1}
.kmg-rlbl{grid-column:1;font-size:10.5px;letter-spacing:2px;color:#1a5045;align-self:center;justify-self:end;padding-right:14px;text-align:right}
.kmg-rlbl sup{font-size:11px;letter-spacing:0;margin-left:1px;color:#1a5045;top:-2px;position:relative}
.kmg-foot{font-size:11px;color:rgba(13,34,24,.58);letter-spacing:.2px;line-height:1.5;margin-top:14px}
.kmg-foot sup{margin-right:2px}
.kmg-bar{color:#f0ede6;font-family:'Figtree',sans-serif;font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:1.2px;padding:4px 9px;border-radius:5px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.2;overflow:hidden}
.kmg-prod{background:#1a5045}
.kmg-gtm{background:#B89647;color:#fff}
.kmg-gtm-ms{background:#B89647;color:#fff}
.kmg-team{background:#8E7CAB}
.kmg-isec{background:#C25B4F}
.kmg-runway{align-self:center;height:32px;display:flex;align-items:center;justify-content:center;border:1.5px solid #B89647;border-radius:5px;background:transparent;color:#B89647;font-family:'Figtree',sans-serif;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:1.2px;text-align:center;position:relative}
.kmg-run-mark{position:absolute;left:66.5%;top:50%;transform:translateY(-50%);height:44px;border-left:1.5px dashed #B89647}
.kmg-run-note{position:absolute;left:66.5%;padding-left:12px;top:calc(100% + 4px);white-space:nowrap;font-family:'Figtree',sans-serif;font-weight:600;font-size:10px;letter-spacing:.2px;text-transform:none;color:#83661a}

/* === S13 — Appendix B: Competitive Landscape (Harvey vs Legora vs Matrix) === */
#s13 .si{padding-bottom:24px}
.cmp-quote{margin:10px 0 4px;padding:11px 18px;background:rgba(26,74,50,.05);border-left:2px solid #1a5045;display:flex;flex-direction:column;gap:4px;flex-shrink:0}
.cmp-q{font-size:12.5px;color:rgba(13,34,24,.55);line-height:1.5;margin:0;font-weight:400}
.cmp-a{font-size:13px;color:#1a5045;line-height:1.55;margin:0;font-weight:500}
.cmp{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;border-top:1px solid rgba(13,34,24,.18);margin-top:10px;flex-shrink:0}
.cmp-col{padding:14px 18px;border-right:1px solid rgba(13,34,24,.1);display:flex;flex-direction:column;gap:6px;min-width:0}
.cmp-col:last-child{border-right:none}
.cmp-col-matrix{background:rgba(26,74,50,.05)}
.cmp-name{font-size:22px;color:#1a5045;letter-spacing:-.01em;line-height:1.1}
.cmp-tag{font-size:10.5px;color:rgba(13,34,24,.55);letter-spacing:.4px;line-height:1.45;min-height:2.6em;margin-top:2px}
.cmp-stats{display:flex;flex-direction:column;gap:9px;margin-top:6px}
.cmp-stat-row{display:grid;grid-template-columns:74px 1fr;align-items:baseline;gap:8px}
.cmp-stat-lbl{font-size:9px;letter-spacing:2px;color:rgba(13,34,24,.55)}
.cmp-stat-val{font-size:14px;color:#1a5045;letter-spacing:-.01em;line-height:1.2}
.cmp-stat-sub{font-size:9px;letter-spacing:1.6px;color:rgba(13,34,24,.5);margin-left:4px}
.cmp-stat-break{font-size:10.5px;color:rgba(13,34,24,.5);line-height:1.45;margin:3px 0 0;font-weight:300}
.cmp-stat-block{display:flex;flex-direction:column;gap:1px;min-width:0}
.cmp-cite{font-size:9px;color:rgba(13,34,24,.55);vertical-align:super;font-weight:600;margin-left:1px;line-height:0}
.cmp-wedge{margin-top:10px;padding-top:9px;border-top:1px solid rgba(13,34,24,.1)}
.cmp-wedge-lbl{font-size:9px;letter-spacing:2.4px;color:rgba(13,34,24,.55);margin-bottom:5px}
.cmp-wedge-body{font-size:11.5px;color:#1a5045;line-height:1.55;font-weight:400;margin:0}
.cmp-col-matrix .cmp-wedge-body{font-weight:500}
.cmp-callout{margin-top:12px;padding:11px 18px;background:rgba(26,74,50,.06);border-left:2px solid #1a5045;display:flex;align-items:baseline;gap:18px;flex-shrink:0}
.cmp-callout-lbl{font-size:10px;letter-spacing:2.4px;color:#1a5045;font-weight:600;flex-shrink:0}
.cmp-callout-body{font-size:11.5px;color:#1a5045;line-height:1.55;flex:1;margin:0}
.cmp-callout-body strong{font-weight:600}
.cmp-foots{margin-top:10px;padding-top:8px;border-top:1px solid rgba(13,34,24,.1);display:flex;flex-direction:column;gap:4px;flex-shrink:0}
.cmp-foot{font-size:9px;color:rgba(13,34,24,.5);line-height:1.45;margin:0;font-weight:300}
.cmp-foot sup{font-weight:600;margin-right:3px;color:rgba(13,34,24,.65);font-size:8.5px}
.cmp-foot-em{color:#1a5045;font-weight:500}

/* === S15 — Infosec, Compliance & Data Residency === */
#s15 .si{padding-bottom:32px}
.isec{display:grid;grid-template-columns:1.05fr 1fr;gap:38px;flex:1;min-height:0;align-items:stretch}
.isec-diagram-img{display:flex;align-items:center;justify-content:center;min-height:0}
.isec-diagram-img img{width:100%;height:auto;max-height:100%;object-fit:contain;display:block}
.isec-cards{display:flex;flex-direction:column;gap:14px;justify-content:center}
#s15 .ibp{padding:18px 22px}
#s15 .ibp-lbl{font-size:12.5px;letter-spacing:1.8px;margin-bottom:8px}
#s15 .ibp-body{font-size:15px;line-height:1.6}

#s9 .phl .gold{color:#b89647}

/* === New position-4 slide — Defensibility (id="sdef") === */
#sdef{background:radial-gradient(110% 120% at 82% 42%,#1f5b48 0%,#123d31 44%,#0b221b 100%)}
#sdef .si{padding:38px 54px 32px}
#sdef .sl-l{color:rgba(236,230,216,.56)}
#sdef .phl{font-size:31px;line-height:1.16;text-align:center;margin:0 auto 12px;max-width:980px;color:#f3efe4}
#sdef .phl::first-line{color:#f3efe4}
#sdef .phl span{color:#d6b65c}
#sdef .psb{font-size:13.5px;line-height:1.42;text-align:center;max-width:1120px;margin:0 auto 12px;color:rgba(236,230,216,.66)}
#sdef .psb strong{color:#f3efe4}
#sdef .def-diagram{flex:1;min-height:0;display:flex;flex-direction:column;margin-top:0}
#sdef .def-diagram>svg{display:none}
#sdef .def-layout{display:grid;grid-template-columns:1fr 1.9fr 1fr;gap:18px;flex:1;min-height:0;margin-bottom:28px}
.def-side{display:grid;grid-template-rows:1fr 1fr;gap:14px;min-height:0}
.def-pillar{border:1px solid rgba(132,196,174,.32);background:rgba(8,31,24,.36);padding:16px 18px 14px;display:flex;flex-direction:column;justify-content:flex-start}
.def-pill-k,.def-core-k,.def-fly-k{font-size:11px;letter-spacing:3px;color:#d6b65c;margin-bottom:12px}
.def-pillar h2{font-size:22px;line-height:1.08;color:#f3efe4;margin:0 0 11px}
.def-pillar p{font-size:13px;line-height:1.42;color:rgba(236,230,216,.62);margin:0}
.def-pillar strong{color:#f3efe4;font-weight:700}
.def-core{border:2px solid #d6b65c;background:rgba(7,28,22,.5);display:grid;grid-template-rows:.9fr 1.02fr 76px;min-height:0;overflow:hidden}
.def-core-top{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px 34px;border-bottom:1px solid rgba(214,182,92,.6)}
.def-core-top h2{font-size:36px;line-height:1;color:#f3efe4;margin:0 0 16px}
.def-core-top p{font-size:13.5px;line-height:1.45;color:rgba(236,230,216,.62);margin:0;max-width:600px}
.def-graphs{display:flex;flex-direction:column;justify-content:center;gap:7px;padding:16px 28px;border-bottom:1px solid rgba(214,182,92,.6)}
.def-graph-row{display:grid;grid-template-columns:170px 1fr;border:1px solid rgba(132,196,174,.28);min-height:43px}
.def-graph-row span{display:flex;align-items:center;padding:0 16px;font-size:11px;line-height:1.15;letter-spacing:2.5px;color:#d6b65c;border-right:1px solid rgba(132,196,174,.25)}
.def-graph-row p{display:flex;align-items:center;font-size:13.5px;line-height:1.35;color:rgba(236,230,216,.68);padding:0 18px;margin:0}
.def-fly{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 28px;min-height:0;overflow:hidden}
.def-fly-k{font-size:9px;margin:0 0 6px}
.def-fly-row{display:grid;grid-template-columns:1fr 34px 1fr 34px 1fr;align-items:center;gap:10px;width:100%}
.def-fly-row span{border:1px solid rgba(132,196,174,.42);padding:5px 6px;text-align:center;font-size:9px;line-height:1;color:#f3efe4;white-space:nowrap}
.def-fly-row b{text-align:center;color:#d6b65c;font-size:16px;line-height:1}
.def-proof{display:none}
.def-proof p{font-size:11.5px;line-height:1.45;color:rgba(236,230,216,.55);margin:0}
.def-proof .eb{font-size:12px;letter-spacing:3px;color:#d6b65c;text-align:right;line-height:1.4}
.def-gold{color:#d6b65c;font-weight:600}

/* === Interactive-deck corner badge: hidden on screen, visible only in PDF/print === */
.pdf-corner{display:none}

/* === Print media: one slide per page === */
@media print{
  @page{size:13.3333in 7.5in;margin:0}
  html,body{background:#f0ede6;margin:0 !important;padding:0 !important;width:1280px !important;height:auto !important;overflow:visible !important}
  body.gated #stage,body #stage{visibility:visible !important}
  #gate,#mwo,.pbgrp,#deckui,#ui,#prog,#counter,.hint,.dlbtn,.narr,.totop{display:none !important}
  #stage-wrap{position:static !important;display:block !important;inset:auto !important}
  #stage{display:block !important;padding:0 !important;margin:0 !important;width:1280px !important;height:auto !important;position:static !important;overflow:visible !important;box-shadow:none !important;border-radius:0 !important}
  #dw{position:static !important;width:1280px !important;height:auto !important;display:block !important;overflow:visible !important;flex-shrink:initial !important}
  #deck{position:static !important;transform:none !important;width:1280px !important;height:auto !important;box-shadow:none !important;border-radius:0 !important;overflow:visible !important;display:block !important}
  .slide{position:relative !important;inset:auto !important;top:auto !important;left:auto !important;opacity:1 !important;pointer-events:auto !important;width:1280px !important;height:720px !important;min-height:720px !important;max-height:720px !important;display:block !important;transition:none !important;animation:none !important;border-radius:0 !important;overflow:hidden !important;box-sizing:border-box !important;break-inside:avoid !important;page-break-inside:avoid !important}
  .slide+.slide{break-before:page !important;page-break-before:always !important}
  .a,.al,.ar,.a.in,.al.in,.ar.in{opacity:1 !important;transform:none !important;transition:none !important;animation:none !important}
  *{-webkit-print-color-adjust:exact !important;print-color-adjust:exact !important;color-adjust:exact !important}
  /* Chrome's PDF engine rasterizes large soft shadows as a hard grey band — drop it for print */
  .clsubstrate{box-shadow:none !important}
  /* …same for the large text-shadows on the dark constellation slides — they print as solid black boxes */
  #s6 .soft,#s6 .softg,#s6 .softc,#s8 .s7markets,#s8 .s7markets *{text-shadow:none !important}
  /* Slide internals: every slide's .si layout assumes a flex column */
  .slide .si,.slide>div:first-child{display:flex !important}
  #s3 .si{padding-bottom:36px}
  #s3 .qr-canvas{display:none !important}
  #s3 .qr-still{display:block !important;width:100%;max-width:1180px;margin:0 auto}
  #s3 .qr-mobile-prompt{display:flex !important;position:absolute;top:1%;right:23%;align-items:center;gap:12px;background:#fff;padding:10px 14px 10px 10px;border-radius:6px;border:1px solid rgba(13,34,24,.16);box-shadow:none;z-index:5}
  .qr-mobile-qr{width:64px;height:64px;display:block !important}
  .qr-mobile-text{display:flex;flex-direction:column;gap:3px}
  .qr-mobile-cap{font-size:9.5px;letter-spacing:1.8px;color:#1a5045}
  .qr-mobile-body{font-size:10px;color:rgba(13,34,24,.7);line-height:1.4;max-width:140px;margin:0}
  /* Cover slide uses .cvg grid wrapper, not .si */
  #s1 .cvg{display:grid !important;width:1280px !important;height:720px !important}
  /* Slide 7 donut: negative-margin centering survives the print pipeline; the original translate(-50%) does not */
  #s7 .vad-donut{transform:none !important;margin-top:-135px !important;margin-left:-135px !important}
  /* Slide 8 animated bars: lock to final state for print */
  #s8 .bmchart-y2{height:35% !important;transition:none !important}
  #s8 .bmchart-y3{height:100% !important;transition:none !important}
  #s8 .bmstack-bar,#s8 .bmsplit-bar{clip-path:none !important;transition:none !important}
  /* Interactive-deck corner badge — filled triangle in top-right of every PDF page */
  .pdf-corner{
    display:block !important;
    position:absolute !important;
    top:0;
    right:0;
    width:130px;
    height:130px;
    text-decoration:none !important;
    z-index:1000;
    background:#f0ede6 !important;
    -webkit-clip-path:polygon(0 0,100% 0,100% 100%);
    clip-path:polygon(0 0,100% 0,100% 100%);
  }
  .pdf-corner-text{
    position:absolute;
    top:38%;
    left:62%;
    transform:translate(-50%,-50%) rotate(45deg);
    transform-origin:center center;
    font-family:'Figtree',sans-serif !important;
    font-weight:700 !important;
    font-size:11px;
    letter-spacing:1.8px;
    line-height:1.3;
    color:#1a5045 !important;
    text-transform:uppercase;
    text-align:center;
    white-space:nowrap;
  }
  .slide.lt .pdf-corner{background:#1a5045 !important}
  .slide.lt .pdf-corner-text{color:#f0ede6 !important}
  #sdef .pdf-corner{background:#f0ede6 !important}
  #sdef .pdf-corner-text{color:#1a5045 !important}
}

/* S6 — dark live-omnigraph TAM slide (deliberate dark exception, approved 2026-06-01) */
#s6{background:#0f2018}
#s6 .s6cv{position:absolute;inset:0;width:100%;height:100%}
#s6 svg text{font-family:'Figtree',sans-serif}
#s6 .soft{text-shadow:0 1px 4px rgba(8,16,12,.65)}
#s6 .softg{text-shadow:0 0 8px rgba(9,26,18,.9),0 1px 2px rgba(9,26,18,.85)}
#s6 .softc{text-shadow:0 0 10px rgba(40,12,8,.95),0 0 4px rgba(20,6,4,.9),0 1px 2px rgba(8,16,12,.85)}
#s6 .nd{fill:#8aa493;opacity:var(--o);animation:s6tw 5s ease-in-out infinite}
#s6 .ndc{fill:#f1ead6;opacity:var(--o);animation:s6tw 4s ease-in-out infinite}
#s6 .ndi{fill:#cdb878;opacity:var(--o);animation:s6tw 5.5s ease-in-out infinite}
#s6 .ndf{fill:#b3a9da;opacity:var(--o);animation:s6tw 4.5s ease-in-out infinite}
#s6 .edge{stroke:#cfe0cf;stroke-width:0.7;opacity:0.20;animation:s6eg 6s ease-in-out infinite}
#s6 .iedge{stroke:#cdb878;stroke-width:0.7;opacity:0.30}
#s6 .fedge{stroke:#b3a9da;stroke-width:0.7;opacity:0.34}
#s6 .feed{fill:none;stroke:#cdb878;stroke-width:1;opacity:0.22;stroke-dasharray:3 5}
#s6 .ffeed{fill:none;stroke:#b3a9da;stroke-width:1;opacity:0.26;stroke-dasharray:3 5}
#s6 .litglow{fill:#e7b84d;opacity:0.25;animation:s6lit 3.2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
#s6 .breathe{transform-box:fill-box;transform-origin:center;animation:s6br 7s ease-in-out infinite}
@keyframes s6tw{0%,100%{opacity:var(--o)}50%{opacity:calc(var(--o)*0.35)}}
@keyframes s6eg{0%,100%{opacity:0.12}50%{opacity:0.30}}
@keyframes s6lit{0%,100%{opacity:0.22;transform:scale(1)}50%{opacity:0.5;transform:scale(1.35)}}
@keyframes s6br{0%,100%{opacity:0.6;transform:scale(1)}50%{opacity:0.95;transform:scale(1.06)}}
#s6 .pulse{fill:#f4ead2}
#s6 .pulseu{fill:#b3a9da}
#s6 .vbig{font-weight:600;font-size:31px;fill:#ece7da;letter-spacing:-0.3px}
#s6 .vsub{font-weight:600;font-size:9px;letter-spacing:1.8px;fill:#9db39a}
#s6 .vmid{font-weight:600;font-size:21px;fill:#f0d488;letter-spacing:-0.2px}
#s6 .vsubg{font-weight:600;font-size:8.5px;letter-spacing:1.4px;fill:#e7d6a0}
#s6 .vcore{font-weight:600;font-size:22px;fill:#fff;letter-spacing:-0.2px}
#s6 .vsubr{font-weight:600;font-size:8.5px;letter-spacing:1.4px;fill:#f6e2dd}
#s6 .vder{font-family:'Figtree',sans-serif;font-weight:500;font-size:11px;letter-spacing:.2px;fill:#a6b4aa}
#s6 .litlbl{font-weight:600;font-size:10.5px;letter-spacing:.5px;fill:#e7b84d}
#s6 .upv{font-weight:600;font-size:17px;fill:#e7d6a0}
#s6 .upv2{font-weight:600;font-size:17px;fill:#c8bff0}
#s6 .uplbl{font-weight:600;font-size:8.5px;letter-spacing:1.3px;fill:#9890bd}
#s6 .rline{stroke:#6f8a7b;stroke-width:1.6;stroke-linecap:round}
#s6 .rdiv{stroke:#3f5a4b;stroke-width:1;stroke-dasharray:2 5}
#s6 .rgrpL{font-size:10.5px;letter-spacing:2.4px;font-weight:600;fill:#cfe0cf}
#s6 .rgrpA{font-size:10.5px;letter-spacing:2.4px;font-weight:600;fill:#cfe0cf}
#s6 .rtL{font-size:11px;letter-spacing:.4px;font-weight:700;fill:#ece7da}
#s6 .rsL{font-size:8.5px;font-weight:500;fill:#8aa493}
#s6 .rtA{font-size:11px;letter-spacing:.4px;font-weight:700;fill:#ece7da}
#s6 .rsA{font-size:8.5px;font-weight:500;fill:#8aa493}
#s6 .overlay{position:absolute;inset:0;padding:40px 56px;pointer-events:none}
#s6 .eyebrow{font-size:10.5px;letter-spacing:.28em;color:#7f9a89;font-weight:600;text-transform:uppercase}
#s6 h1{font-family:'Fraunces',serif;font-optical-sizing:auto;font-weight:500;font-size:28px;color:#f3efe4;line-height:1.18;margin-top:13px;max-width:740px}
#s6 h1 .s6hl{font-style:normal;font-weight:600;color:#e7b84d}
#s6 .take{margin-top:16px;max-width:510px}
#s6 .take .big{font-weight:400;font-size:16px;color:#f3efe4;line-height:1.4}
#s6 .take .big b{font-weight:600;color:#e7b84d}
#s6 .take .sm{font-weight:400;font-size:11px;color:#a9c0b0;margin-top:8px;line-height:1.5;max-width:490px}
#s6 .take .motif{margin-top:11px;font-size:10px;letter-spacing:2px;color:#e7b84d;font-weight:600}
#s6 .src{font-weight:400;position:absolute;left:56px;bottom:12px;font-size:8px;color:#56705f;letter-spacing:.2px}

/* S7 BUSINESS MODEL — dark "three markets" (approved dark exception 2026-06-01; de-italicised) */
#s8.s7dark{background:radial-gradient(120% 120% at 68% 46%,#2f4b37 0%,#1b3527 38%,#0f2418 66%,#0a1711 100%);overflow:hidden;--cream:#EDE7D6;--mute:#94A79A;--gold:#E6B24A;--teal:#54CFA1;--purple:#A99CF2}
#s8 .s7glow{position:absolute;inset:0;z-index:1;animation:s7breathe 7s ease-in-out infinite;background:radial-gradient(closest-side at 59% 46%,rgba(205,101,53,.46),rgba(170,82,44,.20) 42%,rgba(118,62,38,.06) 64%,transparent 76%)}
#s8 .s7map{position:absolute;top:0;height:100%;left:-2%;width:100%;z-index:2}
#s8 .s7scrim{position:absolute;inset:0;z-index:3;background:linear-gradient(95deg,rgba(8,18,12,.99) 44%,rgba(8,18,12,.82) 52%,rgba(8,18,12,.34) 60%,transparent 70%)}
#s8 .s7markets{position:absolute;inset:0;z-index:6;font-family:'Figtree',sans-serif;text-shadow:0 1px 8px rgba(5,16,11,.98);pointer-events:none}
#s8 .s7mkt{position:absolute;right:24px;width:372px}
#s8 .s7mkt-core{top:90px}
#s8 .s7mkt-fan{top:270px}
#s8 .s7mkt-mi{top:540px;right:74px;width:414px}
#s8 .s7mkt-h{font-size:13px;font-weight:600;letter-spacing:.5px;line-height:1.25;border-bottom:1.5px solid currentColor;padding-bottom:5px;padding-left:13px;margin-bottom:8px}
#s8 .s7mkt-h span{font-size:11px;font-weight:600}
#s8 .s7mkt-b{font-size:11px;line-height:1.45;color:#AEB9AE;margin:0 0 4px;padding-left:13px}
#s8 .s7mkt-b strong{color:#CDD6CD;font-weight:600}
#s8 .s7mkt-fig{font-family:'Fraunces',serif;font-size:21px;font-weight:600;padding-left:13px}
#s8 .s7mkt-fig span{font-family:'Figtree',sans-serif;font-size:10.5px;font-weight:500;color:#7d8a7d}
#s8 .s7mkt-core .s7mkt-h{color:#ECA99E;border-bottom-color:rgba(217,104,92,.85)}#s8 .s7mkt-core .s7mkt-h span{color:#CF7163}#s8 .s7mkt-core .s7mkt-fig{color:#D9685C}
#s8 .s7mkt-fan .s7mkt-h{color:#BFB6FB;border-bottom-color:rgba(169,156,242,.85)}#s8 .s7mkt-fan .s7mkt-h span{color:#9A8FF0}#s8 .s7mkt-fan .s7mkt-fig{color:var(--purple)}
#s8 .s7mkt-mi .s7mkt-h{color:#F2D38C;border-bottom-color:rgba(230,178,74,.85);white-space:nowrap}#s8 .s7mkt-mi .s7mkt-h span{color:#E6B24A}#s8 .s7mkt-mi .s7mkt-fig{color:var(--gold)}
#s8 .s7content{position:absolute;z-index:5;inset:0;padding:34px 44px;display:flex;flex-direction:column;pointer-events:none}
#s8 .s7col{display:flex;flex-direction:column;max-width:720px;height:100%;gap:14px}
#s8 .eyebrow{font-family:'Figtree',sans-serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute);font-weight:600}
#s8 .s7content h1{font-family:'Fraunces',serif;font-weight:500;color:var(--cream);font-size:30px;line-height:1.02;letter-spacing:-.012em;margin-top:7px;white-space:nowrap}
#s8 .s7content h1 em{font-style:normal;color:var(--gold)}
#s8 .sub{font-family:'Figtree',sans-serif;font-size:14px;color:#CDD6CD;font-weight:500;margin-top:-3px}
#s8 .sub b{font-family:'Fraunces',serif;font-weight:600;color:var(--cream);font-size:1.16em}
#s8 .blk{font-family:'Figtree',sans-serif;font-size:10.5px;letter-spacing:.17em;text-transform:uppercase;color:var(--mute);font-weight:600}
#s8 .pricing{display:flex;gap:30px}
#s8 .ptbl{flex:1}
#s8 .pcap{font-family:'Figtree',sans-serif;font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--gold);font-weight:600;padding-bottom:5px;border-bottom:1px solid rgba(230,178,74,.3);margin-bottom:3px}
#s8 .prow{display:flex;justify-content:space-between;align-items:baseline;padding:3px 0;border-bottom:1px dotted rgba(148,167,154,.2);font-size:13.5px}
#s8 .prow span{font-family:'Figtree',sans-serif;color:#BFC9BF}
#s8 .prow b{font-family:'Fraunces',serif;font-weight:600;color:var(--cream)}
#s8 .pnote{font-family:'Figtree',sans-serif;font-size:11px;color:var(--mute);margin-top:5px}
#s8 .setup{font-family:'Figtree',sans-serif;font-size:12px;color:#C9D2C9;margin-top:9px}
#s8 .setup b{color:var(--cream);font-weight:600}
#s8 .setup i{font-style:normal;color:var(--mute)}
#s8 .btm{display:flex;gap:28px;align-items:flex-end;order:1;margin-top:auto;position:relative;top:-44px}
#s8 .priceblk{order:2;margin-bottom:auto;margin-top:18px}
#s8 .barcol{flex:none}
#s8 .chart{width:280px;height:auto;display:block}
#s8 .leg{display:flex;gap:11px;margin-top:7px;flex-wrap:wrap;width:280px;justify-content:center}
#s8 .li{font-family:'Figtree',sans-serif;display:flex;align-items:center;gap:5px;font-size:11px;color:#BFC9BF}
#s8 .s7dot{width:7px;height:7px;border-radius:50%}
#s8 .drv{flex:1;display:flex;flex-direction:column}
#s8 .scatter{width:100%;max-width:280px;height:auto;display:block;margin-top:4px}
#s8 .snote{font-family:'Figtree',sans-serif;font-size:10.5px;color:var(--mute);margin-top:2px}
@keyframes s7breathe{50%{opacity:.62}}
@keyframes s7spin{to{transform:rotate(360deg)}}
@keyframes s7spinr{to{transform:rotate(-360deg)}}
@keyframes s7twinkle{50%{opacity:.25}}
@keyframes s7pulse{50%{opacity:.55;transform:scale(.97)}}
#s8 .r1{transform-origin:790px 360px;animation:s7spin 80s linear infinite}
#s8 .r2{transform-origin:790px 360px;animation:s7spinr 105s linear infinite}
#s8 .r3{transform-origin:790px 360px;animation:s7spin 145s linear infinite}
#s8 .core{transform-origin:790px 360px;animation:s7pulse 5s ease-in-out infinite}
#s8 .star{animation:s7twinkle 4s ease-in-out infinite}
@media print{#s8 .r1,#s8 .r2,#s8 .r3,#s8 .core,#s8 .star,#s8 .s7glow{animation:none!important}}
