@font-face{
  font-family:"Clarity City";
  src:url("fonts/clarity-city/ClarityCity-SemiBold.woff2") format("woff2");
  font-style:normal;
  font-weight:600;
  font-display:swap;
}
@font-face{
  font-family:"Clarity City";
  src:url("fonts/clarity-city/ClarityCity-Bold.woff2") format("woff2");
  font-style:normal;
  font-weight:700;
  font-display:swap;
}
@font-face{
  font-family:"Clarity City";
  src:url("fonts/clarity-city/ClarityCity-ExtraBold.woff2") format("woff2");
  font-style:normal;
  font-weight:800;
  font-display:swap;
}

/* ============ DESIGN TOKENS — derived from neeos-logo.svg ============ */
:root{
  --green:#C9D0C6;
  --green-dark:#AEB8AA;
  --green-soft:rgba(201,208,198,.1);
  --green-glow:rgba(201,208,198,.18);
  --green-ink:#C9D0C6;
  --cta:#8FFF5A;
  --cta-dark:#8FFF5A;
  --cta-glow:rgba(225,255,0,.25);
  --card-glow-rgb:201,208,198;
  --section-glow-rgb:201,208,198;
  --gray:#B7B7B7;             /* logo "solutions" gray */
  --bg:#070908;
  --bg2:#0B0E0C;
  --surface:#10140F;
  --surface2:#151A13;
  --line:rgba(255,255,255,.08);
  --line-strong:rgba(255,255,255,.14);
  --text:#F4F6F1;
  --muted:#B7B7B7;
  --dim:#7C817B;
  --radius:28px;
  --font-display:"Space Grotesk",sans-serif;
  --font-title:"Clarity City","Space Grotesk",sans-serif;
  --font-body:"Inter",sans-serif;
  --max:1180px;
  --ease:cubic-bezier(.22,.9,.28,1);
}
html[data-theme="light"]{
  --green:#273129;
  --green-dark:#111812;
  --green-soft:rgba(17,24,18,.07);
  --green-glow:rgba(17,24,18,.15);
  --green-ink:#273129;
  --cta:#8FFF5A;
  --cta-dark:#8FFF5A;
  --cta-glow:rgba(225,255,0,.22);
  --card-glow-rgb:88,100,90;
  --section-glow-rgb:88,100,90;
  --gray:#536056;
  --bg:#FFFFFF;
  --bg2:#F6F8F4;
  --surface:#FFFFFF;
  --surface2:#EEF3EC;
  --line:#E1E7DF;
  --line-strong:#CED8CB;
  --text:#111812;
  --muted:#4B574D;
  --dim:#6C776E;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;color-scheme:dark}
html[data-theme="light"]{color-scheme:light}
body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--cta);color:#08130a}
img,svg{display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}
.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:200;transform:translateY(-160%);padding:.65rem 1rem;border-radius:.65rem;background:var(--cta);color:#08130a;font-weight:700;transition:transform .2s}
.skip-link:focus{transform:translateY(0)}

/* language switching */
html[data-lang="en"] .fr{display:none !important}
html[data-lang="fr"] .en{display:none !important}

/* ============ TYPOGRAPHY ============ */
h1,h2,h3,h4{font-family:var(--font-title);font-weight:600;letter-spacing:-.025em;line-height:1.06;text-wrap:balance}
h1{font-size:clamp(2.6rem,6.4vw,4.9rem)}
h2{font-size:clamp(1.9rem,4vw,3rem)}
h3{font-size:1.25rem;line-height:1.3}
main>section h2{font-weight:700;letter-spacing:-.04em;line-height:1.01}
.lead{font-size:clamp(1.05rem,1.6vw,1.3rem);color:var(--muted);font-weight:400;text-wrap:pretty}
.eyebrow{display:inline-flex;align-items:center;gap:.55rem;font-size:.8rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin-bottom:1.2rem}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--cta);border-radius:2px;box-shadow:0 0 10px rgba(143,255,90,.2)}

/* ============ LAYOUT ============ */
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
section{padding:clamp(3.75rem,7vw,6.5rem) 0;position:relative}
main>section:not(.final)::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:min(100%,78rem);
  height:clamp(12rem,26vw,20rem);
  transform:translateX(-50%);
  background:radial-gradient(ellipse at 50% 100%,rgba(var(--section-glow-rgb),.095) 0%,rgba(var(--section-glow-rgb),.045) 34%,transparent 72%);
  pointer-events:none;
  z-index:0;
}
main>section:not(.final)::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:min(88%,70rem);
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(var(--section-glow-rgb),.1) 16%,rgba(var(--section-glow-rgb),.32) 50%,rgba(var(--section-glow-rgb),.1) 84%,transparent);
  pointer-events:none;
  z-index:2;
}
main>section>.wrap{position:relative;z-index:1}
.sec-head{max-width:720px;margin-bottom:clamp(2.5rem,5vw,4rem)}
.sec-head p{margin-top:1.1rem}
.grid{display:grid;gap:1.1rem}
.svg-defs{position:absolute}
.problem-section{padding:5rem 0 6.5rem}
.compact-section{padding:4rem 0}
.sec-head-centered{text-align:center;margin-left:auto;margin-right:auto}
.sec-head-wide{max-width:820px}
.eyebrow-centered{justify-content:center}
.section-display{font-size:clamp(2.2rem,4.5vw,3.4rem)}
.flow-note{text-align:center;color:var(--dim);font-size:.9rem;margin-top:2.2rem}
.benefits-grid{gap:2rem}
.accent-text{color:var(--cta)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* ============ NAV ============ */
nav{position:fixed;top:0;left:0;right:0;z-index:100;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:rgba(7,9,8,.72);border-bottom:1px solid transparent;transition:border-color .3s}
nav.scrolled{border-bottom-color:var(--line)}
.nav-inner{max-width:var(--max);margin:0 auto;padding:0 24px;height:68px;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.logo{display:inline-flex;align-items:center;flex:0 0 auto}
.logo-dark{display:none}
.logo-image{display:block;width:132px;height:auto}
.logo-image-light{display:none}
.logo-image-dark{display:block}
.logo-dark-wordmark{font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:.08em}
.logo-dark-wordmark{display:none}
html[data-theme="light"] .logo-image-light{display:block}
html[data-theme="light"] .logo-image-dark{display:none}
.nav-links{display:flex;gap:1.8rem;align-items:center;font-size:.92rem;color:var(--muted)}
.nav-links a{transition:color .2s}
.nav-links a:hover{color:var(--text)}
.nav-actions{display:flex;gap:.9rem;align-items:center}
.theme-toggle{
  width:2.25rem;
  height:2.25rem;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border:1px solid var(--line-strong);
  border-radius:.72rem;
  background:var(--surface);
  color:var(--muted);
  transition:transform .25s var(--ease),border-color .2s,color .2s,background-color .3s;
}
.theme-toggle:hover{transform:translateY(-2px);border-color:var(--green);color:var(--green)}
.theme-toggle:active{transform:translateY(0) scale(.96)}
.theme-toggle-icon{
  width:1.05rem;
  height:1.05rem;
  border:1.6px solid currentColor;
  border-radius:50%;
  position:relative;
  overflow:hidden;
  transform:rotate(-28deg);
  transition:transform .45s var(--ease);
}
.theme-toggle-icon::after{
  content:"";
  position:absolute;
  inset:-1px -1px -1px 50%;
  background:currentColor;
}
html[data-theme="light"] .theme-toggle-icon{transform:rotate(152deg)}
.nav-menu-toggle{display:none;padding:.45rem .7rem;border:1px solid var(--line-strong);border-radius:.65rem;font-size:.82rem;font-weight:600}
.nav-cta{padding:.55rem 1.1rem;font-size:.85rem}
.lang-toggle{display:flex;border:1px solid var(--line-strong);border-radius:999px;overflow:hidden;font-size:.78rem;font-weight:600}
.lang-toggle a{padding:.32rem .7rem;color:var(--dim);transition:.2s}
.lang-toggle a.active{background:var(--green);color:#08130a}
@media(max-width:900px){
  .nav-inner{position:relative}
  .nav-menu-toggle{display:block;margin-left:auto}
  .nav-links{display:none;position:absolute;top:calc(100% + 1px);left:1rem;right:1rem;flex-direction:column;align-items:stretch;gap:0;padding:.65rem;border:1px solid var(--line-strong);border-radius:1rem;background:rgba(11,14,12,.98);box-shadow:0 1rem 2.5rem rgba(2,8,4,.45)}
  .nav-links.open{display:flex}
  .nav-links a{padding:.7rem .8rem;border-radius:.6rem}
  .nav-links a:hover{background:var(--surface2)}
}
@media(max-width:620px){
  .nav-inner{padding:0 16px;gap:.55rem}
  .nav-inner>.logo .logo-image{width:116px}
  .nav-actions .nav-cta{display:none}
  .nav-actions{gap:.55rem}
}

/* ============ BUTTONS ============ */
.btn{display:inline-flex;align-items:center;gap:.6rem;font-weight:600;font-size:.95rem;padding:.85rem 1.5rem;border-radius:999px;transition:transform .25s var(--ease),box-shadow .25s,background .25s;will-change:transform}
.btn-primary{background:var(--cta);color:#08130a;box-shadow:0 0 0 0 var(--cta-glow)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 32px var(--cta-glow)}
.btn-ghost{border:1px solid var(--line-strong);color:var(--text)}
.btn-ghost:hover{transform:translateY(-2px);border-color:var(--green);color:var(--green)}
.btn:active{transform:translateY(1px) scale(.985)}
.btn:disabled{cursor:wait;opacity:.72;transform:none}
.btn .arr{transition:transform .25s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}

/* ============ HERO ============ */
.hero {
  min-height: 100svh;
  display: flex;
  align-items: center;
  padding-top: 68px;
  overflow: hidden;
  position: relative;
}
.hero h1 {
  font-size: clamp(2.0rem, 4.2vw, 3.3rem);
  line-height: 1.05;
  letter-spacing: -0.03em;
  text-wrap:wrap;
}
.hero-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  background:var(--bg);
  isolation:isolate;
}
.hero-bg::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  opacity:.13;
  background-image:
    repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0,rgba(255,255,255,.018) 1px,transparent 1px,transparent 3px),
    radial-gradient(circle at 50% 50%,transparent 38%,var(--bg) 115%);
  mix-blend-mode:soft-light;
}
.hero-liquid{
  position:absolute;
  z-index:0;
  inset:-8%;
  width:116%;
  height:116%;
  opacity:.78;
  filter:saturate(1.18) contrast(1.04);
  transform:translateZ(0);
}
.hero-grid{
  position:relative;
  z-index:2;
}
.hero-grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 3rem;
  align-items: center;
}
@media(max-width:960px){
  .hero-grid{grid-template-columns:1fr}
  .hero-art{display:none}
}
.hero h1 .hl {
  color: var(--cta);
  display:inline-grid;
  grid-template-areas:"hero-word";
  font-size:clamp(.72em,4.1vw,1em);
  max-width:100%;
  position:relative;
  isolation:isolate;
  vertical-align:baseline;
  white-space:nowrap;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
}
.hero h1>.fr .hl{font-size:clamp(.66em,3.85vw,.9em)}
.typed-copy{
  grid-area:hero-word;
  min-width:0;
  perspective:700px;
  transform-style:preserve-3d;
  transform-origin:50% 55%;
  will-change:opacity;
}
.typed-copy-ghost{
  opacity:0;
  pointer-events:none;
  user-select:none;
}
.typed-copy-ghost.is-rotating-out{
  opacity:1;
}
.typed-letter{
  display:inline-block;
  position:relative;
  transform:rotateX(0deg);
  transform-origin:50% 50% .28em;
  transform-style:preserve-3d;
  backface-visibility:hidden;
  will-change:transform,opacity;
}
.typed-letter.is-behind{
  opacity:0;
  transform:rotateX(-90deg);
}
.typed-letter.is-out{
  animation:hero-letter-rotate-out 320ms cubic-bezier(.55,.055,.675,.19) both;
  animation-delay:calc(var(--letter-index) * 34ms);
}
.typed-letter.is-in{
  animation:hero-letter-rotate-in 400ms cubic-bezier(.175,.885,.32,1.275) both;
  animation-delay:calc(320ms + var(--letter-index) * 34ms);
}
@keyframes hero-letter-rotate-out{
  0%{opacity:1;transform:rotateX(0deg)}
  100%{opacity:0;transform:rotateX(90deg)}
}
@keyframes hero-letter-rotate-in{
  0%{opacity:0;transform:rotateX(-90deg)}
  100%{opacity:1;transform:rotateX(0deg)}
}
.hero .lead { margin: 1.6rem 0 2.4rem; max-width: 540px; }
.hero-ctas { display: flex; gap: 1rem; flex-wrap: wrap; }
.hero-note { margin-top: 2.6rem; font-size: .85rem; color: var(--dim); display: flex; gap: 1.8rem; flex-wrap: wrap; }
.hero-note span { display: flex; align-items: center; gap: .45rem; }
.hero-note svg { width: 14px; height: 14px; stroke: var(--green); }

/* ============ CONVERSION OFFER ============ */
.conversion-offer{
  padding:0 0 clamp(4.5rem,8vw,7rem);
  background:linear-gradient(180deg,var(--bg) 0%,var(--bg2) 100%);
}
.conversion-shell{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  gap:clamp(2rem,5vw,4.5rem);
  align-items:center;
  padding:clamp(2rem,5vw,4rem);
  border:1px solid rgba(201,208,198,.2);
  border-radius:clamp(1.5rem,4vw,2.5rem);
  background:
    radial-gradient(circle at 12% 0%,rgba(201,208,198,.08),transparent 42%),
    var(--surface);
  box-shadow:0 28px 80px rgba(0,0,0,.28);
  position:relative;
  overflow:hidden;
}
.conversion-shell::after{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  right:-130px;
  bottom:-150px;
  border:1px solid rgba(201,208,198,.18);
  border-radius:50%;
  box-shadow:0 0 0 34px rgba(201,208,198,.025),0 0 0 68px rgba(201,208,198,.018);
  pointer-events:none;
}
.conversion-copy{position:relative;z-index:1}
.conversion-copy h2{font-size:clamp(1.9rem,3.7vw,3rem)}
.conversion-copy .lead{margin:1.2rem 0 1.8rem;max-width:620px}
.conversion-deliverables{
  display:grid;
  border:1px solid var(--line-strong);
  border-radius:1.4rem;
  background:rgba(0,0,0,.2);
  position:relative;
  z-index:1;
  overflow:hidden;
  transition:transform .3s var(--ease),border-color .3s,box-shadow .3s var(--ease);
}
.conversion-deliverables:hover{
  transform:translateY(-2px);
  border-color:rgba(var(--card-glow-rgb),.26);
  box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.04),0 12px 30px rgba(0,0,0,.18);
}
.conversion-deliverables>div{
  display:grid;
  grid-template-columns:2.2rem 1fr;
  column-gap:.8rem;
  padding:1.15rem 1.25rem;
  border-bottom:1px solid var(--line);
  transition:transform .3s var(--ease),background-color .3s;
}
.conversion-deliverables:hover>div{transform:translateX(2px)}
.conversion-deliverables>div:hover{background:rgba(var(--card-glow-rgb),.035)}
.conversion-deliverables>div:last-child{border-bottom:0}
.conversion-deliverables>div>span{
  grid-row:1 / span 2;
  color:var(--green);
  font-family:var(--font-display);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.08em;
}
.conversion-deliverables strong{font-family:var(--font-display);font-size:1rem}
.conversion-deliverables small{color:var(--muted);font-size:.8rem;line-height:1.5;margin-top:.15rem}
.conversion-fineprint{
  grid-column:1 / -1;
  padding-top:1.15rem;
  border-top:1px solid var(--line);
  color:var(--dim);
  font-size:.78rem;
  text-align:center;
  position:relative;
  z-index:1;
}
@media(max-width:820px){
  .conversion-shell{grid-template-columns:1fr}
  .conversion-fineprint{grid-column:auto}
}

/* Cerebrium-style Hero Network Graphic & 3D Tilt */
.hero-art {
  perspective: 1000px;
  transform-style: preserve-3d;
  cursor: pointer;
}
.hero-art svg {
  width: 100%;
  height: auto;
  transition: transform 0.18s cubic-bezier(0.2, 0.8, 0.3, 1);
  transform-style: preserve-3d;
  filter: drop-shadow(0 20px 40px rgba(0,0,0,0.6));
}
.hero-satellite{
  transform-box:view-box;
  transform-origin:var(--origin-x) var(--origin-y);
  animation:hero-icon-arrive 1.05s cubic-bezier(.16,.88,.22,1.18) var(--entry-delay) both;
}
.hero-satellite-1{--origin-x:90px;--origin-y:90px;--entry-x:-230px;--entry-y:-190px;--overshoot-x:7px;--overshoot-y:6px;--settle-x:-2px;--settle-y:-1px;--entry-rotation:-22deg;--entry-delay:.06s}
.hero-satellite-2{--origin-x:330px;--origin-y:90px;--entry-x:230px;--entry-y:-190px;--overshoot-x:-7px;--overshoot-y:6px;--settle-x:2px;--settle-y:-1px;--entry-rotation:20deg;--entry-delay:.13s}
.hero-satellite-3{--origin-x:60px;--origin-y:210px;--entry-x:-260px;--entry-y:-15px;--overshoot-x:9px;--overshoot-y:1px;--settle-x:-2px;--settle-y:0px;--entry-rotation:-18deg;--entry-delay:.2s}
.hero-satellite-4{--origin-x:360px;--origin-y:210px;--entry-x:260px;--entry-y:15px;--overshoot-x:-9px;--overshoot-y:-1px;--settle-x:2px;--settle-y:0px;--entry-rotation:18deg;--entry-delay:.27s}
.hero-satellite-5{--origin-x:90px;--origin-y:330px;--entry-x:-230px;--entry-y:190px;--overshoot-x:7px;--overshoot-y:-6px;--settle-x:-2px;--settle-y:1px;--entry-rotation:20deg;--entry-delay:.34s}
.hero-satellite-6{--origin-x:330px;--origin-y:330px;--entry-x:230px;--entry-y:190px;--overshoot-x:-7px;--overshoot-y:-6px;--settle-x:2px;--settle-y:1px;--entry-rotation:-20deg;--entry-delay:.41s}
.hero-core-entry{
  transform-box:view-box;
  transform-origin:210px 210px;
  animation:hero-core-arrive .82s cubic-bezier(.16,.9,.2,1.22) .68s both;
}
.edges{
  transform-box:view-box;
  transform-origin:210px 210px;
  animation:hero-network-reveal .6s var(--ease) 1.05s both;
}
@keyframes hero-icon-arrive{
  0%{opacity:0;transform:translate(var(--entry-x),var(--entry-y)) scale(.16) rotate(var(--entry-rotation))}
  62%{opacity:1;transform:translate(var(--overshoot-x),var(--overshoot-y)) scale(1.08) rotate(-1.5deg)}
  82%{transform:translate(var(--settle-x),var(--settle-y)) scale(.97) rotate(.6deg)}
  100%{opacity:1;transform:translate(0,0) scale(1) rotate(0)}
}
@keyframes hero-core-arrive{
  0%{opacity:0;transform:scale(.12) rotate(-18deg)}
  58%{opacity:1;transform:scale(1.12) rotate(2deg)}
  80%{transform:scale(.96) rotate(-.8deg)}
  100%{opacity:1;transform:scale(1) rotate(0)}
}
@keyframes hero-network-reveal{
  0%{opacity:0;transform:scale(.82)}
  100%{opacity:1;transform:scale(1)}
}
.node {
  fill: rgba(18, 24, 19, 0.9);
  stroke: rgba(201, 208, 198, 0.3);
  stroke-width: 1.5;
  transition: fill 0.3s, stroke 0.3s, filter 0.3s;
}
.node:hover {
  fill: rgba(201, 208, 198, 0.14);
  stroke: #C9D0C6;
  filter: drop-shadow(0 0 18px rgba(201, 208, 198, 0.45));
}
.node-core {
  fill: rgba(14, 28, 16, 0.95);
  stroke: #C9D0C6;
  stroke-width: 2.5;
}
.laser-edge {
  stroke-width: 1.8;
  opacity: 0.85;
}
.edge {
  stroke: rgba(255, 255, 255, 0.14);
  stroke-width: 1;
}
.pulse {
  fill: var(--green);
}
.p-anim {
  animation: travel 3.5s linear infinite;
  animation-delay:1.75s;
}
@keyframes travel {
  0% { offset-distance: 0%; opacity: 0 }
  10% { opacity: 1 }
  90% { opacity: 1 }
  100% { offset-distance: 100%; opacity: 0 }
}
.ring {
  fill: none;
  stroke: var(--green);
  opacity: .4;
  animation:
    ring-arrive .55s var(--ease) 1.12s both,
    ringpulse 3.4s var(--ease) 1.82s infinite;
  transform-origin:210px 210px;
}
.ring-2{animation-delay:1.22s,3.02s;stroke:#00f2fe}
.ring-3{animation-delay:1.32s,4.22s;stroke:#a855f7}
.pulse-1{offset-path:path("M90 90 L210 210");fill:#c9d0c6;filter:url("#neonGlow")}
.pulse-2{offset-path:path("M360 210 L210 210");animation-delay:2.85s;fill:#00f2fe;filter:url("#neonGlow")}
.pulse-3{offset-path:path("M90 330 L210 210");animation-delay:3.75s;fill:#c9d0c6;filter:url("#neonGlow")}
.pulse-4{offset-path:path("M210 210 L330 90");animation-delay:2.25s;fill:#00f2fe;filter:url("#neonGlow")}
.pulse-5{offset-path:path("M210 210 L330 330");animation-delay:4.35s;fill:#a855f7;filter:url("#neonGlow")}
@keyframes ring-arrive {
  0% { transform: scale(.72); opacity: 0 }
  100% { transform: scale(1); opacity: .4 }
}
@keyframes ringpulse {
  0% { transform: scale(.6); opacity: .6 }
  100% { transform: scale(1.6); opacity: 0 }
}

/* ============ REVEAL ANIMATION ============ */
.rv {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity .7s var(--ease), transform .7s var(--ease);
}
.rv.in {
  opacity: 1;
  transform: none;
}
.rv-d1 { transition-delay: .08s; }
.rv-d2 { transition-delay: .16s; }
.rv-d3 { transition-delay: .24s; }

@media (prefers-reduced-motion: no-preference) {
  @supports ((animation-timeline: view()) and (animation-range: entry)) {
    @keyframes scroll-fade-in {
      from {
        opacity: 0;
        transform: translateY(32px);
      }
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }
    .rv {
      transition: none;
      animation: scroll-fade-in auto linear forwards;
      animation-timeline: view();
      animation-range: entry 10% entry 45%;
    }
    .rv-d1, .rv-d2, .rv-d3 {
      transition-delay: 0s;
    }
  }
}

/* ============ CARDS ============ */
.card,
.ben,
.phantom-card,
.stack-card,
.carousel-card,
.step-content,
.chat-demo,
.conversion-deliverables{
  --mouse-x:50%;
  --mouse-y:50%;
  --micro-x:0px;
  --micro-y:0px;
  --micro-inverse-x:0px;
  --micro-inverse-y:0px;
}
.card::after,
.ben::after,
.phantom-card::after,
.stack-card::after,
.carousel-card::after,
.step-content::after,
.chat-demo::after,
.conversion-deliverables::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:radial-gradient(24rem circle at var(--mouse-x) var(--mouse-y),rgba(var(--card-glow-rgb),.085),transparent 48%);
  opacity:0;
  pointer-events:none;
  z-index:0;
  transition:opacity .3s ease;
}
.card:hover::after,
.ben:hover::after,
.phantom-card:hover::after,
.stack-card:hover::after,
.carousel-card:hover::after,
.step-content:hover::after,
.chat-demo:hover::after,
.conversion-deliverables:hover::after,
.card:focus-within::after,
.phantom-card:focus-within::after,
.carousel-card:focus-within::after,
.step-content:focus-within::after,
.chat-demo:focus-within::after,
.conversion-deliverables:focus-within::after{opacity:1}
.card>*,
.ben>*,
.phantom-card>*,
.stack-card>*,
.carousel-card>*,
.step-content>*,
.chat-demo>*,
.conversion-deliverables>*{position:relative;z-index:1}
.card{background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 32%),var(--surface);border:1px solid var(--line);border-radius:1.25rem;padding:1.7rem;transition:transform .3s var(--ease),border-color .3s,background .3s,box-shadow .3s var(--ease);position:relative;overflow:hidden;box-shadow:inset 0 1px rgba(255,255,255,.035),0 4px 16px rgba(0,0,0,.12)}
.card:hover{transform:translateY(-2px);border-color:rgba(var(--card-glow-rgb),.28);background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 34%),var(--surface2);box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.06),0 10px 28px rgba(0,0,0,.2),0 22px 52px rgba(0,0,0,.16)}
.card:hover .card-ico{transform:translate3d(var(--micro-x,0),calc(var(--micro-y,0) - 2px),0) scale(1.04)}
.card-ico{width:42px;height:42px;border-radius:12px;background:var(--green-soft);color:var(--green);display:flex;align-items:center;justify-content:center;margin-bottom:1.1rem;transition:transform .3s var(--ease),background-color .3s,color .3s}
.card-ico svg{width:20px;height:20px}
.card h3{margin-bottom:.5rem}
.card p{font-size:.92rem;color:var(--muted)}
.card .value{margin-top:.9rem;font-size:.82rem;color:var(--green);font-weight:500;display:flex;align-items:center;gap:.4rem}

/* ============ PROBLEM & STACKING CARDS ============ */
.problem {
  background: var(--bg2);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.stack-cards-wrapper {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  margin-top: 3.5rem;
  position: relative;
  padding-bottom: 4rem;
}

.stack-card {
  position: sticky;
  top: var(--stack-top, 120px);
  border-radius: 32px;
  padding: 3rem 2.8rem;
  min-height: 380px;
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 2.5rem;
  align-items: center;
  overflow: hidden;
  box-shadow: 0 -12px 40px rgba(0, 0, 0, 0.4), 0 24px 60px rgba(0, 0, 0, 0.5);
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), filter 0.35s ease, opacity 0.35s ease;
  will-change: transform, filter, opacity;
  border: 1px solid rgba(255, 255, 255, 0.12);
  isolation:isolate;
}
.stack-card:nth-child(1){--stack-top:100px;z-index:1}
.stack-card:nth-child(2){--stack-top:125px;z-index:2}
.stack-card:nth-child(3){--stack-top:150px;z-index:3}
.stack-card:nth-child(4){--stack-top:175px;z-index:4}

@media (max-width: 900px) {
  .stack-card {
    grid-template-columns: 1fr;
    gap: 1.8rem;
    min-height: auto;
    padding: 2.2rem 1.8rem;
  }
}

/* Color Themes for Stack Cards */
.s-theme-rose {
  background: linear-gradient(135deg, #FFECEE 0%, #FFD6DA 100%);
  color: #2A0E13;
}
.s-theme-rose .s-desc { color: #5E2630; }
.s-theme-rose .s-pill { background: rgba(255, 255, 255, 0.85); color: #9E1C30; }

.s-theme-mint {
  background: linear-gradient(135deg, #E2F5EE 0%, #C3EAD9 100%);
  color: #0B241B;
}
.s-theme-mint .s-desc { color: #235443; }
.s-theme-mint .s-pill { background: rgba(255, 255, 255, 0.85); color: #086043; }

.s-theme-lavender {
  background: linear-gradient(135deg, #EBE4FF 0%, #D8CAFF 100%);
  color: #1A1433;
}
.s-theme-lavender .s-desc { color: #43396B; }
.s-theme-lavender .s-pill { background: rgba(255, 255, 255, 0.85); color: #4B27B3; }

.s-theme-cream {
  background: linear-gradient(135deg, #F9F6ED 0%, #EFE8D3 100%);
  color: #241D0D;
}
.s-theme-cream .s-desc { color: #594B2C; }
.s-theme-cream .s-pill { background: rgba(0, 0, 0, 0.08); color: #241D0D; }

/* Internal Card Typography */
.stack-card h3 {
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  margin-bottom: 0.8rem;
}
.stack-card .s-desc {
  font-size: 1.05rem;
  line-height: 1.6;
}

.s-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 1.1rem;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 700;
  margin-bottom: 1.4rem;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

/* Interactive Visual Mockups inside Stack Cards */
.s-mockup-box {
  background: rgba(15, 17, 21, 0.92);
  border-radius: 24px;
  padding: 1.6rem;
  color: #FFFFFF;
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 16px 40px rgba(0,0,0,0.3);
  transition:transform .35s var(--ease),box-shadow .35s var(--ease);
}
.stack-card:hover .s-mockup-box{
  transform:translate3d(var(--micro-x,0),calc(var(--micro-y,0) - 3px),0);
  box-shadow:0 20px 48px rgba(0,0,0,.34);
}
.s-stat-value{transition:transform .3s var(--ease)}
.stack-card:hover .s-stat-value{transform:translateX(2px)}

.s-stat-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.75rem 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.mockup-heading{font-size:.72rem;color:#8e8e9e;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.8rem;font-weight:700}
.s-stat-row:last-child {
  border-bottom: none;
}
.s-stat-label {
  font-size: 0.88rem;
  color: #9A9AB0;
}
.s-stat-value {
  font-weight: 700;
  font-size: 0.95rem;
}
.s-stat-value.highlight-red { color: #FF6B6B; }
.s-stat-value.highlight-mint { color: #C9D0C6; }
.s-stat-value.highlight-purple { color: #C4B5FD; }
.s-stat-value.highlight-gold { color: #F59E0B; }

/* ============ PHANTOM SHOWCASE CARDS ============ */
.phantom-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin-top: 2.5rem;
}
@media (max-width: 1024px) {
  .phantom-grid {
    grid-template-columns: 1fr;
  }
}

.phantom-card {
  border-radius: 32px;
  padding: 2.4rem 2rem 2rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 440px;
  position: relative;
  overflow: hidden;
  transition: transform 0.3s var(--ease), box-shadow 0.3s var(--ease),border-color .3s;
  box-shadow:inset 0 1px rgba(255,255,255,.3),0 4px 16px rgba(0,0,0,.06);
  border:1px solid rgba(16,20,15,.08);
  isolation:isolate;
}

.phantom-card:hover {
  transform:translateY(-2px);
  border-color:rgba(var(--card-glow-rgb),.24);
  box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.05),0 10px 28px rgba(0,0,0,.12),0 22px 52px rgba(0,0,0,.1);
}

/* Card Themes */
.p-theme-lavender {
  background: #EBE4FF;
  color: #161524;
}
.p-theme-lavender .p-desc { color: #524E68; }

.p-theme-slate {
  background: #16171B;
  color: #FFFFFF;
  border: 1px solid rgba(255,255,255,0.08);
}
.p-theme-slate .p-desc { color: #9A9AB0; }

.p-theme-cream {
  background: #F5F4EE;
  color: #141518;
}
.p-theme-cream .p-desc { color: #5B5C66; }

.p-theme-mint {
  background: #E2F5EE;
  color: #0E1A16;
}
.p-theme-mint .p-desc { color: #435952; }

/* Top Pill Badge */
.p-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.4rem 0.95rem;
  border-radius: 999px;
  font-size: 0.8rem;
  font-weight: 600;
  margin-bottom: 1.2rem;
  align-self: flex-start;
}
.p-theme-lavender .p-pill { background: rgba(255,255,255,0.75); color: #2A2359; }
.p-theme-slate .p-pill { background: rgba(255,255,255,0.12); color: #D8DED5; }
.p-theme-cream .p-pill { background: rgba(0,0,0,0.06); color: #141518; }
.p-theme-mint .p-pill { background: rgba(255,255,255,0.75); color: #0E4839; }

.phantom-card h3 {
  font-size: 1.45rem;
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: 0.6rem;
  letter-spacing: -0.02em;
}
.phantom-card .p-desc {
  font-size: 0.95rem;
  line-height: 1.5;
  margin-bottom: 1.8rem;
}
.scenario-kicker{font-family:var(--font-display);font-size:clamp(1.7rem,3vw,2.4rem);font-weight:700;letter-spacing:-.04em;line-height:1;margin-bottom:1rem}
.scenario-demo{display:flex;flex-direction:column;gap:.45rem;margin-top:auto;padding:1.25rem;border:1px solid rgba(10,20,14,.14);border-radius:1.15rem;background:rgba(255,255,255,.42);font-size:.78rem}
.scenario-demo{transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.p-theme-slate .scenario-demo{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12);color:var(--muted)}
.scenario-demo strong{font-family:var(--font-display);font-size:.98rem;color:inherit}
.scenario-label{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.65}

/* Mockups inside Phantom cards */
.p-mock-phone {
  background: #111215;
  border-radius: 24px;
  padding: 1.4rem;
  color: #FFFFFF;
  border: 1px solid rgba(255,255,255,0.1);
  box-shadow: 0 16px 36px rgba(0,0,0,0.25);
  margin-top: auto;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease);
}
.phantom-card:hover .p-mock-phone,
.phantom-card:hover .scenario-demo{
  transform:translate3d(var(--micro-x,0),calc(var(--micro-y,0) - 3px),0);
}
.phantom-card:hover .p-mock-phone{box-shadow:0 20px 44px rgba(0,0,0,.3)}
.p-pill{transition:transform .3s var(--ease)}
.phantom-card:hover .p-pill{transform:translateY(-1px)}
.p-phone-header {
  display: flex;
  justify-content: space-between;
  font-size: 0.72rem;
  color: #8E8E9E;
  margin-bottom: 1rem;
}
.p-phone-val {
  font-size: 2.2rem;
  font-family: var(--font-display);
  font-weight: 700;
  color: #E4E8E2;
  line-height: 1;
  margin-bottom: 0.4rem;
}
.p-phone-sub {
  font-size: 0.78rem;
  color: #B5B5C8;
}
.status-live{color:var(--green)}
.mockup-title{font-size:.85rem;font-weight:600;color:#fff}
.mockup-caption{font-size:.75rem;color:#9e9eb0;margin-top:.2rem}

.p-mock-center-squircle {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: auto;
  padding: 2rem 1rem;
  background: rgba(255,255,255,0.03);
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,0.06);
}
.p-squircle-icon {
  width: 72px;
  height: 72px;
  border-radius: 22px;
  background: #C4B5FD;
  color: #17181C;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  box-shadow: 0 0 24px rgba(196,181,253,0.3);
}

.p-mock-stat {
  background: rgba(255,255,255,0.85);
  border-radius: 24px;
  padding: 1.5rem;
  margin-top: auto;
  box-shadow: 0 12px 28px rgba(0,0,0,0.04);
}
.mockup-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.mockup-badge{background:#141518;color:var(--green);padding:.2rem .6rem;border-radius:999px;font-size:.68rem;font-weight:700}
.mockup-note{font-size:.75rem;color:#787985;margin-top:.3rem}
.p-stat-val {
  font-size: 2.4rem;
  font-family: var(--font-display);
  font-weight: 700;
  color: #141518;
  line-height: 1;
  margin-top: 0.5rem;
}
.p-stat-lbl {
  font-size: 0.85rem;
  color: #6C6D78;
  font-weight: 500;
}

/* ============ WORKFLOW ============ */
.flow{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.flow-track{display:flex;flex-wrap:wrap;gap:0;align-items:center;justify-content:center;margin-top:1rem}
.flow-step{display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:1rem 1.1rem;min-width:118px;position:relative}
.flow-dot{width:52px;height:52px;border-radius:16px;background:var(--surface);border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;color:var(--gray);transition:.4s;position:relative}
.flow-dot svg{width:22px;height:22px}
.flow-step.lit .flow-dot{border-color:var(--green);color:var(--green);box-shadow:0 0 24px rgba(201,208,198,.14)}
.flow-step span{font-size:.8rem;color:var(--dim);font-weight:500;text-align:center;transition:color .4s}
.flow-step.lit span{color:var(--text)}
.flow-link{width:clamp(20px,4vw,54px);height:2px;background:var(--line);position:relative;overflow:hidden;border-radius:2px}
.flow-link::after{content:"";position:absolute;inset:0;background:var(--green);transform:translateX(-101%);transition:transform .5s linear}
.flow-link.lit::after{transform:none}
@media(max-width:760px){.flow-track{flex-direction:column}.flow-link{width:2px;height:26px}.flow-link::after{transform:translateY(-101%)}.flow-link.lit::after{transform:none}}

/* ============ BENEFITS ============ */
.ben-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.2rem}
.ben{display:flex;gap:1rem;align-items:flex-start;padding:1.2rem;border:1px solid var(--line);border-radius:1.25rem;background:linear-gradient(180deg,rgba(255,255,255,.022),transparent 46%),rgba(16,20,15,.52);box-shadow:inset 0 1px rgba(255,255,255,.025),0 4px 16px rgba(0,0,0,.08);position:relative;overflow:hidden;isolation:isolate;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s var(--ease),background-color .3s}
.ben:hover{transform:translateY(-2px);border-color:rgba(var(--card-glow-rgb),.25);background-color:rgba(16,20,15,.72);box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.05),0 10px 26px rgba(0,0,0,.16)}
.ben-ico{flex:0 0 38px;height:38px;border-radius:11px;background:var(--green-soft);color:var(--green);display:flex;align-items:center;justify-content:center;transition:transform .3s var(--ease)}
.ben:hover .ben-ico{transform:translate3d(var(--micro-x,0),calc(var(--micro-y,0) - 2px),0) scale(1.04)}
.ben-ico svg{width:18px;height:18px}
.ben h3{font-size:1.05rem;margin-bottom:.3rem}
.ben p{font-size:.9rem;color:var(--muted)}

/* ============ INDUSTRIES CAROUSEL ============ */
.carousel-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
  width: 100%;
}
.carousel-header-left {
  max-width: 720px;
}
.carousel-header-right {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
.carousel-controls-top {
  display: flex;
  gap: 0.75rem;
}
@media(max-width: 768px) {
  .carousel-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.25rem;
  }
  .carousel-header-right {
    width: 100%;
    justify-content: space-between;
  }
}
.carousel-container {
  position: relative;
  width: 100%;
}
.carousel-track-wrapper {
  overflow: hidden;
  width: 100%;
  border-radius: var(--radius);
}
.carousel-track {
  display: flex;
  gap: 1.25rem;
  transition: transform 0.5s var(--ease);
}
.carousel-card {
  flex: 0 0 calc(33.333% - 0.84rem);
  background: rgba(16,20,15,0.55);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 2rem 1.8rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transition:transform .3s var(--ease),border-color .3s,box-shadow .3s var(--ease),background-color .3s;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  position: relative;
  overflow: hidden;
}
.carousel-card:hover {
  transform:translateY(-2px);
  border-color:rgba(var(--card-glow-rgb),.28);
  box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.05),0 10px 28px rgba(0,0,0,.22),0 22px 52px rgba(0,0,0,.16);
}
.carousel-illustration {
  width: 76px;
  height: 76px;
  margin-bottom: 1.5rem;
  z-index: 2;
  box-shadow:none;
  filter:none;
  transition:transform .35s var(--ease);
}
.carousel-card:hover .carousel-illustration{transform:translate3d(var(--micro-x,0),calc(var(--micro-y,0) - 3px),0) scale(1.035)}
.worker-svg {
  width: 100%;
  height: 100%;
  overflow:visible;
  transform-origin:50% 55%;
  animation:industry-icon-float 3.8s ease-in-out infinite;
  will-change:transform;
}
.worker-svg>circle:first-child{fill:transparent}
.worker-svg>path:first-of-type{
  transform-box:fill-box;
  transform-origin:center;
  animation:industry-icon-pulse 2.8s ease-in-out infinite;
}
.carousel-card:nth-child(2) .worker-svg{animation-delay:-.65s}
.carousel-card:nth-child(3) .worker-svg{animation-delay:-1.3s}
.carousel-card:nth-child(4) .worker-svg{animation-delay:-1.95s}
.carousel-card:nth-child(5) .worker-svg{animation-delay:-2.6s}
.carousel-card:nth-child(6) .worker-svg{animation-delay:-3.25s}
.carousel-card:nth-child(2) .worker-svg>path:first-of-type{animation-delay:-.4s}
.carousel-card:nth-child(3) .worker-svg>path:first-of-type{animation-delay:-.8s}
.carousel-card:nth-child(4) .worker-svg>path:first-of-type{animation-delay:-1.2s}
.carousel-card:nth-child(5) .worker-svg>path:first-of-type{animation-delay:-1.6s}
.carousel-card:nth-child(6) .worker-svg>path:first-of-type{animation-delay:-2s}
@keyframes industry-icon-float{
  0%,100%{transform:translate3d(0,0,0) rotate(-.7deg)}
  50%{transform:translate3d(0,-5px,0) rotate(.7deg)}
}
@keyframes industry-icon-pulse{
  0%,100%{transform:scale(1);opacity:.85}
  50%{transform:scale(1.07);opacity:1}
}
html[data-theme="light"] .worker-svg [stroke="#fff"]{stroke:#111812}
html[data-theme="light"] .worker-svg [fill="#fff"]{fill:#111812}
.carousel-card h3 {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 0.6rem;
  color: var(--text);
  z-index: 2;
}
.carousel-card p {
  font-size: 0.9rem;
  color: var(--muted);
  line-height: 1.5;
  z-index: 2;
}

/* Controls */
.carousel-controls {
  display: flex;
  justify-content: center;
  gap: 1rem;
  margin-top: 1.8rem;
  align-items: center;
}
.carousel-btn {
  background: var(--surface);
  border: 1px solid var(--line);
  color: var(--text);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s var(--ease);
}
.carousel-btn:hover {
  background: var(--surface2);
  border-color: var(--green);
  color: var(--green);
  box-shadow: 0 0 15px rgba(201,208,198,0.12);
}
.carousel-btn svg {
  width: 20px;
  height: 20px;
}

/* Dots indicator */
.carousel-dots {
  display: flex;
  gap: 0.5rem;
}
.carousel-dot {
  width: 10px;
  height: 10px;
  flex:0 0 10px;
  border-radius: 50%;
  background: var(--line-strong);
  cursor: pointer;
  transition: all 0.3s;
  padding:0;
}
.carousel-dot.active {
  background: var(--green);
  box-shadow: 0 0 8px var(--green);
  transform: scale(1.2);
}

/* Responsive adjustments */
@media(max-width: 1024px) {
  .carousel-card {
    flex: 0 0 calc(50% - 0.625rem);
  }
}
@media(max-width: 640px) {
  .carousel-card {
    flex: 0 0 100%;
  }
}

/* ============ COMPARISON ============ */
.cmp{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.cmp table{width:100%;border-collapse:collapse;min-width:560px}
.cmp th,.cmp td{padding:1.05rem 1.4rem;text-align:left;font-size:.93rem;border-bottom:1px solid var(--line)}
.cmp tr:last-child td{border-bottom:none}
.cmp th{font-family:var(--font-display);font-size:.95rem}
.cmp th.neos{color:var(--green)}
.cmp th.traditional{color:var(--dim)}
.cmp td:first-child{color:var(--dim);font-size:.85rem}
.cmp td.old{color:var(--muted)}
.cmp td.new{color:var(--text);font-weight:500}
.cmp td.new svg{display:inline-block;vertical-align:-2px;width:14px;height:14px;stroke:var(--green);margin-right:.45rem}

/* ============ AEO ============ */
.aeo{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.aeo-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(30rem,1.08fr);gap:clamp(2.8rem,6vw,5.6rem);align-items:center}
@media(max-width:880px){.aeo-grid{grid-template-columns:1fr}}
.chat-demo{
  min-height:27rem;
  padding:0;
  display:flex;
  flex-direction:column;
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 84% 8%,rgba(var(--card-glow-rgb),.1),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.026),transparent 40%),
    var(--surface);
  border:1px solid var(--line);
  border-radius:1.2rem;
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 18px 50px rgba(0,0,0,.16);
  transition:transform .35s var(--ease),border-color .35s,box-shadow .35s var(--ease);
}
.chat-demo::before{
  content:"";
  position:absolute;
  z-index:0;
  top:0;
  bottom:0;
  left:-18%;
  width:12%;
  opacity:0;
  transform:skewX(-14deg);
  background:linear-gradient(90deg,transparent,rgba(225,255,0,.12),transparent);
  pointer-events:none;
}
.chat-demo:hover{transform:translateY(-3px);border-color:rgba(var(--card-glow-rgb),.32);box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.05),0 24px 60px rgba(0,0,0,.22)}
.chat-demo-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.15rem;border-bottom:1px solid var(--line);background:rgba(var(--card-glow-rgb),.025)}
.chat-example-label{display:inline-flex;align-items:center;gap:.55rem;font-size:.68rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--dim)}
.chat-example-label>i{width:.48rem;height:.48rem;border-radius:50%;background:var(--cta);box-shadow:0 0 0 .25rem rgba(225,255,0,.08)}
.chat-replay{width:2rem;height:2rem;display:grid;place-items:center;border:1px solid var(--line);border-radius:.6rem;color:var(--dim);background:var(--surface);transition:color .25s,border-color .25s,transform .35s var(--ease),background-color .25s}
.chat-replay:hover{color:var(--text);border-color:var(--line-strong);background:var(--surface2);transform:rotate(-24deg)}
.chat-replay:active{transform:rotate(-24deg) scale(.92)}
.chat-replay svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chat-conversation{display:flex;flex:1;flex-direction:column;gap:.68rem;padding:1.15rem}
.msg{font-size:.82rem;line-height:1.52;transition:transform .35s var(--ease)}
.msg p{margin:0}
.msg.q{width:min(88%,29rem);align-self:flex-end;padding:.82rem 1rem;background:var(--surface2);border:1px solid var(--line-strong);border-radius:1rem 1rem .3rem 1rem;color:var(--text)}
.msg-role{display:block;margin-bottom:.28rem;color:var(--dim);font-size:.61rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.chat-thinking{align-self:flex-start;display:flex;align-items:center;gap:.28rem;height:1.45rem;padding:0 .35rem}
.chat-thinking span{width:.34rem;height:.34rem;border-radius:50%;background:var(--dim)}
.msg.a{width:100%;align-self:stretch;padding:1rem;background:rgba(var(--card-glow-rgb),.055);border:1px solid rgba(var(--card-glow-rgb),.2);border-radius:.4rem 1rem 1rem 1rem;color:var(--text)}
.answer-head{display:flex;align-items:center;gap:.7rem;margin-bottom:.72rem}
.answer-mark{width:2rem;height:2rem;display:grid;place-items:center;flex:0 0 auto;border-radius:.58rem;background:var(--text);color:var(--bg);font-family:var(--font-display);font-size:.8rem;font-weight:700;box-shadow:0 0 0 1px var(--line)}
.answer-head>div{display:flex;flex-direction:column;line-height:1.2}
.answer-head strong{font-size:.74rem;font-weight:650}
.answer-head small{margin-top:.17rem;color:var(--dim);font-size:.63rem}
.answer-copy{color:var(--muted);text-wrap:pretty}
.answer-copy strong{color:var(--text);font-weight:700;text-decoration:underline;text-decoration-color:var(--cta);text-decoration-thickness:.14em;text-underline-offset:.16em}
.answer-signals{display:flex;flex-wrap:wrap;gap:.38rem;margin-top:.82rem}
.answer-signals>span{display:inline-flex;align-items:center;min-height:1.55rem;padding:.28rem .55rem;border:1px solid var(--line);border-radius:.48rem;background:var(--surface);color:var(--muted);font-size:.62rem;font-weight:600}
.chat-proof{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.78rem 1.15rem;border-top:1px solid var(--line);background:rgba(var(--card-glow-rgb),.025)}
.chat-proof-label{flex:0 0 auto;color:var(--dim);font-size:.61rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.chat-src{display:flex;justify-content:flex-end;gap:.65rem;flex-wrap:wrap;color:var(--dim);font-size:.64rem}
.chat-src>span{display:inline-flex;align-items:center;gap:.3rem}
.chat-src i{width:.32rem;height:.32rem;border-radius:50%;background:var(--cta);box-shadow:0 0 .55rem rgba(225,255,0,.28)}

/* AI answer sequence: search, reason, compose, verify. */
.chat-demo.chat-ready .chat-demo-head,
.chat-demo.chat-ready .msg.q,
.chat-demo.chat-ready .msg.a,
.chat-demo.chat-ready .chat-proof{opacity:0}
.chat-demo.chat-ready .msg.q{transform:translate3d(1.2rem,.7rem,0) scale(.97)}
.chat-demo.chat-ready .msg.a{transform:translate3d(-1rem,.65rem,0) scale(.985)}
.chat-demo.chat-ready .answer-head,
.chat-demo.chat-ready .answer-copy,
.chat-demo.chat-ready .answer-signals>span{opacity:0;transform:translateY(.45rem)}
.chat-demo.chat-ready .chat-thinking{opacity:0}
.chat-demo.is-chat-active::before{animation:chat-scan 1.45s .42s var(--ease) both}
.chat-demo.is-chat-active .chat-demo-head{animation:chat-item-in .55s .08s var(--ease) both}
.chat-demo.is-chat-active .msg.q{animation:chat-query-in .7s .28s var(--ease) both}
.chat-demo.is-chat-active .chat-thinking{animation:chat-thinking-cycle 1.05s .82s ease both}
.chat-demo.is-chat-active .chat-thinking span{animation:chat-dot .7s ease-in-out 2}
.chat-demo.is-chat-active .chat-thinking span:nth-child(2){animation-delay:.1s}
.chat-demo.is-chat-active .chat-thinking span:nth-child(3){animation-delay:.2s}
.chat-demo.is-chat-active .msg.a{animation:chat-answer-in .75s 1.5s var(--ease) both}
.chat-demo.is-chat-active .answer-head{animation:chat-item-in .48s 1.86s var(--ease) both}
.chat-demo.is-chat-active .answer-copy{animation:chat-item-in .58s 2.04s var(--ease) both}
.chat-demo.is-chat-active .answer-signals>span{animation:chat-item-in .46s var(--ease) both}
.chat-demo.is-chat-active .answer-signals>span:nth-child(1){animation-delay:2.28s}
.chat-demo.is-chat-active .answer-signals>span:nth-child(2){animation-delay:2.4s}
.chat-demo.is-chat-active .answer-signals>span:nth-child(3){animation-delay:2.52s}
.chat-demo.is-chat-active .chat-proof{animation:chat-proof-in .55s 2.65s var(--ease) both}
.chat-demo.is-chat-active .chat-src i{animation:chat-verified-pulse 1.8s 2.8s ease-in-out infinite}
@keyframes chat-item-in{from{opacity:0;transform:translateY(.45rem)}to{opacity:1;transform:translateY(0)}}
@keyframes chat-query-in{from{opacity:0;transform:translate3d(1.2rem,.7rem,0) scale(.97)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@keyframes chat-answer-in{from{opacity:0;transform:translate3d(-1rem,.65rem,0) scale(.985);clip-path:inset(0 100% 0 0 round .4rem)}to{opacity:1;transform:translate3d(0,0,0) scale(1);clip-path:inset(0 0 0 0 round .4rem)}}
@keyframes chat-thinking-cycle{0%,100%{opacity:0;transform:translateX(-.3rem)}18%,78%{opacity:1;transform:translateX(0)}}
@keyframes chat-dot{0%,100%{transform:translateY(0);opacity:.38}50%{transform:translateY(-.22rem);opacity:1}}
@keyframes chat-proof-in{from{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}
@keyframes chat-scan{0%{left:-18%;opacity:0}18%{opacity:1}82%{opacity:.7}100%{left:112%;opacity:0}}
@keyframes chat-verified-pulse{0%,100%{transform:scale(.82);opacity:.7}50%{transform:scale(1.2);opacity:1}}
@media(max-width:560px){
  .chat-demo{min-height:29rem}
  .chat-proof{align-items:flex-start;flex-direction:column}
  .chat-src{justify-content:flex-start}
  .msg.q{width:94%}
}
.aeo-points{display:flex;flex-direction:column;gap:1.2rem;margin-top:1.8rem}
.aeo-points .ben p{font-size:.9rem}
.aeo-lead{margin-top:1.2rem}

/* ============ STACK ============ */
#stack{
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 18%,rgba(var(--section-glow-rgb),.1),transparent 36%),
    linear-gradient(180deg,rgba(var(--section-glow-rgb),.03),transparent 72%),
    var(--bg);
}
.stack-physics{
  position:relative;
  display:flex;
  align-items:center;
  width:100vw;
  min-height:clamp(20rem,32vw,25rem);
  margin-left:calc(50% - 50vw);
  margin-top:clamp(2rem,5vw,3.5rem);
  padding:clamp(1.25rem,3vw,2rem);
  overflow:hidden;
  border-bottom:1px solid var(--line);
  background:transparent;
}
.stack-physics::after{
  content:"";
  position:absolute;
  right:-8%;
  bottom:-70%;
  width:42%;
  aspect-ratio:1;
  border:1px solid rgba(var(--section-glow-rgb),.08);
  border-radius:50%;
  box-shadow:0 0 0 44px rgba(var(--section-glow-rgb),.025),0 0 0 88px rgba(var(--section-glow-rgb),.018);
  pointer-events:none;
}
.stack-grid{display:flex;flex-wrap:wrap;gap:.7rem}
.chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:2.65rem;
  padding:.55rem 1.05rem;
  border:1px solid var(--line-strong);
  border-radius:999px;
  background:color-mix(in srgb,var(--surface2) 86%,var(--green) 14%);
  color:var(--text);
  font-size:.85rem;
  font-weight:500;
  line-height:1;
  white-space:nowrap;
  user-select:none;
  -webkit-user-select:none;
  transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease;
}
.stack-physics:not(.physics-ready) .chip:hover{
  border-color:var(--cta);
  background:var(--cta);
  color:#08130a;
  box-shadow:0 10px 28px var(--cta-glow);
  transform:translateY(-2px);
}
.physics-hint{display:none}
.stack-physics.physics-ready{
  display:block;
  height:clamp(20rem,32vw,25rem);
  min-height:20rem;
  padding:0;
}
.physics-ready .physics-hint{
  position:absolute;
  top:1rem;
  right:1.1rem;
  z-index:3;
  display:block;
  padding:.42rem .68rem;
  border:1px solid var(--line);
  border-radius:999px;
  background:color-mix(in srgb,var(--bg) 78%,transparent);
  color:var(--dim);
  font-size:.68rem;
  font-weight:600;
  letter-spacing:.08em;
  line-height:1;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
  transition:opacity .25s ease;
}
.physics-ready .stack-grid{
  position:absolute;
  inset:0;
  z-index:2;
  display:block;
  overflow:hidden;
}
.physics-ready .chip{
  position:absolute;
  top:0;
  left:0;
  max-width:calc(100% - 1.5rem);
  margin:0;
  cursor:grab;
  touch-action:none;
  will-change:transform;
  transform-origin:center;
  box-shadow:0 8px 24px rgba(0,0,0,.1),inset 0 1px rgba(255,255,255,.04);
}
.physics-ready .chip:hover{
  border-color:var(--cta);
  background:var(--cta);
  color:#08130a;
  box-shadow:0 12px 28px rgba(0,0,0,.16),0 0 26px var(--cta-glow);
}
.physics-ready .chip.is-grabbed{
  z-index:4;
  cursor:grabbing;
  border-color:var(--cta);
  background:var(--cta);
  color:#08130a;
  box-shadow:0 16px 36px rgba(0,0,0,.22),0 0 26px var(--cta-glow);
}
.stack-physics.has-interacted .physics-hint{opacity:0}
@media(max-width:640px){
  .stack-physics{min-height:23rem}
  .stack-physics.physics-ready{height:23rem}
  .physics-ready .physics-hint{top:.75rem;right:.75rem}
  .chip{font-size:.78rem;min-height:2.4rem;padding:.5rem .85rem}
}

/* ============ PROCESS (TIMELINE) ============ */
.timeline-container{position:relative;margin-top:2rem}
.timeline-line{
  position:absolute;
  top:22px;
  left:12.5%;
  right:12.5%;
  height:2px;
  background:var(--line);
  z-index:1;
}
.timeline-progress{
  height:100%;
  width:0%;
  background:var(--green);
  box-shadow:0 0 8px var(--green);
  transition:width 2s cubic-bezier(.22,.9,.28,1);
}
.timeline-steps{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1.5rem;
  position:relative;
  z-index:2;
}
.timeline-step{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.timeline-dot{
  width:14px;
  height:14px;
  border-radius:50%;
  background:var(--surface);
  border:2px solid var(--line-strong);
  margin-bottom:2rem;
  transition:all .4s ease;
  position:relative;
}
.timeline-step.active .timeline-dot{
  border-color:var(--green);
  background:var(--green);
  box-shadow:0 0 12px var(--green);
}
.timeline-step.active .timeline-dot::after{
  content:"";
  position:absolute;
  inset:-6px;
  border:1px solid var(--green);
  border-radius:50%;
  animation:ping 2s infinite;
  opacity:0;
}
@keyframes ping{
  0%{transform:scale(.7);opacity:1}
  100%{transform:scale(1.4);opacity:0}
}
.step-content{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:1.6rem;
  transition:transform .35s var(--ease),opacity .5s var(--ease),border-color .3s,box-shadow .3s var(--ease),background-color .3s;
  transform:translateY(20px);
  opacity:0;
  width:100%;
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.timeline-step.active .step-content{
  transform:none;
  opacity:1;
}
.step-content:hover {
  border-color:rgba(var(--card-glow-rgb),.3);
  transform:translateY(-2px);
  box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.05),0 10px 28px rgba(0,0,0,.22),0 22px 52px rgba(0,0,0,.14);
  background: var(--surface2);
}
.timeline-step.active .step-content:hover{transform:translateY(-2px)}
.step-num{transition:transform .3s var(--ease)}
.step-content:hover .step-num{transform:translate3d(var(--micro-x,0),calc(var(--micro-y,0) - 1px),0)}
.step-num{
  font-family:var(--font-display);
  font-weight:700;
  font-size:.85rem;
  color:var(--green);
  letter-spacing:.1em;
  display:block;
  margin-bottom:.5rem;
}
.step-content h3{margin-bottom:.55rem;font-size:1.1rem}
.step-content p{font-size:.9rem;color:var(--muted);line-height:1.5}

/* responsive */
@media(max-width:767px){
  .timeline-line{
    top:20px;
    bottom:20px;
    left:16px;
    width:2px;
    height:auto;
    right:auto;
  }
  .timeline-progress{
    width:100%;
    height:0%;
  }
  .timeline-steps{
    grid-template-columns:1fr;
    gap:2.5rem;
  }
  .timeline-step{
    flex-direction:row;
    align-items:flex-start;
    text-align:left;
    padding-left:45px;
    position:relative;
  }
  .timeline-dot{
    position:absolute;
    left:10px;
    top:20px;
    margin-bottom:0;
  }
  .step-content{
    transform:translateX(20px);
  }
}

/* ============ MEASUREMENT ============ */
.t-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}
.t-grid .card{min-height:240px}
.t-grid .card h3{margin-bottom:.8rem}
.t-grid .card p{color:var(--muted);font-size:.94rem}
.proof-step{display:inline-block;margin-bottom:2.2rem;font-family:var(--font-display);font-size:.78rem;font-weight:700;color:var(--green);font-variant-numeric:tabular-nums}

/* ============ FAQ ============ */
.faq-list{max-width:760px;margin:0 auto}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;padding:1.35rem 0;display:flex;justify-content:space-between;align-items:center;gap:1rem;font-family:var(--font-display);font-weight:500;font-size:1.05rem;transition:color .2s}
summary::-webkit-details-marker{display:none}
summary:hover{color:var(--green)}
summary .plus{flex:0 0 auto;width:22px;height:22px;position:relative;transition:transform .3s var(--ease)}
summary .plus::before,summary .plus::after{content:"";position:absolute;background:var(--green);border-radius:2px}
summary .plus::before{width:14px;height:2px;top:10px;left:4px}
summary .plus::after{width:2px;height:14px;top:4px;left:10px;transition:opacity .2s}
details[open] summary .plus{transform:rotate(45deg)}
details .ans{padding:0 2.5rem 1.4rem 0;color:var(--muted);font-size:.95rem}

/* ============ FINAL CTA ============ */
.final{text-align:center;overflow:hidden}
.final::before{content:"";position:absolute;bottom:-40%;left:50%;transform:translateX(-50%);width:900px;height:600px;background:radial-gradient(ellipse at center,rgba(201,208,198,.1),transparent 62%);pointer-events:none}
.final h2{font-size:clamp(2.2rem,5vw,3.6rem);max-width:820px;margin:0 auto}
.final .lead{max-width:560px;margin:1.4rem auto 1.6rem}
.final .hero-ctas{justify-content:center}
.assessment-launch{display:grid;justify-items:center;gap:1.15rem;margin-top:2rem;position:relative;z-index:2}
.assessment-launch-button{font-size:1rem;padding:1rem 1.65rem}
.assessment-launch-notes{display:flex;justify-content:center;gap:.7rem 1.4rem;flex-wrap:wrap;color:var(--dim);font-size:.78rem}
.assessment-launch-notes>span{display:flex;align-items:center;gap:.45rem}
.assessment-launch-notes>span::before{content:"";width:.38rem;height:.38rem;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green-glow)}

/* ============ AUTOMATION MAP ASSESSMENT ============ */
.assessment-modal{
  width:min(920px,calc(100vw - 2rem));
  max-width:none;
  max-height:calc(100svh - 2rem);
  padding:0;
  border:1px solid var(--line-strong);
  border-radius:1.75rem;
  background:var(--bg2);
  color:var(--text);
  box-shadow:0 32px 100px rgba(0,0,0,.72);
  overflow:hidden;
}
.assessment-modal::backdrop{background:rgba(2,5,3,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.assessment-modal-shell{max-height:calc(100svh - 2rem);overflow-y:auto;overscroll-behavior:contain}
.assessment-modal-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:2rem;
  padding:1.6rem 1.8rem 1.3rem;
  border-bottom:1px solid var(--line);
  background:var(--bg2);
  box-shadow:0 1px 0 var(--line),0 .8rem 2rem rgba(3,8,4,.28);
  position:sticky;
  top:0;
  z-index:5;
}
.assessment-modal-header .eyebrow{margin-bottom:.45rem;font-size:.68rem}
.assessment-modal-header h2{font-size:clamp(1.55rem,3vw,2.15rem)}
.assessment-close{
  flex:0 0 auto;
  width:2.4rem;
  height:2.4rem;
  display:grid;
  place-items:center;
  border:1px solid var(--line-strong);
  border-radius:50%;
  color:var(--muted);
  font-size:1.5rem;
  line-height:1;
  transition:border-color .2s,color .2s,background .2s;
}
.assessment-close:hover{border-color:var(--green);color:var(--green);background:var(--green-soft)}
.contact-form{
  max-width:560px;
  margin:2.5rem auto 0;
  text-align:left;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:2.2rem;
  box-shadow:0 12px 40px rgba(0,0,0,.3);
  position:relative;
  z-index:5;
}
.assessment-form.contact-form{
  max-width:none;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.assessment-progress{
  display:grid;
  grid-template-columns:1fr auto;
  gap:.45rem 1rem;
  padding:1rem 1.8rem;
  color:var(--dim);
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.04em;
}
#assessment-step-name{color:var(--muted)}
.assessment-progress-track{grid-column:1 / -1;height:3px;border-radius:999px;background:var(--line);overflow:hidden}
.assessment-progress-track span{display:block;width:var(--assessment-progress,16.666%);height:100%;border-radius:inherit;background:var(--green);transition:width .35s var(--ease)}
.assessment-step{padding:1.5rem 1.8rem 1.8rem;text-align:left;min-height:430px}
.assessment-step[hidden],.assessment-action[hidden]{display:none}
.assessment-kicker{color:var(--green);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.55rem}
.assessment-step h3{font-size:clamp(1.45rem,3vw,2rem);max-width:680px;margin-bottom:.65rem}
.assessment-help{color:var(--muted);font-size:.88rem;max-width:680px;margin-bottom:1.5rem}
.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;border:0;margin:1.4rem 0}
.choice-card{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:.2rem .65rem;
  align-items:start;
  min-height:126px;
  padding:1rem 2.2rem 1rem 1rem;
  border:1px solid var(--line);
  border-radius:1rem;
  background:var(--surface);
  cursor:pointer;
  transition:border-color .2s,background .2s,transform .2s;
}
.choice-card:hover{border-color:var(--line-strong);transform:translateY(-2px)}
.choice-card:has(input:checked){border-color:var(--green);background:var(--green-soft)}
.choice-card:has(input:focus-visible){outline:2px solid var(--green);outline-offset:2px}
.choice-card input{position:absolute;top:.9rem;right:.9rem;width:1rem;height:1rem;accent-color:var(--green)}
.choice-card>span{grid-row:1 / span 2;font-size:1.1rem}
.choice-card strong{font-family:var(--font-display);font-size:.88rem;line-height:1.3}
.choice-card small{grid-column:2;color:var(--dim);font-size:.72rem;line-height:1.45}
.form-grid{
  display:flex;
  flex-direction:column;
  gap:1.25rem;
  margin-bottom:1.6rem;
}
.form-group{
  display:flex;
  flex-direction:column;
  gap:.45rem;
}
.form-group label{
  font-size:.82rem;
  font-weight:600;
  color:var(--muted);
  letter-spacing:.05em;
  text-transform:uppercase;
}
.form-group input,
.form-group textarea,
.form-group select {
  font-family: inherit;
  font-size: .95rem;
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid var(--line);
  border-radius: 15px;
  padding: .85rem 1rem;
  color: var(--text);
  transition: all .3s var(--ease);
  width: 100%;
}
.form-group input:hover,
.form-group textarea:hover,
.form-group select:hover{
  border-color:rgba(255,255,255,.2);
}
.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus {
  outline: none;
  border-color: var(--green);
  background: rgba(201, 208, 198, 0.015);
  box-shadow: 0 0 20px rgba(201, 208, 198, 0.12);
}
.form-group textarea{
  resize:vertical;
}
.form-group select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:2.5rem}
.form-group select option{background:var(--surface);color:var(--text)}
.form-group>small{color:var(--dim);font-size:.72rem;line-height:1.45}
.assessment-two-column{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.4rem}
.assessment-span{grid-column:1 / -1}
.pressure-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;border:0;margin-top:1.4rem}
.pressure-choice-grid legend,.compact-fieldset legend{font-size:.78rem;font-weight:600;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.65rem}
.pressure-choice-grid legend{grid-column:1 / -1}
.pressure-choice{
  position:relative;
  display:grid;
  grid-template-columns:2.2rem 1fr;
  align-items:start;
  gap:.7rem;
  min-height:112px;
  padding:1rem 2.3rem 1rem 1rem;
  border:1px solid var(--line);
  border-radius:1rem;
  background:rgba(0,0,0,.16);
  cursor:pointer;
  transition:border-color .2s,background .2s,transform .2s;
}
.pressure-choice:last-of-type{grid-column:1 / -1;min-height:auto}
.pressure-choice:hover{border-color:var(--line-strong);transform:translateY(-2px)}
.pressure-choice:has(input:checked){border-color:var(--green);background:var(--green-soft)}
.pressure-choice:has(input:focus-visible){outline:2px solid var(--green);outline-offset:2px}
.pressure-choice>input{position:absolute;top:1rem;right:1rem;width:1rem;height:1rem;accent-color:var(--green)}
.pressure-icon{width:2.2rem;height:2.2rem;display:grid;place-items:center;border-radius:.7rem;background:rgba(201,208,198,.08);color:var(--green);font-family:var(--font-display);font-size:1rem;font-weight:700}
.pressure-choice>span:last-child{display:grid;gap:.18rem}
.pressure-choice strong{font-family:var(--font-display);font-size:.86rem;line-height:1.35}
.pressure-choice small{color:var(--dim);font-size:.72rem;line-height:1.45}
.inline-radios input{flex:0 0 auto;margin-top:.25rem;accent-color:var(--green)}
.compact-fieldset{border:0;min-width:0}
.inline-radios{display:flex;flex-wrap:wrap;gap:.55rem}
.inline-radios label{display:flex;align-items:center;gap:.4rem;padding:.7rem .8rem;border:1px solid var(--line);border-radius:.8rem;color:var(--muted);font-size:.82rem;cursor:pointer}
.inline-radios label:has(input:checked){border-color:var(--green);background:var(--green-soft);color:var(--text)}
.botcheck{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.consent{display:flex;align-items:flex-start;gap:.75rem;color:var(--muted);font-size:.8rem;line-height:1.5;text-transform:none;letter-spacing:0}
.consent input{flex:0 0 auto;width:1.05rem;height:1.05rem;margin-top:.15rem;accent-color:var(--green)}
.consent a{color:var(--green);text-decoration:underline;text-underline-offset:.18em}
.form-submit{
  width:100%;
  justify-content:center;
}
.form-submit.success{background:var(--cta);color:#08130a}
.form-status{min-height:1.5rem;margin-top:.9rem;text-align:center;font-size:.82rem;color:var(--muted)}
.form-status.success{color:var(--green)}
.form-status.error{color:#ff9d9d}
.form-note{margin-top:.8rem;color:var(--dim);font-size:.78rem;text-align:center}
.assessment-actions{
  display:flex;
  justify-content:flex-end;
  gap:.75rem;
  padding:1rem 1.8rem;
  border-top:1px solid var(--line);
  background:rgba(11,14,12,.96);
  position:sticky;
  bottom:0;
  z-index:4;
}
.assessment-actions #assessment-back{margin-right:auto}
.assessment-actions .form-submit{width:auto}
.assessment-form .form-status{min-height:0;margin:0;padding:0}
.assessment-form .form-status:not(:empty){margin:0 1.8rem 1rem;padding:.85rem 1rem;border:1px solid var(--line-strong);border-radius:.85rem;background:rgba(255,255,255,.025);text-align:left}
.assessment-form .form-status.success{border-color:rgba(201,208,198,.3);background:var(--green-soft)}
.assessment-form .form-status.error{border-color:rgba(255,157,157,.3);background:rgba(255,157,157,.06)}
.automation-map-preview{
  max-height:340px;
  overflow:auto;
  margin:1.2rem 0;
  padding:1.2rem;
  border:1px solid var(--line-strong);
  border-radius:1rem;
  background:#080b09;
  color:#dbe2d8;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:.72rem;
  line-height:1.65;
  white-space:pre-wrap;
  text-align:left;
}
.map-download{padding:.65rem 1rem;font-size:.8rem}
.assessment-email-note{color:var(--dim);font-size:.72rem;margin-top:.8rem}
.map-delivery-steps{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin:1.2rem 0}
.map-delivery-steps article{display:grid;grid-template-columns:2rem 1fr;gap:.75rem;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:rgba(255,255,255,.02)}
.map-delivery-steps article>span{font-family:var(--font-display);font-size:.7rem;font-weight:700;color:var(--green);font-variant-numeric:tabular-nums}
.map-delivery-steps article>div{display:grid;gap:.25rem}
.map-delivery-steps strong{font-family:var(--font-display);font-size:.86rem}
.map-delivery-steps p{color:var(--dim);font-size:.72rem;line-height:1.5}
@media(max-width:700px){
  .assessment-modal{width:100vw;max-height:100svh;height:100svh;border-radius:0;border-left:0;border-right:0}
  .assessment-modal-shell{max-height:100svh}
  .assessment-modal-header{padding:1.1rem 1rem}
  .assessment-modal-header .eyebrow{display:none}
  .assessment-progress{padding:.8rem 1rem}
  .assessment-step{padding:1.2rem 1rem 1.5rem;min-height:auto}
  .choice-grid{grid-template-columns:1fr 1fr}
  .assessment-two-column{grid-template-columns:1fr}
  .pressure-choice-grid,.map-delivery-steps{grid-template-columns:1fr}
  .pressure-choice:last-of-type{grid-column:auto}
  .assessment-span{grid-column:auto}
  .assessment-actions{padding:.85rem 1rem}
}
@media(max-width:430px){
  .choice-grid{grid-template-columns:1fr}
  .choice-card{min-height:auto}
  .assessment-actions{display:grid;grid-template-columns:1fr 1fr}
  .assessment-actions #assessment-back{margin-right:0}
  .assessment-actions #assessment-next,.assessment-actions .form-submit{grid-column:2}
  .assessment-actions #assessment-back:not([hidden])+#assessment-next{grid-column:2}
}

/* ============ FOOTER ============ */
footer{border-top:1px solid var(--line);padding:3.5rem 0 2.5rem;background:var(--bg2)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2.5rem;margin-bottom:2.8rem}
@media(max-width:760px){.foot-grid{grid-template-columns:1fr}}
.foot-grid .logo{margin-bottom:1rem}
.foot-grid .logo-dark{height:20px}
.foot-grid .logo-image{width:148px}
.foot-grid p{font-size:.88rem;color:var(--dim);max-width:300px}
.foot-col h4{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);margin-bottom:1rem}
.foot-col a{display:block;font-size:.9rem;color:var(--muted);padding:.28rem 0;transition:color .2s}
.foot-col a:hover{color:var(--green)}
.foot-bottom{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-top:1.6rem;border-top:1px solid var(--line);font-size:.8rem;color:var(--dim)}

/* ============ COOKIE & PRIVACY NOTICE ============ */
.cookie-notice{
  position:fixed;
  z-index:300;
  left:max(1rem,calc((100vw - var(--max)) / 2));
  right:max(1rem,calc((100vw - var(--max)) / 2));
  bottom:1rem;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:1.5rem;
  padding:1.15rem 1.25rem;
  border:1px solid var(--line-strong);
  border-radius:1.25rem;
  background:rgba(16,20,15,.97);
  box-shadow:0 20px 60px rgba(0,0,0,.5);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.cookie-notice[hidden]{display:none}
.cookie-notice-copy{display:grid;grid-template-columns:auto auto;align-items:baseline;column-gap:1rem;row-gap:.25rem}
.cookie-notice-copy strong{font-family:var(--font-display);font-size:.95rem;color:var(--text)}
.cookie-notice-copy p{grid-column:1 / -1;color:var(--muted);font-size:.78rem;line-height:1.55;max-width:900px}
.cookie-notice-link{font-size:.78rem;color:var(--green);text-decoration:underline;text-underline-offset:.18em;white-space:nowrap}
.cookie-notice-dismiss{padding:.65rem 1.1rem;font-size:.82rem;white-space:nowrap}
@media(max-width:700px){
  .cookie-notice{grid-template-columns:1fr;gap:1rem;padding:1rem}
  .cookie-notice-copy{grid-template-columns:1fr}
  .cookie-notice-copy p{grid-column:auto}
  .cookie-notice-dismiss{width:100%;justify-content:center}
}

/* ============ LIGHT THEME ============ */
html.theme-ready body,
html.theme-ready nav,
html.theme-ready footer,
html.theme-ready .assessment-modal,
html.theme-ready .assessment-modal-header,
html.theme-ready .assessment-actions,
html.theme-ready .cookie-notice{
  transition:background-color .32s ease,color .32s ease,border-color .32s ease,box-shadow .32s ease;
}
html[data-theme="light"] ::selection{background:var(--cta);color:#111600}
html[data-theme="light"] body{background:#fff}
html[data-theme="light"] nav{
  background:rgba(255,255,255,.9);
  border-bottom-color:rgba(88,100,0,.07);
  box-shadow:0 1px 0 rgba(88,100,0,.035);
}
html[data-theme="light"] nav.scrolled{
  border-bottom-color:var(--line);
  box-shadow:0 10px 30px rgba(88,100,0,.07);
}

html[data-theme="light"] .skip-link,
html[data-theme="light"] .btn-primary,
html[data-theme="light"] .form-submit.success{
  background:var(--cta);
  color:#111600;
}
html[data-theme="light"] .lang-toggle a.active{background:#111812;color:#fff}
html[data-theme="light"] .btn-primary{
  box-shadow:0 10px 24px var(--cta-glow);
}
html[data-theme="light"] .btn-primary:hover{
  background:var(--cta-dark);
  box-shadow:0 14px 30px var(--cta-glow);
}
html[data-theme="light"] .btn-ghost{background:#fff}
html[data-theme="light"] .theme-toggle{background:#fff;box-shadow:0 4px 14px rgba(88,100,0,.07)}
html[data-theme="light"] .hero-bg{
  background:#fff;
}
html[data-theme="light"] .hero-liquid{
  opacity:.64;
  filter:saturate(.88) contrast(.98);
}
html[data-theme="light"] .hero-bg::after{
  opacity:.2;
  background-image:
    repeating-linear-gradient(0deg,rgba(17,24,18,.018) 0,rgba(17,24,18,.018) 1px,transparent 1px,transparent 3px),
    radial-gradient(circle at 50% 50%,transparent 38%,#fff 115%);
  mix-blend-mode:multiply;
}
html[data-theme="light"] .problem,
html[data-theme="light"] .flow,
html[data-theme="light"] .aeo,
html[data-theme="light"] footer{
  background:var(--bg2);
}
html[data-theme="light"] .card{
  border-color:var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(246,248,244,.22)),#fff;
  box-shadow:0 1px 2px rgba(17,24,18,.04),0 4px 14px rgba(17,24,18,.035);
}
html[data-theme="light"] .card:hover{
  border-color:rgba(var(--card-glow-rgb),.24);
  box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.045),0 8px 24px rgba(17,24,18,.065),0 16px 48px rgba(17,24,18,.05);
}
html[data-theme="light"] .conversion-shell{
  background:
    radial-gradient(circle at 12% 0%,rgba(17,24,18,.05),transparent 38%),
    var(--surface);
  border-color:#D9E4D5;
  box-shadow:0 30px 80px rgba(88,100,0,.1);
}
html[data-theme="light"] .conversion-deliverables{background:#F8FAF7}
html[data-theme="light"] .hero-art svg{filter:drop-shadow(0 18px 36px rgba(88,100,0,.14))}
html[data-theme="light"] .node{fill:#fff;stroke:rgba(105,119,0,.44)}
html[data-theme="light"] .node:hover{fill:rgba(17,24,18,.08);stroke:#273129}
html[data-theme="light"] .node-core{fill:rgba(239,247,235,.98);stroke:var(--green)}
html[data-theme="light"] .hero-satellite>g{stroke:#647168}
html[data-theme="light"] .edge{stroke:rgba(88,100,0,.22)}
html[data-theme="light"] .ring{opacity:.24}
html[data-theme="light"] .stack-card{
  border-color:rgba(88,100,0,.09);
  box-shadow:0 -10px 30px rgba(88,100,0,.055),0 24px 60px rgba(88,100,0,.12);
}
html[data-theme="light"] .phantom-card{box-shadow:inset 0 1px rgba(255,255,255,.72),0 1px 2px rgba(17,24,18,.04),0 4px 14px rgba(17,24,18,.04)}
html[data-theme="light"] .phantom-card:hover{box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.04),0 8px 24px rgba(17,24,18,.07),0 16px 48px rgba(17,24,18,.055)}
html[data-theme="light"] .ben{
  background:linear-gradient(180deg,#fff,rgba(246,248,244,.72));
  border-color:var(--line);
  box-shadow:0 1px 2px rgba(17,24,18,.035),0 4px 12px rgba(17,24,18,.03);
}
html[data-theme="light"] .ben:hover{
  background-color:#fff;
  border-color:rgba(var(--card-glow-rgb),.22);
  box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.04),0 8px 24px rgba(17,24,18,.055);
}
html[data-theme="light"] .carousel-card{
  background:linear-gradient(180deg,#fff,rgba(246,248,244,.54));
  border-color:var(--line);
  box-shadow:0 1px 2px rgba(17,24,18,.035),0 4px 12px rgba(17,24,18,.03);
}
html[data-theme="light"] .carousel-card:hover{
  box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.04),0 8px 24px rgba(17,24,18,.07),0 16px 48px rgba(17,24,18,.05);
}
html[data-theme="light"] .step-content:hover{
  box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.04),0 8px 24px rgba(17,24,18,.065),0 16px 48px rgba(17,24,18,.05);
}
html[data-theme="light"] .cmp,
html[data-theme="light"] .chat-demo,
html[data-theme="light"] .step-content{
  background-color:#fff;
  box-shadow:0 1px 2px rgba(17,24,18,.035),0 4px 12px rgba(17,24,18,.03);
}
html[data-theme="light"] .assessment-modal{
  background:#F8FAF7;
  box-shadow:0 32px 90px rgba(18,35,20,.24);
}
html[data-theme="light"] .assessment-modal-header{
  background:#fff;
  box-shadow:0 1px 0 var(--line),0 .8rem 2rem rgba(88,100,0,.06);
}
html[data-theme="light"] .contact-form{box-shadow:0 12px 38px rgba(88,100,0,.08)}
html[data-theme="light"] .form-group input,
html[data-theme="light"] .form-group textarea,
html[data-theme="light"] .form-group select{background:#fff}
html[data-theme="light"] .form-group input:hover,
html[data-theme="light"] .form-group textarea:hover,
html[data-theme="light"] .form-group select:hover{border-color:rgba(105,119,0,.26)}
html[data-theme="light"] .form-group input:focus,
html[data-theme="light"] .form-group textarea:focus,
html[data-theme="light"] .form-group select:focus{
  background:#fff;
  box-shadow:0 0 0 4px rgba(17,24,18,.1);
}
html[data-theme="light"] .pressure-choice,
html[data-theme="light"] .map-delivery-steps article{background:#fff}
html[data-theme="light"] .assessment-actions{background:rgba(255,255,255,.96)}
html[data-theme="light"] .assessment-form .form-status:not(:empty){background:#fff}
html[data-theme="light"] .assessment-form .form-status.success{background:var(--green-soft)}
html[data-theme="light"] .form-status.error{color:#A62D35}
html[data-theme="light"] .cookie-notice{
  background:rgba(255,255,255,.96);
  border-color:#D7E0D4;
  box-shadow:0 20px 55px rgba(88,100,0,.14);
}
html[data-theme="light"] .eyebrow,
html[data-theme="light"] .theme-toggle:hover,
html[data-theme="light"] .btn-ghost:hover,
html[data-theme="light"] .card-ico,
html[data-theme="light"] .card .value,
html[data-theme="light"] .conversion-deliverables>div>span,
html[data-theme="light"] .flow-step.lit .flow-dot,
html[data-theme="light"] .ben-ico,
html[data-theme="light"] .carousel-btn:hover,
html[data-theme="light"] .cmp th.neos,
html[data-theme="light"] .msg.a b,
html[data-theme="light"] .step-num,
html[data-theme="light"] .proof-step,
html[data-theme="light"] summary:hover,
html[data-theme="light"] .assessment-close:hover,
html[data-theme="light"] .assessment-kicker,
html[data-theme="light"] .pressure-icon,
html[data-theme="light"] .consent a,
html[data-theme="light"] .form-status.success,
html[data-theme="light"] .map-delivery-steps article>span,
html[data-theme="light"] .foot-col a:hover,
html[data-theme="light"] .cookie-notice-link,
html[data-theme="light"] .legal-content a,
html[data-theme="light"] .not-found .error-code{
  color:var(--green-ink);
}
html[data-theme="light"] .hero h1 .hl{
  color:#111812;
  background:transparent;
  padding:0;
}
html[data-theme="light"] .hero h1 .hl .typed-copy,
html[data-theme="light"] .accent-text{
  color:#111812;
  background:var(--cta);
  border-radius:.08em;
  padding:0 .18em;
  border-radius: 40px;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
}
html[data-theme="light"] .hero h1 .typed-copy-ghost.is-rotating-out{
  background:transparent;
}

/* ============ SECTION TITLE MASK REVEAL ============ */
.section-title-reveal{
  position:relative;
  isolation:isolate;
}
.title-reveal-overlay{
  position:absolute;
  inset:0;
  z-index:8;
  overflow:visible;
  pointer-events:none;
}
.title-reveal-strip{
  --line-index:0;
  --strip-rotation:-.7deg;
  position:absolute;
  display:block;
  transform:rotate(var(--strip-rotation));
  transform-origin:50% 50%;
}
.title-reveal-strip::before,
.title-reveal-strip::after{
  content:"";
  position:absolute;
  inset:0;
  display:block;
  transform:translate3d(0,0,0) scaleX(1);
  transform-origin:100% 50%;
  will-change:transform;
}
.title-reveal-strip::before{
  z-index:1;
  background:linear-gradient(105deg,var(--cta) 0%,#F0FF72 42%,var(--cta-dark) 100%);
  transition:transform .94s cubic-bezier(1,0,0,1) calc(var(--line-index) * .14s);
}
.title-reveal-strip::after{
  z-index:2;
  background:var(--bg);
  box-shadow:none;
  transition:transform .58s cubic-bezier(1,0,0,1) calc(var(--line-index) * .14s);
}
.section-title-reveal.is-title-revealed .title-reveal-strip::before,
.section-title-reveal.is-title-revealed .title-reveal-strip::after{
  transform:translate3d(.12em,0,0) scaleX(0);
}
/* ============ VISIBLE CARD MICRO-INTERACTIONS ============ */
.card.is-interacting,
.ben.is-interacting,
.carousel-card.is-interacting,
.chat-demo.is-interacting,
.conversion-deliverables.is-interacting{
  transform:translateY(-5px) scale(1.008)!important;
  border-color:rgba(var(--card-glow-rgb),.42);
  box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.09),0 12px 30px rgba(0,0,0,.22),0 28px 60px rgba(0,0,0,.16);
}
.phantom-card.is-interacting{
  transform:translateY(-6px) scale(1.012)!important;
  border-color:rgba(var(--card-glow-rgb),.36);
  box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.08),0 14px 34px rgba(0,0,0,.16),0 30px 64px rgba(0,0,0,.14);
}
.timeline-step.active .step-content.is-interacting{
  transform:translateY(-5px) scale(1.008)!important;
  border-color:rgba(var(--card-glow-rgb),.4);
  box-shadow:0 0 0 1px rgba(var(--card-glow-rgb),.08),0 12px 30px rgba(0,0,0,.22),0 28px 60px rgba(0,0,0,.15);
}
.card.is-interacting::after,
.ben.is-interacting::after,
.phantom-card.is-interacting::after,
.stack-card.is-interacting::after,
.carousel-card.is-interacting::after,
.step-content.is-interacting::after,
.chat-demo.is-interacting::after,
.conversion-deliverables.is-interacting::after{opacity:1}

.card.is-interacting .card-ico,
.ben.is-interacting .ben-ico{
  transform:translate3d(var(--micro-x),calc(var(--micro-y) - 5px),0) scale(1.12) rotate(3deg);
}
.carousel-card.is-interacting .carousel-illustration{
  transform:translate3d(var(--micro-x),calc(var(--micro-y) - 6px),0) scale(1.09) rotate(-2deg);
}
.phantom-card.is-interacting .p-mock-phone,
.phantom-card.is-interacting .p-mock-center-squircle,
.phantom-card.is-interacting .p-mock-stat,
.phantom-card.is-interacting .scenario-demo{
  transform:translate3d(var(--micro-x),calc(var(--micro-y) - 6px),0) scale(1.025);
}
.stack-card.is-interacting .s-mockup-box{
  transform:translate3d(var(--micro-x),calc(var(--micro-y) - 6px),0) scale(1.018);
  box-shadow:0 24px 56px rgba(0,0,0,.38);
}
.chat-demo.is-interacting .msg.q{transform:translate3d(var(--micro-x),var(--micro-y),0)}
.chat-demo.is-interacting .msg.a{transform:translate3d(var(--micro-inverse-x),var(--micro-inverse-y),0)}
.conversion-deliverables.is-interacting>div:nth-child(1){transform:translateX(5px)}
.conversion-deliverables.is-interacting>div:nth-child(2){transform:translateX(8px)}
.conversion-deliverables.is-interacting>div:nth-child(3){transform:translateX(11px)}

.card.is-pressed,
.ben.is-pressed,
.phantom-card.is-pressed,
.carousel-card.is-pressed,
.step-content.is-pressed,
.chat-demo.is-pressed,
.conversion-deliverables.is-pressed{
  transform:translateY(-1px) scale(.992)!important;
  transition-duration:.12s;
}

.p-mock-phone,
.p-mock-center-squircle,
.p-mock-stat,
.scenario-demo{
  position:relative;
  overflow:hidden;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease);
}
.p-mock-phone::after,
.p-mock-center-squircle::after,
.p-mock-stat::after,
.scenario-demo::after{
  content:"";
  position:absolute;
  top:-35%;
  left:-42%;
  width:26%;
  height:170%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);
  transform:skewX(-18deg);
  pointer-events:none;
  transition:transform .75s var(--ease);
}
.phantom-card.is-interacting .p-mock-phone::after,
.phantom-card.is-interacting .p-mock-center-squircle::after,
.phantom-card.is-interacting .p-mock-stat::after,
.phantom-card.is-interacting .scenario-demo::after{
  transform:translateX(570%) skewX(-18deg);
}
.phantom-card.is-interacting .p-phone-val,
.phantom-card.is-interacting .p-stat-val{transform:translateY(-2px);letter-spacing:-.045em}
.p-phone-val,.p-stat-val{transition:transform .35s var(--ease),letter-spacing .35s var(--ease)}

@keyframes card-status-pulse{
  0%,100%{opacity:.64;filter:brightness(.9)}
  50%{opacity:1;filter:brightness(1.18)}
}
@keyframes card-icon-float{
  0%,100%{transform:translateY(0) rotate(0)}
  50%{transform:translateY(-5px) rotate(2deg)}
}
.status-live{animation:card-status-pulse 2.2s ease-in-out infinite}
.p-squircle-icon{animation:card-icon-float 3.2s ease-in-out infinite}
.mockup-badge{animation:card-status-pulse 2.6s .35s ease-in-out infinite}

/* ============ LEGAL & UTILITY PAGES ============ */
.simple-nav{position:static}
.wordmark{font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:.08em}
.simple-main{min-height:70vh;padding:clamp(4rem,8vw,7rem) 0}
.legal-content{max-width:780px}
.legal-content h1{font-size:clamp(2.4rem,6vw,4.2rem);margin-bottom:1rem}
.legal-content .updated{color:var(--dim);font-size:.85rem;margin-bottom:3rem}
.legal-content h2{font-size:1.45rem;margin:2.6rem 0 .8rem}
.legal-content p,.legal-content li{color:var(--muted)}
.legal-content p+p{margin-top:.85rem}
.legal-content ul{padding-left:1.25rem;display:grid;gap:.5rem}
.legal-content a{color:var(--green);text-decoration:underline;text-underline-offset:.18em}
.not-found{text-align:center;max-width:720px;margin:0 auto}
.not-found .error-code{display:block;font-family:var(--font-display);font-size:clamp(5rem,16vw,10rem);font-weight:700;line-height:.9;color:var(--green);font-variant-numeric:tabular-nums}
.not-found p{max-width:540px;margin:1.25rem auto 2rem;color:var(--muted)}

/* accessibility */
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:4px}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important}
  .rv{opacity:1;transform:none}
  .phantom-card,.stack-card,.hero-art svg,.carousel-track{transform:none!important}
  .card:hover,.ben:hover,.phantom-card:hover,.carousel-card:hover,.step-content:hover,.chat-demo:hover,.conversion-deliverables:hover,
  .card-ico,.ben-ico,.p-mock-phone,.scenario-demo,.s-mockup-box,.carousel-illustration,.step-num,.chat-demo .msg{transform:none!important}
  html{scroll-behavior:auto}
}
