/* MARFI shared stylesheet — homepage + product pages. Generated from inline styles. */
/* ============ TOKENS ============ */
:root{
  --paper:#F7F8F9;
  --paper-warm:#F2F1EE;
  --paper-card:#FFFFFF;
  --ink:#121212;
  --ink-soft:#3A3B3D;
  --ink-muted:#6E7073;
  --line:#E5E5E5;
  --line-dark:#D5D5D2;
  --brand-red:#DE3C4B;
  --red-hover:#C32D3D;
  --red-bright:#FF4757;
  --red-tint:rgba(222,60,75,.07);
  --status-green:#16A34A;
  --term-green:#34D17A;
  --term-amber:#E8B33E;
  --terminal-bg:#0E0F11;
  --terminal-bar:#17191C;
  --terminal-text:#E8E8E6;
  --shadow-soft:0 20px 60px -20px rgba(18,18,18,.18);
  --ease:cubic-bezier(.16,1,.3,1);
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --sans:var(--mono);
  --orbit:'Orbitron',var(--mono);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{
  background:var(--paper);
  color:var(--ink);
  font:400 15px/1.65 var(--sans);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
::selection{background:var(--brand-red);color:#fff}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
button{font:inherit;cursor:pointer;border:none;background:none}
:focus-visible{outline:2px solid var(--brand-red);outline-offset:3px;border-radius:0}

/* ============ UTILITIES ============ */
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
.eyebrow{
  font:500 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-muted);display:inline-flex;align-items:center;gap:10px;margin-bottom:22px;
}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--brand-red)}
.eyebrow .eb-t{color:var(--brand-red)}
h2{font:700 clamp(2.2rem,5.1vw,4rem)/1.05 var(--orbit);letter-spacing:-.025em}
.caption{font:400 clamp(1.06rem,1.5vw,1.24rem)/1.55 var(--sans);color:var(--ink-soft);max-width:52ch;margin-top:18px}
.red{color:var(--brand-red)}

/* crosshair corner ticks */
.ticks{position:relative}
.ticks::before,.ticks::after{
  content:"+";position:absolute;font:400 18px/1 var(--mono);color:var(--line-dark);
  pointer-events:none;z-index:1;
}
.ticks::before{top:14px;left:18px}
.ticks::after{bottom:14px;right:18px}

/* dot grid bg */
.dotgrid{
  background-image:radial-gradient(circle,rgba(18,18,18,.07) 1px,transparent 1px);
  background-size:24px 24px;
}

/* grain overlay */
.grain{
  position:fixed;inset:0;z-index:2000;pointer-events:none;
  opacity:.035;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* scroll reveals — gated behind .anim so content is visible by default */
.anim [data-reveal]{opacity:0;transform:translateY(40px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--i,0)*90ms)}
.anim [data-reveal].in{opacity:1;transform:none}
/* io-fallback: set by the JS safety net when IntersectionObserver never fires —
   snap every .anim-gated state straight to its final value, no transitions/animations */
html.io-fallback [data-reveal],html.io-fallback .o-line,html.io-fallback .o-node,html.io-fallback .o-tick,html.io-fallback .o-hub,html.io-fallback .chaos-card,html.io-fallback .chaos-line,html.io-fallback .arr-path,html.io-fallback .tl-check{transition:none!important}
html.io-fallback .spark polyline{animation:none!important;stroke-dasharray:none!important;stroke-dashoffset:0!important}
html.io-fallback .shield-svg path.s-check{animation:none!important}

/* ============ BUTTONS ============ */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font:700 15px/1 var(--sans);letter-spacing:.01em;
  padding:17px 30px;border-radius:0;white-space:nowrap;
  transition:background .25s var(--ease),box-shadow .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease);
  will-change:transform;
}
.btn-red{
  background:var(--brand-red);color:#fff;
  box-shadow:0 10px 30px -10px rgba(222,60,75,.5);
}
.btn-red:hover{background:var(--red-hover);box-shadow:0 16px 40px -10px rgba(222,60,75,.55)}
.btn-red:active{background:#A8222F}
.btn-ghost{
  background:transparent;color:var(--ink);border:1px solid var(--line-dark);
}
.btn-ghost:hover{border-color:var(--ink);background:#fff}
.btn-ghost .mono-arrow{font-family:var(--mono);color:var(--brand-red)}

/* ============ NAV ============ */
.progress{position:fixed;top:0;left:0;height:2px;width:100%;background:var(--brand-red);transform-origin:0 50%;transform:scaleX(0);z-index:1001}
nav{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  background:rgba(247,248,249,.8);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.nav-in{max-width:1180px;margin:0 auto;padding:0 28px;height:66px;display:flex;align-items:center;gap:34px}
.logo{font:700 19px/1 var(--orbit);letter-spacing:.08em;color:var(--ink);display:flex;align-items:center;gap:10px}
.logo i{font-style:normal;color:var(--brand-red)}
.logo-mark{width:28px;height:28px;flex:none;display:block}
.marfi-mark{background:url("data:image/png;base64,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") center/contain no-repeat}
.nav-links{display:flex;gap:28px;margin-left:auto;align-items:center}
.nav-links a{font:500 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);position:relative;padding:6px 0;transition:color .2s}
.nav-links a:hover{color:var(--ink)}
.nav-links a:not(.btn)::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--brand-red);transition:width .3s var(--ease)}
.nav-links a:not(.btn):hover::after{width:100%}
.nav-links .nav-cta,.nav-links .nav-cta:hover{
  font:700 13px/1 var(--sans);letter-spacing:.01em;text-transform:none;color:#fff;
  padding:11px 20px;border-radius:999px;
}
.burger{display:none;flex-direction:column;gap:5px;margin-left:auto;padding:8px}
.burger span{width:22px;height:2px;background:var(--ink);transition:transform .3s var(--ease),opacity .3s}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{
  display:none;position:fixed;top:66px;left:0;right:0;z-index:999;
  background:rgba(247,248,249,.97);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);padding:18px 28px 26px;
  flex-direction:column;gap:4px;
  transform:translateY(-8px);opacity:0;pointer-events:none;
  transition:transform .35s var(--ease),opacity .35s var(--ease);
}
.mobile-menu.open{transform:none;opacity:1;pointer-events:auto}
.mobile-menu a{font:500 14px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);padding:13px 0;border-bottom:1px solid var(--line)}
.mobile-menu .btn{margin-top:16px;justify-content:center;border-bottom:none}

/* ============ HERO ============ */
.hero{
  padding:150px 0 90px;text-align:center;position:relative;overflow:hidden;
}
.hero .wrap{position:relative;z-index:2}
.badge-pill{
  display:inline-flex;align-items:center;gap:9px;
  font:500 11.5px/1 var(--mono);letter-spacing:.13em;
  color:var(--ink-soft);background:#fff;border:1px solid var(--line);
  border-radius:0;padding:9px 18px;margin-bottom:30px;
  box-shadow:0 4px 14px -6px rgba(18,18,18,.1);
}
.badge-txt{white-space:nowrap}
@media (max-width:820px){
  .badge-pill{padding:9px 16px;border-radius:0;align-items:flex-start;max-width:calc(100vw - 40px)}
  .badge-pill .dot-live{margin-top:3px}
  .badge-pill .badge-txt{white-space:normal;text-align:center;line-height:1.6}
}
@media (max-width:520px){.badge-pill{font-size:10px;letter-spacing:.08em}}
.dot-live{width:7px;height:7px;border-radius:50%;background:var(--status-green);flex:none;animation:pulse-dot 2.2s ease-in-out infinite}
@keyframes pulse-dot{0%,100%{box-shadow:0 0 0 0 rgba(22,163,74,.4)}50%{box-shadow:0 0 0 6px rgba(22,163,74,0)}}
h1{
  font:700 clamp(2.5rem,6.4vw,5.6rem)/1.03 var(--orbit);
  letter-spacing:-.025em;max-width:15ch;margin:0 auto;
}
/* product-page hero title: <h1> for SEO/a11y, styled like a section h2 */
h1.pp-h1{font:700 clamp(2.2rem,5.1vw,4rem)/1.05 var(--orbit);letter-spacing:-.025em;max-width:none;margin:0;text-align:left}
.partners h1.pp-h1{color:#fff}
.partners h1.pp-h1 .red{color:var(--red-bright)}
/* kinetic marker highlight behind "bigger" */
.u-mark{position:relative;display:inline-block;white-space:nowrap}
.u-swipe{
  position:absolute;left:-.1em;right:-.12em;top:.16em;bottom:-.04em;
  width:auto;height:auto;transform:rotate(-1.2deg);
  overflow:visible;pointer-events:none;z-index:-1;
}
.u-swipe path{fill:none;stroke:var(--brand-red);stroke-width:46;stroke-linecap:round;opacity:.26}
.u-swipe .u-base{stroke-width:7;opacity:.85}
.anim .u-swipe path{
  stroke-dasharray:100;stroke-dashoffset:100;
  animation:u-draw .6s cubic-bezier(.3,0,.2,1) .5s forwards;
}
.anim .u-swipe .u-base{animation-delay:.72s;animation-duration:.5s}
@keyframes u-draw{to{stroke-dashoffset:0}}
html.io-fallback .u-swipe path{animation:none!important;stroke-dashoffset:0!important}
.hero-sub{
  font:400 clamp(1.08rem,1.55vw,1.32rem)/1.55 var(--sans);color:var(--ink-soft);
  max-width:46ch;margin:26px auto 0;
}
.hero-sub .sub-pain{display:block;font-weight:700;color:var(--ink);margin-bottom:7px;font-family:var(--orbit);font-size:.92em;letter-spacing:-.01em;line-height:1.25}
.hero-ctas{display:flex;gap:14px;justify-content:center;margin-top:36px;flex-wrap:wrap}
.hero-trust{
  margin-top:26px;font:500 11px/1.7 var(--mono);letter-spacing:.14em;color:var(--ink-muted);
  display:flex;gap:6px 18px;justify-content:center;flex-wrap:wrap;align-items:baseline;
}
.hero-trust span::before{content:"✓ ";color:var(--status-green)}
.hero-trust .ht-note::before{content:none}
.hero-trust .ht-note{letter-spacing:.12em}

/* hero atmosphere: stronger dot grid + soft red aurora behind the terminal */
.hero.dotgrid{background-image:radial-gradient(circle,rgba(18,18,18,.1) 1px,transparent 1px)}
.hero-aurora{
  position:absolute;left:50%;top:64%;width:min(1100px,130vw);height:640px;
  transform:translate(-50%,-42%);pointer-events:none;z-index:0;
  background:radial-gradient(closest-side,rgba(222,60,75,.075),transparent 72%);
  filter:blur(28px);
}
/* hero terminal */
.hero-stage{
  margin:70px auto 0;max-width:920px;position:relative;z-index:1;
  perspective:1400px;padding:0 28px;
}
.anim #heroTermWrap{transform:rotateX(6deg)}
#heroTermWrap{transform-style:preserve-3d;will-change:transform}
.term{
  background:var(--terminal-bg);border-radius:0;overflow:hidden;text-align:left;
  border:1px solid rgba(255,255,255,.07);
  box-shadow:0 40px 100px -30px rgba(18,18,18,.4),0 8px 24px -8px rgba(18,18,18,.18);
}
.term-bar{
  display:flex;align-items:center;gap:8px;padding:13px 16px;
  background:var(--terminal-bar);border-bottom:1px solid rgba(255,255,255,.06);
}
.tdot{width:12px;height:12px;border-radius:50%}
.tdot.r{background:#FF5F57}.tdot.y{background:#FEBC2E}.tdot.g{background:#28C840}
.term-title{flex:1;text-align:center;font:400 12px/1 var(--mono);color:rgba(232,232,230,.4);margin-right:52px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.term-body{
  padding:24px 28px 28px;
  font:500 clamp(10.5px,1.45vw,13.5px)/1.95 var(--mono);
  color:var(--terminal-text);
}
#scanTermBody{min-height:21em}
.t-line{white-space:pre-wrap;word-break:break-word}
.t-cmd{color:#fff}
.t-cmd .t-dollar{color:var(--brand-red)}
.t-dim{color:rgba(232,232,230,.55)}
.t-res{opacity:0;transition:opacity .45s ease}
.t-res.on{opacity:1}
html:not(.anim) .t-res{opacity:1}
.t-static .t-res{opacity:1}
.t-ok{color:var(--term-green)}
.t-warn{color:var(--term-amber)}
.t-live{color:var(--term-green)}
.t-livedot{animation:blink-live 1.6s ease-in-out infinite}
@keyframes blink-live{0%,100%{opacity:1}50%{opacity:.35}}
.t-final{color:#fff;font-weight:700;animation:final-pulse 2.6s ease-in-out infinite}
@keyframes final-pulse{0%,100%{opacity:1}50%{opacity:.7}}
html.io-fallback .t-final{animation:none!important;opacity:1!important}
.t-cursor{
  display:inline-block;width:.6em;height:1.15em;background:var(--terminal-text);
  vertical-align:text-bottom;margin-left:2px;animation:blink-cur 1.1s steps(1) infinite;
}
@keyframes blink-cur{50%{opacity:0}}
.anim .t-static{display:none}

/* ============ HERO PLATFORM DASHBOARD ============ */
.hdash{
  background:linear-gradient(180deg,#FFFFFF 0%,#FCFCFD 100%);
  border:1px solid var(--line);border-radius:0;overflow:hidden;text-align:left;
  box-shadow:0 40px 90px -34px rgba(18,18,18,.30),0 10px 30px -12px rgba(18,18,18,.12),
             inset 0 1px 0 rgba(255,255,255,.9);
  position:relative;
}
.hdash::before{
  /* subtle top glass sheen */
  content:"";position:absolute;inset:0 0 auto 0;height:120px;pointer-events:none;
  background:linear-gradient(180deg,rgba(222,60,75,.035),transparent 78%);
}
/* header bar */
.hd-bar{
  display:flex;align-items:center;gap:14px;padding:13px 18px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,#FFFFFF,#FBFBFC);position:relative;
}
.hd-brand{display:flex;align-items:center;gap:9px;flex:none}
.hd-logo{width:24px;height:24px;flex:none}
.hd-ws{font:600 13.5px/1 var(--sans);color:var(--ink);letter-spacing:-.01em;white-space:nowrap}
.hd-nav{display:flex;gap:2px;margin-left:6px;min-width:0;flex-wrap:nowrap;overflow:hidden}
.hd-tab{
  position:relative;font:500 12px/1 var(--sans);color:var(--ink-muted);
  padding:6px 10px;border-radius:0;letter-spacing:-.005em;white-space:nowrap;
  transition:color .22s var(--ease),background .22s var(--ease);
}
.hd-tab::after{
  content:"";position:absolute;left:10px;right:10px;bottom:1px;height:2px;border-radius:0;
  background:var(--brand-red);transform:scaleX(0);transform-origin:left;opacity:0;
  transition:transform .26s var(--ease),opacity .26s var(--ease);
}
.hd-tab:hover{color:var(--ink)}
.hd-tab:hover::after{transform:scaleX(.55);opacity:.4}
.hd-tab.is-active{background:var(--paper-warm);color:var(--ink);font-weight:600}
.hd-tab.is-active::after{transform:scaleX(1);opacity:1}
/* gentle live heartbeat on the active-tab underline */
.anim .hd-tab.is-active::after{animation:hd-tab-glow 3.2s var(--ease) infinite}
@keyframes hd-tab-glow{0%,100%{opacity:.85;box-shadow:0 0 0 0 rgba(222,60,75,0)}50%{opacity:1;box-shadow:0 0 7px 0 rgba(222,60,75,.45)}}
.hd-pill{
  margin-left:auto;display:inline-flex;align-items:center;gap:7px;flex:none;
  font:600 11px/1 var(--sans);letter-spacing:.02em;color:var(--status-green);
  padding:6px 11px 6px 9px;border-radius:0;
  background:rgba(22,163,74,.08);border:1px solid rgba(22,163,74,.22);
}
.hd-pdot{width:7px;height:7px;border-radius:50%;background:var(--status-green);
  box-shadow:0 0 0 0 rgba(22,163,74,.5)}
.anim .hd-pdot{animation:hd-pulse 2.4s ease-out infinite,hd-pdot-glow 3.2s var(--ease) infinite}
@keyframes hd-pulse{0%{box-shadow:0 0 0 0 rgba(22,163,74,.45)}70%,100%{box-shadow:0 0 0 7px rgba(22,163,74,0)}}
@keyframes hd-pdot-glow{0%,100%{filter:none}50%{filter:drop-shadow(0 0 4px rgba(22,163,74,.85))}}

.hd-body{padding:20px;display:flex;flex-direction:column;gap:14px;position:relative}
.hd-card{
  background:var(--paper-card);border:1px solid var(--line);border-radius:0;
  box-shadow:0 1px 0 rgba(18,18,18,.02),0 8px 22px -16px rgba(18,18,18,.14);
}
.hd-top{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:14px}

/* posture / score ring */
.hd-posture{display:flex;align-items:center;gap:18px;padding:18px 20px}
.hd-ringwrap{position:relative;width:104px;height:104px;flex:none}
/* one-time soft glow bloom behind the ring when the score lands */
.hd-ring-bloom{
  position:absolute;inset:-10px;border-radius:50%;pointer-events:none;opacity:0;
  background:radial-gradient(circle,rgba(22,163,74,.30),rgba(22,163,74,0) 66%);
}
.anim .hd-go .hd-ring-bloom{animation:hd-ring-bloom 1.7s var(--ease) 1.1s both}
@keyframes hd-ring-bloom{0%{opacity:0;transform:scale(.82)}38%{opacity:1;transform:scale(1.04)}100%{opacity:0;transform:scale(1.12)}}
.hd-ring{position:relative;width:104px;height:104px;transform:rotate(-90deg)}
.hd-ring-bg{fill:none;stroke:var(--line);stroke-width:9}
.hd-ring-fg{
  fill:none;stroke:var(--status-green);stroke-width:9;stroke-linecap:round;
  filter:drop-shadow(0 3px 7px rgba(22,163,74,.28));
}
.anim .hd-ring-fg{transition:stroke-dashoffset 1.5s var(--ease)}
.hd-ring-num{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  flex-direction:column;line-height:1;
}
.hd-score{font:700 30px/1 var(--orbit);color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.hd-ring-num small{font:600 10px/1 var(--mono);color:var(--ink-muted);margin-top:4px;letter-spacing:.04em}
.hd-posture-meta{display:flex;flex-direction:column;gap:5px;min-width:0}
.hd-eyebrow{font:600 10px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}
.hd-posture-state{
  display:inline-flex;align-items:center;gap:7px;
  font:700 15px/1.1 var(--orbit);letter-spacing:-.01em;color:var(--ink);
}
.hd-tick{width:17px;height:17px;flex:none;border-radius:50%;background:rgba(22,163,74,.12);padding:3px}
.hd-tick path{fill:none;stroke:var(--status-green);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.hd-tick-sm{width:13px;height:13px;background:none;padding:0}
.hd-posture-status{
  display:inline-flex;align-items:center;gap:6px;
  font:600 11px/1 var(--sans);color:var(--status-green);letter-spacing:-.005em;
}
.hd-status-dot{width:6px;height:6px;border-radius:50%;background:var(--status-green);flex:none;box-shadow:0 0 0 3px rgba(22,163,74,.12)}
.hd-posture-sub{font:500 11.5px/1.4 var(--sans);color:var(--ink-muted)}

/* compliance */
.hd-compliance{padding:16px 18px;display:flex;flex-direction:column;gap:13px;justify-content:center}
.hd-comp-row{display:flex;flex-direction:column;gap:8px;position:relative}
.hd-comp-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.hd-comp-name{font:600 13px/1 var(--sans);color:var(--ink);letter-spacing:-.01em}
.hd-comp-val{font:500 12px/1 var(--mono);color:var(--ink-muted);font-variant-numeric:tabular-nums}
.hd-comp-val b{color:var(--ink);font-weight:700}
.hd-aligned{display:inline-flex;align-items:center;gap:5px;color:var(--status-green);font-weight:600}
.hd-aligned path{fill:none;stroke:var(--status-green);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.hd-bar-track{height:7px;border-radius:0;background:var(--paper-warm);overflow:hidden;position:relative}
.hd-bar-fill{
  display:block;height:100%;width:calc(var(--p,1)*100%);border-radius:0;
  background:linear-gradient(90deg,#15803D,var(--status-green));
  transform-origin:left;position:relative;
}
/* leading-edge highlight that travels with the fill */
.hd-bar-fill::after{
  content:"";position:absolute;top:0;right:0;width:18px;height:100%;border-radius:0;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.85));opacity:0;
}
/* staggered fill: SOC 2 → NIST → HIPAA */
.anim .hd-bar-fill{transform:scaleX(0);transition:transform 1.1s var(--ease) .2s}
.anim .hd-comp-row:nth-child(2) .hd-bar-fill{transition-delay:.5s}
.anim .hd-comp-row:nth-child(3) .hd-bar-fill{transition-delay:.8s}
.hd-go .hd-bar-fill{transform:scaleX(1)}
.anim .hd-go .hd-bar-fill::after{animation:hd-bar-edge 1.1s var(--ease) .2s 1}
.anim .hd-go .hd-comp-row:nth-child(2) .hd-bar-fill::after{animation-delay:.5s}
.anim .hd-go .hd-comp-row:nth-child(3) .hd-bar-fill::after{animation-delay:.8s}
@keyframes hd-bar-edge{0%{opacity:0}30%{opacity:1}100%{opacity:0}}
.hd-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:1px}
.hd-chip{
  font:600 10px/1 var(--mono);letter-spacing:.04em;color:var(--ink-soft);
  padding:5px 9px 5px 7px;border-radius:0;background:var(--paper);border:1px solid var(--line);
  display:inline-flex;align-items:center;gap:5px;
}
.hd-chip.is-on{
  color:#15803D;background:rgba(22,163,74,.07);border-color:rgba(22,163,74,.26);
}
.hd-chip.is-on svg{width:11px;height:11px;flex:none}
.hd-chip.is-on svg path{fill:none;stroke:var(--status-green);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}

/* metrics grid */
.hd-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.hd-metric{
  background:var(--paper-card);border:1px solid var(--line);border-radius:0;
  padding:13px 14px;display:flex;flex-direction:column;gap:6px;min-width:0;position:relative;
  box-shadow:0 6px 18px -16px rgba(18,18,18,.16);
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease);
}
.hd-metric:hover{
  transform:translateY(-3px);border-color:rgba(222,60,75,.34);
  box-shadow:0 14px 30px -18px rgba(18,18,18,.30),0 0 0 1px rgba(222,60,75,.07);
}
.hd-m-label{font:600 9.5px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}
.hd-m-val{
  font:700 clamp(1.4rem,2.4vw,1.75rem)/1 var(--orbit);color:var(--ink);
  font-variant-numeric:tabular-nums;letter-spacing:-.01em;display:flex;align-items:baseline;
}
.hd-m-suf{font:600 13px/1 var(--mono);color:var(--ink-muted);margin-left:1px}
.hd-m-val.hd-accent{color:var(--brand-red)}
.hd-accent-suf{color:var(--brand-red)}
.hd-m-foot{font:500 11px/1.3 var(--sans);color:var(--ink-muted)}
.hd-m-foot.hd-good{color:var(--status-green);font-weight:600}
.hd-spark{width:100%;height:18px;margin-top:auto}
.hd-spark-line{fill:none;stroke:var(--brand-red);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.anim .hd-spark-line{stroke-dasharray:200;stroke-dashoffset:200;transition:stroke-dashoffset 1.4s var(--ease) .35s}
.hd-go .hd-spark-line{stroke-dashoffset:0}

/* live monitoring footer — AI-monitored, calm & premium */
.hd-live{
  display:flex;align-items:center;gap:11px;padding:11px 15px;
  background:var(--paper-warm);border:1px solid var(--line);border-radius:0;
}
.hd-live-ind{display:inline-flex;align-items:center;gap:8px;font:600 12px/1 var(--sans);color:var(--ink);letter-spacing:-.005em}
/* steady premium LIVE dot — gentle breathing glow, no swimming line */
.hd-live-dot{
  position:relative;width:8px;height:8px;border-radius:50%;background:var(--status-green);
  box-shadow:0 0 0 3px rgba(22,163,74,.12);flex:none;
}
.hd-live-dot::after{
  content:"";position:absolute;inset:-3px;border-radius:50%;
  border:1px solid rgba(22,163,74,.45);opacity:0;
}
.anim .hd-live-dot::after{animation:hd-live-ring 2.6s var(--ease) infinite}
@keyframes hd-live-ring{0%{transform:scale(.7);opacity:.7}70%,100%{transform:scale(1.9);opacity:0}}
.hd-live-tag{
  font:700 9px/1 var(--mono);letter-spacing:.14em;color:var(--status-green);
  padding:4px 7px;border-radius:0;background:rgba(22,163,74,.1);
}
.hd-live-status{
  margin-left:auto;display:inline-flex;align-items:center;gap:9px;min-width:0;
  font:500 11.5px/1 var(--sans);color:var(--ink-muted);letter-spacing:-.005em;
}
.hd-live-status b{color:var(--ink);font-weight:600}
.hd-live-status .hd-live-sep{width:3px;height:3px;border-radius:50%;background:var(--line-dark,#cfd1d3);flex:none}
/* gentle static equalizer — breathes softly in place, never travels */
.hd-eq{display:inline-flex;align-items:flex-end;gap:2px;height:13px;flex:none}
.hd-eq i{width:2.5px;border-radius:0;background:var(--status-green);opacity:.85}
.hd-eq i:nth-child(1){height:5px}
.hd-eq i:nth-child(2){height:9px}
.hd-eq i:nth-child(3){height:13px}
.hd-eq i:nth-child(4){height:7px}
.anim .hd-eq i{animation:hd-eq-breathe 2.8s var(--ease) infinite;transform-origin:bottom}
.anim .hd-eq i:nth-child(2){animation-delay:.35s}
.anim .hd-eq i:nth-child(3){animation-delay:.7s}
.anim .hd-eq i:nth-child(4){animation-delay:.18s}
@keyframes hd-eq-breathe{0%,100%{transform:scaleY(.55);opacity:.55}50%{transform:scaleY(1);opacity:.9}}

/* io-fallback / no-anim: dashboard fully visible, final values, no loops */
html.io-fallback .hd-pdot,html.io-fallback .hd-live-dot::after{animation:none!important}
html.io-fallback .hd-live-dot::after{opacity:0!important}
html.io-fallback .hd-eq i{animation:none!important;transform:none!important;opacity:.85!important}
html.io-fallback .hd-ring-fg{transition:none!important}
html.io-fallback .hd-ring-bloom{animation:none!important;opacity:0!important}
html.io-fallback .hd-tab.is-active::after,html.io-fallback .hd-pdot{animation:none!important}
html.io-fallback .hd-pdot{filter:none!important}
html.io-fallback .hd-bar-fill{transition:none!important;transform:scaleX(1)!important}
html.io-fallback .hd-bar-fill::after{animation:none!important;opacity:0!important}
html.io-fallback .hd-spark-line{transition:none!important;stroke-dashoffset:0!important;stroke-dasharray:none!important}

/* responsive dashboard */
@media(max-width:680px){
  .hd-nav{display:none}
  .hd-body{padding:15px;gap:11px}
  .hd-top{grid-template-columns:1fr}
  .hd-metrics{grid-template-columns:1fr 1fr;gap:10px}
  .hd-posture{padding:16px}
  .hd-live-status{margin-left:auto;font-size:11px}
  .hd-live-status > span:last-child,.hd-live-status .hd-live-sep{display:none}
}
@media(max-width:430px){
  .hd-live-status b{display:none}
  .hd-live-status .hd-eq{margin-left:auto}
}
@media(max-width:380px){
  .hd-posture{flex-direction:column;text-align:center;align-items:center;gap:12px}
  .hd-posture-meta{align-items:center}
}

/* outcome cards — accent collage around the dashboard */
.oc-layer{position:absolute;inset:0;pointer-events:none;z-index:3}
.oc{position:absolute;will-change:transform}
.oc-r{
  background:#fff;border:1px solid var(--line);border-radius:0;
  padding:13px 16px;text-align:left;
  font:500 11px/1.45 var(--mono);letter-spacing:.06em;color:var(--ink-soft);
  box-shadow:0 18px 44px -16px rgba(18,18,18,.22),0 4px 12px -6px rgba(18,18,18,.1);
}
.oc-near .oc-r{box-shadow:0 26px 60px -18px rgba(18,18,18,.28),0 6px 16px -6px rgba(18,18,18,.12)}
.oc-far .oc-r{box-shadow:0 12px 30px -14px rgba(18,18,18,.16)}
.oc-top{display:flex;align-items:center;gap:8px;font-weight:700;font-size:11px;letter-spacing:.09em;color:var(--ink)}
.oc-cap{font:400 12.5px/1.4 var(--sans);letter-spacing:0;color:var(--ink-muted);margin-top:5px}
.oc-row{display:flex;align-items:center;gap:12px}
.oc-shield{width:30px;height:36px;flex:none}
.oc-shield .s-outline{fill:none;stroke:var(--ink);stroke-width:2.4}
.oc-shield .s-check{fill:none;stroke:var(--status-green);stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}
.oc-pass{display:block;font-size:10px;letter-spacing:.12em;color:var(--status-green);margin-top:4px}
.oc-num{font-weight:700;font-size:14px;letter-spacing:.02em;color:var(--ink)}
.oc-num small{display:block;font-size:9.5px;font-weight:500;letter-spacing:.14em;color:var(--ink-muted);margin-top:3px}
.oc-spark{flex:none}
.oc-spark polyline{fill:none;stroke:var(--status-green);stroke-width:1.8;stroke-linecap:round}
.oc-stat{max-width:190px}
.oc-stat b{color:var(--brand-red);font-weight:700}
.oc-1{top:-30px;right:-26px}
.oc-2{top:-46px;left:-38px}
.oc-3{bottom:-24px;right:-30px}
.oc-4{bottom:-26px;left:-24px}
/* reveal after terminal boot, then ambient float */
.anim .oc .oc-r{
  opacity:0;transform:translateY(16px);
  transition:opacity .85s var(--ease) var(--ocd,0s),transform .85s var(--ease) var(--ocd,0s);
}
.anim .cards-in .oc .oc-r{
  opacity:1;transform:none;
  animation:oc-float var(--ofd,9s) ease-in-out calc(var(--ocd,0s) + 1.4s) infinite;
}
@keyframes oc-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
html.io-fallback .oc .oc-r{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}
@media(max-width:1020px){
  .oc-1{right:4px;top:-22px}
  .oc-2{left:2px}
  .oc-3{right:2px}
  .oc-4{left:4px;bottom:-20px}
}

/* ============ STATS ============ */
.stats{padding:90px 0 60px;border-bottom:1px solid var(--line)}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.stat{padding:8px 18px;border-left:1px solid var(--line)}
.stat:first-child{border-left:none;padding-left:0}
.stat-num{
  font:700 clamp(1.9rem,3.6vw,3.2rem)/1 var(--orbit);
  letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--ink);
  display:flex;align-items:baseline;transform-origin:left center;
  transition:text-shadow .4s var(--ease);
}
.stat:hover .stat-num{text-shadow:0 0 26px rgba(222,60,75,.32)}
.stat-num .suf{color:var(--brand-red)}
/* number breathes faintly while climbing, then a clean land-pop + glow flash */
.anim .stat.counting .stat-num{color:var(--ink-soft)}
.anim .stat.done .stat-num{animation:stat-land .7s cubic-bezier(.2,1.3,.35,1)}
@keyframes stat-land{
  0%{transform:translateY(3px) scale(.99)}
  40%{transform:translateY(-2px) scale(1.05);text-shadow:0 0 34px rgba(222,60,75,.45)}
  100%{transform:none;text-shadow:0 0 0 rgba(222,60,75,0)}
}
/* red baseline that draws under each numeral as its counter lands */
.stat-base{width:min(84px,62%);height:2px;border-radius:0;background:var(--brand-red);margin-top:16px;transform:scaleX(0);transform-origin:left}
.anim .stat-base{transition:transform .9s cubic-bezier(.16,1,.3,1)}
.stat.done .stat-base,html:not(.anim) .stat-base,html.io-fallback .stat-base{transform:scaleX(1)}
html.io-fallback .stat-base{transition:none!important;transform:scaleX(1)!important}
.stat-label{font:500 11.5px/1.5 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--ink-muted);margin-top:12px}
.stats-foot{font:400 11.5px/1.5 var(--mono);color:var(--ink-muted);margin-top:42px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.stats-foot .sf-live{color:var(--status-green);font-weight:700;letter-spacing:.16em}
.stats-foot::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--status-green);flex:none;animation:pulse-dot 2.2s ease-in-out infinite}

/* ============ MARQUEE ============ */
.marquee{
  padding:34px 0;border-bottom:1px solid var(--line);overflow:hidden;
  mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
}
.marquee-track{display:flex;align-items:center;width:max-content;animation:marq 38s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
html:not(.anim) .marquee-track{animation:none}
@keyframes marq{to{transform:translateX(-50%)}}
/* badge chips — frameworks get a shield/check glyph, sectors stay plain */
.mq-chip{
  display:inline-flex;align-items:center;gap:8px;flex:none;
  font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-soft);white-space:nowrap;
  border:1px solid var(--line-dark);border-radius:0;padding:9px 16px;
  background:#fff;margin-right:14px;
}
.mq-chip svg{width:11px;height:13px;flex:none}
.mq-chip .mq-sh{fill:none;stroke:var(--ink-muted);stroke-width:1.3}
.mq-chip .mq-ck{fill:none;stroke:var(--status-green);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.mq-sec{background:transparent;border-color:var(--line);color:var(--ink-muted)}

/* ============ PROBLEM DIAGRAM ============ */
.problem{padding:120px 0;border-bottom:1px solid var(--line)}
.problem-head{max-width:640px}
.diagram{
  display:grid;grid-template-columns:1fr 110px 1fr;gap:8px;align-items:center;
  margin-top:64px;
}
.dia-half{position:relative}
.dia-label{
  font:500 11px/1.4 var(--mono);letter-spacing:.15em;text-transform:uppercase;
  margin-bottom:14px;
}
.dia-label.bad{color:var(--brand-red)}
.dia-label.good{color:var(--status-green)}
.dia-arrow{
  display:flex;flex-direction:column;align-items:center;gap:10px;
  font:500 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);
}
.dia-arrow svg{width:64px;height:24px;stroke:var(--brand-red)}
/* chaos svg — disordered at rest, drawn in scattered on scroll, ambient drift after */
.dia-chaos::before{
  content:"";position:absolute;inset:6% -5% -3% -5%;pointer-events:none;
  background:radial-gradient(closest-side,rgba(222,60,75,.08),transparent 78%);
}
.chaos-card{
  transform-box:fill-box;transform-origin:center;
  transform:rotate(var(--r,0deg));
}
.anim .chaos-card{opacity:0;transition:opacity .5s var(--ease) var(--cd,0s)}
.anim .dia-on .chaos-card{
  opacity:1;
  animation:c-float var(--d,10s) ease-in-out calc(var(--cd,0s)*-14) infinite;
}
@keyframes c-float{
  0%,100%{transform:translate(0,0) rotate(var(--r,0deg))}
  33%{transform:translate(var(--jx,2px),-7px) rotate(calc(var(--r,0deg) + 1.1deg))}
  66%{transform:translate(calc(var(--jx,2px)*-1.1),-3px) rotate(calc(var(--r,0deg) - .9deg))}
}
.chaos-line{
  stroke:rgba(222,60,75,.5);stroke-width:1.6;fill:none;stroke-dasharray:6 7;
  transform-box:fill-box;transform-origin:center;
}
.chaos-line:nth-of-type(3n){--dw:9.5s}
.chaos-line:nth-of-type(3n+2){--dw:7s}
.anim .chaos-line.drift{animation:dash-drift var(--dd,14s) linear infinite,line-wobble var(--dw,8s) ease-in-out infinite}
.anim .consolidated .chaos-line{opacity:.55}
@keyframes dash-drift{to{stroke-dashoffset:-260}}
@keyframes line-wobble{0%,100%{transform:translate(0,0)}50%{transform:translate(1.6px,-2px)}}
.v-rect{fill:#fff;stroke:var(--line-dark);stroke-width:1}
.v-text{font:500 15px var(--mono);letter-spacing:.08em;fill:var(--ink-soft)}
.v-bill{font:500 13px var(--mono);fill:var(--brand-red);letter-spacing:.06em;transform-box:fill-box;transform-origin:center}
.anim .dia-on .v-bill{animation:bill-pulse 2.3s ease-in-out var(--bp,0s) infinite}
@keyframes bill-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(1.18)}}
/* floating alert chips over the chaos cluster */
.chip-alert{
  position:absolute;z-index:2;display:flex;align-items:center;gap:7px;
  font:500 10.5px/1 var(--mono);letter-spacing:.08em;color:var(--brand-red);
  background:#fff;border:1px solid rgba(222,60,75,.35);border-radius:0;padding:7px 10px;
  box-shadow:0 8px 20px -10px rgba(222,60,75,.4);pointer-events:none;white-space:nowrap;
}
.chip-alert i{width:6px;height:6px;border-radius:50%;background:var(--brand-red);flex:none}
.ca-1{top:23%;right:-6px}
.ca-2{bottom:13%;left:-8px}
.ca-3{top:57%;right:5%}
.anim .chip-alert{opacity:0}
.anim .dia-on .chip-alert{animation:chip-fade 7s ease-in-out var(--ca,0s) infinite}
@keyframes chip-fade{
  0%,8%{opacity:0;transform:translateY(5px)}
  16%,60%{opacity:1;transform:translateY(0)}
  72%,100%{opacity:0;transform:translateY(-5px)}
}
/* transition arrow — draws in, then a pulse travels left→right */
.arr-pulse{fill:var(--brand-red);stroke:none;opacity:0}
.anim .arr-path{stroke-dasharray:84;stroke-dashoffset:84;transition:stroke-dashoffset .6s var(--ease) .75s}
.anim .dia-on .arr-path{stroke-dashoffset:0}
.anim .dia-on .arr-pulse{animation:arr-run 1.5s ease-in 1.5s infinite}
@keyframes arr-run{0%{transform:translateX(0);opacity:0}12%{opacity:1}82%{opacity:1}100%{transform:translateX(46px);opacity:0}}
/* order svg — spokes draw after chaos, nodes rise, ticks pop, hub lands last */
.o-line{stroke:rgba(18,18,18,.3);stroke-width:1.6;fill:none;transition:stroke-dashoffset .9s var(--ease);transition-delay:calc(.85s + var(--i,0)*130ms)}
.o-node{opacity:0;transform:translateY(8px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(1.15s + var(--i,0)*130ms)}
html:not(.anim) .o-node{opacity:1;transform:none;transition:none}
.dia-on .o-node{opacity:1;transform:none}
.o-tick{fill:var(--status-green);font:700 15px var(--mono);transform-box:fill-box;transform-origin:center}
.anim .o-tick{opacity:0;transform:scale(.2);transition:opacity .35s var(--ease),transform .5s cubic-bezier(.3,1.7,.45,1);transition-delay:calc(1.5s + var(--i,0)*110ms)}
.anim .dia-on .o-tick{opacity:1;transform:scale(1)}
.o-center-rect{fill:#fff;stroke:var(--brand-red);stroke-width:2;filter:drop-shadow(0 14px 24px rgba(222,60,75,.18))}
.o-hub{transform-box:fill-box;transform-origin:center}
.anim .o-hub{opacity:0;transform:scale(.85);transition:opacity .5s var(--ease) 1.9s,transform .75s cubic-bezier(.3,1.6,.45,1) 1.9s}
.anim .dia-on .o-hub{opacity:1;transform:scale(1)}
.hub-glow{fill:var(--brand-red);opacity:.13;filter:blur(15px)}
.anim .dia-on .hub-glow{animation:glow-pulse 3.4s ease-in-out infinite}
@keyframes glow-pulse{0%,100%{opacity:.09}50%{opacity:.2}}
.hub-ripple{fill:none;stroke:var(--brand-red);stroke-width:1.4;opacity:0;transform-box:fill-box;transform-origin:center}
.anim .dia-on .hub-ripple{animation:hub-ripple 3.4s cubic-bezier(.16,1,.3,1) 2.6s infinite}
@keyframes hub-ripple{0%{opacity:.4;transform:scale(1)}65%,100%{opacity:0;transform:scale(1.6)}}
/* telemetry pulses: chip → hub along each spoke */
.spoke-pulse{fill:var(--brand-red);opacity:0}
.anim .dia-on .spoke-pulse{animation:spoke-run 2.4s linear infinite;animation-delay:calc(2.2s + var(--pd,0s))}
@keyframes spoke-run{
  0%{transform:translate(0,0);opacity:0}
  12%{opacity:.85}
  80%{opacity:.85}
  100%{transform:translate(var(--tx),var(--ty));opacity:0}
}
.pull-quote{
  font:700 clamp(1.45rem,3.4vw,2.6rem)/1.18 var(--orbit);letter-spacing:-.02em;
  text-align:center;margin-top:80px;
}
.pull-quote em{font-style:normal;color:var(--brand-red)}
.pull-quote .pq-sub{display:block;margin-top:14px;font:600 clamp(.95rem,1.7vw,1.25rem)/1.3 var(--sans);letter-spacing:.01em;color:var(--ink-muted)}

/* ============ LAUNCHPAD BENTO ============ */
.launchpad{padding:120px 0;background:var(--paper-warm);border-bottom:1px solid var(--line)}
/* ===== Citadel — CUI enclave + defense-in-depth (its own visual language) ===== */
.citadel-sec{padding:120px 0;background:var(--paper);border-bottom:1px solid var(--line)}
.cit-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:30px;margin-top:54px;align-items:stretch}
@media(max-width:900px){.cit-grid{grid-template-columns:1fr;gap:20px}}

/* dark enclave panel */
.cit-enclave{background:var(--terminal-bg);border:1px solid #20242a;position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:480px}
.cit-enclave::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 47%,rgba(222,60,75,.12),transparent 62%);pointer-events:none;z-index:0}
.ce-head{display:flex;align-items:center;gap:9px;padding:15px 20px;border-bottom:1px solid rgba(255,255,255,.06);font:600 11px/1 var(--mono);letter-spacing:.16em;color:rgba(232,232,230,.82);position:relative;z-index:2}
.ce-head b{color:var(--brand-red);margin-left:auto;font-weight:700;letter-spacing:.1em}
.ce-stage{flex:1;display:flex;align-items:center;justify-content:center;padding:18px;position:relative;z-index:1}
.ce-svg{width:100%;max-width:410px;height:auto;display:block}
.ce-foot{display:flex;gap:7px 16px;flex-wrap:wrap;padding:13px 20px;border-top:1px solid rgba(255,255,255,.06);font:600 11px/1.4 var(--mono);letter-spacing:.03em;color:rgba(232,232,230,.5);position:relative;z-index:2}
.ce-foot b{color:#fff}
.ce-foot .ce-ok{color:var(--term-green)}
/* svg pieces */
.ce-band1{fill:rgba(222,60,75,.05)}
.ce-band2{fill:rgba(255,255,255,.022)}
.ce-band3{fill:rgba(255,255,255,.04)}
.ce-band4{fill:rgba(255,255,255,.06)}
.ce-ring{fill:none;stroke:rgba(255,255,255,.13);stroke-width:1.1}
.ce-ring.mon{stroke:rgba(22,163,74,.45)}
.ce-boundary{fill:none;stroke:var(--brand-red);stroke-width:2;stroke-dasharray:7 7}
.ce-core{fill:rgba(222,60,75,.18);stroke:var(--brand-red);stroke-width:1.6}
.ce-core-l{fill:#fff;font:700 16px var(--orbit);letter-spacing:.1em;text-anchor:middle}
.ce-core-s{fill:rgba(232,232,230,.5);font:600 7px var(--mono);letter-spacing:.18em;text-anchor:middle}
.ce-num circle{fill:var(--terminal-bg);stroke:rgba(255,255,255,.22)}
.ce-num.b circle{stroke:var(--brand-red)}
.ce-num text{fill:rgba(232,232,230,.92);font:700 9px var(--mono);text-anchor:middle}
.ce-scan{fill:none;stroke:rgba(222,60,75,.5);stroke-width:1.5}
/* animation (gated; reduced-motion disables via global *{animation:none}) — calm, no strobing radar.
   the perimeter slowly patrols, a soft pulse sweeps inward through the layers, the core breathes. */
.anim .ce-boundary{transform-box:view-box;transform-origin:210px 206px;animation:ceRotate 64s linear infinite}
@keyframes ceRotate{to{transform:rotate(360deg)}}
.anim .ce-glow{animation:ceGlow 5.6s ease-in-out infinite}
@keyframes ceGlow{0%,100%{opacity:1}50%{opacity:.4}}
.anim .ce-scan{transform-box:view-box;transform-origin:210px 206px;opacity:0;animation:ceScanIn 5.6s cubic-bezier(.45,0,.5,1) infinite}
.anim .ce-scan.s2{animation-delay:2.8s}
@keyframes ceScanIn{0%{transform:scale(1);opacity:0}13%{opacity:.5}86%{opacity:.08}100%{transform:scale(.205);opacity:0}}
.anim .ce-core{transform-box:fill-box;transform-origin:center;animation:cePulse 3.6s ease-in-out infinite}
@keyframes cePulse{0%,100%{opacity:1}50%{opacity:.76}}

/* layer legend */
.cit-layers{display:flex;flex-direction:column;gap:12px;justify-content:center}
.cl-eyebrow{font:600 11px/1 var(--mono);letter-spacing:.2em;color:var(--brand-red);text-transform:uppercase;margin-bottom:4px}
.cl-item{display:flex;gap:15px;align-items:flex-start;padding:15px 18px;background:var(--paper-card);border:1px solid var(--line);transition:transform .35s var(--ease),border-color .35s var(--ease),box-shadow .35s var(--ease)}
.cl-item:hover{transform:translateX(4px);border-color:var(--line-dark);box-shadow:var(--shadow-soft)}
.cl-num{width:30px;height:30px;flex:none;display:flex;align-items:center;justify-content:center;font:700 12px var(--orbit);color:#fff;background:var(--ink)}
.cl-item.core .cl-num{background:var(--brand-red)}
.cl-item.bound .cl-num{background:var(--brand-red)}
.cl-name{font:700 14px/1.25 var(--orbit);color:var(--ink);letter-spacing:-.01em}
.cl-map{font:400 12.5px/1.5 var(--mono);color:var(--ink-muted);margin-top:3px}
.cl-map strong{color:var(--ink-soft);font-weight:700}

/* facts strip + cta */
.cit-facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.cit-facts span{font:600 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);background:var(--paper-card);border:1px solid var(--line);padding:9px 14px}
.cit-facts span i{color:var(--brand-red);font-style:normal;margin-right:7px}
.cit-sec-cta{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:30px}
.cit-sec-note{font:500 11.5px/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}
.cit-partner{display:inline-flex;align-items:center;gap:10px;margin-top:24px;font:500 12.5px/1.5 var(--mono);letter-spacing:.03em;color:var(--ink-muted)}
.cit-partner::before{content:"";width:18px;height:1px;background:var(--brand-red);flex:none}
.cit-partner strong{color:var(--ink-soft);font-weight:700}

/* ===== Strategic Partnerships — vCISO / vCTO / vCAIO ===== */
.partners{padding:120px 0;background:var(--ink);color:var(--paper);position:relative;overflow:hidden}
.partners::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 26%,rgba(222,60,75,.16),transparent 52%),radial-gradient(circle at 82% 78%,rgba(255,71,87,.09),transparent 48%);pointer-events:none}
.partners .wrap{position:relative;z-index:2}
.partners .eyebrow{color:rgba(247,248,249,.62)}
.partners .eyebrow .eb-t{color:var(--red-bright)}
.partners h2{color:#fff}
.partners h2 .red{color:var(--red-bright)}
.partners .caption{color:rgba(247,248,249,.66)}
.sp-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:54px;align-items:center}
@media(max-width:900px){.sp-grid{grid-template-columns:1fr;gap:28px}}
.sp-viz{background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09);position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:476px}
.sp-vhead{display:flex;align-items:center;gap:9px;padding:15px 20px;border-bottom:1px solid rgba(255,255,255,.07);font:600 11px/1 var(--mono);letter-spacing:.16em;color:rgba(232,232,230,.82)}
.sp-vhead b{color:var(--red-bright);margin-left:auto;font-weight:700;letter-spacing:.1em}
.sp-vhead .sp-dot{width:7px;height:7px;border-radius:50%;background:var(--red-bright);flex:none}
.anim .sp-vhead .sp-dot{animation:sp-dotpulse 2.4s ease-in-out infinite}
.sp-stage{flex:1;display:flex;align-items:center;justify-content:center;padding:20px;position:relative}
.sp-svg{width:100%;max-width:400px;height:auto;display:block}
.sp-vfoot{display:flex;gap:7px 18px;flex-wrap:wrap;padding:13px 20px;border-top:1px solid rgba(255,255,255,.07);font:600 11px/1.4 var(--mono);letter-spacing:.03em;color:rgba(232,232,230,.5)}
.sp-vfoot b{color:#fff}
.sp-orbit{fill:none;stroke:rgba(255,255,255,.12);stroke-width:1;stroke-dasharray:2 8;transform-box:view-box;transform-origin:210px 210px}
.anim .sp-orbit{animation:sp-spin 64s linear infinite}
.sp-orbit2{fill:none;stroke:rgba(255,255,255,.07);stroke-width:1}
.sp-link{fill:none;stroke:rgba(255,255,255,.13);stroke-width:1.4}
.sp-flow{fill:none;stroke:var(--red-bright);stroke-width:2;stroke-linecap:round;stroke-dasharray:5 150}
.anim .sp-flow{animation:sp-flow 2.6s linear infinite}
.anim .sp-flow.d2{animation-delay:.87s}
.anim .sp-flow.d3{animation-delay:1.73s}
.sp-node{fill:var(--red-bright)}
.anim .sp-node{animation:sp-dotpulse 2.4s ease-in-out infinite}
.sp-sat{fill:#1b1c1f;stroke:rgba(255,255,255,.2);stroke-width:1.3}
.sp-sat-l{fill:#fff;font:700 13px/1 var(--orbit);text-anchor:middle;letter-spacing:.01em}
.sp-sat-s{fill:rgba(247,248,249,.55);font:600 6.6px/1 var(--mono);text-anchor:middle;letter-spacing:.14em}
.sp-core-ring{fill:none;stroke:var(--red-bright);stroke-width:1.5;opacity:.5;transform-box:view-box;transform-origin:210px 210px}
.anim .sp-core-ring{animation:sp-corering 3s ease-in-out infinite}
.sp-core{fill:var(--brand-red);stroke:var(--red-bright);stroke-width:1}
.anim .sp-core{animation:sp-corepulse 3s ease-in-out infinite}
.sp-core-l{fill:#fff;font:700 12px/1 var(--orbit);text-anchor:middle;letter-spacing:.03em}
.sp-core-s{fill:rgba(255,255,255,.82);font:600 7.5px/1 var(--mono);text-anchor:middle;letter-spacing:.13em}
@keyframes sp-spin{to{transform:rotate(360deg)}}
@keyframes sp-flow{0%{stroke-dashoffset:155}100%{stroke-dashoffset:5}}
@keyframes sp-corepulse{0%,100%{opacity:1}50%{opacity:.85}}
@keyframes sp-corering{0%{transform:scale(1);opacity:.55}70%{opacity:0}100%{transform:scale(1.85);opacity:0}}
@keyframes sp-dotpulse{0%,100%{opacity:1}50%{opacity:.35}}
html.io-fallback .sp-orbit,html.io-fallback .sp-flow,html.io-fallback .sp-core,html.io-fallback .sp-core-ring,html.io-fallback .sp-node,html.io-fallback .sp-dot{animation:none!important}
.sp-roles{display:flex;flex-direction:column;gap:14px}
.sp-role{display:flex;gap:16px;padding:22px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);transition:transform .3s var(--ease),border-color .3s var(--ease),background .3s var(--ease)}
.sp-role:hover{transform:translateX(5px);border-color:rgba(255,71,87,.4);background:rgba(255,71,87,.05)}
.sp-role-ic{width:46px;height:46px;flex:none;border:1px solid rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;color:var(--red-bright)}
.sp-role-ic svg{width:23px;height:23px}
.sp-role-role{font:600 10px/1 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:rgba(247,248,249,.5);margin-bottom:7px}
.sp-role h3{font:700 1.18rem/1 var(--orbit);color:#fff;margin-bottom:9px;letter-spacing:.01em}
.sp-role p{font:400 13px/1.6 var(--sans);color:rgba(247,248,249,.68);margin-bottom:13px}
.sp-tags{display:flex;flex-wrap:wrap;gap:7px}
.sp-tags span{font:600 9.5px/1 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:rgba(247,248,249,.64);border:1px solid rgba(255,255,255,.13);padding:6px 9px}
.sp-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;flex-wrap:wrap;margin-top:44px;padding-top:34px;border-top:1px solid rgba(255,255,255,.08)}
.sp-engage{display:flex;flex-direction:column;gap:13px}
.sp-engage-l{font:600 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(247,248,249,.5)}
.sp-chips{display:flex;flex-wrap:wrap;gap:9px}
.sp-chips span{font:600 11px/1 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);padding:9px 14px}
.sp-chips span i{color:var(--red-bright);font-style:normal;margin-right:7px}
.sp-cta{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.sp-cta-note{font:500 11px/1.5 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:rgba(247,248,249,.45);text-align:right;max-width:30ch}
@media(max-width:680px){.sp-bottom{flex-direction:column;align-items:flex-start}.sp-cta{align-items:flex-start;width:100%}.sp-cta .btn{width:100%}.sp-cta-note{text-align:left}}

/* ===== Meter — managed networking ===== */
.meter-sec{padding:120px 0;background:var(--paper-warm);border-bottom:1px solid var(--line)}
.meter-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:30px;margin-top:50px;align-items:stretch}
@media(max-width:900px){.meter-grid{grid-template-columns:1fr;gap:20px}}
.meter-viz{background:var(--paper-card);border:1px solid var(--line);position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:430px;box-shadow:var(--shadow-soft)}
.mv-head{display:flex;align-items:center;gap:9px;padding:15px 20px;border-bottom:1px solid var(--line);font:600 11px/1 var(--mono);letter-spacing:.13em;color:var(--ink-muted)}
.mv-head b{margin-left:auto;color:var(--brand-red);font-weight:700;letter-spacing:.07em}
.mv-stage{flex:1;display:flex;align-items:center;justify-content:center;padding:12px}
.mv-svg{width:100%;max-width:470px;height:auto;display:block}
.mv-link{stroke:var(--line-dark);stroke-width:1.4;stroke-dasharray:5 6;fill:none}
.anim .mv-link{animation:mvFlow 2.6s linear infinite}
@keyframes mvFlow{to{stroke-dashoffset:-22}}
.mv-node{fill:#fff;stroke:var(--line-dark);stroke-width:1.4}
.mv-dot{fill:var(--ink-soft)}
.anim .mv-dot{animation:mvBlink 3.2s ease-in-out infinite}
.mv-dot.d2{animation-delay:.5s}.mv-dot.d3{animation-delay:1s}.mv-dot.d4{animation-delay:1.5s}.mv-dot.d5{animation-delay:2s}
@keyframes mvBlink{0%,100%{opacity:1}50%{opacity:.35}}
.mv-hub{fill:var(--red-tint);stroke:var(--brand-red);stroke-width:1.8}
.mv-hub-core{fill:var(--brand-red)}
.anim .mv-hub-core{animation:mvPulse 2.8s ease-in-out infinite}
@keyframes mvPulse{0%,100%{opacity:1}50%{opacity:.5}}
.mv-rip{fill:none;stroke:var(--brand-red);stroke-width:1.3;opacity:0}
.anim .mv-rip{transform-box:view-box;transform-origin:240px 190px;animation:mvRipple 3.4s ease-out infinite}
@keyframes mvRipple{0%{transform:scale(.5);opacity:.45}80%{opacity:0}100%{transform:scale(1.5);opacity:0}}
.mv-label{fill:var(--ink-muted);font:600 9px var(--mono);letter-spacing:.1em;text-anchor:middle;text-transform:uppercase}
.mv-hub-l{fill:var(--ink);font:700 11px var(--orbit);letter-spacing:.05em;text-anchor:middle}
.mv-hub-s{fill:var(--ink-muted);font:600 7px var(--mono);letter-spacing:.16em;text-anchor:middle}
.meter-benefits{display:flex;flex-direction:column;justify-content:center}
.mb-eyebrow{font:600 11px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--brand-red);margin-bottom:20px}
.mb-list{list-style:none;margin:0 0 28px;padding:0;display:flex;flex-direction:column;gap:16px}
.mb-list li{display:flex;gap:13px;align-items:flex-start;font:400 14.5px/1.5 var(--mono);color:var(--ink-soft)}
.mb-list li strong{color:var(--ink);font-weight:700}
.mb-check{width:22px;height:22px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--red-tint);color:var(--brand-red);font-weight:700;font-size:12px;margin-top:1px}
.meter-note{font:500 11px/1.5 var(--mono);letter-spacing:.06em;color:var(--ink-muted);margin-top:18px}
.mv-foot{display:flex;gap:7px 18px;flex-wrap:wrap;padding:13px 20px;border-top:1px solid var(--line);font:700 11px/1.4 var(--mono);letter-spacing:.05em;color:var(--ink-muted)}
.mv-foot span{display:flex;align-items:center;gap:6px}
.mv-foot b{color:var(--ink);font-weight:800}
.mv-foot i{font-style:normal;color:var(--brand-red);font-weight:800}
.mv-pulse{fill:var(--brand-red)}
.mv-pulse.g{fill:var(--status-green)}
.mv-pulse.k{fill:var(--ink-soft)}
.anim .mv-pulse{opacity:0;animation:mvTravel var(--dur,3s) linear infinite}
@keyframes mvTravel{0%{opacity:0;transform:translate(0,0)}12%{opacity:1}66%{opacity:1;transform:var(--mv-to)}80%{opacity:0;transform:var(--mv-to)}100%{opacity:0}}
.mv-rip.r2{animation-delay:1.15s}.mv-rip.r3{animation-delay:2.3s}
.meter-bundle{background:var(--paper-card);border:1px solid var(--line);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;overflow:hidden}
.mh-sq{width:7px;height:7px;background:var(--brand-red);flex:none}
.mb-body{flex:1;display:flex;flex-direction:column;justify-content:center;padding:28px 30px}
.mb-cta{width:100%;justify-content:center;margin-top:4px}
.mbundle-list{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:15px}
.mbundle-list li{display:flex;gap:12px;align-items:flex-start;font:400 14px/1.45 var(--mono);color:var(--ink-soft)}
.mbundle-list li strong{color:var(--ink);font-weight:700}
.mb-flatfee{border:1px solid var(--brand-red);background:var(--red-tint);padding:18px 20px;margin-bottom:20px}
.ff-label{display:block;font:600 11px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted)}
.ff-value{display:block;font:900 clamp(21px,2.8vw,30px)/1.04 var(--orbit);color:var(--brand-red);margin:8px 0 6px;text-transform:uppercase;letter-spacing:.01em}
.ff-sub{display:block;font:500 11.5px/1.4 var(--mono);letter-spacing:.04em;color:var(--ink-muted)}
/* networking topology: gateway → switch → access points */
.net-box{fill:#fff;stroke:var(--line-dark);stroke-width:1.5}
.net-box.gw{stroke:var(--brand-red);stroke-width:1.8}
.net-box-l{fill:var(--ink);font:700 11px var(--orbit);letter-spacing:.07em;text-anchor:middle}
.net-sub{fill:var(--ink-muted);font:600 7px var(--mono);letter-spacing:.13em;text-anchor:middle}
.net-led{fill:var(--brand-red)}
.anim .net-led{animation:mvBlink 2.4s ease-in-out infinite}
.net-port{fill:var(--line-dark)}
.net-port.on{fill:var(--status-green)}
.anim .net-port.on{animation:mvBlink 1.5s ease-in-out infinite}
.net-ap{fill:var(--red-tint);stroke:var(--brand-red);stroke-width:1.6}
.net-ap-core{fill:var(--brand-red)}
.ap-wifi{fill:none;stroke:var(--brand-red);stroke-width:1.4;opacity:0}
.anim .ap-wifi{animation:apWifi 3s ease-out infinite}
@keyframes apWifi{0%{r:7px;opacity:.5}80%{opacity:.05}100%{r:30px;opacity:0}}
/* realistic gear: cloud, gateway face + status LEDs, switch RJ45 ports, client devices */
.net-cloud{fill:#fff;stroke:var(--line-dark);stroke-width:1.5}
.net-face{fill:var(--ink)}
.net-vent{stroke:rgba(255,255,255,.28);stroke-width:1}
.gw-led{fill:var(--line-dark)}
.gw-led.g{fill:var(--status-green)}.gw-led.a{fill:#E0A400}
.anim .gw-led.bl{animation:mvBlink 1.5s ease-in-out infinite}
.sw-port{fill:var(--ink)}
.sw-pled{fill:var(--line-dark)}
.sw-pled.on{fill:var(--status-green)}.sw-pled.amb{fill:#E0A400}
.anim .sw-pled.on,.anim .sw-pled.amb{animation:swBlink 1s steps(1) infinite}
@keyframes swBlink{0%,70%{opacity:1}71%,100%{opacity:.25}}
.dev{fill:none;stroke:var(--ink-soft);stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}
.dev-fill{fill:var(--ink-soft)}
.dev-screen{fill:var(--paper-warm);stroke:var(--ink-soft);stroke-width:1.5}
.dev-link{stroke:var(--line-dark);stroke-width:1.2;stroke-dasharray:3 4;fill:none}
.anim .dev-link{animation:mvFlow 1.9s linear infinite}
.bento{
  display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(170px,auto);
  gap:16px;margin-top:60px;
}
.cell{
  background:var(--paper-card);border:1px solid var(--line);border-radius:0;
  padding:26px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;
  position:relative;overflow:hidden;
  transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease);
}
.cell:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft);border-color:var(--line-dark)}
/* red crosshair corner tick on hover */
.cell:not(.cell-hero)::after{
  content:"+";position:absolute;top:10px;right:14px;font:400 16px/1 var(--mono);
  color:var(--brand-red);opacity:0;transition:opacity .3s;pointer-events:none;
}
.cell:not(.cell-hero):hover::after{opacity:1}
.cell-hero{grid-column:1/3;grid-row:1/3;padding:0;justify-content:flex-start;gap:0}
.cell-label{font:700 14px/1.3 var(--orbit);letter-spacing:-.01em}
.cell-tag{font:500 10.5px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);margin-top:6px}
/* dashboard mockup */
.dash{display:flex;flex-direction:column;height:100%}
.dash-head{
  display:flex;align-items:center;gap:10px;padding:16px 22px;border-bottom:1px solid var(--line);
  font:500 11.5px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);
}
.dash-head b{color:var(--ink);font-weight:700;margin-left:auto;letter-spacing:.04em}
.dash-rows{padding:8px 22px;flex:1}
.dash-row{
  display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--paper);
  font:500 12.5px/1 var(--mono);color:var(--ink-soft);
}
.dash-row:last-child{border-bottom:none}
.d-dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--status-green)}
.anim .d-dot{animation:dot-settle 14s ease-in-out infinite;animation-delay:var(--dd,0s)}
@keyframes dot-settle{0%,2%{background:var(--term-amber)}5%,100%{background:var(--status-green)}}
.d-name{flex:1}
.d-os{color:var(--ink-muted);font-size:11px}
.d-ok{color:var(--status-green);font-size:11px;letter-spacing:.1em}
/* issue-cycle rows: an issue appears (amber + PATCH PENDING), then auto-resolves
   to green a beat later — gentle 16s loop, offset per row */
.d-state{position:relative;display:inline-flex;justify-content:flex-end;min-width:96px}
.d-issue{
  position:absolute;right:0;top:50%;transform:translateY(-50%);opacity:0;
  color:#B45309;font-size:11px;letter-spacing:.1em;white-space:nowrap;
}
.anim .d-cycle .d-dot{animation:cy-dot 16s ease-in-out var(--cyd,0s) infinite}
.anim .d-cycle .d-issue{animation:cy-issue 16s ease-in-out var(--cyd,0s) infinite}
.anim .d-cycle .d-ok{animation:cy-ok 16s ease-in-out var(--cyd,0s) infinite}
@keyframes cy-dot{0%,12%{background:var(--status-green)}16%,38%{background:var(--term-amber)}43%,100%{background:var(--status-green)}}
@keyframes cy-issue{0%,12%{opacity:0}16%,38%{opacity:1}43%,100%{opacity:0}}
@keyframes cy-ok{0%,12%{opacity:1}16%,38%{opacity:0}43%,100%{opacity:1}}
html.io-fallback .d-cycle .d-dot,html.io-fallback .d-cycle .d-issue,html.io-fallback .d-cycle .d-ok{animation:none!important}
/* AI prevention micro-moment: a tiny mono toast flashes in as win-dev-07 auto-resolves
   (just after the amber clears at ~43% of the 16s loop), then fades out.
   Anchored to the row, sitting just left of the status column so it never clips. */
.d-cycle{position:relative}
.d-toast{
  position:absolute;right:118px;top:50%;transform:translateY(-50%) scale(.9);opacity:0;
  display:inline-flex;align-items:center;white-space:nowrap;pointer-events:none;
  font:700 9.5px/1 var(--mono);letter-spacing:.06em;color:var(--status-green);
  background:#EAF7EF;border:1px solid rgba(22,163,74,.34);border-radius:0;padding:5px 8px;
  box-shadow:0 8px 18px -8px rgba(22,163,74,.45);
}
.anim .d-cycle .d-toast{animation:cy-toast 16s ease-in-out var(--cyd,0s) infinite}
@keyframes cy-toast{0%,40%{opacity:0;transform:translateY(-50%) scale(.9)}45%,60%{opacity:1;transform:translateY(-50%) scale(1)}70%,100%{opacity:0;transform:translateY(-50%) scale(.96)}}
html.io-fallback .d-cycle .d-toast{animation:none!important;opacity:0!important}
.dash-foot{
  display:flex;align-items:center;gap:16px;padding:14px 22px;border-top:1px solid var(--line);
  font:500 11.5px/1 var(--mono);letter-spacing:.08em;color:var(--ink-muted);
}
.dash-foot b{color:var(--ink)}
.tk-chip{
  display:inline-flex;align-items:center;gap:5px;flex:none;
  font:700 10.5px/1 var(--mono);letter-spacing:.1em;color:var(--status-green);
  background:#EAF7EF;border:1px solid rgba(22,163,74,.3);border-radius:0;padding:7px 10px;
}
.tk-chip b{color:inherit}
.spark{margin-left:auto}
.spark polyline{
  fill:none;stroke:var(--brand-red);stroke-width:1.8;stroke-linecap:round;
}
.anim .spark polyline{stroke-dasharray:220;stroke-dashoffset:220;animation:spark-draw 8s var(--ease) infinite}
@keyframes spark-draw{0%{stroke-dashoffset:220;opacity:1}35%,85%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
/* micro visuals */
.micro{height:64px;display:flex;align-items:center}
.shield-svg path.s-outline{fill:none;stroke:var(--ink);stroke-width:1.6}
.shield-svg path.s-check{fill:none;stroke:var(--status-green);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:30;stroke-dashoffset:0}
/* reveal draw uses a transition so the hover redraw (animation) can replay cleanly */
.anim .cell .shield-svg path.s-check{stroke-dashoffset:30;transition:stroke-dashoffset 1s var(--ease) .5s}
.anim .cell.in .shield-svg path.s-check{stroke-dashoffset:0}
.anim .cell:hover .shield-svg path.s-check{animation:check-draw .8s var(--ease)}
@keyframes check-draw{from{stroke-dashoffset:30}to{stroke-dashoffset:0}}
html.io-fallback .cell .shield-svg path.s-check{transition:none!important;stroke-dashoffset:0!important}
/* hover: radar fires a quick sweep, price chip flips, badge re-flips,
   licence chips ripple-pop, audit tick re-pops */
.anim .cell:hover .radar-sweep,.anim .cell:hover .radar-blip{animation-duration:1.4s}
.anim .cell:hover .price-chip{animation:price-flip .8s var(--ease)}
@keyframes price-flip{0%{transform:perspective(460px) rotateY(0)}45%{transform:perspective(460px) rotateY(16deg)}100%{transform:perspective(460px) rotateY(0)}}
.anim .cell:hover .id-badge{animation:badge-flip-once .9s var(--ease)}
@keyframes badge-flip-once{0%{transform:perspective(500px) rotateY(0)}45%{transform:perspective(500px) rotateY(22deg)}100%{transform:perspective(500px) rotateY(0)}}
.anim .cell:hover .lic-chips span{animation:chip-pop .45s cubic-bezier(.3,1.7,.45,1)}
.anim .cell:hover .lic-chips span:nth-child(2){animation-delay:.05s}
.anim .cell:hover .lic-chips span:nth-child(3){animation-delay:.1s}
.anim .cell:hover .lic-chips span:nth-child(4){animation-delay:.15s}
.anim .cell:hover .lic-chips span:nth-child(5){animation-delay:.2s}
@keyframes chip-pop{0%{transform:scale(1)}40%{transform:scale(1.12)}100%{transform:scale(1)}}
.anim .cell:hover .doc-tick{animation:tick-pop .55s cubic-bezier(.3,1.7,.45,1)}
@keyframes tick-pop{0%{transform:scale(.4)}100%{transform:scale(1)}}
.radar{position:relative;width:58px;height:58px;flex:none}
.radar::before{content:"";position:absolute;inset:0;border:1.5px solid var(--line-dark);border-radius:50%}
.radar::after{content:"";position:absolute;inset:14px;border:1.5px solid var(--line);border-radius:50%}
.radar-sweep{
  position:absolute;inset:0;border-radius:50%;
  background:conic-gradient(from 0deg,rgba(222,60,75,.35),transparent 70deg,transparent);
}
.anim .radar-sweep{animation:sweep 4s linear infinite}
@keyframes sweep{to{transform:rotate(360deg)}}
.radar-blip{position:absolute;top:14px;right:13px;width:6px;height:6px;border-radius:50%;background:var(--brand-red)}
.anim .radar-blip{animation:blip 4s ease-out infinite}
@keyframes blip{0%,8%{opacity:1;box-shadow:0 0 0 0 rgba(222,60,75,.5)}30%{opacity:1;box-shadow:0 0 0 8px rgba(222,60,75,0)}60%,100%{opacity:.25}}
.price-chip{
  font:700 clamp(1.3rem,2vw,1.7rem)/1 var(--mono);letter-spacing:-.02em;color:var(--ink);
  background:var(--red-tint);border:1px solid rgba(222,60,75,.25);border-radius:0;padding:14px 18px;
}
.price-chip small{display:block;font:500 10px/1 var(--mono);letter-spacing:.14em;color:var(--ink-muted);margin-top:8px;text-transform:uppercase}
.lic-chips{display:flex;gap:8px;flex-wrap:wrap;height:auto;min-height:64px}
.lic-chips span{
  font:500 11px/1 var(--mono);letter-spacing:.1em;color:var(--ink-soft);
  border:1px solid var(--line-dark);border-radius:0;padding:8px 10px;background:var(--paper);
  align-self:center;
}
.id-badge{
  width:96px;height:60px;border-radius:0;background:linear-gradient(135deg,#fff,var(--paper-warm));
  border:1px solid var(--line-dark);box-shadow:0 8px 18px -8px rgba(18,18,18,.2);
  padding:9px 11px;
}
.anim .id-badge{animation:badge-flip 9s ease-in-out infinite}
@keyframes badge-flip{0%,78%,100%{transform:perspective(500px) rotateY(0)}86%,92%{transform:perspective(500px) rotateY(18deg)}}
.id-badge .id-photo{width:16px;height:16px;border-radius:50%;background:var(--brand-red);opacity:.85;margin-bottom:7px}
.id-badge .id-line{height:4px;border-radius:0;background:var(--line-dark);margin-bottom:5px}
.id-badge .id-line.short{width:60%}
.doc-glyph{position:relative;width:50px;height:62px;border:1.6px solid var(--ink);border-radius:0;padding:10px 9px;flex:none}
.doc-glyph i{display:block;height:3px;border-radius:0;background:var(--line-dark);margin-bottom:7px}
.doc-glyph .doc-tick{
  position:absolute;right:-10px;bottom:-10px;width:26px;height:26px;border-radius:50%;
  background:var(--status-green);color:#fff;display:flex;align-items:center;justify-content:center;
  font:700 13px/1 var(--mono);box-shadow:0 4px 10px -2px rgba(22,163,74,.5);
}

/* ---- full-stack capability rail: one connected console strip ---- */
.caprail{position:relative;margin-top:40px;padding:6px 2px}
.caprail-wire{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);width:100%;height:8px;overflow:visible}
.cr-track{stroke:var(--line-dark);stroke-width:1.4}
.cr-pulse{stroke:var(--brand-red);stroke-width:1.8;stroke-linecap:round;stroke-dasharray:60 1140;stroke-dashoffset:60;opacity:.85}
.anim .cr-pulse{animation:cr-travel 5.5s linear infinite}
@keyframes cr-travel{from{stroke-dashoffset:60}to{stroke-dashoffset:-1140}}
html:not(.anim) .cr-pulse,html.io-fallback .cr-pulse{animation:none!important;opacity:0!important}
.caprail-nodes{
  position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:10px 8px;
}
.cr-node{
  display:inline-flex;align-items:center;gap:7px;
  font:700 10.5px/1 var(--mono);letter-spacing:.12em;color:var(--ink-soft);
  background:var(--paper-card);border:1px solid var(--line-dark);border-radius:0;
  padding:9px 13px;white-space:nowrap;
  box-shadow:0 6px 16px -12px rgba(18,18,18,.22);
  transition:transform .35s var(--ease),border-color .35s var(--ease),box-shadow .35s var(--ease);
}
.cr-node .cr-dot{width:6px;height:6px;border-radius:50%;background:var(--status-green);flex:none}
.cr-node-ai{border-color:rgba(222,60,75,.32);color:var(--ink)}
.cr-node-ai .cr-dot{background:var(--brand-red)}
.anim .cr-node-ai .cr-dot{animation:cr-aipulse 2.2s ease-in-out infinite}
@keyframes cr-aipulse{0%,100%{box-shadow:0 0 0 0 rgba(222,60,75,.45)}50%{box-shadow:0 0 0 5px rgba(222,60,75,0)}}
html:not(.anim) .cr-node-ai .cr-dot,html.io-fallback .cr-node-ai .cr-dot{animation:none!important}
.caprail:hover .cr-node{transform:translateY(-2px);border-color:var(--line-dark);box-shadow:0 10px 22px -14px rgba(18,18,18,.28)}
/* staggered draw-in: nodes rise in sequence when the rail reveals */
.anim .caprail .cr-node{opacity:0;transform:translateY(10px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.anim .caprail.in .cr-node{opacity:1;transform:none}
.anim .caprail.in .cr-node:nth-child(2){transition-delay:.06s}
.anim .caprail.in .cr-node:nth-child(3){transition-delay:.12s}
.anim .caprail.in .cr-node:nth-child(4){transition-delay:.18s}
.anim .caprail.in .cr-node:nth-child(5){transition-delay:.24s}
.anim .caprail.in .cr-node:nth-child(6){transition-delay:.3s}
.anim .caprail.in .cr-node:nth-child(7){transition-delay:.36s}
html.io-fallback .caprail .cr-node{opacity:1!important;transform:none!important;transition:none!important}

/* bento footnote */
.bento-foot{
  margin-top:18px;font:500 11px/1.5 var(--mono);letter-spacing:.02em;color:var(--ink-muted);
}

/* 6th licence chip ripple-pop on hover */
.anim .cell:hover .lic-chips span:nth-child(6){animation:chip-pop .45s cubic-bezier(.3,1.7,.45,1);animation-delay:.25s}

/* ============ TIMELINE ============ */
.timeline{padding:120px 0;border-bottom:1px solid var(--line)}
.tl-stack{margin-top:56px;display:flex;flex-direction:column;gap:14px}
.tl-panel{position:relative;border:1px solid var(--line);border-radius:0;overflow:hidden;background:#fff}
.tl-annual{
  background:linear-gradient(180deg,var(--paper) 0%,#fff 85%);
  box-shadow:0 14px 36px -24px rgba(18,18,18,.14);
}
.tl-marfi{
  border-color:rgba(222,60,75,.3);
  background:radial-gradient(130% 170% at 88% -12%,rgba(222,60,75,.07),#fff 55%);
  box-shadow:0 34px 80px -30px rgba(222,60,75,.26),0 14px 34px -20px rgba(18,18,18,.16);
}
/* monitoring-console header strip */
.tl-head{
  display:flex;align-items:center;gap:11px;padding:13px 20px;
  font:700 11px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;
  border-bottom:1px solid var(--line);
}
.tl-annual .tl-head{color:var(--ink-muted);background:rgba(18,18,18,.025)}
.tl-marfi .tl-head{color:var(--ink);background:rgba(222,60,75,.055);border-bottom-color:rgba(222,60,75,.18)}
.tl-status{width:9px;height:9px;border-radius:0;flex:none}
.sq-dim{background:var(--line-dark)}
.sq-live{background:var(--brand-red)}
.anim .sq-live{animation:pulse-sq 2s ease-in-out infinite}
@keyframes pulse-sq{0%,100%{box-shadow:0 0 0 0 rgba(222,60,75,.45)}50%{box-shadow:0 0 0 6px rgba(222,60,75,0)}}
.tl-mode{margin-left:auto;font-weight:500;font-size:10px;letter-spacing:.16em;color:var(--ink-muted);flex:none}
.tl-marfi .tl-mode{color:var(--brand-red)}
.tl-vs{display:flex;align-items:center;justify-content:center;gap:16px;margin:2px 0}
.tl-vs::before,.tl-vs::after{content:"";height:1px;width:70px;background:var(--line-dark)}
.tl-vs span{
  font:700 10px/1 var(--mono);letter-spacing:.28em;color:var(--ink-muted);
  border:1px solid var(--line-dark);border-radius:0;padding:6px 7px 6px 11px;background:#fff;
}
.tl-fig{position:relative;padding:30px 22px 12px}
.tl-marfi .tl-fig{padding-bottom:8px}
.tl-svg{width:100%;height:auto}
.tl-month{font:500 19px var(--mono);fill:var(--ink-muted);letter-spacing:.05em}
.tl-annual .tl-month{fill:#A9ABAE}
/* — annual track (the "before": flat, dormant, then panic) — */
#tl-annual-flat{stroke:var(--line-dark);stroke-width:2;fill:none}
#tl-annual-spike{stroke:var(--brand-red);stroke-width:2.4;fill:none;stroke-linejoin:round;stroke-linecap:round}
.tl-empty{fill:var(--paper);stroke:var(--line-dark);stroke-width:1.6}
.anim .tl-empty{opacity:0;transition:opacity .45s ease;transition-delay:calc(.05s + var(--i,0)*.1s)}
.anim .tl-on .tl-empty{opacity:1}
.tl-bandlabel{font:500 12px var(--mono);fill:rgba(222,60,75,.55);letter-spacing:.24em}
.anim .tl-band{opacity:0;transition:opacity .6s var(--ease)}
.anim .tl-spiked .tl-band{opacity:1}
.tl-warn-dot{fill:var(--brand-red);transform-box:fill-box;transform-origin:center}
.anim .tl-warn-dot{opacity:0;transform:scale(.2);transition:opacity .25s var(--ease) .28s,transform .5s cubic-bezier(.3,1.8,.45,1) .28s}
.anim .tl-spiked .tl-warn-dot{opacity:1;transform:scale(1);animation:warn-throb 1.4s ease-in-out .9s infinite}
@keyframes warn-throb{0%,100%{transform:scale(1)}50%{transform:scale(1.3)}}
.tl-warn-ring{fill:none;stroke:var(--brand-red);stroke-width:1.5;opacity:0;transform-box:fill-box;transform-origin:center}
.anim .tl-spiked .tl-warn-ring{animation:hub-ripple 1.8s cubic-bezier(.16,1,.3,1) .9s infinite}
.tl-scramble{
  position:absolute;top:4%;right:1.8%;display:flex;align-items:center;gap:3px;
  font:700 12.5px/1 var(--mono);letter-spacing:.05em;color:var(--brand-red);pointer-events:none;
}
.tl-scramble::after{content:"▍"}
.anim .tl-scramble::after{animation:blink-cur 1s steps(1) infinite}
.anim .tl-scramble{opacity:0}
.anim .tl-spiked .tl-scramble{animation:tl-blink-in .7s steps(1,jump-none) .3s forwards}
@keyframes tl-blink-in{0%{opacity:0}15%{opacity:1}30%{opacity:0}45%{opacity:1}60%{opacity:0}75%,100%{opacity:1}}
.tl-chip{
  position:absolute;display:flex;align-items:center;gap:7px;pointer-events:none;white-space:nowrap;
  font:500 10.5px/1 var(--mono);letter-spacing:.08em;color:var(--brand-red);
  background:#fff;border:1px solid rgba(222,60,75,.35);border-radius:0;padding:7px 10px;
  box-shadow:0 10px 26px -10px rgba(222,60,75,.4);
}
.tl-chip i{width:6px;height:6px;border-radius:50%;background:var(--brand-red);flex:none}
.tlc-1{top:22%;right:17.5%}
.tlc-2{top:46%;right:1.8%}
.anim .tl-chip{opacity:0;transform:translateY(9px) scale(.9);transition:opacity .4s var(--ease),transform .55s cubic-bezier(.3,1.7,.45,1)}
.anim .tlc-1{transition-delay:.55s}
.anim .tlc-2{transition-delay:.72s}
.anim .tl-spiked .tl-chip{opacity:1;transform:none}
/* blind-spot reframe — the quiet months ARE the danger (drifts in during the calm draw) */
.tl-blind-bar{fill:none;stroke:rgba(222,60,75,.42);stroke-width:1.5;stroke-dasharray:4 5}
.tl-blind-label{font:600 12px var(--mono);fill:rgba(222,60,75,.72);letter-spacing:.1em}
.anim .tl-blind{opacity:0;transition:opacity .7s var(--ease) .45s}
.anim .tl-on .tl-blind{opacity:1}
html:not(.anim) .tl-blind{opacity:1}
/* anti-payoff — the believable gut-punch, mirrors MARFI's green "365 DAYS AUDIT-READY" */
.tl-anti{
  width:max-content;margin:-2px 22px 16px auto;display:flex;align-items:center;gap:9px;
  font:700 11px/1 var(--mono);letter-spacing:.13em;color:var(--ink);
  background:#fff;border:1px solid rgba(222,60,75,.4);border-radius:0;padding:10px 14px;
  box-shadow:0 12px 30px -12px rgba(222,60,75,.4);
}
.tl-anti i{width:7px;height:7px;border-radius:50%;background:var(--brand-red);flex:none}
.anim .tl-anti{opacity:0;transform:translateY(10px) scale(.92);transition:opacity .45s var(--ease) .2s,transform .6s cubic-bezier(.3,1.7,.45,1) .2s}
.anim .tl-annual.tl-spiked .tl-anti{opacity:1;transform:none}
.anim .tl-annual.tl-spiked .tl-anti i{animation:pulse-dot 2.2s ease-in-out infinite}
html:not(.anim) .tl-anti{opacity:1}
/* — MARFI track (the "after": alive, continuous) — */
#tl-marfi-line{stroke:var(--brand-red);stroke-width:2.4;fill:none;stroke-linejoin:round;stroke-linecap:round}
#tl-marfi-pulse{stroke:var(--red-bright);stroke-width:3.2;fill:none;stroke-linejoin:round;stroke-linecap:round;opacity:0}
.tl-headdot{opacity:0;transition:opacity .3s ease}
.tl-headdot .hd-halo{fill:rgba(255,71,87,.28)}
.tl-headdot .hd-core{fill:var(--red-bright)}
.tl-check-c{fill:#EAF7EF;stroke:var(--status-green);stroke-width:1.6}
.tl-check-p{stroke:var(--status-green);stroke-width:2.6;fill:none;stroke-linecap:round;stroke-linejoin:round}
.tl-ring{fill:none;stroke:var(--status-green);stroke-width:1.6;opacity:0;transform-box:fill-box;transform-origin:center}
.tl-check{transform-origin:center;transform-box:fill-box}
.anim .tl-check{opacity:0;transform:scale(.25);transition:opacity .3s var(--ease),transform .55s cubic-bezier(.3,1.8,.45,1)}
.anim .tl-check.on,.anim .drawn .tl-check{opacity:1;transform:scale(1)}
.anim .tl-check.on .tl-ring{animation:tl-ringpop .7s var(--ease) .06s}
@keyframes tl-ringpop{0%{opacity:.55;transform:scale(.7)}100%{opacity:0;transform:scale(2)}}
.anim .tl-marfi.drawn .tl-check{animation:tl-breathe 3.4s ease-in-out calc(.6s + var(--i,0)*.22s) infinite}
@keyframes tl-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.07)}}
html:not(.anim) .tl-check{opacity:1}
.tl-payoff{
  width:max-content;margin:6px 0 10px auto;display:flex;align-items:center;gap:9px;
  font:700 11px/1 var(--mono);letter-spacing:.13em;color:var(--ink);
  background:#fff;border:1px solid rgba(22,163,74,.35);border-radius:0;padding:10px 14px;
  box-shadow:0 12px 30px -12px rgba(22,163,74,.4);
}
.tl-payoff i{width:7px;height:7px;border-radius:50%;background:var(--status-green);flex:none}
.anim .tl-marfi.drawn .tl-payoff i{animation:pulse-dot 2.2s ease-in-out infinite}
.anim .tl-payoff{opacity:0;transform:translateY(10px) scale(.92);transition:opacity .45s var(--ease) .15s,transform .6s cubic-bezier(.3,1.7,.45,1) .15s}
.anim .tl-marfi.drawn .tl-payoff{opacity:1;transform:none}
/* timeline io-fallback snap: every gated element straight to final state, no loops */
html.io-fallback .tl-empty,html.io-fallback .tl-band,html.io-fallback .tl-warn-dot,
html.io-fallback .tl-scramble,html.io-fallback .tl-chip,html.io-fallback .tl-payoff,
html.io-fallback .tl-blind,html.io-fallback .tl-anti{
  transition:none!important;animation:none!important;opacity:1!important;transform:none!important;
}
html.io-fallback .tl-ring,html.io-fallback .tl-warn-ring,
html.io-fallback .tl-headdot,html.io-fallback #tl-marfi-pulse{animation:none!important;opacity:0!important}
html.io-fallback .tl-check,html.io-fallback .sq-live,
html.io-fallback .tl-payoff i,html.io-fallback .tl-anti i,html.io-fallback .tl-scramble::after{animation:none!important}

/* ---- frameworks we cover (coverage matrix) ---- */
.fw-block{margin-top:64px;border-top:1px solid var(--line);padding-top:48px}
.fw-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:34px;flex-wrap:wrap}
.fw-eyebrow{display:block;font:500 11px/1 var(--mono);letter-spacing:.16em;color:var(--brand-red);margin-bottom:15px}
.fw-headline h3{font:700 clamp(1.2rem,2.2vw,1.75rem)/1.18 var(--orbit);letter-spacing:-.015em;max-width:22ch;margin:0;color:var(--ink)}
.fw-count{display:flex;align-items:center;gap:15px;flex:none}
.fw-num{font:900 clamp(3.1rem,6vw,4.7rem)/.82 var(--orbit);color:var(--brand-red);letter-spacing:-.02em;text-shadow:0 10px 34px rgba(222,60,75,.28)}
.fw-num-label{font:500 11px/1.35 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted)}
.fw-rows{border:1px solid var(--line);border-radius:0;background:var(--paper-card);overflow:hidden;box-shadow:var(--shadow-soft)}
.fw-row{display:grid;grid-template-columns:228px 1fr;gap:30px;padding:22px 26px;border-bottom:1px solid var(--line);align-items:start}
.fw-row:last-child{border-bottom:none}
.fw-row.fw-fed{background:linear-gradient(90deg,var(--red-tint),rgba(222,60,75,.02))}
.fw-cat{display:flex;align-items:center;gap:10px;font:700 12px/1.3 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink);padding-top:6px}
.fw-cat .fw-dot{width:8px;height:8px;border-radius:0;background:var(--ink-muted);flex:none}
.fw-fed .fw-cat .fw-dot{background:var(--brand-red);box-shadow:0 0 0 4px rgba(222,60,75,.14)}
.fw-cat .fw-ct{margin-left:auto;color:var(--ink-muted);font-weight:500;letter-spacing:.1em}
.fw-chips{display:flex;flex-wrap:wrap;gap:8px}
.fw-chip{font:500 12px/1 var(--mono);letter-spacing:.01em;color:var(--ink-soft);background:var(--paper);border:1px solid var(--line-dark);border-radius:0;padding:9px 11px;white-space:nowrap;transition:transform .25s var(--ease),border-color .22s,color .22s,background .22s,box-shadow .22s}
.fw-chip:hover{transform:translateY(-2px);border-color:var(--brand-red);color:var(--brand-red);background:#fff;box-shadow:0 8px 18px -10px rgba(222,60,75,.55)}
.fw-fed .fw-chip{background:#fff;border-color:rgba(222,60,75,.22)}
.fw-foot{display:flex;align-items:center;gap:11px;margin-top:18px;font:500 12px/1.5 var(--mono);letter-spacing:.03em;color:var(--ink-muted)}
.fw-foot .fw-foot-dot{width:7px;height:7px;border-radius:50%;background:var(--status-green);flex:none}
.anim .fw-foot .fw-foot-dot{animation:pulse-dot 2.2s ease-in-out infinite}
/* staggered chip settle when the matrix reveals */
.anim .fw-rows .fw-chip{opacity:0;transform:translateY(7px)}
.anim .fw-rows.in .fw-chip{opacity:1;transform:none;transition:opacity .4s var(--ease),transform .45s var(--ease)}
.anim .fw-rows.in .fw-chip:nth-child(1){transition-delay:.04s}.anim .fw-rows.in .fw-chip:nth-child(2){transition-delay:.08s}.anim .fw-rows.in .fw-chip:nth-child(3){transition-delay:.12s}.anim .fw-rows.in .fw-chip:nth-child(4){transition-delay:.16s}.anim .fw-rows.in .fw-chip:nth-child(5){transition-delay:.2s}.anim .fw-rows.in .fw-chip:nth-child(6){transition-delay:.24s}.anim .fw-rows.in .fw-chip:nth-child(7){transition-delay:.28s}.anim .fw-rows.in .fw-chip:nth-child(8){transition-delay:.32s}.anim .fw-rows.in .fw-chip:nth-child(9){transition-delay:.36s}.anim .fw-rows.in .fw-chip:nth-child(n+10){transition-delay:.4s}
html.io-fallback .fw-chip{opacity:1!important;transform:none!important;transition:none!important}
@media(max-width:720px){
  .fw-block{margin-top:48px;padding-top:38px}
  .fw-head{margin-bottom:26px;align-items:flex-start}
  .fw-row{grid-template-columns:1fr;gap:13px;padding:18px}
  .fw-cat{padding-top:0}
}

/* ============ CYBERTRUST ============ */
.cybertrust{padding:120px 0;background:var(--paper-warm);border-bottom:1px solid var(--line)}
.ct-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:center}
.ct-right{position:relative;padding-bottom:140px}
.score-card{
  position:absolute;right:-18px;bottom:0;z-index:3;
  background:#fff;border:1px solid var(--line-dark);border-radius:0;
  padding:18px 22px 20px;box-shadow:0 24px 60px -22px rgba(18,18,18,.32),0 2px 8px -3px rgba(18,18,18,.1);
  display:flex;flex-direction:column;gap:16px;width:298px;max-width:calc(100vw - 56px);
}
.score-top{display:flex;align-items:center;gap:18px}
.ring-wrap{position:relative;width:108px;height:108px;flex:none}
.ring-wrap svg{transform:rotate(-90deg)}
.ring-bg{fill:none;stroke:var(--line);stroke-width:7}
.ring-fg{fill:none;stroke:var(--brand-red);stroke-width:7;stroke-linecap:round}
.ring-num{
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  font:700 26px/1 var(--orbit);font-variant-numeric:tabular-nums;
}
.ring-num small{font:500 9.5px/1 var(--mono);letter-spacing:.14em;color:var(--ink-muted);margin-top:5px}
/* springy overshoot on the numeral the moment the ring lands on 87 */
.anim .score-on .ring-num{animation:num-pop .6s cubic-bezier(.3,1.8,.45,1)}
@keyframes num-pop{0%{transform:scale(1)}40%{transform:scale(1.16)}100%{transform:scale(1)}}
html.io-fallback .ring-num{animation:none!important}
.grade-chip{
  font:700 11px/1 var(--mono);letter-spacing:.13em;color:var(--status-green);
  background:#EAF7EF;border:1px solid rgba(22,163,74,.3);border-radius:0;padding:8px 12px;
  align-self:flex-start;
}
/* "Free" pill beside the CyberTrust headline */
.free-chip{
  display:inline-block;vertical-align:.35em;margin-left:14px;
  font:700 12px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;
  color:var(--status-green);background:#EAF7EF;border:1px solid rgba(22,163,74,.3);
  border-radius:0;padding:8px 14px;white-space:nowrap;
}
/* grade chip pops in green once the ring finishes */
.anim .grade-chip{opacity:0;transform:scale(.6);transition:opacity .4s var(--ease) .12s,transform .55s cubic-bezier(.3,1.7,.45,1) .12s}
.anim .score-on .grade-chip{opacity:1;transform:scale(1)}
html.io-fallback .grade-chip{opacity:1!important;transform:none!important;transition:none!important}
.score-meta{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0}
.score-meta .sm-label{font:500 10px/1.4 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--ink-muted)}
/* tiny module score bars under the ring */
.mod-scores{display:flex;flex-direction:column;gap:9px;width:100%;padding-top:14px;margin-top:2px;border-top:1px solid var(--line)}
.ms{display:flex;align-items:center;gap:10px;font:500 9.5px/1 var(--mono);letter-spacing:.12em;color:var(--ink-muted)}
.ms span{width:52px;flex:none}
.ms b{font-weight:700;color:var(--ink);width:18px;text-align:right;font-variant-numeric:tabular-nums}
.ms-bar{flex:1;height:3px;border-radius:0;background:var(--line);overflow:hidden;display:block}
.ms-fill{display:block;height:100%;border-radius:0;background:var(--brand-red);transform:scaleX(var(--p,1));transform-origin:left}
.anim .ms-fill{transform:scaleX(0);transition:transform .9s var(--ease) var(--md,0s)}
.anim .score-on .ms-fill{transform:scaleX(var(--p,1))}
html.io-fallback .ms-fill{transition:none!important;transform:scaleX(var(--p,1))!important}
/* score-card header strip — "Scan complete" + live green dot */
.sc-head{display:flex;align-items:center;justify-content:space-between;
  padding-bottom:12px;margin-bottom:2px;border-bottom:1px solid var(--line)}
.sc-head-label{font:600 9.5px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted)}
.sc-head-dot{display:flex;align-items:center}
.sc-head-dot i{display:block;width:7px;height:7px;border-radius:50%;background:var(--status-green);box-shadow:0 0 0 3px rgba(22,163,74,.16)}
.anim .sc-head-dot i{animation:pulse-dot 2.2s ease-in-out infinite}
html.io-fallback .sc-head-dot i{animation:none!important}
.sm-domain{font:700 12px/1 var(--mono);letter-spacing:.01em;color:var(--ink)}
/* status dot inside the green grade chip */
.grade-chip{display:inline-flex;align-items:center;gap:7px}
.gc-dot{width:6px;height:6px;border-radius:50%;background:var(--status-green);flex:none}
/* the flagged module's bar reads amber instead of red */
.ms-bar-warn .ms-fill{background:#D97706}

/* ── CyberTrust LEFT column — confident hierarchy ── */
.ct-h2{margin-top:22px}
.ct-caption{margin-top:18px;max-width:46ch}
/* framework / module trust chips — hairline mono pills */
.ct-frameworks{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.fw-pill{
  font:600 10.5px/1 var(--mono);letter-spacing:.1em;color:var(--ink-soft);
  background:#fff;border:1px solid var(--line-dark);border-radius:0;
  padding:9px 12px;white-space:nowrap;
  transition:border-color .25s var(--ease),color .25s var(--ease),box-shadow .25s var(--ease);
}
.fw-pill:hover{border-color:rgba(222,60,75,.4);color:var(--ink);box-shadow:0 6px 16px -10px rgba(18,18,18,.2)}
.fw-count{background:var(--red-tint);border-color:rgba(222,60,75,.28);color:var(--ink)}
.fw-count b{color:var(--brand-red);font-weight:800;font-variant-numeric:tabular-nums}
/* CTA block */
.ct-cta{margin-top:34px}
.ct-cta .btn-red .mono-arrow{font-family:var(--mono);display:inline-block;margin-left:4px;transition:transform .3s var(--ease)}
.ct-cta .btn-red:hover .mono-arrow{transform:translateX(4px)}
.ct-reassure{font:500 10px/1.5 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--ink-muted);margin-top:16px}
.ct-reassure i{color:var(--line-dark);font-style:normal;margin:0 4px}

/* ============ INDUSTRIES ============ */
.industries{padding:110px 0;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
/* headline: balance the two lines and keep the em-dash bound to its neighbours
   (.nb wrappers) so Orbitron's width never orphans the dash on its own line */
.ind-h2{max-width:27ch;text-wrap:balance}
.ind-h2 .nb{white-space:nowrap}
/* faint dot-grid wash behind the dossier cards, fading at the edges */
.ind-stage{position:relative;margin-top:54px}
.ind-stage::before{
  content:"";position:absolute;inset:-46px -70px;pointer-events:none;
  background-image:radial-gradient(circle,rgba(18,18,18,.085) 1px,transparent 1px);
  background-size:24px 24px;
  -webkit-mask-image:radial-gradient(78% 88% at 50% 50%,#000 32%,transparent 78%);
  mask-image:radial-gradient(78% 88% at 50% 50%,#000 32%,transparent 78%);
}
.ind-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;position:relative}
/* .ind-card = reveal shell (generic data-reveal transition lives there);
   .ind-body = the visible dossier card: baseline offset + hover lift on its own transform */
.ind-body{
  background:var(--paper-card);border:1px solid var(--line);border-radius:0;
  padding:20px 22px 22px;position:relative;overflow:hidden;height:100%;
  display:flex;flex-direction:column;
  transform:translateY(var(--off,0px));
  box-shadow:0 1px 2px rgba(18,18,18,.03);
  transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .35s var(--ease);
  will-change:transform;
}
.ind-body:hover{
  transform:translateY(-10px);border-color:var(--line-dark);
  box-shadow:var(--shadow-soft);
}
/* thin red hairline scaling in from the left across the card top */
.ind-body::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--brand-red);
  transform:scaleX(0);transform-origin:0 50%;transition:transform .5s var(--ease);
}
.ind-body:hover::before{transform:scaleX(1)}
.ind-top{display:flex;justify-content:space-between;align-items:baseline}
.ind-idx{font:700 11px/1 var(--mono);letter-spacing:.14em;color:var(--ink-muted);transition:color .3s var(--ease)}
.ind-body:hover .ind-idx{color:var(--brand-red)}
.ind-tick{font:400 15px/1 var(--mono);color:var(--line-dark);transition:color .3s var(--ease)}
.ind-body:hover .ind-tick{color:var(--brand-red)}
/* glyph contained in a clean icon tile (modern feature-card look, aligned left) */
.ind-glyph{width:62px;height:62px;flex:none;border-radius:0;display:flex;align-items:center;justify-content:center;
  background:var(--paper-warm);border:1px solid var(--line);margin:20px 0 18px;
  transition:border-color .35s var(--ease),background .35s var(--ease),box-shadow .35s var(--ease)}
.ind-body:hover .ind-glyph{border-color:rgba(222,60,75,.35);background:var(--red-tint);box-shadow:0 6px 18px -10px rgba(222,60,75,.4)}
.ind-glyph svg{width:36px;height:36px;stroke:var(--ink);stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round;transform-origin:center}
/* subtle persistent ambient — glyphs gently breathe + float, staggered across the row
   (gated under .anim; reduced-motion + io-fallback leave them static) */
@keyframes ind-breathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1.05)}}
.anim .ind-glyph svg{animation:ind-breathe 4.6s ease-in-out infinite}
.anim .ind-card:nth-child(2) .ind-glyph svg{animation-delay:.85s}
.anim .ind-card:nth-child(3) .ind-glyph svg{animation-delay:1.7s}
.anim .ind-card:nth-child(4) .ind-glyph svg{animation-delay:2.55s}
.anim .ind-card:nth-child(5) .ind-glyph svg{animation-delay:3.4s}
html.io-fallback .ind-glyph svg{animation:none!important;transform:none!important}
/* faint, slow life on the corner crosshair tick */
@keyframes ind-tick-pulse{0%,100%{opacity:.55}50%{opacity:1}}
.anim .ind-tick{animation:ind-tick-pulse 5.2s ease-in-out infinite}
.anim .ind-card:nth-child(odd) .ind-tick{animation-delay:1.3s}
html.io-fallback .ind-tick{animation:none!important;opacity:1!important}
.ind-glyph .g-dim{stroke:rgba(18,18,18,.4)}
.ind-glyph .g-dot{fill:var(--ink);stroke:none;transition:fill .3s var(--ease)}
.ind-body:hover .g-dot{fill:var(--brand-red)}
/* line-art glyphs draw their stroke on first reveal (pathLength-normalized) */
.anim .ind-card .g-draw{stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 1s var(--ease) calc(.15s + var(--gi,0)*.18s)}
.anim .ind-card.in .g-draw{stroke-dashoffset:0}
html.io-fallback .ind-card .g-draw{transition:none!important;stroke-dashoffset:0!important}
/* hover: accent strokes go brand-red */
.ind-card .g-acc{transition:stroke .3s var(--ease)}
.ind-body:hover .g-acc{stroke:var(--brand-red)}
/* — per-sector glyph micro-animations (hover-driven, one-shot, transform/opacity/dashoffset only) — */
/* Defense: radar sweep rotates once inside the shield */
.gx-sweep{stroke:var(--brand-red);opacity:0;transform-box:view-box;transform-origin:48px 47px}
.ind-body:hover .gx-sweep{animation:gx-sweep 1.2s cubic-bezier(.45,0,.2,1) 1}
@keyframes gx-sweep{0%{opacity:0;transform:rotate(0deg)}10%{opacity:1}82%{opacity:1}100%{opacity:0;transform:rotate(360deg)}}
/* Technology: chip pins light up sequentially */
.ind-body:hover .gx-pin{stroke:var(--brand-red);animation:gx-redraw .45s var(--ease) calc(var(--pi,0)*55ms) 1 backwards}
/* Healthcare: EKG line redraws once with a beat */
.ind-body:hover .gx-ekg{animation:gx-redraw .9s cubic-bezier(.55,0,.2,1) 1}
@keyframes gx-redraw{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
.gx-beat{transform-box:fill-box;transform-origin:center}
.ind-body:hover .gx-beat{animation:gx-beat .85s ease .3s 1}
@keyframes gx-beat{0%,100%{transform:scale(1)}30%{transform:scale(2)}55%{transform:scale(1)}75%{transform:scale(1.6)}}
/* Financial Services: columns rise in sequence */
.gx-col{transform-box:fill-box;transform-origin:50% 100%}
.ind-body:hover .gx-col{animation:gx-rise .6s var(--ease) calc(var(--ci,0)*90ms) 1}
@keyframes gx-rise{0%{transform:scaleY(.3)}70%{transform:scaleY(1.1)}100%{transform:scaleY(1)}}
/* Startups: rocket lifts and settles, exhaust flickers */
.gx-rocket{transform-box:view-box}
.ind-body:hover .gx-rocket{animation:gx-lift 1.15s cubic-bezier(.36,1.3,.35,1) 1}
@keyframes gx-lift{0%{transform:translateY(0)}38%{transform:translateY(-5px)}100%{transform:translateY(0)}}
.ind-body:hover .gx-flame{animation:gx-flick 1.15s linear 1}
@keyframes gx-flick{0%,30%,62%,100%{opacity:1}15%{opacity:.25}46%{opacity:.35}80%{opacity:.85}}
/* sector NAME in Orbitron — min-height reserves two lines so the outcome line
   and chips stay aligned across cards even when a name (Financial Services) wraps */
.ind-name{
  font:700 14.5px/1.2 var(--orbit);letter-spacing:-.01em;margin-bottom:9px;
}
.ind-line{font:500 12.5px/1.5 var(--mono);letter-spacing:.005em;color:var(--ink-soft)}
/* compliance badge chips, pushed to the card bottom above a hairline divider */
.ind-chips{
  display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:16px;
  border-top:1px solid var(--line);
}
.ind-chips span{
  font:500 9px/1 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);
  border:1px solid var(--line);border-radius:0;padding:5px 7px;background:var(--paper);white-space:nowrap;
  transition:border-color .3s var(--ease),color .3s var(--ease);
}
.ind-body:hover .ind-chips span{border-color:var(--line-dark)}
/* whole card is a conversion path → #book; hover reveals the CTA cue */
.ind-body{cursor:pointer}
.ind-stretch{position:absolute;inset:0;z-index:4;border-radius:inherit}
.ind-stretch:focus-visible{outline:2px solid var(--brand-red);outline-offset:3px}
.ind-cta{margin-top:14px;display:inline-flex;align-items:center;gap:7px;
  font:600 10px/1 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted);
  opacity:.5;transition:color .3s var(--ease),opacity .3s var(--ease)}
.ind-cta span{transition:transform .3s var(--ease)}
.ind-body:hover .ind-cta{color:var(--brand-red);opacity:1}
.ind-body:hover .ind-cta span{transform:translateX(4px)}
html.io-fallback .ind-cta,html:not(.anim) .ind-cta{opacity:.55}

/* ============ CITADEL ============ */
.citadel{background:var(--ink);color:var(--paper);padding:54px 0;position:relative;overflow:hidden}
/* barely-visible scanning line drifting across the dark band */
.cit-scan{
  position:absolute;top:0;bottom:0;left:0;width:160px;pointer-events:none;opacity:0;
  background:linear-gradient(90deg,transparent,rgba(255,71,87,.06) 42%,rgba(247,248,249,.05) 50%,transparent);
  transform:translateX(-180px);will-change:transform;
}
.anim .cit-scan{animation:cit-sweep 14s linear infinite}
@keyframes cit-sweep{
  0%{transform:translateX(-180px);opacity:0}
  8%{opacity:1}
  92%{opacity:1}
  100%{transform:translateX(calc(100vw + 20px));opacity:0}
}
html.io-fallback .cit-scan{animation:none!important;opacity:0!important}
.cit-in{display:flex;align-items:center;gap:36px;flex-wrap:wrap;position:relative}
.cit-mark{display:flex;flex-direction:column;gap:7px;flex:none}
.cit-mark .cm-logo{font:700 17px/1 var(--orbit);letter-spacing:.1em}
.cit-mark .cm-logo i{font-style:normal;color:var(--red-bright);animation:blink-cur 1.1s steps(1) infinite}
.cit-mark .cm-q{font:500 11px/1 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:rgba(247,248,249,.55)}
.cit-copy{font:400 14.5px/1.65 var(--sans);color:rgba(247,248,249,.75);max-width:58ch;flex:1;min-width:280px}
.cit-copy b{color:#fff;font-weight:700}
.btn-cit{
  border:1px solid rgba(247,248,249,.3);color:var(--paper);background:transparent;
  font:700 14px/1 var(--sans);padding:14px 24px;border-radius:0;display:inline-flex;gap:10px;align-items:center;
  transition:border-color .25s,background .25s;flex:none;will-change:transform;
}
.btn-cit:hover{border-color:var(--red-bright);background:rgba(255,71,87,.1)}
.btn-cit .mono-arrow{font-family:var(--mono);color:var(--red-bright);display:inline-block;transition:transform .3s var(--ease)}
.btn-cit:hover .mono-arrow{transform:translateX(4px)}

/* ============ FINAL CTA ============ */
.final{
  padding:140px 0 120px;text-align:center;position:relative;overflow:hidden;
}
.final::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(640px 320px at 50% 18%,rgba(222,60,75,.08),transparent 70%);
}
.final .wrap{position:relative}
.final h2{font-size:clamp(2.6rem,6vw,5rem);max-width:15ch;margin:0 auto}
.final .btn-red{margin-top:38px;padding:20px 40px;font-size:16px}
/* pulsing glow ring radiating off the primary button */
.cta-glow{position:relative}
.cta-glow::before{
  content:"";position:absolute;inset:0;border-radius:0;
  border:2px solid rgba(222,60,75,.5);opacity:0;pointer-events:none;
}
.anim .cta-glow::before{animation:cta-ring 2.8s var(--ease) infinite}
@keyframes cta-ring{0%{opacity:.5;transform:scale(1)}75%,100%{opacity:0;transform:scale(1.1,1.45)}}
html.io-fallback .cta-glow::before{animation:none!important;opacity:0!important}
.final-micro{font:400 13.5px/1.5 var(--sans);color:var(--ink-muted);margin-top:18px}
.trust-row{
  display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:46px;
}
.trust-row span{
  font:500 11px/1 var(--mono);letter-spacing:.13em;color:var(--ink-soft);
  border:1px solid var(--line-dark);border-radius:0;padding:10px 14px;background:#fff;
}
.trust-line{font:500 11px/1 var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-muted);margin-top:40px}

/* ============ CODE SECURITY / RAPTOR ============ */
.codesec{padding:120px 0;background:var(--paper);border-bottom:1px solid var(--line)}
.cs-head{max-width:760px}
.cs-h2{font:700 clamp(2.2rem,5.1vw,4rem)/1.05 var(--orbit);letter-spacing:-.025em;margin-top:6px}
.cs-cap{font:400 16px/1.65 var(--sans);color:var(--ink-soft);max-width:66ch;margin-top:18px}
.cs-cap b{color:var(--ink);font-weight:700}

/* raptor console specimen */
.cs-console-wrap{margin-top:48px;position:relative}
#raptorTermBody{min-height:14.5em}
#raptorTermBody .t-prog{color:var(--term-green)}
#raptorTermBody .t-res.t-warn{color:var(--term-amber)}
.rap-foot{color:rgba(232,232,230,.72);font-weight:700;margin-top:4px}
.rap-foot .t-em{color:#fff}

/* feature grid */
.cs-feats{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:56px;
  border:1px solid var(--line);background:var(--line);
}
.cs-feat{
  background:var(--paper-card);padding:30px 26px 32px;
  display:flex;flex-direction:column;gap:12px;
  transition:background .25s var(--ease);
}
.cs-feat:hover{background:#fff}
.cs-feat-ic{width:30px;height:30px;color:var(--brand-red)}
.cs-feat-ic svg{width:100%;height:100%;display:block}
.cs-feat h3{font:700 15px/1.25 var(--orbit);letter-spacing:-.01em;color:var(--ink)}
.cs-feat p{font:400 13.5px/1.6 var(--sans);color:var(--ink-soft)}

/* stat / trust strip */
.cs-strip{
  display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px 18px;
  margin-top:40px;padding:18px 22px;background:var(--terminal-bg);
  border:1px solid rgba(255,255,255,.07);
}
.cs-strip span{font:600 12px/1 var(--mono);letter-spacing:.16em;color:var(--terminal-text)}
.cs-strip i{color:var(--brand-red);font-style:normal}

/* pull-line + CTA */
.cs-pull{
  margin-top:48px;padding:30px 34px;border-left:3px solid var(--brand-red);
  background:var(--paper-warm);
  font:700 clamp(1.1rem,2.3vw,1.6rem)/1.4 var(--orbit);letter-spacing:-.01em;color:var(--ink);
  max-width:30ch;
}
.cs-pull--center{max-width:768px;margin-left:auto;margin-right:auto}
.cs-cta{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-top:36px}
.cs-cta .btn-red .mono-arrow{font-family:var(--mono);display:inline-block;margin-left:4px;transition:transform .3s var(--ease)}
.cs-cta .btn-red:hover .mono-arrow{transform:translateX(4px)}
.cs-cta .btn-ghost .mono-arrow{display:inline-block;transition:transform .3s var(--ease)}
.cs-cta .btn-ghost:hover .mono-arrow{transform:translateX(4px)}

@media (max-width:900px){
  .cs-feats{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:560px){
  .codesec{padding:88px 0}
  .cs-feats{grid-template-columns:1fr}
  #raptorTermBody{min-height:0}
  .cs-cta .btn{width:min(100%,360px)}
}

/* ============ FOOTER ============ */
footer{border-top:1px solid var(--line);padding:70px 0 44px;background:var(--paper);position:relative}
footer::before{
  content:"";position:absolute;top:-1px;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--brand-red),rgba(222,60,75,.12));
}
.foot-grid{display:grid;grid-template-columns:1.4fr repeat(4,.8fr);gap:36px}
.foot-brand .logo{margin-bottom:18px;font-size:23px;letter-spacing:.1em}
.foot-tag{font:400 12.5px/1.65 var(--sans);color:var(--ink-muted);max-width:38ch}
.foot-col h3{font:500 11px/1 var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:18px}
.foot-col a{display:block;font:400 13.5px/1 var(--sans);color:var(--ink-soft);padding:7px 0;transition:color .2s}
.foot-col a:hover{color:var(--brand-red)}
.foot-bottom{
  margin-top:56px;padding-top:24px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;
  font:500 11.5px/1 var(--mono);letter-spacing:.1em;color:var(--ink-muted);
}
.foot-status{display:flex;align-items:center;gap:9px;color:var(--status-green)}
.foot-status i{font-style:normal;width:8px;height:8px;border-radius:50%;background:var(--status-green);animation:pulse-dot 2.2s ease-in-out infinite}
/* centered footer */
footer .wrap{text-align:center}
.foot-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:34px 56px}
.foot-brand{flex-basis:100%;display:flex;flex-direction:column;align-items:center;margin-bottom:6px}
.foot-brand .logo{justify-content:center}
.foot-tag{margin-left:auto;margin-right:auto}
.foot-col{min-width:120px}
.foot-bottom{justify-content:center}
.foot-brand .logo .logo-mark{width:34px;height:34px}
.foot-pillars{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:13px 17px}
.foot-pillars span{font:600 12px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap;transition:color .2s var(--ease)}
.foot-brand:hover .foot-pillars span{color:var(--ink)}
.fp-sep{width:5px;height:5px;background:var(--brand-red);transform:rotate(45deg);flex:none}

/* ============ RESPONSIVE ============ */
@media(max-width:1000px){
  /* 3 + 2 centered: 6-track grid, every card spans 2, card 4 anchored at track 2 */
  .ind-grid{grid-template-columns:repeat(6,1fr)}
  .ind-card{grid-column:span 2}
  .ind-card:nth-child(4){grid-column:2/4}
  .foot-grid{grid-template-columns:1fr 1fr;gap:30px}
  .foot-brand{grid-column:1/-1}
}
@media(max-width:1024px){
  /* nav collapses to the hamburger early so the full link set never crowds the bar */
  .nav-links{display:none}
  .burger{display:flex}
  .mobile-menu{display:flex}
}
@media(max-width:880px){
  .diagram{grid-template-columns:1fr;gap:20px}
  .dia-arrow svg{transform:rotate(90deg)}
  .ct-grid{grid-template-columns:1fr;gap:44px}
  .ct-right{padding-bottom:160px}
  .score-card{right:8px}
  .bento{grid-template-columns:1fr 1fr}
  .cell-hero{grid-column:1/-1;grid-row:auto;min-height:380px}
  .caprail-nodes{justify-content:flex-start;gap:9px}
  .stats-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:34px 0}
  .stat{min-width:0}
  .stat-num{font-size:clamp(1.7rem,8.2vw,2.6rem)}
  .stat:nth-child(3){border-left:none;padding-left:0}
  .tl-mode{display:none}
}
@media(max-width:767px){
  /* collage → static row: at most 2 cards, no overlap, no overflow */
  .oc-layer{position:static;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px;pointer-events:auto}
  .oc{position:static}
  .oc-2,.oc-4{display:none}
}
@media(max-width:560px){
  .wrap{padding:0 20px}
  .hero{padding-top:120px}
  .hero-stage{padding:0 14px}
  .bento{grid-template-columns:1fr}
  .caprail{margin-top:30px}
  .caprail-wire{display:none}
  .caprail-nodes{gap:8px}
  .cr-node{font-size:9.5px;padding:8px 11px;letter-spacing:.08em}
  .ind-grid{grid-template-columns:1fr 1fr}
  .ind-card,.ind-card:nth-child(4){grid-column:auto}
  .ind-card:last-child{grid-column:1/-1}
  .ind-card:last-child .ind-body{align-items:center;text-align:center}
  .ind-card:last-child .ind-top{align-self:stretch}
  .tl-month,.tl-chip,.tl-bandlabel,.tl-blind{display:none}
  .tl-scramble{position:static;margin:0 0 10px auto;width:max-content;font-size:10.5px}
  .tl-anti{margin:4px 14px 14px auto;font-size:10px;padding:9px 12px}
  .tl-fig{padding:16px 14px 10px}
  .tl-head{font-size:10px;letter-spacing:.1em;padding:11px 14px}
  .tl-vs::before,.tl-vs::after{width:42px}
  .chip-alert{display:none}
  .cit-in{gap:22px}
  .term-body{padding:18px 16px 20px}
  .hero-ctas .btn{width:min(100%,340px)}
  .ticks::before,.ticks::after{display:none}
}

/* ============ REDUCED MOTION ============ */
/* ============ DEFENSE-IN-DEPTH FUNNEL ============ */
.funnel{padding:120px 0;border-bottom:1px solid var(--line)}
/* light "Daylight Mission Control" panel on light paper — matches timeline/sectors */
.fnl-console{
  margin-top:56px;position:relative;border-radius:0;overflow:hidden;text-align:left;
  background:radial-gradient(130% 150% at 50% -8%,rgba(222,60,75,.045),#fff 55%);
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  color:var(--ink);
}
/* light monitoring-console header strip (à la .tl-head) */
.fnl-bar{
  display:flex;align-items:center;gap:11px;padding:13px 20px;position:relative;z-index:4;
  font:700 11px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);
  background:rgba(222,60,75,.045);border-bottom:1px solid rgba(222,60,75,.16);
}
.fnl-bar .fnl-status{width:9px;height:9px;border-radius:0;background:var(--brand-red);flex:none}
.anim .fnl-bar .fnl-status{animation:pulse-sq 2s ease-in-out infinite}
.fnl-title{font-weight:700;letter-spacing:.14em;color:var(--ink);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fnl-bar-live{margin-left:auto;display:inline-flex;align-items:center;gap:7px;
  font:500 10px/1 var(--mono);letter-spacing:.16em;color:var(--brand-red);flex:none}
.fnl-bar-live .dot-live{width:7px;height:7px;background:var(--status-green)}
.fnl-body{position:relative;padding:30px clamp(16px,3.2vw,40px) 38px}

/* INTAKE — the flood at the top (red, prominent) */
.fnl-intake{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:8px;text-align:center}
.fnl-intake-num{font:700 clamp(1.2rem,3vw,1.8rem)/1.05 var(--orbit);letter-spacing:-.02em;color:var(--ink)}
.fnl-intake-num b{color:var(--brand-red);font-weight:900}
.fnl-intake-label{font:500 10.5px/1.4 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted)}
.fnl-intake-dots{display:flex;gap:7px;margin-top:2px}
.fnl-intake-dots i{width:5px;height:5px;border-radius:50%;background:var(--brand-red);opacity:.55}
.anim .fnl-intake-dots i{animation:fnl-intake-blink 1.6s ease-in-out infinite}
.fnl-intake-dots i:nth-child(2n){animation-delay:.2s}
.fnl-intake-dots i:nth-child(3n){animation-delay:.45s;background:#E8762E}
.fnl-intake-dots i:nth-child(5n){animation-delay:.7s}
@keyframes fnl-intake-blink{0%,100%{opacity:.25;transform:translateY(0)}50%{opacity:.9;transform:translateY(2px)}}

/* GRID — six layers in the main column, Automation-Engine rail down the right */
.fnl-grid{position:relative;z-index:3;display:grid;grid-template-columns:1fr minmax(168px,200px);
  gap:clamp(14px,2vw,26px);align-items:stretch;padding-top:16px}
/* the stack — funnel narrows top→bottom */
.fnl-stack{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px}

/* MOBILE-ONLY spanning header (hidden on desktop; shown when rail collapses) */
.fnl-spanhead{display:none}

/* core wrapper centers the green payoff node */
.fnl-core-wrap{position:relative;z-index:3;display:flex;justify-content:center}

/* a band — light card */
.fnl-band{
  position:relative;width:var(--w,100%);max-width:100%;
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;
  padding:15px 20px;border-radius:0;overflow:hidden;
  background:var(--paper-card);border:1px solid var(--line);
  box-shadow:0 6px 18px -14px rgba(18,18,18,.2);
  transition:border-color .5s var(--ease),box-shadow .5s var(--ease),background-color .5s var(--ease);
}
.fnl-ic{flex:none;width:38px;height:38px;display:grid;place-items:center;border-radius:0;
  background:var(--paper);border:1px solid var(--line-dark);color:var(--ink);
  transition:border-color .5s var(--ease),color .5s var(--ease),background .5s var(--ease)}
.fnl-ic svg{width:21px;height:21px}
.fnl-meta{display:flex;flex-direction:column;gap:4px;min-width:0}
.fnl-name{font:700 12px/1.25 var(--orbit);letter-spacing:-.01em;color:var(--ink)}
.fnl-stops{font:500 11.5px/1.4 var(--mono);color:var(--ink-muted);letter-spacing:.005em}
/* STOPS X% figure + proportional mini-bar */
.fnl-block{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right;min-width:108px}
.fnl-block-fig{font:700 16px/1 var(--mono);color:var(--brand-red);font-variant-numeric:tabular-nums;white-space:nowrap;transition:transform .5s var(--ease);transform-origin:right center}
.fnl-block-fig small{font:500 8.5px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted);display:block;margin-bottom:3px}
.fnl-block-fig b{font-weight:700;font-size:18px}
.fnl-bartrack{display:block;width:100%;height:5px;border-radius:0;background:var(--paper);border:1px solid var(--line);overflow:hidden}
.fnl-barfill{display:block;height:100%;width:var(--p,0%);border-radius:0;
  background:linear-gradient(90deg,#E8762E,var(--brand-red));transition:width .9s var(--ease),filter .5s var(--ease)}
.anim .fnl-band .fnl-barfill{width:0}
.anim .fnl-band.bar-in .fnl-barfill{width:var(--p,0%)}

/* per-band ACTIVATION — the whole layer "fires" when it blocks a threat (JS adds .flash) */
.fnl-glow{position:absolute;inset:0;border-radius:0;pointer-events:none;opacity:0;
  box-shadow:inset 0 0 0 1.5px var(--brand-red),0 0 24px -4px var(--brand-red);
  transition:opacity .5s var(--ease)}
.fnl-band.flash{
  border-color:var(--brand-red);background-color:rgba(222,60,75,.06);
  box-shadow:0 0 0 1px rgba(222,60,75,.35),0 12px 32px -12px rgba(222,60,75,.6);
  transition:border-color .1s var(--ease),background-color .1s var(--ease),box-shadow .1s var(--ease);
}
.fnl-band.flash .fnl-glow{opacity:.7;transition:opacity .1s var(--ease)}
.fnl-band.flash .fnl-ic{border-color:var(--brand-red);color:var(--brand-red);background:rgba(222,60,75,.1);
  transition:border-color .1s var(--ease),color .1s var(--ease),background .1s var(--ease)}
.fnl-band.flash .fnl-block-fig{transform:scale(1.1);transition:transform .12s cubic-bezier(.3,1.7,.45,1)}
.fnl-band.flash .fnl-barfill{filter:brightness(1.25) saturate(1.12);transition:filter .1s var(--ease)}
/* legacy ripple span — retired, kept out of layout */
.fnl-ripple{display:none}

/* ★ AUTOMATION ENGINE RAIL — cross-cutting vertical spine (desktop, right side) ★ */
.fnl-rail{
  position:relative;align-self:stretch;border-radius:0;overflow:visible;
  background:radial-gradient(120% 100% at 50% 0%,rgba(222,60,75,.12),rgba(222,60,75,.05) 70%);
  border:1px solid rgba(222,60,75,.4);
  box-shadow:0 0 0 1px rgba(222,60,75,.05),0 22px 54px -28px rgba(222,60,75,.5),0 12px 30px -22px rgba(18,18,18,.18);
}
/* tap connectors — thin lines reaching LEFT out of the rail into each layer */
.fnl-taps{position:absolute;top:0;bottom:0;left:-1px;width:clamp(28px,3vw,56px);height:100%;
  transform:translateX(-100%);overflow:visible;pointer-events:none}
.fnl-taps line{stroke:rgba(222,60,75,.32);stroke-width:1.4;stroke-dasharray:3 4}
.fnl-tap-pulse{fill:var(--brand-red);opacity:0}
/* pulse travels from the layer (x=0, left) INTO the rail (x=60, right) */
.anim .fnl-tap-pulse{animation:fnl-tap-travel 2.6s ease-in-out infinite}
.fnl-tap[data-tap="1"] .fnl-tap-pulse{animation-delay:.35s}
.fnl-tap[data-tap="2"] .fnl-tap-pulse{animation-delay:.7s}
.fnl-tap[data-tap="3"] .fnl-tap-pulse{animation-delay:1.05s}
.fnl-tap[data-tap="4"] .fnl-tap-pulse{animation-delay:1.4s}
.fnl-tap[data-tap="5"] .fnl-tap-pulse{animation-delay:1.75s}
@keyframes fnl-tap-travel{
  0%{opacity:0;transform:translateX(-60px)}
  12%{opacity:.95}
  80%{opacity:.95;transform:translateX(0)}
  100%{opacity:0;transform:translateX(0)}
}
.fnl-rail-body{position:sticky;top:84px;display:flex;flex-direction:column;align-items:center;gap:12px;
  text-align:center;padding:22px 16px 24px}
.fnl-rail-orb{position:relative;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;
  font:700 13px/1 var(--orbit);letter-spacing:.04em;color:#fff;
  background:radial-gradient(circle at 50% 35%,#FF4757,#DE3C4B 55%,#B12534);
  box-shadow:0 12px 30px -8px rgba(222,60,75,.55),inset 0 0 14px -4px rgba(255,255,255,.4)}
.fnl-rail-label{font:800 13px/1.25 var(--orbit);letter-spacing:.1em;color:var(--brand-red)}
.fnl-rail-line{font:500 10.5px/1.5 var(--mono);letter-spacing:.01em;color:var(--ink-soft);max-width:18ch}
.fnl-rail-flow{display:flex;flex-direction:column;align-items:center;gap:5px;margin-top:2px}
.fnl-rail-flow i{width:6px;height:6px;border-radius:50%;background:var(--brand-red);opacity:.45}
.anim .fnl-rail-flow i{animation:fnl-rail-flow 2.2s ease-in-out infinite}
.fnl-rail-flow i:nth-child(2){animation-delay:.25s}
.fnl-rail-flow i:nth-child(3){animation-delay:.5s}
.fnl-rail-flow i:nth-child(4){animation-delay:.75s}
@keyframes fnl-rail-flow{0%,100%{opacity:.2;transform:translateY(-2px)}50%{opacity:.9;transform:translateY(2px)}}

/* ★ AUTOMATION ENGINE — full-width detail band beneath the funnel (red-tint wash) ★ */
.fnl-engine{
  margin-top:22px;display:flex;flex-direction:column;align-items:stretch;gap:16px;padding:22px clamp(18px,3vw,30px) 24px;
  border-radius:0;
  background:radial-gradient(120% 150% at 50% -10%,rgba(222,60,75,.08),#fff 60%);
  border:1px solid rgba(222,60,75,.32);
  box-shadow:0 0 0 1px rgba(222,60,75,.06),0 30px 70px -30px rgba(222,60,75,.4),0 14px 34px -20px rgba(18,18,18,.16);
}
.fnl-engine-head{display:flex;align-items:center;gap:16px;padding-bottom:4px}
.fnl-ic-engine{width:44px;height:44px;background:rgba(222,60,75,.1);border-color:rgba(222,60,75,.4);color:var(--brand-red)}
.anim .fnl-ic-engine svg{animation:fnl-spin 9s linear infinite;transform-origin:center}
@keyframes fnl-spin{to{transform:rotate(360deg)}}
.fnl-engine .fnl-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.fnl-engine .fnl-name{font:700 16px/1.25 var(--orbit);letter-spacing:.01em;color:var(--ink)}
.fnl-engine .fnl-stops{font:500 11.5px/1.5 var(--mono);color:var(--ink-muted)}
.fnl-engine-tag{display:inline-flex;align-items:center;align-self:flex-start;gap:7px;
  font:700 10.5px/1 var(--mono);letter-spacing:.06em;color:var(--brand-red);
  padding:5px 10px;border-radius:0;background:rgba(222,60,75,.08);border:1px solid rgba(222,60,75,.22)}
.fnl-engine-tag::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--brand-red);box-shadow:0 0 0 3px rgba(222,60,75,.18)}
.fnl-engine .fnl-block-fig{color:var(--brand-red)}

/* signals → orb → outcomes */
.fnl-flow{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(10px,2vw,26px);
  padding:18px 0;border-top:1px solid rgba(222,60,75,.16);border-bottom:1px solid rgba(222,60,75,.16)}
/* hairline connector layer */
.fnl-wires{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:visible}
.fnl-dot-in{fill:var(--brand-red);filter:drop-shadow(0 0 3px rgba(222,60,75,.6));opacity:0}
.fnl-dot-out{fill:var(--status-green);filter:drop-shadow(0 0 3px rgba(22,163,74,.55));opacity:0}
.anim .fnl-dot-in,.anim .fnl-dot-out{opacity:.9}
.fnl-flow-col{position:relative;z-index:1;display:flex;flex-direction:column;gap:7px}
.fnl-in{align-items:flex-end}
.fnl-out{align-items:flex-start}
.fnl-flow-cap{font:500 9px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:3px}
.fnl-in .fnl-flow-cap{text-align:right}
.fnl-chip{position:relative;font:500 10.5px/1 var(--mono);padding:6px 10px;border-radius:0;white-space:nowrap;
  border:1px solid var(--line-dark);box-shadow:0 1px 2px rgba(18,18,18,.04);transition:transform .3s var(--ease),opacity .3s var(--ease)}
.fnl-chip-in{background:#FCEFF1;border-color:rgba(222,60,75,.26);color:#B12534}
.fnl-chip-out{background:#EBF7EF;border-color:rgba(22,163,74,.28);color:#15803D}
.fnl-chip-in::before,.fnl-chip-out::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;margin-right:7px;vertical-align:middle;transform:translateY(-1px)}
.fnl-chip-in::before{background:var(--brand-red)}
.fnl-chip-out::before{background:var(--status-green)}
.anim .fnl-chip-in{animation:fnl-chip-in-flow 5s ease-in-out infinite}
.anim .fnl-chip-out{animation:fnl-chip-out-flow 5s ease-in-out infinite}
.fnl-chip-in:nth-of-type(2){animation-delay:.35s}.fnl-chip-in:nth-of-type(3){animation-delay:.7s}
.fnl-chip-in:nth-of-type(4){animation-delay:1.05s}.fnl-chip-in:nth-of-type(5){animation-delay:1.4s}
.fnl-chip-out:nth-of-type(2){animation-delay:.5s}.fnl-chip-out:nth-of-type(3){animation-delay:.9s}
.fnl-chip-out:nth-of-type(4){animation-delay:1.3s}.fnl-chip-out:nth-of-type(5){animation-delay:1.7s}
@keyframes fnl-chip-in-flow{0%,100%{transform:translateX(0);opacity:.82}45%{transform:translateX(5px);opacity:1}}
@keyframes fnl-chip-out-flow{0%,100%{transform:translateX(0);opacity:.82}45%{transform:translateX(5px);opacity:1}}

.fnl-core-orb{position:relative;z-index:2;flex:none;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;
  font:700 14px/1 var(--orbit);letter-spacing:.04em;color:#fff;
  background:radial-gradient(circle at 50% 35%,#FF4757,#DE3C4B 55%,#B12534);
  box-shadow:0 14px 34px -8px rgba(222,60,75,.6),inset 0 0 16px -4px rgba(255,255,255,.45),0 0 0 6px rgba(222,60,75,.06)}
.fnl-orb-label{position:relative;z-index:3}
.fnl-orb-halo{position:absolute;inset:-10px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(222,60,75,.28),transparent 68%);opacity:.55}
.anim .fnl-orb-halo{animation:fnl-orb-breathe 6s ease-in-out infinite}
@keyframes fnl-orb-breathe{0%,100%{opacity:.32;transform:scale(.95)}50%{opacity:.48;transform:scale(1.05)}}
.fnl-orb-spin{position:absolute;inset:-3px;border-radius:50%;pointer-events:none;
  border:1.5px solid transparent;border-top-color:rgba(255,255,255,.6);border-right-color:rgba(255,255,255,.18)}
.anim .fnl-orb-spin{animation:fnl-spin 7s linear infinite}
.fnl-orb-ring{position:absolute;inset:-6px;border-radius:50%;border:1px solid rgba(222,60,75,.4);opacity:0;pointer-events:none}
.anim .fnl-orb-ring{animation:fnl-orb-pulse 5.4s ease-out infinite}
.anim .fnl-orb-ring2{animation-delay:2.7s}
@keyframes fnl-orb-pulse{0%{opacity:.34;transform:scale(.88)}70%,100%{opacity:0;transform:scale(1.6)}}

/* engine stat row — clean metric tiles, consistent with hero dashboard */
.fnl-estats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.fnl-estat{text-align:center;padding:12px 6px;border-radius:0;background:var(--paper);border:1px solid var(--line);
  box-shadow:0 1px 2px rgba(18,18,18,.03)}
.fnl-estat b{display:block;white-space:nowrap;font:700 18px/1.1 var(--orbit);color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:.01em}
.fnl-estat b .count{display:inline;font:inherit;color:inherit;letter-spacing:inherit;text-transform:none}
.fnl-estat>span{display:block;font:500 9px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-top:5px}

/* trickle arrow into core */
.fnl-trickle{display:flex;flex-direction:column;align-items:center;gap:4px;margin:2px 0}
.fnl-trickle span{width:4px;height:4px;border-radius:50%;background:var(--status-green);opacity:.4}
.anim .fnl-trickle span{animation:fnl-trickle-fall 2.4s ease-in-out infinite}
.fnl-trickle span:nth-child(2){animation-delay:.3s}.fnl-trickle span:nth-child(3){animation-delay:.6s}
@keyframes fnl-trickle-fall{0%,100%{opacity:.15;transform:translateY(-3px)}50%{opacity:.7;transform:translateY(3px)}}

/* CORE — calm green safe node, the payoff */
.fnl-core{position:relative;display:inline-flex;align-items:center;gap:14px;
  padding:16px 26px;border-radius:0;margin-top:6px;
  background:radial-gradient(130% 160% at 50% -10%,rgba(22,163,74,.1),#fff 60%);
  border:1px solid rgba(22,163,74,.35);
  box-shadow:0 12px 30px -14px rgba(22,163,74,.45)}
.fnl-core-pulse{position:absolute;inset:0;border-radius:0;border:1px solid rgba(22,163,74,.4);opacity:0;pointer-events:none}
.anim .fnl-core-pulse{animation:fnl-core-pulse 3.4s ease-out infinite}
@keyframes fnl-core-pulse{0%{opacity:.5;transform:scale(1)}100%{opacity:0;transform:scale(1.08)}}
.fnl-core-check{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:50%;
  background:rgba(22,163,74,.12);color:var(--status-green)}
.fnl-core-check svg{width:18px;height:18px}
.fnl-core-meta{display:flex;flex-direction:column;gap:3px}
.fnl-core-meta b{font:700 11px/1.15 var(--orbit);color:var(--ink);text-transform:uppercase;letter-spacing:.04em}
.fnl-core-stat{font:700 12px/1.3 var(--mono);letter-spacing:.03em;color:var(--status-green)}

/* fallback: io-fallback + no-anim show resting final state, no loops, bars at final width */
html:not(.anim) .fnl-barfill{width:var(--p,0%)}
/* rail + taps draw statically in fallback / no-anim (no pulses, lines visible) */
html:not(.anim) .fnl-tap-pulse,html.io-fallback .fnl-tap-pulse{animation:none!important;opacity:0!important}
html:not(.anim) .fnl-rail-flow i,html.io-fallback .fnl-rail-flow i{animation:none!important;opacity:.45!important;transform:none!important}
html.io-fallback .fnl-glow,html.io-fallback .fnl-ripple,
html.io-fallback .fnl-ic-engine svg,html.io-fallback .fnl-bar .fnl-status,
html.io-fallback .fnl-chip-in,html.io-fallback .fnl-chip-out,
html.io-fallback .fnl-orb-ring,html.io-fallback .fnl-core-pulse,
html.io-fallback .fnl-orb-halo,html.io-fallback .fnl-orb-spin,
html.io-fallback .fnl-trickle span,html.io-fallback .fnl-intake-dots i{animation:none!important}
html.io-fallback .fnl-chip-in,html.io-fallback .fnl-chip-out{opacity:1!important;transform:none!important}
/* traveling pulse dots: hidden + paused statically; connector hairlines stay drawn */
html.io-fallback .fnl-dot-in,html.io-fallback .fnl-dot-out,
html:not(.anim) .fnl-dot-in,html:not(.anim) .fnl-dot-out{opacity:0!important}
html.io-fallback .fnl-pulses *,html:not(.anim) .fnl-pulses *{animation-play-state:paused!important}
html.io-fallback .fnl-barfill{width:var(--p,0%)!important;transition:none!important}

/* responsive */
/* ≤880: the vertical rail no longer fits beside the column — collapse it.
   Drop the side rail/taps, promote the spanning engine header to the TOP of the
   funnel (full-width), and stack the six layers full-width. */
@media(max-width:880px){
  .fnl-grid{grid-template-columns:1fr}
  .fnl-rail{display:none}
  .fnl-band{width:100%!important}
  .fnl-spanhead{
    display:flex;align-items:center;gap:14px;position:relative;z-index:3;
    margin:14px 0 4px;padding:14px 16px;border-radius:0;
    background:radial-gradient(120% 150% at 50% -10%,rgba(222,60,75,.1),#fff 65%);
    border:1px solid rgba(222,60,75,.38);
    box-shadow:0 0 0 1px rgba(222,60,75,.05),0 18px 40px -26px rgba(222,60,75,.5)}
  .fnl-spanhead-ic{flex:none;width:40px;height:40px;display:grid;place-items:center;border-radius:0;
    background:rgba(222,60,75,.1);border:1px solid rgba(222,60,75,.4);color:var(--brand-red)}
  .fnl-spanhead-ic svg{width:22px;height:22px}
  .anim .fnl-spanhead-ic svg{animation:fnl-spin 9s linear infinite;transform-origin:center}
  .fnl-spanhead-meta{display:flex;flex-direction:column;gap:3px;min-width:0}
  .fnl-spanhead-meta b{font:800 12.5px/1.2 var(--orbit);letter-spacing:.08em;color:var(--brand-red)}
  .fnl-spanhead-meta span{font:500 10.5px/1.45 var(--mono);color:var(--ink-soft)}
}
@media(max-width:760px){
  .funnel{padding:90px 0}
  .fnl-body{padding:24px 12px 30px}
  .fnl-band{gap:11px;padding:13px 13px;grid-template-columns:auto 1fr auto}
  .fnl-name{font-size:13px}
  .fnl-stops{font-size:10px}
  .fnl-ic{width:32px;height:32px}.fnl-ic svg{width:18px;height:18px}
  .fnl-block{min-width:84px}
  .fnl-block-fig{font-size:13px}.fnl-block-fig b{font-size:15px}
  .fnl-engine,.fnl-engine-head{gap:12px}
  .fnl-engine-head{flex-wrap:wrap}
  .fnl-engine .fnl-meta{flex:1 1 58%}
  /* stack: signals in (top) → orb → outcomes out (bottom); drop the SVG wires */
  .fnl-flow{grid-template-columns:1fr;gap:14px;text-align:center;padding:16px 0}
  .fnl-wires{display:none}
  .fnl-flow-col{align-items:center}
  .fnl-in{order:1}.fnl-core-orb{order:2;margin:0 auto}.fnl-out{order:3}
  .fnl-in,.fnl-out{align-items:center}
  .fnl-in .fnl-flow-cap,.fnl-flow-cap{text-align:center}
  .fnl-estats{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:430px){
  .fnl-chip{font-size:9.5px;padding:4px 7px}
  .fnl-intake-num{font-size:1.3rem}
  .fnl-block{min-width:76px}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
  /* SMIL <animateMotion> isn't covered by animation:none — hide the traveling dots */
  .fnl-dot-in,.fnl-dot-out{opacity:0!important}
}

/* ============ PROBLEM — PAIN LIST (added) ============ */
.prob-pain{
  list-style:none;margin:34px 0 0;padding:0;
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  border:1px solid var(--line);background:var(--line);max-width:780px;
}
.prob-pain li{
  background:var(--paper-card);padding:16px 20px;
  display:flex;align-items:flex-start;gap:13px;
  font:400 14.5px/1.5 var(--sans);color:var(--ink-soft);
  transition:background .25s var(--ease);
}
.prob-pain li:hover{background:#fff}
.prob-pain .px{
  flex:none;width:20px;height:20px;display:flex;align-items:center;justify-content:center;
  border:1px solid rgba(222,60,75,.4);color:var(--brand-red);
  font:700 12px/1 var(--mono);margin-top:1px;
}
.prob-kicker{
  margin-top:26px;font:700 clamp(1.05rem,2.1vw,1.4rem)/1.4 var(--orbit);
  letter-spacing:-.01em;color:var(--ink);
}
.prob-kicker strong{color:var(--brand-red);font-weight:700}
@media(max-width:600px){
  .prob-pain{grid-template-columns:1fr}
}

/* ============ MID-PAGE CTA BAND (added) ============ */
.midcta{
  padding:84px 0;position:relative;overflow:hidden;
  background:var(--paper-warm);border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.midcta::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(720px 320px at 50% 0%,rgba(222,60,75,.07),transparent 70%);
}
.midcta .wrap{position:relative;text-align:center;max-width:880px}
.midcta h2{font-size:clamp(1.7rem,3.8vw,2.7rem);line-height:1.1;max-width:18ch;margin:0 auto}
.midcta .mc-sub{
  font:400 15.5px/1.6 var(--sans);color:var(--ink-soft);
  max-width:62ch;margin:18px auto 0;
}
.midcta .mc-ctas{
  display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:center;margin-top:32px;
}
.midcta .btn-ghost .mono-arrow{display:inline-block;transition:transform .3s var(--ease)}
.midcta .btn-ghost:hover .mono-arrow{transform:translateX(4px)}
@media(max-width:560px){
  .midcta{padding:64px 0}
  .midcta .mc-ctas .btn{width:min(100%,360px)}
}

/* ============ TESTIMONIALS (added) ============ */
.testi{padding:120px 0;background:var(--paper);border-bottom:1px solid var(--line)}
.testi-head{max-width:680px}
.testi h2{margin-top:6px}
.testi-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:52px;
  border:1px solid var(--line);background:var(--line);
}
.testi-card{
  background:var(--paper-card);padding:34px 30px 30px;position:relative;
  display:flex;flex-direction:column;gap:22px;box-shadow:var(--shadow-soft);
  transition:background .25s var(--ease);
}
.testi-card:hover{background:#fff}
.testi-card::before{
  content:"\201C";position:absolute;top:14px;right:22px;
  font:700 56px/1 var(--orbit);color:var(--brand-red);opacity:.16;pointer-events:none;
}
.testi-q{font:400 15.5px/1.62 var(--sans);color:var(--ink);position:relative;z-index:1}
.testi-attr{
  font:500 12px/1.5 var(--mono);letter-spacing:.04em;color:var(--ink-muted);
  padding-top:18px;border-top:1px solid var(--line);margin-top:auto;
}
.testi-attr b{color:var(--ink);font-weight:700;display:block;text-transform:none;letter-spacing:.02em;font-size:13px}
.testi-strip{
  display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px 18px;
  margin-top:34px;padding:16px 22px;border:1px solid var(--line-dark);background:#fff;
}
.testi-strip span{font:600 11.5px/1 var(--mono);letter-spacing:.14em;color:var(--ink-soft)}
.testi-strip i{color:var(--line-dark);font-style:normal}
@media(max-width:880px){
  .testi-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .testi{padding:88px 0}
  .testi-card{box-shadow:none}
}

/* ============ FAQ (added) ============ */
.faq{padding:120px 0;background:var(--paper-warm);border-bottom:1px solid var(--line)}
.faq-head{max-width:680px}
.faq h2{margin-top:6px}
.faq-list{margin-top:48px;border-top:1px solid var(--line-dark);max-width:900px}
.faq-item{border-bottom:1px solid var(--line-dark);background:transparent}
.faq-item>summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:24px 4px;
  font:700 16px/1.4 var(--orbit);letter-spacing:-.01em;color:var(--ink);
  transition:color .2s var(--ease);
}
.faq-item>summary::-webkit-details-marker{display:none}
.faq-item>summary:hover{color:var(--brand-red)}
.faq-chev{
  flex:none;width:22px;height:22px;position:relative;
}
.faq-chev::before,.faq-chev::after{
  content:"";position:absolute;top:50%;width:11px;height:2px;background:var(--brand-red);
}
.faq-chev::before{left:1px;transform:translateY(-50%) rotate(45deg)}
.faq-chev::after{right:1px;transform:translateY(-50%) rotate(-45deg)}
.anim .faq-chev::before,.anim .faq-chev::after{transition:transform .28s var(--ease)}
.faq-item[open] .faq-chev::before{transform:translateY(-50%) rotate(-45deg)}
.faq-item[open] .faq-chev::after{transform:translateY(-50%) rotate(45deg)}
.faq-a{padding:0 4px 26px;max-width:74ch}
.faq-a p{font:400 14.5px/1.7 var(--sans);color:var(--ink-soft)}
/* gentle open animation only under .anim (no-JS / reduced-motion: instant) */
.anim .faq-item[open] .faq-a{animation:faq-open .32s var(--ease)}
@keyframes faq-open{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
html.io-fallback .faq-item[open] .faq-a{animation:none!important}
@media(max-width:560px){
  .faq{padding:88px 0}
  .faq-item>summary{font-size:15px;padding:20px 2px}
}

/* ============ FINAL CTA — HOW IT WORKS + DUAL CTA (added) ============ */
.fin-steps{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:56px auto 0;
  border:1px solid var(--line);background:var(--line);text-align:left;max-width:980px;
}
.fin-step{
  background:var(--paper-card);padding:30px 28px 32px;
  display:flex;flex-direction:column;gap:12px;
  transition:background .25s var(--ease);
}
.fin-step:hover{background:#fff}
.fin-step-n{font:700 13px/1 var(--mono);letter-spacing:.18em;color:var(--brand-red)}
.fin-step h3{font:700 15.5px/1.25 var(--orbit);letter-spacing:-.01em;color:var(--ink)}
.fin-step p{font:400 13.5px/1.6 var(--sans);color:var(--ink-soft)}
.fin-ctas{
  display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:center;margin-top:44px;
}
.fin-ctas .btn-red{margin-top:0}
.fin-ctas .btn-ghost .mono-arrow{display:inline-block;transition:transform .3s var(--ease)}
.fin-ctas .btn-ghost:hover .mono-arrow{transform:translateX(4px)}
.fin-risk{
  font:500 12px/1.6 var(--mono);letter-spacing:.06em;color:var(--ink-muted);
  margin-top:20px;
}
@media(max-width:780px){
  .fin-steps{grid-template-columns:1fr}
}
@media(max-width:560px){
  .fin-ctas .btn{width:min(100%,360px)}
}

/* ============ STICKY CTA (added, enhancement only — hidden w/o JS) ============ */
.sticky-cta{
  position:fixed;right:24px;bottom:24px;z-index:990;
  display:none;opacity:0;
}
html.js .sticky-cta.sticky-ready{display:block}
.anim .sticky-cta{transform:translateY(16px);transition:opacity .4s var(--ease),transform .4s var(--ease)}
.sticky-cta.sticky-show{opacity:1;transform:none}
.sticky-cta .btn-red{
  box-shadow:0 14px 36px -12px rgba(222,60,75,.6);
  padding:15px 26px;font-size:14px;
}
@media(prefers-reduced-motion:reduce){
  .sticky-cta{transform:none!important;transition:none!important}
}
@media(max-width:560px){
  .sticky-cta{
    right:0;left:0;bottom:0;
    background:rgba(247,248,249,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
    border-top:1px solid var(--line-dark);padding:12px 16px;
  }
  .sticky-cta .btn-red{width:100%;padding:16px 24px}
  .anim .sticky-cta{transform:translateY(100%);transition:opacity .35s var(--ease),transform .35s var(--ease)}
  .sticky-cta.sticky-show{transform:none}
}

/* ===== Lead qualifier modal ===== */
.lq-overlay{position:fixed;inset:0;z-index:3000;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(14,15,17,.74);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.lq-overlay.open{display:flex}
.lq-modal{width:100%;max-width:540px;max-height:calc(100vh - 40px);overflow-y:auto;background:var(--paper-card);border:1px solid var(--line-dark);box-shadow:0 30px 80px -20px rgba(0,0,0,.55);position:relative;animation:lqIn .28s var(--ease)}
@keyframes lqIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.lq-close{position:absolute;top:16px;right:16px;width:30px;height:30px;border:none;background:none;cursor:pointer;color:var(--ink-muted);font:400 22px/1 var(--sans);display:flex;align-items:center;justify-content:center}
.lq-close:hover{color:var(--ink)}
.lq-head{padding:24px 26px 18px;border-bottom:1px solid var(--line)}
.lq-htop{display:flex;align-items:center;gap:12px}
.lq-ico{width:34px;height:34px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--terminal-bg)}
.lq-ico svg{width:18px;height:18px;fill:none;stroke:var(--brand-red);stroke-width:1.8}
.lq-title{font:700 16px/1 var(--orbit);letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.lq-sub{font:400 12.5px/1.5 var(--mono);color:var(--ink-muted);margin:8px 0 0}
.lq-steps{display:flex;align-items:center;gap:6px;margin-top:16px;flex-wrap:wrap}
.lq-step{font:700 10px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);border:1px solid var(--line);padding:6px 8px}
.lq-step.active{color:var(--brand-red);border-color:var(--brand-red)}
.lq-step.done{color:var(--ink-soft);border-color:var(--line-dark)}
.lq-sarrow{color:var(--line-dark);font-size:11px}
.lq-bd{padding:24px 26px 26px}
.lq-q{font:700 clamp(18px,2.3vw,21px)/1.25 var(--orbit);letter-spacing:-.01em;color:var(--ink);margin:0 0 18px}
.lq-opts{display:flex;flex-direction:column;gap:10px}
.lq-opt{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;padding:15px 17px;background:var(--paper-card);border:1px solid var(--line);font:500 14px/1.35 var(--mono);color:var(--ink-soft);cursor:pointer;transition:border-color .2s,background .2s,transform .2s}
.lq-opt:hover{border-color:var(--brand-red);background:var(--red-tint);transform:translateX(2px)}
.lq-opt i{color:var(--brand-red);font-style:normal;flex:none;font-weight:700}
.lq-rec{background:var(--red-tint);border:1px solid var(--brand-red);padding:15px 17px;margin-bottom:18px}
.lq-rec b{display:block;font:700 15px/1.2 var(--orbit);color:var(--ink)}
.lq-rec span{display:block;font:400 12.5px/1.55 var(--mono);color:var(--ink-soft);margin-top:6px}
.lq-field{margin-bottom:13px}
.lq-field label{display:block;font:600 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:6px}
.lq-field input{width:100%;padding:12px 14px;border:1px solid var(--line-dark);background:#fff;font:400 14px/1.4 var(--mono);color:var(--ink);border-radius:0}
.lq-field input:focus{outline:none;border-color:var(--brand-red)}
.lq-field.err input{border-color:var(--brand-red)}
.lq-fe{font:500 11px/1.4 var(--mono);color:var(--brand-red);margin-top:5px}
.lq-submit{width:100%;justify-content:center;margin-top:6px}
.lq-back{background:none;border:none;cursor:pointer;font:500 12px/1 var(--mono);color:var(--ink-muted);padding:10px 0 0;display:inline-flex;align-items:center;gap:6px}
.lq-back:hover{color:var(--brand-red)}
.lq-err{background:var(--red-tint);border:1px solid var(--brand-red);color:var(--brand-red);font:500 12px/1.5 var(--mono);padding:10px 14px;margin-bottom:14px}
.lq-sched{text-align:center;padding:6px 0}
.lq-sched .si{width:54px;height:54px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;background:var(--red-tint);color:var(--brand-red);font-size:24px}
.lq-sched h3{font:700 20px/1.2 var(--orbit);color:var(--ink);margin:0 0 10px}
.lq-sched p{font:400 13.5px/1.6 var(--mono);color:var(--ink-soft);margin:0 auto 22px;max-width:36ch}
@media(max-width:560px){.lq-step{padding:5px 6px;font-size:9px}.lq-bd,.lq-head{padding-left:20px;padding-right:20px}}

/* ===== Platform teaser grid (deep-dive products) ===== */
.platform{padding:120px 0;background:var(--paper);border-bottom:1px solid var(--line)}
.pf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:50px auto 0;max-width:1000px}
.pf-card{display:flex;flex-direction:column;background:var(--paper-card);border:1px solid var(--line);box-shadow:var(--shadow-soft);padding:32px 32px 26px;color:inherit;text-decoration:none;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease)}
.pf-card:hover{transform:translateY(-4px);box-shadow:0 28px 70px -22px rgba(18,18,18,.22);border-color:var(--line-dark)}
.pf-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.pf-ic{width:46px;height:46px;flex:none;border:1px solid var(--line-dark);display:flex;align-items:center;justify-content:center;color:var(--brand-red)}
.pf-ic svg{width:23px;height:23px}
.pf-arrow{font:400 19px/1 var(--mono);color:var(--ink-muted);transition:transform .3s var(--ease),color .2s}
.pf-card:hover .pf-arrow{transform:translateX(4px);color:var(--brand-red)}
.pf-name{font:700 1.22rem/1.1 var(--orbit);letter-spacing:.01em;margin-bottom:10px}
.pf-name b{color:var(--brand-red);font-weight:700}
.pf-desc{font:400 13.8px/1.62 var(--sans);color:var(--ink-soft);margin-bottom:18px;flex:1}
.pf-tags{display:flex;flex-wrap:wrap;gap:7px;padding-top:16px;border-top:1px solid var(--line)}
.pf-tags span{font:600 9.8px/1 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted);background:var(--paper-warm);border:1px solid var(--line);padding:7px 10px}
@media(max-width:760px){.pf-grid{grid-template-columns:1fr}}

/* ===== Product-page kit ===== */
.pp-head{max-width:780px;margin:0 auto 52px;text-align:center}
.pp-head .eyebrow{justify-content:center}
.pp-head .caption{margin-left:auto;margin-right:auto}
.pp-alt{background:var(--paper-warm)}
.pp-dark{background:var(--ink);color:var(--paper);position:relative;overflow:hidden}
.pp-dark::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 22% 28%,rgba(222,60,75,.14),transparent 54%);pointer-events:none}
.pp-dark .wrap{position:relative;z-index:2}
.pp-dark .eyebrow{color:rgba(247,248,249,.62)}.pp-dark .eyebrow .eb-t{color:var(--red-bright)}
.pp-dark h2{color:#fff}.pp-dark h2 .red{color:var(--red-bright)}.pp-dark .caption{color:rgba(247,248,249,.66)}
/* steps */
.pp-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1120px;margin:0 auto}
.pp-step{position:relative;background:var(--paper-card);border:1px solid var(--line);box-shadow:var(--shadow-soft);padding:28px 24px}
.pp-step-n{font:700 13px/1 var(--mono);letter-spacing:.06em;color:var(--brand-red);background:var(--red-tint);border:1px solid rgba(222,60,75,.22);width:36px;height:36px;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.pp-step h3{font:700 1rem/1.2 var(--orbit);margin-bottom:9px}
.pp-step p{font:400 12.8px/1.6 var(--mono);color:var(--ink-soft)}
.pp-step::after{content:"\2192";position:absolute;top:34px;right:-13px;font:400 16px/1 var(--mono);color:var(--line-dark);z-index:3}
.pp-step:last-child::after{display:none}
@media(max-width:880px){.pp-steps{grid-template-columns:1fr 1fr}.pp-step::after{display:none}}
@media(max-width:520px){.pp-steps{grid-template-columns:1fr}}
/* feature grid */
.pp-feats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1120px;margin:0 auto}
.pp-feat{background:var(--paper-card);border:1px solid var(--line);box-shadow:var(--shadow-soft);padding:28px 26px;transition:transform .3s var(--ease),border-color .3s var(--ease),box-shadow .3s var(--ease)}
.pp-feat:hover{transform:translateY(-4px);border-color:var(--line-dark);box-shadow:0 28px 70px -22px rgba(18,18,18,.2)}
.pp-feat-ic{width:44px;height:44px;border:1px solid var(--line-dark);display:flex;align-items:center;justify-content:center;color:var(--brand-red);margin-bottom:18px}
.pp-feat-ic svg{width:22px;height:22px}
.pp-feat h3{font:700 1.02rem/1.25 var(--orbit);margin-bottom:9px}
.pp-feat p{font:400 13px/1.62 var(--mono);color:var(--ink-soft)}
.pp-dark .pp-feat{background:rgba(255,255,255,.03);border-color:rgba(255,255,255,.08)}
.pp-dark .pp-feat:hover{border-color:rgba(255,71,87,.4)}
.pp-dark .pp-feat-ic{border-color:rgba(255,255,255,.16);color:var(--red-bright)}
.pp-dark .pp-feat h3{color:#fff}.pp-dark .pp-feat p{color:rgba(247,248,249,.66)}
@media(max-width:860px){.pp-feats{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.pp-feats{grid-template-columns:1fr}}
/* stat band */
.pp-stats{display:grid;grid-template-columns:repeat(4,1fr);max-width:1000px;margin:0 auto;border:1px solid var(--line);background:var(--paper-card)}
.pp-stat{padding:34px 20px;text-align:center;border-right:1px solid var(--line)}
.pp-stat:last-child{border-right:none}
.pp-stat b{display:block;font:700 clamp(1.7rem,3.2vw,2.4rem)/1 var(--orbit);color:var(--brand-red);letter-spacing:-.01em}
.pp-stat span{display:block;margin-top:10px;font:600 10px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}
.pp-dark .pp-stats{background:rgba(255,255,255,.03);border-color:rgba(255,255,255,.1)}
.pp-dark .pp-stat{border-color:rgba(255,255,255,.1)}.pp-dark .pp-stat b{color:var(--red-bright)}.pp-dark .pp-stat span{color:rgba(247,248,249,.55)}
@media(max-width:760px){.pp-stats{grid-template-columns:1fr 1fr}.pp-stat:nth-child(2){border-right:none}.pp-stat:nth-child(1),.pp-stat:nth-child(2){border-bottom:1px solid var(--line)}}
/* compare */
.pp-compare{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1000px;margin:0 auto}
.pp-col{border:1px solid var(--line);background:var(--paper-card);padding:30px}
.pp-col.bad{background:var(--paper-warm)}
.pp-col.good{border-color:var(--brand-red);box-shadow:var(--shadow-soft)}
.pp-col h3{font:700 .8rem/1 var(--mono);letter-spacing:.13em;text-transform:uppercase;margin-bottom:20px}
.pp-col.bad h3{color:var(--ink-muted)}.pp-col.good h3{color:var(--brand-red)}
.pp-col ul{list-style:none;display:flex;flex-direction:column;gap:13px}
.pp-col li{display:flex;gap:11px;font:400 13.6px/1.5 var(--sans);color:var(--ink-soft)}
.pp-col li svg{width:16px;height:16px;flex:none;margin-top:2px}
.pp-col.bad li svg{color:var(--ink-muted)}.pp-col.good li svg{color:var(--status-green)}
@media(max-width:760px){.pp-compare{grid-template-columns:1fr}}
/* faq */
.pp-faq{max-width:800px;margin:0 auto}
.pp-faq details{border:1px solid var(--line);background:var(--paper-card);margin-bottom:12px}
.pp-faq summary{list-style:none;cursor:pointer;padding:21px 24px;font:700 1rem/1.4 var(--orbit);display:flex;align-items:center;justify-content:space-between;gap:16px}
.pp-faq summary::-webkit-details-marker{display:none}
.pp-faq summary::after{content:"+";font:400 24px/1 var(--mono);color:var(--brand-red);flex:none;transition:transform .3s var(--ease)}
.pp-faq details[open] summary::after{transform:rotate(45deg)}
.pp-faq .pp-fa{padding:0 24px 22px;font:400 14px/1.7 var(--sans);color:var(--ink-soft)}
.pp-faq .pp-fa strong{color:var(--ink)}
/* mini quote */
.pp-quote{max-width:840px;margin:0 auto;text-align:center}
.pp-quote blockquote{font:500 clamp(1.15rem,2.3vw,1.6rem)/1.5 var(--orbit);letter-spacing:-.01em;color:var(--ink)}
.pp-dark .pp-quote blockquote{color:#fff}
.pp-quote .pp-cite{margin-top:24px;font:600 12px/1.6 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.pp-quote .pp-cite b{color:var(--brand-red);display:block;margin-bottom:2px}
