/* ============================================================
   TARVYN — Operator Console design system
   Palette: void graphite · electric blue (data) · safety green (power)
   Type: Michroma (wordmark/eyebrows) · Saira (display) · Inter (body) · JetBrains Mono (telemetry)
   ============================================================ */

:root{
  --void:#06080a;
  --bg2:#090c0f;
  --panel:#0e1116;
  --panel2:#12161c;
  --line:rgba(255,255,255,.08);
  --line2:rgba(255,255,255,.14);
  --data:#3d8bff;
  --data-dim:rgba(61,139,255,.4);
  --power:#2be070;
  --power-dim:rgba(43,224,112,.4);
  --warn:#ff5c3a;
  --warn-dim:rgba(255,92,58,.45);
  --white:#f2f5f8;
  --mute:#98a1ac;
  --dim:#5a626c;
  --ease:cubic-bezier(.22,.61,.24,1);
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --disp:'Saira',sans-serif;
  --brand:'Michroma',sans-serif;
  --body:'Inter',system-ui,sans-serif;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  background:
    radial-gradient(ellipse 90% 60% at 50% -18%,rgba(61,139,255,.07),transparent 58%),
    radial-gradient(ellipse 70% 50% at 105% 12%,rgba(43,224,112,.05),transparent 62%),
    linear-gradient(180deg,#020304,var(--void) 22%,#05070a 100%);
  color:var(--mute);
  font-family:var(--body);
  font-size:15px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
body::before{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.38;
  background-image:
    linear-gradient(45deg,rgba(255,255,255,.018) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.018) 50%,rgba(255,255,255,.018) 75%,transparent 75%),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:8px 8px,128px 128px;
  mask-image:linear-gradient(180deg,transparent,#000 8%,#000 82%,transparent);
}
img,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
::selection{background:rgba(43,224,112,.25);color:var(--white)}

h1,h2,h3,h4{color:var(--white);font-family:var(--disp);font-weight:600;line-height:1.1}
strong{color:var(--white);font-weight:600}

.wrap{max-width:1220px;margin:0 auto;padding:0 clamp(20px,4.5vw,48px)}
.sec{position:relative;padding:clamp(90px,13vh,160px) 0;isolation:isolate}
.sec::before{
  content:'';position:absolute;top:0;left:50%;width:min(1220px,calc(100% - 40px));height:1px;transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,var(--line),transparent);opacity:.9;
}
.sec-alt{background:linear-gradient(180deg,var(--bg2),var(--void))}

/* --- carbon twill texture (subtle) --- */
.carbon{
  background-image:
    linear-gradient(45deg,rgba(255,255,255,.016) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.016) 50%,rgba(255,255,255,.016) 75%,transparent 75%),
    linear-gradient(180deg,var(--panel),var(--panel));
  background-size:7px 7px,100% 100%;
}

/* --- typography utilities --- */
.h-display{
  font-family:var(--disp);font-weight:700;text-transform:uppercase;
  font-size:clamp(2.35rem,5.4vw,4.7rem);line-height:1.03;letter-spacing:.005em;
}
.h-sec{font-size:clamp(1.65rem,3.1vw,2.55rem);font-weight:600;letter-spacing:.005em;max-width:20ch}
.lead{font-size:clamp(1rem,1.35vw,1.13rem);color:var(--mute);max-width:62ch}
.mono{font-family:var(--mono)}

.eyebrow{
  display:inline-flex;align-items:center;gap:12px;
  font-family:var(--mono);font-size:11px;letter-spacing:.32em;text-transform:uppercase;
  color:var(--dim);margin-bottom:26px;
}
.eyebrow::before{content:'';width:7px;height:7px;border:1px solid var(--power);transform:rotate(45deg);flex:none}
.eyebrow.eb-data::before{border-color:var(--data)}
.eyebrow.eb-warn::before{border-color:var(--warn)}

.sec-head{margin-bottom:clamp(42px,6vh,72px);position:relative}
.sec-head::after{
  content:'';display:block;width:min(360px,70vw);height:1px;margin-top:24px;
  background:linear-gradient(90deg,var(--power),rgba(61,139,255,.45),transparent);
}
.sec-head .lead{margin-top:18px}

/* --- buttons --- */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;
  padding:15px 28px;border:1px solid var(--line2);color:var(--white);
  background:transparent;cursor:pointer;position:relative;
  transition:border-color .3s,background .3s,box-shadow .3s,transform .3s;
  white-space:nowrap;
}
.btn::after{content:'';position:absolute;right:-1px;bottom:-1px;width:9px;height:9px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;opacity:.5}
.btn:hover{transform:translateY(-2px)}
.btn-power{border-color:rgba(43,224,112,.5);background:rgba(43,224,112,.08);color:#e2ffee}
.btn-power:hover{background:rgba(43,224,112,.16);box-shadow:0 0 34px rgba(43,224,112,.16);border-color:rgba(43,224,112,.8)}
.btn-ghost:hover{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.04)}
.btn-sm{padding:11px 20px;font-size:11px}

/* --- corner bracket frame --- */
.brkt{position:relative}
.brkt .c{position:absolute;width:16px;height:16px;border:0 solid var(--line2);pointer-events:none;z-index:3}
.brkt .c1{top:-1px;left:-1px;border-top-width:1px;border-left-width:1px}
.brkt .c2{top:-1px;right:-1px;border-top-width:1px;border-right-width:1px}
.brkt .c3{bottom:-1px;left:-1px;border-bottom-width:1px;border-left-width:1px}
.brkt .c4{bottom:-1px;right:-1px;border-bottom-width:1px;border-right-width:1px}

/* ============================================================
   NAV
   ============================================================ */
.nav{
  position:fixed;inset:0 0 auto 0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:16px clamp(20px,3.5vw,40px);
  transition:background .4s,border-color .4s,backdrop-filter .4s;
  border-bottom:1px solid transparent;
}
.nav.scrolled{background:rgba(6,8,10,.85);backdrop-filter:blur(16px);border-bottom-color:var(--line)}
.brand{display:flex;align-items:baseline;gap:10px}
.brand .word{font-family:var(--brand);font-size:15px;letter-spacing:.42em;color:var(--white)}
.brand .sub{font-family:var(--mono);font-size:9px;letter-spacing:.28em;color:var(--dim);text-transform:uppercase}
.nav-links{display:flex;gap:clamp(18px,2.6vw,36px);align-items:center}
.nav-links a{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);transition:color .3s}
.nav-links a:hover{color:var(--white)}
.nav-right{display:flex;align-items:center;gap:22px}
.nav-alt{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--power);display:flex;align-items:center;gap:8px}
.nav-alt::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--power);box-shadow:0 0 8px var(--power);animation:blink 2.4s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.35}}
.burger{display:none;background:none;border:1px solid var(--line2);width:42px;height:42px;cursor:pointer;position:relative;z-index:120}
.burger span{position:absolute;left:11px;right:11px;height:1px;background:var(--white);transition:transform .35s,top .35s,opacity .35s}
.burger span:nth-child(1){top:16px}.burger span:nth-child(2){top:21px}.burger span:nth-child(3){top:26px}
.nav-open .burger span:nth-child(1){top:21px;transform:rotate(45deg)}
.nav-open .burger span:nth-child(2){opacity:0}
.nav-open .burger span:nth-child(3){top:21px;transform:rotate(-45deg)}
.mnav{
  position:fixed;inset:0;background:var(--void);z-index:110;
  display:flex;flex-direction:column;justify-content:center;padding:0 34px;gap:6px;
  opacity:0;pointer-events:none;transition:opacity .4s;
}
.nav-open{overflow:hidden}
.nav-open .mnav{opacity:1;pointer-events:auto}
.mnav a{font-family:var(--disp);font-weight:600;font-size:clamp(1.8rem,8vw,2.6rem);color:var(--white);padding:10px 0;border-bottom:1px solid var(--line);text-transform:uppercase}
.mnav a .n{font-family:var(--mono);font-size:11px;color:var(--dim);margin-right:16px;letter-spacing:.2em}
.mnav .btn{margin-top:28px;justify-content:center}

@media(max-width:960px){
  .nav-links,.nav-right{display:none}
  .brand .sub{display:none}
  .burger{display:block}
  .nav{background:rgba(6,8,10,.85);backdrop-filter:blur(16px);border-bottom-color:var(--line)}
}

/* ============================================================
   TETHER RAIL (signature, desktop)
   ============================================================ */
.rail{position:fixed;left:44px;top:0;bottom:0;width:1px;background:var(--line);z-index:5;display:none}
.rail .p{position:absolute;left:-1.5px;width:4px;height:26px;border-radius:2px}
.rail .p-data{background:linear-gradient(180deg,transparent,var(--data),transparent);animation:raildown 8.5s linear infinite}
.rail .p-power{background:linear-gradient(180deg,transparent,var(--power),transparent);animation:railup 7s linear infinite;animation-delay:2.2s}
@keyframes raildown{0%{top:-4%;opacity:0}8%{opacity:1}92%{opacity:1}100%{top:102%;opacity:0}}
@keyframes railup{0%{top:102%;opacity:0}8%{opacity:1}92%{opacity:1}100%{top:-4%;opacity:0}}
.rail-alt{
  position:fixed;left:24px;bottom:26px;z-index:6;display:none;
  font-family:var(--mono);font-size:10px;letter-spacing:.22em;color:var(--dim);
  writing-mode:vertical-rl;transform:rotate(180deg);
}
.rail-alt b{color:var(--power);font-weight:500}
@media(min-width:1240px){.rail,.rail-alt{display:block}}

/* ============================================================
   HERO
   ============================================================ */
.hero{height:280vh;position:relative;background:#000}
.hero-sticky{
  position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;
  display:grid;grid-template-columns:.86fr 1.14fr;gap:clamp(24px,4vw,64px);
  align-items:center;padding:90px clamp(22px,5vw,72px) 84px;
  background:#000;
}
.hero-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.hero-bg::before{content:'';position:absolute;inset:0;background:#000}
.hero-bg::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 58% 54% at 76% 52%,rgba(43,224,112,.075),transparent 70%)}

.hero-copy{position:relative;z-index:2;max-width:660px}
.hero-copy .h-display{font-size:clamp(2.1rem,3.95vw,3.9rem)}
.hero-copy .eyebrow{margin-bottom:30px}
.hero-copy h1 .l2{color:var(--white)}
.hero-copy h1 .dot{color:var(--power)}
.hero-sub{margin:28px 0 0;font-size:clamp(1rem,1.26vw,1.14rem);max-width:58ch;color:var(--mute)}
.hero-sub-2{margin-top:18px;color:#c2c9d1}
.hero-ctas{display:flex;gap:16px;flex-wrap:wrap;margin-top:34px}
.hero-proof{
  margin-top:24px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:660px;
}
.hero-proof span{
  border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025);padding:12px 13px;
  font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);
}
.hero-proof b{display:block;color:var(--white);font-family:var(--disp);font-size:.92rem;letter-spacing:.02em;text-transform:none;margin-bottom:2px}

/* load-in rise */
.rise{opacity:0;transform:translateY(28px);transition:opacity 1s var(--ease),transform 1s var(--ease);transition-delay:var(--d,0s)}
.loaded .rise{opacity:1;transform:none}

/* HUD video frame */
.hud{position:relative;z-index:2;justify-self:end;width:min(100%,680px)}
.hud-frame{
  position:relative;aspect-ratio:3/4;overflow:hidden;
  border:1px solid rgba(255,255,255,.12);background:#050607;
  box-shadow:0 40px 120px rgba(0,0,0,.72),0 0 74px rgba(43,224,112,.1);
}
.hud-frame::before{
  content:'';position:absolute;inset:0;z-index:3;pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,.04),transparent 34%,rgba(0,0,0,.34));
}
.hud-frame video,.hud-frame img{
  width:100%;height:112%;object-fit:cover;object-position:center bottom;
  transform:translateY(calc(var(--hero-lift,0) * -15%)) scale(calc(1.02 + (var(--hero-lift,0) * .08)));
  transform-origin:center bottom;
  transition:transform .12s linear;
}
.hud .c{width:20px;height:20px;border-color:rgba(255,255,255,.35)}
.hud-chip{
  position:absolute;top:14px;left:14px;z-index:4;
  font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--white);
  background:rgba(6,8,10,.55);backdrop-filter:blur(6px);
  border:1px solid var(--line);padding:7px 11px;display:flex;gap:9px;align-items:center;
}
.hud-chip::before{content:'';width:5px;height:5px;background:var(--power);border-radius:50%;box-shadow:0 0 7px var(--power);animation:blink 2s infinite}
.hud-ro{
  position:absolute;right:14px;top:50%;transform:translateY(-50%);z-index:4;
  display:flex;flex-direction:column;gap:16px;text-align:right;
}
.hud-ro .ro{font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--dim)}
.hud-ro .ro b{display:block;font-size:15px;font-weight:500;color:var(--white);margin-top:3px}
.hud-ro .ro.ro-data b{color:var(--data)}
.hud-ro .ro.ro-power b{color:var(--power)}
.lift-indicator{
  position:absolute;left:18px;top:72px;bottom:72px;width:1px;z-index:4;
  background:linear-gradient(180deg,transparent,rgba(43,224,112,.22),transparent);
}
.lift-indicator span{
  position:absolute;left:-3px;bottom:calc(var(--hero-lift,0) * 82%);
  width:7px;height:34px;border-radius:999px;
  background:linear-gradient(180deg,transparent,var(--power),transparent);
  box-shadow:0 0 16px rgba(43,224,112,.75);
}
.hud-scroll{
  position:absolute;bottom:14px;left:50%;transform:translateX(-50%);z-index:4;
  font-family:var(--mono);font-size:9.5px;letter-spacing:.3em;color:var(--dim);
  display:flex;flex-direction:column;align-items:center;gap:7px;transition:opacity .5s;
}
.hud-scroll::after{content:'';width:1px;height:26px;background:linear-gradient(180deg,var(--power),transparent);animation:drip 1.8s var(--ease) infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.hud-scroll.hide{opacity:0}

/* trust bar */
.trust{
  position:absolute;left:0;right:0;bottom:0;z-index:3;
  border-top:1px solid var(--line);
  background:rgba(6,8,10,.5);backdrop-filter:blur(8px);
}
.trust ul{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:10px clamp(20px,4.5vw,66px);padding:16px 20px}
.trust li{font-family:var(--mono);font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--dim);display:flex;align-items:center;gap:10px}
.trust li::before{content:'';width:5px;height:5px;transform:rotate(45deg);border:1px solid var(--power-dim)}
.trust li:nth-child(even)::before{border-color:var(--data-dim)}

@media(max-width:960px){
  .hero{height:190vh}
  .hero-sticky{display:flex;flex-direction:column;gap:18px;padding:78px 22px 14px;align-items:stretch}
  .hero-copy{text-align:left}
  .hero-copy .eyebrow{margin-bottom:18px}
  .hero-sub{margin:16px 0 22px}
  .hero-proof{grid-template-columns:1fr;max-width:none}
  .hero-ctas .btn{flex:1;justify-content:center;padding:14px 12px}
  .hud{width:min(100%,430px);align-self:center;flex:1;min-height:0;display:flex}
  .hud-frame{aspect-ratio:auto;width:100%;min-height:220px}
  .hud-ro{gap:10px}
  .trust{position:static;margin-top:auto;background:transparent;backdrop-filter:none}
  .trust ul{justify-content:flex-start;gap:6px 22px;padding:12px 0}
}

/* ============================================================
   REVEAL
   ============================================================ */
[data-reveal]{opacity:0;transform:translateY(30px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--d,0s)}
[data-reveal].in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  [data-reveal],.rise{opacity:1 !important;transform:none !important;transition:none !important}
  .rail .p,.hud-scroll::after,.nav-alt::before,.hud-chip::before{animation:none !important}
}

/* ============================================================
   CARDS (generic)
   ============================================================ */
.grid{display:grid;gap:16px}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}
@media(max-width:1020px){.g4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.g3{grid-template-columns:1fr}.g2{grid-template-columns:1fr}}
@media(max-width:640px){.g4{grid-template-columns:1fr}}

.card{
  --acc:var(--power);
  position:relative;border:1px solid var(--line);padding:30px 26px 32px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.055),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.026),rgba(255,255,255,0) 60%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  transition:border-color .35s,transform .35s,background .35s,box-shadow .35s;
  overflow:hidden;
}
.card::before{content:'';position:absolute;top:-1px;left:24px;width:36px;height:1px;background:var(--acc);opacity:.85}
.card::after{
  content:'';position:absolute;right:-50px;top:-70px;width:140px;height:140px;border:1px solid var(--acc);
  opacity:.08;transform:rotate(45deg);pointer-events:none;
}
.card:hover{border-color:rgba(255,255,255,.22);transform:translateY(-5px);box-shadow:0 18px 46px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.05)}
.card .ic{width:42px;height:42px;margin-bottom:20px;color:var(--acc)}
.card .ic svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.card h3{font-size:1.06rem;font-weight:600;letter-spacing:.02em;margin-bottom:10px}
.card p{font-size:.92rem;line-height:1.65;color:var(--mute)}
.card .idx{position:absolute;top:24px;right:22px;font-family:var(--mono);font-size:10px;color:var(--dim);letter-spacing:.2em}
.card-data{--acc:var(--data)}
.card-warn{--acc:var(--warn)}
.card-warn:hover{border-color:var(--warn-dim)}

/* ============================================================
   PRODUCT / PLATFORM
   ============================================================ */
.prod{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(28px,4vw,60px);align-items:center}
.prod-visual{position:relative}
.prod-visual .brkt{
  border:1px solid rgba(255,255,255,.12);overflow:hidden;background:#05070a;
  box-shadow:0 34px 90px rgba(0,0,0,.42),0 0 44px rgba(61,139,255,.08);
}
.prod-visual img{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:center;filter:saturate(1.05) contrast(1.04)}
.pv-tag{
  position:absolute;font-family:var(--mono);font-size:9.5px;letter-spacing:.22em;color:var(--white);
  background:rgba(6,8,10,.6);border:1px solid var(--line2);padding:5px 9px;backdrop-filter:blur(5px);
  display:flex;align-items:center;gap:8px;z-index:4;
}
.pv-tag::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--data);box-shadow:0 0 6px var(--data)}
.pv-tag.t-power::before{background:var(--power);box-shadow:0 0 6px var(--power)}
@media(max-width:960px){.prod{grid-template-columns:1fr}}

/* ============================================================
   SCROLL 3D INSPECTION
   ============================================================ */
.scroll3d{
  height:260vh;position:relative;
  background:
    radial-gradient(ellipse 70% 45% at 70% 48%,rgba(61,139,255,.1),transparent 68%),
    linear-gradient(180deg,var(--void),#070a0d 42%,var(--bg2));
}
.scroll3d-sticky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:flex;align-items:center}
.scroll3d-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(28px,5vw,78px);align-items:center;width:100%}
.scroll3d-copy{position:relative;z-index:4}
.scroll3d-copy .lead{margin-top:18px}
.scan-readout{
  margin-top:34px;display:grid;grid-template-columns:repeat(3,max-content);gap:10px 12px;color:var(--dim);
  font-size:10px;letter-spacing:.18em;text-transform:uppercase;
}
.scan-readout span{border:1px solid var(--line);background:rgba(255,255,255,.025);padding:10px 12px}
.scan-readout b{color:var(--power);font-weight:500}
.scan-stage{
  position:relative;min-height:clamp(420px,70vh,720px);display:grid;place-items:center;perspective:1200px;isolation:isolate;
}
.scan-stage::before{
  content:'';position:absolute;inset:7% 2% 10%;background:
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(0deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:54px 54px;transform:rotateX(62deg) translateY(18%);transform-origin:center bottom;
  opacity:.35;mask-image:radial-gradient(ellipse at center,#000 28%,transparent 72%);z-index:0;
}
.scan-ring{
  position:absolute;width:min(62vw,620px);aspect-ratio:1;border:1px solid rgba(61,139,255,.24);border-radius:50%;
  transform:rotateX(66deg) rotateZ(var(--scan-rot,0deg));box-shadow:0 0 40px rgba(61,139,255,.08),inset 0 0 26px rgba(43,224,112,.04);
}
.scan-ring::before,.scan-ring::after{content:'';position:absolute;inset:13%;border:1px solid rgba(255,255,255,.08);border-radius:50%}
.scan-ring::after{inset:31%;border-color:rgba(43,224,112,.18)}
.scan-orbit{position:absolute;width:min(54vw,540px);aspect-ratio:1;transform:rotateX(66deg) rotateZ(calc(var(--scan-rot,0deg) * -1));z-index:1}
.scan-orbit i{
  position:absolute;width:7px;height:7px;border-radius:50%;background:var(--data);box-shadow:0 0 14px var(--data);
  top:50%;left:50%;transform:rotate(var(--a)) translateX(48%) translateY(-50%);
}
.scan-orbit i:nth-child(1){--a:22deg}.scan-orbit i:nth-child(2){--a:148deg;background:var(--power);box-shadow:0 0 14px var(--power)}
.scan-orbit i:nth-child(3){--a:274deg}
.scan-model{
  position:relative;width:min(78vw,820px);aspect-ratio:16/10;border:1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(ellipse at 50% 42%,rgba(61,139,255,.18),transparent 50%),
    radial-gradient(ellipse at 50% 82%,rgba(43,224,112,.09),transparent 52%),
    linear-gradient(180deg,#10151b,#07090c);
  transform:rotateX(var(--scan-tilt,0deg)) rotateY(var(--scan-y,-8deg)) translateZ(0);transform-style:preserve-3d;
  box-shadow:0 40px 110px rgba(0,0,0,.58),0 0 70px rgba(61,139,255,.1);overflow:hidden;z-index:3;
}
.scan-model::before{
  content:'AIRFRAME SCAN';position:absolute;left:16px;top:14px;z-index:5;font-family:var(--mono);font-size:10px;
  letter-spacing:.25em;color:var(--data);
}
.scan-model::after{
  content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent);
  transform:translateX(calc((var(--scan-p,0) * 160%) - 80%));opacity:.45;z-index:4;pointer-events:none;
}
.scan-frame{
  position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:clamp(8px,2vw,26px);
  opacity:0;transform:scale(.96) translateY(8px);filter:drop-shadow(0 28px 42px rgba(0,0,0,.55));
  transition:opacity .22s linear,transform .32s var(--ease);
}
.scan-frame.active{opacity:1;transform:scale(1) translateY(0)}
.scan-floor{
  position:absolute;bottom:9%;width:min(58vw,620px);height:62px;border-radius:50%;background:radial-gradient(ellipse,rgba(43,224,112,.16),transparent 68%);
  filter:blur(3px);transform:rotateX(70deg);z-index:2;
}
.scan-callout{
  position:absolute;z-index:5;font-family:var(--mono);font-size:10px;letter-spacing:.22em;color:var(--mute);
  border:1px solid var(--line);background:rgba(6,8,10,.66);backdrop-filter:blur(6px);padding:9px 11px;
  opacity:calc(.35 + (var(--scan-p,0) * .65));
}
.scan-callout::before{content:'';width:34px;height:1px;background:var(--data);position:absolute;top:50%}
.scan-c1{right:4%;top:25%}.scan-c1::before{right:100%}
.scan-c2{left:6%;bottom:23%}.scan-c2::before{left:100%;background:var(--power)}
@media(max-width:960px){
  .scroll3d{height:auto}
  .scroll3d-sticky{position:relative;height:auto;padding:92px 0}
  .scroll3d-grid{grid-template-columns:1fr}
  .scan-stage{min-height:420px}
  .scan-readout{grid-template-columns:1fr 1fr}
  .scan-readout span:last-child{grid-column:1/-1}
  .scan-callout{display:none}
}
@media(max-width:560px){
  .scan-stage{min-height:330px}
  .scan-model{width:100%;aspect-ratio:1.12}
  .scan-readout{grid-template-columns:1fr;font-size:9.5px}
  .scan-readout span:last-child{grid-column:auto}
}

/* ============================================================
   SYSTEM DIAGRAM
   ============================================================ */
.diag-wrap{overflow-x:auto;border:1px solid var(--line);background:linear-gradient(180deg,#0a0d11,#080b0e);padding:clamp(18px,3vw,40px)}
.diag-wrap svg{min-width:760px;width:100%;height:auto;display:block}
.diag text{font-family:var(--mono);letter-spacing:.14em}
.dg-node rect{fill:#0e1218;stroke:rgba(255,255,255,.16)}
.dg-node text{fill:var(--white);font-size:11px}
.dg-node .sub{fill:var(--dim);font-size:8.5px}
.dg-line{stroke:rgba(255,255,255,.14);stroke-width:1}
.dg-flow{fill:none;stroke-width:1.6;stroke-dasharray:7 130;opacity:0}
.dg-flow.f-data{stroke:var(--data);filter:drop-shadow(0 0 4px rgba(61,139,255,.7))}
.dg-flow.f-power{stroke:var(--power);filter:drop-shadow(0 0 4px rgba(43,224,112,.7))}
.live .dg-flow{opacity:1}
.live .dg-flow.f-data{animation:flowd 3.2s linear infinite}
.live .dg-flow.f-power{animation:flowp 3.2s linear infinite;animation-delay:1.4s}
@keyframes flowd{from{stroke-dashoffset:0}to{stroke-dashoffset:-137}}
@keyframes flowp{from{stroke-dashoffset:0}to{stroke-dashoffset:137}}
.dg-call{opacity:0;transform:translateY(8px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.live .dg-call{opacity:1;transform:none}
.dg-call rect{fill:rgba(255,255,255,.02);stroke:rgba(255,255,255,.12)}
.dg-call text{font-size:9px;fill:var(--mute)}
.dg-call.cd text{fill:var(--data)}
.dg-call.cp text{fill:var(--power)}
.diag-legend{display:flex;gap:34px;margin-top:20px;flex-wrap:wrap}
.diag-legend span{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;color:var(--dim);display:flex;align-items:center;gap:10px}
.diag-legend i{width:22px;height:2px;display:inline-block}
.diag-legend .ld{background:var(--data);box-shadow:0 0 6px var(--data-dim)}
.diag-legend .lp{background:var(--power);box-shadow:0 0 6px var(--power-dim)}

/* ============================================================
   SAFETY COMPARISON
   ============================================================ */
.saf{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.saf-panel{position:relative;border:1px solid var(--line);overflow:hidden;background:#0a0d11}
.saf-panel img{width:100%;aspect-ratio:4/3.05;object-fit:cover;filter:saturate(.85);transition:transform 1.2s var(--ease)}
.saf-panel:hover img{transform:scale(1.03)}
.saf-panel .ov{position:absolute;inset:0;pointer-events:none}
.saf-no .ov{background:linear-gradient(180deg,transparent 40%,rgba(255,92,58,.14));box-shadow:inset 0 0 0 1px var(--warn-dim)}
.saf-yes .ov{background:linear-gradient(180deg,transparent 40%,rgba(43,224,112,.12));box-shadow:inset 0 0 0 1px var(--power-dim)}
.saf-head{
  position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;
  padding:13px 16px;font-family:var(--mono);font-size:10px;letter-spacing:.24em;
  background:linear-gradient(180deg,rgba(6,8,10,.85),transparent);z-index:2;
}
.saf-no .saf-head{color:var(--warn)}
.saf-yes .saf-head{color:var(--power)}
.saf-foot{position:absolute;bottom:0;left:0;right:0;padding:16px;z-index:2;background:linear-gradient(0deg,rgba(6,8,10,.9),transparent)}
.saf-foot b{display:block;font-family:var(--disp);font-weight:600;color:var(--white);font-size:1.02rem;letter-spacing:.02em}
.saf-foot span{font-family:var(--mono);font-size:10px;letter-spacing:.18em;color:var(--dim)}
.saf-points{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 26px;margin-top:34px}
.saf-points li{display:flex;gap:12px;align-items:baseline;font-size:.95rem;color:var(--mute)}
.saf-points li::before{content:'▸';color:var(--power);font-size:.8rem}
@media(max-width:820px){.saf{grid-template-columns:1fr}}

/* ============================================================
   USE CASES
   ============================================================ */
.uc{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.uc-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.1);aspect-ratio:16/10;background:#0a0d11;display:block;box-shadow:0 18px 54px rgba(0,0,0,.24)}
.uc-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.8s var(--ease),filter .6s;filter:saturate(.82) brightness(.82) contrast(1.04)}
.uc-card:hover img{transform:scale(1.065);filter:saturate(1) brightness(.98) contrast(1.05)}
.uc-card .shade{position:absolute;inset:0;background:linear-gradient(200deg,transparent 18%,rgba(6,8,10,.32) 48%,rgba(6,8,10,.92) 88%)}
.uc-card .tag{position:absolute;top:16px;left:16px;font-family:var(--mono);font-size:9.5px;letter-spacing:.24em;color:var(--white);background:rgba(6,8,10,.55);border:1px solid var(--line);padding:6px 10px;backdrop-filter:blur(5px)}
.uc-card .body{position:absolute;left:0;right:0;bottom:0;padding:22px 24px}
.uc-card h3{font-size:clamp(1.15rem,1.8vw,1.5rem);font-weight:600;margin-bottom:6px;letter-spacing:.01em}
.uc-card p{font-size:.9rem;color:var(--mute);max-width:46ch;opacity:.85;transition:opacity .5s}
.uc-card:hover p{opacity:1}
.uc-card .lineacc{position:absolute;left:24px;bottom:0;width:0;height:2px;background:var(--power);transition:width .6s var(--ease)}
.uc-card:hover .lineacc{width:56px}
@media(max-width:760px){.uc{grid-template-columns:1fr}.uc-card{aspect-ratio:16/11}}

/* ============================================================
   DEPLOYMENT SCENES
   ============================================================ */
.dep{display:flex;flex-direction:column;gap:18px}
.dep-scene{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.1);height:clamp(320px,62vh,590px);background:#06080a;box-shadow:0 28px 80px rgba(0,0,0,.3)}
.dep-scene img{position:absolute;inset:-12% 0;width:100%;height:124%;object-fit:cover;filter:saturate(.9) contrast(1.04) brightness(.9)}
.dep-scene .shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,8,10,.9) 0%,rgba(6,8,10,.18) 48%,rgba(6,8,10,.24) 100%)}
.dep-cap{position:absolute;left:clamp(18px,3.5vw,44px);bottom:clamp(18px,3.5vw,38px);max-width:560px;z-index:2}
.dep-cap .k{font-family:var(--mono);font-size:10px;letter-spacing:.26em;color:var(--power);display:block;margin-bottom:8px}
.dep-cap h3{font-size:clamp(1.2rem,2.2vw,1.7rem);font-weight:600}
.dep-cap p{margin-top:6px;font-size:.93rem;color:var(--mute)}

/* ============================================================
   TECHNOLOGY
   ============================================================ */
.tech{display:grid;grid-template-columns:1.18fr .82fr;gap:clamp(30px,4.5vw,64px);align-items:center}
.tech-visual{border:1px solid rgba(255,255,255,.1);overflow:hidden;background:#0a0d11;position:relative;box-shadow:0 26px 76px rgba(0,0,0,.32)}
.tech-visual img{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:center}
.tech-visual .pv-tag{bottom:14px;left:14px}
.steps{display:flex;flex-direction:column}
.step{
  display:grid;grid-template-columns:58px 1fr;gap:18px;padding:24px 4px 24px 0;
  border-left:1px solid var(--line);padding-left:26px;position:relative;
  transition:background .5s,border-color .5s;
}
.step .n{font-family:var(--mono);font-size:12px;letter-spacing:.16em;color:var(--dim);padding-top:4px;transition:color .5s}
.step h4{font-size:1.02rem;font-weight:600;margin-bottom:5px}
.step p{font-size:.9rem;color:var(--mute)}
.step::before{content:'';position:absolute;left:-4px;top:32px;width:7px;height:7px;transform:rotate(45deg);background:var(--void);border:1px solid var(--line2);transition:background .5s,border-color .5s,box-shadow .5s}
.step.active{border-left-color:var(--data)}
.step.active .n{color:var(--data)}
.step.active::before{background:var(--data);border-color:var(--data);box-shadow:0 0 10px var(--data-dim)}
@media(max-width:960px){.tech{grid-template-columns:1fr}}

/* ============================================================
   VALIDATION
   ============================================================ */
.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:56px}
.stat{
  border:1px solid var(--line);padding:28px 20px 24px;position:relative;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.006));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.stat::before{content:'';position:absolute;top:-1px;left:20px;width:30px;height:1px;background:var(--data)}
.stat b{display:block;font-family:var(--disp);font-weight:700;font-size:clamp(1.7rem,2.6vw,2.5rem);color:var(--white);line-height:1;letter-spacing:.01em}
.stat b .sfx{color:var(--data)}
.stat > span{display:block;margin-top:9px;font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.stat.s-power::before{background:var(--power)}
.stat.s-power b .sfx{color:var(--power)}
@media(max-width:1020px){.stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.stats{grid-template-columns:repeat(2,1fr)}}

.tests{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.testframe{border:1px solid rgba(255,255,255,.1);background:#080b0f;box-shadow:0 24px 70px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.035)}
.tf-head{
  display:flex;justify-content:space-between;align-items:center;
  padding:12px 16px;border-bottom:1px solid var(--line);
  font-family:var(--mono);font-size:10px;letter-spacing:.22em;color:var(--mute);
}
.tf-head .rec{color:var(--warn);display:flex;align-items:center;gap:7px}
.tf-head .rec::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--warn);animation:blink 1.6s infinite}
.tf-body{position:relative;aspect-ratio:16/9;background:#05070a}
.tf-body video{width:100%;height:100%;object-fit:cover}
.tf-pending{
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  background:
    repeating-linear-gradient(45deg,transparent 0 26px,rgba(255,255,255,.014) 26px 27px),
    radial-gradient(ellipse 70% 60% at 50% 50%,rgba(61,139,255,.05),transparent 70%);
}
.tf-pending .mono{font-size:10px;letter-spacing:.26em;color:var(--dim)}
.tf-pending .ring{width:54px;height:54px;border:1px solid var(--line2);transform:rotate(45deg);display:flex;align-items:center;justify-content:center}
.tf-pending .ring::before{content:'';width:8px;height:8px;background:var(--data);transform:rotate(0);box-shadow:0 0 12px var(--data-dim)}
.tf-foot{padding:15px 16px;border-top:1px solid var(--line);font-size:.86rem;color:var(--mute);background:rgba(255,255,255,.018)}
@media(max-width:820px){.tests{grid-template-columns:1fr}}

/* ============================================================
   PARTNERS
   ============================================================ */
.partners{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pcat{
  border:1px solid var(--line);padding:22px 22px;display:flex;align-items:center;gap:16px;
  font-family:var(--mono);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute);
  transition:border-color .35s,color .35s,background .35s;
}
.pcat::before{content:'';width:7px;height:7px;transform:rotate(45deg);border:1px solid var(--dim);transition:border-color .35s,background .35s;flex:none}
.pcat:hover{border-color:var(--power-dim);color:var(--white);background:rgba(43,224,112,.03)}
.pcat:hover::before{border-color:var(--power);background:rgba(43,224,112,.25)}
.pcat:nth-child(even):hover{border-color:var(--data-dim);background:rgba(61,139,255,.03)}
.pcat:nth-child(even):hover::before{border-color:var(--data);background:rgba(61,139,255,.25)}
@media(max-width:900px){.partners{grid-template-columns:repeat(2,1fr)}}
@media(max-width:580px){.partners{grid-template-columns:1fr}}

/* ============================================================
   CAPABILITIES
   ============================================================ */
.capabilities{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:38px}
.capability{--acc:var(--power);border:1px solid var(--line);padding:34px 30px;position:relative;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent)}
.capability::before{content:'';position:absolute;top:-1px;left:28px;width:44px;height:1px;background:var(--acc)}
.capability.f-data{--acc:var(--data)}
.avatar{
  width:76px;height:76px;border-radius:50%;border:1px solid var(--line2);
  display:flex;align-items:center;justify-content:center;margin-bottom:22px;
  font-family:var(--brand);font-size:19px;letter-spacing:.14em;color:var(--white);
  background:
    linear-gradient(45deg,rgba(255,255,255,.03) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.03) 50%,rgba(255,255,255,.03) 75%,transparent 75%) 0 0/6px 6px,
    #10141a;
  position:relative;
}
.avatar::after{content:'';position:absolute;inset:-5px;border-radius:50%;border:1px solid var(--acc);opacity:.35}
.capability h3{font-size:1.25rem;font-weight:600}
.capability .role{font-family:var(--mono);font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--acc);margin:7px 0 16px;display:block}
.capability p{font-size:.93rem;color:var(--mute)}
@media(max-width:820px){.capabilities{grid-template-columns:1fr}}

/* ============================================================
   CTA
   ============================================================ */
.cta{position:relative;text-align:center;overflow:hidden}
.cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 55% 60% at 50% 115%,rgba(43,224,112,.09),transparent 65%)}
.cta-line{position:absolute;left:50%;top:0;bottom:0;width:1px;background:linear-gradient(180deg,transparent,var(--line) 30%,var(--line) 70%,transparent);pointer-events:none}
.cta-line .p{position:absolute;left:-1.5px;width:4px;height:22px;border-radius:2px;background:linear-gradient(180deg,transparent,var(--power),transparent);animation:railup 5.5s linear infinite}
.cta .wrap{position:relative;z-index:2}
.cta h2{font-size:clamp(1.9rem,4vw,3.2rem);max-width:22ch;margin:0 auto}
.cta .lead{margin:22px auto 40px;max-width:56ch}
.cta-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* ============================================================
   FOOTER
   ============================================================ */
footer{border-top:1px solid var(--line);background:#05070a}
.foot{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:34px;padding:60px 0 46px}
.foot .word{font-family:var(--brand);font-size:16px;letter-spacing:.42em;color:var(--white)}
.foot .tag{font-family:var(--mono);font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--dim);margin-top:12px}
.foot h5{font-family:var(--mono);font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--dim);margin-bottom:16px;font-weight:400}
.foot ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.foot a{font-size:.9rem;color:var(--mute);transition:color .3s}
.foot a:hover{color:var(--white)}
.foot-base{
  border-top:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
  font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);
}
.foot-base .ok{color:var(--power)}
@media(max-width:820px){.foot{grid-template-columns:1fr;gap:30px}}

/* ============================================================
   ABOUT PAGE
   ============================================================ */
.ahero{padding:clamp(150px,22vh,220px) 0 clamp(70px,10vh,110px);position:relative}
.ahero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(30px,5vw,70px);align-items:center}
.ahero .h-display{font-size:clamp(2rem,4.4vw,3.7rem)}
.ahero-img{border:1px solid var(--line);overflow:hidden;background:#0a0d11}
.ahero-img img{width:100%;aspect-ratio:1122/1402;object-fit:cover}
@media(max-width:900px){.ahero-grid{grid-template-columns:1fr}}

.mission-points{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:40px}
.mission-points li{
  border:1px solid var(--line);padding:18px 20px;display:flex;gap:13px;align-items:center;
  font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);
}
.mission-points li::before{content:'';width:6px;height:6px;transform:rotate(45deg);border:1px solid var(--power);flex:none}

.timeline{position:relative;margin-top:50px;padding-left:34px}
.timeline::before{content:'';position:absolute;left:8px;top:6px;bottom:6px;width:1px;background:var(--line)}
.tl{position:relative;padding:0 0 44px}
.tl:last-child{padding-bottom:0}
.tl::before{content:'';position:absolute;left:-30px;top:7px;width:8px;height:8px;transform:rotate(45deg);background:var(--void);border:1px solid var(--data)}
.tl.tl-p::before{border-color:var(--power);background:rgba(43,224,112,.25)}
.tl .k{font-family:var(--mono);font-size:10px;letter-spacing:.26em;color:var(--dim);text-transform:uppercase}
.tl h4{font-size:1.12rem;margin:8px 0 6px}
.tl p{font-size:.93rem;max-width:64ch}

.duo{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.duo .panel{border:1px solid var(--line);padding:36px 32px;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent)}
.duo .panel h3{font-size:1.3rem;margin-bottom:14px}
.duo .panel .k{font-family:var(--mono);font-size:10px;letter-spacing:.26em;color:var(--data);display:block;margin-bottom:14px;text-transform:uppercase}
.duo .panel:last-child .k{color:var(--power)}
@media(max-width:820px){.duo{grid-template-columns:1fr}}

/* ============================================================
   V3 SCROLL CINEMA REDESIGN
   ============================================================ */
.v3-site{
  background:#020304;
  color:#a9b2bd;
}
.v3-site::before{
  opacity:.28;
  background-image:
    linear-gradient(45deg,rgba(255,255,255,.018) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.018) 50%,rgba(255,255,255,.018) 75%,transparent 75%),
    radial-gradient(circle at 50% 0,rgba(61,139,255,.12),transparent 34%);
}
.v3-nav{background:linear-gradient(180deg,rgba(2,3,4,.88),rgba(2,3,4,.36) 72%,transparent);border-bottom-color:rgba(255,255,255,.04)}
.v3-nav.scrolled{background:rgba(2,3,4,.86)}

.v3-hero{
  position:relative;min-height:100vh;min-height:100svh;overflow:hidden;background:#020304;
  display:grid;align-items:end;padding:clamp(118px,16vh,170px) clamp(22px,6vw,82px) clamp(86px,12vh,132px);
}
.v3-hero-video{position:absolute;inset:0;z-index:0}
.v3-hero-video video{
  width:100%;height:112%;object-fit:cover;object-position:center bottom;
  transform:translateY(calc(var(--v3-hero-lift,0) * -7%)) scale(calc(1.04 + (var(--v3-hero-lift,0) * .05)));
  filter:saturate(.95) contrast(1.08) brightness(.76);
}
.v3-hero-scrim{
  position:absolute;inset:0;z-index:1;
  background:
    radial-gradient(ellipse 70% 55% at 72% 48%,transparent 0%,rgba(2,3,4,.18) 55%,rgba(2,3,4,.86) 100%),
    linear-gradient(90deg,rgba(2,3,4,.92) 0%,rgba(2,3,4,.58) 34%,rgba(2,3,4,.18) 66%,rgba(2,3,4,.72) 100%),
    linear-gradient(180deg,rgba(2,3,4,.54) 0%,transparent 36%,rgba(2,3,4,.96) 100%);
}
.v3-hero-copy{position:relative;z-index:2;max-width:780px}
.v3-hero-copy .h-display{font-size:clamp(2.7rem,7vw,6.8rem);max-width:11ch}
.v3-hero-copy .h-display span{color:var(--power)}
.v3-hero-copy p{max-width:58ch;font-size:clamp(1.02rem,1.35vw,1.2rem);color:#c1cad3;margin-top:26px}
.v3-proofline{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:28px;max-width:980px;
}
.v3-proofline span{
  border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.035);padding:12px 14px;
  font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#cbd3dc;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.v3-scroll-cue{
  position:absolute;right:clamp(22px,5vw,72px);bottom:32px;z-index:2;
  font-family:var(--mono);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--dim);
  writing-mode:vertical-rl;
}
.v3-scroll-cue::after{content:'';display:block;width:1px;height:54px;margin:14px auto 0;background:linear-gradient(180deg,var(--power),transparent)}

.v3-scroll3d{height:430vh;position:relative;background:linear-gradient(180deg,#020304,#06080b 50%,#020304)}
.v3-scroll3d::before{
  content:'';position:absolute;inset:0;background:
    radial-gradient(ellipse 72% 40% at 67% 47%,rgba(61,139,255,.13),transparent 68%),
    radial-gradient(ellipse 40% 24% at 72% 75%,rgba(43,224,112,.12),transparent 72%);
  pointer-events:none;
}
.v3-scroll3d-sticky{
  position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;
  display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(28px,5vw,86px);align-items:center;
  padding:90px clamp(22px,5vw,72px) 70px;
}
.v3-story-copy{position:relative;z-index:4;max-width:520px}
.v3-story-copy .h-sec{font-size:clamp(2rem,4vw,3.6rem);max-width:13ch;text-transform:uppercase}
.v3-story-copy .lead{margin-top:22px;color:#b5bec8}
.v3-stage-readout{display:grid;gap:9px;margin-top:34px;max-width:440px}
.v3-stage-readout span{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.028);padding:11px 13px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.v3-stage-readout b{float:right;color:var(--power);font-weight:500}
.v3-stage{position:relative;min-height:78vh;display:grid;place-items:center;perspective:1300px;isolation:isolate}
.v3-stage::before{
  content:'';position:absolute;width:min(72vw,860px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(61,139,255,.2);
  transform:rotateX(68deg) rotateZ(var(--v3-rot,0deg));box-shadow:0 0 70px rgba(61,139,255,.08),inset 0 0 60px rgba(43,224,112,.05);
}
.v3-stage::after{
  content:'';position:absolute;bottom:8%;width:min(62vw,760px);height:74px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(43,224,112,.18),transparent 70%);filter:blur(5px);transform:rotateX(70deg);
}
.v3-tether-line{
  position:absolute;top:10%;bottom:16%;width:1px;z-index:1;
  background:linear-gradient(180deg,transparent,rgba(61,139,255,.6),rgba(43,224,112,.75),transparent);
  transform:translateX(calc((var(--v3-progress,0) - .5) * 120px));
  box-shadow:0 0 18px rgba(43,224,112,.55);
}
.v3-orbit{
  position:absolute;width:min(62vw,760px);aspect-ratio:1;border-radius:50%;
  transform:rotateX(68deg) rotateZ(calc(var(--v3-rot,0deg) * -1));z-index:1;
}
.v3-orbit::before,.v3-orbit::after{
  content:'';position:absolute;top:50%;left:50%;width:8px;height:8px;border-radius:50%;background:var(--data);
  box-shadow:0 0 18px var(--data);transform:rotate(36deg) translateX(47vw);
}
.v3-orbit::after{background:var(--power);box-shadow:0 0 18px var(--power);transform:rotate(190deg) translateX(34vw)}
.v3-airframe{
  position:relative;width:min(70vw,900px);aspect-ratio:16/10;z-index:3;
  transform:translateY(calc(var(--v3-progress,0) * -44px)) rotateX(calc(2deg - var(--v3-progress,0) * 4deg)) rotateY(calc(-10deg + var(--v3-progress,0) * 20deg));
  transform-style:preserve-3d;
}
.v3-frame{
  position:absolute;inset:0;width:100%;height:100%;object-fit:contain;
  opacity:0;filter:drop-shadow(0 40px 54px rgba(0,0,0,.72));
  transform:scale(.94) translateY(12px);transition:opacity .18s linear,transform .32s var(--ease);
}
.v3-frame.active{opacity:1;transform:scale(1) translateY(0)}
.v3-callout{
  position:absolute;z-index:5;border:1px solid rgba(255,255,255,.12);background:rgba(2,3,4,.64);backdrop-filter:blur(10px);
  padding:10px 12px;font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#c8d0d9;
}
.v3-callout-a{right:5%;top:23%}
.v3-callout-b{left:8%;bottom:22%;color:var(--power)}

.v3-panel{position:relative;padding:clamp(96px,14vh,170px) 0;background:#020304;overflow:hidden}
.v3-panel::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 35% at 50% 0,rgba(61,139,255,.07),transparent 65%);pointer-events:none}
.v3-split{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(32px,5vw,78px);align-items:center}
.v3-panel-copy{position:relative;z-index:2}
.v3-panel-copy .h-sec{font-size:clamp(2rem,4vw,3.65rem);max-width:14ch;text-transform:uppercase}
.v3-mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:28px}
.v3-mini-grid span{
  border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.028);padding:13px;
  font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#c5cdd6;
}
.v3-system-visual,.v3-tech-visual{
  position:relative;border:1px solid rgba(255,255,255,.12);background:#06080a;overflow:hidden;
  box-shadow:0 38px 110px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.04);
}
.v3-system-visual img,.v3-tech-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(.96) contrast(1.05)}
.v3-system-visual{aspect-ratio:16/10}
.v3-tech{background:linear-gradient(180deg,#040608,#020304)}
.v3-tech-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(28px,4vw,64px);align-items:start}
.v3-tech-visual{aspect-ratio:3/2}
.v3-steps{display:grid;gap:12px}
.v3-steps div{
  border:1px solid rgba(255,255,255,.1);background:linear-gradient(135deg,rgba(255,255,255,.05),rgba(255,255,255,.012));
  padding:22px 22px 24px;position:relative;overflow:hidden;
}
.v3-steps b{font-family:var(--mono);color:var(--data);font-size:1.5rem;font-weight:400}
.v3-steps h3{margin-top:8px;font-size:1.12rem;text-transform:uppercase}
.v3-steps p{margin-top:8px;font-size:.92rem;color:var(--mute)}
.v3-mission-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.v3-mission-grid figure{
  position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.1);aspect-ratio:4/5;background:#06080a;
  box-shadow:0 22px 70px rgba(0,0,0,.28);
}
.v3-mission-grid img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.82) brightness(.76);transition:transform 1.4s var(--ease),filter .5s}
.v3-mission-grid figure:hover img{transform:scale(1.07);filter:saturate(1) brightness(.94)}
.v3-mission-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:24px;background:linear-gradient(0deg,rgba(2,3,4,.94),transparent)}
.v3-mission-grid b{display:block;color:var(--white);font-family:var(--disp);font-size:1.15rem;text-transform:uppercase}
.v3-mission-grid span{display:block;margin-top:7px;font-size:.9rem;color:#bcc5ce}
.v3-validation{background:linear-gradient(180deg,#020304,#070a0d)}
.v3-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.v3-stats div{
  border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.028);padding:26px 18px;min-height:130px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.v3-stats b{display:block;color:var(--white);font-family:var(--disp);font-size:clamp(2rem,3vw,3.2rem);line-height:1}
.v3-stats b span{color:inherit}
.v3-stats div:nth-child(-n+3) b{color:var(--data)}
.v3-stats span{display:block;margin-top:12px;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.v3-video-slots{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:42px}
.v3-video-slots article{border:1px solid rgba(255,255,255,.1);background:#070a0d;padding:16px;box-shadow:0 24px 70px rgba(0,0,0,.32)}
.v3-video-slots article > span{display:block;color:var(--mute);font-size:10px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:12px}
.v3-video-placeholder{
  aspect-ratio:16/9;display:grid;place-items:center;border:1px solid rgba(61,139,255,.22);
  background:
    radial-gradient(ellipse at center,rgba(61,139,255,.13),transparent 58%),
    repeating-linear-gradient(45deg,transparent 0 28px,rgba(255,255,255,.018) 28px 29px),
    #040608;
  font-family:var(--mono);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--data);
}
.v3-video-slots p{margin-top:12px;font-size:.9rem;color:var(--mute)}
.v3-final{
  position:relative;overflow:hidden;text-align:center;padding:clamp(110px,18vh,210px) 0;background:#020304;
}
.v3-final::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 58% at 50% 100%,rgba(43,224,112,.12),transparent 65%)}
.v3-final .wrap{position:relative;z-index:2}
.v3-final .h-display{font-size:clamp(2.4rem,5.5vw,5.2rem);max-width:15ch;margin:0 auto}
.v3-final p{max-width:58ch;margin:24px auto 0;color:#c1cad3}
.v3-final .cta-btns{margin-top:38px}

@media(max-width:1100px){
  .v3-proofline,.v3-mission-grid{grid-template-columns:repeat(2,1fr)}
  .v3-scroll3d-sticky,.v3-split,.v3-tech-grid{grid-template-columns:1fr}
  .v3-story-copy{max-width:760px}
  .v3-stage{min-height:56vh}
}
@media(max-width:760px){
  .v3-hero{padding:112px 22px 78px;align-items:end}
  .v3-hero-copy .h-display{font-size:clamp(2.35rem,14vw,4.1rem)}
  .v3-proofline,.v3-mini-grid,.v3-stats,.v3-video-slots,.v3-mission-grid{grid-template-columns:1fr}
  .v3-scroll-cue{display:none}
  .v3-scroll3d{height:auto}
  .v3-scroll3d-sticky{position:relative;height:auto;padding:96px 22px}
  .v3-stage{min-height:360px}
  .v3-airframe{width:100%}
  .v3-callout{display:none}
}

/* ============================================================
   SAFE-FLIGHT FIRST SCREEN + ENCLOSED PROPULSION COMPARISON
   ============================================================ */
a:focus-visible,button:focus-visible{
  outline:1px solid rgba(226,255,238,.82);
  outline-offset:4px;
}

.v3-site{
  background:
    radial-gradient(ellipse 82% 52% at 68% -12%,rgba(61,139,255,.08),transparent 60%),
    linear-gradient(180deg,#010203,#05070a 42%,#020304 100%);
}
.v3-nav{
  padding-top:18px;padding-bottom:18px;
  background:linear-gradient(180deg,rgba(2,3,4,.82),rgba(2,3,4,.28) 76%,transparent);
}
.v3-nav.scrolled{background:rgba(2,3,4,.9);border-bottom-color:rgba(255,255,255,.1)}

.v3-hero{
  min-height:100vh;min-height:100svh;
  align-items:end;
  padding:clamp(116px,15vh,158px) clamp(22px,6vw,88px) clamp(34px,5.5vh,58px);
  background:#010203;
}
.v3-hero-video{overflow:hidden;background:#010203}
.v3-hero-video::before{
  content:'';position:absolute;inset:-14% -18%;z-index:1;pointer-events:none;
  background:
    radial-gradient(ellipse 32% 16% at 78% 38%,rgba(190,205,220,.14),transparent 70%),
    radial-gradient(ellipse 28% 12% at 59% 66%,rgba(190,205,220,.1),transparent 72%),
    radial-gradient(ellipse 34% 13% at 91% 72%,rgba(190,205,220,.09),transparent 74%);
  filter:blur(18px);
  opacity:.55;
  transform:translate3d(calc(var(--v3-hero-lift,0) * -54px),calc(var(--v3-hero-lift,0) * 24px),0);
  animation:v3CloudDrift 28s linear infinite alternate;
}
.v3-hero-video::after{
  content:'';position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.2;
  background-image:linear-gradient(45deg,rgba(255,255,255,.025) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.025) 50%,rgba(255,255,255,.025) 75%,transparent 75%);
  background-size:7px 7px;
  mix-blend-mode:soft-light;
}
@keyframes v3CloudDrift{
  from{transform:translate3d(-2%,0,0) scale(1)}
  to{transform:translate3d(3%,1%,0) scale(1.06)}
}
.v3-hero-video video,.v3-hero-poster{
  position:absolute;inset:0;width:100%;height:112%;object-fit:cover;object-position:68% 50%;
}
.v3-hero-poster{z-index:-1;filter:saturate(.9) contrast(1.1) brightness(.7)}
.v3-hero-video video{
  z-index:0;
  transform:translateY(calc(var(--v3-hero-lift,0) * -8.5%)) scale(calc(1.13 + (var(--v3-hero-lift,0) * .06)));
  filter:saturate(.86) contrast(1.12) brightness(.7);
}
.v3-hero-scrim{
  background:
    radial-gradient(ellipse 56% 48% at 72% 49%,rgba(2,3,4,.02) 0%,rgba(2,3,4,.18) 57%,rgba(2,3,4,.82) 100%),
    linear-gradient(90deg,rgba(1,2,3,.96) 0%,rgba(1,2,3,.7) 34%,rgba(1,2,3,.12) 64%,rgba(1,2,3,.66) 100%),
    linear-gradient(180deg,rgba(1,2,3,.68) 0%,rgba(1,2,3,.16) 38%,rgba(1,2,3,.94) 100%);
}
.v3-hero-copy{
  max-width:min(740px,56vw);
  padding-bottom:clamp(18px,3vh,34px);
}
.v3-hero-copy .eyebrow{margin-bottom:22px;color:#9ba5af}
.v3-hero-copy .h-display{
  max-width:12ch;
  font-size:clamp(2.9rem,6.5vw,6rem);
  letter-spacing:0;
  text-wrap:balance;
}
.v3-hero-copy .h-display span{color:inherit}
.v3-hero-copy p{margin-top:0}
.v3-hero-sub{
  margin-top:26px !important;
  max-width:650px;
  color:#e0e6ec !important;
  font-size:clamp(1.06rem,1.45vw,1.28rem) !important;
  line-height:1.65;
}
.v3-support-line{
  max-width:610px !important;
  margin-top:14px !important;
  padding-left:18px;
  border-left:1px solid rgba(255,255,255,.18);
  color:#a9b4bf !important;
  font-size:clamp(.95rem,1.1vw,1.04rem) !important;
}
.v3-hero .hero-ctas{align-items:center;margin-top:32px}
.v3-approach-link{
  font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#aeb7c0;
  border-bottom:1px solid rgba(255,255,255,.22);padding:10px 0 8px;transition:color .25s,border-color .25s;
}
.v3-approach-link:hover{color:var(--white);border-color:rgba(255,255,255,.66)}
.v3-hero-icons{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;
  margin-top:clamp(22px,3vh,34px);
  max-width:960px;
}
.v3-hero-icons article{
  display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start;
  min-height:104px;
  padding:15px 16px 14px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.048),rgba(255,255,255,.018));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.v3-hero-icons svg{
  width:38px;height:38px;color:#d9e0e7;stroke:currentColor;fill:none;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;
}
.v3-hero-icons article:nth-child(2) svg{color:#d7f8df}
.v3-hero-icons h3{
  font-size:.94rem;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;
}
.v3-hero-icons p{
  margin:0 !important;color:#a9b4bf;font-size:.91rem !important;line-height:1.5;
}

.v3-scroll3d{
  height:520vh;
  background:
    radial-gradient(ellipse 64% 34% at 72% 42%,rgba(61,139,255,.105),transparent 70%),
    linear-gradient(180deg,#020304,#05080b 44%,#020304);
}
.v3-scroll3d::before{
  background:
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px) 0 0/160px 160px,
    linear-gradient(180deg,rgba(255,255,255,.022) 1px,transparent 1px) 0 0/160px 160px,
    radial-gradient(ellipse 54% 30% at 74% 55%,rgba(43,224,112,.08),transparent 72%);
  opacity:.48;
}
.v3-scroll3d-sticky{
  grid-template-columns:minmax(500px,.9fr) minmax(520px,1.1fr);
  gap:clamp(34px,5vw,88px);
  padding:92px clamp(22px,5vw,76px) 70px;
}
.v3-story-copy{max-width:650px}
.v3-story-copy .eyebrow{margin-bottom:20px}
.v3-story-copy .h-sec{
  max-width:20ch;
  font-size:clamp(1.9rem,3.25vw,3.35rem);
  letter-spacing:0;
  text-wrap:balance;
}
.v3-story-copy .lead{
  max-width:60ch;
  margin-top:20px;
  line-height:1.72;
}
.v3-compare-states{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;
}
.v3-compare-state{
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.025);
  padding:14px 14px 15px;
  transition:border-color .35s,background .35s,opacity .35s;
  opacity:.68;
}
.v3-compare-state.active{
  opacity:1;
  border-color:rgba(226,255,238,.32);
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
}
.v3-compare-state span{
  display:block;font-family:var(--mono);font-size:8.5px;letter-spacing:.22em;text-transform:uppercase;color:#68727d;margin-bottom:9px;
}
.v3-compare-state h3{
  font-size:.94rem;text-transform:uppercase;margin-bottom:10px;letter-spacing:.03em;
}
.v3-compare-state ul{list-style:none;display:grid;gap:6px}
.v3-compare-state li{
  position:relative;padding-left:15px;font-size:.8rem;line-height:1.38;color:#aeb8c2;
}
.v3-compare-state li::before{
  content:'';position:absolute;left:0;top:.67em;width:5px;height:5px;border:1px solid rgba(255,255,255,.38);transform:rotate(45deg);
}
.v3-compare-state.active li::before{border-color:rgba(43,224,112,.7)}
.v3-stage-readout{grid-template-columns:repeat(3,minmax(0,1fr));max-width:650px;margin-top:13px}
.v3-stage-readout span{font-size:8.8px;padding:9px 10px}
.v3-stage-readout b{display:block;float:none;max-width:100%;margin-top:3px;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.v3-comparison-stage{
  min-height:82vh;
  --v3-progress:0;
}
.v3-comparison-stage::before{
  width:min(66vw,820px);
  border-color:rgba(255,255,255,.12);
  box-shadow:0 0 70px rgba(61,139,255,.07),inset 0 0 70px rgba(255,255,255,.025);
}
.v3-comparison-stage::after{
  width:min(58vw,720px);
  background:radial-gradient(ellipse,rgba(61,139,255,.15),transparent 69%);
}
.v3-conventional-visual{
  position:absolute;z-index:2;width:min(44vw,540px);aspect-ratio:16/10;overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:#06080a;
  opacity:calc(1 - (var(--v3-progress,0) * 2.45));
  transform:translateX(calc(var(--v3-progress,0) * -180px)) scale(calc(1 - (var(--v3-progress,0) * .16)));
  filter:grayscale(.2) saturate(.78) brightness(.78);
  box-shadow:0 30px 90px rgba(0,0,0,.48);
}
.v3-conventional-visual::after{
  content:'';position:absolute;inset:18% 13% auto auto;width:39%;aspect-ratio:1;border:1px solid rgba(255,92,58,.72);
  background:radial-gradient(circle,rgba(255,92,58,.18),transparent 66%);
  box-shadow:0 0 28px rgba(255,92,58,.28);
}
.v3-conventional-visual img{width:100%;height:100%;object-fit:cover;filter:contrast(1.06)}
.v3-airframe{
  opacity:calc((var(--v3-progress,0) - .26) * 3.2);
  width:min(68vw,920px);
  transform:
    translateY(calc(28px - (var(--v3-progress,0) * 78px)))
    rotateX(calc(3deg - var(--v3-progress,0) * 5deg))
    rotateY(calc(-13deg + var(--v3-progress,0) * 26deg));
}
.v3-frame{filter:drop-shadow(0 44px 58px rgba(0,0,0,.74))}
.v3-airflow-viz{
  position:absolute;z-index:4;width:min(58vw,720px);height:auto;
  opacity:calc((var(--v3-progress,0) - .48) * 3.8);
  transform:translateY(calc(46px - var(--v3-progress,0) * 58px));
  pointer-events:none;
}
.v3-airflow-viz path{
  fill:none;stroke:rgba(43,224,112,.62);stroke-width:2;stroke-linecap:round;
  stroke-dasharray:16 18;
  filter:drop-shadow(0 0 8px rgba(43,224,112,.38));
  animation:v3Airflow 2.8s linear infinite;
}
.v3-airflow-viz path:nth-child(2){stroke:rgba(61,139,255,.62);animation-duration:3.3s}
.v3-airflow-viz path:nth-child(3){animation-duration:3.8s}
@keyframes v3Airflow{to{stroke-dashoffset:-96}}
.v3-tether-line{
  opacity:calc((var(--v3-progress,0) - .64) * 4);
  top:7%;bottom:10%;
  transform:translateX(calc((var(--v3-progress,0) - .5) * 86px));
}
.v3-callout{
  transition:opacity .25s,transform .4s var(--ease);
  box-shadow:0 18px 52px rgba(0,0,0,.35);
}
.v3-callout-a{
  top:20%;right:4%;
  opacity:calc((var(--v3-progress,0) - .36) * 3.5);
}
.v3-callout-b{
  left:7%;bottom:18%;
  opacity:calc((var(--v3-progress,0) - .66) * 4);
}
.v3-callout-c{
  right:11%;top:42%;color:#ffb5a5;border-color:rgba(255,92,58,.38);
  opacity:calc(1 - (var(--v3-progress,0) * 2.8));
}

.v3-positioning{
  position:relative;
  padding:clamp(80px,12vh,142px) 0;
  background:
    radial-gradient(ellipse 62% 44% at 50% 100%,rgba(43,224,112,.08),transparent 70%),
    #020304;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.v3-positioning .wrap{max-width:1120px}
.v3-positioning p{
  font-family:var(--mono);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:#d9e9dd;margin-bottom:22px;
}
.v3-positioning h2{
  font-size:clamp(1.65rem,3.2vw,3.25rem);
  line-height:1.15;
  max-width:26ch;
  letter-spacing:0;
  text-wrap:balance;
}

@media(max-width:1180px){
  .v3-hero-copy{max-width:680px}
  .v3-hero-video video,.v3-hero-poster{object-position:72% 50%}
  .v3-scroll3d-sticky{grid-template-columns:1fr}
  .v3-story-copy{max-width:880px}
  .v3-story-copy .h-sec{max-width:22ch}
  .v3-comparison-stage{min-height:55vh}
  .v3-conventional-visual{width:min(62vw,520px)}
}
@media(max-width:820px){
  .v3-hero{
    padding:88px 20px 24px;
    min-height:100svh;
  }
  .v3-hero-copy{max-width:100%;padding-bottom:0}
  .v3-hero-video video,.v3-hero-poster{
    height:100%;
    object-position:64% 45%;
    transform:translateY(calc(var(--v3-hero-lift,0) * -5%)) scale(calc(1.24 + (var(--v3-hero-lift,0) * .03)));
  }
  .v3-hero-scrim{
    background:
      linear-gradient(180deg,rgba(1,2,3,.32) 0%,rgba(1,2,3,.54) 42%,rgba(1,2,3,.96) 78%,#010203 100%),
      linear-gradient(90deg,rgba(1,2,3,.82),rgba(1,2,3,.16) 70%);
  }
  .v3-hero-copy .h-display{font-size:clamp(2.45rem,12vw,3.65rem);max-width:10ch;line-height:.98}
  .v3-hero-sub{font-size:.95rem !important;max-width:42ch;line-height:1.55}
  .v3-support-line{font-size:.86rem !important;line-height:1.5;padding-left:14px}
  .v3-hero .hero-ctas{gap:10px}
  .v3-hero .hero-ctas{margin-top:22px}
  .v3-hero .btn{width:100%;justify-content:center}
  .v3-approach-link{width:max-content}
  .v3-hero-icons{
    display:flex;gap:8px;margin-top:18px;max-width:none;overflow-x:auto;padding:0 20px 6px 0;margin-right:-20px;
    scroll-snap-type:x mandatory;
  }
  .v3-hero-icons::-webkit-scrollbar{display:none}
  .v3-hero-icons article{min-width:260px;min-height:0;padding:12px 13px;grid-template-columns:32px 1fr;scroll-snap-align:start}
  .v3-hero-icons svg{width:30px;height:30px}
  .v3-hero-icons h3{font-size:.88rem}
  .v3-hero-icons p{font-size:.82rem !important}
  .v3-scroll3d{height:auto}
  .v3-scroll3d-sticky{position:relative;height:auto;padding:86px 20px 72px}
  .v3-compare-states{grid-template-columns:1fr}
  .v3-compare-state{opacity:1}
  .v3-stage-readout{grid-template-columns:1fr}
  .v3-stage-readout b{max-width:100%}
  .v3-comparison-stage{min-height:390px}
  .v3-conventional-visual{width:78vw}
  .v3-airframe{width:100%;opacity:1;transform:translateY(-12px)}
  .v3-airflow-viz{width:92vw;opacity:.6}
  .v3-positioning h2{max-width:24ch}
}

@media (prefers-reduced-motion:reduce){
  .v3-hero-video::before,.v3-airflow-viz path{animation:none !important}
  .v3-hero-video video{transform:scale(1.08) !important}
  .v3-airframe,.v3-conventional-visual,.v3-airflow-viz,.v3-tether-line,.v3-callout{transition:none !important}
}

/* ============================================================
   STATIC MEDIA PASS - clearer comparison, proof renders, videos
   ============================================================ */
.v3-static-compare{
  height:auto;
  padding:clamp(96px,14vh,156px) 0;
}
.v3-static-compare::before{
  background:
    radial-gradient(ellipse 65% 40% at 72% 30%,rgba(61,139,255,.09),transparent 70%),
    radial-gradient(ellipse 42% 25% at 18% 88%,rgba(43,224,112,.06),transparent 72%);
}
.v3-static-compare .wrap{position:relative;z-index:2}
.v3-static-compare .v3-story-copy{
  max-width:980px;
  margin-bottom:clamp(34px,5vh,56px);
}
.v3-static-compare .v3-story-copy .h-sec{
  max-width:22ch;
}
.v3-image-compare{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.v3-compare-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015)),
    #05070a;
  box-shadow:0 34px 100px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.05);
}
.v3-compare-card::before{
  content:'';
  position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,.42),transparent 54%);
  opacity:.5;
}
.v3-compare-card figure{
  position:relative;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#080b0f;
}
.v3-compare-card figure::after{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 48%,rgba(2,3,4,.86));
  pointer-events:none;
}
.v3-compare-card img{
  width:100%;height:100%;object-fit:cover;
  filter:saturate(.82) contrast(1.05) brightness(.82);
  transition:transform 1.2s var(--ease),filter .45s;
}
.v3-compare-card:hover img{transform:scale(1.035);filter:saturate(.98) contrast(1.08) brightness(.92)}
.v3-compare-card-tarvyn img{
  object-position:center 38%;
  filter:saturate(.92) contrast(1.08) brightness(.88);
}
.v3-compare-card > div{
  padding:clamp(22px,3vw,34px);
}
.v3-compare-card span{
  display:block;
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:#6f7a86;
  margin-bottom:12px;
}
.v3-compare-card-tarvyn span{color:#a7dcb8}
.v3-compare-card h3{
  font-size:clamp(1.15rem,1.6vw,1.55rem);
  text-transform:uppercase;
  margin-bottom:16px;
}
.v3-compare-card ul{
  list-style:none;
  display:grid;
  gap:10px;
}
.v3-compare-card li{
  position:relative;
  padding-left:20px;
  color:#b5bec8;
  font-size:.94rem;
  line-height:1.5;
}
.v3-compare-card li::before{
  content:'';
  position:absolute;left:0;top:.72em;
  width:6px;height:6px;
  border:1px solid rgba(255,255,255,.4);
  transform:rotate(45deg);
}
.v3-compare-card-tarvyn li::before{border-color:rgba(43,224,112,.7)}
.v3-compare-footer{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin-top:16px;
}
.v3-compare-footer span{
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.026);
  padding:13px 14px;
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#c4ccd5;
}

.v3-positioning{
  overflow:hidden;
  padding:clamp(90px,13vh,160px) 0;
}
.v3-positioning .wrap.v3-positioning-grid{
  max-width:1320px;
  display:grid;
  grid-template-columns:minmax(360px,.9fr) minmax(520px,1.1fr);
  gap:clamp(34px,5vw,76px);
  align-items:center;
}
.v3-positioning h2{
  max-width:23ch;
}
.v3-positioning-media{
  position:relative;
  min-height:clamp(500px,58vw,720px);
}
.v3-positioning-main,
.v3-positioning-inset{
  position:absolute;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:#080a0d;
  box-shadow:0 38px 120px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.06);
}
.v3-positioning-main{
  inset:0 10% 0 0;
}
.v3-positioning-inset{
  right:0;
  bottom:7%;
  width:min(48%,420px);
  aspect-ratio:16/10;
}
.v3-positioning-main::after,
.v3-positioning-inset::after{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent,rgba(2,3,4,.32));
  pointer-events:none;
}
.v3-positioning-media img{
  width:100%;height:100%;object-fit:cover;
  filter:saturate(.9) contrast(1.04) brightness(.88);
}
.v3-positioning-main img{object-position:center 46%}
.v3-positioning-inset img{object-position:center}

.v3-loop-film{
  position:relative;
  padding:clamp(86px,12vh,146px) 0;
  background:
    radial-gradient(ellipse 70% 46% at 74% 42%,rgba(61,139,255,.09),transparent 72%),
    #020304;
  overflow:hidden;
}
.v3-loop-film::before{
  content:'';
  position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);
}
.v3-loop-grid{
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:clamp(30px,5vw,78px);
  align-items:center;
}
.v3-loop-copy{position:relative;z-index:2}
.v3-loop-copy .h-sec{
  max-width:15ch;
  font-size:clamp(1.85rem,3.5vw,3.35rem);
  text-transform:uppercase;
}
.v3-loop-copy .lead{margin-top:20px}
.v3-loop-video{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.13);
  background:#05070a;
  aspect-ratio:16/9;
  box-shadow:0 42px 120px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.06);
}
.v3-loop-video::after{
  content:'';
  position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(2,3,4,.08),transparent 46%,rgba(2,3,4,.24)),
    linear-gradient(90deg,rgba(2,3,4,.42),transparent 48%);
  pointer-events:none;
}
.v3-loop-video video{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.92) contrast(1.08) brightness(.82);
}

@media(max-width:1100px){
  .v3-image-compare,
  .v3-loop-grid,
  .v3-positioning .wrap.v3-positioning-grid{
    grid-template-columns:1fr;
  }
  .v3-positioning-media{min-height:620px}
}

@media(max-width:760px){
  .v3-static-compare{padding:86px 0 74px}
  .v3-static-compare .v3-story-copy{margin-bottom:28px}
  .v3-compare-footer{grid-template-columns:1fr}
  .v3-positioning .wrap.v3-positioning-grid{gap:34px}
  .v3-positioning h2{font-size:clamp(1.55rem,8vw,2.35rem)}
  .v3-positioning-media{min-height:520px}
  .v3-positioning-main{inset:0 0 24% 0}
  .v3-positioning-inset{width:74%;right:0;bottom:0}
  .v3-loop-film{padding:74px 0}
  .v3-loop-copy .h-sec{max-width:18ch}
}

/* ============================================================
   PREMIUM MEDIA REFINEMENTS
   ============================================================ */
.v3-positioning{
  background:
    radial-gradient(ellipse 58% 38% at 78% 44%,rgba(61,139,255,.11),transparent 72%),
    radial-gradient(ellipse 48% 34% at 18% 76%,rgba(43,224,112,.07),transparent 72%),
    #020304;
}
.v3-positioning .wrap.v3-positioning-grid{
  grid-template-columns:minmax(390px,.78fr) minmax(540px,1.22fr);
  max-width:1360px;
}
.v3-positioning-copy{
  position:relative;
  z-index:2;
}
.v3-positioning-copy::before{
  content:'';
  display:block;
  width:88px;
  height:1px;
  margin-bottom:26px;
  background:linear-gradient(90deg,var(--power),rgba(61,139,255,.58),transparent);
}
.v3-positioning h2{
  max-width:14ch;
  font-size:clamp(2.15rem,4.2vw,4.65rem);
  line-height:1.02;
  letter-spacing:0;
  text-transform:uppercase;
}
.v3-positioning-lead{
  max-width:58ch;
  margin-top:26px;
  color:#aeb8c2;
  font-family:var(--body);
  font-size:clamp(1rem,1.18vw,1.1rem);
  letter-spacing:0;
  line-height:1.75;
  text-transform:none;
}
.v3-positioning-points{
  display:grid;
  gap:9px;
  max-width:440px;
  margin-top:28px;
}
.v3-positioning-points span{
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(90deg,rgba(255,255,255,.045),rgba(255,255,255,.016));
  padding:12px 14px;
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#cdd5de;
}
.v3-positioning-media{
  min-height:clamp(600px,62vw,820px);
  display:grid;
  place-items:center;
}
.v3-positioning-main{
  position:relative;
  inset:auto;
  width:100%;
  height:100%;
  min-height:inherit;
  display:grid;
  place-items:center;
  padding:clamp(18px,2vw,30px);
  border-color:rgba(255,255,255,.16);
  background:
    radial-gradient(ellipse 78% 58% at 50% 42%,rgba(255,255,255,.08),transparent 68%),
    linear-gradient(180deg,#0a0c0f,#050608);
}
.v3-positioning-main img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  filter:saturate(.92) contrast(1.06) brightness(.9);
  transform:translateZ(0);
}

.v3-loop-grid{
  grid-template-columns:.68fr 1.32fr;
  min-width:0;
}
.v3-loop-grid > *{min-width:0}
.v3-loop-copy .h-sec{
  max-width:13ch;
}
.v3-loop-video{
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:clamp(540px,46vw,720px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(190px,.34fr);
  gap:14px;
  padding:14px;
  background:
    radial-gradient(ellipse 74% 56% at 50% 45%,rgba(255,255,255,.07),transparent 68%),
    #030405;
}
.v3-loop-still{
  width:100%;
  max-width:100%;
  min-width:0;
  height:100%;
  min-height:inherit;
  object-fit:contain;
  object-position:center;
  filter:saturate(.94) contrast(1.06) brightness(.9);
}
.v3-loop-motion{
  position:relative;
  align-self:center;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:#05070a;
  aspect-ratio:9/16;
  box-shadow:0 24px 72px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.05);
}
.v3-loop-motion video{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.96) contrast(1.08) brightness(.88);
}
.v3-loop-motion span{
  position:absolute;
  left:12px;
  bottom:12px;
  z-index:2;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(2,3,4,.66);
  padding:6px 8px;
  font-family:var(--mono);
  font-size:9px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#d7dee6;
}

.v3-mission-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(18px,2.6vw,30px);
}
.v3-mission-grid figure{
  aspect-ratio:16/10;
  border-color:rgba(255,255,255,.15);
  box-shadow:0 34px 110px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .55s var(--ease),border-color .45s,box-shadow .45s;
}
.v3-mission-grid figure::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    radial-gradient(ellipse 60% 44% at 50% 35%,transparent 0%,transparent 46%,rgba(2,3,4,.28) 100%),
    linear-gradient(180deg,rgba(255,255,255,.04),transparent 36%,rgba(2,3,4,.64));
  opacity:.9;
}
.v3-mission-grid figure::after{
  content:'';
  position:absolute;
  left:24px;
  right:24px;
  top:18px;
  height:1px;
  z-index:3;
  background:linear-gradient(90deg,rgba(43,224,112,.65),rgba(61,139,255,.44),transparent);
  opacity:.65;
}
.v3-mission-grid img{
  filter:saturate(.96) brightness(.86) contrast(1.05);
}
.v3-mission-grid figure:hover{
  transform:translateY(-9px) scale(1.015);
  border-color:rgba(226,255,238,.28);
  box-shadow:0 48px 140px rgba(0,0,0,.55),0 0 54px rgba(43,224,112,.1),inset 0 1px 0 rgba(255,255,255,.08);
}
.v3-mission-grid figure:hover img{
  transform:scale(1.06);
  filter:saturate(1.08) brightness(1) contrast(1.08);
}
.v3-mission-grid figcaption{
  z-index:4;
  padding:clamp(24px,3vw,34px);
}
.v3-mission-grid b{
  font-size:clamp(1.3rem,2vw,2rem);
}
.v3-mission-grid span{
  max-width:38ch;
  font-size:clamp(.94rem,1.08vw,1.05rem);
}

@media(max-width:1100px){
  .v3-positioning .wrap.v3-positioning-grid,
  .v3-loop-grid{
    grid-template-columns:1fr;
  }
  .v3-positioning h2{max-width:18ch}
  .v3-positioning-media{min-height:620px}
}

@media(max-width:760px){
  .v3-positioning h2{
    max-width:13ch;
    font-size:clamp(2.05rem,10vw,3.35rem);
  }
  .v3-positioning-lead{font-size:.95rem}
  .v3-positioning-media{min-height:560px}
  .v3-positioning-main{
    min-height:560px;
    padding:12px;
  }
  .v3-loop-video{
    min-height:620px;
    grid-template-columns:1fr;
  }
  .v3-loop-still{min-height:430px}
  .v3-loop-motion{
    aspect-ratio:16/9;
    align-self:stretch;
  }
  .v3-mission-grid{grid-template-columns:1fr}
  .v3-mission-grid figure{aspect-ratio:4/5}
}

/* ============================================================
   SYSTEM CREDIBILITY PASS
   ============================================================ */
.v3-system-stack{
  display:grid;
  gap:1px;
  margin-top:30px;
  max-width:560px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.08);
  box-shadow:0 28px 90px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.05);
}
.v3-system-stack div{
  display:grid;
  grid-template-columns:44px minmax(130px,.42fr) 1fr;
  gap:14px;
  align-items:center;
  padding:14px 16px;
  background:linear-gradient(90deg,rgba(255,255,255,.045),rgba(255,255,255,.016)),#05070a;
}
.v3-system-stack b{
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.2em;
  color:var(--data);
  font-weight:500;
}
.v3-system-stack span{
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#e2e9ef;
}
.v3-system-stack em{
  font-style:normal;
  color:#9ea8b3;
  font-size:.92rem;
  line-height:1.45;
}
.v3-system-visual figcaption{
  position:absolute;
  left:18px;
  bottom:18px;
  z-index:2;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(2,3,4,.72);
  padding:8px 10px;
  font-family:var(--mono);
  font-size:9px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#d8e0e8;
  backdrop-filter:blur(8px);
}
.v3-validation-note{
  display:grid;
  grid-template-columns:minmax(190px,.32fr) 1fr;
  gap:clamp(18px,3vw,34px);
  align-items:start;
  margin-top:18px;
  padding:20px clamp(18px,2.5vw,28px);
  border:1px solid rgba(255,255,255,.11);
  background:
    linear-gradient(90deg,rgba(43,224,112,.07),rgba(61,139,255,.04),rgba(255,255,255,.014)),
    #05070a;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.v3-validation-note span{
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#ccebd4;
}
.v3-validation-note p{
  margin:0;
  color:#aeb8c2;
  max-width:78ch;
  line-height:1.65;
}
.v3-final{
  min-height:min(82vh,820px);
  display:grid;
  place-items:center;
}
.v3-final::before{
  background:
    radial-gradient(ellipse 60% 48% at 50% 100%,rgba(43,224,112,.13),transparent 68%),
    radial-gradient(ellipse 54% 34% at 70% 42%,rgba(61,139,255,.11),transparent 72%);
}
.v3-final::after{
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(2,3,4,.96) 0%,rgba(2,3,4,.66) 35%,rgba(2,3,4,.9) 100%),
    linear-gradient(180deg,rgba(2,3,4,.92),rgba(2,3,4,.28) 45%,rgba(2,3,4,.96)),
    url('../assets/img/hero_drone_tether_base.png') center 52%/min(760px,72vw) auto no-repeat;
  opacity:.82;
  filter:saturate(.86) contrast(1.08) brightness(.7);
}
.v3-final .wrap{
  max-width:980px;
}
.v3-final .eyebrow{
  color:#dce6ee;
}

@media(max-width:760px){
  .v3-hero{
    grid-template-columns:minmax(0,1fr);
  }
  .v3-hero-copy{
    width:100%;
    min-width:0;
    max-width:calc(100vw - 40px);
  }
  .v3-hero-sub,
  .v3-support-line{
    max-width:100% !important;
  }
  .v3-hero .hero-ctas{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    width:100%;
    min-width:0;
  }
  .v3-hero .btn{
    width:100%;
    justify-content:center;
    min-width:0;
    white-space:nowrap;
    text-align:center;
    letter-spacing:.12em;
    padding-left:12px;
    padding-right:12px;
  }
  .v3-approach-link{
    justify-self:start;
  }
  .v3-system-stack div{
    grid-template-columns:38px 1fr;
    align-items:start;
  }
  .v3-system-stack em{
    grid-column:2;
    font-size:.88rem;
  }
  .v3-system-visual figcaption{
    left:12px;
    right:12px;
    bottom:12px;
    text-align:center;
  }
  .v3-validation-note{
    grid-template-columns:1fr;
  }
  .v3-final::after{
    background:
      linear-gradient(180deg,rgba(2,3,4,.96),rgba(2,3,4,.58) 42%,rgba(2,3,4,.97)),
      url('../assets/img/hero_drone_tether_base.png') center 58%/min(620px,122vw) auto no-repeat;
  }
}

/* ============================================================
   SECTION EXPANSION + PREMIUM PASS  (premium-media-pass-8)
   The hero is full-bleed and scales with the viewport, but the
   content sections were pinned to a 1220px column and stranded in
   the middle of wide monitors — reading as "narrow." Sections now
   scale wide like the hero. Scoped to .v3-site so about.html is
   untouched.
   ============================================================ */
.v3-site .wrap{
  max-width:1640px;
  padding-left:clamp(22px,4.2vw,64px);
  padding-right:clamp(22px,4.2vw,64px);
}
/* keep the deliberately-centered closing statement tighter than full width */
.v3-site .v3-final .wrap{max-width:1060px}
/* positioning grid scales with the same rhythm */
.v3-site .v3-positioning .wrap.v3-positioning-grid{max-width:1640px}

/* A touch more air between the now-larger media columns */
.v3-site .v3-split{gap:clamp(36px,5.5vw,96px)}
.v3-site .v3-tech-grid{gap:clamp(32px,4.5vw,80px)}
.v3-site .v3-mission-grid{gap:clamp(18px,2.4vw,32px)}

/* --- Enclosed-propulsion comparison (section directly below hero) ---
   Make the TARVYN card read as the answer: brighter frame + a low
   green edge-light, against the dimmed conventional card. Wider,
   more cinematic image crop. */
.v3-image-compare{gap:clamp(16px,2.2vw,32px)}
.v3-compare-card figure{aspect-ratio:16/9}
.v3-compare-card-tarvyn{
  border-color:rgba(43,224,112,.30);
  box-shadow:
    0 44px 130px rgba(0,0,0,.42),
    0 0 0 1px rgba(43,224,112,.16),
    0 0 70px rgba(43,224,112,.09),
    inset 0 1px 0 rgba(255,255,255,.07);
}
.v3-compare-card-tarvyn::before{
  background:linear-gradient(90deg,rgba(43,224,112,.8),transparent 56%);
  opacity:.85;
}

/* On very wide screens keep the widest single-column reading measures
   from stretching past comfort even as the container grows */
.v3-site .v3-panel-copy .lead,
.v3-site .sec-head .lead{max-width:64ch}

@media(min-width:1500px){
  .v3-site .v3-split{grid-template-columns:.9fr 1.1fr}
  .v3-site .v3-tech-grid{grid-template-columns:1.15fr .85fr}
}

/* ============================================================
   FULL SECTION POLISH  (premium-media-pass-9)
   Cohesive, instrument-grade elevation across every section below
   the hero — consistent media framing, deeper presence, refined
   type rhythm and hover feedback. CSS-only, scoped to .v3-site.
   ============================================================ */

/* -- Steadier header rhythm across all sections -- */
.v3-site .h-sec{line-height:1.05}
.v3-site .v3-panel-copy .lead,
.v3-site .v3-story-copy .lead{color:#b7c0ca}

/* -- Shared media-frame edge-light: a bright top hairline reading
      like a machined seam, plus a deeper seated base shadow. -- */
.v3-site .v3-system-visual::after,
.v3-site .v3-tech-visual::after,
.v3-site .v3-loop-video::before{
  content:'';position:absolute;left:0;right:0;top:0;height:1px;z-index:3;
  background:linear-gradient(90deg,rgba(226,255,238,.55),rgba(61,139,255,.35),transparent 62%);
  opacity:.75;pointer-events:none;
}
.v3-site .v3-system-visual,
.v3-site .v3-tech-visual{
  box-shadow:0 46px 130px rgba(0,0,0,.5),0 0 60px rgba(61,139,255,.06),inset 0 1px 0 rgba(255,255,255,.05);
  transition:transform .5s var(--ease),box-shadow .5s var(--ease);
}
.v3-site .v3-system-visual:hover,
.v3-site .v3-tech-visual:hover{
  transform:translateY(-4px);
  box-shadow:0 60px 150px rgba(0,0,0,.58),0 0 70px rgba(61,139,255,.1),inset 0 1px 0 rgba(255,255,255,.07);
}

/* -- Positioning system-stack: crisper, reactive rows -- */
.v3-site .v3-system-stack div{transition:background .4s var(--ease)}
.v3-site .v3-system-stack div:hover{
  background:linear-gradient(90deg,rgba(61,139,255,.1),rgba(255,255,255,.02)),#05070a;
}

/* -- Technology steps: reactive instrument cards -- */
.v3-site .v3-steps div{transition:border-color .4s var(--ease),background .4s var(--ease),transform .4s var(--ease)}
.v3-site .v3-steps div::after{
  content:'';position:absolute;left:0;top:0;bottom:0;width:2px;
  background:linear-gradient(180deg,var(--data),transparent);
  opacity:0;transition:opacity .4s;
}
.v3-site .v3-steps div:hover{
  border-color:rgba(61,139,255,.42);
  background:linear-gradient(135deg,rgba(61,139,255,.09),rgba(255,255,255,.014));
  transform:translateY(-3px);
}
.v3-site .v3-steps div:hover::after{opacity:.9}
.v3-site .v3-steps b{font-size:1.7rem}

/* -- Missions: bigger, more cinematic caption typography -- */
.v3-site .v3-mission-grid figcaption{padding:clamp(26px,3.2vw,42px)}
.v3-site .v3-mission-grid b{font-size:clamp(1.4rem,2.1vw,2.15rem);letter-spacing:.01em}
.v3-site .v3-mission-grid span{font-size:clamp(.95rem,1.1vw,1.08rem);color:#c2cbd4}

/* -- Validation stats: instrument-readout ticks + reactive tiles -- */
.v3-site .v3-stats div{position:relative;overflow:hidden;transition:border-color .4s,background .4s,transform .4s}
.v3-site .v3-stats div::before{
  content:'';position:absolute;left:18px;top:-1px;width:28px;height:1px;background:var(--data);
}
.v3-site .v3-stats div:nth-child(n+4)::before{background:var(--power)}
.v3-site .v3-stats div:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.045)}
.v3-site .v3-stats b{font-size:clamp(2.1rem,3.1vw,3.35rem)}

/* -- Conventional compare card: subtle parity hover (still reads as
      the lesser option, but the whole comparison feels alive) -- */
.v3-site .v3-compare-card{transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .5s var(--ease)}
.v3-site .v3-compare-card:hover{transform:translateY(-4px)}
.v3-site .v3-compare-card-tarvyn:hover{
  box-shadow:
    0 56px 150px rgba(0,0,0,.48),
    0 0 0 1px rgba(43,224,112,.24),
    0 0 84px rgba(43,224,112,.14),
    inset 0 1px 0 rgba(255,255,255,.08);
}

/* -- Loop film frame presence -- */
.v3-site .v3-loop-video{border-color:rgba(255,255,255,.16)}

/* ============================================================
   ROADMAP + WIDTH POLISH  (premium-media-pass-10)
   Premium development timeline replacing the proof loop section.
   ============================================================ */
.v3-site .v3-positioning-copy{min-width:0}
.v3-site .v3-positioning .wrap.v3-positioning-grid{
  grid-template-columns:minmax(520px,.86fr) minmax(560px,1.14fr);
}
.v3-site .v3-positioning h2{
  max-width:min(16ch,100%);
  overflow-wrap:normal;
  word-break:normal;
}
.v3-site .v3-positioning .v3-positioning-lead{
  max-width:58ch;
  color:#aeb8c2;
  font-family:var(--body);
  font-size:clamp(1rem,1.18vw,1.1rem);
  letter-spacing:0;
  line-height:1.75;
  text-transform:none;
}
.v3-site .v3-positioning-media{min-width:0}

.v3-roadmap{
  position:relative;
  overflow:hidden;
  padding:clamp(92px,13vh,166px) 0;
  background:
    radial-gradient(ellipse 68% 46% at 72% 32%,rgba(61,139,255,.12),transparent 72%),
    radial-gradient(ellipse 52% 34% at 16% 82%,rgba(43,224,112,.07),transparent 74%),
    linear-gradient(180deg,#020304,#05070a 50%,#020304);
}
.v3-roadmap::before{
  content:'';
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(226,255,238,.18),rgba(61,139,255,.14),transparent);
}
.v3-roadmap::after{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.36;
  background:
    linear-gradient(90deg,rgba(255,255,255,.024) 1px,transparent 1px) 0 0/176px 176px,
    linear-gradient(180deg,rgba(255,255,255,.018) 1px,transparent 1px) 0 0/176px 176px;
  mask-image:linear-gradient(180deg,transparent,#000 18%,#000 82%,transparent);
}
.v3-roadmap-wrap{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(340px,.62fr) minmax(680px,1.38fr);
  gap:clamp(38px,5.5vw,92px);
  align-items:start;
}
.v3-roadmap-copy{
  position:relative;
  max-width:620px;
}
.v3-roadmap-copy::before{
  content:'';
  display:block;
  width:96px;
  height:1px;
  margin-bottom:26px;
  background:linear-gradient(90deg,var(--data),rgba(43,224,112,.55),transparent);
}
.v3-roadmap-copy .h-sec{
  max-width:14ch;
  font-size:clamp(2.15rem,4.1vw,4.55rem);
  line-height:1.02;
  letter-spacing:0;
  text-transform:uppercase;
}
.v3-roadmap-copy .lead{
  margin-top:24px;
  color:#b7c2cc;
  max-width:58ch;
}
.v3-roadmap-panel{
  position:relative;
  min-width:0;
}
.v3-roadmap-progress{
  position:absolute;
  left:0;
  right:0;
  top:31px;
  z-index:1;
  height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,.16),rgba(255,255,255,.07));
  transform:none;
}
.v3-roadmap-progress span{
  display:block;
  width:100%;
  height:100%;
  transform:scaleX(0);
  transform-origin:left center;
  background:linear-gradient(90deg,var(--power),var(--data),rgba(226,255,238,.72));
  box-shadow:0 0 24px rgba(61,139,255,.24),0 0 22px rgba(43,224,112,.18);
  transition:transform 1.65s var(--ease) .16s;
}
.v3-roadmap-progress.in span{transform:scaleX(1)}
.v3-roadmap-stages{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(12px,1.35vw,18px);
  padding-top:62px;
}
.v3-roadmap-stage{
  position:relative;
  min-height:264px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:16px;
  padding:clamp(20px,2vw,28px);
  border:1px solid rgba(255,255,255,.13);
  background:
    linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.018)),
    #05070a;
  box-shadow:0 34px 110px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .45s var(--ease),border-color .45s,box-shadow .45s,background .45s;
}
.v3-roadmap-stage::before{
  content:'';
  position:absolute;
  left:clamp(20px,2vw,28px);
  top:-37px;
  width:13px;
  height:13px;
  background:#020304;
  border:1px solid rgba(255,255,255,.46);
  transform:rotate(45deg);
  box-shadow:0 0 0 6px rgba(2,3,4,.92),0 0 22px rgba(61,139,255,.18);
}
.v3-roadmap-stage::after{
  content:'';
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,.34),transparent 58%);
  opacity:.6;
}
.v3-roadmap-stage:hover{
  transform:translateY(-5px);
  border-color:rgba(226,255,238,.22);
  background:
    linear-gradient(180deg,rgba(255,255,255,.064),rgba(255,255,255,.022)),
    #06090d;
  box-shadow:0 46px 132px rgba(0,0,0,.48),0 0 52px rgba(61,139,255,.08),inset 0 1px 0 rgba(255,255,255,.08);
}
.v3-roadmap-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.v3-roadmap-num{
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.26em;
  color:#dfe8ef;
}
.v3-roadmap-status{
  max-width:100%;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.035);
  padding:6px 8px;
  font-family:var(--mono);
  font-size:9px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#9faab6;
  white-space:nowrap;
}
.v3-roadmap-stage h3{
  margin-top:10px;
  font-size:clamp(1.15rem,1.45vw,1.55rem);
  line-height:1.08;
  text-transform:uppercase;
  letter-spacing:.015em;
}
.v3-roadmap-stage p{
  color:#aeb8c2;
  font-size:.96rem;
  line-height:1.62;
}
.v3-roadmap-stage.is-complete{border-color:rgba(43,224,112,.28)}
.v3-roadmap-stage.is-complete::before{border-color:rgba(43,224,112,.86);box-shadow:0 0 0 6px rgba(2,3,4,.92),0 0 26px rgba(43,224,112,.28)}
.v3-roadmap-stage.is-complete .v3-roadmap-status{color:#dfffea;border-color:rgba(43,224,112,.34);background:rgba(43,224,112,.08)}
.v3-roadmap-stage.is-active{border-color:rgba(61,139,255,.34)}
.v3-roadmap-stage.is-active::before{border-color:rgba(61,139,255,.92);box-shadow:0 0 0 6px rgba(2,3,4,.92),0 0 30px rgba(61,139,255,.34)}
.v3-roadmap-stage.is-active .v3-roadmap-status{color:#dbeaff;border-color:rgba(61,139,255,.38);background:rgba(61,139,255,.09)}
.v3-roadmap-stage.is-next::before{border-color:rgba(226,255,238,.7)}
.v3-roadmap-stage.is-pilot::before{border-color:rgba(255,255,255,.64)}
.v3-roadmap-stage.is-pilot .v3-roadmap-status{color:#e7eef5;border-color:rgba(255,255,255,.2)}

@media(max-width:1320px){
  .v3-site .v3-positioning .wrap.v3-positioning-grid{
    grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
  }
  .v3-site .v3-positioning h2{
    max-width:min(18ch,100%);
    font-size:clamp(2rem,3.35vw,3.45rem);
  }
  .v3-roadmap-wrap{
    grid-template-columns:1fr;
  }
  .v3-roadmap-copy{
    max-width:900px;
  }
  .v3-roadmap-copy .h-sec{
    max-width:18ch;
  }
}

@media(max-width:1240px){
  .v3-site .v3-positioning .wrap.v3-positioning-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:920px){
  .v3-roadmap-stages{
    grid-template-columns:repeat(2,minmax(0,1fr));
    row-gap:54px;
  }
  .v3-roadmap-stage{
    min-height:230px;
  }
}

@media(max-width:620px){
  .v3-roadmap{
    padding:78px 0 86px;
  }
  .v3-roadmap-copy .h-sec{
    max-width:13ch;
    font-size:clamp(2.05rem,10vw,3.15rem);
  }
  .v3-roadmap-panel{
    padding-left:22px;
  }
  .v3-roadmap-progress{
    left:5px;
    right:auto;
    top:0;
    bottom:0;
    width:1px;
    height:auto;
  }
  .v3-roadmap-progress span{
    width:100%;
    height:100%;
    transform:scaleY(0);
    transform-origin:center top;
    background:linear-gradient(180deg,var(--power),var(--data),rgba(226,255,238,.7));
  }
  .v3-roadmap-progress.in span{transform:scaleY(1)}
  .v3-roadmap-stages{
    grid-template-columns:1fr;
    gap:18px;
    padding-top:0;
  }
  .v3-roadmap-stage{
    min-height:0;
    padding:20px;
  }
  .v3-roadmap-stage::before{
    left:-23px;
    top:24px;
    width:11px;
    height:11px;
  }
  .v3-roadmap-meta{
    align-items:flex-start;
    flex-direction:column;
  }
  .v3-roadmap-status{
    white-space:normal;
  }
}

@media (prefers-reduced-motion:reduce){
  .v3-roadmap-progress span{
    transform:none !important;
    transition:none !important;
  }
  .v3-roadmap-stage{
    transition:none !important;
  }
  .v3-roadmap-stage:hover{
    transform:none;
  }
}

/* ============================================================
   FLIGHT TEST CINEMA (flight-cinema-pass-11)
   ============================================================ */
.brand{
  align-items:center;
  gap:12px;
  min-width:0;
}
.brand-logo{
  display:block;
  width:72px;
  height:48px;
  flex:0 0 auto;
  object-fit:contain;
  object-position:left center;
}
.footer-logo{
  display:block;
  width:112px;
  height:84px;
  object-fit:contain;
  object-position:left center;
  margin-bottom:4px;
}

.v3-site .v3-flight-hero{
  --v3-parallax-x:0px;
  --v3-parallax-y:0px;
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-rows:minmax(0,1fr) auto auto;
  align-items:stretch;
  min-height:100vh;
  min-height:100svh;
  padding:80px 0 0;
  overflow:hidden;
  background:#010203;
}
.v3-site .v3-flight-hero .flight-media{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:#010203;
}
.v3-site .v3-flight-hero .flight-media::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  opacity:.13;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:100% 4px;
  mix-blend-mode:soft-light;
}
.v3-site .v3-flight-hero .flight-media::after{
  content:'';
  position:absolute;
  z-index:4;
  top:-32%;
  right:-8%;
  left:43%;
  height:24%;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(180deg,transparent,rgba(61,139,255,.035) 32%,rgba(255,255,255,.075) 50%,rgba(43,224,112,.025) 68%,transparent);
  filter:blur(10px);
  mix-blend-mode:screen;
  transform:translate3d(0,-10%,0);
  animation:flightScan 11s cubic-bezier(.45,0,.22,1) infinite;
}
@keyframes flightScan{
  0%,18%{opacity:0;transform:translate3d(0,-10%,0)}
  28%{opacity:.6}
  62%{opacity:.34}
  76%,100%{opacity:0;transform:translate3d(0,540%,0)}
}
.v3-site .v3-flight-hero .flight-media-item{
  position:absolute;
  inset:0;
  z-index:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:69% 48%;
  opacity:0;
  transform:translate3d(var(--v3-parallax-x),calc((var(--v3-hero-lift,0) * -18px) + var(--v3-parallax-y)),0) scale(1.045);
  filter:saturate(.88) contrast(1.08) brightness(.72);
  transition:opacity .72s var(--ease),transform 1.25s var(--ease),filter .72s var(--ease);
  pointer-events:none;
}
.v3-site .v3-flight-hero .flight-media-item[data-flight-media="1"]{
  object-position:70% 46%;
  filter:saturate(.82) contrast(1.08) brightness(.68);
}
.v3-site .v3-flight-hero .flight-media-item[data-flight-media="0"]{
  top:70px;
  bottom:auto;
  height:calc(100% - 212px);
  object-fit:contain;
  object-position:80% center;
  filter:saturate(.92) contrast(1.06) brightness(.88);
}
.v3-site .v3-flight-hero .flight-media-item[data-flight-media="2"]{
  object-position:center;
  filter:saturate(.82) contrast(1.08) brightness(.64);
}
.v3-site .v3-flight-hero .flight-media-item.is-active{
  z-index:1;
  opacity:1;
  transform:translate3d(var(--v3-parallax-x),calc((var(--v3-hero-lift,0) * -18px) + var(--v3-parallax-y)),0) scale(1.015);
}
.v3-site .v3-flight-hero .v3-hero-scrim{
  position:absolute;
  inset:0;
  z-index:5;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(1,2,3,.95) 0%,rgba(1,2,3,.78) 30%,rgba(1,2,3,.18) 52%,rgba(1,2,3,.03) 75%,rgba(1,2,3,.3) 100%),
    linear-gradient(180deg,rgba(1,2,3,.52) 0%,rgba(1,2,3,.02) 34%,rgba(1,2,3,.2) 66%,rgba(1,2,3,.86) 100%);
}
.flight-stage{
  position:relative;
  z-index:6;
  display:flex;
  align-items:flex-end;
  min-height:0;
  padding:clamp(42px,7vh,82px) clamp(24px,4.7vw,72px) clamp(34px,5vh,54px);
}
.v3-site .v3-flight-hero .v3-hero-copy{
  width:min(720px,52vw);
  max-width:none;
  padding:0;
}
.v3-site .v3-flight-hero .v3-hero-copy .eyebrow{
  margin:0 0 22px;
  color:#65aefb;
}
.v3-site .v3-flight-hero .v3-hero-copy .h-display{
  max-width:14ch;
  margin:0;
  font-size:clamp(3.15rem,5.5vw,5.45rem);
  line-height:.94;
  letter-spacing:0;
  text-wrap:balance;
}
.v3-site .v3-flight-hero .v3-hero-sub{
  max-width:47ch;
  margin:28px 0 0 !important;
  color:#c0c8d0 !important;
  font-size:clamp(1rem,1.25vw,1.17rem) !important;
  line-height:1.65;
}
.v3-site .v3-flight-hero .hero-ctas{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:32px;
}
.v3-site .v3-flight-hero .hero-ctas .btn{
  min-width:142px;
  justify-content:center;
  border-color:rgba(84,158,255,.48);
  color:#dbeaff;
  background:
    linear-gradient(180deg,rgba(48,121,224,.13),rgba(5,17,31,.42)),
    rgba(4,10,18,.42);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 18px 46px rgba(0,0,0,.2);
  overflow:hidden;
}
.v3-site .v3-flight-hero .hero-ctas .btn::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(100deg,transparent 0%,rgba(170,213,255,.24) 46%,transparent 74%);
  opacity:0;
  transform:translateX(-80%);
  transition:opacity .35s var(--ease),transform .65s var(--ease);
}
.v3-site .v3-flight-hero .hero-ctas .btn::after{
  color:#72b2ff;
  opacity:.72;
}
.v3-site .v3-flight-hero .hero-ctas .btn:hover,
.v3-site .v3-flight-hero .hero-ctas .btn:focus-visible{
  border-color:rgba(112,180,255,.88);
  background:
    linear-gradient(180deg,rgba(61,139,255,.2),rgba(6,24,43,.56)),
    rgba(5,17,31,.7);
  box-shadow:0 0 34px rgba(61,139,255,.16),inset 0 1px 0 rgba(255,255,255,.08);
}
.v3-site .v3-flight-hero .hero-ctas .btn:hover::before,
.v3-site .v3-flight-hero .hero-ctas .btn:focus-visible::before{
  opacity:1;
  transform:translateX(82%);
}
.v3-site .v3-flight-hero .hero-ctas .flight-primary{
  border-color:rgba(104,176,255,.92);
  color:#f1f7ff;
  background:
    linear-gradient(180deg,rgba(61,139,255,.32),rgba(12,45,80,.68)),
    rgba(6,20,36,.82);
  box-shadow:0 0 42px rgba(61,139,255,.18),inset 0 1px 0 rgba(255,255,255,.08);
}
.btn-data{
  border-color:rgba(61,139,255,.72);
  color:#dbeaff;
  background:rgba(2,9,16,.38);
  box-shadow:inset 0 0 0 1px rgba(61,139,255,.04);
}
.btn-data:hover,
.btn-data:focus-visible{
  border-color:#58a5ff;
  background:rgba(61,139,255,.1);
  box-shadow:0 0 32px rgba(61,139,255,.12),inset 0 0 0 1px rgba(61,139,255,.12);
}
.flight-verified{
  display:flex;
  align-items:center;
  gap:12px;
  width:max-content;
  max-width:100%;
  margin-top:26px;
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.18em;
  line-height:1.5;
  text-transform:uppercase;
  color:#7cf4a5;
}
.flight-verified [data-flight-status]{
  position:relative;
  display:inline-block;
  padding-bottom:7px;
  color:#9cfab8;
  text-shadow:0 0 14px rgba(43,224,112,.16);
  animation:verifiedTextPulse 4.8s ease-in-out infinite;
}
.flight-verified [data-flight-status]::before,
.flight-verified [data-flight-status]::after{
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  pointer-events:none;
}
.flight-verified [data-flight-status]::before{
  background:linear-gradient(90deg,rgba(43,224,112,.38),rgba(61,139,255,.26),transparent 86%);
  opacity:.62;
}
.flight-verified [data-flight-status]::after{
  width:28%;
  right:auto;
  background:linear-gradient(90deg,transparent,rgba(217,255,229,.95),rgba(91,166,255,.52),transparent);
  filter:drop-shadow(0 0 8px rgba(61,139,255,.36));
  transform:translateX(-105%);
  animation:verifiedScanLine 5.8s cubic-bezier(.42,0,.18,1) infinite;
}
.flight-status-light{
  width:8px;
  height:8px;
  flex:0 0 auto;
  border:1px solid #68f398;
  background:#2be070;
  box-shadow:0 0 16px rgba(43,224,112,.55);
  animation:flightStatus 2.8s ease-in-out infinite;
}
@keyframes flightStatus{0%,100%{opacity:1}50%{opacity:.45}}
@keyframes verifiedScanLine{
  0%,18%{opacity:0;transform:translateX(-105%)}
  28%{opacity:.92}
  62%{opacity:.44}
  78%,100%{opacity:0;transform:translateX(360%)}
}
@keyframes verifiedTextPulse{
  0%,100%{opacity:.82;text-shadow:0 0 12px rgba(43,224,112,.1)}
  48%,54%{opacity:1;text-shadow:0 0 18px rgba(61,139,255,.14)}
}

.flight-tabs{
  position:relative;
  z-index:7;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  min-height:64px;
  border-top:1px solid rgba(255,255,255,.2);
  border-bottom:1px solid rgba(255,255,255,.12);
  background:rgba(2,4,6,.84);
  backdrop-filter:blur(16px);
}
.flight-tab{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:14px;
  min-width:0;
  padding:18px clamp(18px,3vw,46px);
  border:0;
  border-right:1px solid rgba(255,255,255,.17);
  border-radius:0;
  color:#7f8994;
  background:transparent;
  cursor:pointer;
  text-align:left;
  transition:color .35s,background .35s,box-shadow .35s;
}
.flight-tab:last-child{border-right:0}
.flight-tab span,
.flight-tab b{
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.flight-tab span{color:#4d93df}
.flight-tab b{min-width:0;color:inherit;font-weight:500}
.flight-tab i{
  width:13px;
  height:13px;
  border:1px solid currentColor;
  background:transparent;
}
.flight-tab::after{
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:1px;
  opacity:0;
  background:linear-gradient(90deg,transparent,var(--power),transparent);
  transition:opacity .35s;
}
.flight-tab:hover{color:#d6dee6;background:rgba(255,255,255,.025)}
.flight-tab:focus-visible{outline:1px solid #6cb2ff;outline-offset:-4px}
.flight-tab.is-active{
  color:#e6edf3;
  background:linear-gradient(90deg,rgba(43,224,112,.07),rgba(255,255,255,.018));
  box-shadow:inset 0 0 40px rgba(43,224,112,.025);
}
.flight-tab.is-active span{color:#67f397}
.flight-tab.is-active i{border-color:#57ed89;box-shadow:0 0 14px rgba(43,224,112,.24)}
.flight-tab.is-active::after{opacity:1}

.flight-roadmap-peek{
  position:relative;
  z-index:7;
  display:grid;
  grid-template-columns:minmax(190px,.3fr) minmax(0,1fr);
  align-items:center;
  gap:clamp(24px,4vw,66px);
  min-height:78px;
  padding:18px clamp(24px,4.7vw,72px);
  color:#6daced;
  background:linear-gradient(90deg,#020304,rgba(3,10,17,.98),#020304);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.flight-roadmap-peek>span:first-child{
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.flight-roadmap-stages{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  align-items:center;
}
.flight-roadmap-stages::before{
  content:'';
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:1px;
  background:linear-gradient(90deg,rgba(43,224,112,.6),rgba(61,139,255,.6),rgba(255,255,255,.24));
}
.flight-roadmap-stages::after{
  content:'';
  position:absolute;
  z-index:0;
  top:calc(50% - 1px);
  left:0;
  width:clamp(56px,8vw,112px);
  height:2px;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(90deg,transparent,rgba(132,190,255,.85),rgba(114,248,160,.7),transparent);
  filter:blur(.5px);
  transform:translateX(-120%);
  animation:flightSignal 7.2s ease-in-out infinite 1.2s;
}
@keyframes flightSignal{
  0%,16%{opacity:0;transform:translateX(-120%)}
  26%{opacity:.8}
  68%{opacity:.55}
  78%,100%{opacity:0;transform:translateX(calc(100vw - 20px))}
}
.flight-roadmap-stages b{
  position:relative;
  z-index:1;
  justify-self:center;
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  border:1px solid rgba(255,255,255,.28);
  color:#9faab5;
  background:#030507;
  font-family:var(--mono);
  font-size:0;
  font-weight:500;
  transform:rotate(45deg);
}
.flight-roadmap-stages b::first-letter{color:inherit}
.flight-roadmap-stages b.is-complete{border-color:#2be070;color:#dfffea}
.flight-roadmap-stages b.is-active{border-color:#3d8bff;color:#dbeaff;box-shadow:0 0 18px rgba(61,139,255,.18)}

.loaded .v3-flight-hero .v3-hero-copy>*{
  animation:flightIntro .9s var(--ease) both;
}
.loaded .v3-flight-hero .v3-hero-copy>*:nth-child(2){animation-delay:.08s}
.loaded .v3-flight-hero .v3-hero-copy>*:nth-child(3){animation-delay:.16s}
.loaded .v3-flight-hero .v3-hero-copy>*:nth-child(4){animation-delay:.24s}
.loaded .v3-flight-hero .v3-hero-copy>*:nth-child(5){animation-delay:.32s}
@keyframes flightIntro{
  from{opacity:0;transform:translate3d(0,18px,0);filter:blur(5px)}
  to{opacity:1;transform:none;filter:blur(0)}
}

@media(min-width:761px){
  .v3-site .v3-flight-hero .v3-hero-copy{
    transform:translateY(-5vh);
  }
}

@media(max-width:1050px){
  .v3-site .v3-flight-hero .v3-hero-copy{width:min(620px,58vw)}
  .flight-tab{padding-inline:20px;gap:10px}
  .nav-links{gap:18px}
  .brand .sub{display:none}
}

@media(max-width:760px){
  .brand-logo{width:60px;height:42px}
  .footer-logo{width:96px;height:72px}
  .v3-site .v3-flight-hero{
    grid-template-rows:minmax(610px,1fr) auto auto;
    min-height:100svh;
    padding-top:70px;
  }
  .v3-site .v3-flight-hero .flight-media-item,
  .v3-site .v3-flight-hero .flight-media-item.is-active{
    object-position:63% 34%;
    transform:scale(1.17);
  }
  .v3-site .v3-flight-hero .flight-media-item[data-flight-media="0"]{
    top:70px;
    height:360px;
    object-fit:contain;
    object-position:68% center;
    transform:scale(1.04);
  }
  .v3-site .v3-flight-hero .flight-media-item[data-flight-media="1"]{object-position:58% 34%;filter:saturate(.82) contrast(1.06) brightness(.62)}
  .v3-site .v3-flight-hero .flight-media-item[data-flight-media="2"]{object-position:center;transform:scale(1.08)}
  .v3-site .v3-flight-hero .flight-media::after{left:20%;right:-18%;height:18%;filter:blur(8px)}
  .v3-site .v3-flight-hero .v3-hero-scrim{
    background:
      linear-gradient(180deg,rgba(1,2,3,.08) 0%,rgba(1,2,3,.18) 32%,rgba(1,2,3,.86) 64%,#010203 100%),
      linear-gradient(90deg,rgba(1,2,3,.78),rgba(1,2,3,.04) 78%);
  }
  .flight-stage{
    align-items:flex-end;
    padding:210px 20px 30px;
  }
  .v3-site .v3-flight-hero .v3-hero-copy{width:100%;max-width:100%}
  .v3-site .v3-flight-hero .v3-hero-copy .eyebrow{margin-bottom:16px}
  .v3-site .v3-flight-hero .v3-hero-copy .h-display{max-width:9ch;font-size:clamp(2.7rem,13.5vw,4rem);line-height:.96}
  .v3-site .v3-flight-hero .v3-hero-sub{max-width:40ch;margin-top:20px !important;font-size:.94rem !important;line-height:1.55}
  .v3-site .v3-flight-hero .hero-ctas{display:grid;grid-template-columns:1fr;margin-top:22px}
  .v3-site .v3-flight-hero .btn{width:100%;justify-content:center}
  .flight-verified{margin-top:18px;font-size:9px;letter-spacing:.14em}
  .flight-tabs{
    display:flex;
    min-height:62px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .flight-tabs::-webkit-scrollbar{display:none}
  .flight-tab{flex:0 0 248px;min-height:62px;padding:17px 18px;scroll-snap-align:start}
  .flight-roadmap-peek{grid-template-columns:1fr;gap:12px;min-height:92px;padding:16px 20px 18px}
  .flight-roadmap-stages b{width:23px;height:23px;font-size:7px}
}

@media (prefers-reduced-motion:reduce){
  .flight-status-light{animation:none !important}
  .flight-verified [data-flight-status],
  .flight-verified [data-flight-status]::after{animation:none !important}
  .v3-site .v3-flight-hero .hero-ctas .btn::before{transition:none !important}
  .v3-site .v3-flight-hero .flight-media::after,
  .flight-roadmap-stages::after,
  .loaded .v3-flight-hero .v3-hero-copy>*{animation:none !important;opacity:1 !important;transform:none !important;filter:none !important}
  .v3-site .v3-flight-hero .flight-media-item{
    transition:none !important;
    transform:none !important;
  }
  .flight-tab,
  .flight-tab::after{transition:none !important}
}

/* ============================================================
   FLIGHT RECORD FINALE (flight-cinema-pass-13)
   ============================================================ */
.v3-site .v3-flight-final{
  display:block;
  min-height:0;
  padding:0;
  text-align:left;
  isolation:isolate;
  background:#090d11;
}
.v3-site .v3-flight-final::before{
  z-index:-1;
  background:
    radial-gradient(ellipse 70% 72% at 20% 54%,rgba(34,74,108,.2),transparent 72%),
    linear-gradient(180deg,#0b1015,#070a0d);
}
.v3-site .v3-flight-final::after{display:none}
.v3-final-grid{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);
  min-height:min(82vh,820px);
}
.v3-final-copy{
  align-self:center;
  padding:clamp(90px,12vh,138px) clamp(44px,6vw,98px);
  padding-left:max(clamp(26px,4.2vw,64px),calc((100vw - 1640px)/2 + 64px));
}
.v3-site .v3-final-copy .h-display{
  max-width:12.5ch;
  margin:0;
  font-size:clamp(2.7rem,4.7vw,5rem);
}
.v3-site .v3-final-copy>p{
  max-width:54ch;
  margin:24px 0 0;
  color:#c8d1d9;
}
.v3-site .v3-final-copy .cta-btns{
  justify-content:flex-start;
  margin-top:36px;
}
.v3-approach-lights{
  position:relative;
  display:grid;
  grid-template-columns:repeat(7,1fr);
  align-items:center;
  width:min(420px,100%);
  margin-top:52px;
}
.v3-approach-lights::before{
  content:'';
  position:absolute;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg,rgba(93,151,201,.32),rgba(255,255,255,.08));
}
.v3-approach-lights span{
  position:relative;
  justify-self:start;
  width:4px;
  height:4px;
  background:#bedbff;
  box-shadow:0 0 0 1px rgba(190,219,255,.18),0 0 16px rgba(95,164,233,.42);
  opacity:.28;
}
.v3-approach-lights span:nth-child(6){background:#f6f8fa}
.v3-approach-lights span:nth-child(7){background:#51ee87;box-shadow:0 0 18px rgba(43,224,112,.52)}
.is-flight-active .v3-approach-lights span{animation:approachLight 5.6s ease-in-out infinite}
.is-flight-active .v3-approach-lights span:nth-child(2){animation-delay:.16s}
.is-flight-active .v3-approach-lights span:nth-child(3){animation-delay:.32s}
.is-flight-active .v3-approach-lights span:nth-child(4){animation-delay:.48s}
.is-flight-active .v3-approach-lights span:nth-child(5){animation-delay:.64s}
.is-flight-active .v3-approach-lights span:nth-child(6){animation-delay:.8s}
.is-flight-active .v3-approach-lights span:nth-child(7){animation-delay:.96s}
@keyframes approachLight{
  0%,15%,50%,100%{opacity:.24}
  24%,34%{opacity:1;box-shadow:0 0 24px currentColor}
}
.v3-final-signal{
  display:block;
  margin-top:17px;
  color:#72808d;
  font-size:9px;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.v3-final-media{
  position:relative;
  z-index:2;
  min-width:0;
  min-height:680px;
  overflow:hidden;
  border-left:1px solid rgba(255,255,255,.12);
  background:#121820;
}
.v3-final-video{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 52%;
  filter:saturate(.76) contrast(1.04) brightness(.92);
  transform:scale(1.015);
}
.v3-final-video-shade{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(9,13,17,.58),transparent 24%),
    linear-gradient(180deg,rgba(3,5,7,.35),transparent 30%,transparent 70%,rgba(3,5,7,.72));
}
.v3-final-live{
  position:absolute;
  top:32px;
  right:34px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(3,6,8,.58);
  backdrop-filter:blur(8px);
  color:#d7e1e9;
  font-size:9px;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.v3-final-live i{
  width:5px;
  height:5px;
  background:#4fec83;
  box-shadow:0 0 12px rgba(43,224,112,.62);
}
.v3-final-media figcaption{
  position:absolute;
  left:34px;
  right:34px;
  bottom:30px;
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-end;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.28);
  color:#eef3f6;
}
.v3-final-media figcaption span{
  font-size:9px;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.v3-final-media figcaption b{
  font-family:var(--mono);
  font-size:8px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#bfc9d1;
  font-weight:400;
  text-align:right;
}

@media(max-width:980px){
  .v3-final-grid{grid-template-columns:1fr minmax(340px,.82fr)}
  .v3-final-copy{padding-right:38px}
}

@media(max-width:760px){
  .v3-final-grid{grid-template-columns:1fr;min-height:0}
  .v3-final-copy{padding:88px 22px 72px}
  .v3-site .v3-final-copy .h-display{max-width:11ch;font-size:clamp(2.5rem,12.5vw,3.65rem)}
  .v3-site .v3-final-copy .cta-btns{display:grid;grid-template-columns:1fr}
  .v3-site .v3-final-copy .btn{width:100%;justify-content:center}
  .v3-approach-lights{margin-top:42px}
  .v3-final-media{min-height:560px;border-left:0;border-top:1px solid rgba(255,255,255,.12)}
  .v3-final-video{object-position:center 48%;transform:none;filter:saturate(.8) contrast(1.02) brightness(1.08)}
  .v3-final-video-shade{background:linear-gradient(180deg,rgba(3,5,7,.18),transparent 20%,transparent 74%,rgba(3,5,7,.5))}
  .v3-final-live{top:92px;right:20px}
  .v3-final-media figcaption{left:20px;right:20px;bottom:22px;display:grid}
  .v3-final-media figcaption b{text-align:left}
}

@media(prefers-reduced-motion:reduce){
  .v3-approach-lights span{animation:none !important;opacity:.55}
  .v3-final-video{transform:none !important}
}

/* ============================================================
   PARTNERSHIP + COMPANY PASS (flight-cinema-pass-15)
   ============================================================ */
.v3-technical-note{
  margin:28px 0 0;
  max-width:82ch;
  padding:18px 20px;
  border:1px solid rgba(61,139,255,.22);
  background:rgba(61,139,255,.045);
  color:#c5d0da;
  font-size:.94rem;
}
.concept-label{
  position:absolute;
  z-index:3;
  top:14px;
  left:14px;
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(3,6,8,.66);
  color:#dce8f3;
  font-family:var(--mono);
  font-size:8px;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.v3-company{
  background:
    radial-gradient(ellipse 62% 58% at 84% 16%,rgba(61,139,255,.1),transparent 68%),
    linear-gradient(180deg,#070a0d,#05070a);
}
.v3-company-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.68fr);
  gap:clamp(28px,5vw,74px);
  align-items:start;
}
.v3-company-card{
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));
  padding:clamp(24px,3vw,34px);
}
.v3-company-metrics{
  display:grid;
  gap:10px;
  margin-bottom:24px;
}
.v3-company-metrics span,
.partner-tags span{
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.025);
  color:#dce4eb;
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  padding:10px 12px;
}
.linkedin-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#dbe9ff;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  border-bottom:1px solid rgba(61,139,255,.5);
  padding-bottom:5px;
}
.linkedin-link::before{
  content:'in';
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  border:1px solid rgba(61,139,255,.55);
  color:#dbe9ff;
  font-family:var(--brand);
  font-size:9px;
  letter-spacing:0;
}
.v3-company-card p{
  margin-top:18px;
  color:var(--mute);
  font-size:.94rem;
}
.partner-tags{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:28px;
  max-width:680px;
}
.contact-email{
  display:inline-flex;
  margin-top:18px;
  color:#b9c8d7;
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
  border-bottom:1px solid rgba(61,139,255,.38);
  padding-bottom:4px;
}
.contact-email:hover{color:var(--white);border-color:rgba(61,139,255,.72)}
.about-status-grid .panel{
  min-height:100%;
}
.founder-strip{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:24px 0 22px;
  max-width:560px;
}
.founder-strip article{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.018);
  padding:14px 16px;
}
.founder-strip article::before{
  content:'';
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:2px;
  background:rgba(61,139,255,.45);
}
.founder-strip span{
  display:block;
  color:#8e9aa6;
  font-size:9px;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.founder-strip h3{
  margin:7px 0 0;
  color:var(--white);
  font-family:var(--body);
  font-size:1rem;
  font-weight:600;
  letter-spacing:0;
}
@media(max-width:860px){
  .v3-company-grid{grid-template-columns:1fr}
  .v3-company-card{max-width:none}
  .founder-strip{grid-template-columns:1fr;max-width:none}
}
@media(max-width:560px){
  .partner-tags{display:grid}
  .concept-label{font-size:7px;letter-spacing:.12em}
}

/* ============================================================
   LOCAL LIVE TEST FOOTAGE (live-test-pass-24)
   ============================================================ */
.v3-live-test-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.v3-live-test-card{
  position:relative;
  overflow:hidden;
  min-width:0;
  padding:16px;
  border:1px solid rgba(255,255,255,.12);
  background:
    linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.014)),
    #05070a;
  box-shadow:0 28px 86px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.045);
  transition:transform .5s var(--ease),border-color .45s var(--ease),box-shadow .45s var(--ease);
}
.v3-live-test-card::before{
  content:'';
  position:absolute;
  left:16px;
  right:16px;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(61,139,255,.72),rgba(43,224,112,.38),transparent);
  opacity:.72;
  animation:liveEdgePulse 4.8s ease-in-out infinite;
}
.v3-live-test-card::after{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(120deg,transparent 0 34%,rgba(255,255,255,.055) 42%,transparent 50% 100%);
  opacity:0;
  transform:translateX(-24%);
  transition:opacity .45s var(--ease),transform .8s var(--ease);
}
.v3-live-test-card:hover{
  transform:translateY(-5px);
  border-color:rgba(61,139,255,.38);
  box-shadow:0 42px 120px rgba(0,0,0,.5),0 0 52px rgba(61,139,255,.1),inset 0 1px 0 rgba(255,255,255,.07);
}
.v3-live-test-card:hover::after{
  opacity:1;
  transform:translateX(18%);
}
.v3-live-test-card.is-primary{
  border-color:rgba(61,139,255,.2);
}
.v3-live-test-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}
.v3-live-test-head span{
  color:#9db8d4;
  font-size:10px;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.v3-live-test-head b{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#dfffea;
  font-family:var(--mono);
  font-size:9px;
  font-weight:500;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.v3-live-test-head b::before{
  content:'';
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--power);
  box-shadow:0 0 14px rgba(43,224,112,.75);
  animation:blink 2.4s infinite;
}
.v3-live-test-frame{
  position:relative;
  overflow:hidden;
  aspect-ratio:16/9;
  border:1px solid rgba(61,139,255,.24);
  background:
    radial-gradient(ellipse 72% 60% at 50% 40%,rgba(61,139,255,.11),transparent 68%),
    #020304;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 18px 46px rgba(0,0,0,.32);
}
.v3-live-test-frame::before,
.v3-live-test-frame::after{
  content:'';
  position:absolute;
  inset:10px;
  z-index:2;
  pointer-events:none;
  border-color:rgba(255,255,255,.35);
  opacity:.68;
}
.v3-live-test-frame::before{
  border-top:1px solid;
  border-left:1px solid;
  clip-path:polygon(0 0,34px 0,34px 1px,1px 1px,1px 34px,0 34px);
}
.v3-live-test-frame::after{
  border-right:1px solid;
  border-bottom:1px solid;
  clip-path:polygon(calc(100% - 34px) calc(100% - 1px),100% calc(100% - 1px),100% calc(100% - 34px),calc(100% - 1px) calc(100% - 34px),calc(100% - 1px) 100%,calc(100% - 34px) 100%);
}
.v3-live-test-frame video{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:none;
}
.v3-live-test-card.is-primary .v3-live-test-frame video{
  object-position:center 43%;
}
.v3-live-test-frame video:focus-visible{
  outline:2px solid rgba(226,255,238,.78);
  outline-offset:-4px;
}
.v3-live-scan{
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  background:
    linear-gradient(90deg,transparent,rgba(61,139,255,.12),rgba(226,255,238,.06),transparent),
    repeating-linear-gradient(180deg,rgba(255,255,255,.028) 0 1px,transparent 1px 5px);
  mix-blend-mode:screen;
  opacity:.55;
  transform:translateX(-110%);
  animation:liveFrameScan 5.8s cubic-bezier(.55,0,.2,1) infinite;
}
.v3-live-play{
  position:absolute;
  left:50%;
  top:50%;
  z-index:4;
  display:grid;
  place-items:center;
  width:72px;
  height:72px;
  border:1px solid rgba(226,255,238,.42);
  border-radius:50%;
  background:radial-gradient(circle,rgba(6,8,10,.92),rgba(6,8,10,.48));
  box-shadow:0 0 0 9px rgba(61,139,255,.08),0 18px 42px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.18);
  transform:translate(-50%,-50%);
  cursor:pointer;
  transition:transform .35s var(--ease),opacity .35s var(--ease),border-color .35s var(--ease),box-shadow .35s var(--ease);
}
.v3-live-play span{
  width:0;
  height:0;
  margin-left:5px;
  border-top:11px solid transparent;
  border-bottom:11px solid transparent;
  border-left:17px solid #e8fff1;
  filter:drop-shadow(0 0 10px rgba(43,224,112,.4));
}
.v3-live-play:hover,
.v3-live-play:focus-visible{
  transform:translate(-50%,-50%) scale(1.06);
  border-color:rgba(43,224,112,.72);
  box-shadow:0 0 0 12px rgba(43,224,112,.1),0 24px 56px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.2);
  outline:none;
}
.v3-live-test-card.is-playing .v3-live-play{
  opacity:0;
  pointer-events:none;
  transform:translate(-50%,-50%) scale(.86);
}
.v3-live-test-card.is-playing .v3-live-test-frame::before,
.v3-live-test-card.is-playing .v3-live-test-frame::after,
.v3-live-test-card.is-playing .v3-live-scan{
  opacity:0;
}
.v3-live-test-card.is-playing{
  border-color:rgba(43,224,112,.32);
}
.v3-live-test-card.is-playing .v3-live-test-frame{
  box-shadow:inset 0 0 0 1px rgba(43,224,112,.12),0 22px 62px rgba(0,0,0,.44),0 0 42px rgba(43,224,112,.08);
}
.v3-live-test-frame + h3{
  margin:18px 0 0;
  color:var(--white);
  font-family:var(--disp);
  font-size:clamp(1.05rem,1.25vw,1.35rem);
  letter-spacing:0;
  text-transform:uppercase;
}
.v3-live-test-card p{
  margin-top:10px;
  color:#aeb8c2;
  font-size:.92rem;
  line-height:1.65;
}
.v3-live-test-card ul{
  display:grid;
  gap:8px;
  margin:16px 0 0;
  padding:0;
  list-style:none;
}
.v3-live-test-card li{
  position:relative;
  padding-left:18px;
  color:#c5ced7;
  font-family:var(--mono);
  font-size:9px;
  letter-spacing:.12em;
  line-height:1.6;
  text-transform:uppercase;
}
.v3-live-test-card li::before{
  content:'';
  position:absolute;
  left:0;
  top:.55em;
  width:6px;
  height:6px;
  border:1px solid rgba(43,224,112,.68);
  transform:rotate(45deg);
}
@media(max-width:1100px){
  .v3-live-test-grid{grid-template-columns:1fr 1fr}
  .v3-live-test-card.is-primary{grid-column:1/-1}
}
@media(max-width:760px){
  .v3-live-test-grid{grid-template-columns:1fr}
  .v3-live-test-card.is-primary{grid-column:auto}
  .v3-live-test-card{padding:14px}
}
@media (prefers-reduced-motion:reduce){
  .v3-live-test-card,
  .v3-live-test-card::after{transition:none !important}
  .v3-live-test-card:hover{transform:none}
  .v3-live-test-card::before,
  .v3-live-test-head b::before,
  .v3-live-scan{animation:none !important}
}

@keyframes liveFrameScan{
  0%,18%{opacity:0;transform:translateX(-110%)}
  28%{opacity:.55}
  58%{opacity:.26}
  78%,100%{opacity:0;transform:translateX(110%)}
}
@keyframes liveEdgePulse{
  0%,100%{opacity:.45;transform:scaleX(.88)}
  50%{opacity:.95;transform:scaleX(1)}
}

/* ============================================================
   HERO MEDIA ARTIFACT CLEANUP (flight-cinema-pass-21)
   ============================================================ */
.v3-site .v3-flight-hero .flight-media::after{
  content:none;
  display:none;
  animation:none;
}
.v3-site .v3-flight-hero .flight-media::before{
  content:none;
  display:none;
  opacity:0;
  mix-blend-mode:normal;
}
.v3-site .v3-flight-hero .v3-hero-scrim{
  background:
    linear-gradient(90deg,#010203 0%,#010203 39%,rgba(1,2,3,.98) 48%,rgba(1,2,3,.7) 57%,rgba(1,2,3,.16) 68%,rgba(1,2,3,.03) 78%,rgba(1,2,3,.3) 100%),
    linear-gradient(180deg,rgba(1,2,3,.54) 0%,rgba(1,2,3,.02) 34%,rgba(1,2,3,.2) 66%,#010203 100%);
}
@media(max-width:860px){
  .v3-site .v3-flight-hero .v3-hero-scrim{
    background:
      linear-gradient(180deg,rgba(1,2,3,.08) 0%,rgba(1,2,3,.18) 32%,rgba(1,2,3,.86) 64%,#010203 100%),
      linear-gradient(90deg,rgba(1,2,3,.78),rgba(1,2,3,.04) 78%);
  }
}
