/* =====================================================================
   GREEN CITY MARKETING — VIDEO PRODUCTION (Web3 / cinematic)
   Design authority: Emil Kowalski design-engineering principles.
   Dual-mode (cinema/black ↔ system/white), green "current" motion fingerprint.
   ===================================================================== */

/* ----- FONTS -------------------------------------------------------- */
/* Neue Haas Grotesk (licensed, Linotype via MyFonts) — self-hosted from assets/fonts/.
   Display Pro = titles (75 Bold / 95 Black), Text Pro = body + UI (55 Roman / 75 Bold).
   JetBrains Mono (loaded via Google in the <head>) is kept for micro labels only.
   Files resolve relative to this stylesheet, so the same paths work standalone AND on
   WordPress (vp-web3.css sits beside its own assets/ mirror). */
@font-face{
  font-family:"Neue Haas Grotesk Display Pro";
  src:url("assets/fonts/NeueHaasGroteskDisplayPro-75Bold.woff2") format("woff2"),
      url("assets/fonts/NeueHaasGroteskDisplayPro-75Bold.woff") format("woff");
  font-weight:700;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Neue Haas Grotesk Display Pro";
  src:url("assets/fonts/NeueHaasGroteskDisplayPro-95Black.woff2") format("woff2"),
      url("assets/fonts/NeueHaasGroteskDisplayPro-95Black.woff") format("woff");
  font-weight:900;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Neue Haas Grotesk Text Pro";
  src:url("assets/fonts/NeueHaasGroteskTextPro-55Roman.woff2") format("woff2"),
      url("assets/fonts/NeueHaasGroteskTextPro-55Roman.woff") format("woff");
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Neue Haas Grotesk Text Pro";
  src:url("assets/fonts/NeueHaasGroteskTextPro-75Bold.woff2") format("woff2"),
      url("assets/fonts/NeueHaasGroteskTextPro-75Bold.woff") format("woff");
  font-weight:700;font-style:normal;font-display:swap;
}

/* ----- TOKENS ------------------------------------------------------- */
:root{
  /* brand */
  --green:#27F58C; --green-bright:#3BFF9C; --green-deep:#0A8A4F; --green-deep-2:#0FB866;
  --green-glow:rgba(39,245,140,.35);

  /* cinema (black) */
  --void:#050505; --void-edge:#080A09; --void-panel:#0C0F0E; --void-panel-2:#121817;
  --void-line:rgba(255,255,255,.10); --void-line-green:rgba(39,245,140,.22);
  --void-ink:#FFFFFF; --void-ink-2:#C7D3CD; --void-ink-3:#7E8E87;

  /* system (white) */
  --paper:#FFFFFF; --paper-edge:#F4F7F5; --paper-panel:#F6F9F7; --paper-panel-2:#EEF3F0;
  --paper-line:rgba(5,5,5,.10); --paper-line-green:rgba(10,138,79,.22);
  --paper-ink:#0A0C0B; --paper-ink-2:#2C3A33; --paper-ink-3:#6A7972;

  /* fonts */
  --font-display:"Neue Haas Grotesk Display Pro","Helvetica Now Display","Helvetica Neue",Arial,sans-serif;
  --font-body:"Neue Haas Grotesk Text Pro","Helvetica Neue",Arial,sans-serif;
  --font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;

  /* layout */
  --max:1320px; --max-wide:1440px; --max-text:780px;
  --gutter:clamp(20px,5vw,48px);

  /* radius / motion */
  --r-sm:12px; --r:18px; --r-lg:26px; --r-pill:999px;
  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-snap:cubic-bezier(.2,.9,.25,1);
  --dur-micro:180ms; --dur-ui:320ms; --dur-reveal:700ms; --dur-cine:1100ms;

  color-scheme:dark;
}

/* contextual contract — components only read these */
.vp-cinema{
  --c-bg:var(--void); --c-bg-edge:var(--void-edge);
  --c-panel:var(--void-panel); --c-panel-2:var(--void-panel-2);
  --c-line:var(--void-line); --c-line-green:var(--void-line-green);
  --c-ink:var(--void-ink); --c-ink-2:var(--void-ink-2); --c-ink-3:var(--void-ink-3);
  --c-accent:var(--green); --c-accent-soft:var(--green-glow); --c-on-accent:#04140C;
  --c-shadow:0 30px 80px -40px rgba(0,0,0,.9);
  color:var(--c-ink); background:var(--c-bg);
}
.vp-system{
  --c-bg:var(--paper); --c-bg-edge:var(--paper-edge);
  --c-panel:var(--paper-panel); --c-panel-2:var(--paper-panel-2);
  --c-line:var(--paper-line); --c-line-green:var(--paper-line-green);
  --c-ink:var(--paper-ink); --c-ink-2:var(--paper-ink-2); --c-ink-3:var(--paper-ink-3);
  --c-accent:var(--green-deep); --c-accent-soft:rgba(10,138,79,.08); --c-on-accent:#04140C;
  --c-shadow:0 24px 60px -30px rgba(5,5,5,.14);
  color:var(--c-ink); background:var(--c-bg);
}

/* ----- RESET -------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
/* overflow-x lives on <html> (the root scroller) — NOT <body>. Putting it on
   <body> forces overflow-y:auto onto body, making BODY the scroll container,
   which breaks window scroll / scroll-spy and causes mobile fixed-header jitter. */
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:hidden}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;background:var(--void);color:var(--void-ink);
  font-family:var(--font-body);font-weight:400;font-size:18px;line-height:1.65;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,p{margin:0}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
::selection{background:var(--green);color:#04140C}
:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:6px}

/* ----- GRAIN + AMBIENT --------------------------------------------- */
.vp-grain{
  position:fixed;inset:0;z-index:2;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.vp-scrollbar{position:fixed;top:0;left:0;right:0;height:2px;z-index:60;background:transparent;pointer-events:none}
.vp-scrollbar__fill{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green-deep),var(--green));box-shadow:0 0 12px var(--green-glow);transform-origin:left}

/* ----- HEADER ------------------------------------------------------- */
.vp-header{position:fixed;top:0;left:0;right:0;z-index:50;padding:14px var(--gutter);
  transition:transform var(--dur-ui) var(--ease-out),background var(--dur-ui) ease,backdrop-filter var(--dur-ui) ease,border-color var(--dur-ui) ease;
  border-bottom:1px solid transparent}
.vp-header.is-scrolled{background:rgba(5,6,5,.72);backdrop-filter:blur(16px) saturate(140%);border-bottom-color:var(--void-line)}
.vp-header.is-hidden{transform:translateY(-110%)}
.vp-header__inner{max-width:var(--max-wide);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px}
.vp-brand{display:flex;align-items:center;color:#fff;flex:none}
.vp-brand__mark{color:var(--green);display:grid;place-items:center;filter:drop-shadow(0 0 10px var(--green-glow))}
.vp-brand__logo{height:clamp(42px,4.4vw,54px);width:auto;display:block;filter:drop-shadow(0 5px 16px rgba(0,0,0,.55))}
.vp-brand__logo--foot{height:48px}
.vp-nav{flex:1 1 auto;display:flex;justify-content:center;min-width:0}
.vp-nav__pill{display:flex;flex-direction:column;gap:4px;padding:6px 8px;border:1px solid var(--void-line);border-radius:22px;background:rgba(255,255,255,.04);backdrop-filter:blur(10px)}
.vp-nav__row{display:flex;gap:3px;justify-content:center;list-style:none;margin:0;padding:0}
.vp-nav__pill a{display:block;padding:6px 13px;border-radius:var(--r-pill);font-family:var(--font-mono);font-size:16px;letter-spacing:.03em;color:var(--void-ink-2);white-space:nowrap;transition:color var(--dur-micro) ease,background var(--dur-micro) ease}
.vp-nav__pill a:hover{color:#fff}
.vp-nav__pill a.is-active{color:var(--green);background:rgba(39,245,140,.1)}
.vp-burger{display:none;width:42px;height:38px;border:1px solid var(--void-line);border-radius:10px;flex-direction:column;gap:5px;align-items:center;justify-content:center}
.vp-burger span{width:18px;height:1.6px;background:#fff;transition:transform var(--dur-ui) var(--ease-snap)}
.vp-burger[aria-expanded="true"] span:first-child{transform:translateY(3.3px) rotate(45deg)}
.vp-burger[aria-expanded="true"] span:last-child{transform:translateY(-3.3px) rotate(-45deg)}

/* ----- BUTTONS ------------------------------------------------------ */
.vp-btn{position:relative;display:inline-flex;align-items:center;gap:9px;
  padding:13px 22px;border-radius:var(--r-pill);font-family:var(--font-mono);
  font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  transition:transform var(--dur-micro) var(--ease-snap),box-shadow var(--dur-ui) ease,background var(--dur-ui) ease,color var(--dur-ui) ease;
  will-change:transform}
.vp-btn svg{transition:transform var(--dur-ui) var(--ease-snap)}
.vp-btn:active{transform:scale(.97)}
.vp-btn--cta{background:var(--green);color:#04140C;box-shadow:0 8px 30px -8px var(--green-glow),inset 0 0 0 1px rgba(255,255,255,.12)}
.vp-btn--cta:hover{background:var(--green-bright);box-shadow:0 12px 40px -8px var(--green-glow)}
.vp-btn--cta:hover svg{transform:translateX(3px)}
.vp-btn--ghost{background:transparent;color:var(--c-ink,#fff);box-shadow:inset 0 0 0 1px var(--c-line,rgba(255,255,255,.18))}
.vp-btn--ghost:hover{box-shadow:inset 0 0 0 1px var(--c-accent,var(--green));color:var(--c-accent,var(--green))}
.vp-btn--lg{padding:16px 28px;font-size:15px}
.vp-btn--sm{padding:11px 18px;font-size:14px}

/* ----- SECTION SHELL ------------------------------------------------ */
.vp-sec{position:relative;padding:clamp(96px,12vw,160px) 0;overflow:clip;isolation:isolate}
.vp-sec + .vp-sec{border-top:1px solid var(--c-line)}
.vp-inner{max-width:var(--max);margin:0 auto;padding:0 var(--gutter);position:relative;z-index:2}
.vp-page > .vp-sec:first-child{padding-top:0}

/* feather edges (seam system) */
.vp-cinema::before,.vp-system::before,.vp-cinema::after,.vp-system::after{content:"";position:absolute;left:0;right:0;height:12%;z-index:1;pointer-events:none}
.vp-cinema::before{top:0;background:linear-gradient(var(--void-edge),transparent)}
.vp-cinema::after{bottom:0;background:linear-gradient(transparent,var(--void-edge))}
.vp-system::before{top:0;background:linear-gradient(var(--paper-edge),transparent)}
.vp-system::after{bottom:0;background:linear-gradient(transparent,var(--paper-edge))}

/* ----- TYPOGRAPHY --------------------------------------------------- */
.vp-eyebrow{font-family:var(--font-mono);font-size:14px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--c-accent);display:inline-flex;align-items:center;gap:9px;margin-bottom:22px}
.vp-system .vp-eyebrow{color:var(--green-deep)}
.vp-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);animation:vpPulse 2.4s var(--ease-out) infinite}
@keyframes vpPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}

.vp-title{font-family:var(--font-display);font-weight:700;text-transform:uppercase;
  letter-spacing:-.004em;line-height:1.06;font-size:clamp(34px,5.4vw,64px);color:var(--c-ink)}
.vp-title--hero{font-size:clamp(38px,4.8vw,66px);line-height:1.05;letter-spacing:-.004em}
.vp-title--final{font-size:clamp(38px,6.6vw,82px);line-height:1.05}
.vp-title .vp-line{display:block}
.vp-word{color:var(--c-accent);position:relative}
.vp-system .vp-word{color:var(--green-deep)}

.vp-lead{font-size:clamp(17px,2vw,20px);line-height:1.62;color:var(--c-ink-2);max-width:var(--max-text)}
.vp-sub{font-size:clamp(15.5px,1.6vw,18px);line-height:1.62;color:var(--c-ink-2);max-width:560px}
.vp-label{font-family:var(--font-mono);font-size:14px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--c-ink-3)}
.vp-proofline{margin:48px auto 0;max-width:760px;text-align:center;font-size:16px;color:var(--c-ink-2)}
.vp-proofline strong{color:var(--c-accent);font-weight:600}
.vp-banner{margin:64px auto 0;max-width:900px;text-align:center;font-family:var(--font-display);
  font-weight:700;text-transform:uppercase;font-size:clamp(22px,3.4vw,40px);line-height:1.05;letter-spacing:.002em;color:var(--c-ink)}

/* ----- HEADS -------------------------------------------------------- */
.vp-head{margin-bottom:clamp(48px,6vw,80px)}
.vp-head--center{text-align:center;max-width:900px;margin-left:auto;margin-right:auto}
.vp-head--center .vp-eyebrow{justify-content:center}
.vp-head--center .vp-lead{margin-left:auto;margin-right:auto}
.vp-head--split{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:end}
@media (max-width:900px){.vp-head--split{grid-template-columns:1fr;gap:28px;align-items:start}}

/* ----- THE GREEN CURRENT (motion fingerprint) ---------------------- */
.vp-current__track{fill:none;stroke:var(--c-line);stroke-width:1.5}
.vp-current__line{fill:none;stroke:var(--c-accent);stroke-width:1.5;
  stroke-dasharray:8 12;filter:drop-shadow(0 0 4px var(--green-glow));
  stroke-dashoffset:200;animation:vpFlow 3.4s linear infinite}
.vp-system .vp-current__line{stroke:var(--green-deep-2)}
@keyframes vpFlow{to{stroke-dashoffset:0}}
.is-revealed .vp-current__line{animation-play-state:running}

/* ----- REVEAL ------------------------------------------------------- */
/* Hidden initial states apply ONLY when JS is active (html.js). No-JS = fully visible. */
.js .vp-reveal{opacity:0;transform:translateY(24px);filter:blur(6px);
  transition:opacity var(--dur-reveal) var(--ease-out),transform var(--dur-reveal) var(--ease-out),filter var(--dur-reveal) var(--ease-out);
  transition-delay:calc((var(--d,0) - 1) * 70ms)}
.vp-reveal[data-d="1"]{--d:1}.vp-reveal[data-d="2"]{--d:2}.vp-reveal[data-d="3"]{--d:3}
.vp-reveal[data-d="4"]{--d:4}.vp-reveal[data-d="5"]{--d:5}.vp-reveal[data-d="6"]{--d:6}
.vp-reveal[data-d="7"]{--d:7}.vp-reveal[data-d="8"]{--d:8}
.is-revealed.vp-reveal,.is-revealed .vp-reveal{opacity:1;transform:none;filter:none}

/* =====================================================================
   01 · HERO
   ===================================================================== */
.vp-hero{min-height:100vh;padding-bottom:clamp(36px,5vh,60px)}
.vp-page > .vp-sec.vp-hero{padding-top:clamp(112px,14vh,140px)}
.vp-hero__bg{position:absolute;inset:0;z-index:0;overflow:hidden}
.vp-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;pointer-events:none}
.vp-orb--1{width:600px;height:600px;top:-160px;left:-120px;background:radial-gradient(circle,rgba(39,245,140,.30),transparent 70%);animation:vpDrift 22s ease-in-out infinite}
.vp-orb--2{width:520px;height:520px;bottom:-160px;right:-100px;background:radial-gradient(circle,rgba(15,184,102,.22),transparent 70%);animation:vpDrift 26s ease-in-out infinite reverse}
.vp-orb--center{position:absolute;top:30%;left:50%;width:680px;height:680px;transform:translateX(-50%);background:radial-gradient(circle,rgba(39,245,140,.12),transparent 70%);filter:blur(90px);z-index:0;pointer-events:none}
@keyframes vpDrift{0%,100%{transform:translate(0,0)}50%{transform:translate(40px,30px)}}
.vp-grid-fade{position:absolute;inset:0;
  background-image:linear-gradient(var(--void-line) 1px,transparent 1px),linear-gradient(90deg,var(--void-line) 1px,transparent 1px);
  background-size:64px 64px;mask-image:radial-gradient(ellipse 80% 60% at 50% 40%,#000,transparent 75%);opacity:.4}

.vp-hero__grid{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(24px,3.2vw,52px);align-items:center;
  min-height:calc(100vh - clamp(112px,14vh,140px) - clamp(36px,5vh,60px))}
@media (max-width:980px){.vp-hero__grid{grid-template-columns:1fr;gap:30px;min-height:0}}
.vp-hero__copy{max-width:640px;min-width:0}
.vp-hero__media{display:flex;flex-direction:column;gap:clamp(13px,1.8vh,20px);min-width:0}
.vp-hero__cta{display:flex;flex-wrap:wrap;gap:12px}
.vp-hero__media .vp-hero__cta .vp-btn{flex:1 1 190px;justify-content:center}

/* reel frame */
.vp-reel{position:relative;margin:0;border-radius:var(--r-lg);overflow:hidden;
  border:1px solid var(--void-line);box-shadow:var(--c-shadow),0 0 70px -30px var(--green-glow);
  aspect-ratio:16/10;background:#000}
.vp-reel__scene{position:absolute;inset:0}
.vp-scene{position:absolute;inset:0;overflow:hidden}
.vp-scene--house{background:linear-gradient(180deg,#1a2740 0%,#3a4a3a 42%,#0c1410 100%)}
.vp-scene--house .vp-scene__sky{position:absolute;inset:0;background:linear-gradient(180deg,#243a5e,#6b5535 55%,#1a1410);opacity:.9}
.vp-scene--house .vp-scene__sun{position:absolute;left:60%;top:34%;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(255,196,120,.9),rgba(255,150,60,.25) 45%,transparent 70%);filter:blur(6px);animation:vpKen 18s ease-in-out infinite alternate}
.vp-scene--house .vp-scene__hill{position:absolute;left:0;right:0;bottom:0;height:46%;background:linear-gradient(180deg,#13251a,#040705);clip-path:polygon(0 38%,18% 30%,40% 40%,62% 26%,82% 36%,100% 28%,100% 100%,0 100%)}
.vp-scene--house .vp-scene__house{position:absolute;left:48%;bottom:18%;width:34%;height:34%;background:linear-gradient(180deg,#2a2620,#0e0c0a);clip-path:polygon(0 38%,50% 0,100% 38%,100% 100%,0 100%);box-shadow:0 0 50px rgba(255,180,90,.4)}
.vp-scene--house .vp-scene__house::after{content:"";position:absolute;left:30%;top:55%;width:14%;height:30%;background:rgba(255,196,120,.85);box-shadow:0 0 18px rgba(255,196,120,.8),28px 0 0 rgba(255,196,120,.7),-22px 6px 0 rgba(255,196,120,.6)}
.vp-scene--house .vp-scene__crew{position:absolute;left:8%;bottom:14%;width:24%;height:40%;background:radial-gradient(ellipse at bottom,rgba(0,0,0,.85),transparent 70%)}
.vp-scene--house .vp-scene__glow{position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 56% 44%,rgba(255,170,80,.18),transparent 60%);mix-blend-mode:screen}
.vp-scene{animation:vpKen 20s ease-in-out infinite alternate}
@keyframes vpKen{from{transform:scale(1.04)}to{transform:scale(1.12) translate(-1%,-1%)}}

/* camcorder HUD */
.vp-hud{position:absolute;inset:0;z-index:3;font-family:var(--font-mono);
  background:linear-gradient(transparent 55%,rgba(0,0,0,.6))}
.vp-hud__top{position:absolute;top:14px;left:16px;right:16px;display:flex;align-items:center;gap:12px;justify-content:space-between}
.vp-rec{display:inline-flex;align-items:center;gap:6px;font-size:10px;letter-spacing:.18em;color:#fff;text-shadow:0 1px 4px #000}
.vp-rec i{width:8px;height:8px;border-radius:50%;background:#ff4d4d;box-shadow:0 0 8px #ff4d4d;animation:vpBlink 1.4s steps(1) infinite}
@keyframes vpBlink{50%{opacity:.2}}
.vp-hud__read{font-size:9.5px;letter-spacing:.05em;color:rgba(255,255,255,.78);text-shadow:0 1px 3px #000;text-align:right}
.vp-hud__left{position:absolute;top:50%;left:14px;transform:translateY(-50%);font-size:9px;line-height:1.9;letter-spacing:.12em;color:rgba(255,255,255,.55);text-align:center}
.vp-hud__corner{position:absolute;width:22px;height:22px;border:2px solid rgba(255,255,255,.5)}
.vp-hud__corner--tl{top:38px;left:48px;border-right:0;border-bottom:0}
.vp-hud__corner--tr{top:38px;right:18px;border-left:0;border-bottom:0}
.vp-hud__corner--bl{bottom:52px;left:48px;border-right:0;border-top:0}
.vp-hud__corner--br{bottom:52px;right:18px;border-left:0;border-top:0}
.vp-hud__bottom{position:absolute;bottom:14px;left:16px;right:16px;display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.1em;color:#fff;text-shadow:0 1px 4px #000}
.vp-scrub{flex:1;height:3px;border-radius:3px;background:rgba(255,255,255,.25);overflow:hidden}
.vp-scrub__fill{display:block;height:100%;width:43%;background:var(--green);box-shadow:0 0 8px var(--green);animation:vpScrub 12s linear infinite}
@keyframes vpScrub{0%{width:8%}100%{width:96%}}

.vp-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:4;
  width:74px;height:74px;border-radius:50%;display:grid;place-items:center;color:#04140C;
  background:var(--green);box-shadow:0 0 0 1px rgba(255,255,255,.2),0 10px 40px -8px var(--green-glow);
  transition:transform var(--dur-ui) var(--ease-snap),box-shadow var(--dur-ui) ease;animation:vpBreath 3.4s var(--ease-out) infinite}
.vp-play:hover{transform:translate(-50%,-50%) scale(1.08)}
.vp-play:active{transform:translate(-50%,-50%) scale(.96)}
@keyframes vpBreath{0%,100%{box-shadow:0 0 0 1px rgba(255,255,255,.2),0 10px 40px -8px var(--green-glow)}50%{box-shadow:0 0 0 8px rgba(39,245,140,.08),0 10px 50px -6px var(--green-glow)}}
.vp-play--sm{width:50px;height:50px}

/* floating testimonial */
.vp-floatcard{position:absolute;right:-4px;bottom:-4px;z-index:5;max-width:280px;margin:0;
  padding:18px 20px;border-radius:var(--r);background:rgba(8,12,10,.72);
  backdrop-filter:blur(18px);border:1px solid var(--void-line-green);
  box-shadow:0 24px 60px -24px #000;animation:vpFloat 6s ease-in-out infinite}
@keyframes vpFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.vp-floatcard p{font-size:13px;line-height:1.5;color:#dfeee7;margin:8px 0 12px}
.vp-floatcard cite{font-style:normal;display:flex;flex-direction:column;gap:2px}
.vp-floatcard cite strong{font-size:12px;color:#fff}
.vp-floatcard cite span{font-size:10px;color:var(--void-ink-3)}
.vp-stars{color:var(--green);letter-spacing:2px;font-size:13px}
.vp-stars--xs{font-size:10px;letter-spacing:1px}
/* raw --green is only ~1.4:1 on white; darken star glyphs on white (.vp-system) surfaces */
.vp-system .vp-stars{color:var(--green-deep)}

/* hero proof bar */
.vp-hero__proof{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:clamp(48px,7vw,84px);
  padding-top:36px;border-top:1px solid var(--void-line)}
.vp-stat{display:flex;flex-direction:column;gap:4px}
.vp-stat__num{font-family:var(--font-display);font-weight:700;font-size:clamp(32px,4vw,52px);line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.vp-stat__lbl{font-family:var(--font-mono);font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--void-ink-3)}
@media (max-width:640px){.vp-hero__proof{grid-template-columns:repeat(2,1fr);gap:28px 16px}}

/* trust marquee */
.vp-trust{margin-top:clamp(40px,5vw,64px)}
.vp-trust__lbl{text-align:center;margin-bottom:18px}
.vp-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.vp-marquee__row{display:flex;gap:56px;width:max-content;animation:vpMarq 32s linear infinite}
.vp-marquee:hover .vp-marquee__row{animation-play-state:paused}
.vp-marquee__row span{font-family:var(--font-display);font-weight:700;font-size:18px;letter-spacing:.04em;
  color:var(--void-ink-3);white-space:nowrap;transition:color var(--dur-ui) ease;opacity:.7}
.vp-marquee__row span:hover{color:var(--green)}
@keyframes vpMarq{to{transform:translateX(-50%)}}

.vp-scrollcue{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:4;
  display:flex;flex-direction:column;align-items:center;gap:8px;font-family:var(--font-mono);
  font-size:9px;letter-spacing:.3em;color:var(--void-ink-3)}
.vp-scrollcue i{width:1px;height:34px;background:linear-gradient(var(--green),transparent);position:relative;overflow:hidden}
.vp-scrollcue i::after{content:"";position:absolute;top:0;left:0;width:1px;height:12px;background:var(--green);animation:vpCue 1.8s var(--ease-out) infinite}
@keyframes vpCue{0%{transform:translateY(-12px)}100%{transform:translateY(34px)}}
@media (max-width:980px){.vp-scrollcue{display:none}}

/* the reel video-word treatment */
.vp-word--reel{-webkit-background-clip:text;background-clip:text;color:transparent;
  background-image:linear-gradient(120deg,#bff6d8,var(--green) 40%,#0a8a4f 75%,var(--green-bright));
  background-size:220% 100%;animation:vpReelWord 7s ease-in-out infinite;
  filter:drop-shadow(0 0 18px rgba(39,245,140,.35))}
@keyframes vpReelWord{0%,100%{background-position:0% 0}50%{background-position:100% 0}}

/* =====================================================================
   02 · WHY VIDEO MATTERS
   ===================================================================== */
.vp-pullquote{position:relative;font-family:var(--font-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(22px,2.6vw,30px);line-height:1.12;letter-spacing:.002em;color:var(--c-ink);padding-left:6px}
.vp-pullquote em{color:var(--green-deep);font-style:normal}
.vp-quote-mark{position:absolute;top:-30px;left:-6px;font-size:90px;line-height:1;color:var(--c-line-green);font-family:var(--font-display)}
.vp-pullquote .vp-sub{margin-top:18px;font-family:var(--font-body);font-weight:400;text-transform:none;letter-spacing:0}

/* Why-Video · cinematic spokesperson quote card — real footage on a dark editorial panel */
.vp-vquote{position:relative;align-self:end;border-radius:18px;overflow:hidden;isolation:isolate;
  min-height:clamp(320px,33vw,420px);display:flex;align-items:flex-end;background:#050505;
  box-shadow:0 32px 60px -30px rgba(5,6,8,.5),0 0 0 1px rgba(5,6,8,.08)}
.vp-vquote__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;background:#050505}
.vp-vquote__scrim{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(0deg,rgba(5,6,8,.93) 0%,rgba(5,6,8,.62) 34%,rgba(5,6,8,.12) 64%,rgba(5,6,8,.34) 100%)}
.vp-vquote__tag{position:absolute;top:16px;left:16px;z-index:2;display:inline-flex;align-items:center;gap:7px;
  font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#fff;
  background:rgba(5,6,8,.42);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  padding:6px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.16)}
.vp-vquote__tag i{width:7px;height:7px;border-radius:50%;background:var(--green);animation:vpVqPulse 2.4s ease-out infinite}
@keyframes vpVqPulse{0%{box-shadow:0 0 0 0 rgba(39,245,140,.55)}70%{box-shadow:0 0 0 8px rgba(39,245,140,0)}100%{box-shadow:0 0 0 0 rgba(39,245,140,0)}}
.vp-pullquote--onvideo{position:relative;z-index:2;padding:0 26px 26px;color:#fff}
.vp-pullquote--onvideo .vp-quote-mark{position:static;display:block;color:var(--green);font-size:64px;margin-bottom:-20px}
.vp-pullquote--onvideo em{color:var(--green)}
.vp-pullquote--onvideo .vp-sub{color:rgba(255,255,255,.84)}
@media (prefers-reduced-motion:reduce){.vp-vquote__tag i{animation:none}}
@media (max-width:900px){.vp-vquote{min-height:288px}}

/* Reusable real-tool / platform logo stack — tidy aligned white tiles, reads on dark + white sections */
.vp-toolstack{margin:clamp(30px,4vw,46px) auto 0;max-width:940px;text-align:center}
.vp-toolstack__lbl{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--c-ink-3);margin-bottom:16px}
.vp-toolstack__row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.vp-toolchip{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;
  background:#fff;border:1px solid rgba(10,16,20,.1);border-radius:12px;
  box-shadow:0 5px 16px -8px rgba(5,6,8,.45);transition:transform .25s var(--ease-out)}
.vp-toolchip img{width:26px;height:26px;object-fit:contain;display:block}
@media (hover:hover) and (pointer:fine){.vp-toolchip:hover{transform:translateY(-3px)}}
@media (max-width:560px){.vp-toolchip{width:42px;height:42px}.vp-toolchip img{width:23px;height:23px}}

.vp-journey{position:relative;margin-top:20px}
.vp-journey__rail{position:absolute;top:34px;left:0;width:100%;height:60px;z-index:0}
.vp-journey__steps{position:relative;z-index:1;display:grid;grid-template-columns:repeat(6,1fr);gap:18px;align-items:start}
.vp-jstep{position:relative}
.vp-jstep__ico{position:absolute;top:0;left:0;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;
  background:var(--c-panel);border:1px solid var(--c-line-green);color:var(--green-deep)}
.vp-jstep__ico::before{content:"";width:20px;height:20px;background:currentColor;
  -webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.vp-jstep[data-d] h3{font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.02em;margin-bottom:6px;color:var(--c-ink)}
.vp-jstep p{font-size:14px;line-height:1.45;color:var(--c-ink-2)}
.vp-jstep__ico[data-ico="eye"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000'%3E%3Cpath d='M12 5C5 5 1 12 1 12s4 7 11 7 11-7 11-7-4-7-11-7Zm0 11a4 4 0 110-8 4 4 0 010 8Z'/%3E%3C/svg%3E")}
.vp-jstep__ico[data-ico="shield"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000'%3E%3Cpath d='M12 2 4 5v6c0 5 3.4 9 8 11 4.6-2 8-6 8-11V5l-8-3Zm-1 13-3-3 1.4-1.4L11 12.2l4.6-4.6L17 9l-6 6Z'/%3E%3C/svg%3E")}
.vp-jstep__ico[data-ico="book"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000'%3E%3Cpath d='M4 4h7v16H4zM13 4h7v16h-7z'/%3E%3C/svg%3E")}
.vp-jstep__ico[data-ico="check"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000'%3E%3Cpath d='m9 16.2-3.5-3.5L4 14.2 9 19l11-11-1.5-1.5z'/%3E%3C/svg%3E")}
.vp-jstep__ico[data-ico="cal"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000'%3E%3Cpath d='M7 2v2H5a2 2 0 00-2 2v13a2 2 0 002 2h14a2 2 0 002-2V6a2 2 0 00-2-2h-2V2h-2v2H9V2H7Zm12 7v10H5V9h14Z'/%3E%3C/svg%3E")}
.vp-jstep__ico[data-ico="cash"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000'%3E%3Cpath d='M3 6h18v12H3zM12 9a3 3 0 100 6 3 3 0 000-6Z'/%3E%3C/svg%3E")}
@media (max-width:900px){.vp-journey__steps{grid-template-columns:repeat(2,1fr);gap:28px 18px}.vp-journey__rail{display:none}}
@media (max-width:480px){.vp-journey__steps{grid-template-columns:1fr}}

.vp-persona{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;margin-top:64px}
.vp-persona__node{font-family:var(--font-mono);font-size:14px;letter-spacing:.06em;padding:10px 18px;border-radius:var(--r-pill);
  border:1px solid var(--c-line);background:var(--c-panel);color:var(--c-ink-2)}
.vp-persona__node.is-win{background:var(--green-deep);color:#fff;border-color:transparent;box-shadow:0 10px 30px -12px rgba(10,138,79,.5)}
.vp-persona__arrow{width:40px;height:1.5px;background:var(--green-deep-2);position:relative}
.vp-persona__arrow::after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:1.5px solid var(--green-deep-2);border-right:1.5px solid var(--green-deep-2);transform:rotate(45deg)}

/* =====================================================================
   03 · GREEN CITY PROCESS (Production Engine)
   ===================================================================== */
.vp-pipeline{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-bottom:clamp(48px,6vw,80px)}
.vp-pipeline__rail{position:absolute;top:128px;left:0;width:100%;height:40px;z-index:0}
.vp-pstep{position:relative;z-index:1}
.vp-pstep__no{font-family:var(--font-mono);font-size:12px;color:var(--green);letter-spacing:.1em}
.vp-pstep__screen{margin:10px 0 16px;aspect-ratio:16/11;border-radius:var(--r-sm);border:1px solid var(--void-line);
  background:linear-gradient(135deg,#0d1310,#070a09);position:relative;overflow:hidden;box-shadow:inset 0 0 30px rgba(0,0,0,.6)}
.vp-pstep__screen::before{content:"";position:absolute;inset:10px;border-radius:8px;background:
  repeating-linear-gradient(90deg,rgba(39,245,140,.18) 0 2px,transparent 2px 7px);opacity:.5}
.vp-pstep__screen::after{content:"";position:absolute;left:10px;right:10px;bottom:10px;height:30%;
  background:linear-gradient(180deg,transparent,rgba(39,245,140,.16));border-top:1px solid var(--void-line-green)}
.vp-pstep[data-screen] h3,.vp-pstep h3{font-family:var(--font-display);font-weight:700;font-size:16px;letter-spacing:.02em;margin-bottom:6px}
.vp-pstep__no{font-size:14px}
.vp-pstep p{font-size:14px;line-height:1.45;color:var(--void-ink-2)}
@media (max-width:900px){.vp-pipeline{grid-template-columns:repeat(2,1fr);gap:24px}.vp-pipeline__rail{display:none}}
@media (max-width:480px){.vp-pipeline{grid-template-columns:1fr}}

/* one continuous animated energy line behind the 5 steps (replaces the per-image
   baked green glow that was cropped out of the cutouts) */
.vp-pipeline__rail{top:84px;height:64px;overflow:visible}
.vp-pipeline__rail .vp-current__track{
  stroke:rgba(39,245,140,.24);stroke-width:1.8;stroke-linecap:round;
  filter:drop-shadow(0 0 3px rgba(39,245,140,.4))}
.vp-pipeline__rail .vp-current__line{
  stroke:var(--green);stroke-width:2.4;stroke-linecap:round;
  stroke-dasharray:150 1002;stroke-dashoffset:1152;
  filter:drop-shadow(0 0 5px var(--green)) drop-shadow(0 0 16px var(--green-glow));
  animation:vpRailFlow 4.8s linear infinite}
@keyframes vpRailFlow{to{stroke-dashoffset:0}}

.vp-megastats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.vp-mstat{padding:26px 24px;border-radius:var(--r);background:var(--void-panel);border:1px solid var(--void-line);position:relative;overflow:hidden;
  transition:border-color var(--dur-ui) ease,box-shadow var(--dur-ui) ease,transform var(--dur-ui) var(--ease-out)}
.vp-mstat:hover{border-color:var(--void-line-green);box-shadow:0 0 40px -16px var(--green-glow);transform:translateY(-4px)}
.vp-mstat__chart{height:40px;margin-bottom:16px;border-radius:6px;position:relative;overflow:hidden;opacity:.9}
.vp-mstat__chart[data-chart="bars"]{background:repeating-linear-gradient(90deg,transparent 0 6px,transparent 6px 10px);display:flex;align-items:flex-end;gap:4px}
.vp-mstat__num{font-family:var(--font-display);font-weight:700;font-size:clamp(28px,3.2vw,42px);line-height:1;color:#fff;font-variant-numeric:tabular-nums;display:block}
.vp-mstat__lbl{font-family:var(--font-mono);font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--void-ink-3);display:block;margin-top:8px}
.vp-mstat__delta{font-family:var(--font-mono);font-size:14px;font-weight:600;color:var(--green);margin-top:8px;display:inline-block}
@media (max-width:900px){.vp-megastats{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.vp-megastats{grid-template-columns:1fr}}
.vp-engine__foot{text-align:center;margin-top:48px;font-family:var(--font-mono);font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--void-ink-3);display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:center}

/* =====================================================================
   04 · VIDEO PRODUCTION SERVICES (Commercial)
   ===================================================================== */
.vp-commercial__grid{display:grid;grid-template-columns:1fr 280px;gap:32px;align-items:start}
@media (max-width:980px){.vp-commercial__grid{grid-template-columns:1fr}}
.vp-filmcards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width:760px){.vp-filmcards{grid-template-columns:1fr}}
.vp-filmcard{border-radius:var(--r);overflow:hidden;border:1px solid var(--void-line);background:var(--void-panel);
  transition:transform var(--dur-ui) var(--ease-out),border-color var(--dur-ui) ease,box-shadow var(--dur-ui) ease}
.vp-filmcard:hover{transform:translateY(-6px);border-color:var(--void-line-green);box-shadow:0 30px 60px -30px #000,0 0 40px -20px var(--green-glow)}
.vp-filmcard__media{position:relative;aspect-ratio:16/10;overflow:hidden}
.vp-filmcard__media .vp-scene{transition:transform var(--dur-ui) var(--ease-out)}
.vp-filmcard:hover .vp-scene{transform:scale(1.05)}
.vp-scene--brand{background:linear-gradient(160deg,#243a5e,#5b4a2c 60%,#0c0f0e)}
.vp-scene--service{background:linear-gradient(160deg,#1c3324,#2e4a30 55%,#0c0f0e)}
.vp-scene--trust{background:linear-gradient(160deg,#3a2c44,#5b3a3a 60%,#0c0f0e)}
.vp-scene--brand::after,.vp-scene--service::after,.vp-scene--trust::after{content:"";position:absolute;inset:0;
  background:radial-gradient(ellipse 70% 60% at 50% 70%,rgba(0,0,0,.5),transparent),linear-gradient(transparent 60%,rgba(0,0,0,.55))}
.vp-camframe{position:absolute;inset:12px;border:1px solid rgba(255,255,255,.18);border-radius:6px;z-index:2;pointer-events:none}
.vp-camframe::before,.vp-camframe::after{content:"";position:absolute;width:14px;height:14px;border:2px solid var(--green)}
.vp-camframe::before{top:-1px;left:-1px;border-right:0;border-bottom:0}
.vp-camframe::after{bottom:-1px;right:-1px;border-left:0;border-top:0}
.vp-tc-badge{position:absolute;bottom:12px;left:14px;z-index:3;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;
  padding:3px 7px;border-radius:5px;background:rgba(0,0,0,.6);color:#fff;backdrop-filter:blur(4px)}
.vp-filmcard h3{font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:.02em;margin:18px 20px 8px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.vp-filmcard p{font-size:14px;line-height:1.5;color:var(--void-ink-2);margin:0 20px 22px}

.vp-included{padding:24px;border-radius:var(--r);background:var(--void-panel);border:1px solid var(--void-line);position:sticky;top:90px}
.vp-included .vp-label{margin-bottom:16px;display:block}
.vp-checklist li{display:flex;flex-direction:column;padding:12px 0 12px 30px;position:relative;border-bottom:1px solid var(--void-line)}
.vp-checklist li:last-child{border-bottom:0}
.vp-checklist li::before{content:"✓";position:absolute;left:0;top:12px;width:20px;height:20px;border-radius:50%;
  background:rgba(39,245,140,.12);color:var(--green);font-size:11px;display:grid;place-items:center}
.vp-checklist strong{font-size:14px;letter-spacing:.02em}
.vp-checklist span{font-size:14px;color:var(--void-ink-3)}

.vp-filmstrip{margin-top:48px;overflow:hidden;border-top:1px solid var(--void-line);border-bottom:1px solid var(--void-line);padding:18px 0;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.vp-filmstrip .vp-marquee__row{animation:vpMarq 26s linear infinite}
.vp-strip__item{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:2px;
  width:240px;height:92px;flex:none;padding:12px 14px;border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--void-line)}
.vp-strip__item::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(transparent 30%,rgba(0,0,0,.82))}
.vp-strip__item b{position:relative;z-index:2;font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.03em;color:#fff;white-space:nowrap}
.vp-strip__item i{position:relative;z-index:2;font-family:var(--font-mono);font-style:normal;font-size:14px;color:var(--green);font-weight:500}

/* =====================================================================
   05 · VIDEO ADVERTISING (Social)
   ===================================================================== */
.vp-hub{position:relative;width:230px;height:230px;margin-left:auto}
@media (max-width:900px){.vp-hub{margin:0 auto}}
.vp-hub__core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3;width:64px;height:64px;border-radius:18px;
  display:grid;place-items:center;background:var(--green-deep);color:#fff;box-shadow:0 0 30px -6px rgba(10,138,79,.6)}
.vp-hub__ring{position:absolute;inset:0;border-radius:50%;border:1px dashed var(--paper-line-green);animation:vpSpin 30s linear infinite}
@keyframes vpSpin{to{transform:rotate(360deg)}}
.vp-hub__node{position:absolute;top:50%;left:50%;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;
  font-family:var(--font-mono);font-weight:600;font-size:16px;color:var(--paper-ink-2);background:#fff;border:1px solid var(--paper-line);
  transform:translate(-50%,-50%) rotate(var(--a)) translateY(-105px) rotate(calc(-1*var(--a)));box-shadow:var(--c-shadow);
  transition:transform var(--dur-ui) var(--ease-snap),color var(--dur-ui) ease}
.vp-hub__node:hover{color:var(--green-deep)}

.vp-social__grid{display:grid;grid-template-columns:240px 1fr 320px;gap:28px;align-items:start}
@media (max-width:1100px){.vp-social__grid{grid-template-columns:1fr 1fr;gap:24px}.vp-lab{grid-column:1/-1}}
@media (max-width:680px){.vp-social__grid{grid-template-columns:1fr}}

.vp-phone{justify-self:center;width:230px;border-radius:34px;padding:10px;background:linear-gradient(160deg,#1a1f1c,#0a0d0c);
  border:1px solid var(--paper-line);box-shadow:var(--c-shadow),0 0 40px -22px rgba(10,138,79,.5);position:relative}
.vp-phone__notch{position:absolute;top:18px;left:50%;transform:translateX(-50%);width:74px;height:6px;border-radius:6px;background:#000;z-index:4}
.vp-phone__screen{position:relative;border-radius:26px;overflow:hidden;aspect-ratio:9/18.5;background:#000}
.vp-scene--outdoor{background:linear-gradient(180deg,#2a3d2a,#1a2e1a 60%,#0a140a)}
.vp-scene--outdoor::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 30%,rgba(120,180,120,.3),transparent 60%),linear-gradient(transparent 40%,rgba(0,0,0,.7))}
.vp-phone__overlay{position:absolute;left:14px;right:14px;bottom:46px;z-index:3;color:#fff}
.vp-pill-sm{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.1em;color:rgba(255,255,255,.7)}
.vp-phone__overlay h4{font-family:var(--font-display);font-weight:700;font-size:18px;line-height:1;margin:8px 0 4px}
.vp-phone__overlay p{font-size:11px;color:rgba(255,255,255,.8);margin-bottom:12px}
.vp-adcta{display:inline-block;font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;font-weight:600;padding:8px 12px;border-radius:8px;background:var(--green);color:#04140C}
.vp-adcta--sm{font-size:8.5px;padding:6px 10px}
.vp-vtc{position:absolute;top:14px;right:14px;z-index:4;font-family:var(--font-mono);font-size:9px;color:#fff;background:rgba(0,0,0,.5);padding:3px 7px;border-radius:5px}

.vp-adtiles{display:flex;flex-direction:column;gap:16px}
.vp-adtile{padding:18px;border-radius:var(--r);background:var(--paper-panel);border:1px solid var(--paper-line);transition:transform var(--dur-ui) var(--ease-out),box-shadow var(--dur-ui) ease}
.vp-adtile:hover{transform:translateY(-3px);box-shadow:var(--c-shadow)}
.vp-adtile__tag{font-family:var(--font-mono);font-size:9px;letter-spacing:.12em;color:var(--green-deep)}
.vp-adtile strong{display:block;font-family:var(--font-display);font-weight:700;font-size:26px;margin:4px 0;color:var(--paper-ink)}
.vp-adtile p{font-size:14px;color:var(--paper-ink-2);margin-bottom:10px}
.vp-adtile cite{font-style:normal;font-size:14px;color:var(--paper-ink-3)}
.vp-adtile--ba{padding:0;overflow:hidden}
.vp-ba{display:flex;height:90px}
.vp-ba i,.vp-ba b{flex:1;display:grid;place-items:center;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;font-style:normal}
.vp-ba i{background:linear-gradient(135deg,#3a3128,#241d16);color:#caa}
.vp-ba b{background:linear-gradient(135deg,#1c3324,#0fb866);color:#fff}

.vp-lab{padding:24px;border-radius:var(--r);background:var(--paper-panel-2);border:1px solid var(--paper-line)}
.vp-lab__lbl{margin-bottom:14px;display:block}
.vp-lab__tabs{display:flex;gap:6px;padding:5px;border-radius:var(--r-pill);background:#fff;border:1px solid var(--paper-line);margin-bottom:18px}
.vp-tab{flex:1;padding:10px;border-radius:var(--r-pill);font-family:var(--font-mono);font-size:14px;letter-spacing:.05em;color:var(--paper-ink-3);transition:color var(--dur-micro) ease,background var(--dur-micro) ease}
.vp-tab.is-active{background:var(--green-deep);color:#fff}
.vp-lab__metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}
.vp-lab__metrics div{padding:12px;border-radius:var(--r-sm);background:#fff;border:1px solid var(--paper-line);text-align:center}
.vp-lab__k{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;color:var(--paper-ink-3);display:block}
.vp-lab__v{font-family:var(--font-display);font-weight:700;font-size:22px;color:var(--paper-ink);display:block;margin-top:4px}
.vp-lab__bars{display:flex;align-items:flex-end;gap:8px;height:90px;padding:12px;border-radius:var(--r-sm);background:#fff;border:1px solid var(--paper-line)}
.vp-lab__bars span{flex:1;height:var(--h);background:linear-gradient(180deg,var(--green),var(--green-deep));border-radius:4px 4px 0 0;transform-origin:bottom;transition:transform var(--dur-reveal) var(--ease-out)}
.js .vp-lab__bars span{transform:scaleY(0)}
.is-revealed .vp-lab__bars span{transform:scaleY(1)}
.vp-lab__bars span:nth-child(2){transition-delay:60ms}.vp-lab__bars span:nth-child(3){transition-delay:120ms}.vp-lab__bars span:nth-child(4){transition-delay:180ms}.vp-lab__bars span:nth-child(5){transition-delay:240ms}
.vp-lab__bars--b span{background:linear-gradient(180deg,#9bb0a5,#6a7972)}
.vp-lab__win{margin-top:14px;font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--green-deep)}
.vp-lab__win--muted{color:var(--paper-ink-3);font-weight:500}

.vp-perfjourney{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:64px;text-align:center}
.vp-perfjourney__rail{position:absolute;top:50%;left:0;width:100%;height:30px;transform:translateY(-50%);z-index:0}
.vp-pj{position:relative;z-index:1;font-family:var(--font-mono);font-size:14px;letter-spacing:.04em;padding:10px 8px;border-radius:var(--r-pill);background:#fff;border:1px solid var(--paper-line);color:var(--paper-ink-2)}
@media (max-width:760px){.vp-perfjourney{grid-template-columns:repeat(2,1fr);gap:12px}.vp-perfjourney__rail{display:none}}

/* =====================================================================
   06 · CONTENT UNIVERSE (Radial Engine — showpiece)
   ===================================================================== */
.vp-radial{position:relative;max-width:1000px;margin:0 auto;aspect-ratio:1000/620}
@media (max-width:860px){.vp-radial{aspect-ratio:auto;display:flex;flex-direction:column;gap:16px;max-width:520px}}
.vp-radial__spokes{position:absolute;inset:0;width:100%;height:100%;z-index:0}
@media (max-width:860px){.vp-radial__spokes{display:none}}
.vp-radial__core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;width:150px;height:150px;border-radius:50%;
  display:grid;place-items:center;text-align:center;gap:4px;color:var(--green);
  background:radial-gradient(circle,rgba(39,245,140,.16),rgba(8,12,10,.9));border:1px solid var(--void-line-green);box-shadow:0 0 60px -10px var(--green-glow),inset 0 0 30px rgba(39,245,140,.12)}
.vp-radial__core strong{font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.06em;color:#fff;line-height:1.1}
.vp-radial__pulse{position:absolute;inset:0;border-radius:50%;border:1px solid var(--green);opacity:0;animation:vpRipple 4s var(--ease-out) infinite}
@keyframes vpRipple{0%{transform:scale(1);opacity:.6}100%{transform:scale(1.7);opacity:0}}
@media (max-width:860px){.vp-radial__core{position:relative;top:0;left:0;transform:none;margin:0 auto}}
.vp-cluster{position:absolute;width:230px;padding:18px 20px;border-radius:var(--r);background:var(--void-panel);border:1px solid var(--void-line);z-index:1;
  transition:transform var(--dur-ui) var(--ease-out),border-color var(--dur-ui) ease,box-shadow var(--dur-ui) ease}
.vp-cluster:hover{border-color:var(--void-line-green);box-shadow:0 0 40px -18px var(--green-glow);transform:translateY(-4px)}
.vp-cluster--tl{top:6%;left:0}.vp-cluster--tr{top:6%;right:0}.vp-cluster--bl{bottom:6%;left:0}.vp-cluster--br{bottom:6%;right:0}
@media (max-width:860px){.vp-cluster{position:relative;width:100%;top:auto;left:auto;right:auto;bottom:auto}}
.vp-cluster h3{font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.03em;color:var(--green);margin-bottom:10px}
.vp-cluster ul li{font-size:14px;color:var(--void-ink-2);padding:5px 0 5px 16px;position:relative;border-bottom:1px solid rgba(255,255,255,.05)}
.vp-cluster ul li:last-child{border-bottom:0}
.vp-cluster ul li::before{content:"";position:absolute;left:0;top:13px;width:5px;height:5px;border-radius:50%;background:var(--green)}

.vp-distro{margin-top:48px;text-align:center}
.vp-distro .vp-label{display:block;margin-bottom:16px}
.vp-distro__icons{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.vp-distro__icons span{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-family:var(--font-mono);font-size:16px;
  background:var(--void-panel);border:1px solid var(--void-line);color:var(--void-ink-2);transition:color var(--dur-ui) ease,border-color var(--dur-ui) ease,transform var(--dur-ui) var(--ease-snap)}
.vp-distro__icons span:hover{color:var(--green);border-color:var(--void-line-green);transform:translateY(-3px)}

/* =====================================================================
   07 · SCRIPTWRITING FRAMEWORK
   ===================================================================== */
.vp-script__grid{display:grid;grid-template-columns:240px 1fr 220px;gap:28px;align-items:start}
@media (max-width:1100px){.vp-script__grid{grid-template-columns:1fr 1fr}.vp-direction{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}}
@media (max-width:720px){.vp-script__grid{grid-template-columns:1fr}}
.vp-beats{position:relative}
.vp-beats::before{content:"";position:absolute;left:17px;top:18px;bottom:18px;width:2px;background:linear-gradient(var(--green-deep-2),transparent)}
.vp-beat{display:flex;gap:14px;padding:11px 0;position:relative}
.vp-beat__no{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-mono);font-size:12px;font-weight:600;
  background:#fff;border:1.5px solid var(--green-deep-2);color:var(--green-deep);z-index:1}
.vp-beat h4{font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.02em;color:var(--paper-ink)}
.vp-beat p{font-size:14px;color:var(--paper-ink-2);line-height:1.4}

.vp-editor{border-radius:var(--r);overflow:hidden;border:1px solid var(--paper-line);background:#0c0f0e;box-shadow:var(--c-shadow)}
.vp-editor__bar{display:flex;align-items:center;gap:7px;padding:12px 16px;background:#141a18;border-bottom:1px solid var(--void-line)}
.vp-editor__bar span{width:10px;height:10px;border-radius:50%;background:#3a423e}
.vp-editor__bar span:first-child{background:#ff5f57}.vp-editor__bar span:nth-child(2){background:#febc2e}.vp-editor__bar span:nth-child(3){background:#28c840}
.vp-editor__bar em{margin-left:8px;font-family:var(--font-mono);font-style:normal;font-size:11px;color:var(--void-ink-3)}
.vp-editor__body{padding:18px 20px;display:flex;flex-direction:column;gap:12px;min-height:200px}
.vp-typed{font-family:var(--font-mono);font-size:12.5px;line-height:1.5;color:#dfeee7}
.vp-typed b{color:var(--green);margin-right:8px;font-weight:600}
.vp-editor__foot{display:flex;align-items:center;gap:14px;padding:14px 18px;border-top:1px solid var(--void-line);background:#0a0d0c}
.vp-editor__foot .vp-play{position:static;transform:none;width:38px;height:38px;animation:none}
.vp-editor__foot .vp-play:hover{transform:scale(1.06)}
.vp-wave{flex:1;display:flex;align-items:center;gap:3px;height:30px}
.vp-wave span{flex:1;background:var(--green);border-radius:2px;height:30%;opacity:.7;animation:vpWave 1.2s var(--ease-out) infinite alternate}
.vp-wave span:nth-child(odd){animation-duration:.9s}
.vp-wave span:nth-child(3n){animation-duration:1.5s}
.vp-wave span:nth-child(2){animation-delay:.1s}.vp-wave span:nth-child(4){animation-delay:.2s}.vp-wave span:nth-child(6){animation-delay:.15s}.vp-wave span:nth-child(8){animation-delay:.3s}.vp-wave span:nth-child(10){animation-delay:.25s}.vp-wave span:nth-child(12){animation-delay:.35s}.vp-wave span:nth-child(14){animation-delay:.2s}.vp-wave span:nth-child(16){animation-delay:.4s}
@keyframes vpWave{to{height:100%}}
.vp-editor__tc{font-family:var(--font-mono);font-size:11px;color:var(--void-ink-3)}

.vp-direction{display:flex;flex-direction:column;gap:12px}
.vp-dir{padding:14px 16px;border-radius:var(--r-sm);background:var(--paper-panel);border:1px solid var(--paper-line);flex:1;min-width:160px;transition:border-color var(--dur-ui) ease}
.vp-dir:hover{border-color:var(--paper-line-green)}
.vp-dir h4{font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.03em;color:var(--green-deep);margin-bottom:5px}
.vp-dir p{font-size:14px;color:var(--paper-ink-2);line-height:1.4}

.vp-psych{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin-top:56px}
.vp-psych span{font-family:var(--font-mono);font-size:14px;letter-spacing:.05em;padding:8px 16px;border-radius:var(--r-pill);background:var(--paper-panel);border:1px solid var(--paper-line);color:var(--paper-ink-2)}
.vp-psych i{width:22px;height:1.5px;background:var(--green-deep-2)}
@media (max-width:600px){.vp-psych i{display:none}}

/* =====================================================================
   08 · CONTENT BANK
   ===================================================================== */
.vp-bank__grid{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:24px;align-items:stretch}
@media (max-width:980px){.vp-bank__grid{grid-template-columns:1fr}}
.vp-versus{padding:26px;border-radius:var(--r);position:relative}
.vp-versus--bad{background:linear-gradient(180deg,#1a0e0e,#0c0f0e);border:1px solid rgba(255,90,90,.25);color:var(--void-ink-2)}
.vp-versus--good{background:linear-gradient(180deg,rgba(10,138,79,.1),var(--paper-panel));border:1px solid var(--paper-line-green)}
.vp-versus h4{font-family:var(--font-display);font-weight:700;font-size:16px;letter-spacing:.03em;margin-bottom:16px}
.vp-versus--bad h4{color:#ff8a8a}.vp-versus--good h4{color:var(--green-deep)}
.vp-versus ul li{font-size:14px;padding:8px 0 8px 24px;position:relative;border-bottom:1px solid var(--c-line,rgba(255,255,255,.06))}
.vp-versus--bad ul li{border-bottom-color:rgba(255,255,255,.06)}
.vp-versus--good ul li{color:var(--paper-ink-2);border-bottom-color:var(--paper-line)}
.vp-versus ul li:last-child{border-bottom:0}
.vp-versus--bad ul li::before{content:"✕";position:absolute;left:0;color:#ff6b6b;font-size:11px}
.vp-versus--good ul li::before{content:"✓";position:absolute;left:0;color:var(--green-deep);font-size:11px}
.vp-versus__x,.vp-versus__check{position:absolute;top:22px;right:24px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:13px}
.vp-versus__x{background:rgba(255,90,90,.15);color:#ff6b6b}
.vp-versus__check{background:rgba(10,138,79,.15);color:var(--green-deep)}
.vp-versus__tag{margin-top:16px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;color:#ff8a8a}
.vp-versus__tag--good{color:var(--green-deep)}

.vp-bankcore{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:24px;border-radius:var(--r);
  background:radial-gradient(ellipse at center,rgba(10,138,79,.08),var(--paper-panel-2));border:1px solid var(--paper-line)}
.vp-bankcore__plane{position:relative;width:230px;height:200px;transform-style:preserve-3d;transform:perspective(700px) rotateX(46deg) rotateZ(38deg);display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:8px}
.vp-bankcore__tile{border-radius:6px;background:linear-gradient(135deg,#0fb866,#0a8a4f);box-shadow:0 6px 14px -6px rgba(10,138,79,.6);
  animation:vpTileRise 3s var(--ease-out) infinite alternate;animation-delay:calc(var(--i) * .18s);opacity:.92}
@keyframes vpTileRise{to{transform:translateZ(22px)}}
.vp-bankcore__badge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotateZ(-38deg) rotateX(-46deg);z-index:5;
  display:flex;flex-direction:column;align-items:center;gap:4px;font-family:var(--font-display);font-weight:700;font-size:11px;letter-spacing:.04em;color:#fff;
  background:rgba(8,12,10,.85);padding:10px 14px;border-radius:10px;border:1px solid var(--green);box-shadow:0 0 30px -8px var(--green-glow);text-align:center;width:120px}
.vp-bankcore__badge svg{color:var(--green)}
.vp-bankstats{display:flex;gap:24px}
.vp-bankstats div{text-align:center}
.vp-bankstats .vp-num{font-family:var(--font-display);font-weight:700;font-size:clamp(22px,3vw,30px);color:var(--paper-ink);display:block;font-variant-numeric:tabular-nums}
.vp-bankstats em{font-family:var(--font-mono);font-style:normal;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--paper-ink-3)}

.vp-chips{margin-top:48px;text-align:center}
.vp-chips .vp-label{display:block;margin-bottom:16px}
.vp-chips__row{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:900px;margin:0 auto}
.vp-chips__row span{font-family:var(--font-mono);font-size:14px;letter-spacing:.02em;padding:8px 14px;border-radius:var(--r-pill);
  background:var(--paper-panel);border:1px solid var(--paper-line);color:var(--paper-ink-2);transition:color var(--dur-micro) ease,border-color var(--dur-micro) ease}
.vp-chips__row span:hover{border-color:var(--green-deep);color:var(--green-deep)}

/* =====================================================================
   09 · TWO CONTENT PATHS
   ===================================================================== */
.vp-paths__grid{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center}
@media (max-width:900px){.vp-paths__grid{grid-template-columns:1fr}}
.vp-or{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:16px;
  background:var(--green);color:#04140C;box-shadow:0 0 30px -6px var(--green-glow);margin:0 auto}
.vp-path{padding:28px;border-radius:var(--r-lg);border:1px solid var(--void-line)}
.vp-path--ai{background:linear-gradient(180deg,#0e1412,#080a09)}
.vp-path--shoot{background:linear-gradient(180deg,#101816,#0a0d0c);border-color:var(--void-line-green)}
.vp-path header{margin-bottom:20px}
.vp-path__no{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--green)}
.vp-path h3{font-family:var(--font-display);font-weight:700;font-size:clamp(18px,2.4vw,24px);letter-spacing:.01em;margin:8px 0;color:#fff}
.vp-path__tags{display:flex;gap:8px}
.vp-path__tags span{font-family:var(--font-mono);font-size:14px;letter-spacing:.03em;color:var(--green);padding:4px 11px;border-radius:var(--r-pill);background:rgba(39,245,140,.1)}
.vp-path__chain{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}
.vp-path__chain li{position:relative;padding:10px 14px 10px 34px;border-radius:var(--r-sm);background:var(--void-panel);border:1px solid var(--void-line);font-size:14px;color:var(--void-ink-2);counter-increment:step}
.vp-path__chain li::before{content:counter(step);position:absolute;left:12px;top:50%;transform:translateY(-50%);font-family:var(--font-mono);font-size:10px;color:var(--green)}
.vp-path__chain{counter-reset:step}
.vp-path__chain li.is-end{background:var(--green-deep);color:#fff;border-color:transparent;font-weight:600}
.vp-path__chain li.is-end::before{color:#fff}
.vp-path__bens{display:flex;flex-wrap:wrap;gap:8px}
.vp-path__bens span{font-family:var(--font-mono);font-size:14px;letter-spacing:.03em;padding:7px 12px;border-radius:var(--r-pill);background:rgba(255,255,255,.04);border:1px solid var(--void-line);color:var(--void-ink-3)}
.vp-paths__foot{text-align:center;margin-top:48px;font-family:var(--font-display);font-weight:700;text-transform:uppercase;font-size:clamp(16px,2.2vw,24px);letter-spacing:.002em;color:#fff}

/* =====================================================================
   10 · SUPPLY CHAIN
   ===================================================================== */
.vp-supply__flow{display:grid;grid-template-columns:1fr auto 1.2fr auto 1.2fr;gap:18px;align-items:center}
@media (max-width:1000px){.vp-supply__flow{grid-template-columns:1fr;gap:24px}.vp-supply__arrow{display:none}}
.vp-supply__arrow{width:40px;height:2px;background:var(--green-deep-2);position:relative}
.vp-supply__arrow::after{content:"";position:absolute;right:0;top:-3px;width:8px;height:8px;border-top:2px solid var(--green-deep-2);border-right:2px solid var(--green-deep-2);transform:rotate(45deg)}
.vp-supnode__dots{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.vp-supnode__dots span{font-family:var(--font-mono);font-size:14px;padding:7px 12px;border-radius:var(--r-pill);background:var(--paper-panel);border:1px solid var(--paper-line);color:var(--paper-ink-2)}
.vp-supcore{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 22px;border-radius:var(--r-lg);
  background:radial-gradient(ellipse at center,rgba(10,138,79,.1),var(--paper-panel-2));border:1px solid var(--paper-line-green);position:relative;color:var(--green-deep)}
.vp-supcore__ring{position:absolute;inset:10px;border-radius:var(--r-lg);border:1px dashed var(--paper-line-green);animation:vpSpin 40s linear infinite}
.vp-supcore strong{font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.02em;color:var(--paper-ink)}
.vp-supcore__num{font-family:var(--font-display);font-weight:700;font-size:clamp(28px,3.6vw,40px);color:var(--green-deep);font-variant-numeric:tabular-nums}
.vp-supcore em{font-style:normal;font-size:11px;color:var(--paper-ink-3);max-width:200px}
.vp-suptransform ol{display:flex;flex-direction:column;gap:6px;margin-top:14px;counter-reset:t}
.vp-suptransform ol li{position:relative;padding:9px 12px 9px 30px;border-radius:var(--r-sm);background:var(--paper-panel);border:1px solid var(--paper-line);font-size:14px;color:var(--paper-ink-2);counter-increment:t}
.vp-suptransform ol li::before{content:counter(t);position:absolute;left:11px;top:50%;transform:translateY(-50%);font-family:var(--font-mono);font-size:10px;color:var(--green-deep)}
.vp-suptransform ol li.is-end{background:var(--green-deep);color:#fff;border-color:transparent;font-weight:600}
.vp-suptransform ol li.is-end::before{color:#fff}

.vp-supply__vs{margin-top:56px;display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;padding:28px;border-radius:var(--r-lg);background:var(--paper-panel);border:1px solid var(--paper-line)}
@media (max-width:760px){.vp-supply__vs{grid-template-columns:1fr;text-align:center}}
.vp-svs p{font-size:14px;color:var(--paper-ink-2);margin-top:10px;line-height:1.5}
.vp-svs--gc p{color:var(--paper-ink)}
.vp-svs__vs{font-family:var(--font-display);font-weight:700;font-size:20px;color:var(--green-deep)}
.vp-svs__out{grid-column:1/-1;text-align:center;margin-top:8px;font-family:var(--font-display);font-weight:700;text-transform:uppercase;font-size:clamp(16px,2.2vw,24px);color:var(--paper-ink)}

/* =====================================================================
   11 · FULL PRODUCTION EXPERIENCE
   ===================================================================== */
.vp-fullsys__bg{position:absolute;inset:0;z-index:0;opacity:.4}
.vp-fullsys__bg .vp-scene--location{background:linear-gradient(180deg,#1a2418,#0c1410 60%,#050505)}
.vp-fullsys__bg::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 70% at 50% 30%,rgba(39,245,140,.06),transparent 60%),linear-gradient(180deg,rgba(5,5,5,.6),var(--void) 70%)}
.vp-steps8{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media (max-width:1000px){.vp-steps8{grid-template-columns:repeat(2,1fr)}}
@media (max-width:540px){.vp-steps8{grid-template-columns:1fr}}
.vp-s8{padding:20px;border-radius:var(--r);background:rgba(12,15,14,.7);backdrop-filter:blur(8px);border:1px solid var(--void-line);transition:border-color var(--dur-ui) ease,transform var(--dur-ui) var(--ease-out)}
.vp-s8:hover{border-color:var(--void-line-green);transform:translateY(-4px)}
.vp-s8__no{font-family:var(--font-mono);font-size:13px;color:var(--green);letter-spacing:.1em}
.vp-s8 h4{font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.02em;margin:8px 0 12px;color:#fff}
.vp-s8 ul li{font-size:14px;color:var(--void-ink-2);padding:4px 0 4px 14px;position:relative}
.vp-s8 ul li::before{content:"";position:absolute;left:0;top:11px;width:4px;height:4px;border-radius:50%;background:var(--green)}
.vp-fullsys__pay{margin-top:48px;display:flex;flex-wrap:wrap;align-items:center;gap:20px 28px;padding:28px;border-radius:var(--r-lg);background:rgba(12,15,14,.6);border:1px solid var(--void-line-green)}
.vp-num--mega{font-family:var(--font-display);font-weight:700;font-size:clamp(48px,7vw,84px);line-height:1;color:var(--green);font-variant-numeric:tabular-nums;filter:drop-shadow(0 0 20px var(--green-glow))}
.vp-fullsys__pay > div:nth-child(2){display:flex;flex-direction:column}
.vp-fullsys__pay strong{font-family:var(--font-display);font-weight:700;font-size:16px;letter-spacing:.02em;color:#fff}
.vp-fullsys__pay > div:nth-child(2) span{font-size:13px;color:var(--void-ink-3)}
.vp-fullsys__tags{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}
.vp-fullsys__tags span{font-family:var(--font-mono);font-size:14px;letter-spacing:.02em;padding:7px 12px;border-radius:var(--r-pill);background:rgba(255,255,255,.04);border:1px solid var(--void-line);color:var(--void-ink-2)}

/* =====================================================================
   12 · CONTENT MULTIPLICATION ENGINE
   ===================================================================== */
.vp-multi__flow{display:grid;grid-template-columns:0.9fr auto 1.1fr auto 1.4fr;gap:16px;align-items:center}
@media (max-width:1050px){.vp-multi__flow{grid-template-columns:1fr;gap:24px}.vp-multi__arrow{display:none}}
.vp-multi__arrow{width:36px;height:2px;background:var(--green-deep-2);position:relative}
.vp-multi__arrow::after{content:"";position:absolute;right:0;top:-3px;width:8px;height:8px;border-top:2px solid var(--green-deep-2);border-right:2px solid var(--green-deep-2);transform:rotate(45deg)}
.vp-rawstack ul{margin-top:14px;display:flex;flex-direction:column;gap:7px}
.vp-rawstack ul li{font-size:14px;padding:9px 12px;border-radius:var(--r-sm);background:var(--paper-panel);border:1px solid var(--paper-line);color:var(--paper-ink-2)}
.vp-mengine{position:relative;text-align:center;padding:32px 22px;border-radius:50%;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  background:radial-gradient(circle,rgba(10,138,79,.12),var(--paper-panel-2));border:1px solid var(--paper-line-green);max-width:280px;margin:0 auto}
.vp-mengine__ring{position:absolute;inset:14px;border-radius:50%;border:1px dashed var(--paper-line-green);animation:vpSpin 24s linear infinite}
.vp-mengine__ring--2{inset:30px;border-style:dotted;animation-duration:18s;animation-direction:reverse}
.vp-mengine strong{font-family:var(--font-display);font-weight:700;font-size:12px;letter-spacing:.04em;color:var(--paper-ink);max-width:150px}
.vp-mengine__steps{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;max-width:190px}
.vp-mengine__steps li{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.04em;padding:3px 7px;border-radius:var(--r-pill);background:#fff;border:1px solid var(--paper-line);color:var(--paper-ink-3)}
.vp-mengine__out{font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.06em;color:#fff;background:var(--green-deep);padding:6px 14px;border-radius:var(--r-pill)}
.vp-ecosys__grid{margin-top:14px;display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.vp-ecosys__grid span{font-family:var(--font-mono);font-size:10px;text-align:center;padding:9px 6px;border-radius:var(--r-sm);background:var(--paper-panel);border:1px solid var(--paper-line);color:var(--paper-ink-2);
  transition:opacity .4s var(--ease-out),transform .4s var(--ease-out);transition-delay:calc(var(--i) * 40ms)}
.js .vp-ecosys__grid span{opacity:0;transform:scale(.9)}
.is-revealed .vp-ecosys__grid span{opacity:1;transform:none}
.vp-ecosys__grid span:last-child{color:var(--green-deep);border-color:var(--paper-line-green)}
.vp-multi__contrast{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:56px}
.vp-pillstat{font-family:var(--font-mono);font-size:13px;letter-spacing:.04em;padding:14px 24px;border-radius:var(--r-pill);font-weight:500}
.vp-pillstat--mute{background:var(--paper-panel);border:1px solid var(--paper-line);color:var(--paper-ink-3)}
.vp-pillstat--win{background:var(--green-deep);color:#fff;box-shadow:0 12px 30px -14px rgba(10,138,79,.5);font-weight:600}

/* =====================================================================
   13 · REVENUE ENGINE
   ===================================================================== */
.vp-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:clamp(48px,6vw,72px)}
@media (max-width:900px){.vp-kpis{grid-template-columns:repeat(2,1fr)}}
.vp-kpi{padding:20px;border-radius:var(--r);background:var(--void-panel);border:1px solid var(--void-line);transition:border-color var(--dur-ui) ease,transform var(--dur-ui) var(--ease-out)}
.vp-kpi:hover{border-color:var(--void-line-green);transform:translateY(-3px)}
.vp-kpi__num{font-family:var(--font-display);font-weight:700;font-size:clamp(24px,3vw,34px);line-height:1;color:#fff;font-variant-numeric:tabular-nums;display:block}
.vp-kpi__lbl{font-family:var(--font-mono);font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--void-ink-3);display:block;margin-top:8px}
.vp-kpi__d{font-family:var(--font-mono);font-size:14px;font-weight:600;color:var(--green);margin-top:6px;display:inline-block}
.vp-kpi__d--down{color:var(--green-bright)}

.vp-revflow{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.vp-revflow__rail{position:absolute;top:24px;left:0;width:100%;height:30px;z-index:0}
.vp-rstage{position:relative;z-index:1;padding-top:14px}
.vp-rstage span{font-family:var(--font-mono);font-size:11px;color:var(--green);letter-spacing:.1em}
.vp-rstage h4{font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.02em;margin:8px 0 6px;color:#fff}
.vp-rstage p{font-size:14px;line-height:1.4;color:var(--void-ink-2)}
@media (max-width:900px){.vp-revflow{grid-template-columns:repeat(2,1fr);gap:24px}.vp-revflow__rail{display:none}}
@media (max-width:480px){.vp-revflow{grid-template-columns:1fr}}

.vp-statement{text-align:center;margin:clamp(56px,7vw,88px) auto 0;max-width:1000px;font-family:var(--font-display);font-weight:700;
  text-transform:uppercase;font-size:clamp(26px,4.4vw,52px);line-height:1.05;letter-spacing:.002em;color:#fff}
.vp-statement__mute{color:var(--void-ink-3)}
.vp-statement__big{font-size:1.08em}
.vp-valrail{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:56px}
.vp-valrail span{font-family:var(--font-mono);font-size:14px;letter-spacing:.05em;padding:9px 16px;border-radius:var(--r-pill);background:var(--void-panel);border:1px solid var(--void-line);color:var(--void-ink-2)}

/* =====================================================================
   14 · FINAL CTA
   ===================================================================== */
.vp-final{text-align:center;overflow:visible}
.vp-final__bg{position:absolute;inset:0;z-index:0;overflow:hidden}

/* Revenue Engine · real client dashboard proof strip (authentic report-recording frames) */
.s15-proof{margin:clamp(44px,5.5vw,68px) auto 0;max-width:1120px}
.s15-proof__lbl{display:block;text-align:center;margin-bottom:22px}
.s15-proof__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.s15-dash{position:relative;margin:0;border-radius:14px;overflow:hidden;background:#0a1410;
  border:1px solid var(--void-line-green);box-shadow:0 24px 50px -28px rgba(0,0,0,.72)}
.s15-dash img{display:block;width:100%;height:198px;object-fit:cover;object-position:top center}
.s15-dash figcaption{display:flex;flex-direction:column;gap:3px;padding:12px 15px;border-top:1px solid var(--void-line)}
.s15-dash figcaption b{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.05em;color:var(--green)}
.s15-dash figcaption span{font-size:12.5px;line-height:1.4;color:var(--void-ink-3)}
@media (max-width:880px){.s15-proof__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.s15-proof__grid{grid-template-columns:1fr}}
.vp-final__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.3}
.vp-final__vscrim{position:absolute;inset:0;background:
  radial-gradient(120% 82% at 50% 32%, rgba(5,8,6,.5) 0%, rgba(5,8,6,.84) 58%, rgba(5,8,6,.95) 100%)}
@media (prefers-reduced-motion:reduce){.vp-final__video{opacity:.18}}
.vp-final__head{max-width:920px;margin:0 auto}
.vp-final .vp-eyebrow{justify-content:center}
.vp-final .vp-lead{margin:24px auto 0}
.vp-final .vp-hero__cta{justify-content:center;margin-top:34px}
.vp-final__trust{margin-top:24px;font-family:var(--font-mono);font-size:14px;letter-spacing:.04em;color:var(--void-ink-3)}
.vp-final__trust .vp-stars{font-size:12px}
.vp-final__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:900px;margin:clamp(56px,7vw,84px) auto 0;padding-top:40px;border-top:1px solid var(--void-line)}
.vp-final__stats .vp-stat{align-items:center;text-align:center}
@media (max-width:640px){.vp-final__stats{grid-template-columns:repeat(2,1fr);gap:28px 16px}}

.vp-foot{margin-top:clamp(72px,9vw,120px);padding:40px 0 0;border-top:1px solid var(--void-line)}
.vp-foot__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding-bottom:40px}
.vp-foot p{font-size:14px;color:var(--void-ink-3);font-family:var(--font-mono);letter-spacing:.02em}

/* =====================================================================
   REAL IMAGERY (cut from the mockups) — cover photos + transparent cutouts
   Images sit ON TOP of the existing CSS visuals; if one fails to load it is
   hidden (onerror) and the CSS placeholder underneath remains. Graceful.
   ===================================================================== */
.vp-shot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.vp-shot--top{object-position:center top}
.vp-cut{display:block;width:100%;height:auto;object-fit:contain;pointer-events:none}
.vp-cinema .vp-cut{filter:drop-shadow(0 16px 34px rgba(0,0,0,.55))}
.vp-system .vp-cut{filter:drop-shadow(0 16px 30px rgba(5,5,5,.16))}

/* journey + pipeline cutouts replace the CSS icon boxes */
.vp-jstep__shot{display:block;width:100%;max-width:128px;height:104px;object-fit:contain;margin-bottom:14px}
.vp-system .vp-jstep__shot{filter:drop-shadow(0 14px 26px rgba(5,5,5,.14))}
.vp-pstep__screen .vp-cut{position:absolute;inset:6%;width:88%;height:88%;margin:auto}

/* film/strip/phone/path photo frames: image covers, CSS scene is fallback bg */
.vp-filmcard__media .vp-shot,.vp-phone__screen .vp-shot,.vp-reel__scene .vp-shot,
.vp-fullsys__bg .vp-shot,.vp-pathmedia .vp-shot,.vp-adtile__shot{border-radius:inherit}
.vp-strip__item .vp-shot{z-index:0}

/* path media + bank features + final showcase (new structures) */
.vp-pathmedia{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:16/9;margin:0 0 20px;border:1px solid var(--void-line)}
.vp-pathmedia .vp-cutbadge{position:absolute;top:12px;right:12px;width:54px;height:auto;z-index:2}
.vp-bankfeat{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}
@media (max-width:680px){.vp-bankfeat{grid-template-columns:1fr}}
.vp-bankfeat figure{position:relative;margin:0;border-radius:var(--r-sm);overflow:hidden;aspect-ratio:16/10;border:1px solid var(--void-line)}
.vp-bankfeat figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:18px 12px 10px;font-family:var(--font-mono);font-size:14px;letter-spacing:.04em;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.8))}
.vp-showcase{display:grid;grid-template-columns:1.6fr 1fr 1fr;grid-template-rows:auto auto;gap:16px;margin:clamp(40px,5vw,64px) 0}
.vp-showcase figure{position:relative;margin:0;border-radius:var(--r);overflow:hidden;border:1px solid var(--void-line);min-height:180px}
.vp-showcase figure:first-child{grid-row:1/3;grid-column:1}
.vp-showcase figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:24px 18px 14px;background:linear-gradient(transparent,rgba(0,0,0,.82))}
.vp-showcase figcaption strong{display:block;font-family:var(--font-display);font-weight:700;font-size:18px;text-transform:uppercase;letter-spacing:.01em;color:#fff}
.vp-showcase figcaption span{font-family:var(--font-mono);font-size:14px;letter-spacing:.06em;color:var(--green)}
.vp-showcase .vp-play{width:54px;height:54px}
@media (max-width:760px){.vp-showcase{grid-template-columns:1fr 1fr}.vp-showcase figure:first-child{grid-row:auto;grid-column:1/-1}}

/* phone: real ad image carries its own copy, so hide the CSS fallback overlay */
.vp-phone__overlay[data-fallback]{display:none}
.vp-phone__screen.no-img .vp-shot{display:none}
.vp-phone__screen.no-img .vp-phone__overlay[data-fallback]{display:block}

/* social ad tiles with photo backgrounds */
.vp-adtile__shot{display:block;width:48px;height:48px;border-radius:50%;object-fit:cover;margin-bottom:10px;border:2px solid var(--green-deep-2)}
.vp-adtile--photo{position:relative;overflow:hidden;color:#fff;min-height:150px;display:flex;flex-direction:column;justify-content:flex-end;border:0}
.vp-adtile--photo .vp-shot{z-index:0}
.vp-adtile--photo::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(transparent 28%,rgba(0,0,0,.84))}
.vp-adtile--photo > *{position:relative;z-index:2}
.vp-adtile--photo strong{color:#fff}
.vp-adtile--photo p{color:rgba(255,255,255,.82)}

/* hero testimonial avatar */
.vp-floatcard cite{flex-direction:row;align-items:center;gap:10px}
.vp-floatcard__avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:none;border:1px solid var(--void-line-green)}
.vp-floatcard__who{display:flex;flex-direction:column;gap:2px}

/* revenue live-dashboard panel */
.vp-revboard{margin:0 auto clamp(40px,5vw,64px);max-width:560px;border-radius:var(--r);overflow:hidden;border:1px solid var(--void-line-green);box-shadow:0 0 50px -24px var(--green-glow)}
.vp-revboard img{display:block;width:100%}
.vp-revboard figcaption{padding:12px 18px;font-family:var(--font-mono);font-size:14px;letter-spacing:.05em;color:var(--void-ink-3);background:var(--void-panel);text-align:center}

/* content bank core image (dark cutout framed on the white section) */
.vp-bankcore__img{display:grid;place-items:center;width:100%;max-width:300px;padding:14px;border-radius:var(--r);
  background:radial-gradient(ellipse at center,#0a1a12,#050a07);border:1px solid var(--paper-line-green);box-shadow:0 0 40px -18px var(--green-glow)}
.vp-bankcore__img .vp-cut{width:100%;filter:none}

/* multiplication engine image (replaces the CSS circle) */
.vp-mengine.has-img{aspect-ratio:auto;border-radius:var(--r);background:none;border:0;max-width:380px;padding:0;gap:14px}
.vp-mengine.has-img .vp-mengine__ring{display:none}
.vp-mengine__img{position:relative;z-index:2;width:100%;filter:drop-shadow(0 18px 40px rgba(5,5,5,.16))}
/* supply hub image */
.vp-supcore__img{width:100%;max-width:360px;margin-bottom:6px}
/* full-system step thumbnails */
.vp-s8__thumb{display:block;width:100%;height:94px;object-fit:cover;border-radius:10px;margin-bottom:14px}

/* scriptwriting preview + mood strip */
.vp-editor__preview{position:relative;aspect-ratio:16/9;border-radius:8px;overflow:hidden;margin-bottom:12px;border:1px solid var(--void-line)}
.vp-editor__preview .vp-play{width:46px;height:46px}
.vp-dir__shot{display:block;width:100%;height:62px;object-fit:cover;border-radius:8px;margin-bottom:10px}

/* engine device cutouts replace the gradient screens */
.vp-pstep__screen{display:flex;align-items:center;justify-content:center}
.vp-pstep__screen.has-img{background:none;border:0;box-shadow:none}
.vp-pstep__screen.has-img::before,.vp-pstep__screen.has-img::after{display:none}

/* core cutouts (universe / bank / supply / multi) overlay */
.vp-corewrap{position:relative}
.vp-corewrap .vp-cut{position:relative;z-index:2}
.vp-radial__core.has-img{background:none;border:0;box-shadow:none;overflow:visible}
.vp-radial__coreimg{position:relative;z-index:2;width:188px;max-width:none;height:auto;filter:drop-shadow(0 0 26px var(--green-glow))}
@media (max-width:860px){.vp-radial__coreimg{width:150px}}

/* =====================================================================
   SECTION 6 · SOCIAL MEDIA VIDEO ADS — premium rebuild
   ===================================================================== */
.s6 .vp-eyebrow{margin-bottom:26px}
.s6-grid{display:grid;grid-template-columns:.82fr 1.5fr .98fr;gap:clamp(20px,2.4vw,40px);align-items:start}
@media (max-width:1180px){.s6-grid{grid-template-columns:1fr 1.2fr}.s6-right{grid-column:1/-1}}
@media (max-width:860px){.s6-grid{grid-template-columns:1fr}}
.s6-title{font-size:clamp(40px,5.6vw,78px);line-height:1.03;margin-bottom:18px}
.s6-note{font-size:14px;color:var(--paper-ink-3);max-width:330px;margin-top:16px;padding-top:16px;border-top:1px solid var(--paper-line)}

/* platform ecosystem */
.s6-eco{margin-top:36px}
.s6-eco__lbl{color:var(--green-deep);display:block;margin-bottom:14px}
.s6-hub{position:relative;width:min(100%,300px);aspect-ratio:1}
.s6-hub__lines{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.s6-hub__lines line{stroke:var(--paper-line-green);stroke-width:1.5;stroke-dasharray:4 5}
.s6-hub__line line{animation:s6flow 3s linear infinite}
@keyframes s6flow{to{stroke-dashoffset:-18}}
.s6-hub__core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--green-deep);box-shadow:0 12px 30px -8px rgba(10,138,79,.45),0 0 0 1px var(--paper-line)}
.s6-node{position:absolute;transform:translate(-50%,-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:7px}
.s6-node__ic{width:46px;height:46px;border-radius:50%;background:#fff;box-shadow:0 7px 18px -6px rgba(5,5,5,.22),0 0 0 1px var(--paper-line);position:relative;transition:transform var(--dur-ui) var(--ease-snap),box-shadow var(--dur-ui) ease}
.s6-node__ic::before{content:"";position:absolute;inset:0;margin:auto;width:22px;height:22px;background:var(--paper-ink);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.s6-node em{font-family:var(--font-mono);font-style:normal;font-size:12px;letter-spacing:.01em;color:var(--paper-ink-3);white-space:nowrap}
.s6-node__ic{animation:s6pulse 3.4s ease-in-out infinite}
.s6-node:nth-child(3) .s6-node__ic{animation-delay:.4s}.s6-node:nth-child(4) .s6-node__ic{animation-delay:.8s}.s6-node:nth-child(5) .s6-node__ic{animation-delay:1.2s}.s6-node:nth-child(6) .s6-node__ic{animation-delay:1.6s}.s6-node:nth-child(7) .s6-node__ic{animation-delay:2s}
@keyframes s6pulse{0%,100%{box-shadow:0 7px 18px -6px rgba(5,5,5,.22),0 0 0 1px var(--paper-line)}50%{box-shadow:0 7px 22px -6px rgba(10,138,79,.4),0 0 0 1px var(--paper-line-green)}}
@media (hover:hover){.s6-node:hover .s6-node__ic{transform:scale(1.1)}}

/* brand-icon masks (reused by ecosystem nodes + ad headers) */
.s6 [data-brand="fb"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13.5 21v-7h2.3l.35-2.7H13.5V9.5c0-.78.22-1.3 1.33-1.3h1.42V5.8c-.25-.03-1.1-.1-2.08-.1-2.06 0-3.47 1.26-3.47 3.57V11.3H8.4V14h2.3v7z'/%3E%3C/svg%3E")}
.s6 [data-brand="ig"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M16.5 3h-9A4.5 4.5 0 003 7.5v9A4.5 4.5 0 007.5 21h9a4.5 4.5 0 004.5-4.5v-9A4.5 4.5 0 0016.5 3zm2.7 13.5a2.7 2.7 0 01-2.7 2.7h-9a2.7 2.7 0 01-2.7-2.7v-9a2.7 2.7 0 012.7-2.7h9a2.7 2.7 0 012.7 2.7zM12 7.6a4.4 4.4 0 100 8.8 4.4 4.4 0 000-8.8zm0 7.2a2.8 2.8 0 110-5.6 2.8 2.8 0 010 5.6zm4.6-7.5a1 1 0 11-2 0 1 1 0 012 0z'/%3E%3C/svg%3E")}
.s6 [data-brand="tt"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M16.5 3c.3 2.1 1.7 3.7 3.8 3.9v2.4c-1.4 0-2.7-.45-3.8-1.2v6.3a5.2 5.2 0 11-5.2-5.2c.3 0 .6.02.9.07v2.5a2.7 2.7 0 102 2.6V3z'/%3E%3C/svg%3E")}
.s6 [data-brand="yt"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23 8.3a3 3 0 00-2.1-2.1C19 5.7 12 5.7 12 5.7s-7 0-8.9.5A3 3 0 001 8.3 31 31 0 00.7 12 31 31 0 001 15.7a3 3 0 002.1 2.1c1.9.5 8.9.5 8.9.5s7 0 8.9-.5a3 3 0 002.1-2.1c.3-1.2.3-3.7.3-3.7s0-2.5-.3-3.7zM9.8 15.3V8.7l5.7 3.3z'/%3E%3C/svg%3E")}
.s6 [data-brand="sh"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14.9 3.5 7.4 7.8a4.6 4.6 0 00-1.7 6.3l.2.3-1.4.8a4.6 4.6 0 004.6 8l7.5-4.3a4.6 4.6 0 001.7-6.3l-.2-.3 1.4-.8a4.6 4.6 0 00-4.6-8zM10 15V9l5.2 3z'/%3E%3C/svg%3E")}
.s6 [data-brand="gg"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.6 12.2c0-.64-.06-1.25-.16-1.84H12v3.49h5.38a4.6 4.6 0 01-2 3.02v2.5h3.23c1.89-1.74 2.99-4.3 2.99-7.17zM12 22c2.7 0 4.96-.9 6.61-2.42l-3.23-2.5c-.9.6-2.04.96-3.38.96-2.6 0-4.8-1.76-5.59-4.12H3.07v2.59A10 10 0 0012 22zM6.41 13.92a6 6 0 010-3.84V7.49H3.07a10 10 0 000 9.02zM12 6.02c1.47 0 2.79.5 3.83 1.5l2.86-2.86A10 10 0 003.07 7.49l3.34 2.59C7.2 7.78 9.4 6.02 12 6.02z'/%3E%3C/svg%3E")}

/* center: phone ad system */
.s6-center{min-width:0}
.s6-phones{position:relative;display:flex;align-items:center;justify-content:center}
.s6-phone{flex:none}
.s6-phone--hero{width:min(58%,290px);z-index:3}
.s6-phone--side{width:min(27%,142px);z-index:2}
.s6-phone--side:first-child{margin-right:-22px;transform:translateY(22px) rotate(-3deg)}
.s6-phone--side:last-child{margin-left:-22px;transform:translateY(22px) rotate(3deg)}
.s6-phone__scr{position:relative;border-radius:26px;overflow:hidden;aspect-ratio:9/19.2;background:#0a0d0c;border:5px solid #14171180;box-shadow:0 30px 60px -26px rgba(5,5,5,.4)}
.s6-phone--hero .s6-phone__scr{border-radius:30px;border:7px solid #161a13;box-shadow:0 44px 80px -30px rgba(5,5,5,.5),0 0 70px -34px var(--green-glow)}
.s6-phone__scr img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.s6-phone--side .s6-phone__scr::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(0,0,0,.72))}
.s6-phone__tag{position:absolute;top:11px;left:11px;right:11px;z-index:3;display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.05em;color:#fff;text-shadow:0 1px 3px #000}
.s6-phone__tag b{margin-left:auto;font-weight:500}
.s6-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 6px var(--green)}
.s6-phone__cap{position:absolute;left:12px;right:12px;bottom:14px;z-index:3;color:#fff}
.s6-phone__cap strong{font-family:var(--font-display);font-weight:700;font-size:15px;line-height:1.04;text-transform:uppercase;display:block}
.s6-chip{display:inline-block;margin-top:8px;font-family:var(--font-mono);font-size:9px;letter-spacing:.04em;background:var(--green);color:#04140C;padding:4px 7px;border-radius:4px}
.s6-swipe{display:inline-block;margin-top:8px;font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;color:#fff}
.s6-hero-fallback,.s6-hero__proof{display:none}
.s6-phone__scr.s6--noimg img{display:none}
.s6-phone__scr.s6--noimg .s6-hero-fallback{display:block;position:absolute;left:14px;right:14px;bottom:66px;z-index:3;color:#fff}
.s6-hero-fallback h4{font-family:var(--font-display);font-weight:700;font-size:20px;line-height:1;text-transform:uppercase}
.s6-hero-fallback p{font-size:12px;margin:4px 0 10px}
.s6--noimg .s6-hero__proof{display:flex;position:absolute;left:0;right:0;bottom:0;z-index:4;background:rgba(255,255,255,.96);padding:9px 6px}
.s6-hero__proof span{flex:1;display:flex;flex-direction:column;font-family:var(--font-mono);font-size:8px;color:var(--paper-ink-3);text-align:center;border-right:1px solid var(--paper-line);line-height:1.3}
.s6-hero__proof span b{font-family:var(--font-display);font-size:14px;color:var(--paper-ink)}
.s6-hero__proof span:last-child{border-right:0}
.s6-cta{display:inline-block;font-family:var(--font-mono);font-weight:600;font-size:11px;letter-spacing:.04em;background:var(--green);color:#04140C;padding:9px 13px;border-radius:8px}
.s6-cta--sm{font-size:10px;padding:7px 11px}

/* 3 ad cards */
.s6-ads{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}
@media (max-width:560px){.s6-ads{grid-template-columns:1fr}}
.s6-ad{border-radius:var(--r);overflow:hidden;background:#fff;border:1px solid var(--paper-line);box-shadow:0 16px 40px -28px rgba(5,5,5,.3);transition:transform .3s var(--ease-out),box-shadow .3s ease}
@media (hover:hover){.s6-ad:hover{transform:translateY(-5px);box-shadow:0 26px 50px -26px rgba(5,5,5,.32),0 0 32px -22px var(--green-glow)}}
.s6-ad header{display:flex;align-items:center;gap:8px;padding:11px 13px;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--paper-ink-2);border-bottom:1px solid var(--paper-line)}
.s6-ad__ic{width:18px;height:18px;position:relative;flex:none}
.s6-ad__ic::before{content:"";position:absolute;inset:0;background:var(--green-deep);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.s6-ad__media{position:relative;aspect-ratio:16/10;overflow:hidden}
.s6-ad__media img{width:100%;height:100%;object-fit:cover}
.s6-ad__ov{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:16px;background:linear-gradient(90deg,rgba(0,0,0,.66),rgba(0,0,0,.1));color:#fff}
.s6-ad__ov strong{font-family:var(--font-display);font-weight:700;font-size:26px;line-height:1}
.s6-ad__ov span{font-size:13px;margin:3px 0 11px}
.s6-ad__media--quote blockquote{position:absolute;inset:0;margin:0;padding:15px;display:flex;align-items:center;font-size:13px;line-height:1.42;color:#fff;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.25))}
.s6-ad footer{padding:10px 13px;font-family:var(--font-mono);font-size:11px;color:var(--paper-ink-3);display:flex;align-items:center;gap:8px}
.s6-ad footer b{margin-left:auto;color:var(--green-deep)}
.s6-ba{--p:50%}
.s6-ba__after,.s6-ba__before{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.s6-ba__before{clip-path:inset(0 calc(100% - var(--p)) 0 0)}
.s6-ba__lbl{position:absolute;top:8px;z-index:3;font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;color:#fff;background:rgba(0,0,0,.55);padding:3px 7px;border-radius:4px}
.s6-ba__lbl--b{left:8px}.s6-ba__lbl--a{right:8px;background:rgba(10,138,79,.8)}
.s6-ba__handle{position:absolute;top:0;bottom:0;left:var(--p);width:2px;background:#fff;transform:translateX(-1px);box-shadow:0 0 8px rgba(0,0,0,.6);z-index:3}
.s6-ba__handle::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.4)}

/* right: creative testing lab */
.s6-right > .vp-label{color:var(--green-deep)}
.s6-lab{margin-top:14px;display:flex;flex-direction:column;gap:12px}
.s6-ver{text-align:left;display:block;width:100%;padding:12px 12px 14px;border-radius:var(--r);background:#fff;border:1px solid var(--paper-line);position:relative;cursor:pointer;transition:border-color .25s,box-shadow .25s,transform .25s var(--ease-out)}
.s6-ver:active{transform:scale(.99)}
.s6-ver.is-active{border-color:var(--paper-line-green);box-shadow:0 20px 44px -24px rgba(10,138,79,.45)}
.s6-ver__badge{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--paper-panel-2);color:var(--paper-ink-2);font-family:var(--font-mono);font-size:11px;font-weight:600;vertical-align:middle;margin-right:8px}
.s6-ver.is-active .s6-ver__badge{background:var(--green-deep);color:#fff}
.s6-ver__name{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--paper-ink-2)}
.s6-ver__win{display:none;float:right;font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;color:var(--green-deep);border:1px solid var(--paper-line-green);border-radius:var(--r-pill);padding:3px 8px;margin-top:1px}
.s6-ver.is-active .s6-ver__win{display:inline-block}
.s6-ver__media{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:16/9;margin:11px 0}
.s6-ver__media img{width:100%;height:100%;object-fit:cover}
.s6-ver__media .vp-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:38px;height:38px}
.s6-ver__media strong{position:absolute;left:11px;bottom:9px;z-index:2;font-family:var(--font-display);font-weight:700;font-size:14px;text-transform:uppercase;color:#fff;text-shadow:0 1px 4px #000;line-height:1}
.s6-ver__m{display:flex;gap:8px}
.s6-ver__m span{flex:1;text-align:center;padding:8px 4px;border-radius:9px;background:var(--paper-panel)}
.s6-ver__m i{display:block;font-family:var(--font-mono);font-style:normal;font-size:10px;color:var(--paper-ink-3);letter-spacing:.04em}
.s6-ver__m b{font-family:var(--font-display);font-weight:700;font-size:18px;color:var(--paper-ink)}
.s6-winbadge{align-self:center;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--green-deep)}
.s6-chart{padding:14px;border-radius:var(--r);background:#fff;border:1px solid var(--paper-line)}
.s6-chart__lbl{font-family:var(--font-mono);font-size:11px;color:var(--paper-ink-3);display:flex;flex-wrap:wrap;gap:6px;justify-content:space-between;margin-bottom:8px}
.s6-chart__lbl em{font-style:normal;display:inline-flex;align-items:center;gap:5px}
.s6-leg{width:9px;height:3px;border-radius:2px;display:inline-block}
.s6-leg--a{background:var(--green-deep)}.s6-leg--b{background:#9bb0a5}
.s6-chart__svg{width:100%;height:90px}
.s6-chart__grid line{stroke:var(--paper-line)}
.s6-chart__a,.s6-chart__b{fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.4s var(--ease-out)}
.s6-chart__a{stroke:var(--green-deep)}.s6-chart__b{stroke:#9bb0a5;stroke-width:1.8}
.is-revealed .s6-chart__a,.is-revealed .s6-chart__b{stroke-dashoffset:0}
.s6-chart__x{display:flex;justify-content:space-between;margin-top:6px;font-family:var(--font-mono);font-size:9px;color:var(--paper-ink-3)}

/* bottom: performance journey */
.s6-journey{margin-top:clamp(48px,6vw,72px);padding-top:40px;border-top:1px solid var(--paper-line)}
.s6-journey__lbl{color:var(--green-deep);display:block;margin-bottom:28px}
.s6-journey__track{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.s6-jn{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}
.s6-jn__ic{width:66px;height:66px;border-radius:50%;background:#fff;border:1px solid var(--paper-line);display:grid;place-items:center;position:relative;box-shadow:0 12px 26px -16px rgba(5,5,5,.25);animation:s6jn 4s ease-in-out infinite;animation-delay:calc(var(--i)*.45s)}
.s6-jn__ic::before{content:"";width:27px;height:27px;background:var(--green-deep);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
@keyframes s6jn{0%,100%{box-shadow:0 12px 26px -16px rgba(5,5,5,.25);border-color:var(--paper-line)}50%{box-shadow:0 12px 30px -12px rgba(10,138,79,.45);border-color:var(--paper-line-green)}}
.s6-jn:not(:last-child)::after{content:"";position:absolute;top:33px;left:calc(50% + 42px);width:calc(100% - 84px);height:0;border-top:2px dashed var(--paper-line-green)}
.s6-jn h4{font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.02em;color:var(--paper-ink)}
.s6-jn p{font-size:14px;line-height:1.4;color:var(--paper-ink-2);max-width:170px}
.s6-jn__ic[data-ic="eye"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5C5 5 1 12 1 12s4 7 11 7 11-7 11-7-4-7-11-7Zm0 11a4 4 0 110-8 4 4 0 010 8Z'/%3E%3C/svg%3E")}
.s6-jn__ic[data-ic="chat"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 2H4a2 2 0 00-2 2v18l4-4h14a2 2 0 002-2V4a2 2 0 00-2-2z'/%3E%3C/svg%3E")}
.s6-jn__ic[data-ic="shield"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2 4 5v6c0 5 3.4 9 8 11 4.6-2 8-6 8-11V5l-8-3Zm-1 13-3-3 1.4-1.4L11 12.2l4.6-4.6L17 9l-6 6Z'/%3E%3C/svg%3E")}
.s6-jn__ic[data-ic="click"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2l11 6-4.6 1.4 3 5.6-2.6 1.1-3-5.6L7 16z'/%3E%3C/svg%3E")}
.s6-jn__ic[data-ic="user"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a5 5 0 100-10 5 5 0 000 10zm0 2c-5 0-9 2.5-9 6v2h18v-2c0-3.5-4-6-9-6z'/%3E%3C/svg%3E")}
.s6-jn__ic[data-ic="cal"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2v2H5a2 2 0 00-2 2v13a2 2 0 002 2h14a2 2 0 002-2V6a2 2 0 00-2-2h-2V2h-2v2H9V2H7Zm12 7v10H5V9h14Z'/%3E%3C/svg%3E")}
@media (max-width:880px){.s6-journey__track{grid-template-columns:repeat(3,1fr);gap:24px 12px}.s6-jn:not(:last-child)::after{display:none}}
@media (max-width:480px){.s6-journey__track{grid-template-columns:repeat(2,1fr)}}

/* =====================================================================
   SECTION 7 · HOME SERVICE VIDEO CATEGORIES — radial content engine
   ===================================================================== */
.s7-wisp{position:absolute;z-index:0;width:45%;height:60%;pointer-events:none;opacity:.6;
  background:radial-gradient(ellipse at center,rgba(39,245,140,.12),transparent 70%);filter:blur(44px)}
.s7-wisp--l{left:-12%;bottom:4%}.s7-wisp--r{right:-12%;top:8%}
.s7-wrap{display:grid;grid-template-columns:.82fr 2fr;gap:clamp(24px,3vw,56px);align-items:center}
.s7-head .vp-title{font-size:clamp(36px,4.6vw,62px);line-height:1.04}
.s7-stage{position:relative;width:100%;display:grid;grid-template-columns:1fr minmax(190px,250px) 1fr;grid-template-rows:auto auto;gap:clamp(14px,1.6vw,22px) clamp(14px,2.2vw,40px);align-items:center}
.s7-cluster--tl{grid-column:1;grid-row:1}.s7-cluster--tr{grid-column:3;grid-row:1}
.s7-cluster--bl{grid-column:1;grid-row:2}.s7-cluster--br{grid-column:3;grid-row:2}

.s7-links{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:visible;pointer-events:none}
.s7-link{fill:none;stroke:var(--void-line-green);stroke-width:1.5}
.s7-flow{fill:var(--green);filter:drop-shadow(0 0 5px var(--green))}

.s7-core{grid-column:2;grid-row:1/3;justify-self:center;align-self:center;position:relative;width:100%;max-width:250px;aspect-ratio:1;z-index:3;display:grid;place-items:center}
.s7-core__ring{position:absolute;border-radius:50%;pointer-events:none}
.s7-core__ring--1{inset:5%;border:1px solid rgba(39,245,140,.16)}
.s7-core__ring--2{inset:19%;border:1px solid rgba(39,245,140,.10)}
.s7-core__ring--arc{inset:0;background:conic-gradient(from 135deg,transparent 0 52%,var(--green) 74%,var(--green-bright) 82%,transparent 90%);
  -webkit-mask:radial-gradient(closest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));mask:radial-gradient(closest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));
  animation:vpSpin 7s linear infinite;filter:drop-shadow(0 0 8px var(--green-glow))}
.s7-core__pulse{position:absolute;inset:16%;border-radius:50%;border:1px solid var(--green);opacity:0;animation:vpRipple 4s var(--ease-out) infinite}
.s7-core__inner{position:relative;z-index:2;width:62%;aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;color:var(--green);
  background:radial-gradient(circle,rgba(39,245,140,.16),rgba(6,12,9,.92) 72%);box-shadow:inset 0 0 32px rgba(39,245,140,.16),0 0 60px -12px var(--green-glow)}
.s7-core__inner strong{font-family:var(--font-display);font-weight:700;font-size:clamp(12px,1.5vw,17px);letter-spacing:.04em;color:#fff;line-height:1.05}
.s7-core__bar{width:24px;height:2px;background:var(--green);border-radius:2px}

.s7-cluster{z-index:2;display:flex;flex-direction:column;gap:8px;min-width:0}
.s7-cl__h{font-family:var(--font-mono);font-size:13px;letter-spacing:.12em;color:var(--void-ink-3);text-transform:uppercase;text-align:center;margin-bottom:2px}
.s7-card{display:flex;align-items:center;gap:10px;padding:7px;border-radius:12px;text-decoration:none;
  background:linear-gradient(180deg,rgba(18,24,22,.92),rgba(10,14,12,.92));border:1px solid var(--void-line);
  transition:transform var(--dur-ui) var(--ease-out),border-color var(--dur-ui) ease,box-shadow var(--dur-ui) ease}
@media (hover:hover){.s7-card:hover{border-color:var(--void-line-green);box-shadow:0 0 26px -12px var(--green-glow);transform:translateY(-2px)}}
.s7-card__th{width:54px;height:40px;border-radius:7px;overflow:hidden;position:relative;flex:none;background:#0c100e}
.s7-card__th img{width:100%;height:100%;object-fit:cover}
.s7-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:18px;height:18px;border-radius:50%;background:rgba(39,245,140,.92)}
.s7-play::after{content:"";position:absolute;top:50%;left:55%;transform:translate(-50%,-50%);border-left:5px solid #04140C;border-top:3.5px solid transparent;border-bottom:3.5px solid transparent}
.s7-card__t{font-size:14px;line-height:1.12;color:var(--void-ink-2)}
.s7-card__th--fin{display:grid;place-items:center;background:linear-gradient(135deg,#0fb866,#0a8a4f)}
.s7-card__th--fin b{font-family:var(--font-display);font-weight:700;font-size:15px;color:#fff;line-height:1}
.s7-card__th--fin i{font-style:normal;font-size:9px}

.s7-distro{margin-top:clamp(40px,5vw,64px);text-align:center}
.s7-distro__lbl{display:block;margin-bottom:18px;letter-spacing:.2em;color:var(--void-ink-3)}
.s7-distro__row{display:flex;align-items:center;justify-content:center;gap:14px}
.s7-distro__arrow{color:var(--void-ink-3);font-size:18px}
.s7-distro__icons{margin:0}
@media (max-width:1024px){
  .s7-wrap{grid-template-columns:1fr;gap:30px}
  .s7-stage{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:16px}
  .s7-cluster--tl,.s7-cluster--tr,.s7-cluster--bl,.s7-cluster--br{grid-column:auto;grid-row:auto}
  .s7-core{grid-column:1/-1;grid-row:auto;order:-1;margin:4px auto 8px;width:min(56%,210px)}
  .s7-links{display:none}
}
@media (max-width:560px){.s7-stage{grid-template-columns:1fr}.s7-distro__arrow{display:none}}

/* =====================================================================
   SECTION 8 · SCRIPTWRITING THAT SELLS — creative studio (white)
   ===================================================================== */
.s8-grid{display:grid;grid-template-columns:.92fr 1.5fr 1.02fr;gap:clamp(18px,2vw,30px);align-items:start;margin-top:8px}
/* icon masks (shared across line icons, cues, psychology) */
.s8 [data-ic="wave"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 9h2v6H3zM8 5h2v14H8zM13 8h2v8h-2zM18 4h2v16h-2z'/%3E%3C/svg%3E")}
.s8 [data-ic="target"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 100 20 10 10 0 000-20zm0 4a6 6 0 110 12 6 6 0 010-12zm0 4a2 2 0 100 4 2 2 0 000-4z'/%3E%3C/svg%3E")}
.s8 [data-ic="shield"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2 4 5v6c0 5 3.4 9 8 11 4.6-2 8-6 8-11V5l-8-3Zm-1 13-3-3 1.4-1.4L11 12.2l4.6-4.6L17 9z'/%3E%3C/svg%3E")}
.s8 [data-ic="star"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2 2.9 6.3 6.9.7-5.1 4.6 1.4 6.8L12 17.8 5.9 20.4l1.4-6.8L2.2 9l6.9-.7z'/%3E%3C/svg%3E")}
.s8 [data-ic="tag"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 4H12L3 13l8 8 9-9zM16.5 9a1.5 1.5 0 110-3 1.5 1.5 0 010 3z'/%3E%3C/svg%3E")}
.s8 [data-ic="cursor"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2l11 6-4.6 1.4 3 5.6-2.6 1.1-3-5.6L7 16z'/%3E%3C/svg%3E")}
.s8 [data-ic="cam"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 7h2.5L8 5h8l1.5 2H20a1 1 0 011 1v11a1 1 0 01-1 1H4a1 1 0 01-1-1V8a1 1 0 011-1zm8 3a4 4 0 100 8 4 4 0 000-8z'/%3E%3C/svg%3E")}
.s8 [data-ic="arrow"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 11h11.2l-4.6-4.6L12 5l7 7-7 7-1.4-1.4 4.6-4.6H4z'/%3E%3C/svg%3E")}
.s8 [data-ic="search"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 2a8 8 0 105.3 14l5.2 5.2 1.4-1.4-5.2-5.2A8 8 0 0010 2zm0 2a6 6 0 110 12 6 6 0 010-12z'/%3E%3C/svg%3E")}
.s8 [data-ic="frame"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 5h5V3H3v7h2zM19 5v5h2V3h-7v2zM5 19v-5H3v7h7v-2zM19 19h-5v2h7v-7h-2z'/%3E%3C/svg%3E")}
.s8 [data-ic="frame2"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 3h6v2H6.4l3.3 3.3-1.4 1.4L5 7.4V10H3zM21 3v6h-2V6.4l-3.3 3.3-1.4-1.4L17.6 5H15V3zM3 21v-6h2v2.6l3.3-3.3 1.4 1.4L6.4 19H9v2zM21 21h-6v-2h2.6l-3.3-3.3 1.4-1.4L19 17.6V15h2z'/%3E%3C/svg%3E")}
.s8 [data-ic="eye"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5C5 5 1 12 1 12s4 7 11 7 11-7 11-7-4-7-11-7Zm0 11a4 4 0 110-8 4 4 0 010 8Z'/%3E%3C/svg%3E")}
.s8 [data-ic="hand"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 100 20 10 10 0 000-20zm-1 14-4-4 1.4-1.4L11 13.2l4.6-4.6L17 10z'/%3E%3C/svg%3E")}
.s8 [data-ic="book"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4h7v16H4zM13 4h7v16h-7z'/%3E%3C/svg%3E")}

/* left: 7-step framework + progress line */
.s8-steps{display:flex;flex-direction:column;gap:13px;position:relative;padding-left:22px}
.s8-steps::before{content:"";position:absolute;left:4px;top:24px;bottom:24px;width:2px;background:linear-gradient(var(--green-deep-2),rgba(10,138,79,.12))}
.s8-step{position:relative;display:flex;align-items:center;gap:12px;padding:15px 18px;border-radius:var(--r);background:#fff;border:1px solid var(--paper-line);box-shadow:0 14px 32px -26px rgba(5,5,5,.4);transition:transform var(--dur-ui) var(--ease-out),box-shadow var(--dur-ui) ease,border-color var(--dur-ui) ease}
.s8-step::before{content:"";position:absolute;left:-22px;top:50%;transform:translateY(-50%);width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--green-deep-2)}
@media (hover:hover){.s8-step:hover{transform:translateX(4px);border-color:var(--paper-line-green);box-shadow:0 18px 36px -24px rgba(10,138,79,.4)}.s8-step:hover::before{background:var(--green-deep);box-shadow:0 0 0 4px rgba(10,138,79,.12)}}
.s8-step__no{font-family:var(--font-mono);font-size:20px;font-weight:600;color:var(--paper-ink-3);line-height:1}
.s8-step__t{font-family:var(--font-display);font-weight:700;font-size:clamp(15px,1.5vw,19px);letter-spacing:.01em;color:var(--paper-ink);flex:1}
.s8-viz{color:var(--green-deep);flex:none;display:flex;align-items:center;justify-content:flex-end;min-width:56px}
.s8-viz svg{height:34px;width:auto;max-width:90px}
.s8-viz--proof{flex-direction:column;align-items:flex-end;gap:3px}
.s8-viz--proof .vp-stars{font-size:11px}
.s8-avs{display:flex}.s8-avs b{width:15px;height:15px;border-radius:50%;background:linear-gradient(135deg,#9bb0a5,#6a7972);border:1.5px solid #fff;margin-left:-5px}
.s8-viz--proof img{width:46px;height:28px;object-fit:cover;border-radius:5px}
.s8-viz--row{gap:4px;align-items:center}
.s8-plus,.s8-arrow{color:var(--paper-ink-3);font-size:13px}
.s8-ctaviz{width:40px;height:40px;border-radius:50%;background:var(--green-deep);color:#fff;display:grid;place-items:center}

/* center: studio */
.s8-studio{display:grid;grid-template-columns:1fr 1.12fr;border-radius:var(--r-lg);overflow:hidden;background:#fff;border:1px solid var(--paper-line);box-shadow:0 36px 80px -40px rgba(5,5,5,.34)}
.s8-script{padding:20px;border-right:1px solid var(--paper-line);min-width:0}
.s8-panel__h{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--paper-ink-3);display:block;margin-bottom:14px}
.s8-line{display:flex;gap:11px;padding:10px 0;align-items:flex-start;border-bottom:1px solid var(--paper-line)}
.s8-line:last-child{border-bottom:0}
.s8-line__ic{width:30px;height:30px;border-radius:50%;background:rgba(10,138,79,.1);position:relative;flex:none}
.s8-line__ic::before{content:"";position:absolute;inset:0;margin:auto;width:15px;height:15px;background:var(--green-deep);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.s8-line em{font-family:var(--font-mono);font-style:normal;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--green-deep);display:block;margin-bottom:3px}
.s8-line p{font-size:14px;line-height:1.32;color:var(--paper-ink)}
.s8-line--muted{opacity:.45}.s8-line--muted em{color:var(--paper-ink-3)}
.s8-preview{position:relative;min-height:320px;background:linear-gradient(160deg,#1b2a42,#243a2c 60%,#0c1410)}
.s8-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.s8-preview::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(0,0,0,.55))}
.s8-preview .vp-play{position:absolute;top:46%;left:50%;transform:translate(-50%,-50%);z-index:3}
.s8-fr{position:absolute;width:18px;height:18px;border:2px solid rgba(255,255,255,.55);z-index:3}
.s8-fr--tl{top:14px;left:14px;border-right:0;border-bottom:0}.s8-fr--tr{top:14px;right:14px;border-left:0;border-bottom:0}
.s8-fr--bl{bottom:42px;left:14px;border-right:0;border-top:0}.s8-fr--br{bottom:42px;right:14px;border-left:0;border-top:0}
.s8-preview__ctrl{position:absolute;left:12px;right:12px;bottom:12px;z-index:4;display:flex;align-items:center;gap:10px;color:#fff;font-family:var(--font-mono);font-size:11px}
.s8-mini-play,.s8-fs{font-size:11px;opacity:.85}
.s8-preview__bar{flex:1;height:3px;border-radius:3px;background:rgba(255,255,255,.3);overflow:hidden}
.s8-preview__bar span{display:block;height:100%;width:42%;background:var(--green);box-shadow:0 0 8px var(--green)}

/* right: creative tools */
.s8-tools{display:flex;flex-direction:column;gap:14px}
.s8-tool{padding:16px;border-radius:var(--r);background:var(--paper-panel);border:1px solid var(--paper-line)}
.s8-tool__h{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--paper-ink-2);margin-bottom:12px}
.s8-tool__h i{color:var(--green-deep);font-style:normal}
.s8-hooks,.s8-scenes{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.s8-hk{border-radius:9px;overflow:hidden;background:#fff;border:1px solid var(--paper-line);aspect-ratio:3/4;display:flex;flex-direction:column}
.s8-hk--img img{flex:1;width:100%;object-fit:cover;min-height:0}
.s8-sketch{flex:1;background:repeating-linear-gradient(135deg,#eef3f0,#eef3f0 6px,#e4ebe7 6px,#e4ebe7 12px);position:relative}
.s8-sketch::after{content:"";position:absolute;inset:24% 22%;border:1.5px solid #ccd8d1;border-bottom:0;clip-path:polygon(0 60%,50% 0,100% 60%,100% 100%,0 100%)}
.s8-wf{height:14px;width:100%;color:var(--green-deep);padding:0 2px;flex:none}
.s8-sc{aspect-ratio:1;border-radius:9px;background:#fff;border:1px solid var(--paper-line);display:grid;place-items:center;color:var(--paper-ink-3)}
.s8-sc svg{width:72%;height:72%}
.s8-voice{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--paper-line);border-radius:10px;padding:10px 12px}
.s8-voice .vp-play{position:static;transform:none;width:34px;height:34px;animation:none;flex:none}
.s8-vwave{flex:1;display:flex;align-items:center;gap:2px;height:26px}
.s8-vwave span{flex:1;background:var(--green-deep);border-radius:2px;height:35%;opacity:.65;animation:vpWave 1.1s var(--ease-out) infinite alternate}
.s8-vwave span:nth-child(odd){animation-duration:.85s}.s8-vwave span:nth-child(3n){animation-duration:1.4s}.s8-vwave span:nth-child(2){animation-delay:.1s}.s8-vwave span:nth-child(5){animation-delay:.25s}.s8-vwave span:nth-child(8){animation-delay:.15s}.s8-vwave span:nth-child(11){animation-delay:.3s}.s8-vwave span:nth-child(14){animation-delay:.2s}.s8-vwave span:nth-child(17){animation-delay:.35s}
.s8-cues{display:flex;gap:8px;flex-wrap:wrap}
.s8-cue{width:38px;height:38px;border-radius:10px;background:#fff;border:1px solid var(--paper-line);position:relative}
.s8-cue::before{content:"";position:absolute;inset:0;margin:auto;width:19px;height:19px;background:var(--green-deep);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}

/* bottom: content psychology */
.s8-psy{margin-top:clamp(48px,6vw,72px);padding:clamp(22px,3vw,32px);border-radius:var(--r-lg);background:var(--paper-panel);border:1px solid var(--paper-line)}
.s8-psy__lbl{display:block;text-align:center;margin-bottom:26px;color:var(--green-deep)}
.s8-psy__track{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;position:relative;max-width:840px;margin:0 auto}
.s8-psy__track::before{content:"";position:absolute;top:30px;left:9%;right:9%;height:2px;background:repeating-linear-gradient(90deg,var(--green-deep-2) 0 8px,transparent 8px 15px)}
.s8-psy__n{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:11px;flex:1}
.s8-psy__ic{width:60px;height:60px;border-radius:50%;background:#fff;border:1px solid var(--paper-line);position:relative;box-shadow:0 10px 24px -16px rgba(5,5,5,.3)}
.s8-psy__ic::before{content:"";position:absolute;inset:0;margin:auto;width:26px;height:26px;background:var(--green-deep);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.s8-psy__n b{font-family:var(--font-mono);font-size:13px;letter-spacing:.06em;color:var(--paper-ink-2);text-align:center}

@media (max-width:1180px){
  .s8-grid{grid-template-columns:1fr 1.25fr}
  .s8-tools{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr)}
}
@media (max-width:820px){
  .s8-grid{grid-template-columns:1fr}
  .s8-tools{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .s8-studio{grid-template-columns:1fr}.s8-script{border-right:0;border-bottom:1px solid var(--paper-line)}
  .s8-tools{grid-template-columns:1fr}
  .s8-psy__track{flex-wrap:wrap;justify-content:center;gap:20px}.s8-psy__track::before{display:none}.s8-psy__n{flex:0 0 28%}
}

/* =====================================================================
   SECTION 9 · POST PRODUCTION — luxury editing suite (dark)
   ===================================================================== */
.s9 [data-brand="yt"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23 8.3a3 3 0 00-2.1-2.1C19 5.7 12 5.7 12 5.7s-7 0-8.9.5A3 3 0 001 8.3 31 31 0 00.7 12 31 31 0 001 15.7a3 3 0 002.1 2.1c1.9.5 8.9.5 8.9.5s7 0 8.9-.5a3 3 0 002.1-2.1c.3-1.2.3-3.7.3-3.7s0-2.5-.3-3.7zM9.8 15.3V8.7l5.7 3.3z'/%3E%3C/svg%3E")}
.s9 [data-brand="fb"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13.5 21v-7h2.3l.35-2.7H13.5V9.5c0-.78.22-1.3 1.33-1.3h1.42V5.8c-.25-.03-1.1-.1-2.08-.1-2.06 0-3.47 1.26-3.47 3.57V11.3H8.4V14h2.3v7z'/%3E%3C/svg%3E")}
.s9 [data-brand="tt"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M16.5 3c.3 2.1 1.7 3.7 3.8 3.9v2.4c-1.4 0-2.7-.45-3.8-1.2v6.3a5.2 5.2 0 11-5.2-5.2c.3 0 .6.02.9.07v2.5a2.7 2.7 0 102 2.6V3z'/%3E%3C/svg%3E")}
.s9 [data-brand="web"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 100 20 10 10 0 000-20zm0 2c1.2 0 2.9 2.4 3.5 6H8.5C9.1 6.4 10.8 4 12 4zM6.5 10C7 6.8 8 4.6 8.6 4A8 8 0 004.2 10zm-.3 2H4.06A8 8 0 008.6 20c-.7-.9-1.8-3.4-2.4-8zm2 0h7.6c-.6 5-2.4 8-3.8 8s-3.2-3-3.8-8zm9.6 0h2.04A8 8 0 0115.4 20c.6-.9 1.7-3.4 2.4-8zm0-2c-.5-3.2-1.5-5.4-2.1-6A8 8 0 0119.94 10z'/%3E%3C/svg%3E")}

.s9-suite{position:relative;border-radius:var(--r-lg);padding:clamp(13px,1.5vw,18px);overflow:hidden;
  background:linear-gradient(180deg,rgba(17,23,21,.94),rgba(8,12,10,.96));border:1px solid var(--void-line);
  box-shadow:0 50px 110px -54px #000,0 0 90px -54px var(--green-glow)}
.s9-suite__top{display:grid;grid-template-columns:1.5fr 1fr;gap:13px;margin-bottom:13px}
.s9-preview{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:16/9;background:#0a0d0c;border:1px solid var(--void-line)}
.s9-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.s9-preview::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 40%,transparent,rgba(0,0,0,.35))}
.s9-preview .vp-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px;z-index:3}
.s9-fr{position:absolute;width:16px;height:16px;border:2px solid rgba(255,255,255,.5);z-index:3}
.s9-fr--tl{top:12px;left:12px;border-right:0;border-bottom:0}.s9-fr--tr{top:12px;right:12px;border-left:0;border-bottom:0}
.s9-fr--bl{bottom:12px;left:12px;border-right:0;border-top:0}.s9-fr--br{bottom:12px;right:12px;border-left:0;border-top:0}
.s9-rec{position:absolute;top:12px;left:34px;z-index:4;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.05em;color:#fff;text-shadow:0 1px 3px #000}
.s9-rec i{width:7px;height:7px;border-radius:50%;background:#ff4d4d;box-shadow:0 0 6px #ff4d4d;animation:vpBlink 1.4s steps(1) infinite}
.s9-res{position:absolute;top:12px;right:34px;z-index:4;font-family:var(--font-mono);font-size:10px;color:rgba(255,255,255,.7);text-shadow:0 1px 3px #000}
.s9-panels{display:grid;gap:13px}
.s9-card{border-radius:var(--r);background:rgba(7,11,9,.6);border:1px solid var(--void-line);padding:14px;transition:border-color var(--dur-ui) ease,box-shadow var(--dur-ui) ease}
@media (hover:hover){.s9-card:hover{border-color:var(--void-line-green);box-shadow:0 0 30px -16px var(--green-glow)}}
.s9-card__h{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--void-ink-3);display:block;margin-bottom:12px}
.s9-wheels{display:flex;gap:9px}
.s9-wheel{position:relative;flex:1;aspect-ratio:1;border-radius:50%;background:conic-gradient(from 0deg,#ff5f57,#febc2e,#28c840,#27f58c,#3aa0ff,#a36bff,#ff5f57);
  box-shadow:inset 0 0 0 3px rgba(8,12,10,.7),inset 0 0 14px rgba(0,0,0,.6);display:grid;place-items:end center;padding-bottom:5px}
.s9-wheel::before{content:"";position:absolute;inset:28%;border-radius:50%;background:radial-gradient(circle,#0e1310,#0a0d0c)}
.s9-wheel__dot{position:absolute;left:var(--wx);top:var(--wy);width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 7px #fff;transform:translate(-50%,-50%);z-index:2}
.s9-wheel b{position:relative;z-index:2;font-family:var(--font-mono);font-style:normal;font-size:9px;color:var(--void-ink-2)}
.s9-sliders{display:flex;flex-direction:column;gap:7px;margin-top:12px}
.s9-sliders span{height:5px;border-radius:3px;background:var(--void-line);position:relative}
.s9-sliders span::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--v);background:linear-gradient(90deg,var(--green-deep),var(--green));border-radius:3px}
.s9-faders{display:flex;gap:9px;height:84px;align-items:stretch}
.s9-fader{flex:1;position:relative;background:var(--void-line);border-radius:4px;max-width:8px;margin:0 auto;width:6px}
.s9-fader::after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--l);background:linear-gradient(var(--green),var(--green-deep));border-radius:4px;opacity:.45}
.s9-fader i{position:absolute;left:50%;transform:translateX(-50%);bottom:var(--l);width:16px;height:8px;border-radius:3px;background:linear-gradient(var(--green-bright),var(--green-deep));box-shadow:0 0 8px var(--green-glow)}
.s9-meter{display:flex;gap:3px;align-items:flex-end;height:20px;margin-top:11px}
.s9-meter span{flex:1;background:var(--green);border-radius:1px;height:40%;opacity:.7;animation:vpWave .8s var(--ease-out) infinite alternate}
.s9-meter span:nth-child(odd){animation-duration:.6s}.s9-meter span:nth-child(3n){animation-duration:1s}.s9-meter span:nth-child(2){animation-delay:.1s}.s9-meter span:nth-child(5){animation-delay:.2s}.s9-meter span:nth-child(8){animation-delay:.15s}.s9-meter span:nth-child(11){animation-delay:.25s}

.s9-timeline{position:relative;border-radius:var(--r);background:rgba(5,8,7,.75);border:1px solid var(--void-line);padding:14px;overflow:hidden}
.s9-ruler{height:13px;margin-bottom:10px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.13) 0 1px,transparent 1px 38px)}
.s9-playhead{position:absolute;top:14px;bottom:14px;left:2%;width:2px;background:var(--green);box-shadow:0 0 10px var(--green);z-index:5;animation:s9play 9s ease-in-out infinite}
.s9-playhead::before{content:"";position:absolute;top:-2px;left:50%;transform:translateX(-50%);width:11px;height:9px;border-radius:2px;background:var(--green)}
@keyframes s9play{0%{left:3%}50%{left:96%}100%{left:3%}}
.s9-track{position:relative;height:34px;margin-bottom:8px;border-radius:7px;background:rgba(255,255,255,.025)}
.s9-track:last-child{margin-bottom:0}
.s9-track__lbl{position:absolute;left:6px;top:50%;transform:translateY(-50%);z-index:4;background:rgba(5,8,7,.88);padding:3px 6px;border-radius:4px;font-family:var(--font-mono);font-size:9px;letter-spacing:.04em;color:var(--void-ink-3)}
.s9-clip{position:absolute;top:5px;bottom:5px;left:var(--x);width:var(--w);border-radius:5px;display:flex;align-items:center;justify-content:center;
  font-family:var(--font-mono);font-size:9px;color:#cfeede;overflow:hidden;white-space:nowrap;
  background:linear-gradient(180deg,#1c6b45,#0f4a2f);border:1px solid var(--void-line-green)}
.s9-clip--mg{background:linear-gradient(180deg,#39396b,#23234a);border-color:rgba(150,150,255,.32);color:#d2d3f0}
.s9-clip--cc{background:rgba(39,245,140,.12);border-color:var(--void-line-green);color:var(--green)}
.s9-wavetrack{position:absolute;left:80px;right:8px;top:6px;bottom:6px;display:flex;align-items:center;gap:1px}
.s9-wavetrack i{flex:1;background:var(--green);opacity:.55;border-radius:1px}
@media (max-width:780px){.s9-suite__top{grid-template-columns:1fr}.s9-panels{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.s9-panels{grid-template-columns:1fr}}

.s9-exports{margin-top:clamp(36px,4vw,56px)}
.s9-exports__lbl{display:block;text-align:center;margin-bottom:20px;color:var(--green);letter-spacing:.16em}
.s9-exp__grid{display:grid;grid-template-columns:repeat(8,1fr);gap:12px}
.s9-exp{padding:14px 10px;border-radius:var(--r);background:var(--void-panel);border:1px solid var(--void-line);text-align:center;
  transition:transform var(--dur-ui) var(--ease-out),border-color var(--dur-ui) ease,box-shadow var(--dur-ui) ease}
@media (hover:hover){.s9-exp:hover{transform:translateY(-5px) scale(1.03);border-color:var(--void-line-green);box-shadow:0 16px 40px -20px var(--green-glow)}}
.s9-exp__box{display:block;margin:0 auto 10px;border-radius:6px;overflow:hidden;background:#0c100e;border:1px solid var(--void-line)}
.s9-exp__box img{width:100%;height:100%;object-fit:cover;display:block}
.s9-exp__box--169{width:100%;aspect-ratio:16/9}
.s9-exp__box--916{width:48%;aspect-ratio:9/16}
.s9-exp__box--11{width:68%;aspect-ratio:1}
.s9-exp__box--45{width:60%;aspect-ratio:4/5}
.s9-exp__ic{width:40px;height:40px;margin:0 auto 12px;position:relative}
.s9-exp__ic::before{content:"";position:absolute;inset:0;background:var(--green);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.s9-exp b{display:block;font-family:var(--font-display);font-weight:700;font-size:15px;color:#fff;letter-spacing:.01em}
.s9-exp i{font-family:var(--font-mono);font-style:normal;font-size:11px;color:var(--void-ink-3);margin-top:2px;display:block}
@media (max-width:980px){.s9-exp__grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:520px){.s9-exp__grid{grid-template-columns:repeat(2,1fr)}}

.s9-flow{position:relative;display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:clamp(40px,5vw,64px);text-align:center}
.s9-flow__rail{position:absolute;top:50%;left:0;width:100%;height:24px;transform:translateY(-50%);z-index:0}
.s9-fn{position:relative;z-index:1;padding:14px 6px;border-radius:12px;background:var(--void-panel);border:1px solid var(--void-line);color:var(--void-ink-2)}
.s9-fn b{font-family:var(--font-mono);font-weight:600;font-size:13px;letter-spacing:.03em}
.s9-fn--end{background:var(--green-deep);color:#fff;border-color:transparent}
.s9-fn--end b{color:#fff}
@media (max-width:820px){.s9-flow{grid-template-columns:repeat(3,1fr);gap:12px}.s9-flow__rail{display:none}}
@media (max-width:420px){.s9-flow{grid-template-columns:repeat(2,1fr)}}

/* =====================================================================
   SECTION 10 · GREEN CITY CONTENT BANK — the vault
   ===================================================================== */
.s10-head{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(20px,3vw,48px);align-items:end;margin-bottom:clamp(28px,3.5vw,46px)}
.s10-title{font-size:clamp(31px,4.7vw,62px);line-height:1.06}
.s10-head__r strong{display:block;font-family:var(--font-display);font-weight:700;font-size:clamp(15px,1.7vw,20px);text-transform:uppercase;letter-spacing:.01em;color:var(--paper-ink);line-height:1.12}
.s10-head__r p{font-size:14px;line-height:1.5;color:var(--paper-ink-3);margin-top:12px;padding-top:12px;border-top:1px solid var(--paper-line);max-width:380px}
@media (max-width:820px){.s10-head{grid-template-columns:1fr;align-items:start;gap:16px}}

.s10-vault{position:relative;border-radius:var(--r-lg);overflow:hidden;padding:clamp(20px,3vw,42px) clamp(16px,2.4vw,34px);
  background:radial-gradient(ellipse 70% 90% at 50% 26%,#0d1813,#070b09 72%),#070b09;border:1px solid var(--void-line-green);
  box-shadow:0 50px 110px -56px #000,inset 0 0 120px -40px rgba(39,245,140,.16)}
.s10-vault__floor{position:absolute;left:-10%;right:-10%;bottom:0;height:46%;z-index:0;pointer-events:none;
  background-image:linear-gradient(rgba(39,245,140,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(39,245,140,.18) 1px,transparent 1px);
  background-size:46px 46px;transform:perspective(440px) rotateX(64deg);transform-origin:bottom;
  -webkit-mask:linear-gradient(transparent,#000 80%);mask:linear-gradient(transparent,#000 80%);opacity:.5}
.s10-vault__main{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto 1fr;gap:clamp(12px,1.8vw,28px);align-items:center}
.s10-cats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.s10-cat{position:relative;display:block;border-radius:10px;overflow:hidden;aspect-ratio:16/11;border:1px solid var(--void-line);text-decoration:none;background:#0c100e;
  transition:transform var(--dur-ui) var(--ease-out),border-color var(--dur-ui) ease,box-shadow var(--dur-ui) ease}
.s10-cat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.92}
.s10-cat::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 38%,rgba(0,0,0,.84))}
.s10-cat span{position:absolute;left:8px;right:8px;bottom:7px;z-index:2;font-family:var(--font-mono);font-size:12px;letter-spacing:.01em;color:#fff;line-height:1.08}
.s10-cat .s7-play{width:22px;height:22px;opacity:.85;z-index:2}
@media (hover:hover){.s10-cat:hover{transform:translateY(-3px) scale(1.02);border-color:var(--green);box-shadow:0 14px 34px -16px var(--green-glow);z-index:3}.s10-cat:hover img{opacity:1}}
.s10-core{position:relative;width:clamp(146px,16vw,206px);aspect-ratio:1;display:grid;place-items:center;text-align:center;color:var(--green);justify-self:center;gap:4px}
.s10-core__ring{position:absolute;inset:0;border-radius:26px;border:1px solid var(--green);background:radial-gradient(circle,rgba(39,245,140,.18),rgba(6,12,9,.92));
  box-shadow:0 0 50px -8px var(--green-glow),inset 0 0 30px rgba(39,245,140,.22);animation:s10breathe 4s ease-in-out infinite}
.s10-core__pulse{position:absolute;inset:0;border-radius:26px;border:1px solid var(--green);opacity:0;animation:vpRipple 4s var(--ease-out) infinite}
.s10-core__cube{position:relative;z-index:2;filter:drop-shadow(0 0 12px var(--green-glow))}
.s10-core strong{position:relative;z-index:2;font-family:var(--font-display);font-weight:700;font-size:clamp(12px,1.4vw,15px);letter-spacing:.04em;color:#fff;line-height:1.1}
@keyframes s10breathe{0%,100%{box-shadow:0 0 50px -8px var(--green-glow),inset 0 0 30px rgba(39,245,140,.22)}50%{box-shadow:0 0 72px -4px var(--green-glow),inset 0 0 42px rgba(39,245,140,.34)}}
.s10-stats{position:relative;z-index:2;display:flex;justify-content:center;gap:clamp(20px,5vw,72px);margin-top:clamp(20px,2.6vw,32px);padding-top:22px;border-top:1px solid var(--void-line-green)}
.s10-stats div{text-align:center}
.s10-stats .vp-num{font-family:var(--font-display);font-weight:700;font-size:clamp(26px,3.4vw,40px);color:var(--green);display:block;font-variant-numeric:tabular-nums;filter:drop-shadow(0 0 14px var(--green-glow))}
.s10-stats em{font-family:var(--font-mono);font-style:normal;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--void-ink-3)}
@media (max-width:760px){.s10-vault__main{grid-template-columns:1fr}.s10-core{order:-1;margin:0 auto 14px}}

.s10-compare{display:grid;grid-template-columns:1fr 1.25fr;gap:18px;margin-top:clamp(36px,4vw,56px)}
.s10-cmp{padding:24px;border-radius:var(--r-lg)}
.s10-cmp--bad{background:linear-gradient(180deg,#1c1010,#140c0c);border:1px solid rgba(255,90,90,.28);color:#e9cccc}
.s10-cmp--good{background:linear-gradient(180deg,rgba(10,138,79,.12),var(--paper-panel));border:1px solid var(--paper-line-green)}
.s10-cmp header{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:clamp(16px,2vw,22px);text-transform:uppercase;letter-spacing:.01em;margin-bottom:16px}
.s10-cmp--bad header{color:#ff8a8a}.s10-cmp--good header{color:var(--green-deep)}
.s10-cmp__x,.s10-cmp__check{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:14px;flex:none}
.s10-cmp__x{background:rgba(255,90,90,.16);color:#ff6b6b}.s10-cmp__check{background:rgba(10,138,79,.16);color:var(--green-deep)}
.s10-cmp__sub{font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#ff8a8a;margin-bottom:10px}
.s10-cmp__list{display:flex;flex-direction:column;gap:9px}
.s10-cmp__list li{position:relative;padding-left:24px;font-size:14px}
.s10-cmp--bad .s10-cmp__list li::before{content:"✕";position:absolute;left:0;color:#ff6b6b;font-size:11px}
.s10-cmp__list--good li{color:var(--paper-ink-2)}
.s10-cmp__list--good li::before{content:"✓";position:absolute;left:0;color:var(--green-deep);font-size:11px}
.s10-cmp__cost{margin-top:16px;padding:14px;border-radius:12px;background:rgba(0,0,0,.3);border:1px solid rgba(255,90,90,.22)}
.s10-cmp__cost b{font-family:var(--font-display);font-weight:700;font-size:22px;color:#ff8a8a;display:block}
.s10-cmp__cost span{font-size:13px;color:#cc9a9a;display:block;margin-top:4px}
.s10-cmp__tags{margin-top:16px;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;color:#ff8a8a}
.s10-cmp__tags--good{color:var(--green-deep)}
.s10-cmp__cols{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.s10-access .vp-label{display:block;margin-bottom:10px;color:var(--green-deep)}
.s10-access ul{display:flex;flex-direction:column;gap:7px}
.s10-access li{position:relative;padding-left:18px;font-size:14px;color:var(--paper-ink-2)}
.s10-access li::before{content:"▸";position:absolute;left:0;top:2px;color:var(--green-deep);font-size:10px}
@media (max-width:820px){.s10-compare{grid-template-columns:1fr}}
@media (max-width:520px){.s10-cmp__cols{grid-template-columns:1fr}}

.s10-feat{margin-top:clamp(40px,5vw,64px)}
.s10-feat__lbl{display:block;text-align:center;margin-bottom:22px;color:var(--green-deep)}
.s10-feat__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.s10-fcard{position:relative;margin:0;border-radius:var(--r);overflow:hidden;border:1px solid var(--paper-line);background:#0c100e;aspect-ratio:3/4;
  transition:transform var(--dur-ui) var(--ease-out),box-shadow var(--dur-ui) ease}
@media (hover:hover){.s10-fcard:hover{transform:translateY(-5px);box-shadow:0 22px 44px -22px rgba(5,5,5,.42)}}
.s10-fcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9}
.s10-fcard::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 34%,rgba(0,0,0,.86))}
.s10-fcard__n{position:absolute;top:10px;left:10px;z-index:2;width:24px;height:24px;border-radius:50%;background:var(--green-deep);color:#fff;font-family:var(--font-mono);font-size:11px;display:grid;place-items:center}
.s10-fcard figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:14px 12px 12px;color:#fff}
.s10-fcard strong{display:block;font-family:var(--font-display);font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.01em;line-height:1.06}
.s10-fcard em{font-style:normal;font-size:12px;color:rgba(255,255,255,.72);display:block;margin-top:4px}
@media (max-width:900px){.s10-feat__grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:520px){.s10-feat__grid{grid-template-columns:1fr 1fr}}

.s10-statement{margin-top:clamp(48px,6vw,80px);text-align:center;font-family:var(--font-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(26px,5vw,58px);line-height:1.03;letter-spacing:.002em;color:var(--paper-ink)}

/* =====================================================================
   SECTION 12 · THE CONTENT ENGINE™ — acquisition · vault · transformation
   ===================================================================== */
.s12-amb{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 60% 50% at 50% 28%,rgba(10,138,79,.06),transparent 70%)}
.s12-engine{display:grid;grid-template-columns:.92fr 1.34fr .92fr;gap:clamp(18px,2.2vw,40px);align-items:center;margin-top:clamp(22px,3vw,44px)}
@media (max-width:1080px){.s12-engine{grid-template-columns:1fr 1fr}.s12-pipe{grid-column:1/-1}}
@media (max-width:720px){.s12-engine{grid-template-columns:1fr}}

/* acquisition radial network */
.s12-net{display:flex;flex-direction:column;align-items:center;gap:16px}
.s12-net > .vp-label{color:var(--green-deep)}
.s12-net__stage{position:relative;width:100%;max-width:330px;aspect-ratio:1}
.s12-net__links{position:absolute;inset:0;width:100%;height:100%;z-index:0;overflow:visible}
.s12-net__links line{stroke:var(--paper-line-green);stroke-width:1.4;stroke-dasharray:3 5;animation:s12flow 2.6s linear infinite}
@keyframes s12flow{to{stroke-dashoffset:16}}
.s12-net__hub{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--green-deep);color:#fff;box-shadow:0 0 30px -6px rgba(10,138,79,.6)}
.s12-node{position:absolute;top:50%;left:50%;z-index:2;display:flex;flex-direction:column;align-items:center;gap:5px;width:54px;text-decoration:none;
  transform:translate(-50%,-50%) rotate(var(--a)) translateY(-116px) rotate(calc(-1 * var(--a)));transition:transform var(--dur-ui) var(--ease-snap)}
.s12-node img{width:40px;height:40px;border-radius:50%;object-fit:cover;border:1.5px solid var(--paper-line);box-shadow:0 6px 16px -6px rgba(5,5,5,.3);animation:s12np 3.4s ease-in-out infinite}
.s12-node:nth-child(4) img{animation-delay:.3s}.s12-node:nth-child(5) img{animation-delay:.6s}.s12-node:nth-child(6) img{animation-delay:.9s}.s12-node:nth-child(7) img{animation-delay:1.2s}.s12-node:nth-child(8) img{animation-delay:1.5s}.s12-node:nth-child(9) img{animation-delay:1.8s}.s12-node:nth-child(10) img{animation-delay:2.1s}.s12-node:nth-child(11) img{animation-delay:2.4s}
@keyframes s12np{0%,100%{box-shadow:0 6px 16px -6px rgba(5,5,5,.3)}50%{box-shadow:0 6px 20px -5px rgba(10,138,79,.5)}}
.s12-node em{font-style:normal;font-family:var(--font-mono);font-size:11px;color:var(--paper-ink-3);white-space:nowrap}
@media (hover:hover){.s12-node:hover img{border-color:var(--green-deep)}.s12-node:hover{transform:translate(-50%,-50%) rotate(var(--a)) translateY(-122px) rotate(calc(-1 * var(--a)))}}

/* the 3D content vault */
.s12-vaultwrap{display:flex;flex-direction:column;align-items:center;gap:16px}
.s12-vaultwrap__lbl{color:var(--green-deep)}
.s12-vault{position:relative;width:100%;max-width:420px;aspect-ratio:5/4;perspective:1500px;transform-style:preserve-3d}
.s12-vault__body{position:absolute;inset:0;border-radius:24px;overflow:hidden;background:linear-gradient(145deg,#10201a,#06100b);
  border:1px solid var(--void-line-green);box-shadow:0 50px 90px -50px #000,inset 0 0 60px -18px rgba(39,245,140,.28)}
.s12-vault__glow{position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 52% 46%,rgba(39,245,140,.24),transparent 64%);animation:s12glow 5s ease-in-out infinite}
@keyframes s12glow{0%,100%{opacity:.8}50%{opacity:1}}
.s12-vault__inner{position:absolute;inset:14px;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;gap:6px;transform:perspective(720px) rotateX(7deg)}
.s12-tile{position:relative;border-radius:7px;overflow:hidden;border:1px solid rgba(39,245,140,.2);background:#0c100e;
  opacity:0;transform:translateY(8px) scale(.96);transition:border-color var(--dur-ui) ease,box-shadow var(--dur-ui) ease,transform var(--dur-ui) ease}
.is-revealed .s12-tile{animation:s12tile .5s var(--ease-out) forwards;animation-delay:calc(var(--i)*55ms + .35s)}
.s12-tile img{width:100%;height:100%;object-fit:cover;opacity:.82}
.s12-tile b{position:absolute;left:0;right:0;bottom:0;font-family:var(--font-mono);font-size:8px;letter-spacing:.01em;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.86));padding:9px 3px 3px;text-align:center}
@keyframes s12tile{to{opacity:1;transform:none}}
@media (hover:hover){.s12-tile:hover{border-color:var(--green);box-shadow:0 0 16px -2px var(--green-glow);transform:translateY(-2px) scale(1.04);z-index:2}.s12-tile:hover img{opacity:1}}
.s12-vault__door{position:absolute;top:0;bottom:0;left:0;width:38%;z-index:3;border-radius:22px 10px 10px 22px;
  background:linear-gradient(118deg,#21342a,#0a140e);border:1px solid var(--void-line-green);transform-origin:left center;
  transform:rotateY(-36deg);box-shadow:26px 0 60px -28px #000;display:grid;place-items:center;backface-visibility:hidden;animation:s12door 7s ease-in-out infinite}
@keyframes s12door{0%,100%{transform:rotateY(-36deg)}50%{transform:rotateY(-44deg)}}
.s12-vault__door::before{content:"";position:absolute;inset:9px;border-radius:18px 4px 4px 18px;border:1px solid rgba(39,245,140,.16)}
.s12-lock{position:relative;width:48%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#16261d,#0a140e);border:2px solid rgba(39,245,140,.32);display:grid;place-items:center;box-shadow:inset 0 0 22px rgba(0,0,0,.6)}
.s12-lock i{position:absolute;width:72%;height:72%;border-radius:50%;border:2px dashed rgba(39,245,140,.32);animation:vpSpin 14s linear infinite}
.s12-lock b{width:32%;aspect-ratio:1;border-radius:50%;background:var(--green-deep);box-shadow:0 0 14px var(--green-glow)}
.s12-vault__stat{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}
.s12-vault__stat .vp-num{font-family:var(--font-display);font-weight:700;font-size:clamp(28px,3.6vw,40px);color:var(--green-deep);font-variant-numeric:tabular-nums;filter:drop-shadow(0 0 14px var(--green-glow))}
.s12-vault__stat em{font-style:normal;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--paper-ink-3)}

/* transformation pipeline */
.s12-pipe > .vp-label{color:var(--green-deep);display:block;margin-bottom:16px}
.s12-pipe__list{position:relative;display:flex;flex-direction:column;gap:9px;padding-left:6px}
.s12-pipe__list::before{content:"";position:absolute;left:10px;top:14px;bottom:14px;width:2px;background:linear-gradient(var(--green-deep-2),rgba(10,138,79,.14))}
.s12-pipe__list li{position:relative;padding:11px 14px 11px 30px;border-radius:10px;background:var(--paper-panel);border:1px solid var(--paper-line);font-family:var(--font-mono);font-size:14px;color:var(--paper-ink-2)}
.s12-pipe__dot{position:absolute;left:4px;top:50%;transform:translateY(-50%);width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--green-deep-2);z-index:2}
.s12-pipe__list li.is-end{background:var(--green-deep);color:#fff;border-color:transparent;font-weight:600}
.s12-pipe__list li.is-end .s12-pipe__dot{background:#fff;border-color:#fff}
.s12-pipe__pulse{position:absolute;left:10px;top:6px;width:2px;height:34px;background:linear-gradient(var(--green),transparent);transform:translateX(-1px);z-index:1;animation:s12pd 3.2s linear infinite}
@keyframes s12pd{0%{top:6px;opacity:0}8%{opacity:1}92%{opacity:1}100%{top:calc(100% - 34px);opacity:0}}

/* campaign output ad cards */
.s12-out{margin-top:clamp(42px,5vw,68px)}
.s12-out__lbl{display:block;text-align:center;margin-bottom:20px;color:var(--green-deep)}
.s12-out__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.s12-ad{border-radius:var(--r);overflow:hidden;background:#fff;border:1px solid var(--paper-line);box-shadow:0 16px 40px -28px rgba(5,5,5,.3);transition:transform .3s var(--ease-out),box-shadow .3s ease}
@media (hover:hover){.s12-ad:hover{transform:translateY(-6px);box-shadow:0 28px 52px -26px rgba(5,5,5,.34),0 0 30px -20px var(--green-glow)}}
.s12-ad__media{position:relative;aspect-ratio:16/10;overflow:hidden}
.s12-ad__media img{width:100%;height:100%;object-fit:cover}
.s12-ad__tag{position:absolute;top:8px;left:8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.05em;color:#fff;background:rgba(0,0,0,.5);padding:3px 7px;border-radius:5px}
.s12-ad__body{padding:12px 14px}
.s12-ad__body strong{display:block;font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.01em;color:var(--paper-ink)}
.s12-ad__body span{font-size:13px;color:var(--paper-ink-3)}
@media (max-width:760px){.s12-out__grid{grid-template-columns:1fr 1fr}}

/* traditional vs engine */
.s12-vs{margin-top:clamp(42px,5vw,64px);display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:stretch}
.s12-vs__side{padding:22px;border-radius:var(--r-lg)}
.s12-vs__side--trad{background:linear-gradient(180deg,#1c1010,#140c0c);border:1px solid rgba(255,90,90,.26)}
.s12-vs__side--gc{background:linear-gradient(180deg,rgba(10,138,79,.1),var(--paper-panel));border:1px solid var(--paper-line-green)}
.s12-vs__side header{display:flex;align-items:center;gap:9px;font-family:var(--font-display);font-weight:700;font-size:clamp(15px,2vw,19px);text-transform:uppercase;margin-bottom:14px}
.s12-vs__side--trad header{color:#ff8a8a}.s12-vs__side--gc header{color:var(--green-deep)}
.s12-vs__x,.s12-vs__check{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:13px;flex:none}
.s12-vs__x{background:rgba(255,90,90,.16);color:#ff6b6b}.s12-vs__check{background:rgba(10,138,79,.16);color:var(--green-deep)}
.s12-vs__flow{display:flex;flex-direction:column;gap:8px;counter-reset:s}
.s12-vs__flow li{position:relative;padding:9px 12px 9px 32px;border-radius:9px;font-family:var(--font-mono);font-size:14px;counter-increment:s}
.s12-vs__flow li::before{content:counter(s);position:absolute;left:9px;top:50%;transform:translateY(-50%);font-size:10px;opacity:.7}
.s12-vs__side--trad .s12-vs__flow li{background:rgba(0,0,0,.22);color:#e0c8c8}
.s12-vs__flow--gc li{background:#fff;border:1px solid var(--paper-line);color:var(--paper-ink-2)}
.s12-vs__flow--gc li.is-win{background:var(--green-deep);color:#fff;border-color:transparent;font-weight:600}
.s12-vs__badge{align-self:center;font-family:var(--font-display);font-weight:700;font-size:20px;color:var(--green-deep)}
.s12-vs__out{grid-column:1/-1;text-align:center;margin-top:8px;font-family:var(--font-display);font-weight:700;text-transform:uppercase;font-size:clamp(16px,2.4vw,26px);letter-spacing:.002em;color:var(--paper-ink)}
@media (max-width:760px){.s12-vs{grid-template-columns:1fr}.s12-vs__badge{padding:6px 0}}

/* =====================================================================
   SECTION 13 · THE FULL PRODUCTION SYSTEM — cinematic
   ===================================================================== */
.s13-top{display:grid;grid-template-columns:1fr 1.12fr;gap:clamp(28px,4vw,64px);align-items:center;margin-bottom:clamp(48px,6vw,80px)}
.s13-title{font-size:clamp(34px,4.4vw,60px);line-height:1.06}
.s13-top__stat{margin-top:24px;display:flex;align-items:center;gap:14px;padding-top:18px;border-top:1px solid var(--void-line)}
.s13-top__stat .vp-num{font-family:var(--font-display);font-weight:700;font-size:clamp(26px,3.2vw,38px);color:var(--green);white-space:nowrap}
.s13-top__stat em{font-style:normal;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--void-ink-3);max-width:230px;line-height:1.4}
.s13-env{position:relative;margin:0;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:16/11;border:1px solid var(--void-line-green);
  box-shadow:0 50px 100px -52px #000,0 0 80px -52px var(--green-glow);transform-style:preserve-3d;transition:transform .3s var(--ease-out)}
.s13-env img,.s13-env video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.s13-env__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,8,6,.28),rgba(5,8,6,.55))}
.s13-fr{position:absolute;width:18px;height:18px;border:2px solid rgba(255,255,255,.5);z-index:3}
.s13-fr--tl{top:14px;left:14px;border-right:0;border-bottom:0}.s13-fr--tr{top:14px;right:14px;border-left:0;border-bottom:0}
.s13-fr--bl{bottom:14px;left:14px;border-right:0;border-top:0}.s13-fr--br{bottom:14px;right:14px;border-left:0;border-top:0}
.s13-env__rec{position:absolute;top:14px;left:38px;z-index:4;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:#fff;text-shadow:0 1px 3px #000}
.s13-env__rec i{width:7px;height:7px;border-radius:50%;background:#ff4d4d;box-shadow:0 0 6px #ff4d4d;animation:vpBlink 1.4s steps(1) infinite}
.s13-env__tc{position:absolute;top:14px;right:38px;z-index:4;font-family:var(--font-mono);font-size:10px;color:rgba(255,255,255,.78);text-shadow:0 1px 3px #000}
.s13-env .vp-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:4;width:60px;height:60px}
.s13-eq{position:absolute;z-index:5;display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:11px;letter-spacing:.03em;color:#fff;
  background:rgba(8,12,10,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--void-line-green);padding:7px 11px;border-radius:var(--r-pill);
  transform:translateZ(var(--dz,30px));box-shadow:0 12px 26px -14px #000}
.s13-eq i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green);animation:vpPulse 2.4s var(--ease-out) infinite}
@media (max-width:900px){.s13-top{grid-template-columns:1fr;gap:30px}.s13-eq{font-size:10px;padding:6px 9px}}

.s13-journey{margin-bottom:clamp(44px,5vw,72px)}
.s13-journey__lbl{display:block;text-align:center;margin-bottom:28px;color:var(--green)}
.s13-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.s13-stage{position:relative;padding:18px;border-radius:var(--r);background:rgba(12,15,14,.72);border:1px solid var(--void-line);overflow:hidden;
  transition:transform var(--dur-ui) var(--ease-out),border-color var(--dur-ui) ease,box-shadow var(--dur-ui) ease}
@media (hover:hover){.s13-stage:hover{transform:translateY(-6px);border-color:var(--void-line-green);box-shadow:0 28px 50px -28px #000,0 0 30px -18px var(--green-glow)}}
.s13-stage__no{font-family:var(--font-mono);font-size:13px;color:var(--green);letter-spacing:.1em}
.s13-stage__thumb{margin:10px 0 14px;border-radius:10px;overflow:hidden;aspect-ratio:16/10}
.s13-stage__thumb img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-ui) var(--ease-out)}
@media (hover:hover){.s13-stage:hover .s13-stage__thumb img{transform:scale(1.06)}}
.s13-stage h4{font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.02em;margin-bottom:10px;color:#fff}
.s13-stage ul li{font-size:14px;color:var(--void-ink-2);padding:4px 0 4px 14px;position:relative}
.s13-stage ul li::before{content:"";position:absolute;left:0;top:11px;width:4px;height:4px;border-radius:50%;background:var(--green)}
@media (max-width:1000px){.s13-stages{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.s13-stages{grid-template-columns:1fr}}

.s13-pay{padding:clamp(22px,3vw,38px);border-radius:var(--r-lg);background:rgba(12,15,14,.6);border:1px solid var(--void-line-green)}
.s13-pay__head{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:26px}
.s13-pay__head strong{display:block;font-family:var(--font-display);font-weight:700;font-size:18px;letter-spacing:.02em;color:#fff}
.s13-pay__head span{font-size:14px;color:var(--void-ink-3)}
.s13-eco{display:grid;grid-template-columns:repeat(8,1fr);gap:12px}
.s13-ecard{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:3/4;border:1px solid var(--void-line);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out);transition-delay:calc(var(--i)*60ms)}
.js .s13-ecard{opacity:0;transform:translateY(16px)}
.is-revealed .s13-ecard{opacity:1;transform:none}
.s13-ecard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.85}
.s13-ecard::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 38%,rgba(0,0,0,.86))}
.s13-ecard b{position:absolute;left:0;right:0;bottom:0;z-index:2;font-family:var(--font-mono);font-size:10px;letter-spacing:.02em;color:#fff;padding:10px 5px 7px;text-align:center;line-height:1.2}
@media (max-width:980px){.s13-eco{grid-template-columns:repeat(4,1fr)}}
@media (max-width:520px){.s13-eco{grid-template-columns:repeat(2,1fr)}}

/* =====================================================================
   SECTION 14 · CONTENT MULTIPLICATION ENGINE — Apple-clean (white)
   ===================================================================== */
.s14-flow{display:grid;grid-template-columns:.85fr .92fr 1.3fr;gap:clamp(20px,2.6vw,46px);align-items:center;margin-top:clamp(22px,3vw,46px)}
/* raw footage folders */
.s14-raw > .vp-label{color:var(--green-deep);display:block;margin-bottom:16px}
.s14-folders{display:flex;flex-direction:column}
.s14-folder{position:relative;display:flex;align-items:center;gap:11px;padding:13px 14px 13px 16px;margin-top:-5px;border-radius:11px;
  background:#fff;border:1px solid var(--paper-line);font-size:14px;color:var(--paper-ink-2);text-decoration:none;
  box-shadow:0 10px 22px -16px rgba(5,5,5,.35);transition:transform var(--dur-ui) var(--ease-snap),box-shadow var(--dur-ui) ease,border-color var(--dur-ui) ease;z-index:1}
.s14-folder:first-child{margin-top:0}
.s14-folder__ic{width:23px;height:17px;flex:none;border-radius:2px 4px 4px 4px;background:linear-gradient(var(--green-deep-2),var(--green-deep));position:relative}
.s14-folder__ic::before{content:"";position:absolute;top:-3px;left:0;width:10px;height:4px;border-radius:3px 3px 0 0;background:var(--green-deep)}
@media (hover:hover){.s14-folder:hover{transform:translateX(9px);border-color:var(--green-deep);box-shadow:0 16px 30px -14px rgba(10,138,79,.4);z-index:5}}

/* the multiplication engine (built processor) */
.s14-engine{position:relative;display:flex;flex-direction:column;align-items:center;max-width:270px;margin:0 auto;transform-style:preserve-3d}
.s14-engine__cap{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--paper-ink-3);margin-bottom:8px}
.s14-engine__intake{width:84%;padding:11px;text-align:center;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;color:var(--paper-ink-2);
  background:linear-gradient(#eef3f0,#e0e8e4);border:1px solid var(--paper-line);clip-path:polygon(0 0,100% 0,86% 100%,14% 100%)}
.s14-engine__core{position:relative;width:100%;border-radius:16px;overflow:hidden;padding:16px 14px;margin:-1px 0;
  background:linear-gradient(160deg,#f6faf8,#e7ede9);border:1px solid var(--paper-line);
  box-shadow:inset 0 2px 6px rgba(255,255,255,.9),inset 0 -12px 22px rgba(10,138,79,.07),0 32px 64px -36px rgba(5,5,5,.3)}
.s14-engine__light{position:absolute;left:0;right:0;top:-44px;height:44px;z-index:1;pointer-events:none;background:linear-gradient(rgba(39,245,140,.28),transparent);animation:s14light 3.6s linear infinite}
@keyframes s14light{0%{top:-44px;opacity:0}10%{opacity:1}90%{opacity:1}100%{top:100%;opacity:0}}
.s14-engine__steps{position:relative;z-index:2;display:flex;flex-direction:column;gap:8px}
.s14-engine__steps li{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:9px;background:#fff;border:1px solid var(--paper-line);font-family:var(--font-mono);font-size:13px;color:var(--paper-ink-2);animation:s14step 3.6s ease-in-out infinite}
.s14-engine__steps li span{width:8px;height:8px;border-radius:50%;background:var(--green-deep-2);flex:none}
.s14-engine__steps li:nth-child(2){animation-delay:.6s}.s14-engine__steps li:nth-child(3){animation-delay:1.2s}.s14-engine__steps li:nth-child(4){animation-delay:1.8s}.s14-engine__steps li:nth-child(5){animation-delay:2.4s}.s14-engine__steps li:nth-child(6){animation-delay:3s}
@keyframes s14step{0%,100%{border-color:var(--paper-line)}50%{border-color:var(--paper-line-green);box-shadow:0 0 14px -6px rgba(10,138,79,.4)}}
.s14-engine__out{width:84%;padding:13px;text-align:center;background:var(--green-deep);color:#fff;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;clip-path:polygon(14% 0,86% 0,100% 100%,0 100%)}
.s14-engine__out b{font-family:var(--font-display);font-weight:700;font-size:20px;margin-right:6px}

/* finished ecosystem grid */
.s14-eco > .vp-label{color:var(--green-deep);display:block;margin-bottom:16px}
.s14-eco__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.s14-eco__card{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:4/3;border:1px solid var(--paper-line);
  transition:opacity .5s var(--ease-out),transform .5s var(--ease-out),box-shadow var(--dur-ui) ease;transition-delay:calc(var(--i)*48ms)}
.js .s14-eco__card{opacity:0;transform:scale(.92) translateY(10px)}
.is-revealed .s14-eco__card{opacity:1;transform:none}
.s14-eco__card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9}
.s14-eco__card::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(0,0,0,.8))}
.s14-eco__card b{position:absolute;left:0;right:0;bottom:0;z-index:2;font-family:var(--font-mono);font-size:10px;color:#fff;padding:9px 4px 6px;text-align:center;line-height:1.15}
@media (hover:hover){.s14-eco__card:hover{transform:scale(1.07);box-shadow:0 16px 32px -14px rgba(5,5,5,.42);z-index:3;transition-delay:0s}}
@media (max-width:1000px){.s14-flow{grid-template-columns:1fr 1fr}.s14-eco{grid-column:1/-1}.s14-eco__grid{grid-template-columns:repeat(6,1fr)}}
@media (max-width:680px){.s14-flow{grid-template-columns:1fr}.s14-engine{max-width:300px}}
@media (max-width:520px){.s14-eco__grid{grid-template-columns:repeat(3,1fr)}}

/* contrast */
.s14-contrast{margin-top:clamp(42px,5vw,64px);display:grid;grid-template-columns:1fr 1fr;gap:18px}
.s14-c{padding:clamp(20px,2.6vw,30px);border-radius:var(--r-lg);text-align:center}
.s14-c--most{background:var(--paper-panel);border:1px solid var(--paper-line)}
.s14-c--gc{background:linear-gradient(160deg,rgba(10,138,79,.12),var(--paper-panel));border:1px solid var(--paper-line-green)}
.s14-c .vp-label{display:block;margin-bottom:14px}
.s14-c--most .vp-label{color:var(--paper-ink-3)}.s14-c--gc .vp-label{color:var(--green-deep)}
.s14-c__row{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}
.s14-c__row b{font-family:var(--font-display);font-weight:700;font-size:clamp(20px,2.6vw,30px);color:var(--paper-ink)}
.s14-c--most .s14-c__row b{color:var(--paper-ink-3)}
.s14-c__ar{font-style:normal;color:var(--green-deep);font-size:22px}
.s14-c__big{font-size:clamp(24px,3.4vw,42px)!important;color:var(--green-deep)!important;filter:drop-shadow(0 0 16px rgba(10,138,79,.22))}
@media (max-width:680px){.s14-contrast{grid-template-columns:1fr}}

/* =====================================================================
   SECTION 15 · FROM CONTENT TO CUSTOMERS — revenue engine (dark)
   ===================================================================== */
.s15 [data-ic="play"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E")}
.s15 [data-ic="ad"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 10v4a1 1 0 001 1h2l5 4V5L6 9H4a1 1 0 00-1 1zm14-3v10c1.7-.9 3-2.7 3-5s-1.3-4.1-3-5z'/%3E%3C/svg%3E")}
.s15 [data-ic="win"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 4h18a1 1 0 011 1v14a1 1 0 01-1 1H3a1 1 0 01-1-1V5a1 1 0 011-1zm1 5v9h16V9zm1.5-3a1 1 0 100 2 1 1 0 000-2z'/%3E%3C/svg%3E")}
.s15 [data-ic="crm"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4V1L8 5l4 4V6a6 6 0 11-6 6H4a8 8 0 108-8z'/%3E%3C/svg%3E")}
.s15 [data-ic="loop"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4V1L8 5l4 4V6a6 6 0 11-6 6H4a8 8 0 108-8z'/%3E%3C/svg%3E")}
.s15 [data-ic="cal"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2v2H5a2 2 0 00-2 2v13a2 2 0 002 2h14a2 2 0 002-2V6a2 2 0 00-2-2h-2V2h-2v2H9V2H7Zm12 7v10H5V9z'/%3E%3C/svg%3E")}
.s15 [data-ic="cash"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 6h18v12H3zM12 9a3 3 0 100 6 3 3 0 000-6z'/%3E%3C/svg%3E")}
.s15 [data-ic="target"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 100 20 10 10 0 000-20zm0 4a6 6 0 110 12 6 6 0 010-12zm0 4a2 2 0 100 4 2 2 0 000-4z'/%3E%3C/svg%3E")}
.s15 [data-ic="chart"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 13h2v8H3zM10 9h2v12h-2zM17 5h2v16h-2z'/%3E%3C/svg%3E")}
.s15 [data-ic="eye"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5C5 5 1 12 1 12s4 7 11 7 11-7 11-7-4-7-11-7Zm0 11a4 4 0 110-8 4 4 0 010 8Z'/%3E%3C/svg%3E")}
.s15 [data-ic="hand"]{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 100 20 10 10 0 000-20zm-1 14-4-4 1.4-1.4L11 13.2l4.6-4.6L17 10z'/%3E%3C/svg%3E")}

.s15-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:clamp(20px,2.6vw,36px) 0 clamp(40px,5vw,64px)}
.s15-kpi{padding:16px;border-radius:var(--r);background:var(--void-panel);border:1px solid var(--void-line);transition:border-color var(--dur-ui) ease,transform var(--dur-ui) var(--ease-out)}
@media (hover:hover){.s15-kpi:hover{border-color:var(--void-line-green);transform:translateY(-3px)}}
.s15-spark{width:100%;height:30px;margin-bottom:10px;color:var(--green);overflow:visible;display:block}
.s15-spark polyline{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.3s var(--ease-out);filter:drop-shadow(0 0 4px var(--green-glow))}
.is-revealed .s15-spark polyline{stroke-dashoffset:0}
.s15-spark--down{color:var(--green-bright)}
.s15-kpi__n{font-family:var(--font-display);font-weight:700;font-size:clamp(22px,2.5vw,30px);color:#fff;display:block;font-variant-numeric:tabular-nums}
.s15-kpi__l{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--void-ink-3);display:block;margin-top:6px}
.s15-kpi__d{font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--green);margin-top:5px;display:inline-block}
.s15-kpi__d--down{color:var(--green-bright)}
@media (max-width:900px){.s15-kpis{grid-template-columns:repeat(2,1fr)}}

.s15-head{margin:0 auto clamp(36px,4vw,56px)}
.s15-title{font-size:clamp(40px,6vw,82px);line-height:1.05}

.s15-engine{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:clamp(48px,6vw,80px)}
.s15-engine__rail{position:absolute;top:56px;left:0;width:100%;height:16px;z-index:0}
.s15-pillar{position:relative;z-index:1;padding:18px 14px;border-radius:var(--r);background:rgba(12,15,14,.82);border:1px solid var(--void-line);text-align:center;
  transition:transform var(--dur-ui) var(--ease-out),border-color var(--dur-ui) ease,box-shadow var(--dur-ui) ease;transform-style:preserve-3d}
@media (hover:hover){.s15-pillar:hover{border-color:var(--void-line-green);box-shadow:0 26px 50px -28px #000,0 0 34px -16px var(--green-glow)}}
.s15-pillar__no{font-family:var(--font-mono);font-size:11px;color:var(--green);letter-spacing:.1em}
.s15-pillar__ic{width:48px;height:48px;border-radius:14px;margin:10px auto 12px;display:block;background:rgba(39,245,140,.1);border:1px solid var(--void-line-green);position:relative}
.s15-pillar__ic::before{content:"";position:absolute;inset:0;margin:auto;width:24px;height:24px;background:var(--green);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.s15-pillar h4{font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.02em;color:#fff;margin-bottom:10px}
.s15-pillar__chips{display:flex;flex-direction:column;gap:5px}
.s15-pillar__chips span{font-family:var(--font-mono);font-size:11px;color:var(--void-ink-2);padding:4px 8px;border-radius:var(--r-pill);background:rgba(255,255,255,.04);border:1px solid var(--void-line)}
@media (max-width:900px){.s15-engine{grid-template-columns:repeat(3,1fr);gap:12px}.s15-engine__rail{display:none}}
@media (max-width:520px){.s15-engine{grid-template-columns:1fr 1fr}}

.s15-statement{text-align:center;margin:0 auto clamp(40px,5vw,64px);max-width:1040px;font-family:var(--font-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(23px,4vw,50px);line-height:1.08;letter-spacing:.002em;color:#fff}
.s15-statement__mute{color:var(--void-ink-3)}
.s15-statement__big{font-size:1.08em}

.s15-values{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.s15-val{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:13px;letter-spacing:.03em;color:var(--void-ink-2);
  padding:10px 16px;border-radius:var(--r-pill);background:var(--void-panel);border:1px solid var(--void-line);transition:color var(--dur-ui) ease,border-color var(--dur-ui) ease,transform var(--dur-ui) var(--ease-snap)}
.s15-val::before{content:"";width:16px;height:16px;flex:none;background:var(--green);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
@media (hover:hover){.s15-val:hover{color:#fff;border-color:var(--void-line-green);transform:translateY(-2px)}}

/* ── SECTION 15 · cinematic revenue-engine hero — full-bleed background video ──
   Replaces the former KPI strip + headline + 6-pillar engine. Video is kept at
   full original brightness (no filter); only a ≤.10 alpha scrim hugs the lower
   band for text legibility, so the centre stays 100% visible. Scoped entirely to
   .s15-hero — nothing below "Real client reporting…" is affected. */
.s15-hero{
  position:relative;z-index:2;          /* sit above the section's own edge gradients so the video is never darkened */
  width:100%;height:clamp(600px,63vw,940px);   /* desktop ≈ 860–940px; responsive below */
  overflow:hidden;
}
.s15-hero__video{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:center;display:block;z-index:0;
  /* intentionally NO filter — preserve original brightness / contrast / colour */
}
.s15-hero__scrim{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(to top,rgba(0,0,0,.10) 0%,rgba(0,0,0,0) 30%);
}
.s15-hero__inner{
  position:absolute;inset:0;z-index:2;pointer-events:none;
  max-width:var(--max);margin:0 auto;
  /* clear the site's persistent 103px fixed header (.gcmnav) so the eyebrow is never tucked behind it */
  padding:clamp(116px,8.5vw,134px) var(--gutter) clamp(28px,3.6vw,52px);
  display:grid;grid-template-rows:auto 1fr auto;   /* eyebrow top · clear centre · heading+line bottom */
}
.s15-hero__eyebrow{
  grid-row:1;align-self:start;justify-self:start;margin:0;
  font-family:var(--font-mono);font-size:clamp(11px,.95vw,13px);font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;
  color:rgba(245,251,247,.6);text-shadow:0 1px 16px rgba(0,0,0,.55);
}
.s15-hero__bottom{
  grid-row:3;display:flex;align-items:flex-end;justify-content:space-between;
  gap:clamp(20px,4vw,64px);
}
.s15-hero__title{
  margin:0;font-family:var(--font-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(40px,6.4vw,88px);line-height:1.04;letter-spacing:.002em;
  color:#fff;text-shadow:0 2px 34px rgba(0,0,0,.4);
}
.s15-hero__title .vp-word{color:var(--green)}
.s15-hero__sub{
  margin:0 0 6px;max-width:34ch;text-align:right;
  font-family:var(--font-body);font-size:clamp(13px,1.05vw,15px);font-weight:400;line-height:1.5;
  color:rgba(245,251,247,.72);text-shadow:0 1px 14px rgba(0,0,0,.6);
}
@media (max-width:768px){
  .s15-hero{height:clamp(440px,92vw,620px)}
  .s15-hero__inner{padding-top:clamp(22px,6vw,40px)}   /* mobile header is a corner burger — eyebrow needs no clearance */
  .s15-hero__bottom{flex-direction:column;align-items:flex-start;gap:14px}
  .s15-hero__sub{text-align:left;max-width:40ch;margin-bottom:0}
}
/* subtle band-level fade-in on enter / fade-out on leave — pure CSS, no JS.
   Degrades to always-visible where scroll timelines aren't supported. */
@media (prefers-reduced-motion:no-preference){
  @supports (animation-timeline:view()){
    .s15-hero{animation:s15HeroFade linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
    @keyframes s15HeroFade{0%{opacity:.35}16%{opacity:1}84%{opacity:1}100%{opacity:.35}}
  }
}

/* =====================================================================
   SECTION 16 · LET'S BUILD YOUR CONTENT MACHINE — the finale
   ===================================================================== */
.s16-beam{position:absolute;top:0;left:50%;width:640px;max-width:100%;height:100%;transform:translateX(-50%);pointer-events:none;
  background:radial-gradient(ellipse 42% 55% at 50% 0%,rgba(39,245,140,.12),transparent 70%)}
.s16-head{text-align:center;max-width:900px;margin:0 auto clamp(38px,5vw,60px)}
.s16-title{font-size:clamp(38px,6.6vw,90px);line-height:1.04;letter-spacing:-.004em}
.s16 .vp-lead{margin:22px auto 0}

/* command center */
.s16-cc{position:relative;max-width:920px;margin:0 auto clamp(44px,5vw,72px);border-radius:var(--r-lg);overflow:hidden;
  background:linear-gradient(180deg,rgba(14,20,17,.92),rgba(6,10,8,.96));border:1px solid var(--void-line-green);
  box-shadow:0 60px 120px -60px #000,0 0 100px -62px var(--green-glow);transform-style:preserve-3d;transition:transform .3s var(--ease-out)}
.s16-cc__bar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--void-line);background:rgba(0,0,0,.3);font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--void-ink-3)}
.s16-cc__dot{width:9px;height:9px;border-radius:50%;background:#3a423e}
.s16-cc__dot:first-child{background:#ff5f57}.s16-cc__dot:nth-child(2){background:#febc2e}.s16-cc__dot:nth-child(3){background:#28c840}
.s16-cc__bar em{font-style:normal;margin-left:8px;color:var(--void-ink-2)}
.s16-cc__bar b{margin-left:auto;color:var(--green);font-weight:500}
.s16-cc__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:clamp(14px,2vw,22px);transform-style:preserve-3d}
.s16-mod{position:relative;border-radius:12px;overflow:hidden;min-height:98px;padding:14px;display:flex;flex-direction:column;justify-content:flex-end;gap:3px;
  background:rgba(255,255,255,.03);border:1px solid var(--void-line);transform:translateZ(calc(var(--dz,20px) * .35));transition:transform var(--dur-ui) var(--ease-out),border-color var(--dur-ui) ease}
@media (hover:hover){.s16-mod:hover{border-color:var(--void-line-green)}}
.s16-mod--media{padding:0}
.s16-mod--media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.85}
.s16-mod--media::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 38%,rgba(0,0,0,.82))}
.s16-mod--media b{position:relative;z-index:2;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;color:#fff;padding:12px}
.s16-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;width:30px;height:30px;border-radius:50%;background:var(--green);color:#04140C;display:grid;place-items:center;font-size:10px;font-style:normal;padding-left:2px}
.s16-mod em{font-style:normal;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;color:var(--void-ink-3)}
.s16-mono{font-family:var(--font-mono);font-size:13px;color:#fff}
.s16-mono b{color:var(--green);font-weight:600}
.s16-big{font-family:var(--font-display);font-weight:700;font-size:clamp(24px,3vw,34px);color:#fff;line-height:1}
.s16-mod span:not(.s16-bar){font-size:11px;color:var(--void-ink-3)}
.s16-bar{height:5px;border-radius:3px;background:var(--void-line);overflow:hidden;margin-top:5px}
.s16-bar i{display:block;height:100%;width:var(--w);background:linear-gradient(90deg,var(--green-deep),var(--green));border-radius:3px}
.s16-mod--hub{align-items:center;justify-content:center;text-align:center;gap:5px;color:var(--green);background:radial-gradient(circle,rgba(39,245,140,.16),rgba(8,12,10,.6));border-color:var(--void-line-green)}
.s16-mod--hub b{font-family:var(--font-display);font-weight:700;font-size:13px;color:#fff}
.s16-mod--hub em{font-size:9px}
.s16-mod--note{border-color:var(--void-line-green)}
.s16-mod--note strong{font-family:var(--font-mono);font-size:13px;color:#fff}
.s16-ping{position:absolute;top:14px;right:14px;width:8px;height:8px;border-radius:50%;background:var(--green);animation:s16ping 2s ease-out infinite}
@keyframes s16ping{0%{box-shadow:0 0 0 0 rgba(39,245,140,.5)}100%{box-shadow:0 0 0 13px rgba(39,245,140,0)}}
.s16-grad{-webkit-background-clip:text;background-clip:text;color:transparent;background-image:linear-gradient(120deg,#bff6d8,var(--green) 50%,var(--green-bright))}
.s16-spark{width:100%;height:24px;margin-top:5px;color:var(--green);display:block}
.s16-spark polyline{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.4s var(--ease-out);filter:drop-shadow(0 0 4px var(--green-glow))}
.is-revealed .s16-spark polyline{stroke-dashoffset:0}
.s16-cc__foot{padding:12px 16px;border-top:1px solid var(--void-line);background:rgba(0,0,0,.3);text-align:center;font-family:var(--font-mono);font-size:11px;letter-spacing:.05em;color:var(--void-ink-3)}
.s16-cc__foot b{color:#fff}
.s16-stars{color:var(--green);letter-spacing:1px}
@media (max-width:680px){.s16-cc__grid{grid-template-columns:1fr 1fr}}
@media (max-width:440px){.s16-cc__grid{grid-template-columns:1fr}}

/* option cards */
.s16-options{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;max-width:920px;margin:0 auto clamp(44px,5vw,68px)}
.s16-opt{position:relative;padding:28px;border-radius:var(--r-lg);background:linear-gradient(180deg,rgba(14,20,17,.9),rgba(8,12,10,.92));border:1px solid var(--void-line);overflow:hidden;
  transition:transform var(--dur-ui) var(--ease-out),box-shadow var(--dur-ui) ease}
.s16-opt::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(130deg,transparent 30%,var(--green),transparent 70%);background-size:280% 280%;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.45;animation:s16border 5s linear infinite}
@keyframes s16border{0%{background-position:0% 50%}100%{background-position:280% 50%}}
@media (hover:hover){.s16-opt:hover{transform:translateY(-6px);box-shadow:0 40px 80px -40px #000,0 0 50px -24px var(--green-glow)}.s16-opt:hover::before{opacity:1}}
.s16-opt__no{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--green)}
.s16-opt h3{font-family:var(--font-display);font-weight:700;font-size:clamp(19px,2.4vw,26px);text-transform:uppercase;letter-spacing:.01em;color:#fff;margin:8px 0 16px}
.s16-opt ul{display:flex;flex-direction:column;gap:9px;margin-bottom:18px}
.s16-opt li{position:relative;padding-left:24px;font-size:14px;color:var(--void-ink-2)}
.s16-opt li::before{content:"✓";position:absolute;left:0;color:var(--green);font-size:12px}
.s16-opt__tag{display:inline-block;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--green);padding:6px 12px;border-radius:var(--r-pill);background:rgba(39,245,140,.1);border:1px solid var(--void-line-green)}
.s16-opt--alt{border-color:var(--void-line-green)}
.s16-or{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:15px;background:var(--green);color:#04140C;box-shadow:0 0 30px -6px var(--green-glow);margin:0 auto;flex:none}
@media (max-width:760px){.s16-options{grid-template-columns:1fr}}

/* final CTA */
.s16-cta{text-align:center;margin-bottom:clamp(48px,6vw,80px)}
.s16-btn{position:relative;display:inline-flex;align-items:center;gap:12px;padding:clamp(18px,2.2vw,24px) clamp(28px,3.6vw,42px);border-radius:var(--r-pill);overflow:hidden;
  font-family:var(--font-mono);font-weight:600;font-size:clamp(14px,1.5vw,17px);letter-spacing:.06em;text-transform:uppercase;
  background:var(--green);color:#04140C;box-shadow:0 0 0 1px rgba(255,255,255,.12),0 20px 50px -16px var(--green-glow);
  transition:box-shadow var(--dur-ui) ease,transform var(--dur-micro) var(--ease-snap);will-change:transform}
.s16-btn:hover{box-shadow:0 0 0 1px rgba(255,255,255,.22),0 26px 64px -14px var(--green-glow)}
.s16-btn:active{transform:scale(.98)}
.s16-btn > span:not(.s16-btn__shine),.s16-btn svg{position:relative;z-index:2}
.s16-btn svg{transition:transform var(--dur-ui) var(--ease-snap)}
.s16-btn:hover svg{transform:translateX(4px)}
.s16-btn__shine{position:absolute;top:0;left:-60%;width:42%;height:100%;z-index:1;transform:skewX(-18deg);background:linear-gradient(110deg,transparent,rgba(255,255,255,.55),transparent);animation:s16shine 3.6s ease-in-out infinite}
@keyframes s16shine{0%{left:-60%}45%,100%{left:150%}}
.s16-cta__sub{margin-top:16px;font-family:var(--font-mono);font-size:13px;letter-spacing:.03em;color:var(--void-ink-3)}

/* final statement */
.s16-statement{text-align:center;font-family:var(--font-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(24px,4.2vw,52px);line-height:1.06;letter-spacing:.002em;color:#fff;max-width:1000px;margin:0 auto}

/* =====================================================================
   RESPONSIVE HEADER / NAV
   ===================================================================== */
@media (max-width:1199px){
  .vp-nav{position:fixed;inset:78px 0 auto;padding:0 var(--gutter);transform:translateY(-130%);transition:transform var(--dur-ui) var(--ease-out);pointer-events:none;display:block}
  .vp-nav.is-open{transform:none;pointer-events:auto}
  .vp-nav__pill{flex-direction:column;gap:0;border-radius:var(--r-lg);background:rgba(5,6,5,.96);backdrop-filter:blur(18px);padding:10px}
  .vp-nav__row{flex-direction:column;gap:0;width:100%;align-items:stretch}
  .vp-nav__pill a{padding:14px 18px;font-size:16px}
  .vp-header__cta{display:none}
  .vp-burger{display:flex}
}

/* =====================================================================
   REDUCED MOTION
   ===================================================================== */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .vp-reveal{opacity:1!important;transform:none!important;filter:none!important}
  .vp-current__line{animation:none;stroke-dashoffset:0}
  .vp-marquee__row{animation:none}
  .vp-orb{animation:none}
}

/* touch: drop hover-only transforms */
@media (hover:none){
  .vp-filmcard:hover,.vp-mstat:hover,.vp-cluster:hover,.vp-s8:hover,.vp-kpi:hover{transform:none}
}

/* perf: skip painting offscreen sections (hero + showcase exempt).
   #vp-showcase is exempt because content-visibility:auto STALLS the loading of
   its YouTube thumbnail <img>s (they hang without erroring); its hidden panels
   are display:none anyway, so only ~8 cards ever render. */
.vp-sec:not(.vp-hero):not(.vp-showcase){content-visibility:auto;contain-intrinsic-size:auto 800px}

/* perf: pause decorative animations on sections far from the viewport.
   Only CSS `animation` (infinite glows/pulses/marquees) is affected — the
   reveal/counter system is transition + rAF based, so it is untouched. The
   .is-near flag is toggled by an IntersectionObserver in app.js; the rule is
   gated on .js so a no-JS visitor keeps every animation running. */
.js .vp-sec:not(.is-near),
.js .vp-sec:not(.is-near) *,
.js .vp-sec:not(.is-near) *::before,
.js .vp-sec:not(.is-near) *::after{animation-play-state:paused!important}

/* =====================================================================
   INDUSTRY VIDEO SHOWCASE  (#vp-showcase)  — dark / .vp-cinema
   Lite-embed: lazy YouTube thumbnails -> click opens a shared lightbox
   (iframe injected on demand, removed on close). 12 industry tabs.
   ===================================================================== */
/* NOTE: the class name ".vp-showcase" already exists (line ~791) as an unrelated
   bento-grid component (display:grid). This section happens to reuse the class, so we
   neutralise that grid via the #id (specificity 1,0,0 > 0,1,0). The other .vp-showcase
   rules (figure/figcaption/.vp-play) don't match anything here, so this is sufficient. */
#vp-showcase{display:block;margin:0}
.vp-showcase .vp-head{max-width:940px;margin-left:auto;margin-right:auto}
.vp-showcase__title{font-size:clamp(24px,3.4vw,44px);line-height:1.04}

/* ---- industry tabs ---- */
.vp-show__tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;
  max-width:1040px;margin:clamp(28px,4vw,46px) auto 0}
.vp-show__tab{font-family:var(--font-mono);font-size:13px;font-weight:600;letter-spacing:.04em;
  text-transform:uppercase;color:var(--void-ink-2);background:rgba(255,255,255,.045);
  border:1px solid var(--void-line);padding:10px 16px;border-radius:var(--r-pill);
  cursor:pointer;white-space:nowrap;line-height:1;
  transition:color var(--dur-ui) ease,background var(--dur-ui) ease,border-color var(--dur-ui) ease,
    transform var(--dur-micro) var(--ease-snap)}
.vp-show__tab:hover{color:var(--void-ink);border-color:var(--green-deep);background:rgba(39,245,140,.09)}
.vp-show__tab.is-active{color:#04140C;background:var(--green);border-color:var(--green);
  box-shadow:0 8px 24px -10px var(--green-glow)}
.vp-show__tab:active{transform:scale(.97)}
.vp-show__tab:focus-visible{outline:2px solid var(--green);outline-offset:2px}

/* ---- panels ---- */
.vp-show__panels{margin-top:clamp(26px,3.4vw,40px)}
.vp-show__panel[hidden]{display:none}
.vp-show__bar{display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--void-line)}
.vp-show__name{font-family:var(--font-display);font-weight:700;font-size:clamp(16px,2vw,22px);
  text-transform:uppercase;letter-spacing:.01em;color:var(--void-ink)}
.vp-show__count{font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;color:var(--green);white-space:nowrap}

/* ---- video grid + cards ---- */
.vp-show__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.4vw,20px)}
.vp-vcard{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;
  text-align:left;position:relative;border-radius:var(--r-lg)}
.vp-vcard__media{position:relative;display:block;aspect-ratio:16/9;border-radius:var(--r-lg);
  overflow:hidden;border:1px solid var(--void-line);background:#0a0d0c;
  box-shadow:0 14px 34px -22px rgba(0,0,0,.75);
  transition:transform var(--dur-ui) var(--ease-out),box-shadow var(--dur-ui) ease,border-color var(--dur-ui) ease}
.vp-vcard__thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .55s var(--ease-out)}
.vp-vcard__media::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(4,7,6,.05) 50%,rgba(4,7,6,.55))}
.vp-vcard__play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.9);z-index:2;
  width:54px;height:54px;display:grid;place-items:center;border-radius:50%;color:var(--green);
  background:rgba(8,12,10,.5);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  box-shadow:0 0 0 1px rgba(255,255,255,.18),0 12px 30px -8px rgba(0,0,0,.7);
  transition:transform var(--dur-ui) var(--ease-snap),background var(--dur-ui) ease,color var(--dur-ui) ease}
.vp-vcard__play svg{margin-left:2px}
.vp-vcard:focus-visible{outline:none}
.vp-vcard:focus-visible .vp-vcard__media{border-color:var(--green);box-shadow:0 0 0 2px var(--green)}
@media (hover:hover){
  .vp-vcard:hover .vp-vcard__media{transform:translateY(-4px);border-color:var(--green-deep);
    box-shadow:0 24px 52px -22px var(--green-glow),0 0 0 1px rgba(39,245,140,.28)}
  .vp-vcard:hover .vp-vcard__thumb{transform:scale(1.06)}
  .vp-vcard:hover .vp-vcard__play{transform:translate(-50%,-50%) scale(1);background:var(--green);
    color:#04140C;box-shadow:0 0 0 1px rgba(255,255,255,.32),0 16px 42px -10px var(--green-glow)}
}

/* ---- lightbox (JS moves it to <body>; fixed to viewport) ---- */
.vp-vbox{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;
  padding:clamp(16px,4vw,48px)}
.vp-vbox.is-open{display:flex}
.vp-vbox__backdrop{position:absolute;inset:0;background:rgba(2,4,3,.84);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.vp-vbox__inner{position:relative;z-index:2;width:min(100%,980px)}
.vp-vbox__frame{position:relative;aspect-ratio:16/9;border-radius:var(--r-lg);overflow:hidden;background:#000;
  border:1px solid var(--void-line);
  box-shadow:0 40px 120px -30px rgba(0,0,0,.9),0 0 0 1px rgba(39,245,140,.12)}
.vp-vbox__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vp-vbox__close{position:absolute;top:-16px;right:-16px;width:44px;height:44px;border-radius:50%;border:0;
  cursor:pointer;display:grid;place-items:center;background:var(--green);color:#04140C;
  box-shadow:0 10px 30px -8px var(--green-glow);transition:transform var(--dur-micro) var(--ease-snap)}
.vp-vbox__close:hover{transform:scale(1.08) rotate(90deg)}
.vp-vbox__close:focus-visible{outline:2px solid #fff;outline-offset:2px}

/* ---- responsive ---- */
@media (max-width:1100px){.vp-show__grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){
  .vp-show__tabs{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding-bottom:8px;
    scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-left:calc(var(--gutter)*-1);
    margin-right:calc(var(--gutter)*-1);padding-left:var(--gutter);padding-right:var(--gutter)}
  .vp-show__tabs::-webkit-scrollbar{display:none}
  .vp-show__grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:430px){.vp-show__grid{gap:10px}}
@media (max-width:560px){.vp-vbox__close{top:-50px;right:0}}

/* The Elementor global kit styles ".elementor-kit-4 button" (specificity 0,1,1) — a brand
   green button (bg #27F58C, padding 14px 32px) that outranks the single-class component
   rules above and turns every tab green + collapses the cards. Re-assert the showcase
   button looks at higher specificity (.vp-showcase / .vp-show__grid / .vp-vbox => 0,2,0+).
   Harmless in the standalone build (no kit there); decisive on the WordPress page. */
.vp-showcase .vp-show__tab{background:rgba(255,255,255,.045);color:var(--void-ink-2);
  padding:10px 16px;border-radius:var(--r-pill);font-family:var(--font-mono);font-size:13px;width:auto}
.vp-showcase .vp-show__tab:hover{background:rgba(39,245,140,.09);color:var(--void-ink)}
.vp-showcase .vp-show__tab.is-active{background:var(--green);color:#04140C}
.vp-showcase .vp-show__grid .vp-vcard{background:none;color:inherit;padding:0;width:100%;border:0}
.vp-vbox .vp-vbox__close{background:var(--green);color:#04140C;padding:0;width:44px;height:44px;border-radius:50%}

/* =====================================================================
   VISUAL UPGRADE — real footage + real client logos (structure unchanged)
   ===================================================================== */
/* hero reel: real production footage loop behind the camcorder HUD */
.vp-reel__vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:1}
/* trusted-by strip: real client colour logos on premium light chips */
.vp-marquee__row span.vp-trust__logo{display:inline-flex;align-items:center;justify-content:center;
  height:66px;min-width:172px;padding:0 28px;background:#fff;border-radius:14px;font-size:0;
  box-shadow:0 10px 26px -14px rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,255,255,.7);
  transition:transform var(--dur-ui) var(--ease-out),box-shadow var(--dur-ui) ease}
.vp-marquee__row span.vp-trust__logo:hover{transform:translateY(-2px);
  box-shadow:0 16px 34px -14px rgba(39,245,140,.4),inset 0 0 0 1px rgba(39,245,140,.5)}
.vp-trust__logo img{height:46px;width:auto;max-width:208px;object-fit:contain;display:block}

/* real, full-colour platform logos — replace the monochrome icon masks with the
   official marks (Facebook / Instagram / TikTok / YouTube / Google). The generic
   "web" node keeps its globe glyph. */
.s6 [data-brand]:not([data-brand="web"])::before,
.s9 [data-brand]:not([data-brand="web"])::before{
  -webkit-mask:none!important;mask:none!important;background-color:transparent!important;
  background-repeat:no-repeat;background-position:center;background-size:contain;width:26px;height:26px}
.s6 [data-brand="fb"]::before,.s9 [data-brand="fb"]::before{background-image:url(assets/logos/platforms/facebook.svg)}
.s6 [data-brand="ig"]::before,.s9 [data-brand="ig"]::before{background-image:url(assets/logos/platforms/instagram.svg)}
.s6 [data-brand="tt"]::before,.s9 [data-brand="tt"]::before{background-image:url(assets/logos/platforms/tiktok.svg)}
.s6 [data-brand="yt"]::before,.s9 [data-brand="yt"]::before{background-image:url(assets/logos/platforms/youtube.svg)}
.s6 [data-brand="sh"]::before{background-image:url(assets/logos/platforms/youtube.svg)}
.s6 [data-brand="gg"]::before{background-image:url(assets/logos/platforms/google.svg)}

/* hero: "built to perform on" platform chips */
.vp-hero__platforms{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:24px}
.vp-hero__plat-lbl{font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--void-ink-3);margin-right:4px}
.vp-platchip{width:36px;height:36px;display:inline-grid;place-items:center;background:#fff;border-radius:10px;
  box-shadow:0 8px 20px -10px rgba(0,0,0,.65),inset 0 0 0 1px rgba(255,255,255,.6);
  transition:transform var(--dur-ui) var(--ease-out),box-shadow var(--dur-ui) ease}
@media (hover:hover){.vp-platchip:hover{transform:translateY(-3px);box-shadow:0 14px 28px -12px rgba(39,245,140,.45)}}
.vp-platchip img{width:21px;height:21px;object-fit:contain;display:block}
/* hero reel: when the full commercial is launched, fade the camcorder HUD so native controls take over */
.vp-reel.is-playing .vp-hud{opacity:0;pointer-events:none;transition:opacity .45s var(--ease-out)}
.vp-reel.is-playing .vp-reel__vid{z-index:3}

/* ============================================================== */
/* HERO V2 · full-bleed cinematic header (commercial = background) */
/* ============================================================== */
#vp-hero.vp-hero{display:block;min-height:0;padding:0;overflow:visible}
/* scroll-pinned: the stage sticks while the copy fades across the pin's scroll room */
.vp-hero__pin{position:relative;height:180vh}
.vp-hero__stage{position:sticky;top:0;height:100vh;display:flex;align-items:center;
  overflow:hidden;isolation:isolate}
.vp-hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;background:#050505}
.vp-hero__scrim{position:absolute;inset:0;z-index:1;pointer-events:none;
  transition:opacity .9s cubic-bezier(.4,0,.2,1);
  background:
    linear-gradient(90deg, rgba(5,6,8,.93) 0%, rgba(5,6,8,.72) 30%, rgba(5,6,8,.3) 58%, rgba(5,6,8,.12) 78%, rgba(5,6,8,.5) 100%),
    linear-gradient(0deg, rgba(5,6,8,.86) 0%, rgba(5,6,8,.24) 26%, transparent 48%)}
.vp-hero__stage.is-clean .vp-hero__cue{opacity:0;transition:opacity .6s ease}
.vp-hero__inner{position:relative;z-index:2;width:100%}
.vp-hero__copy{max-width:720px;
  transition:opacity .9s cubic-bezier(.4,0,.2,1), transform .9s cubic-bezier(.4,0,.2,1), filter .9s ease;
  will-change:opacity,transform}
.vp-hero__copy.is-faded{opacity:0;transform:translateY(-16px);filter:blur(7px);pointer-events:none}
.vp-hero__copy .vp-title--hero{text-shadow:0 2px 44px rgba(0,0,0,.5)}
.vp-hero__copy .vp-lead{text-shadow:0 1px 20px rgba(0,0,0,.65)}

/* sound toggle (bottom-right glass pill) */
.vp-hero__sound{position:absolute;right:clamp(16px,3vw,46px);bottom:clamp(18px,3.5vw,46px);z-index:5;
  display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 16px;border-radius:999px;cursor:pointer;
  color:var(--void-ink,#F5FBF7);font:600 11px/1 var(--font-mono,monospace);letter-spacing:.16em;text-transform:uppercase;
  background:rgba(10,14,18,.5);border:1px solid rgba(245,251,247,.22);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  transition:background .25s ease,border-color .25s ease,transform .25s var(--ease-out)}
.vp-hero__sound:hover{background:rgba(39,245,140,.16);border-color:rgba(39,245,140,.5);transform:translateY(-1px)}
.vp-hero__sound.is-on{background:rgba(39,245,140,.18);border-color:rgba(39,245,140,.55)}
.vp-hero__sound svg{display:block}
.vp-hero__sound .vp-hero__sound-on{display:none}
.vp-hero__sound.is-on .vp-hero__sound-off{display:none}
.vp-hero__sound.is-on .vp-hero__sound-on{display:block}

/* scroll cue (bottom-center) */
.vp-hero__cue{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:3;
  display:flex;flex-direction:column;align-items:center;gap:7px;pointer-events:none;
  font:600 10px/1 var(--font-mono,monospace);letter-spacing:.32em;color:rgba(245,251,247,.55)}
.vp-hero__cue i{width:1px;height:30px;transform-origin:top;
  background:linear-gradient(rgba(39,245,140,.9),transparent);animation:vpHeroCue 1.8s ease-in-out infinite}
@keyframes vpHeroCue{0%,100%{transform:scaleY(.35);opacity:.35}50%{transform:scaleY(1);opacity:1}}

.vp-hero__proof{margin-top:clamp(46px,6vw,86px)}

@media (max-width:760px){
  .vp-hero__stage{align-items:flex-end;padding-bottom:104px}
  .vp-hero__copy{max-width:100%}
  .vp-hero__sound{height:38px;padding:0 12px}
  .vp-hero__sound .vp-hero__sound-lbl{display:none}
}
@media (prefers-reduced-motion:reduce){
  .vp-hero__cue i{animation:none}
  .vp-hero__copy{transition:opacity .45s ease}
  .vp-hero__copy.is-faded{filter:none;transform:none}
}

/* ── CONTACT LEAD FORM (#vp-contact) — premium glass panel over the finale's cinematic bg.
   Replaces the former "command center / option cards / book-a-call" block. All page CTAs
   point at #vp-final (this section), so every call-to-action now lands on this form. ── */
.vp-leadform{position:relative;z-index:2;max-width:760px;margin:clamp(34px,4vw,54px) auto 0;text-align:left}
.vp-lf__form{
  background:rgba(8,14,12,.72);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);
  border:1px solid var(--void-line);border-radius:var(--r);
  padding:clamp(22px,3vw,38px);box-shadow:0 40px 90px -50px #000,0 0 60px -40px var(--green-glow)}
.vp-lf__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,1.6vw,20px)}
.vp-lf__field{display:flex;flex-direction:column;gap:7px;min-width:0}
.vp-lf__field--full{grid-column:1 / -1}
.vp-lf__field > span{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--void-ink-3)}
.vp-lf__field > span i{font-style:normal;text-transform:none;letter-spacing:0;color:var(--void-ink-2);opacity:.7}
.vp-lf__field input,.vp-lf__field select,.vp-lf__field textarea{
  font-family:var(--font-body);font-size:15px;color:var(--c-ink,#F5FBF7);width:100%;
  background:rgba(255,255,255,.03);border:1px solid var(--void-line);border-radius:12px;padding:13px 15px;
  transition:border-color var(--dur-ui) ease,background var(--dur-ui) ease,box-shadow var(--dur-ui) ease}
.vp-lf__field textarea{resize:vertical;min-height:84px}
.vp-lf__field input::placeholder,.vp-lf__field textarea::placeholder{color:var(--void-ink-3);opacity:.7}
.vp-lf__field select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:42px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237e978a' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;background-size:18px}
.vp-lf__field select option{background:#0a1410;color:#F5FBF7}
.vp-lf__field input:focus,.vp-lf__field select:focus,.vp-lf__field textarea:focus{
  outline:none;border-color:var(--green);background:rgba(39,245,140,.05);box-shadow:0 0 0 3px rgba(39,245,140,.12)}
.vp-lf__field input:invalid:not(:placeholder-shown){border-color:rgba(255,120,120,.5)}
.vp-lf__btn{position:relative;overflow:hidden;margin-top:clamp(16px,2vw,22px);width:100%;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:var(--font-mono);font-weight:600;font-size:15px;letter-spacing:.06em;text-transform:uppercase;
  color:#04140C;background:var(--green);border:none;border-radius:var(--r-pill);padding:16px 26px;cursor:pointer;
  box-shadow:0 18px 40px -18px var(--green-glow),0 0 0 1px rgba(39,245,140,.5) inset;
  transition:transform var(--dur-ui) var(--ease-snap),box-shadow var(--dur-ui) ease}
.vp-lf__btn svg{stroke:#04140C}
@media (hover:hover){.vp-lf__btn:hover{transform:translateY(-2px);box-shadow:0 26px 56px -20px var(--green-glow),0 0 0 1px rgba(39,245,140,.85) inset}}
.vp-lf__btn-shine{position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s ease;pointer-events:none}
@media (hover:hover){.vp-lf__btn:hover .vp-lf__btn-shine{transform:translateX(120%)}}
.vp-lf__note{margin-top:14px;text-align:center;font-family:var(--font-mono);font-size:12.5px;letter-spacing:.04em;color:var(--void-ink-3)}
.vp-lf__done{text-align:center;background:rgba(8,14,12,.72);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border:1px solid var(--void-line-green);border-radius:var(--r);padding:clamp(34px,5vw,60px) clamp(22px,3vw,40px);
  box-shadow:0 40px 90px -50px #000,0 0 60px -36px var(--green-glow)}
.vp-lf__check{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;
  background:rgba(39,245,140,.12);border:1px solid var(--void-line-green);color:var(--green);font-size:28px;margin-bottom:18px}
.vp-lf__done h3{font-family:var(--font-display);font-weight:700;font-size:clamp(22px,3vw,30px);color:#fff;margin-bottom:10px}
.vp-lf__done p{font-family:var(--font-body);font-size:15px;line-height:1.6;color:var(--void-ink-2);max-width:46ch;margin:0 auto}
@media (max-width:600px){.vp-lf__grid{grid-template-columns:1fr}}

/* ── PROVEN WORK · recent-videos feature reel (sits between the section tagline and the
   industry tab library). Shown full size — natural aspect ratio, no crop. ── */
.vp-show__feature{
  position:relative;width:100%;margin:clamp(28px,3.4vw,48px) auto clamp(32px,4vw,56px);
  border-radius:var(--r);overflow:hidden;border:1px solid var(--void-line);
  background:#04070A;box-shadow:0 44px 100px -54px #000,0 0 70px -48px var(--green-glow)}
.vp-show__feature video{display:block;width:100%;height:auto}

/* Creative Testing Lab -> two stacked phone mockups playing live ad creatives (9:16, no crop) */
.s6-labphones{margin-top:14px;display:flex;flex-direction:column;gap:clamp(18px,1.8vw,26px);align-items:center}
.s6-labphone{position:relative;width:min(82%,236px);background:#101311;border-radius:30px;padding:13px 9px;
  border:1px solid var(--paper-line);
  box-shadow:0 36px 70px -30px rgba(5,5,5,.42),0 0 0 1px rgba(5,5,5,.05),inset 0 0 0 1px rgba(255,255,255,.05)}
.s6-labphone__scr{position:relative;aspect-ratio:9/16;border-radius:20px;overflow:hidden;background:#000}
.s6-labphone__scr video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.s6-labphone::before{content:"";position:absolute;top:5px;left:50%;transform:translateX(-50%);width:46px;height:5px;border-radius:3px;background:rgba(255,255,255,.16);z-index:2}
.s6-labphone::after{content:"";position:absolute;bottom:4px;left:50%;transform:translateX(-50%);width:66px;height:4px;border-radius:2px;background:rgba(255,255,255,.14);z-index:2}
@media (hover:hover){
  .s6-labphone{transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s cubic-bezier(.16,1,.3,1)}
  .s6-labphone:hover{transform:translateY(-4px);box-shadow:0 46px 84px -26px rgba(5,5,5,.5),0 0 0 1px rgba(10,138,79,.3)}
}

/* section-end call-to-action — one per section, all scroll to the lead form (#vp-final) */
.vp-seccta{display:flex;justify-content:center;margin-top:clamp(44px,5vw,72px)}

/* ===========================================================================
   PRICING · CHOOSE YOUR VIDEO SYSTEM — compact premium (scoped to .vp-pricing)
   Header + Package 1 + Package 2 fit one desktop viewport; Package 3 = compact
   cinematic banner (3D cube, drifting glows, moving grid + spotlight).
   =========================================================================== */
.vp-pricing{overflow:hidden;padding-block:clamp(56px,6vw,88px)}
.vpr-head{max-width:820px}
.vpr-title{font-size:clamp(32px,4.4vw,58px);line-height:1.0}
.vp-pricing .vpr-sub{max-width:60ch;margin:clamp(10px,1.2vw,16px) auto 0;font-family:var(--font-body);font-size:clamp(15px,1.15vw,18px);line-height:1.6;color:var(--c-ink-2)}

/* ---- two compact cards ---- */
.vpr-cards{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,1.6vw,24px);margin:clamp(26px,3vw,42px) auto 0;max-width:1080px;align-items:stretch}
.vpr-card{position:relative;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--paper-line);
  border-radius:clamp(20px,1.8vw,26px);padding:clamp(22px,2vw,30px);box-shadow:0 24px 60px -42px rgba(5,5,5,.18);
  transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s cubic-bezier(.16,1,.3,1)}
@media (hover:hover){.vpr-card:hover{transform:translateY(-5px);box-shadow:0 40px 84px -46px rgba(5,5,5,.26)}}
.vpr-card--pop{box-shadow:0 40px 90px -44px rgba(10,138,79,.3),0 0 0 1.5px var(--green)}
.vpr-card--pop::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;pointer-events:none;
  background:linear-gradient(150deg,var(--green),rgba(39,245,140,.1) 45%,transparent 72%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
@media (hover:hover){.vpr-card--pop:hover{box-shadow:0 50px 108px -46px rgba(10,138,79,.4),0 0 0 1.5px var(--green)}}
.vpr-badge{position:absolute;top:0;right:clamp(18px,2vw,30px);transform:translateY(-50%);z-index:2;
  font-family:var(--font-mono);font-size:10.5px;font-weight:600;letter-spacing:.14em;
  background:var(--green);color:#04140C;padding:6px 13px;border-radius:var(--r-pill);box-shadow:0 10px 24px -8px var(--green-glow)}
.vpr-card__hd{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:clamp(12px,1.4vw,16px);border-bottom:1px solid var(--paper-line)}
.vpr-card__kicker{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--green-deep)}
.vp-pricing .vpr-card__title{font-family:var(--font-display);font-weight:700;text-transform:uppercase;font-size:clamp(17px,1.7vw,22px);letter-spacing:.01em;color:var(--c-ink);margin:4px 0 0;line-height:1.08}
.vpr-price{text-align:right;flex:none;display:flex;flex-direction:column;align-items:flex-end;line-height:1}
.vpr-price__num{font-family:var(--font-display);font-weight:700;font-size:clamp(26px,2.8vw,38px);color:var(--c-ink);white-space:nowrap}
.vpr-price__num i{font-style:normal;font-family:var(--font-mono);font-size:11px;font-weight:500;color:var(--c-ink-3);margin-left:5px;letter-spacing:.05em;text-transform:uppercase}
.vpr-price__sub{font-family:var(--font-mono);font-size:12px;color:var(--c-ink-3);margin-top:5px}
.vpr-price__mo{font-family:var(--font-display);font-weight:700;font-size:clamp(16px,1.6vw,22px);color:var(--green-deep);margin-top:5px;white-space:nowrap}
.vpr-price__mo i{font-style:normal;font-family:var(--font-mono);font-size:11px;font-weight:500;color:var(--c-ink-3)}
.vpr-card__desc{font-family:var(--font-body);font-size:clamp(14px,1vw,15.5px);line-height:1.6;color:var(--c-ink-2);margin:clamp(12px,1.4vw,16px) 0 0}
.vpr-stat{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:clamp(12px,1.4vw,16px) 0}
.vpr-stat__big{font-family:var(--font-display);font-weight:700;font-size:clamp(22px,2.2vw,30px);line-height:1;color:var(--c-ink)}
.vpr-stat__big i{font-style:normal;color:var(--green-deep);font-size:.46em;letter-spacing:.03em;text-transform:uppercase;margin-left:6px}
.vpr-stat__dur{font-family:var(--font-mono);font-size:12px;letter-spacing:.03em;color:var(--c-ink-3)}
.vpr-pills{list-style:none;margin:0 0 clamp(18px,2vw,24px);padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 10px}
.vpr-pills li{position:relative;padding:8px 10px 8px 27px;border-radius:10px;background:var(--paper-panel);border:1px solid var(--paper-line);
  font-family:var(--font-body);font-size:12.5px;line-height:1.3;color:var(--c-ink-2)}
.vpr-pills li::before{content:"✓";position:absolute;left:9px;top:8px;font-size:10px;font-weight:800;color:var(--green-deep)}
.vpr-card__cta{margin-top:auto;width:100%}

/* ---- Package 3: compact cinematic banner ---- */
.vpr-banner{position:relative;overflow:hidden;margin:clamp(20px,2.4vw,34px) auto 0;max-width:1080px;
  background:#05080B;color:#F5FBF7;border-radius:clamp(22px,2vw,28px);
  padding:clamp(30px,3.2vw,48px) clamp(24px,3vw,52px);box-shadow:0 54px 110px -60px rgba(5,5,5,.55)}
.vpr-banner__grid{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.55;
  background:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px) 0 0/100% 44px,linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px) 0 0/44px 100%;
  -webkit-mask:radial-gradient(120% 100% at 50% 0,#000,transparent 76%);mask:radial-gradient(120% 100% at 50% 0,#000,transparent 76%)}
.vpr-banner__glow{position:absolute;z-index:0;border-radius:50%;filter:blur(80px);pointer-events:none}
.vpr-banner__glow--1{width:440px;height:440px;top:-150px;left:-70px;background:radial-gradient(circle,rgba(39,245,140,.2),transparent 70%)}
.vpr-banner__glow--2{width:400px;height:400px;bottom:-170px;right:-60px;background:radial-gradient(circle,rgba(39,245,140,.12),transparent 70%)}
.vpr-banner__spot{position:absolute;top:-22%;left:50%;width:56%;height:70%;z-index:0;pointer-events:none;transform:translateX(-50%);
  border-radius:50%;filter:blur(64px);background:radial-gradient(circle,rgba(39,245,140,.12),transparent 65%)}
.vpr-cube{position:absolute;top:clamp(22px,2.6vw,40px);right:clamp(26px,3.4vw,54px);z-index:1;width:60px;height:60px;perspective:600px;pointer-events:none}
.vpr-cube__box{position:relative;width:60px;height:60px;transform-style:preserve-3d;transform:rotateX(-22deg)}
.vpr-cube__box i{position:absolute;width:60px;height:60px;border:1px solid rgba(39,245,140,.45);background:rgba(39,245,140,.05);box-shadow:inset 0 0 18px rgba(39,245,140,.14)}
.vpr-cube__box i:nth-child(1){transform:translateZ(30px)}
.vpr-cube__box i:nth-child(2){transform:rotateY(180deg) translateZ(30px)}
.vpr-cube__box i:nth-child(3){transform:rotateY(90deg) translateZ(30px)}
.vpr-cube__box i:nth-child(4){transform:rotateY(-90deg) translateZ(30px)}
.vpr-cube__box i:nth-child(5){transform:rotateX(90deg) translateZ(30px)}
.vpr-cube__box i:nth-child(6){transform:rotateX(-90deg) translateZ(30px)}
@media (prefers-reduced-motion:no-preference){
  .vpr-banner__glow--1{animation:vprG1 22s ease-in-out infinite}
  .vpr-banner__glow--2{animation:vprG2 28s ease-in-out infinite}
  .vpr-banner__spot{animation:vprSpot 18s ease-in-out infinite}
  .vpr-cube__box{animation:vprCube 16s linear infinite}
}
@keyframes vprG1{0%,100%{transform:translate(0,0)}50%{transform:translate(90px,55px)}}
@keyframes vprG2{0%,100%{transform:translate(0,0)}50%{transform:translate(-80px,-60px)}}
@keyframes vprSpot{0%,100%{transform:translateX(-78%)}50%{transform:translateX(-22%)}}
@keyframes vprCube{from{transform:rotateX(-22deg) rotateY(0)}to{transform:rotateX(-22deg) rotateY(360deg)}}
.vpr-banner__in{position:relative;z-index:2;max-width:1000px;margin:0 auto}
.vpr-banner__lead{text-align:center;max-width:760px;margin:0 auto}
.vpr-banner__ey{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--green);margin:0}
.vp-pricing .vpr-banner__title{font-family:var(--font-display);font-weight:700;text-transform:uppercase;font-size:clamp(24px,3.4vw,44px);line-height:1;margin:9px 0 0;color:#fff}
.vpr-banner__title .vp-word{color:var(--green)}
.vpr-banner__sub{font-family:var(--font-body);font-size:clamp(13px,1vw,16px);line-height:1.5;color:rgba(245,251,247,.68);margin:11px auto 0;max-width:52ch}
.vpr-typechips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:clamp(16px,1.8vw,24px) auto 0}
.vpr-typechips span{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:rgba(245,251,247,.85);
  padding:8px 14px;border-radius:var(--r-pill);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);
  transition:transform .4s cubic-bezier(.16,1,.3,1),background .4s ease,border-color .4s ease,color .4s ease}
@media (hover:hover){.vpr-typechips span:hover{transform:translateY(-3px);background:rgba(39,245,140,.1);border-color:rgba(39,245,140,.5);color:#fff}}
.vpr-crewcols{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(10px,1.2vw,16px);margin:clamp(24px,2.8vw,40px) auto 0;max-width:940px}
.vpr-crewcol{padding:15px 15px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);
  transition:transform .4s ease,border-color .4s ease,background .4s ease}
@media (hover:hover){.vpr-crewcol:hover{transform:translateY(-3px);border-color:rgba(39,245,140,.3);background:rgba(255,255,255,.05)}}
.vpr-crewcol b{display:block;font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.13em;color:var(--green);margin-bottom:8px}
.vpr-crewcol span{font-family:var(--font-body);font-size:12.5px;line-height:1.5;color:rgba(245,251,247,.72)}
.vpr-banner__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px;margin:clamp(26px,3vw,42px) auto 0;max-width:940px}
.vpr-banner__price{min-width:0}
.vpr-banner__plabel{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(245,251,247,.55)}
.vpr-banner__range{display:block;font-family:var(--font-display);font-weight:700;font-size:clamp(28px,3.6vw,48px);line-height:1;color:#fff;margin-top:4px}
.vpr-banner__range span{color:rgba(245,251,247,.32);margin:0 .06em}
.vpr-banner__range i{font-style:normal;color:var(--green)}
.vpr-banner__note{display:block;font-family:var(--font-body);font-size:12px;line-height:1.5;color:rgba(245,251,247,.55);margin-top:8px;max-width:56ch}

@media (max-width:900px){.vpr-crewcols{grid-template-columns:repeat(2,1fr)}.vpr-cube{display:none}}
@media (max-width:820px){.vpr-cards{grid-template-columns:1fr;max-width:480px}}
@media (max-width:560px){
  .vpr-pills{grid-template-columns:1fr}
  .vpr-crewcols{grid-template-columns:1fr}
  .vpr-banner__foot{flex-direction:column;align-items:stretch;text-align:center}
  .vpr-banner__foot .vp-btn{justify-content:center}
}

/* ===========================================================================
   CONTENT ENGINE merge — secondary headline + compact content-bank benefit strip
   (scoped to .vp-supply; light theme kept, matches the section's design language)
   =========================================================================== */
.vp-supply .vpr-eng__sub{font-family:var(--font-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(17px,2vw,28px);line-height:1.08;letter-spacing:.005em;color:var(--green-deep);
  margin:clamp(12px,1.4vw,18px) auto 0;max-width:22ch}
.vp-supply .vpr-eng__sub .vp-word{color:var(--green-deep)}

.vpr-eng__bank{display:grid;grid-template-columns:repeat(6,1fr);gap:clamp(10px,1.1vw,15px);
  margin:clamp(28px,3vw,44px) auto 0;max-width:1180px}
.vpr-bcard{position:relative;padding:clamp(15px,1.5vw,20px) clamp(13px,1.1vw,16px);border-radius:16px;
  background:var(--paper-panel);border:1px solid var(--paper-line);
  transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s ease,border-color .5s ease}
@media (hover:hover){.vpr-bcard:hover{transform:translateY(-4px);border-color:var(--paper-line-green);box-shadow:0 24px 50px -30px rgba(10,138,79,.3)}}
.vpr-bcard__ic{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;
  background:rgba(10,138,79,.09);border:1px solid rgba(10,138,79,.2);color:var(--green-deep);margin-bottom:12px}
.vpr-bcard__ic svg{width:20px;height:20px;display:block}
.vpr-bcard b{display:block;font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.01em;color:var(--c-ink);margin-bottom:6px;line-height:1.18}
.vpr-bcard span{font-family:var(--font-body);font-size:12.5px;line-height:1.45;color:var(--c-ink-2)}
@media (max-width:1080px){.vpr-eng__bank{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.vpr-eng__bank{grid-template-columns:repeat(2,1fr)}}
@media (max-width:400px){.vpr-eng__bank{grid-template-columns:1fr}}

/* merged Content Engine headline — open + readable; wraps naturally instead of cramming one line */
.vp-supply .vp-head--center{max-width:960px}
.vp-supply .vp-head--center .vp-title{white-space:normal;max-width:20ch;margin-left:auto;margin-right:auto;font-size:clamp(32px,4.6vw,60px);line-height:1.08;letter-spacing:-.004em}
.vp-supply .vp-head--center .vpr-eng__sub{white-space:normal;max-width:30ch;margin-left:auto;margin-right:auto;font-size:clamp(19px,2.5vw,32px);line-height:1.2;letter-spacing:.004em;margin-top:clamp(12px,1.4vw,18px)}
@media (max-width:720px){
  .vp-supply .vp-head--center .vp-title{font-size:clamp(28px,7.2vw,40px)}
  .vp-supply .vp-head--center .vpr-eng__sub{font-size:clamp(17px,4.6vw,22px)}
}

/* =====================================================================
   NEUE HAAS GROTESK — role weights (font swap only, no layout change)
   Titles already inherit --font-display (Display Pro) and body/labels
   already inherit --font-body / --font-mono via the tokens above. These
   two rules apply the licensed weights the family ships with:
     • hero title  -> Display Pro 95 Black (900)
     • buttons/nav -> Text Pro 75 Bold (700), off JetBrains Mono
   ===================================================================== */
.vp-title--hero{font-weight:900}

.vp-btn,
.vp-nav__pill a,
.vp-header__cta,
.vp-lf__btn,
.vpr-card__cta{font-family:var(--font-body);font-weight:700}

/* ============================================================================
   OPEN SPACING SYSTEM — Neue Haas letter + word spacing (readability pass 2)
   The Display cut ships tight display sidebearings, so heavy all-caps titles
   read jammed at ls 0. Fix = positive TRACKING + explicit WORD-SPACING (the
   words, not just letters, need gaps) + a little more leading on titles that
   wrap. Values chosen from the spacing-lab A/B: display V2 (ls .03 / ws .12),
   body B1 (ls .006 / ws .035). Em-based, so it scales across all breakpoints.
   ============================================================================ */

/* Tier 1 — all-caps DISPLAY TITLES: open tracking, real word gaps, friendly leading */
.vp-title,.vp-title--hero,.vp-title--final,
.s6-title,.s10-title,.s13-title,.s15-title,.s15-hero__title,.s16-title,
.vpr-title,.vpr-banner__title,.vp-showcase__title,.vp-pullquote,
.s12-vs__out,.vp-paths__foot{
  letter-spacing:.03em;word-spacing:.12em;line-height:1.09;text-wrap:balance;
}
/* very large hero/final titles: keep the vertical rhythm a touch tighter than mid titles */
.vp-title--hero,.vp-title--final,.s15-hero__title,.s16-title{line-height:1.06}
/* titles that wrap to several lines want extra air (restate line-height at their specificity) */
.s7-head .vp-title{letter-spacing:.03em;word-spacing:.12em;line-height:1.1}
.vp-showcase__title{letter-spacing:.03em;word-spacing:.12em;line-height:1.14}
.vp-pullquote{line-height:1.2}

/* merged Content Engine headline — same open spacing, keep its own wrapping/leading */
.vp-supply .vp-head--center .vp-title{letter-spacing:.03em;word-spacing:.12em;line-height:1.1;text-wrap:balance}
.vp-supply .vp-head--center .vpr-eng__sub{letter-spacing:.03em;word-spacing:.1em;line-height:1.22;text-wrap:balance}

/* Tier 3 — card / package titles (display, often mixed case): moderate openness */
.vpr-card__title,.vp-filmcard h3,.vp-beat h4{letter-spacing:.015em;word-spacing:.05em}

/* Tier 4 — BODY COPY: subtle letter + word spacing for comfortable reading.
   Bare p/li stay low-specificity so mono micro-labels keep their own tracking. */
.vp-lead,.vp-sub,.vpr-sub,.vpr-card__desc,.vp-foot,p,li{letter-spacing:.006em;word-spacing:.035em}

/* Older-reader size + leading floors (from the readability review) */
.vp-jstep p,.vp-pstep p{font-size:15px;line-height:1.55}
.s6-note{font-size:16px;line-height:1.6}
.s7-card__t{font-size:15px;line-height:1.35;letter-spacing:.012em}
.vp-sub{font-size:clamp(16px,1.6vw,18px)}
