
body header.site-header, body .site-header, body footer.site-footer, body .site-footer,
body .site-main > article > header.entry-header, body .page-header, #site-header,
body .ehf-header, body .ehf-footer, body nav.main-navigation,
body.home .entry-title, body.page-template-default .entry-header {display:none!important}
body .site-main, body .site-content, body .page-content, body .entry-content {
  padding:0!important;margin:0!important;max-width:none!important;width:100%!important
}
html, body { max-width:100vw!important; background:#000!important; }
/* overflow-x on html/body breaks sticky + causes first-section scroll jank on mobile */
@media (min-width:901px){
  html, body { overflow-x:clip!important; }
}
@media (max-width:900px){
  html, body { overflow-x:visible!important; overflow-y:auto!important; }
  /* body must NOT be a scroll container or sticky nav never sticks */
  body, body.home, body.tc-native-home { overflow:visible!important; overflow-x:visible!important; overflow-y:visible!important; }
  .tc-v2-root, .vv-wrap, .vv-hero-section, .vv-section, .vv-section-alt { overflow-x:clip!important; }
}
body.tc-space-ready, body.home { isolation:auto!important; }
body.tc-space-ready::before, body.tc-space-ready::after { z-index:-2!important; }
body .site, body #page, body .site-content, .tc-v2-root {
  background:transparent!important; background-color:transparent!important;
  position:relative!important; z-index:auto!important; isolation:auto!important;
}
.tc-v2-root { overflow:visible!important; width:100%!important; max-width:none!important; }
.tc-v2-root > * { z-index:auto!important; }
.tc-v2-root::before, .tc-v2-root::after { content:none!important; display:none!important; }
body > .vv-space-fx, .vv-space-fx,
.vv-space-fx-grid, .vv-space-fx-cross, .vv-space-fx-vanish,
.vv-space-fx-floor, .vv-space-fx-horizon, .vv-crosshair { display:none!important; }
@media (pointer:fine){
  body.vv-has-poly-cursor, body.vv-has-poly-cursor * { cursor:none!important; }
}
.vv-network-bg, body > .vv-network-bg, .tc-v2-root > .vv-network-bg {
  position:fixed!important; inset:0!important; z-index:auto!important;
  width:100vw!important; height:100vh!important; pointer-events:none!important;
}
.vv-cursor-canvas, body > .vv-cursor-canvas, .tc-v2-root > .vv-cursor-canvas {
  position:fixed!important; inset:0!important; width:100vw!important; height:100vh!important;
  display:block!important; z-index:2147483600!important; pointer-events:none!important;
}
@media (max-width:900px){
  .vv-cursor-canvas, body > .vv-cursor-canvas, .tc-v2-root > .vv-cursor-canvas { display:none!important; }
}
.vv-hero-screen1{display:flex!important;flex-direction:column!important;min-width:0!important;width:100%!important;}
.vv-topstack {
  position:relative!important; top:auto!important; z-index:10050!important;
  background:transparent!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
.vv-ticker-wrap{
  position:relative!important; top:auto!important;
  margin-bottom:.85rem!important;
}
.vv-nav-shell{
  position:sticky!important; top:0!important; z-index:10050!important;
}
@media (max-width:900px){
  html,body.home,body.tc-native-home{margin:0!important;padding:0!important;}
  body.home #page,body.home .site,body.home .site-content,body.home .content-area,
  body.home .site-main,body.home .entry-content{margin:0!important;padding:0!important;}
  .vv-topstack,body.home>header.vv-topstack{
    position:relative!important;top:auto!important;z-index:40!important;
    margin:0!important;padding-top:0!important;padding-left:0!important;padding-right:0!important;width:100%!important;
  }
  .vv-ticker-wrap{margin:0 0 .55rem!important;min-height:40px!important;padding:8px 0 10px!important;position:relative!important;}
  .vv-nav-shell{
    position:sticky!important;top:0!important;z-index:10050!important;
    padding:.55rem 10px .45rem!important;pointer-events:none!important;
    background:transparent!important;margin:0!important;
  }
  .vv-nav-shell .vv-nav{pointer-events:auto!important;}
}
.vv-nav-shell{
  position:sticky!important; top:0!important; z-index:10050!important;
  background:transparent!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  padding:.55rem 0 1.35rem!important;
}
.vv-ticker-track{font-size:.74rem!important;font-weight:500!important;letter-spacing:.12em!important;gap:1.2rem!important;}
.vv-ticker-track span{gap:1.2rem!important;}
.vv-ticker-track span::after{font-size:.95rem!important;transform:scale(1.05)!important;}
/* Ticker + nav pill — darker frosted glass (gap stays clear) */
.vv-ticker-wrap{
  background-color:rgba(0,0,0,.72)!important;
  backdrop-filter:blur(22px) saturate(1.4)!important;
  -webkit-backdrop-filter:blur(22px) saturate(1.4)!important;
  margin-bottom:.85rem!important;
}
.vv-nav{
  padding:26px 28px!important;min-height:90px!important;border-radius:16px!important;
  background:rgba(0,0,0,.62)!important;
  backdrop-filter:blur(24px) saturate(1.45)!important;
  -webkit-backdrop-filter:blur(24px) saturate(1.45)!important;
  box-shadow:0 10px 40px rgba(0,0,0,.45)!important;
}
.vv-nav-links a{font-size:.95rem!important;}
.vv-lang-switch{
  display:inline-flex!important;align-items:center!important;gap:.28rem!important;
  margin:0 .15rem 0 .35rem!important;padding:.32rem .55rem!important;
  border:1px solid rgba(255,255,255,.16)!important;border-radius:999px!important;
  background:rgba(0,0,0,.35)!important;
  font-family:'JetBrains Mono',monospace!important;font-size:.7rem!important;letter-spacing:.08em!important;
  flex:0 0 auto!important;position:relative!important;z-index:1!important;
}
.vv-lang-switch a{color:rgba(255,255,255,.68)!important;-webkit-text-fill-color:rgba(255,255,255,.68)!important;font-weight:600!important;background:transparent!important;padding:.12rem .28rem!important;text-decoration:none!important;}
.vv-lang-switch a:hover,.vv-lang-switch a.is-active{color:#00E5FF!important;-webkit-text-fill-color:#00E5FF!important;background:transparent!important;}
.vv-lang-switch a::after{content:none!important;display:none!important;}
.vv-lang-dock{display:none!important;}
/* Hide TranslatePress floater — custom nav switcher replaces it */
#trp-floater-ls,.trp-floater-ls-container,.trp-language-switcher-container{display:none!important;}
html[lang^="ar"] body,.rtl .tc-v2-root{direction:rtl;}
html[lang^="ar"] .vv-logo{align-items:flex-end;}
html[lang^="ar"] .vv-nav-links{flex-direction:row-reverse;}
html[lang^="ar"] .vv-nav-ctas{flex-direction:row-reverse;}
html[lang^="ar"] .vv-lang-switch{order:1;}
@media (max-width:900px){
  .vv-lang-switch{
    display:inline-flex!important;margin-left:auto!important;margin-right:.1rem!important;
    padding:.28rem .48rem!important;font-size:.62rem!important;gap:.16rem!important;
  }
  .vv-lang-switch a{padding:.1rem .22rem!important;}
  html[lang^="ar"] .vv-lang-switch{order:0!important;margin-left:0!important;margin-right:auto!important;}
}
.vv-nav-order,.vv-nav-trial{padding:.65rem 1.35rem!important;font-size:.8rem!important;}
@media (max-width:1100px){
  .vv-nav-shell{padding:2.5rem 0 1rem!important;}
  .vv-nav{padding:16px 18px!important;min-height:68px!important;}
}
@media (max-width:900px){
  .vv-nav{
    padding:16px 12px!important;border-radius:14px!important;gap:.6rem!important;min-height:64px!important;
    background:rgba(0,0,0,.48)!important;
    -webkit-backdrop-filter:blur(24px) saturate(1.45)!important;
    backdrop-filter:blur(24px) saturate(1.45)!important;
    border:1px solid rgba(255,255,255,.1)!important;
    box-shadow:0 10px 40px rgba(0,0,0,.45)!important;
  }
  .vv-ticker-wrap{
    background-color:rgba(0,0,0,.42)!important;
    -webkit-backdrop-filter:blur(22px) saturate(1.4)!important;
    backdrop-filter:blur(22px) saturate(1.4)!important;
  }
  .vv-ticker-track{will-change:auto!important;}
}
/* Footer frosted glass (must win over any transparent section rules) */
.vv-footer, footer.vv-footer {
  background:rgba(6,10,18,.42)!important;
  backdrop-filter:blur(22px) saturate(1.35)!important;
  -webkit-backdrop-filter:blur(22px) saturate(1.35)!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 -24px 48px rgba(0,0,0,.35)!important;
  position:relative!important; z-index:4!important;
}
.vv-footer > .vv-max { border-top:none!important; }
.vv-footer{overflow:hidden!important;}
.vv-footer-map{position:absolute!important;inset:0!important;z-index:0!important;pointer-events:none!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.vv-footer-map img{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;opacity:.28!important;object-fit:contain!important;object-position:center center!important;filter:saturate(.9) brightness(1.05)!important;transform:none!important;margin:0 auto!important;}
.vv-footer > .vv-max{position:relative!important;z-index:1!important;}
/* Devices CTA — white / black under right illustration */
.vv-devices-cta{
  background:#fff!important;color:#0a0a12!important;-webkit-text-fill-color:#0a0a12!important;
  border:1px solid rgba(255,255,255,.9)!important;align-self:center!important;
}
.vv-devices-cta:hover{background:#f4f4f5!important;color:#000!important;-webkit-text-fill-color:#000!important;}
.vv-devices-cta{align-self:flex-start!important;background:#fff!important;color:#0a0a12!important;-webkit-text-fill-color:#0a0a12!important;border:1px solid #fff!important;}
.vv-devices-right{order:1!important;min-height:640px!important;align-items:center!important;}
.vv-devices-left{order:2!important;}
.vv-devices-lottie{min-height:640px!important;width:100%!important;}
.vv-devices-lottie dotlottie-wc{width:min(760px,100%)!important;height:min(760px,72vw)!important;max-height:780px!important;}
.vv-devices-layout{grid-template-columns:minmax(380px,1.2fr) minmax(280px,.95fr)!important;}
/* Speed result — white panel + Order Now */
.vv-result-card{
  background:#fff!important;border:1px solid #fff!important;border-radius:14px!important;
  box-shadow:0 14px 40px rgba(0,0,0,.35)!important;text-align:left!important;
  align-items:center!important;gap:1rem 1.25rem!important;padding:1.15rem 1.25rem!important;
}
.vv-result-card.is-open{display:flex!important;}
.vv-result-msg{color:#0a0a12!important;font-weight:650!important;}
.vv-result-order{
  background:#0a0a12!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  border:1px solid #0a0a12!important;border-radius:8px!important;font-weight:700!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;text-decoration:none!important;
  padding:.75rem 1.35rem!important;
}
.vv-result-order:hover{color:#fff!important;-webkit-text-fill-color:#fff!important;filter:brightness(1.08);}
/* 1 Month plan — Order Now white border */
a#vvOrder1m,.vv-plan-card a#vvOrder1m{
  border:1.5px solid #ffffff!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.15)!important;background:transparent!important;
}
a#vvOrder1m:hover{
  background:#fff!important;border-color:#fff!important;color:#0a0a12!important;-webkit-text-fill-color:#0a0a12!important;
}
#vv-speedtest,.vv-speed-tester,.vv-speed-frame-wrap{
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  isolation:auto!important;
  overflow:visible!important;
  transform:none!important;
  filter:none!important;
  z-index:auto!important;
}
.vv-speed-head{
  text-align:center!important;justify-content:center!important;align-items:center!important;
}
.vv-speed-head>div{width:100%!important;max-width:min(72rem,100%)!important;margin-left:auto!important;margin-right:auto!important;}
.vv-speed-head .vv-h2,.vv-speed-head .vv-lead,.vv-speed-head .vv-eyebrow{text-align:center!important;}
.vv-speed-head .vv-lead,.vv-speed-head .vv-cdn-note{margin-left:auto!important;margin-right:auto!important;}
.vv-speed-head .vv-cdn-note{max-width:none!important;width:100%!important;}
#vvSpeedPanel{
  background:rgba(8,12,24,.28)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:16px!important;
  backdrop-filter:blur(18px) saturate(1.35)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.35)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 18px 50px rgba(0,0,0,.18)!important;
  isolation:auto!important;
}
/* Hero H1 — one tight title block (no gap before soft line) */
.vv-hero-h1{
  letter-spacing:.04em!important;line-height:.9!important;
  text-shadow:0 0 28px rgba(0,229,255,.12)!important;
  font-size:clamp(2.7rem,4.55vw,4.45rem)!important;
}
.vv-h1-soft{
  display:block!important;margin:-.22em 0 0!important;padding:0!important;
  font-family:'Manrope',sans-serif!important;font-weight:300!important;
  font-size:.55em!important;letter-spacing:.14em!important;line-height:1!important;
  text-transform:uppercase!important;color:rgba(255,255,255,.92)!important;
  -webkit-text-fill-color:rgba(255,255,255,.92)!important;text-shadow:none!important;
}
.vv-h1-soft .vv-h1-cyan{font-weight:300!important;color:#00E5FF!important;-webkit-text-fill-color:#00E5FF!important;}
/* Hero — fuller type + spacing; CTAs stay same size */
.vv-hero-section{
  min-height:calc(100vh - 240px)!important;
  min-height:calc(100dvh - 240px)!important;
  align-items:center!important;
  padding-top:1.45rem!important;
  padding-bottom:3.5rem!important;
  box-sizing:border-box!important;
}
.vv-hero-section .vv-eyebrow{
  font-size:.78rem!important;letter-spacing:.14em!important;margin-bottom:.4rem!important;
}
.vv-hero-sub{
  font-size:clamp(.88rem,1.05vw,1rem)!important;
  line-height:1.55!important;opacity:.72!important;
  max-width:36rem!important;margin-top:.25rem!important;
}
.vv-hero-btns{margin-top:1.25rem!important;margin-bottom:.35rem!important;}
.vv-hero-how{font-size:.92rem!important;letter-spacing:.04em!important;}
.vv-hero-trust{
  justify-content:flex-start!important;align-items:flex-start!important;
  gap:.5rem 1.65rem!important;margin-left:0!important;margin-right:auto!important;
  margin-top:1.45rem!important;padding:1.15rem .85rem .9rem!important;
  position:relative!important;isolation:isolate!important;z-index:6!important;
  border-radius:12px!important;background:transparent!important;box-shadow:none!important;
}
.vv-mesh-block{
  position:absolute!important;inset:-10px -14px -14px!important;z-index:0!important;
  pointer-events:none!important;border-radius:24px!important;
  background:radial-gradient(ellipse 90% 80% at 50% 50%,rgba(0,0,0,.95) 0%,rgba(0,0,0,.78) 42%,rgba(0,0,0,.4) 68%,rgba(0,0,0,.12) 84%,transparent 94%)!important;
  box-shadow:none!important;
}
/* Soft black overlay — full player, faded from bottom, ABOVE content */
.vv-soft-shade{display:none!important;}
.vv-soft-shade--player{
  display:block!important;visibility:visible!important;opacity:1!important;
  position:absolute!important;inset:0!important;left:0!important;right:0!important;top:0!important;bottom:0!important;
  height:auto!important;z-index:20!important;pointer-events:none!important;border-radius:18px!important;
  background:linear-gradient(to top,#000 0%,rgba(0,0,0,.95) 10%,rgba(0,0,0,.7) 28%,rgba(0,0,0,.42) 50%,rgba(0,0,0,.2) 72%,rgba(0,0,0,.08) 100%)!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;
  -webkit-mask-image:none!important;mask-image:none!important;
}
.vv-app-window-stats{
  overflow:hidden!important;isolation:isolate!important;
  border-top:1px solid rgba(255,255,255,.06)!important;
  border-left:1px solid rgba(255,255,255,.06)!important;
  border-right:1px solid rgba(255,255,255,.06)!important;
  border-bottom:none!important;
  -webkit-mask-image:linear-gradient(to top,transparent 0%,#000 22px,#000 100%)!important;
  mask-image:linear-gradient(to top,transparent 0%,#000 22px,#000 100%)!important;
}
.vv-hero-trust>.vv-soft-shade{display:none!important;}
.vv-app-window-stats>.vv-soft-shade{display:block!important;z-index:20!important;}
.vv-hero-trust>.vv-mesh-block,.vv-app-window-stats>.vv-mesh-block{display:none!important;}
.vv-hero-trust::before,.vv-hero-trust::after,
.vv-app-window-stats::before,.vv-app-window-stats::after,
.vv-app-stats::before{content:none!important;display:none!important;}
.vv-hero-trust>*:not(.vv-soft-shade),.vv-app-window-stats>*:not(.vv-soft-shade){
  position:relative!important;z-index:1!important;
}
.vv-mesh-block--scroll{
  inset:auto!important;left:50%!important;top:52%!important;width:160px!important;height:160px!important;
  transform:translate(-50%,-50%)!important;border-radius:50%!important;
  background:radial-gradient(circle,#000 0%,#000 55%,rgba(0,0,0,.75) 72%,transparent 100%)!important;
  box-shadow:0 0 28px 12px rgba(0,0,0,.9)!important;
}
.vv-mesh-block--player{
  inset:-14px -18px -18px!important;border-radius:28px!important;
  background:radial-gradient(ellipse 90% 80% at 50% 50%,rgba(0,0,0,.95) 0%,rgba(0,0,0,.78) 42%,rgba(0,0,0,.4) 68%,rgba(0,0,0,.12) 84%,transparent 94%)!important;
  box-shadow:none!important;
}
.vv-hero-section{position:relative!important;z-index:3!important;}
.vv-network-bg,.tc-v2-root>.vv-network-bg,body>.vv-network-bg{z-index:0!important;}
/* Soft black under trust — disabled; .vv-soft-shade handles it */
.vv-hero-trust::before,.vv-hero-trust::after{content:none!important;display:none!important;}
.vv-trust-item{
  flex:0 0 auto!important;text-align:center!important;align-items:center!important;
  font-size:.95rem!important;gap:.2rem!important;position:relative!important;z-index:5!important;
  color:rgba(210,216,228,.95)!important;
}
.vv-trust-num{
  font-size:clamp(1.95rem,2.55vw,2.7rem)!important;line-height:1!important;position:relative!important;z-index:6!important;
}
/* Lock hero buttons — do not scale with larger section type */
.vv-hero-section .vv-btn{
  padding:.55rem 1.15rem!important;font-size:.72rem!important;font-weight:700!important;
  letter-spacing:.08em!important;border-radius:6px!important;line-height:1.2!important;
  min-height:0!important;
}
@media (min-width:1025px){
  .vv-hero-section .vv-btn{
    padding:.85rem 1.85rem!important;font-size:.88rem!important;
    letter-spacing:.09em!important;border-radius:8px!important;min-height:48px!important;
  }
}
@media (max-width:900px){
  .vv-hero-section{
    min-height:0!important;
    align-items:flex-start!important;
    padding-top:3.4rem!important;
    padding-bottom:2.25rem!important;
  }
  .vv-hero-h1{font-size:clamp(2.05rem,8vw,2.65rem)!important;line-height:.92!important;}
  .vv-hero-sub{font-size:.8rem!important;line-height:1.45!important;max-width:100%!important;}
  .vv-hero-section .vv-eyebrow{font-size:.55rem!important;letter-spacing:.1em!important;margin-bottom:.25rem!important;}
  .vv-hero-btns{margin-top:.7rem!important;margin-bottom:0!important;gap:.4rem!important;}
  .vv-hero-how{font-size:.78rem!important;}
  .vv-hero-trust{margin-top:.35rem!important;padding:.45rem 0 .1rem!important;}
  .vv-trust-num{font-size:1.4rem!important;}
  .vv-hero-section .vv-btn{
    padding:.68rem 1.15rem!important;font-size:.76rem!important;min-height:0!important;
  }
}
/* News Live tile — slightly higher toward center */
/* News Live tile — slightly higher toward center (desktop only) */
@media (min-width:901px){
  .vv-app-float-grid .vv-app-cell:nth-child(3),
  .vv-app-float-grid .vv-cell-news{
    top:calc(50% - 12%)!important;
  }
}
/* Trust / features row — left group, centered text per item */
/* (sizes set in hero block above) */
/* Trial CTA — filled band: copy grows, dual CTAs on the right */
.vv-final-cta-inner{
  display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;
  align-items:center!important;justify-content:space-between!important;
  gap:1.35rem 1.75rem!important;text-align:left!important;
  max-width:min(1320px,100%)!important;width:100%!important;
  padding:2.35rem 2.25rem!important;margin:0 auto!important;
  background:linear-gradient(105deg,#00E5FF 0%,#2F6BFF 48%,#7c5cff 100%)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 20px 60px rgba(47,107,255,.35),inset 0 1px 0 rgba(255,255,255,.2)!important;
}
.vv-final-cta-copy{flex:1 1 auto!important;min-width:0!important;max-width:none!important;text-align:left!important}
.vv-final-cta-inner .vv-h2{
  margin:.2rem 0 .55rem!important;white-space:normal!important;
  font-size:clamp(2.15rem,3.4vw,3.15rem)!important;line-height:1.05!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
}
.vv-final-cta-inner .vv-h2 span,
.vv-final-cta-inner .vv-h2 .vv-trial-brand{
  color:#00E5FF!important;-webkit-text-fill-color:#00E5FF!important;background:none!important;opacity:1!important;
}
.vv-final-cta-inner .vv-lead{
  margin:0!important;max-width:52ch!important;
  color:rgba(255,255,255,.98)!important;font-size:1.08rem!important;
  line-height:1.62!important;font-weight:500!important;opacity:1!important;
}
.vv-final-cta-inner .vv-eyebrow{color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:.88rem!important}
.vv-trial-lottie dotlottie-wc{width:150px!important;height:150px!important;max-width:150px!important}
.vv-final-cta-btns{
  display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;
  justify-content:flex-end!important;align-items:center!important;gap:.75rem .9rem!important;
  margin:0 0 0 auto!important;width:auto!important;max-width:none!important;flex:0 0 auto!important;
}
.vv-final-cta-btns .vv-btn{
  display:inline-flex!important;width:auto!important;max-width:none!important;flex:0 0 auto!important;
  border-radius:999px!important;white-space:nowrap!important;
  font-size:.92rem!important;padding:1.05rem 1.55rem!important;line-height:1.15!important;
}
.vv-final-cta-btns .vv-trial-primary{
  background:#fff!important;color:#0a0a12!important;-webkit-text-fill-color:#0a0a12!important;
  border:none!important;box-shadow:0 8px 28px rgba(0,0,0,.22)!important;
}
.vv-final-cta-btns .vv-trial-primary:hover{
  background:#0a0a12!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
}
.vv-final-cta-btns .vv-btn-outline,
.vv-final-cta-btns .vv-trial-pricing{
  display:inline-flex!important;
  background:rgba(0,0,0,.22)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  border:none!important;box-shadow:0 0 0 1.5px rgba(255,255,255,.95)!important;
}
.vv-final-cta-btns .vv-btn-outline:hover,
.vv-final-cta-btns .vv-trial-pricing:hover{
  background:#fff!important;color:#0a0a12!important;-webkit-text-fill-color:#0a0a12!important;
  box-shadow:0 0 0 1.5px #fff!important;
}
@media (max-width:1100px){
  .vv-final-cta-inner{flex-wrap:wrap!important}
  .vv-final-cta-inner .vv-h2{white-space:normal!important}
  .vv-final-cta-btns{flex:1 1 100%!important;justify-content:flex-start!important;width:100%!important;margin-left:0!important}
}
@media (max-width:600px){
  .vv-final-cta-inner{flex-direction:column!important;align-items:stretch!important;padding:1.55rem 1.1rem!important}
  .vv-final-cta-copy{text-align:center!important}
  .vv-final-cta-inner .vv-lead{margin-left:auto!important;margin-right:auto!important}
  .vv-final-cta-btns{flex-direction:row!important;flex-wrap:nowrap!important;justify-content:center!important;width:100%!important;margin:0!important}
  .vv-final-cta-btns .vv-btn{flex:1 1 0!important;white-space:normal!important;padding:.95rem 1rem!important;font-size:.85rem!important}
}
/* How it works hover */
.vv-hero-how:hover{color:#00E5FF!important;transform:translateX(4px)!important;text-shadow:0 0 18px rgba(0,229,255,.45)!important;}
.vv-hero-how:hover .vv-hero-how-arrow{transform:translateX(6px)!important;}
/* Get Free Trial outline — try 0.3px hairline */
.vv-btn-outline,
.vv-hero-section .vv-btn-outline{
  border:none!important;
  box-shadow:0 0 0 .3px #fff!important;
}
.vv-btn-outline:hover,
.vv-hero-section .vv-btn-outline:hover{
  border:none!important;
  box-shadow:0 0 0 .3px #fff!important;
}
/* Nav Get Trial — outline default, white fill on hover only */
.tc-v2-root a.vv-nav-trial,
.vv-wrap a.vv-nav-trial,
a.vv-nav-trial,
.tc-v2-root a.vv-mob-trial,
.vv-wrap a.vv-mob-trial,
a.vv-mob-trial{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border:1.5px solid #fff!important;
  box-shadow:none!important;
}
.tc-v2-root a.vv-nav-trial:hover,
.vv-wrap a.vv-nav-trial:hover,
a.vv-nav-trial:hover,
.tc-v2-root a.vv-mob-trial:hover,
.vv-wrap a.vv-mob-trial:hover,
a.vv-mob-trial:hover,
.tc-v2-root a.vv-nav-trial:focus-visible,
a.vv-nav-trial:focus-visible{
  background:#fff!important;
  background-color:#fff!important;
  background-image:none!important;
  color:#0a0a12!important;
  -webkit-text-fill-color:#0a0a12!important;
  border-color:#fff!important;
  box-shadow:0 8px 28px rgba(255,255,255,.22)!important;
}
/* Header nav links — white pill hover */
.vv-nav-links a:hover, .vv-nav-links a:focus, .vv-nav-links a:focus-visible,
.tc-v2-root .vv-nav-links a:hover, .vv-wrap .vv-nav-links a:hover{
  color:#0a0a12!important;-webkit-text-fill-color:#0a0a12!important;
  background:#fff!important;background-color:#fff!important;
  box-shadow:0 6px 20px rgba(255,255,255,.18)!important;
  text-shadow:none!important;
}
.vv-mobile-menu a:hover{
  color:#0a0a12!important;-webkit-text-fill-color:#0a0a12!important;background:#fff!important;
}
/* FAQ hover — white fill / dark text */
.vv-faq-item:hover > .vv-faq-q,
.vv-faq-q:hover, .vv-faq-q:focus, .vv-faq-q:focus-visible,
.tc-v2-root .vv-faq-list .vv-faq-item .vv-faq-q:hover,
.vv-wrap .vv-faq-list .vv-faq-item .vv-faq-q:hover,
.tc-v2-root .vv-faq-q:hover, .vv-wrap .vv-faq-q:hover{
  background:#fff!important;background-color:#fff!important;background-image:none!important;
  color:#0a0a12!important;-webkit-text-fill-color:#0a0a12!important;
  box-shadow:0 8px 28px rgba(255,255,255,.14)!important;
}
.vv-faq-item:hover > .vv-faq-q .vv-faq-icon,
.vv-faq-q:hover .vv-faq-icon, .vv-faq-q:focus .vv-faq-icon,
.vv-faq-q.open:hover .vv-faq-icon{
  color:#0a0a12!important;
}
.vv-faq-item:hover > .vv-faq-q.open,
.vv-faq-q.open:hover, .vv-faq-q.open:focus{
  background:#fff!important;background-color:#fff!important;
  color:#0a0a12!important;-webkit-text-fill-color:#0a0a12!important;
}
/* Soft merge — hero → pure black (fade UNDER Lottie/tiles/scroll — never cover media) */
.vv-hero-section::after{
  content:''!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;
  height:min(460px,55vh)!important;z-index:0!important;pointer-events:none!important;
  background:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,.28) 16%,rgba(0,0,0,.62) 38%,rgba(0,0,0,.88) 58%,rgba(0,0,0,.98) 78%,#000 100%)!important;
}
.vv-hero-inner,.vv-hero-text,.vv-hero-mockup{position:relative!important;z-index:2!important;}
/* Soft faded black band under features row (trust + player) */
.vv-hero-inner::after{
  content:''!important;display:block!important;position:absolute!important;
  left:-1%!important;right:-1%!important;bottom:3.25rem!important;height:min(220px,32%)!important;
  z-index:1!important;pointer-events:none!important;
  background:radial-gradient(ellipse 98% 85% at 50% 55%,rgba(0,0,0,.94) 0%,rgba(0,0,0,.78) 38%,rgba(0,0,0,.42) 62%,rgba(0,0,0,.12) 80%,transparent 92%)!important;
}
.vv-hero-stage{position:relative!important;z-index:4!important;}
.vv-hero-lottie{position:relative!important;z-index:5!important;opacity:1!important;visibility:visible!important;display:flex!important;}
.vv-float-badge.vv-float-uptime{position:absolute!important;top:-32px!important;left:0!important;right:0!important;width:100%!important;transform:none!important;z-index:12!important;opacity:1!important;visibility:visible!important;display:flex!important;align-items:center!important;justify-content:center!important;isolation:isolate!important;background:transparent!important;border:none!important;box-shadow:none!important;margin:0!important;}
.vv-float-uptime-inner{
  position:relative!important;z-index:2!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:.85rem!important;margin:0 auto!important;
  background:transparent!important;border:none!important;border-radius:0!important;padding:0!important;
  color:#e8fbff!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  text-shadow:0 0 10px rgba(0,229,255,.35)!important;overflow:visible!important;
  animation:vvFloatUptime 4.6s ease-in-out infinite!important;
}
.vv-float-uptime-inner::before{content:none!important;display:none!important;}
.vv-live-gif{width:56px!important;height:56px!important;filter:drop-shadow(0 0 12px rgba(0,229,255,.7))!important;}
.vv-live-gif dotlottie-wc{width:56px!important;height:56px!important;}
@keyframes vvHoloFlicker{
  0%,100%{opacity:1;filter:brightness(1)}
  42%{opacity:.92;filter:brightness(1.08)}
  48%{opacity:1;filter:brightness(1.15)}
  52%{opacity:.88;filter:brightness(.95)}
  58%{opacity:1;filter:brightness(1.05)}
}
.vv-app-float-grid{position:absolute!important;inset:0!important;z-index:5!important;display:block!important;opacity:1!important;visibility:visible!important;}
.vv-app-float-grid .vv-app-cell{opacity:1!important;visibility:visible!important;}
.vv-scroll-cue{isolation:isolate!important;z-index:20!important;position:absolute!important;opacity:1!important;visibility:visible!important;}
.vv-scroll-cue--inline{display:none!important;}
.vv-scroll-cue--dock{display:flex!important;}
.vv-scroll-cue::before{
  content:''!important;position:absolute!important;left:50%!important;top:55%!important;
  width:150px!important;height:150px!important;transform:translate(-50%,-50%)!important;
  z-index:0!important;pointer-events:none!important;border-radius:50%!important;
  background:radial-gradient(circle at 50% 50%,rgba(0,0,0,.95) 0%,rgba(0,0,0,.75) 48%,rgba(0,0,0,.35) 72%,transparent 88%)!important;
  box-shadow:none!important;
}
.vv-scroll-cue::after{
  content:''!important;display:block!important;position:absolute!important;
  left:0!important;right:0!important;bottom:0!important;height:58%!important;
  z-index:6!important;pointer-events:none!important;
  background:linear-gradient(to top,#000 0%,#000 38%,rgba(0,0,0,.9) 62%,rgba(0,0,0,.45) 82%,rgba(0,0,0,.12) 94%,transparent 100%)!important;
}
.vv-scroll-cue>*{position:relative!important;z-index:2!important;}
.vv-scroll-cue dotlottie-wc{display:block!important;width:140px!important;height:140px!important;opacity:1!important;visibility:visible!important;position:relative!important;z-index:3!important;}
.vv-app-window{background:rgba(8,10,18,.96)!important;z-index:6!important;opacity:1!important;border:1px solid rgba(255,255,255,.06)!important;}
.vv-app-window-stats{
  position:relative!important;isolation:isolate!important;z-index:5!important;
  background:rgba(8,10,18,.82)!important;backdrop-filter:blur(10px) saturate(1.05)!important;-webkit-backdrop-filter:blur(10px) saturate(1.05)!important;
  overflow:hidden!important;
  border-top:1px solid rgba(255,255,255,.06)!important;
  border-left:1px solid rgba(255,255,255,.06)!important;
  border-right:1px solid rgba(255,255,255,.06)!important;
  border-bottom:none!important;
  -webkit-mask-image:linear-gradient(to top,transparent 0%,#000 22px,#000 100%)!important;
  mask-image:linear-gradient(to top,transparent 0%,#000 22px,#000 100%)!important;
}
.vv-app-window-stats::before,.vv-app-window-stats::after,.vv-app-stats::before{content:none!important;display:none!important;}
.vv-app-window-stats>*:not(.vv-soft-shade){position:relative!important;z-index:1!important;}
.vv-app-window-stats>.vv-soft-shade{z-index:20!important;display:block!important;}
.vv-app-bar{background:rgba(0,0,0,.35)!important;position:relative!important;z-index:1!important;}
.vv-app-stats{
  background:rgba(0,0,0,.28)!important;position:relative!important;isolation:isolate!important;z-index:1!important;
}
.vv-app-stat{position:relative!important;z-index:1!important;}
.vv-app-stat strong{position:relative!important;z-index:1!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}
.vv-app-stat span{color:rgba(220,220,230,.95)!important;}
.vv-app-title{color:rgba(210,210,220,.95)!important;}
.vv-trust-num{position:relative!important;z-index:6!important;}
.vv-trust-item{position:relative!important;z-index:5!important;}
/* Terminal — transparent black body, solid header, mobile page-scroll */
.vv-term-layout{align-items:stretch!important;}
.vv-term-window{
  height:100%!important;min-height:560px!important;max-height:none!important;
  overflow:hidden!important;display:flex!important;flex-direction:column!important;
  contain:layout style;box-sizing:border-box!important;position:relative!important;
  align-self:stretch!important;
  background:rgba(0,0,0,.48)!important;
  -webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important;
  touch-action:pan-y!important;
}
.vv-term-bar{
  flex:0 0 auto!important;background:#1a1a1a!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}
.vv-term-input-row{
  flex:0 0 auto!important;background:transparent!important;
  border-top:1px solid rgba(42,42,42,.55)!important;
}
.vv-term-scroll{
  flex:1 1 0%!important;min-height:0!important;height:auto!important;
  overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:auto;
  scrollbar-width:none!important;-ms-overflow-style:none!important;
  background:transparent!important;touch-action:pan-y!important;
  display:block!important;justify-content:flex-start!important;
}
.vv-term-scroll::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;}
.vv-term-body,pre.vv-term-body,#vvTermBody{
  min-height:0!important;max-height:none!important;height:auto!important;
  width:100%!important;max-width:100%!important;box-sizing:border-box!important;
  overflow:visible!important;white-space:pre-wrap!important;word-break:break-word!important;
  background:transparent!important;text-align:left!important;
}
@media (max-width:900px){
  .vv-term-window{height:420px!important;max-height:420px!important;min-height:420px!important;touch-action:pan-y!important;}
  .vv-term-scroll{
    overflow:hidden!important;overscroll-behavior:auto!important;
    touch-action:pan-y!important;-webkit-overflow-scrolling:auto!important;
  }
}
/* Speed gauge — stable SVG needle (no CSS rotate on <g>) */
.vv-odo-needle{transition:none!important;will-change:auto!important;transform:none!important;}
.vv-odo-fill{transition:none!important;}
.vv-odo-needle polygon,.vv-odo-needle circle{transition:none!important;}
/* Guides marquee — continuous ticker-style scroll */
@keyframes vvGuidesMarquee{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
#vv-guides .vv-guides-carousel{position:relative!important;}
#vv-guides .vv-guides-viewport{
  overflow:hidden!important;margin:0 3rem!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 3%,#000 97%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 3%,#000 97%,transparent 100%)!important;
}
#vv-guides .vv-guides-track{
  display:flex!important;flex-wrap:nowrap!important;gap:1.15rem!important;width:max-content!important;
  overflow:visible!important;scroll-snap-type:none!important;
  padding:.35rem .15rem .85rem!important;will-change:transform!important;
  animation:vvGuidesMarquee 48s linear infinite!important;
}
#vv-guides .vv-guides-carousel.is-paused .vv-guides-track,
#vv-guides .vv-guides-carousel:hover .vv-guides-track{animation-play-state:paused!important;}
#vv-guides .vv-guide-card{
  flex:0 0 280px!important;width:280px!important;
  display:flex!important;flex-direction:column!important;gap:.65rem!important;
  min-height:172px!important;padding:1.45rem 1.35rem 1.3rem!important;
  border:1px solid rgba(255,255,255,.1)!important;border-radius:16px!important;
  background:rgba(14,16,26,.88)!important;color:#f4f4f5!important;text-decoration:none!important;
  transition:border-color .22s ease,background .22s ease,box-shadow .22s ease!important;
}
#vv-guides .vv-guide-card:hover,#vv-guides .vv-guide-card:focus-visible{
  border-color:rgba(0,229,255,.55)!important;
  background:rgba(18,24,40,.98)!important;
  box-shadow:0 16px 40px rgba(0,0,0,.45),0 0 0 1px rgba(0,229,255,.18),0 0 28px rgba(0,229,255,.16)!important;
}
#vv-guides .vv-guide-kicker{display:block!important;font-size:.7rem!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#00E5FF!important;font-weight:600!important;}
#vv-guides .vv-guide-title{display:block!important;font-weight:700!important;font-size:1.05rem!important;line-height:1.35!important;color:#fff!important;flex:1 1 auto!important;}
#vv-guides .vv-guide-desc{display:block!important;color:#a1a1aa!important;font-size:.88rem!important;line-height:1.45!important;margin-top:auto!important;}
#vv-guides .vv-guides-nav{
  position:absolute!important;top:50%!important;transform:translateY(-55%)!important;z-index:2!important;
  width:42px!important;height:42px!important;border-radius:50%!important;
  border:1px solid rgba(0,229,255,.35)!important;background:rgba(8,12,22,.92)!important;color:#00E5FF!important;
  cursor:pointer!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0!important;
}
#vv-guides .vv-guides-prev{left:0!important;}
#vv-guides .vv-guides-next{right:0!important;}
#vv-guides .vv-guides-dots{display:none!important;}
@media (max-width:900px){
  #vv-guides .vv-guides-viewport{margin:0 2.6rem!important;}
  #vv-guides .vv-guide-card{flex-basis:240px!important;width:240px!important;min-height:156px!important;}
  #vv-guides .vv-guides-track{animation-duration:42s!important;}
}
@media (max-width:560px){
  #vv-guides .vv-guides-viewport{margin:0 2.35rem!important;}
  #vv-guides .vv-guide-card{flex-basis:220px!important;width:220px!important;}
  #vv-guides .vv-guides-track{animation-duration:38s!important;}
}
/* Float widgets — external portal, always on top */
a.vv-wa-float, .vv-wa-float, body > a.vv-wa-float, .tc-v2-root > a.vv-wa-float, #vv-float-portal > a.vv-wa-float{
  bottom:calc(48px + env(safe-area-inset-bottom, 0px))!important;
  z-index:2147483647!important;
}
.vv-back-top, body > .vv-back-top, .tc-v2-root > .vv-back-top, #vv-float-portal > .vv-back-top{
  bottom:calc(120px + env(safe-area-inset-bottom, 0px))!important;
  z-index:2147483646!important;
}
#vv-float-portal{
  position:fixed!important;top:0!important;left:0!important;right:auto!important;bottom:auto!important;
  width:0!important;height:0!important;pointer-events:none!important;overflow:visible!important;
  z-index:2147483646!important;transform:none!important;isolation:auto!important;contain:none!important;
}
@media (max-width:900px){
  a.vv-wa-float, .vv-wa-float, body > a.vv-wa-float, #vv-float-portal > a.vv-wa-float{
    bottom:36px!important;right:14px!important;
    transform:none!important;-webkit-transform:none!important;
    isolation:auto!important;contain:none!important;
  }
  .vv-back-top, body > .vv-back-top, #vv-float-portal > .vv-back-top{
    bottom:100px!important;right:14px!important;
    transform:none!important;-webkit-transform:none!important;
    isolation:auto!important;contain:none!important;
  }
  body.tc-space-ready::after{animation:none!important;transform:none!important;}
}
/* ========== MOBILE PARITY — keep desktop look as much as possible ========== */
@media (max-width:900px){
  html{overflow-x:visible!important;overflow-y:auto!important;}
  body,body.home,body.tc-native-home{overflow:visible!important;overflow-x:visible!important;overflow-y:visible!important;}
  .tc-v2-root,.vv-wrap,.vv-hero-section,.vv-section,.vv-section-alt{overflow-x:clip!important;}
  .vv-max{max-width:100%!important;padding-left:1.15rem!important;padding-right:1.15rem!important;box-sizing:border-box!important;}
  .vv-section,.vv-section-alt{padding:3.75rem 1.15rem!important;}
  .vv-h2{font-size:clamp(2.15rem,7.5vw,3.35rem)!important;line-height:1.05!important;}
  .vv-lead{font-size:1rem!important;line-height:1.6!important;max-width:40rem!important;}
  .vv-eyebrow{font-size:.78rem!important;}

  /* Hero — first screen ends at mid Scroll Down (full GIF, lower half clipped) */
  .vv-hero-section{
    padding:1.35rem 1.1rem 0!important;
    min-height:0!important;
    display:flex!important;flex-direction:column!important;align-items:flex-start!important;
  }
  .vv-hero-section::after{
    height:min(380px,48vh)!important;
    background:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,.28) 20%,rgba(0,0,0,.7) 48%,rgba(0,0,0,.94) 78%,#000 100%)!important;
  }
  .vv-scroll-cue::before{width:118px!important;height:118px!important;}
  .vv-scroll-cue--dock{display:none!important;}
  .vv-hero-mockup::after{display:none!important;}
  .vv-hero-inner{
    width:100%!important;max-width:100%!important;text-align:left!important;
    display:flex!important;flex-direction:column!important;
    gap:0!important;position:relative!important;
  }
  .vv-hero-inner::before{content:none!important;display:none!important;}
  .vv-hero-section{padding:.35rem 1rem 0!important;min-height:0!important;align-items:flex-start!important;display:flex!important;flex-direction:column!important;}
  .vv-hero-inner::after{content:none!important;display:none!important;}
  .vv-hero-screen1{
    display:flex!important;flex-direction:column!important;justify-content:center!important;width:100%!important;
    min-height:calc(var(--vv-hero-vh,100vh) - 5.75rem)!important;max-height:none!important;
    overflow:visible!important;position:relative!important;box-sizing:border-box!important;
    padding-top:.25rem!important;padding-bottom:6.75rem!important;
  }
  .vv-hero-screen1::after{content:none!important;display:none!important;}
  .vv-hero-text{
    display:flex!important;flex-direction:column!important;
    align-items:flex-start!important;text-align:left!important;
    width:100%!important;max-width:100%!important;gap:.45rem!important;order:1!important;
    height:auto!important;flex:0 0 auto!important;box-sizing:border-box!important;padding-bottom:0!important;z-index:5!important;
    margin-top:0!important;margin-bottom:0!important;
  }
  .vv-scroll-cue--inline{
    display:flex!important;position:absolute!important;left:50%!important;bottom:.55rem!important;
    right:auto!important;top:auto!important;transform:translate3d(-50%,0,0)!important;margin:0!important;
    order:unset!important;z-index:25!important;width:fit-content!important;height:auto!important;max-height:none!important;
    pointer-events:auto!important;align-self:center!important;isolation:isolate!important;overflow:visible!important;
    flex:0 0 auto!important;transition:none!important;will-change:auto!important;
  }
  .vv-scroll-cue--inline .vv-mesh-block--scroll{display:none!important;}
  .vv-scroll-cue--inline::before{
    content:''!important;display:block!important;position:absolute!important;left:50%!important;top:52%!important;
    width:118px!important;height:118px!important;transform:translate(-50%,-50%)!important;
    z-index:0!important;pointer-events:none!important;border-radius:50%!important;
    background:radial-gradient(circle at 50% 50%,rgba(0,0,0,.95) 0%,rgba(0,0,0,.78) 42%,rgba(0,0,0,.4) 68%,transparent 88%)!important;
  }
  .vv-scroll-cue--inline::after{
    content:''!important;display:block!important;position:absolute!important;
    left:-12%!important;right:-12%!important;bottom:-4%!important;height:62%!important;
    z-index:6!important;pointer-events:none!important;
    background:linear-gradient(to top,#000 0%,rgba(0,0,0,.92) 30%,rgba(0,0,0,.55) 62%,transparent 100%)!important;
  }
  .vv-scroll-cue--inline>*{position:relative!important;z-index:2!important;}
  .vv-scroll-cue--inline,.vv-scroll-cue--inline *{pointer-events:auto!important;}
  .vv-scroll-cue--inline:hover,.vv-scroll-cue--inline:active,.vv-scroll-cue--inline:focus{transform:translate3d(-50%,0,0)!important;}
  .vv-scroll-cue--inline dotlottie-wc{width:100px!important;height:100px!important;display:block!important;position:relative!important;z-index:3!important;transform:none!important;transition:none!important;}
  .vv-hero-trust{position:relative!important;z-index:6!important;}
  .vv-hero-text .vv-eyebrow,
  .vv-hero-text .vv-hero-h1,
  .vv-hero-text .vv-hero-sub,
  .vv-hero-text .vv-hero-btns{max-width:100%!important;text-align:left!important;}
  .vv-hero-section .vv-eyebrow{justify-content:flex-start!important;}
  .vv-hero-h1{font-size:clamp(2.05rem,8vw,2.65rem)!important;text-align:left!important;line-height:.92!important;}
  .vv-hero-sub{text-align:left!important;font-size:.8rem!important;opacity:.78!important;max-width:100%!important;line-height:1.45!important;}
  .vv-hero-btns{
    display:grid!important;
    grid-template-columns:max-content max-content!important;
    grid-template-areas:"pricing trial" "how ."!important;
    justify-content:start!important;align-items:center!important;
    column-gap:.55rem!important;row-gap:.4rem!important;
    width:auto!important;margin-top:.55rem!important;margin-bottom:0!important;
  }
  .vv-hero-btns .vv-btn-red{grid-area:pricing!important;margin-right:0!important;}
  .vv-hero-btns .vv-btn-outline{grid-area:trial!important;}
  .vv-hero-section .vv-btn{
    width:auto!important;max-width:none!important;flex:0 0 auto!important;
    padding:.68rem 1.15rem!important;font-size:.76rem!important;
  }
  .vv-hero-how{
    grid-area:how!important;width:auto!important;justify-self:start!important;
    text-align:left!important;font-size:.78rem!important;margin-top:.05rem!important;
  }
  .vv-hero-trust{
    display:flex!important;flex-wrap:nowrap!important;grid-template-columns:unset!important;
    overflow:visible!important;justify-content:space-between!important;align-items:stretch!important;
    gap:.15rem!important;width:100%!important;
    margin-top:.55rem!important;padding:.55rem .2rem .45rem!important;
    border-top:1px solid rgba(255,255,255,.1)!important;position:relative!important;isolation:isolate!important;
  }
  .vv-hero-trust::after,.vv-hero-trust::before{content:none!important;display:none!important;}
  .vv-hero-trust::-webkit-scrollbar{display:none!important;}
  .vv-hero-trust .vv-trust-item,
  .vv-hero-trust .vv-trust-item:nth-child(n+5){
    display:flex!important;flex:1 1 0!important;min-width:0!important;width:auto!important;
    font-size:.48rem!important;padding-left:.22rem!important;padding-right:.02rem!important;
    gap:.1rem!important;position:relative!important;z-index:5!important;overflow:hidden!important;
  }
  .vv-trust-num{font-size:.92rem!important;line-height:1.05!important;position:relative!important;z-index:6!important;}
  .vv-trust-item:not(:first-child){padding-left:.22rem!important;}
  .vv-trust-item>span:not(.vv-trust-num){
    line-height:1.1!important;white-space:nowrap!important;overflow:hidden!important;
    text-overflow:ellipsis!important;max-width:100%!important;
  }
  .vv-hero-mockup{
    order:3!important;width:100%!important;margin-top:1.25rem!important;padding-bottom:1.5rem!important;
    display:flex!important;flex-direction:column!important;gap:.75rem!important;min-height:0!important;
  }
  .vv-hero-stage{
    position:relative!important;width:100%!important;
    min-height:min(400px,108vw)!important;padding-bottom:1.25rem!important;
    overflow:visible!important;clip-path:none!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
  }
  .vv-hero-lottie{
    position:relative!important;z-index:6!important;margin:0 auto!important;
    width:min(240px,58%)!important;order:unset!important;
  }
  .vv-hero-lottie dotlottie-wc{width:min(240px,58vw)!important;height:min(240px,58vw)!important;max-width:58vw!important;max-height:58vw!important;}
  .vv-float-badge.vv-float-uptime,.vv-float-uptime{
    display:flex!important;visibility:visible!important;opacity:1!important;
    position:absolute!important;top:calc(50% - min(120px,29vw) - 2.6rem)!important;
    left:0!important;right:0!important;bottom:auto!important;width:100%!important;height:auto!important;
    transform:none!important;justify-content:center!important;align-items:center!important;z-index:14!important;
    margin:0!important;padding:0!important;animation:none!important;pointer-events:none!important;
  }
  .vv-float-uptime-inner{
    display:flex!important;visibility:visible!important;opacity:1!important;
    align-items:center!important;justify-content:center!important;gap:.45rem!important;margin:0 auto!important;
    font-size:.62rem!important;color:#e8fbff!important;
    text-shadow:0 0 8px rgba(0,229,255,.55),0 0 18px rgba(0,229,255,.28),0 1px 0 rgba(0,0,0,.65)!important;
    animation:vvFloatUptimeMobile 4.8s ease-in-out infinite!important;
    transform:perspective(420px) rotateX(12deg)!important;-webkit-transform:perspective(420px) rotateX(12deg)!important;
    will-change:transform,opacity!important;filter:brightness(1.05)!important;
  }
  .vv-live-gif{display:flex!important;visibility:visible!important;opacity:1!important;width:36px!important;height:36px!important;
    filter:drop-shadow(0 0 10px rgba(0,229,255,.7)) drop-shadow(0 0 18px rgba(47,107,255,.35))!important;}
  .vv-live-gif dotlottie-wc{display:block!important;width:36px!important;height:36px!important;}
  @keyframes vvFloatUptimeMobile{
    0%,100%{transform:perspective(420px) rotateX(12deg) translateY(0);opacity:1;filter:brightness(1.05)}
    40%{transform:perspective(420px) rotateX(14deg) translateY(-7px);opacity:.96;filter:brightness(1.18)}
    70%{transform:perspective(420px) rotateX(11deg) translateY(-3px);opacity:1;filter:brightness(1.08)}
  }
  .vv-scroll-cue--dock{display:none!important;}
  .vv-soft-shade,.vv-soft-shade.vv-soft-shade--player,.vv-soft-shade--player{display:none!important;visibility:hidden!important;opacity:0!important;}
  /* Floating tiles + LIVE — same idea as desktop, scaled for phones */
  .vv-app-float-grid{
    position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
    display:block!important;margin:0!important;padding:0!important;order:unset!important;
    z-index:10!important;transform:none!important;pointer-events:none!important;
  }
  .vv-app-float-grid .vv-app-cell,
  .vv-app-float-grid .vv-app-cell.vv-cell-front,
  .vv-app-float-grid .vv-app-cell.vv-cell-behind,
  .vv-app-float-grid .vv-cell-icon,
  .vv-app-float-grid .vv-live,
  .vv-app-float-grid .vv-live::before,
  .vv-cell-movies .vv-cell-icon,
  .vv-cell-football .vv-cell-icon{
    animation:none!important;transform:none!important;transition:none!important;will-change:auto!important;
    filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  }
  .vv-app-float-grid .vv-app-cell{
    width:88px!important;padding:.68rem .4rem!important;gap:.32rem!important;pointer-events:none!important;
    background:rgba(10,12,22,.92)!important;
  }
  .vv-app-float-grid .vv-app-cell:nth-child(1),
  .vv-app-float-grid .vv-app-cell:nth-child(2),
  .vv-app-float-grid .vv-app-cell:nth-child(3),
  .vv-app-float-grid .vv-app-cell:nth-child(4),
  .vv-app-float-grid .vv-app-cell:nth-child(5),
  .vv-app-float-grid .vv-app-cell:nth-child(6){
    animation:none!important;transform:none!important;filter:none!important;
  }
  .vv-app-float-grid .vv-app-cell.vv-cell-front{z-index:12!important;opacity:1!important;}
  .vv-app-float-grid .vv-app-cell.vv-cell-behind{z-index:4!important;opacity:.82!important;filter:none!important;}
  .vv-app-float-grid .vv-app-cell:nth-child(1){top:calc(50% - 38%)!important;left:2px!important;right:auto!important;bottom:auto!important;}
  .vv-app-float-grid .vv-app-cell:nth-child(2){top:calc(50% - 40%)!important;right:2px!important;left:auto!important;bottom:auto!important;}
  .vv-app-float-grid .vv-app-cell:nth-child(3){top:calc(50% - 8%)!important;left:2px!important;right:auto!important;bottom:auto!important;}
  .vv-app-float-grid .vv-app-cell:nth-child(4){top:calc(50% - 2%)!important;right:2px!important;left:auto!important;bottom:auto!important;}
  .vv-app-float-grid .vv-app-cell:nth-child(5){top:calc(50% + 22%)!important;left:2px!important;right:auto!important;bottom:auto!important;}
  .vv-app-float-grid .vv-app-cell:nth-child(6){top:calc(50% + 24%)!important;right:2px!important;left:auto!important;bottom:auto!important;}
  .vv-app-float-grid .vv-live{
    display:block!important;position:absolute!important;top:5px!important;right:5px!important;font-size:.38rem!important;
    animation:none!important;
  }
  .vv-app-float-grid .vv-live::before{animation:none!important;opacity:1!important;}
  .vv-app-float-grid .vv-cell-icon{font-size:1.35rem!important;animation:none!important;transform:none!important;}
  .vv-app-float-grid .vv-cell-name{font-size:.62rem!important;}
  .vv-hero-lottie{filter:none!important;will-change:auto!important;transition:none!important;transform:none!important;contain:none!important;}
  .vv-hero-mockup,.vv-hero-stage{contain:none!important;isolation:isolate!important;transform:none!important;filter:none!important;will-change:auto!important;}
  .vv-hero-mockup::before,
  .vv-soft-shade,.vv-soft-shade--player{display:none!important;content:none!important;animation:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important;}
  .vv-app-window{
    width:100%!important;max-width:100%!important;margin:.65rem auto 0!important;order:3!important;
    z-index:8!important;opacity:1!important;background:rgba(0,0,0,.94)!important;
    isolation:isolate!important;overflow:visible!important;
  }
  .vv-app-window-stats,.vv-app-window.vv-app-window-stats{
    margin-top:.5rem!important;z-index:8!important;isolation:isolate!important;
    background:rgba(8,10,18,.94)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    will-change:auto!important;overflow:hidden!important;border-bottom:none!important;
    -webkit-mask-image:none!important;mask-image:none!important;
  }
  .vv-app-window-stats::before,.vv-app-window-stats::after,.vv-app-stats::before{content:none!important;display:none!important;}
  .vv-app-window-stats>*:not(.vv-soft-shade){position:relative!important;z-index:1!important;}
  .vv-app-window-stats>.vv-soft-shade{z-index:20!important;display:block!important;}
  .vv-app-bar{background:rgba(0,0,0,.45)!important;border-radius:18px 18px 0 0!important;position:relative!important;z-index:6!important;}
  .vv-app-stats{
    display:grid!important;grid-template-columns:1fr 1fr!important;gap:.5rem .35rem!important;
    padding:.85rem .7rem!important;min-height:0!important;background:rgba(0,0,0,.45)!important;
    border-radius:0 0 18px 18px!important;position:relative!important;z-index:5!important;
  }
  .vv-app-stat{min-width:0!important;width:100%!important;position:relative!important;z-index:5!important;}
  .vv-app-stat strong{
    font-size:clamp(1.1rem,4.8vw,1.4rem)!important;white-space:normal!important;
    color:#fff!important;-webkit-text-fill-color:#fff!important;position:relative!important;z-index:5!important;
  }
  .vv-app-stat span{
    font-size:.55rem!important;white-space:normal!important;color:rgba(220,220,230,.95)!important;
  }
  .vv-app-title{color:rgba(210,210,220,.95)!important;}
  .vv-app-stat-sep{display:none!important;}

  /* Steps / plans / features / channels — keep multi-col like desktop */
  .vv-steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.55rem!important;}
  #vv-steps .vv-section-center{margin-bottom:1.15rem!important;}
  .vv-step-card{padding:.7rem .6rem!important;border-radius:10px!important;}
  .vv-step-num{font-size:1.2rem!important;margin-bottom:.28rem!important;letter-spacing:.04em!important;}
  .vv-step-title{font-size:.8rem!important;margin-bottom:.28rem!important;line-height:1.25!important;}
  .vv-step-desc{font-size:.68rem!important;line-height:1.4!important;}
  .vv-plans-row,.vv-plans-row-4{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1rem!important;}
  .vv-plan-card{padding:1.35rem 1.15rem!important;}
  .vv-plan-price{font-size:2.55rem!important;}
  .vv-feat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1.1rem!important;}
  .vv-feat-large{grid-column:span 2!important;}
  .vv-ch-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.85rem!important;}
  .vv-devices-layout{grid-template-columns:1fr!important;gap:.55rem!important;align-items:start!important;}
  .vv-devices-right{min-height:0!important;height:auto!important;order:1!important;}
  .vv-devices-left{order:2!important;gap:1rem!important;}
  .vv-devices-lottie{min-height:0!important;height:auto!important;margin:0!important;}
  .vv-devices-lottie dotlottie-wc{
    width:min(320px,78vw)!important;height:min(320px,78vw)!important;max-height:340px!important;
  }
  .vv-devices-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .vv-faq-layout{grid-template-columns:1fr!important;}
  .vv-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1.5rem!important;}

  /* Speed iframe widget */
  .vv-speed-frame-wrap,#vvSpeedPanel{min-height:520px!important;height:auto!important;}
  .vv-speed-wrap{grid-template-columns:1fr!important;gap:1.5rem!important;}
  .vv-speed-head{text-align:center!important;justify-content:center!important;}
  .vv-speed-head>div{max-width:100%!important;}
  .vv-speed-head .vv-h2,.vv-speed-head .vv-lead,.vv-speed-head .vv-eyebrow{text-align:center!important;}
  .vv-speed-head .vv-lead,.vv-speed-head .vv-cdn-note{margin-left:auto!important;margin-right:auto!important;max-width:100%!important;}
  .vv-speed-head .vv-cdn-note{max-width:100%!important;width:100%!important;}

  /* Guides marquee — keep fixed card widths on mobile */
  #vv-guides .vv-guides-viewport{margin:0 2.4rem!important;}
  #vv-guides .vv-guide-card{flex-basis:240px!important;width:240px!important;min-height:160px!important;}
  #vv-guides .vv-guides-track{animation-duration:42s!important;}

  /* Final CTA — keep band energy, dual buttons */
  .vv-final-cta-inner{
    flex-direction:column!important;align-items:stretch!important;
    padding:1.75rem 1.25rem!important;gap:1.15rem!important;
  }
  .vv-final-cta-copy{text-align:left!important;}
  .vv-final-cta-inner .vv-h2{font-size:clamp(1.85rem,7vw,2.45rem)!important;text-align:left!important;}
  .vv-final-cta-inner .vv-lead{font-size:1rem!important;max-width:100%!important;margin:0!important;}
  .vv-trial-lottie{align-self:center!important;margin-left:auto!important;margin-right:auto!important;}
  .vv-trial-lottie dotlottie-wc{width:110px!important;height:110px!important;max-width:110px!important;}
  .vv-final-cta-btns{
    flex-direction:row!important;flex-wrap:nowrap!important;
    justify-content:flex-start!important;width:100%!important;margin:0!important;gap:.65rem!important;
  }
  .vv-final-cta-btns .vv-btn{
    flex:1 1 0!important;white-space:nowrap!important;
    font-size:.78rem!important;padding:.95rem 1rem!important;
  }
}
@media (max-width:900px){
  .vv-ssl-badge{
    gap:.4rem!important;padding:.38rem .6rem!important;border-radius:9px!important;
    max-width:min(230px,72vw)!important;
  }
  .vv-ssl-shield{width:22px!important;height:auto!important;}
  .vv-ssl-copy strong{font-size:.68rem!important;}
  .vv-ssl-copy span{font-size:.58rem!important;margin-top:.05rem!important;}
  .vv-pay-badge{flex-wrap:nowrap!important;gap:.18rem .28rem!important;max-width:min(100%,96vw)!important;width:100%!important;justify-content:center!important;overflow:visible!important;}
  .vv-pay-methods{height:22px!important;max-width:none!important;width:auto!important;flex:0 1 auto!important;min-width:0!important;max-height:22px!important;}
  .vv-pay-icon,.vv-pay-icon svg{height:18px!important;max-height:18px!important;width:auto!important;flex-shrink:0!important;}
  .vv-payment-note{font-size:.55rem!important;letter-spacing:.05em!important;}
}
@media (max-width:560px){
  .vv-max{padding-left:1rem!important;padding-right:1rem!important;}
  .vv-section,.vv-section-alt{padding:3.25rem 1rem!important;}
  .vv-hero-h1{font-size:clamp(1.9rem,8.5vw,2.45rem)!important;}
  .vv-hero-btns{gap:.4rem .5rem!important;}
  .vv-hero-section .vv-btn{padding:.62rem 1.05rem!important;font-size:.72rem!important;}
  .vv-trust-num{font-size:1.45rem!important;}
  .vv-steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.45rem!important;}
  .vv-step-card{padding:.6rem .5rem!important;}
  .vv-step-num{font-size:1.1rem!important;}
  .vv-step-title{font-size:.76rem!important;}
  .vv-step-desc{font-size:.64rem!important;line-height:1.35!important;}
  .vv-plans-row,.vv-plans-row-4{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.75rem!important;}
  .vv-plan-card{padding:1.1rem .85rem!important;}
  .vv-plan-price{font-size:2.15rem!important;}
  .vv-feat-grid{grid-template-columns:1fr!important;}
  .vv-feat-large{grid-column:auto!important;}
  .vv-ch-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .vv-devices-layout{gap:.35rem!important;}
  .vv-devices-lottie dotlottie-wc{
    width:min(280px,76vw)!important;height:min(280px,76vw)!important;max-height:300px!important;
  }
  .vv-footer-grid{grid-template-columns:1fr 1fr!important;}
  #vv-guides .vv-guide-card{flex-basis:220px!important;width:220px!important;}
  #vv-guides .vv-guides-track{animation-duration:38s!important;}
  .vv-final-cta-inner .vv-h2{font-size:clamp(1.7rem,8vw,2.2rem)!important;}
  .vv-final-cta-btns .vv-btn{font-size:.72rem!important;padding:.88rem .7rem!important;letter-spacing:.04em!important;}
}
@media (max-width:380px){
  .vv-plans-row,.vv-plans-row-4{grid-template-columns:1fr!important;}
  .vv-steps-grid{grid-template-columns:1fr!important;}
  .vv-hero-section .vv-btn{width:auto!important;max-width:none!important;justify-content:center!important;}
  .vv-hero-how{width:auto!important;text-align:left!important;justify-self:start!important;}
  .vv-hero-btns{justify-content:start!important;}
}
/* Fluid responsive lock — all resolutions */
html,body,.tc-v2-root{max-width:100%!important;}
@media (min-width:901px){
  html,body,.tc-v2-root{overflow-x:clip!important;}
}
@media (max-width:900px){
  html,body{overflow-x:visible!important;}
  body,body.home,body.tc-native-home{overflow:visible!important;overflow-x:visible!important;overflow-y:visible!important;}
  .tc-v2-root{overflow-x:clip!important;}
}
.tc-v2-root img,.tc-v2-root video,.tc-v2-root iframe,.tc-v2-root canvas,.tc-v2-root svg{max-width:100%!important;height:auto;}
.vv-hero-inner{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr)!important;width:100%!important;max-width:min(1760px,98vw)!important;}
@media (max-width:1400px) and (min-width:1101px){
  .vv-hero-inner{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)!important;max-width:min(1280px,96vw)!important;}
}
@media (max-width:1100px) and (min-width:901px){
  .vv-hero-inner{grid-template-columns:minmax(0,1fr) minmax(0,.95fr)!important;max-width:min(1040px,96vw)!important;gap:1.25rem!important;}
  .vv-plans-row-4{grid-template-columns:repeat(2,1fr)!important;}
  .vv-feat-grid{grid-template-columns:repeat(2,1fr)!important;}
}
@media (max-width:900px){
  .vv-hero-inner{display:flex!important;flex-direction:column!important;max-width:100%!important;}
  .vv-hero-text,.vv-hero-mockup,.vv-hero-stage,.vv-app-window-stats{width:100%!important;max-width:100%!important;}
  .vv-devices-layout,.vv-download-layout,.vv-faq-layout,.vv-term-layout,.vv-speed-wrap{grid-template-columns:1fr!important;}
  .vv-final-cta-inner{flex-direction:column!important;align-items:center!important;text-align:center!important;}
}
@media (max-width:640px){
  .vv-plans-row,.vv-plans-row-4,.vv-steps-grid{grid-template-columns:1fr!important;}
}
@media (max-height:500px) and (orientation:landscape){
  .vv-app-float-grid,.vv-float-uptime,.vv-scroll-cue{display:none!important;}
  .vv-hero-section{min-height:0!important;padding-top:1.25rem!important;padding-bottom:1.25rem!important;}
}
body.home .entry-content > *:not(.tc-v2-root) { display:none!important; }
/* Yoast intro paragraph sibling — hidden on front; still in post HTML for analysis */
.tc-yoast-intro{display:none!important;}


/* ============================================================
   TIVIMATE US v2 — DESIGN SYSTEM
   All classes prefixed with .vv- to avoid WP theme conflicts
   ============================================================ */
:root {
  --vv-bg:       #000000;
  --vv-surface:  transparent;
  --vv-card:     rgba(20,20,28,0.72);
  --vv-card2:    rgba(28,28,38,0.82);
  --vv-border:   rgba(255,255,255,0.08);
  --vv-red:      #00B8E6;
  --vv-red2:     #00E5FF;
  --vv-orange:   #2F6BFF;
  --vv-red-glow: rgba(0,184,230,0.28);
  --vv-text:     #f4f4f5;
  --vv-muted:    #52525b;
  --vv-muted2:   #c4c4cc;
}

/* Base reset for TiviMate US sections */
.vv-wrap *, .vv-wrap *::before, .vv-wrap *::after {
  box-sizing: border-box; margin: 0; padding: 0;
}
.vv-wrap {
  font-family: 'Manrope', sans-serif;
  color: var(--vv-text);
  background: transparent;
  overflow-x: visible;
  position: relative;
}
.vv-wrap a { text-decoration: none; }

/* Site-wide deep space — wrappers stay TRANSPARENT so fixed FX shows through */
.tc-v2-root {
  background: transparent !important;
  position: relative;
  /* z-index:auto — stacking above fixed network blocks backdrop-filter glass */
  z-index: auto;
  min-height: 100vh;
}
body.tc-space-ready { isolation: isolate; }
body.tc-space-ready::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  background:
    radial-gradient(ellipse 90% 55% at 50% -10%, rgba(12,18,32,0.22), transparent 55%),
    radial-gradient(ellipse 50% 40% at 15% 30%, rgba(0,229,255,0.02), transparent 60%),
    radial-gradient(ellipse 45% 35% at 85% 20%, rgba(120,80,255,0.025), transparent 55%),
    radial-gradient(ellipse 70% 50% at 50% 110%, rgba(0,0,0,0.5), transparent 50%);
}
body.tc-space-ready::after {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  background-image:
    radial-gradient(1.4px 1.4px at 4% 8%, #fff, transparent),
    radial-gradient(1px 1px at 11% 22%, rgba(0,229,255,.95), transparent),
    radial-gradient(1.6px 1.6px at 19% 14%, #fff, transparent),
    radial-gradient(1px 1px at 27% 41%, rgba(200,180,255,.85), transparent),
    radial-gradient(1.2px 1.2px at 35% 6%, #fff, transparent),
    radial-gradient(2px 2px at 44% 33%, rgba(0,229,255,.8), transparent),
    radial-gradient(1px 1px at 52% 58%, #fff, transparent),
    radial-gradient(1px 1px at 61% 19%, rgba(255,255,255,.75), transparent),
    radial-gradient(1.5px 1.5px at 69% 47%, rgba(140,100,255,.85), transparent),
    radial-gradient(1px 1px at 78% 11%, #fff, transparent),
    radial-gradient(1px 1px at 86% 39%, rgba(0,229,255,.75), transparent),
    radial-gradient(1.8px 1.8px at 93% 66%, #fff, transparent),
    radial-gradient(1px 1px at 7% 71%, rgba(255,255,255,.6), transparent),
    radial-gradient(1px 1px at 23% 84%, rgba(0,229,255,.65), transparent),
    radial-gradient(1.3px 1.3px at 48% 91%, #fff, transparent),
    radial-gradient(1px 1px at 72% 88%, rgba(180,160,255,.7), transparent);
  opacity: 0.9;
  animation: vvSiteStars 60s linear infinite;
}
@keyframes vvSiteStars {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(-1.5%, 1%, 0); }
}
/* position:relative only — do NOT set z-index (that isolates backdrop-filter from the network) */
.tc-v2-root > *:not(.vv-network-bg):not(.vv-cursor-canvas):not(.vv-space-fx) {
  position: relative;
  z-index: auto;
}

/* Fixed site-wide 4D space FX — above body bg, below page content */
.vv-space-fx {
  position: fixed !important;
  inset: 0;
  z-index: 0 !important;
  pointer-events: none;
  overflow: hidden !important;
  width: 100vw !important;
  height: 100vh !important;
  max-width: 100vw !important;
  contain: paint;
}
/* Sky orthogonal crossed grid */
.vv-space-fx-grid {
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(0,229,255,0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,229,255,0.07) 1px, transparent 1px),
    linear-gradient(rgba(140,100,255,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(140,100,255,0.04) 1px, transparent 1px);
  background-size: 64px 64px, 64px 64px, 192px 192px, 192px 192px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.35) 48%, transparent 72%);
  -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.35) 48%, transparent 72%);
  opacity: 0.55;
  animation: vvSpaceGridDrift 28s linear infinite;
}
/* Diagonal X / crossed beams — 4D depth cue */
.vv-space-fx-cross {
  position: absolute; inset: -10%;
  background-image:
    repeating-linear-gradient(
      32deg,
      transparent 0,
      transparent 46px,
      rgba(0,229,255,0.055) 46px,
      rgba(0,229,255,0.055) 47px
    ),
    repeating-linear-gradient(
      -32deg,
      transparent 0,
      transparent 46px,
      rgba(167,139,250,0.05) 46px,
      rgba(167,139,250,0.05) 47px
    ),
    repeating-linear-gradient(
      58deg,
      transparent 0,
      transparent 90px,
      rgba(0,229,255,0.03) 90px,
      rgba(0,229,255,0.03) 91px
    ),
    repeating-linear-gradient(
      -58deg,
      transparent 0,
      transparent 90px,
      rgba(120,80,255,0.028) 90px,
      rgba(120,80,255,0.028) 91px
    );
  mask-image: radial-gradient(ellipse 85% 70% at 50% 40%, #000 0%, rgba(0,0,0,0.55) 55%, transparent 85%);
  -webkit-mask-image: radial-gradient(ellipse 85% 70% at 50% 40%, #000 0%, rgba(0,0,0,0.55) 55%, transparent 85%);
  opacity: 0.7;
  animation: vvSpaceCrossPulse 16s ease-in-out infinite alternate;
}
/* Vanishing-point tunnel lines (perspective 4D) */
.vv-space-fx-vanish {
  position: absolute;
  left: 50%; top: 42%;
  width: 160vmax; height: 160vmax;
  margin-left: -80vmax; margin-top: -80vmax;
  background:
    repeating-conic-gradient(
      from 0deg,
      transparent 0deg 7deg,
      rgba(0,229,255,0.035) 7deg 7.35deg,
      transparent 7.35deg 18deg,
      rgba(140,100,255,0.028) 18deg 18.3deg
    );
  -webkit-mask-image: radial-gradient(circle at center, transparent 8%, rgba(0,0,0,0.55) 28%, rgba(0,0,0,0.25) 55%, transparent 72%);
  mask-image: radial-gradient(circle at center, transparent 8%, rgba(0,0,0,0.55) 28%, rgba(0,0,0,0.25) 55%, transparent 72%);
  opacity: 0.55;
  animation: vvSpaceVanishSpin 90s linear infinite;
  transform: perspective(900px) rotateX(62deg) scale(1.05);
  transform-origin: center center;
}
.vv-space-fx-floor {
  position: absolute;
  left: 0; right: 0;
  bottom: -35%;
  height: 62%;
  width: 100%;
  background:
    radial-gradient(ellipse 80% 48% at 50% 0%, rgba(0,229,255,0.16), transparent 72%),
    radial-gradient(ellipse 40% 30% at 70% 18%, rgba(120,80,255,0.1), transparent 70%),
    linear-gradient(rgba(0,229,255,0.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,229,255,0.12) 1px, transparent 1px),
    linear-gradient(rgba(167,139,250,0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(167,139,250,0.05) 1px, transparent 1px);
  background-size: auto, auto, 48px 48px, 48px 48px, 144px 144px, 144px 144px;
  transform: perspective(520px) rotateX(58deg) scale(1.35);
  transform-origin: center top;
  mask-image: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.35) 18%, rgba(0,0,0,0.8) 48%, rgba(0,0,0,0.45) 78%, transparent 100%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.35) 18%, rgba(0,0,0,0.8) 48%, rgba(0,0,0,0.45) 78%, transparent 100%);
  opacity: 0.55;
  animation: vvSiteFloor 14s ease-in-out infinite alternate;
  will-change: opacity;
}
.vv-space-fx-horizon {
  position: absolute;
  left: 8%; right: 8%;
  top: 64%;
  height: 140px;
  background:
    radial-gradient(ellipse 70% 55% at 50% 40%, rgba(0,229,255,0.14), transparent 70%),
    radial-gradient(ellipse 40% 40% at 50% 50%, rgba(120,80,255,0.08), transparent 70%);
  opacity: 0.55;
  filter: blur(16px);
  pointer-events: none;
}
@keyframes vvSiteFloor {
  from { opacity: 0.48; filter: brightness(0.92); }
  to { opacity: 0.7; filter: brightness(1.1); }
}
@keyframes vvSpaceGridDrift {
  from { background-position: 0 0, 0 0, 0 0, 0 0; }
  to { background-position: 0 64px, 64px 0, 0 192px, 192px 0; }
}
@keyframes vvSpaceCrossPulse {
  from { opacity: 0.45; transform: scale(1); }
  to { opacity: 0.75; transform: scale(1.03); }
}
@keyframes vvSpaceVanishSpin {
  from { transform: perspective(900px) rotateX(62deg) rotate(0deg) scale(1.05); }
  to { transform: perspective(900px) rotateX(62deg) rotate(360deg) scale(1.05); }
}
body > .vv-space-fx,
.tc-v2-root > .vv-space-fx {
  position: fixed !important;
  inset: 0 !important;
  z-index: 0 !important;
}

/* Soft black overlay — FULL player window, faded from bottom (on TOP of content) */
.vv-soft-shade {
  display: none !important;
}
.vv-soft-shade--player {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  inset: 0 !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  height: auto !important;
  width: auto !important;
  z-index: 20 !important;
  pointer-events: none !important;
  border-radius: 18px !important;
  /* Stronger black at bottom so edge melts — no hard line */
  background: linear-gradient(
    to top,
    #000 0%,
    rgba(0, 0, 0, 0.95) 10%,
    rgba(0, 0, 0, 0.7) 28%,
    rgba(0, 0, 0, 0.42) 50%,
    rgba(0, 0, 0, 0.2) 72%,
    rgba(0, 0, 0, 0.08) 100%
  ) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}
/* Kill old mesh plates on trust/player — shade replaces them */
.vv-hero-trust > .vv-mesh-block,
.vv-app-window-stats > .vv-mesh-block {
  display: none !important;
}
/* Black plate under scroll GIF only */
.vv-mesh-block {
  position: absolute !important;
  inset: -10px -14px -14px !important;
  z-index: 0 !important;
  pointer-events: none !important;
  border-radius: 24px !important;
  background: radial-gradient(
    ellipse 90% 80% at 50% 50%,
    rgba(0, 0, 0, 0.95) 0%,
    rgba(0, 0, 0, 0.78) 42%,
    rgba(0, 0, 0, 0.4) 68%,
    rgba(0, 0, 0, 0.12) 84%,
    transparent 94%
  ) !important;
  box-shadow: none !important;
}
.vv-mesh-block--scroll {
  inset: auto !important;
  left: 50% !important;
  top: 52% !important;
  width: 160px !important;
  height: 160px !important;
  transform: translate(-50%, -50%) !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, #000 0%, #000 55%, rgba(0,0,0,0.75) 72%, transparent 100%) !important;
  box-shadow: 0 0 28px 12px rgba(0, 0, 0, 0.9) !important;
}
.vv-mesh-block--player {
  inset: -14px -18px -18px !important;
  border-radius: 28px !important;
  background: radial-gradient(
    ellipse 90% 80% at 50% 50%,
    rgba(0, 0, 0, 0.95) 0%,
    rgba(0, 0, 0, 0.78) 42%,
    rgba(0, 0, 0, 0.4) 68%,
    rgba(0, 0, 0, 0.12) 84%,
    transparent 94%
  ) !important;
  box-shadow: none !important;
}
.vv-hero-section {
  position: relative !important;
  z-index: 3 !important;
}
.vv-hero-trust,
.vv-app-window-stats {
  position: relative !important;
  z-index: 5 !important;
  isolation: isolate !important;
}
.vv-scroll-cue {
  position: absolute !important;
  z-index: 20 !important;
  isolation: isolate !important;
}
.vv-hero-trust > *:not(.vv-mesh-block):not(.vv-soft-shade),
.vv-scroll-cue > *:not(.vv-mesh-block),
.vv-app-window-stats > *:not(.vv-mesh-block):not(.vv-soft-shade) {
  position: relative !important;
  z-index: 5 !important;
}
/* Trust shade off; player shade MUST sit above bar/stats so fade is visible */
.vv-hero-trust > .vv-soft-shade {
  display: none !important;
}
.vv-app-window-stats {
  isolation: isolate !important;
  overflow: hidden !important;
}
.vv-app-window-stats > .vv-soft-shade {
  z-index: 20 !important;
  display: block !important;
}
.vv-app-window-stats > .vv-app-bar,
.vv-app-window-stats > .vv-app-stats,
.vv-app-window-stats > *:not(.vv-soft-shade) {
  position: relative !important;
  z-index: 1 !important;
}
/* Soften hard chrome — melt bottom edge into page (no sharp border) */
.vv-app-window.vv-app-window-stats {
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-left: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-right: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-bottom: none !important;
  box-shadow:
    0 24px 60px rgba(0, 0, 0, 0.75),
    0 0 28px rgba(0, 0, 0, 0.45) !important;
  /* Fade bottom ~22px so edge melts into black */
  -webkit-mask-image: linear-gradient(to top, transparent 0%, #000 22px, #000 100%) !important;
  mask-image: linear-gradient(to top, transparent 0%, #000 22px, #000 100%) !important;
}

/* Polygon network canvas — parallel with space FX */
.vv-network-bg,
body > .vv-network-bg,
.tc-v2-root > .vv-network-bg {
  position: fixed !important;
  inset: 0 !important;
  /* Stay UNDER hero UI so black plates can block the mesh */
  z-index: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  pointer-events: none !important;
  overflow: hidden !important;
  background:
    radial-gradient(ellipse 90% 70% at 20% 20%, rgba(8,145,178,0.03), transparent 55%),
    radial-gradient(ellipse 90% 70% at 80% 80%, rgba(147,51,234,0.035), transparent 55%),
    transparent;
}
.vv-network-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  opacity: 0.9;
  /* no translateZ — keeps polygons in the same backdrop as glass panels */
  filter: none;
  will-change: auto;
  z-index: 0;
}
.vv-network-vignette {
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 85% 85% at 50% 45%, transparent 42%, rgba(0,0,0,0.58) 100%);
  pointer-events: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  z-index: 1;
}
/* Sharp polygon cursor — above all page UI; still draws links to network nodes */
.vv-cursor-canvas,
body > .vv-cursor-canvas,
.tc-v2-root > .vv-cursor-canvas {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  display: block !important;
  z-index: 2147483000 !important;
  opacity: 1 !important;
  filter: none !important;
  pointer-events: none !important;
  background: transparent !important;
}
/* Old white/cyan line grids removed — polygon network is the BG */
.vv-space-fx,
.vv-space-fx-grid,
.vv-space-fx-cross,
.vv-space-fx-vanish,
.vv-space-fx-floor,
.vv-space-fx-horizon { display: none !important; }

/* Crosshair is drawn on the network canvas as a connecting polygon */
.vv-crosshair { display: none !important; }
@media (pointer: fine) {
  body.vv-has-poly-cursor,
  body.vv-has-poly-cursor * { cursor: none !important; }
  body.vv-has-poly-cursor a,
  body.vv-has-poly-cursor button,
  body.vv-has-poly-cursor input,
  body.vv-has-poly-cursor textarea,
  body.vv-has-poly-cursor select { cursor: none !important; }
}
.tc-v2-root > a.vv-wa-float,
#vv-float-portal > a.vv-wa-float {
  position: fixed !important;
  z-index: 2147483647 !important;
  bottom: 48px !important;
  right: 22px !important;
  left: auto !important;
  top: auto !important;
}

/* Grain overlay — applied to each section wrapper */
.vv-grain::after {
  content: '';
  position: absolute; inset: 0; pointer-events: none; z-index: 10;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='0.028'/%3E%3C/svg%3E");
}

/* Shared section spacing — transparent so grid shows through */
.vv-section { padding: 6rem 3rem; background: transparent; }
.vv-section-alt { padding: 6rem 3rem; background: transparent; }
.vv-section-center { text-align: center; }
.vv-max { max-width: min(1440px, 94vw); margin: 0 auto; }

/* Typography helpers */
.vv-eyebrow {
  display: inline-flex; align-items: center; gap: 0.5rem;
  font-family: 'JetBrains Mono', monospace; font-size: 0.65rem;
  letter-spacing: 0.25em; text-transform: uppercase; color: var(--vv-red);
  margin: 0 0 1rem; padding: 0; max-width: none;
}
.vv-eyebrow::before { content: '●'; font-size: 0.5rem; animation: vvPulse 1.8s ease-in-out infinite; }
@keyframes vvPulse { 0%,100%{opacity:1} 50%{opacity:0.3} }

.vv-h2 {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(2.4rem, 4.5vw, 4.5rem);
  line-height: 0.95; letter-spacing: 0.02em; color: var(--vv-text);
}
.vv-h2 em { font-style: normal; color: var(--vv-red); }
.vv-h2 span {
  background: linear-gradient(90deg, var(--vv-red), var(--vv-orange));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.vv-lead {
  font-size: 0.98rem; color: var(--vv-muted2); line-height: 1.8;
  font-weight: 400; max-width: 520px;
}

/* Buttons */
.vv-btn {
  display: inline-flex; align-items: center; gap: 0.5rem;
  font-family: 'Manrope', sans-serif; font-weight: 700;
  font-size: 0.8rem; letter-spacing: 0.08em; text-transform: uppercase;
  padding: 0.9rem 2rem; border-radius: 6px;
  cursor: pointer; border: none; text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s, opacity 0.2s, background 0.25s, color 0.25s, border-color 0.25s, filter 0.25s;
}
.vv-btn:hover { transform: translateY(-2px); opacity: 1; }
.vv-btn-red {
  background: linear-gradient(135deg, #00E5FF 0%, #2F6BFF 55%, #7c5cff 100%);
  color: #fff;
  box-shadow: 0 4px 24px var(--vv-red-glow);
}
.vv-btn-red:hover {
  background: #fff !important;
  color: #0a0a12 !important;
  box-shadow: 0 8px 28px rgba(255,255,255,0.22);
}
.vv-btn-outline {
  background: transparent;
  color: #fff;
  border: none;
  box-shadow: 0 0 0 0.3px #fff;
  box-sizing: border-box;
}
.vv-btn-outline:hover {
  background: #fff !important;
  color: #0a0a12 !important;
  border: none !important;
  box-shadow: 0 0 0 0.3px #fff !important;
}

/* LIVE badge — true red */
.vv-live {
  display: inline-flex; align-items: center; gap: 4px;
  background: #e11d48; color: #fff;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.5rem; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase;
  padding: 3px 7px; border-radius: 3px;
  box-shadow: 0 0 10px rgba(225,29,72,0.45);
}
.vv-live::before {
  content: ''; width: 5px; height: 5px; border-radius: 50%; background: #fff;
  box-shadow: 0 0 4px rgba(255,255,255,0.8);
  animation: vvBlink 1.4s ease-in-out infinite;
}
@keyframes vvBlink { 0%,100%{opacity:1} 50%{opacity:0.2} }

/* Scroll reveal */
.vv-reveal {
  opacity: 0; transform: translateY(22px);
  transition: opacity 0.55s ease, transform 0.55s ease;
}
.vv-reveal.vv-in { opacity: 1; transform: translateY(0); }
.vv-reveal-delay-1 { transition-delay: 0.08s; }
.vv-reveal-delay-2 { transition-delay: 0.16s; }
.vv-reveal-delay-3 { transition-delay: 0.24s; }
.vv-reveal-delay-4 { transition-delay: 0.32s; }

/* External float portal — 0×0 shell so mobile chrome resize can't move WA */
#vv-float-portal {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  pointer-events: none !important;
  z-index: 2147483646 !important;
  overflow: visible !important;
  transform: none !important;
  -webkit-transform: none !important;
  filter: none !important;
  perspective: none !important;
  contain: none !important;
  isolation: auto !important;
  mix-blend-mode: normal !important;
}
#vv-float-portal > .vv-wa-float,
#vv-float-portal > .vv-back-top,
#vv-float-portal > a.vv-wa-float {
  pointer-events: auto !important;
  position: fixed !important;
  z-index: 2147483647 !important;
}

/* WhatsApp float */
.vv-wa-float {
  position: fixed !important;
  bottom: calc(48px + env(safe-area-inset-bottom, 0px)) !important;
  right: 22px !important;
  left: auto !important;
  top: auto !important;
  width: 58px; height: 58px; border-radius: 50%;
  background: #25D366; color: #fff;
  display: flex !important; align-items: center; justify-content: center;
  text-decoration: none !important;
  z-index: 2147483647 !important;
  box-shadow: 0 4px 20px rgba(37,211,102,0.45);
  animation: vvWaPop 2.8s ease-in-out infinite;
  transition: transform 0.25s, box-shadow 0.25s;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  touch-action: manipulation;
}
.vv-wa-float svg { width: 30px; height: 30px; display: block; fill: #fff; }
.vv-wa-float:hover {
  transform: translateZ(0) scale(1.08) !important;
  animation: none;
  color: #fff !important;
  box-shadow: 0 6px 28px rgba(37,211,102,0.65);
}
.vv-wa-float:hover svg { fill: #fff; }
@keyframes vvWaPop {
  0%,100%{box-shadow:0 4px 20px rgba(37,211,102,0.4)}
  50%{box-shadow:0 4px 40px rgba(37,211,102,0.65),0 0 0 10px rgba(37,211,102,0.07)}
}

/* Back to top — sits above WhatsApp float */
.vv-back-top {
  position: fixed !important;
  bottom: calc(120px + env(safe-area-inset-bottom, 0px)) !important;
  right: 22px !important;
  left: auto !important;
  top: auto !important;
  width: 48px; height: 48px; border-radius: 50%;
  border: 1px solid rgba(0,229,255,0.45);
  background: rgba(0,0,0,0.85);
  color: #00E5FF;
  display: flex !important; align-items: center; justify-content: center;
  cursor: pointer;
  z-index: 2147483646 !important;
  box-shadow: 0 4px 18px rgba(0,229,255,0.25);
  opacity: 0; visibility: hidden; pointer-events: none;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  transition: opacity 0.2s, visibility 0.2s, background 0.25s, box-shadow 0.25s;
  padding: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  touch-action: manipulation;
}
.vv-back-top.is-visible {
  opacity: 1; visibility: visible; pointer-events: auto;
  transform: translateZ(0);
}
.vv-back-top svg { width: 20px; height: 20px; display: block; stroke: currentColor; fill: none; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.vv-back-top:hover {
  background: #fff; color: #0a0a12 !important;
  box-shadow: 0 6px 24px rgba(255,255,255,0.28);
  transform: translateZ(0) scale(1.05);
}

/* Responsive helpers */
@media (max-width: 768px) {
  .vv-section, .vv-section-alt { padding: 4rem 1.25rem; }
  .vv-back-top { bottom: 110px !important; width: 44px; height: 44px; }
}

/* ===== GLOBAL MOBILE / RESPONSIVE ===== */
@media (max-width: 900px) {
  html {
    overflow-x: visible !important;
    overflow-y: auto !important;
    max-width: 100vw;
  }
  body, body.home, body.tc-native-home {
    /* visible — overflow:auto on body kills position:sticky for the nav */
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    max-width: 100vw;
  }
  .tc-v2-root, .vv-wrap, .vv-hero-section, .vv-section, .vv-section-alt {
    overflow-x: clip !important;
    max-width: 100vw;
  }
  .vv-max { max-width: 100%; padding-inline: 0; }
  .vv-section, .vv-section-alt { padding: 3.5rem 1.15rem !important; }
  .vv-h2 { font-size: clamp(2.1rem, 9vw, 3.2rem) !important; }
  .vv-lead { font-size: 0.95rem !important; max-width: 100% !important; }
  .vv-btn { padding: 0.7rem 1.25rem !important; font-size: 0.8rem !important; }
  body.tc-space-ready::after {
    animation: none !important;
    transform: none !important;
  }
  .vv-wa-float {
    width: 52px !important; height: 52px !important;
    bottom: 36px !important;
    right: 14px !important;
    animation: none !important;
    transition: none !important;
    transform: none !important;
    -webkit-transform: none !important;
    will-change: auto !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.45) !important;
    filter: none !important;
    isolation: auto !important;
    contain: none !important;
  }
  .vv-back-top {
    right: 14px !important;
    bottom: 100px !important;
    animation: none !important;
    transition: opacity 0.15s, visibility 0.15s !important;
    transform: none !important;
    -webkit-transform: none !important;
    will-change: auto !important;
    filter: none !important;
    isolation: auto !important;
    contain: none !important;
  }
  .vv-back-top.is-visible,
  .vv-back-top:hover,
  .vv-wa-float:hover {
    transform: none !important;
    -webkit-transform: none !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.45) !important;
  }
  .vv-crosshair,
  .vv-cursor-canvas,
  body > .vv-cursor-canvas,
  .tc-v2-root > .vv-cursor-canvas,
  .vv-space-fx,
  .vv-space-fx-floor,
  .vv-space-fx-grid,
  .vv-space-fx-cross,
  .vv-space-fx-vanish,
  .vv-space-fx-horizon { display: none !important; }
  .vv-ticker-track { font-size: 0.66rem !important; gap: 0.9rem !important; font-weight: 500 !important; will-change: auto !important; }
  .vv-nav-shell { padding: 0.55rem 10px 0.45rem !important; }
  .vv-nav {
    padding: 16px 12px !important; border-radius: 14px !important; gap: 0.6rem !important; min-height: 64px !important;
    /* Lighter frosted glass on mobile */
    background: rgba(0, 0, 0, 0.48) !important;
    -webkit-backdrop-filter: blur(24px) saturate(1.45) !important;
    backdrop-filter: blur(24px) saturate(1.45) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.45) !important;
  }
  .vv-ticker-wrap {
    background-color: rgba(0, 0, 0, 0.42) !important;
    -webkit-backdrop-filter: blur(22px) saturate(1.4) !important;
    backdrop-filter: blur(22px) saturate(1.4) !important;
  }
  .vv-logo { min-width: 0 !important; font-size: 1.05rem !important; }
  .vv-logo-sub { font-size: 0.48rem !important; letter-spacing: 0.08em !important; }
  .vv-mobile-menu { padding: 1.25rem; gap: 1.25rem !important; }
  .vv-mobile-menu a { font-size: clamp(1.4rem, 7vw, 1.9rem) !important; }
  .vv-mob-cta { width: min(280px, 86vw); text-align: center; }
  .vv-pricing-controls { flex-wrap: wrap; justify-content: center; }
  .vv-plan-card { padding: 1.25rem 1rem !important; }
  .vv-plan-price { font-size: 2.4rem !important; }
  .vv-app-stats { flex-wrap: wrap; min-height: 0 !important; padding: 1rem 0.75rem !important; gap: 0.6rem !important; }
  .vv-app-stat { flex: 1 1 40% !important; }
  .vv-app-stat-sep { display: none !important; }
  .vv-app-float-grid { display: block !important; width: 100% !important; height: 100% !important; }
  .vv-app-float-grid .vv-app-cell:nth-child(n+5) { display: flex !important; }
  .vv-devices-layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.55rem !important;
    align-items: start !important;
  }
  .vv-devices-right { min-height: 0 !important; height: auto !important; }
  .vv-devices-lottie { min-height: 0 !important; height: auto !important; }
  .vv-devices-lottie dotlottie-wc {
    width: min(320px, 78vw) !important;
    height: min(320px, 78vw) !important;
    max-height: 340px !important;
  }
  .vv-devices-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .vv-faq-q { font-size: 0.9rem !important; padding: 1.1rem 0 !important; }
  .vv-footer-grid { gap: 1.75rem !important; }
  .vv-term-window { max-width: 100%; }
  .vv-speed-metrics { gap: 0.7rem !important; flex-wrap: wrap; }
  .vv-metric-val { font-size: 1.4rem !important; }
}
@media (max-width: 480px) {
  .vv-section, .vv-section-alt { padding: 3.25rem 1rem !important; }
  .vv-hero-section { padding: 0.75rem 1rem 0 !important; }
  .vv-hero-h1 { font-size: clamp(1.9rem, 8.5vw, 2.45rem) !important; max-width: none !important; }
  .vv-hero-sub { font-size: 0.8rem !important; opacity: 0.72 !important; }
  .vv-hero-btns { justify-content: flex-start; gap: 0.4rem !important; }
  .vv-hero-section .vv-btn { width: auto; max-width: none; padding: 0.62rem 1.05rem !important; font-size: 0.72rem !important; }
  .vv-hero-trust { gap: 0.25rem 0.35rem !important; margin-top: 0.35rem !important; padding: 0.45rem 0 0.1rem !important; }
  .vv-trust-num { font-size: 1.7rem !important; }
  .vv-trust-item { font-size: 0.7rem !important; }
  .vv-ch-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .vv-feat-grid { grid-template-columns: 1fr !important; }
  .vv-feat-large { grid-column: auto !important; }
  .vv-plans-row, .vv-plans-row-4 { grid-template-columns: repeat(2, 1fr) !important; }
  .vv-steps-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .vv-footer-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .vv-odo { width: min(300px, 90%) !important; }
  .vv-test-btn { font-size: 0.78rem !important; padding: 0.8rem 1.2rem !important; }
}


/* Header stack — ticker scrolls away; nav menu sticky only */
.vv-topstack {
  position: relative !important;
  top: auto !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 2147482500 !important;
  width: 100% !important;
  padding-top: env(safe-area-inset-top, 0px);
  pointer-events: none;
  isolation: isolate;
  transform: none !important;
  background: transparent !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
.vv-ticker-wrap {
  position: relative !important;
  top: auto !important;
  margin-bottom: 0.85rem !important; /* small spacer before menu bar */
}
.vv-nav-shell {
  position: sticky !important;
  top: 0 !important;
  z-index: 10050 !important;
}
/* Mobile: ticker at absolute top (not sticky); nav menu stays sticky */
@media (max-width: 900px) {
  html, body.home, body.tc-native-home {
    margin: 0 !important;
    padding: 0 !important;
  }
  body.home #page,
  body.home .site,
  body.home .site-content,
  body.home .content-area,
  body.home .site-main,
  body.home .entry-content {
    margin: 0 !important;
    padding: 0 !important;
  }
  body.home > header.vv-topstack,
  header.vv-topstack {
    position: relative !important;
    top: auto !important;
    z-index: 40 !important;
    margin: 0 !important;
    padding-top: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
  }
  .vv-ticker-wrap {
    margin: 0 0 0.55rem !important;
    min-height: 40px !important;
    padding: 8px 0 10px !important;
    position: relative !important;
  }
  .vv-nav-shell {
    position: sticky !important;
    top: 0 !important;
    z-index: 10050 !important;
    padding: 0.55rem 10px 0.45rem !important;
    pointer-events: none !important;
    background: transparent !important;
    margin: 0 !important;
  }
  .vv-nav-shell .vv-nav {
    pointer-events: auto !important;
  }
}
.vv-topstack .vv-ticker-wrap,
.vv-topstack .vv-nav { pointer-events: auto; }
/* TICKER — darker frosted glass + cyan→purple gradient separator */
.vv-ticker-wrap {
  background-color: rgba(0, 0, 0, 0.72) !important;
  background-image:
    linear-gradient(90deg, transparent 0%, #00E5FF 12%, #7dd3fc 38%, #a78bfa 68%, #7c5cff 88%, transparent 100%);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 100% 2px;
  border-bottom: none;
  backdrop-filter: blur(22px) saturate(1.4);
  -webkit-backdrop-filter: blur(22px) saturate(1.4);
  overflow: hidden;
  white-space: nowrap;
  min-height: 48px;
  padding: 12px 0 14px;
  margin: 0 0 0.85rem;
  position: relative;
  z-index: 2;
  display: flex; align-items: center;
  box-sizing: border-box;
}
.vv-ticker-wrap::before,
.vv-ticker-wrap::after {
  content: '';
  position: absolute; top: 0; bottom: 2px; width: 56px; z-index: 2;
  pointer-events: none;
}
.vv-ticker-wrap::before {
  left: 0;
  background: linear-gradient(90deg, rgba(4,6,12,0.65), transparent);
}
.vv-ticker-wrap::after {
  right: 0;
  background: linear-gradient(270deg, rgba(4,6,12,0.65), transparent);
}
.vv-ticker-track {
  display: inline-flex; align-items: center; gap: 1.2rem;
  animation: vvTicker 28s linear infinite;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.74rem; font-weight: 500;
  letter-spacing: 0.12em; text-transform: uppercase; line-height: 1.25;
  will-change: transform;
  position: relative; z-index: 1;
}
.vv-ticker-track span {
  display: inline-flex; align-items: center; gap: 1.2rem;
  line-height: 1.25; padding: 0;
  color: #7dd3fc;
  background: linear-gradient(90deg, #00E5FF 0%, #7dd3fc 35%, #a78bfa 70%, #00E5FF 100%);
  background-size: 220% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: vvGradSlide 6s linear infinite;
}
.vv-ticker-track span::after {
  content: '✦'; /* 4-point star */
  font-size: 0.95rem;
  line-height: 1;
  letter-spacing: 0;
  -webkit-text-fill-color: #00E5FF;
  color: #00E5FF;
  background: none;
  text-shadow: 0 0 12px rgba(0,229,255,0.7), 0 0 4px rgba(0,229,255,0.85);
  opacity: 1;
  transform: scale(1.05);
}
@keyframes vvTicker { from{transform:translate3d(0,0,0)} to{transform:translate3d(-50%,0,0)} }
@keyframes vvTickerShimmer { 0%{background-position:0% 50%} 100%{background-position:200% 50%} }
@keyframes vvGradSlide { 0%{background-position:0% 50%} 100%{background-position:220% 50%} }

/* NAV — lowered under ticker to match desktop spacing */
.vv-nav-shell {
  display: flex; justify-content: center; width: 100%;
  /* Compact padding — ticker is in-flow now (not stuck), so no huge offset */
  padding: 0.55rem 0 1.35rem;
  box-sizing: border-box;
  pointer-events: none;
  position: sticky !important;
  top: 0 !important;
  z-index: 10050 !important;
}
.vv-nav {
  position: relative;
  z-index: auto;
  display: flex; align-items: center; justify-content: space-between;
  gap: 1.25rem;
  width: 100%;
  max-width: min(1440px, 94vw);
  padding: 26px 28px;
  min-height: 90px;
  background: rgba(0, 0, 0, 0.62) !important;
  -webkit-backdrop-filter: blur(24px) saturate(1.45) !important;
  backdrop-filter: blur(24px) saturate(1.45) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 16px;
  box-shadow: 0 10px 40px rgba(0,0,0,0.45);
  overflow: visible;
  pointer-events: auto;
}
.vv-nav::before,
.vv-nav::after { display: none !important; content: none !important; }
.vv-logo {
  font-family: 'Bebas Neue', sans-serif; font-size: 1.65rem;
  letter-spacing: 0.05em; color: #fff;
  text-decoration: none; display: flex; flex-direction: column; align-items: flex-start;
  line-height: 1; position: relative; z-index: 1; white-space: nowrap;
  flex: 0 0 auto; min-width: 180px;
}
/* Language pill — between nav links and CTA buttons */
.vv-lang-switch {
  display: inline-flex;
  align-items: center;
  gap: 0.28rem;
  margin: 0 0.15rem 0 0.35rem;
  padding: 0.32rem 0.55rem;
  border: 1px solid rgba(255,255,255,0.16);
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.35);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.7rem;
  letter-spacing: 0.08em;
  flex: 0 0 auto;
  position: relative;
  z-index: 1;
}
.vv-lang-switch a {
  color: rgba(255,255,255,0.68) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.68) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  padding: 0.12rem 0.28rem !important;
  background: transparent !important;
  border-radius: 4px !important;
}
.vv-lang-switch a:hover,
.vv-lang-switch a:focus {
  color: #00E5FF !important;
  -webkit-text-fill-color: #00E5FF !important;
  background: transparent !important;
}
.vv-lang-switch a.is-active {
  color: #00E5FF !important;
  -webkit-text-fill-color: #00E5FF !important;
}
.vv-lang-switch span { color: rgba(255,255,255,0.28); }
.vv-lang-switch a::after { content: none !important; display: none !important; }
.vv-mob-langs {
  display: flex;
  gap: 0.55rem;
  margin: 0 0 0.75rem;
  padding: 0.35rem;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 12px;
}
.vv-mob-langs a {
  flex: 1;
  text-align: center;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
}
.vv-mob-langs a.is-active {
  color: #00E5FF !important;
  -webkit-text-fill-color: #00E5FF !important;
}
.vv-logo-mark { display: block; color: #fff; }
.vv-logo-v {
  color: #00E5FF !important;
  animation: none;
}
.vv-logo-sub {
  font-family: 'Manrope', sans-serif;
  font-size: 0.55rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: rgba(255,255,255,0.78);
  margin-top: 5px;
}
.vv-logo:hover { color: #fff !important; }
.vv-logo:hover .vv-logo-v { color: #2F6BFF !important; }
.vv-nav-links {
  display: flex; flex-wrap: nowrap; align-items: center; justify-content: center;
  gap: 0.25rem 1.35rem; position: relative; z-index: 1; flex: 1 1 auto;
  max-width: none;
  min-width: 0;
}
.vv-nav-links a {
  color: rgba(255,255,255,0.88) !important; text-decoration: none;
  font-family: 'Manrope', sans-serif;
  font-size: 0.95rem; font-weight: 300; letter-spacing: 0.03em;
  transition: color 0.22s ease, background 0.22s ease, box-shadow 0.22s ease,
              opacity 0.22s ease, transform 0.22s ease;
  white-space: nowrap;
  padding: 0.4rem 0.65rem;
  position: relative;
  border-radius: 8px;
  background: transparent;
}
.vv-nav-links a:not(:last-child)::after {
  content: '|';
  position: absolute; right: -0.55rem; top: 50%; transform: translateY(-50%);
  color: rgba(255,255,255,0.35); font-weight: 300; pointer-events: none;
}
.vv-nav-links a:hover,
.vv-nav-links a:focus,
.vv-nav-links a:focus-visible {
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
  background: #fff !important;
  background-color: #fff !important;
  opacity: 1;
  box-shadow: 0 6px 20px rgba(255,255,255,0.18);
  outline: none;
  transform: translateY(-1px);
  text-shadow: none;
}
.vv-nav-links a:hover::after,
.vv-nav-links a:focus::after {
  color: transparent;
}
.vv-mobile-menu a {
  transition: color 0.22s ease, background 0.22s ease;
  border-radius: 10px;
  padding: 0.55rem 0.75rem;
}
.vv-mobile-menu a:hover {
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
  background: #fff !important;
}
.vv-footer-col a:hover { color: #fff !important; }
.vv-ch-card:hover { background: var(--vv-card2); border-color: rgba(255,255,255,0.28); box-shadow: 0 0 0 1px rgba(255,255,255,0.12) inset; }
.vv-plan-card:hover {
  background: var(--vv-card2);
  transform: translateY(-12px);
  box-shadow: 0 22px 48px rgba(0,0,0,0.45), 0 0 28px rgba(0,229,255,0.14);
}
.vv-feat-card:hover { background: var(--vv-card2); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.22); }
.vv-device-card:hover {
  background: var(--vv-card2); border-color: rgba(255,255,255,0.35);
  transform: translateY(-3px); box-shadow: 0 8px 24px rgba(255,255,255,0.08);
}
.vv-screen-btn:hover:not(.active) {
  border-color: #fff; color: #fff;
}
.vv-plan-btn-outline:hover {
  background: #fff !important;
  border-color: #fff !important;
  color: #0a0a12 !important;
}
.vv-faq-q:hover {
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
  background: #fff !important;
  background-color: #fff !important;
}
.vv-faq-q:hover .vv-faq-icon { color: #0a0a12 !important; }
.vv-viewall:hover { border-color: #fff; color: #fff !important; }
.tc-v2-root a:hover, .vv-wrap a:hover { color: #fff; }
.tc-v2-root .vv-nav-links a:hover,
.vv-wrap .vv-nav-links a:hover,
.tc-v2-root .vv-mobile-menu a:hover,
.vv-wrap .vv-mobile-menu a:hover {
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
}
.tc-v2-root a.vv-plan-btn-red,
.tc-v2-root a.vv-plan-btn-gold,
.vv-wrap a.vv-plan-btn-red,
.vv-wrap a.vv-plan-btn-gold,
.vv-nav-order, .vv-mob-order {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.tc-v2-root a.vv-btn-red:hover,
.tc-v2-root a.vv-plan-btn-red:hover,
.tc-v2-root a.vv-dl-primary:hover,
.vv-wrap a.vv-btn-red:hover,
.vv-wrap a.vv-btn-outline:hover,
.vv-wrap a.vv-plan-btn-outline:hover,
.vv-wrap a.vv-nav-trial:hover { color: #0a0a12 !important; -webkit-text-fill-color: #0a0a12 !important; }
.tc-v2-root a.vv-nav-order:hover,
.tc-v2-root a.vv-plan-btn-gold:hover,
.vv-wrap a.vv-nav-order:hover,
.vv-wrap a.vv-plan-btn-gold:hover {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.vv-nav-ctas {
  display: flex; align-items: center; gap: 0.7rem; flex: 0 0 auto;
}
.vv-nav-order {
  color: #fff !important;
  border: 0 !important;
  background: linear-gradient(135deg, #00E5FF 0%, #2F6BFF 55%, #7c5cff 100%) !important;
  padding: 0.65rem 1.35rem; border-radius: 999px;
  font-weight: 800 !important; letter-spacing: 0.04em; font-size: 0.8rem !important;
  text-decoration: none !important;
  box-shadow: 0 6px 22px rgba(0,229,255,0.28);
  transition: transform 0.2s, background 0.25s, color 0.25s, box-shadow 0.2s !important;
}
.vv-nav-order:hover {
  background: linear-gradient(135deg, #7c5cff 0%, #2F6BFF 45%, #00E5FF 100%) !important;
  color: #fff !important;
  text-shadow: none !important;
  transform: translateY(-1px);
  box-shadow: 0 8px 28px rgba(124,92,255,0.4) !important;
}
.vv-nav-trial {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 1.5px solid #fff !important;
  padding: 0.65rem 1.35rem; border-radius: 999px;
  font-weight: 800 !important; letter-spacing: 0.04em; font-size: 0.8rem !important;
  text-decoration: none !important;
  transition: transform 0.2s, background 0.25s, color 0.25s, box-shadow 0.2s, border-color 0.2s !important;
  box-shadow: none !important;
}
.vv-nav-trial:hover,
.vv-nav-trial:focus-visible {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
  border-color: #fff !important;
  transform: translateY(-1px) !important;
  text-shadow: none !important;
  box-shadow: 0 8px 28px rgba(255,255,255,0.22) !important;
}

/* Hamburger */
.vv-hamburger {
  display: none; flex-direction: column; gap: 5px;
  background: none; border: none; cursor: pointer; padding: 4px;
}
.vv-hamburger span {
  display: block; width: 22px; height: 2px;
  background: var(--vv-text); border-radius: 2px;
  transition: transform 0.3s, opacity 0.3s;
}
.vv-hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.vv-hamburger.open span:nth-child(2) { opacity: 0; }
.vv-hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Mobile Menu */
.vv-mobile-menu {
  display: none; position: fixed; inset: 0;
  background: rgba(9,9,11,0.98); z-index: 2147482600;
  flex-direction: column; align-items: center; justify-content: center;
  gap: 2rem; backdrop-filter: blur(20px);
}
.vv-mobile-menu.open { display: flex; }
.vv-menu-close {
  position: absolute; top: 1.5rem; right: 1.5rem;
  background: none; border: none; color: var(--vv-muted2);
  font-size: 1.5rem; cursor: pointer;
}
.vv-mobile-menu a {
  font-family: 'Bebas Neue', sans-serif; font-size: 2.2rem;
  letter-spacing: 0.06em; color: var(--vv-text); text-decoration: none;
  transition: color 0.2s;
}
.vv-mobile-menu a:hover { color: #fff !important; }
.vv-mob-cta {
  padding: 0.8rem 2.5rem; border-radius: 6px;
  font-size: 1rem !important; font-family: 'Manrope', sans-serif !important;
  font-weight: 700 !important; letter-spacing: 0.1em !important;
}
.vv-mob-order {
  background: linear-gradient(135deg, #00E5FF 0%, #2F6BFF 55%, #7c5cff 100%) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 999px;
}
.vv-mob-order:hover {
  background: linear-gradient(135deg, #7c5cff 0%, #2F6BFF 45%, #00E5FF 100%) !important;
  color: #fff !important;
}
.vv-mob-trial {
  background: transparent !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 1.5px solid #fff !important;
  border-radius: 999px;
}
.vv-mob-trial:hover {
  background: #fff !important;
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
  border-color: #fff !important;
}

@media (max-width: 1100px) {
  .vv-nav-shell { padding: 1.75rem 0 1rem; }
  .vv-nav { padding: 16px 18px; min-height: 68px; max-width: min(1440px, 94vw); gap: 1rem; }
  .vv-nav-links { gap: 0.35rem 1.75rem !important; }
  .vv-nav-links a { font-size: 1rem; font-weight: 300; padding: 0.3rem 0.25rem; }
  .vv-nav-order, .vv-nav-trial { padding: 0.9rem 1.5rem !important; font-size: 0.88rem !important; }
  .vv-logo { min-width: 0; font-size: 1.7rem; }
  .vv-logo-sub { font-size: 0.58rem; }
}
@media (max-width: 900px) {
  .vv-nav-shell { padding: 0.55rem 10px 0.45rem !important; }
  .vv-nav { padding: 14px 14px; border-radius: 14px; min-height: 58px; max-width: min(1440px, 94vw); gap: 0.55rem; }
  .vv-nav-links, .vv-nav-ctas { display: none; }
  .vv-lang-switch {
    display: inline-flex !important;
    margin-left: auto !important;
    margin-right: 0.1rem !important;
    padding: 0.28rem 0.48rem !important;
    font-size: 0.62rem !important;
    gap: 0.16rem !important;
  }
  .vv-lang-switch a { padding: 0.1rem 0.22rem !important; }
  .vv-logo { font-size: 1.45rem; min-width: 0; }
  .vv-hamburger { display: flex; flex: 0 0 auto; }
}


.vv-hero-section {
  position: relative !important;
  z-index: 3 !important;
  /* Fill viewport under sticky ticker+nav; center content on desktop (1920×1080) */
  min-height: calc(100vh - 260px);
  min-height: calc(100dvh - 260px);
  display: flex;
  align-items: center;
  padding: 1.25rem 0.6vw 3.25rem;
  overflow-x: clip;
  overflow-y: visible;
  background: transparent;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
/* Soft merge — hero → pure black (MUST stay under mockup/Lottie/tiles/scroll) */
.vv-hero-section::after {
  content: '';
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: min(460px, 55vh);
  z-index: 0 !important;
  pointer-events: none;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.28) 16%,
    rgba(0, 0, 0, 0.62) 38%,
    rgba(0, 0, 0, 0.88) 58%,
    rgba(0, 0, 0, 0.98) 78%,
    #000 100%
  );
}
.vv-hero-inner,
.vv-hero-text,
.vv-hero-mockup {
  position: relative !important;
  z-index: 2 !important;
}
/* Soft faded black band under features row (trust + player) — visible like scroll plate, behind text */
.vv-hero-inner::after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: -1% !important;
  right: -1% !important;
  bottom: 3.25rem !important;
  height: min(220px, 32%) !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: radial-gradient(
    ellipse 98% 85% at 50% 55%,
    rgba(0, 0, 0, 0.94) 0%,
    rgba(0, 0, 0, 0.78) 38%,
    rgba(0, 0, 0, 0.42) 62%,
    rgba(0, 0, 0, 0.12) 80%,
    transparent 92%
  ) !important;
}
.vv-hero-stage {
  position: relative !important;
  z-index: 4 !important;
}
.vv-hero-lottie {
  position: relative !important;
  z-index: 5 !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: flex !important;
}
.vv-float-badge.vv-float-uptime {
  position: absolute !important;
  top: -32px !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  transform: none !important;
  -webkit-transform: none !important;
  z-index: 12 !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  pointer-events: none !important;
}
.vv-app-float-grid {
  position: absolute !important;
  inset: 0 !important;
  z-index: 5 !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
}
.vv-app-float-grid .vv-app-cell {
  opacity: 1 !important;
  visibility: visible !important;
}
.vv-scroll-cue {
  position: absolute;
  left: 50%;
  bottom: 0.85rem;
  transform: translateX(-50%);
  z-index: 20 !important;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  gap: 0.15rem;
  text-decoration: none !important;
  color: rgba(255,255,255,0.78) !important;
  pointer-events: auto;
  transition: opacity 0.2s, transform 0.2s;
  isolation: isolate;
  opacity: 1 !important;
  visibility: visible !important;
}
/* Inline cue (under features) — desktop hidden; mobile shows */
.vv-scroll-cue--inline { display: none !important; }
.vv-scroll-cue--dock { display: flex !important; }
.vv-hero-inner > .vv-scroll-cue--inline,
.vv-hero-inner > .vv-scroll-cue--inline * {
  pointer-events: auto !important;
}
/* Soft black under Scroll GIF */
.vv-scroll-cue::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 55%;
  width: 150px;
  height: 150px;
  transform: translate(-50%, -50%);
  z-index: 0;
  pointer-events: none;
  border-radius: 50%;
  background: radial-gradient(
    circle at 50% 50%,
    rgba(0, 0, 0, 0.95) 0%,
    rgba(0, 0, 0, 0.75) 48%,
    rgba(0, 0, 0, 0.35) 72%,
    transparent 88%
  );
}
/* Black overlay — bottom up to mid arrow / “Scroll” (user mark) */
.vv-scroll-cue::after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 58% !important;
  z-index: 6 !important;
  pointer-events: none !important;
  background: linear-gradient(
    to top,
    #000 0%,
    #000 38%,
    rgba(0, 0, 0, 0.9) 62%,
    rgba(0, 0, 0, 0.45) 82%,
    rgba(0, 0, 0, 0.12) 94%,
    transparent 100%
  ) !important;
}
.vv-scroll-cue > * {
  position: relative;
  z-index: 2;
}
.vv-scroll-cue:hover {
  color: #00E5FF !important;
  opacity: 1;
  transform: translateX(-50%) translateY(2px);
}
.vv-scroll-cue-label { display: none !important; }
.vv-scroll-cue dotlottie-wc {
  display: block !important;
  width: 140px !important;
  height: 140px !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: relative !important;
  z-index: 3 !important;
}
/* Site-wide floor handles depth — hide hero duplicate (was hard-cutting the bg) */
.vv-hero-section .vv-space-depth {
  display: none !important;
}
/* ---- BACKGROUND ---- */
.vv-hero-bg {
  position: absolute; inset: 0;
  overflow: hidden !important;
  max-width: 100%;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(
    to bottom,
    #000 0%,
    #000 52%,
    rgba(0, 0, 0, 0.75) 72%,
    rgba(0, 0, 0, 0.35) 88%,
    transparent 100%
  );
  mask-image: linear-gradient(
    to bottom,
    #000 0%,
    #000 52%,
    rgba(0, 0, 0, 0.75) 72%,
    rgba(0, 0, 0, 0.35) 88%,
    transparent 100%
  );
}

/* Deep space nebula wash — barely tinted so bg stays near black */
.vv-nebula {
  position: absolute; inset: -15%;
  background:
    radial-gradient(ellipse 55% 40% at 20% 25%, rgba(0,120,180,0.06), transparent 60%),
    radial-gradient(ellipse 50% 45% at 80% 15%, rgba(90,40,180,0.05), transparent 58%),
    radial-gradient(ellipse 70% 50% at 50% 85%, rgba(0,60,120,0.08), transparent 55%),
    radial-gradient(circle at 60% 40%, rgba(0,229,255,0.015), transparent 40%);
  filter: blur(8px);
  opacity: 0.45;
  animation: vvNebulaDrift 18s ease-in-out infinite alternate;
}
@keyframes vvNebulaDrift {
  from { transform: scale(1) translate(0,0); opacity: 0.35; }
  to { transform: scale(1.08) translate(-2%, 1%); opacity: 0.5; }
}

/* Deep-space starfield */
.vv-stars {
  position: absolute; inset: -10%;
  pointer-events: none;
}
.vv-stars-a {
  background-image:
    radial-gradient(1.2px 1.2px at 5% 10%, #fff, transparent),
    radial-gradient(1px 1px at 12% 35%, rgba(0,229,255,.9), transparent),
    radial-gradient(1.5px 1.5px at 22% 18%, #fff, transparent),
    radial-gradient(1px 1px at 31% 62%, rgba(200,180,255,.85), transparent),
    radial-gradient(1px 1px at 40% 8%, #fff, transparent),
    radial-gradient(1.8px 1.8px at 49% 44%, rgba(0,229,255,.75), transparent),
    radial-gradient(1px 1px at 57% 72%, #fff, transparent),
    radial-gradient(1px 1px at 66% 25%, rgba(255,255,255,.7), transparent),
    radial-gradient(1.4px 1.4px at 73% 58%, rgba(140,100,255,.8), transparent),
    radial-gradient(1px 1px at 81% 12%, #fff, transparent),
    radial-gradient(1px 1px at 88% 48%, rgba(0,229,255,.7), transparent),
    radial-gradient(1.5px 1.5px at 94% 78%, #fff, transparent),
    radial-gradient(1px 1px at 8% 88%, rgba(255,255,255,.55), transparent),
    radial-gradient(1px 1px at 28% 92%, rgba(0,229,255,.6), transparent),
    radial-gradient(1.2px 1.2px at 52% 96%, #fff, transparent),
    radial-gradient(1px 1px at 76% 90%, rgba(180,160,255,.65), transparent);
  animation: vvStarDrift 48s linear infinite;
  opacity: 0.9;
}
.vv-stars-b {
  background-image:
    radial-gradient(1px 1px at 15% 22%, rgba(255,255,255,.5), transparent),
    radial-gradient(1px 1px at 25% 55%, rgba(0,229,255,.45), transparent),
    radial-gradient(1px 1px at 38% 33%, rgba(255,255,255,.4), transparent),
    radial-gradient(1px 1px at 55% 15%, rgba(180,160,255,.5), transparent),
    radial-gradient(1px 1px at 70% 40%, rgba(255,255,255,.45), transparent),
    radial-gradient(1px 1px at 85% 65%, rgba(0,229,255,.4), transparent),
    radial-gradient(1px 1px at 45% 70%, rgba(255,255,255,.35), transparent),
    radial-gradient(1px 1px at 62% 85%, rgba(140,100,255,.4), transparent);
  animation: vvTwinkle 5s ease-in-out infinite alternate;
  opacity: 0.75;
}
@keyframes vvStarDrift {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(-2%, 1.5%, 0); }
}
@keyframes vvTwinkle {
  from { opacity: 0.45; }
  to { opacity: 0.9; }
}

/* Hero floor — stronger, same language as site-wide fx */
.vv-space-depth {
  position: absolute;
  left: -35%; right: -35%;
  bottom: -42%;
  height: 85%;
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, rgba(0,229,255,0.24), transparent 65%),
    radial-gradient(ellipse 40% 30% at 30% 20%, rgba(120,80,255,0.14), transparent 70%),
    linear-gradient(rgba(0,229,255,0.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,229,255,0.12) 1px, transparent 1px);
  background-size: auto, auto, 52px 52px, 52px 52px;
  transform: perspective(420px) rotateX(62deg) scale(1.15);
  transform-origin: center top;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.95), transparent 90%);
  -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,.95), transparent 90%);
  opacity: 0.9;
  animation: vvDepthPulse 10s ease-in-out infinite alternate;
}
@keyframes vvDepthPulse {
  from { opacity: 0.72; filter: brightness(0.92); }
  to { opacity: 0.98; filter: brightness(1.12); }
}
/* Flat hero grid removed — it fought the perspective floor */

.vv-orb {
  position: absolute; border-radius: 50%;
  filter: blur(80px); opacity: 0.18;
}
.vv-orb1 {
  width: 520px; height: 520px;
  background: radial-gradient(circle, rgba(0,229,255,0.1) 0%, transparent 70%);
  top: -10%; left: -10%;
  animation: vvOrbDrift1 12s ease-in-out infinite;
}
.vv-orb2 {
  width: 420px; height: 420px;
  background: radial-gradient(circle, rgba(140,80,255,0.08) 0%, transparent 70%);
  bottom: -10%; right: 15%;
  animation: vvOrbDrift2 15s ease-in-out infinite;
}
.vv-orb3 {
  width: 320px; height: 320px;
  background: radial-gradient(circle, rgba(47,107,255,0.07) 0%, transparent 70%);
  top: 35%; right: -5%;
  animation: vvOrbDrift3 10s ease-in-out infinite;
}
@keyframes vvOrbDrift1 { 0%,100%{transform:translate(0,0)} 50%{transform:translate(40px,30px)} }
@keyframes vvOrbDrift2 { 0%,100%{transform:translate(0,0)} 50%{transform:translate(-30px,-20px)} }
@keyframes vvOrbDrift3 { 0%,100%{transform:translate(0,0)} 50%{transform:translate(20px,-40px)} }

.vv-grid-lines { display: none !important; }

/* ---- LAYOUT — spread left copy + right gif toward outer edges ---- */
.vv-hero-inner {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
  align-items: center; gap: clamp(1.25rem, 3.5vw, 4rem);
  max-width: min(1760px, 98vw); margin: 0 auto; width: 100%;
  position: relative; z-index: 2;
  box-sizing: border-box;
  justify-content: space-between;
}
.vv-hero-screen1 {
  display: flex;
  flex-direction: column;
  min-width: 0;
  width: 100%;
}

/* ---- TEXT ---- */
.vv-hero-text {
  display: flex; flex-direction: column; gap: 0.95rem;
  width: 100%; max-width: min(640px, 100%); min-width: 0;
  justify-self: start;
}
.vv-hero-text .vv-eyebrow,
.vv-hero-text .vv-hero-h1,
.vv-hero-text .vv-hero-sub,
.vv-hero-text .vv-hero-btns { max-width: 100%; }
.vv-hero-section .vv-eyebrow { font-size: 0.78rem; letter-spacing: 0.14em; margin-bottom: 0.4rem; }

.vv-hero-h1 {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(2.7rem, 4.55vw, 4.45rem);
  font-weight: 400;
  line-height: 0.9; letter-spacing: 0.04em; color: #fff;
  text-shadow: 0 0 28px rgba(0,229,255,0.12);
  animation: vvFadeUp 0.8s ease both;
  max-width: 100%;
  width: 100%;
  text-transform: uppercase;
}
.vv-h1-gradient,
.vv-h1-grad {
  background: linear-gradient(90deg, #00E5FF 0%, #7dd3fc 35%, #a78bfa 70%, #8b5cf6 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
  font-weight: 400;
}
.vv-h1-sep {
  display: inline-block;
  width: min(168px, 32vw);
  height: 2px;
  margin: 0 0 0.22em 0.65rem;
  vertical-align: middle;
  border-radius: 999px;
  background: linear-gradient(90deg, #00E5FF 0%, #7dd3fc 40%, #a78bfa 75%, #8b5cf6 100%);
  box-shadow: 0 0 14px rgba(0, 229, 255, 0.5), 0 0 22px rgba(167, 139, 250, 0.28);
}
.vv-h1-cyan {
  color: #00E5FF !important;
  -webkit-text-fill-color: #00E5FF !important;
}
/* Third line — flush under playlist line (one title block) */
.vv-h1-soft {
  display: block;
  margin: -0.22em 0 0;
  padding: 0;
  font-family: 'Manrope', sans-serif !important;
  font-weight: 300 !important;
  font-size: 0.55em !important;
  letter-spacing: 0.14em !important;
  line-height: 1 !important;
  text-transform: uppercase;
  color: rgba(255,255,255,0.92) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.92) !important;
  text-shadow: none !important;
}
.vv-h1-soft .vv-h1-cyan {
  font-weight: 300 !important;
  color: #00E5FF !important;
  -webkit-text-fill-color: #00E5FF !important;
}
/* Second line stays same size / weight as title — only “Tivimate” is cyan */
.vv-h1-regular {
  font: inherit !important;
  font-size: 1em !important;
  font-weight: inherit !important;
  letter-spacing: inherit !important;
  text-transform: inherit !important;
  color: inherit !important;
  display: inline;
  margin: 0;
  line-height: inherit;
}

.vv-hero-sub {
  font-family: 'Manrope', sans-serif;
  font-size: clamp(0.88rem, 1.05vw, 1rem);
  color: #d8dce8 !important;
  -webkit-text-fill-color: #d8dce8 !important;
  line-height: 1.55;
  max-width: 36rem;
  font-weight: 400;
  letter-spacing: 0.005em;
  opacity: 0.72 !important;
  margin: 0.25rem 0 0.2rem;
  text-wrap: pretty;
  animation: vvFadeUp 0.9s 0.1s ease both;
}
.vv-hero-sub strong {
  color: rgba(235, 236, 242, 0.9);
  font-weight: 300;
}

.vv-hero-btns {
  display: flex; gap: 1.1rem; flex-wrap: wrap; align-items: center;
  animation: vvFadeUp 1s 0.2s ease both;
  margin-top: 1.25rem;
  margin-bottom: 0.35rem;
}
.vv-hero-btns .vv-btn-red {
  margin-right: 0.45rem;
}
/* Default / medium: compact CTAs */
.vv-hero-section .vv-btn {
  padding: 0.55rem 1.15rem !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  border-radius: 6px !important;
  line-height: 1.2 !important;
  box-shadow: none !important;
  min-height: 0 !important;
}
.vv-hero-section .vv-btn-red {
  box-shadow: 0 4px 16px rgba(0,184,230,0.28) !important;
}
/* Desktop — modest CTAs (not oversized) */
@media (min-width: 1025px) {
  .vv-hero-btns { gap: 1.35rem; }
  .vv-hero-btns .vv-btn-red { margin-right: 0.55rem; }
  .vv-hero-section .vv-btn {
    padding: 0.85rem 1.85rem !important;
    font-size: 0.88rem !important;
    letter-spacing: 0.09em !important;
    border-radius: 8px !important;
    min-height: 48px !important;
  }
  .vv-hero-section .vv-btn-red {
    box-shadow: 0 6px 22px rgba(0,184,230,0.35) !important;
  }
}
@media (min-width: 901px) and (max-width: 1024px) {
  .vv-hero-section .vv-btn {
    padding: 0.62rem 1.35rem !important;
    font-size: 0.78rem !important;
    min-height: 0 !important;
  }
}
.vv-hero-section .vv-btn-outline {
  opacity: 1;
  border: none !important;
  box-shadow: 0 0 0 0.3px #fff !important;
  color: #fff !important;
}
.vv-hero-section .vv-btn-outline:hover {
  opacity: 1;
  background: #fff !important;
  color: #0a0a12 !important;
  border: none !important;
  box-shadow: 0 0 0 0.3px #fff !important;
}
.vv-hero-how {
  position: relative;
  align-self: center;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: #fff !important;
  font-size: 1.02rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-decoration: none !important;
  border-bottom: none !important;
  padding: 0.2rem 0.1rem 0.35rem;
  opacity: 1 !important;
  text-shadow: none;
  transition:
    color 0.28s ease,
    transform 0.28s ease,
    text-shadow 0.28s ease;
}
.vv-hero-how::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1.5px;
  background: linear-gradient(90deg, #00E5FF, #7c5cff);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1);
  border-radius: 2px;
  opacity: 0.95;
}
.vv-hero-how-arrow {
  display: inline-block;
  transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1);
}
.vv-hero-how:hover {
  color: #00E5FF !important;
  opacity: 1 !important;
  transform: translateX(4px);
  text-shadow: 0 0 18px rgba(0,229,255,0.45);
}
.vv-hero-how:hover::after {
  transform: scaleX(1);
}
.vv-hero-how:hover .vv-hero-how-arrow {
  transform: translateX(6px);
}
.vv-hero-how:active {
  transform: translateX(2px);
}

/* Trust row — 5 stats left-aligned group, text centered in each item */
.vv-hero-trust {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 0.35rem 1.35rem;
  width: 100%;
  max-width: 100%;
  margin-top: 1.75rem;
  margin-left: 0;
  margin-right: auto;
  padding: 1.15rem 0.85rem 0.9rem;
  border-top: 1px solid rgba(255,255,255,0.1);
  animation: vvFadeUp 1s 0.3s ease both;
  overflow: visible;
  box-sizing: border-box;
  position: relative;
  isolation: isolate;
  z-index: 6;
  border-radius: 12px;
  background: transparent;
  box-shadow: none;
}
/* Soft plate under trust — disabled; .vv-soft-shade handles it */
.vv-hero-trust::before {
  content: none !important;
  display: none !important;
}
/* Soft black overlay — disabled; .vv-soft-shade handles it */
.vv-hero-trust::after {
  content: none !important;
  display: none !important;
}
.vv-hero-trust::-webkit-scrollbar { display: none; }
.vv-trust-item {
  display: flex; flex-direction: column; gap: 0.25rem; align-items: center;
  font-size: 0.78rem; color: rgba(210, 216, 228, 0.95); font-weight: 400;
  min-width: 0;
  padding: 0.1rem 0.35rem;
  position: relative;
  z-index: 5;
  flex: 0 0 auto;
  letter-spacing: 0.02em;
  white-space: normal;
  text-align: center;
}
.vv-trust-item:not(:first-child) {
  padding-left: 1.15rem;
  margin-left: 0;
}
.vv-trust-item:not(:first-child)::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.2rem;
  bottom: 0.15rem;
  width: 1px;
  background: linear-gradient(
    180deg,
    transparent 0%,
    #00E5FF 18%,
    #7dd3fc 45%,
    #a78bfa 72%,
    transparent 100%
  );
  opacity: 0.9;
  box-shadow: 0 0 10px rgba(0,229,255,0.35);
  pointer-events: none;
}
.vv-trust-num {
  font-family: 'Bebas Neue', sans-serif; font-size: clamp(1.95rem, 2.55vw, 2.7rem);
  color: var(--vv-text); line-height: 0.95;
  background: linear-gradient(135deg, #00E5FF, #a78bfa);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
  white-space: nowrap;
  position: relative;
  z-index: 6;
}

/* ---- MOCKUP ---- */
.vv-hero-mockup {
  position: relative; display: flex;
  flex-direction: column;
  justify-content: flex-start; align-items: center;
  width: 100%;
  height: auto;
  min-height: 0;
  align-self: center;
  justify-self: end;
  animation: vvFadeUp 1s 0.4s ease both;
  isolation: isolate;
  gap: 0;
  padding: 0.5rem 0 0;
  touch-action: pan-y;
  /* full right-column hit area for mouse-drag */
  cursor: default;
}
/* Stage = Lottie + orbit tiles only (stats sits below in normal flow) */
.vv-hero-stage {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: min(460px, 90vw);
  padding-bottom: 1.25rem;
  box-sizing: content-box;
  /* Clip bottom spill onto stats; keep top/side tiles visible */
  overflow: visible;
  clip-path: inset(-72px -120px 0 -120px);
}
/* Invisible full-column hit layer — drag works anywhere on the right side */
.vv-hero-mockup::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 20;
  pointer-events: auto;
  background: transparent;
}
.vv-hero-mockup .vv-app-float-grid,
.vv-hero-mockup .vv-app-float-grid .vv-app-cell,
.vv-hero-mockup .vv-float-badge,
.vv-hero-mockup .vv-app-window,
.vv-hero-mockup .vv-hero-lottie {
  pointer-events: none !important;
}
.vv-hero-mockup.is-hover-drag .vv-hero-lottie {
  filter: drop-shadow(0 16px 40px rgba(0,229,255,0.18));
}
.vv-hero-lottie {
  position: relative;
  z-index: 6;
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(460px, 92%);
  margin: 0 auto 0;
  pointer-events: none;
  filter: drop-shadow(0 12px 32px rgba(0,229,255,0.12));
  will-change: transform;
  transform: translate3d(0, 0, 0);
  transition: filter 0.35s ease;
}
.vv-hero-lottie dotlottie-wc {
  display: block;
  width: 460px !important;
  height: 460px !important;
  max-width: min(460px, 90vw);
  max-height: min(460px, 90vw);
}
/* Cyan → purple radial glow behind the glass player */
.vv-hero-mockup::before {
  content: '';
  position: absolute;
  width: 135%;
  height: 135%;
  left: 50%; top: 50%;
  transform: translate(-50%, -50%);
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(
    circle at 50% 45%,
    rgba(0,229,255,0.18) 0%,
    rgba(120,80,255,0.12) 32%,
    rgba(47,107,255,0.06) 52%,
    transparent 72%
  );
  filter: blur(28px);
  opacity: 0.45;
}

/* Floating badges */
.vv-float-badge {
  position: absolute; z-index: 10;
  background: rgba(12,12,18,0.45);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 10px; padding: 0.6rem 1rem;
  backdrop-filter: blur(16px) saturate(1.3);
  -webkit-backdrop-filter: blur(16px) saturate(1.3);
  box-shadow: 0 8px 32px rgba(0,0,0,0.35), 0 0 24px rgba(0,184,230,0.12);
  animation: vvBadgeFloat 4s ease-in-out infinite;
}
.vv-float-8k { display: none !important; }
.vv-float-uptime {
  top: -32px !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  transform: none !important;
  -webkit-transform: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 12 !important;
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  animation: none; /* float lives on inner so drag JS can't kill it */
  position: absolute !important;
  isolation: isolate;
  opacity: 1 !important;
  margin: 0 !important;
}
.vv-float-uptime-inner {
  position: relative;
  z-index: 2;
  display: flex; align-items: center; justify-content: center; gap: 0.85rem;
  font-family: 'JetBrains Mono', monospace; font-size: 0.88rem;
  font-weight: 700;
  color: #e8fbff; letter-spacing: 0.1em;
  text-transform: uppercase;
  white-space: nowrap;
  padding: 0;
  border-radius: 0;
  background: transparent !important;
  border: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  text-shadow: 0 0 10px rgba(0, 229, 255, 0.35);
  animation: vvFloatUptime 4.6s ease-in-out infinite;
  will-change: transform, opacity, filter;
  overflow: visible;
  margin: 0 auto !important;
}
/* No rectangle / scanline plate — icon + text only */
.vv-float-uptime-inner::before {
  content: none !important;
  display: none !important;
}
.vv-float-uptime .vv-live { display: none !important; }
.vv-live-gif {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 56px;
  height: 56px;
  margin: 0;
  filter: drop-shadow(0 0 12px rgba(0, 229, 255, 0.7));
}
.vv-live-gif dotlottie-wc {
  display: block;
  width: 56px !important;
  height: 56px !important;
}
.vv-stream-bars { display: none !important; }
.vv-badge-label {
  font-family: 'JetBrains Mono', monospace; font-size: 0.5rem;
  color: var(--vv-muted2); letter-spacing: 0.15em; text-transform: uppercase;
}
.vv-badge-value {
  font-family: 'Bebas Neue', sans-serif; font-size: 2rem; line-height: 1;
  background: linear-gradient(135deg, var(--vv-red), var(--vv-orange));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
}
@keyframes vvBadgeFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} }
@keyframes vvBadgeFloatCenter {
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(-8px)}
}
@keyframes vvFloatUptime {
  0%, 100% { transform: translateY(0) rotate(-0.5deg); }
  35% { transform: translateY(-12px) rotate(0.8deg); }
  70% { transform: translateY(-5px) rotate(-0.6deg); }
}
@keyframes vvHoloFlicker {
  0%, 100% { opacity: 1; filter: brightness(1); }
  42% { opacity: 0.92; filter: brightness(1.08); }
  48% { opacity: 1; filter: brightness(1.15); }
  52% { opacity: 0.88; filter: brightness(0.95); }
  58% { opacity: 1; filter: brightness(1.05); }
}

/* Category tiles — orbit around Lottie only (not over stats) */
.vv-app-float-grid {
  position: absolute;
  inset: 0;
  z-index: 10;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  pointer-events: none;
  /* no transform here — keeps cell z-index competing with Lottie/stats */
}
.vv-app-float-grid .vv-app-cell {
  position: absolute;
  width: 128px;
  background: rgba(14, 16, 28, 0.55);
  border-radius: 14px;
  padding: 1.05rem 0.75rem;
  display: flex; flex-direction: column; align-items: center;
  gap: 0.5rem; cursor: default;
  transition: background 0.2s, border-color 0.2s, box-shadow 0.25s, opacity 0.25s;
  border: 1px solid rgba(255,255,255,0.14);
  backdrop-filter: blur(14px) saturate(1.3);
  -webkit-backdrop-filter: blur(14px) saturate(1.3);
  box-shadow: 0 10px 28px rgba(0,0,0,0.35), 0 0 18px rgba(0,229,255,0.1);
  pointer-events: auto;
}
/* Behind the Lottie — tucked under the gif */
.vv-app-float-grid .vv-app-cell.vv-cell-behind {
  z-index: 4;
  opacity: 0.78;
  filter: saturate(0.85) brightness(0.92);
  backdrop-filter: blur(8px) saturate(1.1);
  -webkit-backdrop-filter: blur(8px) saturate(1.1);
  box-shadow: 0 6px 18px rgba(0,0,0,0.28);
}
/* Above the Lottie — frosted glass */
.vv-app-float-grid .vv-app-cell.vv-cell-front {
  z-index: 12;
  opacity: 1;
  background: rgba(10, 12, 22, 0.38);
  border: 1px solid rgba(255,255,255,0.18);
  backdrop-filter: blur(22px) saturate(1.45);
  -webkit-backdrop-filter: blur(22px) saturate(1.45);
  box-shadow:
    0 14px 36px rgba(0,0,0,0.42),
    0 0 24px rgba(0,229,255,0.14),
    inset 0 1px 0 rgba(255,255,255,0.12);
}
/* Circular orbit around the Lottie (6 points) — tight center cluster */
.vv-app-float-grid .vv-app-cell:nth-child(1) {
  /* Sports — upper-left arc */
  top: calc(50% - 34%); left: calc(50% - 34%); right: auto; bottom: auto;
  animation: vvFloatA 5.2s ease-in-out infinite;
}
.vv-app-float-grid .vv-app-cell:nth-child(2) {
  /* Movies — upper-right arc */
  top: calc(50% - 36%); left: calc(50% + 16%); right: auto; bottom: auto;
  animation: vvFloatB 6.1s ease-in-out infinite 0.3s;
}
.vv-app-float-grid .vv-app-cell:nth-child(3) {
  /* News — mid-left, behind gif — nudged up toward center */
  top: calc(50% - 12%); left: calc(50% - 36%); right: auto; bottom: auto;
  animation: vvFloatC 4.8s ease-in-out infinite 0.7s;
}
.vv-app-float-grid .vv-app-cell:nth-child(4) {
  /* Music — mid-right, behind gif */
  top: calc(50% - 6%); left: calc(50% + 18%); right: auto; bottom: auto;
  animation: vvFloatA 5.6s ease-in-out infinite 1.1s;
}
.vv-app-float-grid .vv-app-cell:nth-child(5) {
  /* Football — lower-left, kept inside stage (never over stats) */
  top: calc(50% + 16%); left: calc(50% - 30%); right: auto; bottom: auto;
  animation: vvFloatB 5s ease-in-out infinite 0.5s;
}
.vv-app-float-grid .vv-app-cell:nth-child(6) {
  /* World — lower-right arc */
  top: calc(50% + 18%); left: calc(50% + 14%); right: auto; bottom: auto;
  animation: vvFloatC 6.4s ease-in-out infinite 0.9s;
}
.vv-app-float-grid .vv-app-cell.vv-cell-front:hover {
  background: rgba(0,229,255,0.16);
  border-color: rgba(0,229,255,0.45);
  box-shadow: 0 16px 40px rgba(0,0,0,0.45), 0 0 28px rgba(0,229,255,0.22);
  z-index: 15;
}
.vv-app-float-grid .vv-app-cell.vv-cell-behind:hover {
  opacity: 0.9;
  z-index: 5;
}
@keyframes vvFloatA {
  0%, 100% { transform: translate(0, 0) rotate(-1.5deg); }
  50% { transform: translate(6px, -12px) rotate(1deg); }
}
@keyframes vvFloatB {
  0%, 100% { transform: translate(0, 0) rotate(1deg); }
  50% { transform: translate(-8px, -10px) rotate(-2deg); }
}
@keyframes vvFloatC {
  0%, 100% { transform: translate(0, 0) rotate(0deg); }
  33% { transform: translate(5px, -8px) rotate(1.5deg); }
  66% { transform: translate(-4px, -14px) rotate(-1deg); }
}
.vv-cell-icon { font-size: 2rem; }
.vv-cell-name {
  font-size: 0.86rem; font-weight: 600; color: var(--vv-muted2);
  text-align: center; letter-spacing: 0.03em;
}
.vv-app-float-grid .vv-live {
  position: absolute; top: 6px; right: 6px; font-size: 0.42rem;
}
.vv-cell-sports { border-color: rgba(0,184,230,0.28); }
.vv-cell-movies .vv-cell-icon { animation: vvCellPop 3s ease-in-out infinite; }
.vv-cell-football .vv-cell-icon { animation: vvCellPop 3s 1s ease-in-out infinite; }
@keyframes vvCellPop { 0%,100%{transform:scale(1)} 50%{transform:scale(1.12)} }

/* Stats widget — wide player bar under Lottie */
.vv-app-window {
  position: relative; z-index: 6;
  width: min(720px, 100%);
  display: flex; flex-direction: column;
  background: rgba(8, 10, 18, 0.92);
  backdrop-filter: blur(18px) saturate(1.15);
  -webkit-backdrop-filter: blur(18px) saturate(1.15);
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow:
    0 24px 60px rgba(0,0,0,0.65),
    0 0 40px rgba(0,184,230,0.1),
    inset 0 1px 0 rgba(255,255,255,0.08);
  overflow: hidden;
  opacity: 1;
}
.vv-app-window-stats {
  margin-top: 1.15rem; /* clear of orbit stage */
  margin-bottom: 0.35rem;
  will-change: transform;
  transform: translate3d(0, 0, 0);
  position: relative;
  z-index: 16; /* always above any orbit tile overflow */
  isolation: isolate;
  background: rgba(8, 10, 18, 0.82) !important;
  backdrop-filter: blur(10px) saturate(1.05) !important;
  -webkit-backdrop-filter: blur(10px) saturate(1.05) !important;
  overflow: hidden !important;
  border-bottom: none !important;
  box-shadow:
    0 24px 60px rgba(0,0,0,0.55),
    inset 0 1px 0 rgba(255,255,255,0.08);
  -webkit-mask-image: linear-gradient(to top, transparent 0%, #000 22px, #000 100%) !important;
  mask-image: linear-gradient(to top, transparent 0%, #000 22px, #000 100%) !important;
}
/* Soft plate under player — disabled; .vv-soft-shade handles it */
.vv-app-window-stats::before {
  content: none !important;
  display: none !important;
}
/* Soft black overlay — disabled; .vv-soft-shade handles it */
.vv-app-window-stats::after {
  content: none !important;
  display: none !important;
}
.vv-app-window-stats > * {
  position: relative;
  z-index: 1;
}
.vv-app-bar {
  background: rgba(0, 0, 0, 0.35); padding: 0.8rem 1rem;
  display: flex; align-items: center; gap: 1rem;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  position: relative;
  z-index: 1;
}
.vv-traffic-lights { display: flex; gap: 6px; }
.vv-tl { width: 10px; height: 10px; border-radius: 50%; }
.tl-red { background: #00E5FF; }
.tl-yellow { background: #febc2e; }
.tl-green { background: #28c840; }
.vv-app-title {
  font-family: 'JetBrains Mono', monospace; font-size: 0.65rem;
  color: var(--vv-muted2); letter-spacing: 0.1em; margin-left: auto;
}

/* App stats strip — taller so it fills the mockup footer */
.vv-app-stats {
  display: flex; align-items: center; justify-content: space-between;
  gap: 0.65rem;
  background: rgba(0, 0, 0, 0.28);
  padding: 1.35rem 1.25rem 1.45rem;
  border-top: 1px solid rgba(255,255,255,0.06);
  min-height: 92px;
  box-sizing: border-box;
  position: relative;
  isolation: isolate;
  z-index: 2;
}
.vv-app-stats::before {
  content: none !important;
  display: none !important;
}
.vv-app-stat {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 0.35rem; flex: 1 1 auto; min-width: max-content;
  position: relative;
  z-index: 5;
}
.vv-app-stat strong {
  position: relative;
  z-index: 5;
  font-family: 'Bebas Neue', sans-serif; font-size: clamp(1.55rem, 2.7vw, 2.05rem);
  color: #fff; -webkit-text-fill-color: #fff;
  line-height: 1; letter-spacing: 0.02em;
  white-space: nowrap;
}
.vv-app-stat span {
  font-family: 'JetBrains Mono', monospace; font-size: 0.68rem;
  color: rgba(220,220,230,0.95); letter-spacing: 0.04em; text-transform: uppercase;
  text-align: center; max-width: none; line-height: 1.2;
  white-space: nowrap;
}
.vv-app-stat-sep {
  width: 1px; height: 52px; flex: 0 0 auto;
  background: rgba(255,255,255,0.14);
}
.vv-stat-highlight {
  background: var(--vv-red); border-radius: 10px;
  padding: 0.8rem 1rem; flex: 0 1 auto;
  min-width: 5rem;
}
.vv-stat-highlight strong {
  font-size: clamp(1.55rem, 2.7vw, 2.05rem);
  color: #fff !important;
}
.vv-stat-highlight span {
  color: rgba(255,255,255,0.92) !important;
  font-size: 0.72rem;
  font-weight: 600;
}

/* Animations */
@keyframes vvFadeUp { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }

/* Responsive */
@media (max-width: 900px) {
  /* First hero: pack content, show scroll GIF at bottom of viewport */
  .vv-hero-section {
    padding: 0.85rem 1rem 0 !important;
    min-height: 0 !important;
    align-items: flex-start;
    display: flex !important;
    flex-direction: column !important;
  }
  .vv-scroll-cue { bottom: 0.25rem; }
  .vv-scroll-cue dotlottie-wc { width: 110px !important; height: 110px !important; }
  .vv-scroll-cue--dock { display: none !important; }
  .vv-hero-mockup::after { display: none !important; }
  .vv-hero-inner {
    width: 100% !important;
    max-width: 100% !important;
    text-align: left;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    position: relative !important;
  }
  .vv-hero-inner::before {
    content: none !important;
    display: none !important;
  }
  .vv-hero-screen1 {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    width: 100% !important;
    /* min-height only — max-height+overflow:hidden fights finger scroll in first section */
    min-height: calc(var(--vv-hero-vh, 100vh) - 5.75rem) !important;
    max-height: none !important;
    overflow: visible !important;
    position: relative !important;
    padding-top: 0.25rem !important;
    padding-bottom: 6.75rem !important;
    box-sizing: border-box !important;
  }
  .vv-hero-screen1::after {
    content: none !important;
    display: none !important;
  }
  .vv-hero-text {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start;
    gap: 0.4rem;
    text-align: left;
    width: 100% !important;
    order: 1 !important;
    z-index: 5 !important;
    height: auto !important;
    flex: 0 0 auto !important;
    box-sizing: border-box !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .vv-scroll-cue--inline {
    display: flex !important;
    position: absolute !important;
    left: 50% !important;
    bottom: 0.55rem !important;
    right: auto !important;
    top: auto !important;
    transform: translate3d(-50%, 0, 0) !important;
    margin: 0 !important;
    order: unset !important;
    z-index: 25 !important;
    width: fit-content !important;
    height: auto !important;
    max-height: none !important;
    pointer-events: auto !important;
    align-self: center !important;
    isolation: isolate !important;
    overflow: visible !important;
    flex: 0 0 auto !important;
    transition: none !important;
    will-change: auto !important;
    background: transparent !important;
    color: inherit !important;
    border-radius: 0 !important;
  }
  .vv-scroll-cue--inline .vv-mesh-block--scroll {
    display: none !important;
  }
  /* Dark overlay under scroll GIF */
  .vv-scroll-cue--inline::before {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    top: 52% !important;
    width: 118px !important;
    height: 118px !important;
    transform: translate(-50%, -50%) !important;
    z-index: 0 !important;
    pointer-events: none !important;
    border-radius: 50% !important;
    background: radial-gradient(
      circle at 50% 50%,
      rgba(0, 0, 0, 0.95) 0%,
      rgba(0, 0, 0, 0.78) 42%,
      rgba(0, 0, 0, 0.4) 68%,
      transparent 88%
    ) !important;
  }
  .vv-scroll-cue--inline::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    left: -12% !important;
    right: -12% !important;
    bottom: -4% !important;
    height: 62% !important;
    z-index: 6 !important;
    pointer-events: none !important;
    background: linear-gradient(
      to top,
      #000 0%,
      rgba(0, 0, 0, 0.92) 30%,
      rgba(0, 0, 0, 0.55) 62%,
      transparent 100%
    ) !important;
  }
  .vv-scroll-cue--inline > * { position: relative !important; z-index: 2 !important; }
  .vv-scroll-cue--inline * { pointer-events: auto !important; }
  .vv-scroll-cue--inline:hover,
  .vv-scroll-cue--inline:active,
  .vv-scroll-cue--inline:focus {
    transform: translate3d(-50%, 0, 0) !important;
  }
  .vv-scroll-cue--inline dotlottie-wc {
    width: 100px !important;
    height: 100px !important;
    display: block !important;
    position: relative !important;
    z-index: 3 !important;
    transform: none !important;
    transition: none !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  .vv-hero-trust { position: relative !important; z-index: 6 !important; }
  .vv-hero-mockup {
    order: 3 !important;
    width: 100% !important;
    margin-top: 1.25rem !important;
    padding-bottom: 1.5rem !important;
  }
  .vv-hero-text .vv-eyebrow,
  .vv-hero-text .vv-hero-h1,
  .vv-hero-text .vv-hero-sub,
  .vv-hero-text .vv-hero-btns { max-width: 100%; text-align: left; }
  .vv-hero-section .vv-eyebrow {
    font-size: 0.55rem !important;
    letter-spacing: 0.1em !important;
    justify-content: flex-start !important;
  }
  .vv-hero-h1 { font-size: clamp(2.05rem, 8vw, 2.65rem) !important; line-height: 0.92 !important; text-align: left !important; }
  .vv-hero-sub { text-align: left; font-size: 0.8rem !important; line-height: 1.45 !important; }
  .vv-hero-btns {
    display: grid !important;
    grid-template-columns: max-content max-content;
    grid-template-areas:
      "pricing trial"
      "how .";
    justify-content: start;
    align-items: center;
    column-gap: 0.55rem;
    row-gap: 0.4rem;
    margin-top: 0.7rem;
  }
  .vv-hero-btns .vv-btn-red { grid-area: pricing; margin-right: 0 !important; }
  .vv-hero-btns .vv-btn-outline { grid-area: trial; }
  .vv-hero-section .vv-btn { padding: 0.68rem 1.15rem !important; font-size: 0.76rem !important; }
  .vv-hero-how {
    grid-area: how;
    width: auto;
    justify-self: start;
    text-align: left;
    font-size: 0.78rem !important;
    margin-top: 0.05rem;
  }
  .vv-hero-trust {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: space-between;
    align-items: stretch;
    gap: 0.15rem !important;
    width: 100%;
    overflow: visible !important;
    margin-top: 0.55rem !important;
    padding: 0.55rem 0.2rem 0.45rem !important;
    border-top: 1px solid rgba(255,255,255,0.1) !important;
    background: rgba(0, 0, 0, 0.5) !important;
  }
  .vv-hero-trust::before {
    content: none !important;
    display: none !important;
  }
  .vv-hero-trust::after {
    content: none !important;
    display: none !important;
  }
  .vv-hero-trust::-webkit-scrollbar { display: none; }
  /* All 5 features on one horizontal line */
  .vv-hero-trust .vv-trust-item,
  .vv-hero-trust .vv-trust-item:nth-child(n+5) {
    display: flex !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
    width: auto !important;
    padding-left: 0.22rem !important;
    padding-right: 0.02rem !important;
    font-size: 0.48rem !important;
    gap: 0.1rem !important;
    overflow: hidden !important;
  }
  .vv-trust-num { font-size: 0.92rem !important; line-height: 1.05 !important; }
  .vv-trust-item > span:not(.vv-trust-num) {
    line-height: 1.1 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
  }
  /* Mockup below copy + scroll */
  .vv-hero-mockup {
    order: 3 !important;
    margin-top: 1.25rem !important;
    padding-bottom: 1.5rem !important;
    width: 100% !important;
    min-height: 0 !important;
    gap: 0.75rem !important;
    display: flex !important;
    flex-direction: column !important;
  }
  .vv-hero-stage {
    position: relative !important;
    width: 100% !important;
    min-height: min(400px, 108vw) !important;
    padding-bottom: 1.25rem !important;
    overflow: visible !important;
    clip-path: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .vv-hero-lottie {
    position: relative !important;
    z-index: 6 !important;
    margin: 0 auto !important;
    width: min(240px, 58%) !important;
    order: unset !important;
  }
  .vv-hero-lottie dotlottie-wc {
    width: 240px !important; height: 240px !important;
    max-width: 58vw !important; max-height: 58vw !important;
  }
  /* Stable Streaming — projected holographic look (match desktop) */
  .vv-float-badge.vv-float-uptime,
  .vv-float-uptime {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: absolute !important;
    top: calc(50% - min(120px, 29vw) - 2.6rem) !important;
    right: 0 !important;
    bottom: auto !important;
    left: 0 !important;
    width: 100% !important;
    height: auto !important;
    transform: none !important;
    -webkit-transform: none !important;
    justify-content: center !important;
    align-items: center !important;
    z-index: 14 !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
    animation: none !important;
  }
  .vv-float-uptime-inner {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.45rem !important;
    margin: 0 auto !important;
    font-size: 0.62rem !important;
    letter-spacing: 0.08em !important;
    color: #e8fbff !important;
    text-shadow:
      0 0 8px rgba(0, 229, 255, 0.55),
      0 0 18px rgba(0, 229, 255, 0.28),
      0 1px 0 rgba(0, 0, 0, 0.65) !important;
    /* Soft projected hologram — small float only (avoids WA flicker) */
    animation: vvFloatUptimeMobile 4.8s ease-in-out infinite !important;
    transform: perspective(420px) rotateX(12deg) !important;
    -webkit-transform: perspective(420px) rotateX(12deg) !important;
    will-change: transform, opacity !important;
    filter: brightness(1.05) !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }
  .vv-live-gif {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 36px !important;
    height: 36px !important;
    filter: drop-shadow(0 0 10px rgba(0, 229, 255, 0.7)) drop-shadow(0 0 18px rgba(47, 107, 255, 0.35)) !important;
  }
  .vv-live-gif dotlottie-wc {
    display: block !important;
    width: 36px !important;
    height: 36px !important;
  }
  @keyframes vvFloatUptimeMobile {
    0%, 100% {
      transform: perspective(420px) rotateX(12deg) translateY(0);
      opacity: 1;
      filter: brightness(1.05);
    }
    40% {
      transform: perspective(420px) rotateX(14deg) translateY(-7px);
      opacity: 0.96;
      filter: brightness(1.18);
    }
    70% {
      transform: perspective(420px) rotateX(11deg) translateY(-3px);
      opacity: 1;
      filter: brightness(1.08);
    }
  }
  .vv-scroll-cue--dock { display: none !important; }
  .vv-soft-shade,
  .vv-soft-shade.vv-soft-shade--player,
  .vv-soft-shade--player { display: none !important; visibility: hidden !important; opacity: 0 !important; }
  /* Keep floating category tiles + LIVE labels (match desktop) */
  .vv-app-float-grid {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    order: unset !important;
    z-index: 10 !important;
    transform: none !important;
    pointer-events: none !important;
  }
  .vv-app-float-grid .vv-app-cell,
  .vv-app-float-grid .vv-app-cell.vv-cell-front,
  .vv-app-float-grid .vv-app-cell.vv-cell-behind,
  .vv-app-float-grid .vv-cell-icon,
  .vv-app-float-grid .vv-live,
  .vv-app-float-grid .vv-live::before {
    /* Hard freeze tiles only — Stable Streaming keeps projected hologram */
    animation: none !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
    filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  .vv-app-float-grid .vv-app-cell {
    width: 88px !important;
    padding: 0.68rem 0.4rem !important;
    gap: 0.32rem !important;
    pointer-events: none !important;
    background: rgba(10, 12, 22, 0.92) !important;
  }
  .vv-app-float-grid .vv-app-cell:nth-child(1),
  .vv-app-float-grid .vv-app-cell:nth-child(2),
  .vv-app-float-grid .vv-app-cell:nth-child(3),
  .vv-app-float-grid .vv-app-cell:nth-child(4),
  .vv-app-float-grid .vv-app-cell:nth-child(5),
  .vv-app-float-grid .vv-app-cell:nth-child(6) {
    animation: none !important;
    transform: none !important;
    filter: none !important;
  }
  .vv-app-float-grid .vv-app-cell.vv-cell-front {
    z-index: 12 !important;
    opacity: 1 !important;
  }
  .vv-app-float-grid .vv-app-cell.vv-cell-behind {
    z-index: 4 !important;
    opacity: 0.82 !important;
    filter: none !important;
  }
  .vv-hero-lottie {
    filter: none !important;
    will-change: auto !important;
    transition: none !important;
    transform: none !important;
    contain: none !important;
  }
  .vv-hero-mockup,
  .vv-hero-stage {
    contain: none !important;
    isolation: isolate !important;
    transform: none !important;
    filter: none !important;
    will-change: auto !important;
  }
  .vv-hero-mockup::before,
  .vv-soft-shade,
  .vv-soft-shade--player {
    display: none !important;
    content: none !important;
    animation: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    filter: none !important;
  }
  /* Keep scroll-GIF overlays (::before/::after) — do not kill them here */
  .vv-eyebrow::before { animation: none !important; }
  .vv-network-canvas {
    will-change: auto !important;
    image-rendering: auto !important;
  }
  .vv-app-window-stats,
  .vv-app-window.vv-app-window-stats {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    will-change: auto !important;
    background: rgba(8, 10, 18, 0.94) !important;
  }
  /* Keep Stable Streaming visible + projected above cubes */
  .vv-float-uptime,
  .vv-float-uptime-inner,
  .vv-live-gif,
  .vv-live-gif dotlottie-wc {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  .vv-float-uptime-inner {
    animation: vvFloatUptimeMobile 4.8s ease-in-out infinite !important;
    transform: perspective(420px) rotateX(12deg) !important;
    -webkit-transform: perspective(420px) rotateX(12deg) !important;
    text-shadow:
      0 0 8px rgba(0, 229, 255, 0.55),
      0 0 18px rgba(0, 229, 255, 0.28),
      0 1px 0 rgba(0, 0, 0, 0.65) !important;
    filter: brightness(1.05) !important;
    will-change: transform, opacity !important;
  }
  .vv-live-gif {
    filter: drop-shadow(0 0 10px rgba(0, 229, 255, 0.7)) drop-shadow(0 0 18px rgba(47, 107, 255, 0.35)) !important;
  }
  .vv-live-gif dotlottie-wc {
    display: block !important;
  }
  .vv-app-float-grid .vv-app-cell:nth-child(1) {
    /* Sports — top-left edge */
    top: calc(50% - 38%) !important; left: 2px !important;
    right: auto !important; bottom: auto !important;
  }
  .vv-app-float-grid .vv-app-cell:nth-child(2) {
    /* Movies — top-right edge */
    top: calc(50% - 40%) !important; right: 2px !important;
    left: auto !important; bottom: auto !important;
  }
  .vv-app-float-grid .vv-app-cell:nth-child(3) {
    /* News — mid-left edge */
    top: calc(50% - 8%) !important; left: 2px !important;
    right: auto !important; bottom: auto !important;
  }
  .vv-app-float-grid .vv-app-cell:nth-child(4) {
    /* Music — mid-right edge */
    top: calc(50% - 2%) !important; right: 2px !important;
    left: auto !important; bottom: auto !important;
  }
  .vv-app-float-grid .vv-app-cell:nth-child(5) {
    /* Football — bottom-left edge */
    top: calc(50% + 22%) !important; left: 2px !important;
    right: auto !important; bottom: auto !important;
  }
  .vv-app-float-grid .vv-app-cell:nth-child(6) {
    /* World — bottom-right edge */
    top: calc(50% + 24%) !important; right: 2px !important;
    left: auto !important; bottom: auto !important;
  }
  .vv-app-float-grid .vv-live {
    display: block !important;
    position: absolute !important;
    top: 5px !important;
    right: 5px !important;
    font-size: 0.38rem !important;
    animation: none !important;
  }
  .vv-app-float-grid .vv-live::before {
    animation: none !important;
    opacity: 1 !important;
  }
  .vv-cell-movies .vv-cell-icon,
  .vv-cell-football .vv-cell-icon {
    animation: none !important;
    transform: none !important;
  }
  .vv-cell-icon { font-size: 1.35rem !important; }
  .vv-cell-name { font-size: 0.62rem !important; letter-spacing: 0.02em !important; }
  .vv-app-window {
    width: 100% !important; max-width: 100% !important;
    margin: 0.65rem auto 0 !important; order: 3 !important;
    z-index: 8 !important; opacity: 1 !important;
    background: rgba(0, 0, 0, 0.94) !important;
    isolation: isolate !important;
    overflow: visible !important;
  }
  .vv-app-window-stats {
    margin-top: 0.5rem !important; z-index: 8 !important;
    isolation: isolate !important;
    background: rgba(8, 10, 18, 0.94) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    will-change: auto !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }
  /* Soft shade element handles player darkening */
  .vv-app-window-stats::before,
  .vv-app-window-stats::after,
  .vv-app-stats::before {
    content: none !important;
    display: none !important;
  }
  .vv-app-window-stats > *:not(.vv-soft-shade) { position: relative !important; z-index: 5 !important; }
  .vv-app-bar {
    background: rgba(0, 0, 0, 0.45) !important;
    border-radius: 18px 18px 0 0 !important;
    position: relative !important;
    z-index: 6 !important;
  }
  .vv-app-stats {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0.5rem 0.35rem !important;
    padding: 0.85rem 0.7rem !important;
    min-height: 0 !important;
    background: rgba(0, 0, 0, 0.45) !important;
    border-radius: 0 0 18px 18px !important;
    position: relative !important;
    z-index: 5 !important;
  }
  .vv-app-stat { min-width: 0 !important; width: 100% !important; position: relative !important; z-index: 5 !important; }
  .vv-app-stat strong {
    font-size: clamp(1.1rem, 4.8vw, 1.4rem) !important;
    white-space: normal !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    position: relative !important;
    z-index: 5 !important;
  }
  .vv-app-stat span {
    font-size: 0.55rem !important; white-space: normal !important;
    color: rgba(220,220,230,0.95) !important;
  }
  .vv-app-title { color: rgba(210,210,220,0.95) !important; }
  .vv-app-stat-sep { display: none !important; }
  .vv-stat-highlight { padding: 0.5rem 0.4rem !important; min-width: 0 !important; }
  .vv-space-depth { opacity: 0.45; }
}
@media (max-width: 480px) {
  .vv-hero-h1 { font-size: clamp(1.9rem, 8.5vw, 2.45rem) !important; }
  .vv-hero-stage { min-height: min(380px, 112vw) !important; }
  .vv-hero-lottie { width: min(210px, 54%) !important; }
  .vv-hero-lottie dotlottie-wc {
    width: 210px !important; height: 210px !important;
    max-width: 54vw !important; max-height: 54vw !important;
  }
  .vv-app-float-grid .vv-app-cell { width: 86px !important; padding: 0.6rem 0.35rem !important; }
  .vv-cell-icon { font-size: 1.15rem !important; }
  .vv-cell-name { font-size: 0.55rem !important; }
}
@media (pointer: coarse) {
  .vv-hero-lottie { transform: none !important; }
}
@media (prefers-reduced-motion: reduce) {
  .vv-hero-lottie, .vv-app-float-grid { transform: none !important; }
  .vv-app-float-grid .vv-app-cell { animation: none !important; }
}


#vv-steps {
  position: relative;
  overflow: visible;
}
.vv-hero-blend {
  position: absolute;
  left: 0; right: 0;
  top: -140px;
  height: 180px;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0%,
    rgba(5, 7, 13, 0.45) 35%,
    rgba(0, 0, 0, 0.92) 70%,
    #000 100%
  );
}
.vv-steps-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}
.vv-step-card {
  background: rgba(14,16,28,0.45);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 14px;
  padding: 1.6rem 1.35rem;
  backdrop-filter: blur(12px);
  transition: border-color 0.25s, transform 0.25s, box-shadow 0.25s;
}
.vv-step-card:hover {
  border-color: rgba(0,229,255,0.35);
  transform: translateY(-3px);
  box-shadow: 0 12px 32px rgba(0,229,255,0.1);
}
.vv-step-num {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 2rem;
  letter-spacing: 0.06em;
  background: linear-gradient(90deg, #00E5FF, #a78bfa);
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin-bottom: 0.7rem;
}
.vv-step-title {
  font-size: 1.05rem; font-weight: 700; color: #fff; margin-bottom: 0.55rem;
}
.vv-step-desc {
  font-size: 0.9rem; color: #c4c4cc; line-height: 1.6; margin: 0;
}
@media (max-width: 1000px) {
  .vv-steps-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 900px) {
  #vv-steps .vv-section-center { margin-bottom: 1.15rem !important; }
  .vv-steps-grid { gap: 0.55rem !important; }
  .vv-step-card {
    padding: 0.7rem 0.6rem !important;
    border-radius: 10px !important;
  }
  .vv-step-num {
    font-size: 1.2rem !important;
    margin-bottom: 0.28rem !important;
    letter-spacing: 0.04em !important;
  }
  .vv-step-title {
    font-size: 0.8rem !important;
    margin-bottom: 0.28rem !important;
    line-height: 1.25 !important;
  }
  .vv-step-desc {
    font-size: 0.68rem !important;
    line-height: 1.4 !important;
  }
}
@media (max-width: 560px) {
  .vv-steps-grid { grid-template-columns: repeat(2, 1fr); gap: 0.45rem !important; }
  .vv-step-card { padding: 0.6rem 0.5rem !important; }
  .vv-step-num { font-size: 1.1rem !important; }
  .vv-step-title { font-size: 0.76rem !important; }
  .vv-step-desc { font-size: 0.64rem !important; line-height: 1.35 !important; }
}


/* Controls row */
.vv-pricing-controls {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 0; margin: 2.5rem 0 3rem;
}
.vv-screens-wrap { display: flex; align-items: center; gap: 0.8rem; }
.vv-screens-label {
  font-family: 'JetBrains Mono', monospace; font-size: 0.7rem;
  color: var(--vv-muted2); letter-spacing: 0.12em; text-transform: uppercase;
}
.vv-screens-btns {
  display: flex;
  align-items: center;
  gap: 0;
  padding: 4px 6px;
  border-radius: 12px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
}
.vv-screen-btn {
  position: relative;
  z-index: 1;
  width: 38px; height: 38px; border-radius: 8px;
  background: transparent; border: 1px solid transparent;
  color: var(--vv-muted2); font-family: 'Manrope', sans-serif;
  font-weight: 700; font-size: 0.9rem; cursor: pointer;
  transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease,
              box-shadow 0.25s ease, transform 0.25s cubic-bezier(0.22, 1, 0.36, 1);
  margin: 0 2px;
  overflow: visible;
}
/* Separators between device options */
.vv-screen-btn:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 20%;
  bottom: 20%;
  right: -3px;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(0,229,255,0.55), rgba(124,92,255,0.55), transparent);
  pointer-events: none;
}
.vv-screen-btn.active {
  background: var(--vv-red); color: #fff;
  border-color: var(--vv-red);
  box-shadow:
    0 0 0 1px rgba(0,229,255,0.35),
    0 0 18px rgba(0,229,255,0.45),
    0 2px 10px var(--vv-red-glow);
  transform: scale(1.06);
  z-index: 2;
}
.vv-screen-btn:hover {
  color: #fff;
  border-color: rgba(0,229,255,0.75);
  background: rgba(0,229,255,0.18);
  transform: scale(1.12);
  z-index: 3;
  box-shadow:
    0 0 0 1px rgba(0,229,255,0.4),
    0 0 22px rgba(0,229,255,0.55),
    0 0 40px rgba(124,92,255,0.25);
}
.vv-screen-btn:hover:not(.active)::before {
  content: '';
  position: absolute;
  inset: -10px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0,229,255,0.22) 0%, transparent 70%);
  pointer-events: none;
  z-index: -1;
}
.vv-screen-btn.active:hover {
  background: var(--vv-red);
  border-color: #5ef0ff;
  box-shadow:
    0 0 0 1px rgba(0,229,255,0.55),
    0 0 28px rgba(0,229,255,0.65),
    0 0 48px rgba(124,92,255,0.3);
}

/* Coverage row — separated line under Devices */
.vv-pricing-highlights {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  gap: 0;
  margin-top: 1.15rem;
  padding-top: 1.15rem;
  border-top: 1px solid rgba(255,255,255,0.1);
  max-width: 100%;
}
.vv-pricing-hi {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.28rem;
  padding: 0.15rem 1.15rem;
  position: relative;
  font-size: 0.62rem;
  color: var(--vv-muted2);
  letter-spacing: 0.03em;
  white-space: nowrap;
}
.vv-pricing-hi:not(:first-child)::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.15rem;
  bottom: 0.1rem;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(0,229,255,0.55), rgba(124,92,255,0.55), transparent);
}
.vv-pricing-hi-num {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(1.15rem, 1.8vw, 1.55rem);
  line-height: 0.95;
  background: linear-gradient(135deg, #00E5FF, #a78bfa);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.vv-plans-row {
  display: grid !important; grid-template-columns: repeat(4, 1fr);
  gap: 0; border: none;
  border-radius: 0; overflow: visible;
  text-align: left;
  background: transparent;
}
.vv-plans-row-4 { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; }

.vv-plan-card {
  background: var(--vv-card); padding: 2.2rem 1.6rem;
  display: flex; flex-direction: column; position: relative;
  border-radius: 16px;
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1),
              box-shadow 0.4s ease,
              background 0.35s ease;
  will-change: transform;
  z-index: 1;
}
.vv-plan-card:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 10%;
  bottom: 10%;
  right: 0;
  width: 1px;
  background: linear-gradient(
    180deg,
    transparent 0%,
    rgba(0, 229, 255, 0.15) 12%,
    #00E5FF 48%,
    #7c5cff 72%,
    transparent 100%
  );
  box-shadow: 0 0 10px rgba(0, 229, 255, 0.35);
  pointer-events: none;
  z-index: 2;
}
.vv-plan-card:hover {
  background: var(--vv-card2);
  transform: translateY(-12px);
  z-index: 4;
  box-shadow:
    0 22px 48px rgba(0, 0, 0, 0.45),
    0 0 28px rgba(0, 229, 255, 0.14);
}
.vv-plan-vip {
  background: linear-gradient(160deg, rgba(0,40,55,0.55) 0%, rgba(10,8,28,0.65) 100%);
  backdrop-filter: blur(12px);
}
.vv-plan-vip:hover {
  background: linear-gradient(160deg, rgba(0,50,70,0.7) 0%, rgba(16,12,40,0.78) 100%);
}

.vv-plan-popular {
  position: absolute; top: 0; left: 50%; transform: translateX(-50%);
  background: linear-gradient(90deg, var(--vv-red), var(--vv-orange));
  color: #fff; font-family: 'JetBrains Mono', monospace;
  font-size: 0.52rem; letter-spacing: 0.2em; font-weight: 600;
  padding: 0.3rem 1.2rem; border-radius: 0 0 8px 8px;
  white-space: nowrap;
}
.vv-plan-tag {
  display: inline-block; background: rgba(255,255,255,0.06);
  color: var(--vv-muted2); font-family: 'JetBrains Mono', monospace;
  font-size: 0.52rem; letter-spacing: 0.08em; font-weight: 600;
  padding: 0.35rem 0.75rem; border-radius: 50px;
  margin-bottom: 1.2rem; margin-top: 0.8rem; align-self: flex-start;
  max-width: 100%; line-height: 1.35; white-space: normal; text-align: left;
}
.vv-plan-tag-vip {
  background: linear-gradient(135deg, rgba(0,229,255,0.14), rgba(124,92,255,0.22));
  color: #b8f4ff;
  border: 1px solid rgba(0,229,255,0.28);
}
.vv-plan-name {
  font-family: 'Bebas Neue', sans-serif; font-size: 2rem;
  letter-spacing: 0.05em; color: var(--vv-text); line-height: 1; margin-bottom: 0.4rem;
}
.vv-name-gold {
  background: linear-gradient(90deg, #00E5FF 0%, #2F6BFF 55%, #7c5cff 100%);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.vv-plan-desc { font-size: 0.82rem; color: var(--vv-muted2); margin-bottom: 1.5rem; line-height: 1.5; }
.vv-plan-price-wrap { margin-bottom: 0.5rem; }
.vv-plan-price { display: flex; align-items: flex-end; gap: 4px; line-height: 1; flex-wrap: wrap; }
.vv-price-currency {
  font-family: 'Manrope', sans-serif; font-size: 1.2rem;
  color: var(--vv-muted2); font-weight: 600; margin-bottom: 0.3rem;
}
.vv-price-num {
  font-family: 'Bebas Neue', sans-serif; font-size: 3.4rem;
  color: var(--vv-text); line-height: 0.9; transition: all 0.3s ease;
}
.vv-price-red .vv-price-num { color: var(--vv-red2); }
.vv-price-gold .vv-price-num {
  background: linear-gradient(90deg, #00E5FF 0%, #2F6BFF 55%, #7c5cff 100%);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.vv-badge-discount {
  display:inline-block; margin-left:0.5rem; font-size:0.65rem;
  background:var(--vv-red); color:#fff; padding:0.2rem 0.45rem; border-radius:4px;
  font-family:'JetBrains Mono',monospace; vertical-align:middle;
}
.vv-price-was {
  font-family: 'JetBrains Mono', monospace; font-size: 0.65rem;
  color: var(--vv-muted); margin-top: 4px;
}
.vv-price-screens-note {
  font-family: 'JetBrains Mono', monospace; font-size: 0.6rem;
  color: var(--vv-muted); letter-spacing: 0.1em; margin-top: 4px; min-height: 1rem;
}
.vv-plan-divider { height: 1px; background: var(--vv-border); margin: 1.5rem 0; }
.vv-plan-feats {
  list-style: none; display: flex; flex-direction: column;
  gap: 0.75rem; flex: 1; margin-bottom: 1.4rem; padding: 0;
}
.vv-plan-feats li {
  display: flex; align-items: center; gap: 0.7rem;
  font-size: 0.84rem; color: var(--vv-text); line-height: 1.4;
}
.vv-feat-check {
  width: 20px; height: 20px; border-radius: 50%;
  background: rgba(0,184,230,0.15); color: var(--vv-red);
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 0.65rem; font-weight: 700; flex-shrink: 0;
}
.vv-check-gold {
  background: linear-gradient(135deg, #00E5FF 0%, #2F6BFF 55%, #7c5cff 100%);
  color: #0a0a12;
  box-shadow: 0 0 12px rgba(0,229,255,0.35);
}
.vv-plan-btn {
  display: block; text-align: center; text-decoration: none;
  padding: 0.9rem; border-radius: 8px; font-family: 'Manrope', sans-serif;
  font-size: 0.8rem; font-weight: 700; letter-spacing: 0.08em;
  text-transform: uppercase; transition: transform 0.2s, opacity 0.2s, box-shadow 0.2s;
  margin-top: auto;
}
.vv-plan-btn:hover { transform: translateY(-2px); opacity: 1; }
.vv-plan-btn-outline {
  border: 1px solid var(--vv-border); color: var(--vv-text); background: transparent;
}
.vv-plan-btn-outline:hover {
  background: #fff !important;
  border-color: #fff !important;
  color: #0a0a12 !important;
}
/* 1 Month — Order Now gets a clear white border */
a#vvOrder1m.vv-plan-btn-outline,
#vvOrder1m {
  border: 1.5px solid #ffffff !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.15) !important;
}
a#vvOrder1m.vv-plan-btn-outline:hover,
#vvOrder1m:hover {
  background: #fff !important;
  border-color: #fff !important;
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
}
.vv-plan-btn-red {
  background: linear-gradient(135deg, #00E5FF 0%, #2F6BFF 55%, #7c5cff 100%);
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 4px 20px var(--vv-red-glow);
}
.vv-plan-btn-red:hover {
  background: #fff !important;
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
  box-shadow: 0 8px 28px rgba(255,255,255,0.2);
}
.vv-plan-btn-gold {
  background: linear-gradient(135deg, #00E5FF 0%, #2F6BFF 55%, #7c5cff 100%);
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-weight: 800;
  box-shadow: 0 4px 20px var(--vv-red-glow);
}
.vv-plan-btn-gold:hover {
  background: linear-gradient(135deg, #7c5cff 0%, #2F6BFF 45%, #00E5FF 100%) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.vv-trust-pay {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.1rem;
  width: min(920px, 100%);
  margin: 1.5rem auto 0;
  padding: 0.25rem 0.5rem;
  text-align: center;
  box-sizing: border-box;
}
.vv-ssl-badge {
  display: inline-flex !important;
  align-items: center;
  gap: 0.85rem;
  padding: 0.75rem 1.2rem;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(38,38,87,0.85), rgba(0,0,0,0.9));
  border: 1px solid rgba(161,0,255,0.35);
  max-width: min(420px, 94vw);
  text-align: left;
}
.vv-ssl-shield {
  width: 44px;
  height: auto;
  flex-shrink: 0;
  display: block;
}
.vv-ssl-copy strong {
  display: block;
  color: #fff;
  font-size: 1.02rem;
  font-weight: 800;
  line-height: 1.2;
  font-family: 'Manrope', sans-serif;
}
.vv-ssl-copy span {
  display: block;
  color: #b4b4d6;
  font-size: 0.86rem;
  margin-top: 0.15rem;
  font-family: 'Manrope', sans-serif;
}
.vv-pay-badge {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.45rem 0.65rem;
  width: 100%;
  max-width: 720px;
}
.vv-pay-methods {
  width: auto !important;
  height: 44px !important;
  max-width: min(480px, 90vw) !important;
  object-fit: contain !important;
  display: block !important;
}
.vv-pay-icon {
  display: inline-flex !important;
  align-items: center !important;
  line-height: 0 !important;
  height: 36px !important;
  flex-shrink: 0 !important;
}
.vv-pay-icon svg {
  height: 36px !important;
  width: auto !important;
  max-height: 36px !important;
  display: block !important;
}
.vv-payment-note {
  text-align: center;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.65rem;
  color: var(--vv-muted);
  letter-spacing: 0.08em;
  margin: 0;
}
@media (max-width: 900px) {
  .vv-ssl-badge {
    gap: 0.4rem !important;
    padding: 0.38rem 0.6rem !important;
    border-radius: 9px !important;
    max-width: min(230px, 72vw) !important;
  }
  .vv-ssl-shield {
    width: 22px !important;
    height: auto !important;
  }
  .vv-ssl-copy strong {
    font-size: 0.68rem !important;
  }
  .vv-ssl-copy span {
    font-size: 0.58rem !important;
    margin-top: 0.05rem !important;
  }
  .vv-pay-badge {
    flex-wrap: nowrap !important;
    gap: 0.18rem 0.28rem !important;
    max-width: min(100%, 96vw) !important;
    width: 100% !important;
    justify-content: center !important;
    overflow: visible !important;
  }
  .vv-pay-methods {
    height: 22px !important;
    max-width: none !important;
    width: auto !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
    max-height: 22px !important;
  }
  .vv-pay-icon,
  .vv-pay-icon svg {
    height: 18px !important;
    max-height: 18px !important;
    width: auto !important;
    flex-shrink: 0 !important;
  }
  .vv-payment-note {
    font-size: 0.55rem !important;
    letter-spacing: 0.05em !important;
  }
}
.vv-pay-badges { display: none; }
.vv-ssl-badge img, img.vv-ssl-badge { display: none !important; }
@keyframes vvPriceFlip {
  0%{transform:translateY(0);opacity:1}
  40%{transform:translateY(-10px);opacity:0}
  60%{transform:translateY(10px);opacity:0}
  100%{transform:translateY(0);opacity:1}
}
.vv-price-animating { animation: vvPriceFlip 0.35s ease; }

@media (max-width: 1100px) {
  .vv-plans-row, .vv-plans-row-4 { grid-template-columns: repeat(2, 1fr) !important; gap: 0 !important; }
  .vv-plan-card:nth-child(2n)::after { display: none; }
  .vv-plan-card:nth-child(-n+2)::before {
    content: '';
    position: absolute;
    left: 12%; right: 12%; bottom: 0; height: 1px;
    background: linear-gradient(90deg, transparent, #00E5FF, #7c5cff, transparent);
    box-shadow: 0 0 8px rgba(0,229,255,0.3);
    pointer-events: none;
  }
}
@media (max-width: 640px) {
  .vv-plans-row, .vv-plans-row-4 { grid-template-columns: 1fr !important; border: none; gap: 0 !important; }
  .vv-plan-card { border: none; border-radius: 12px; }
  .vv-plan-card:not(:last-child)::after { display: none; }
  .vv-plan-card:not(:last-child)::before {
    content: '';
    position: absolute;
    left: 10%; right: 10%; bottom: 0; height: 1px;
    background: linear-gradient(90deg, transparent, #00E5FF, #7c5cff, transparent);
    box-shadow: 0 0 8px rgba(0,229,255,0.3);
    pointer-events: none;
  }
  .vv-pricing-controls { flex-direction: column; gap: 1rem; }
}


.vv-term-layout {
  display: grid;
  grid-template-columns: 0.72fr 1.45fr;
  gap: 2.25rem;
  align-items: stretch;
}
.vv-term-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}
.vv-term-lottie {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin: 0 0 0.55rem;
  max-width: 100%;
  filter: drop-shadow(0 0 18px rgba(0,229,255,0.2));
}
.vv-term-lottie dotlottie-wc {
  display: block;
  width: min(130px, 36vw) !important;
  height: min(130px, 36vw) !important;
  max-width: 100%;
}
.vv-term-bullets {
  list-style: none; margin: 1.4rem 0 0; padding: 0;
  display: flex; flex-direction: column; gap: 0.65rem;
}
.vv-term-bullets li {
  font-size: 0.95rem; color: #c8c8d4; font-weight: 300;
  padding-left: 1.2rem; position: relative;
}
.vv-term-bullets li::before {
  content: '›'; position: absolute; left: 0; color: #00E5FF; font-weight: 700;
}
.vv-term-window {
  width: 100%;
  height: 100% !important;
  min-height: 560px !important;
  max-height: none !important;
  background: rgba(0, 0, 0, 0.48) !important;
  border: 1px solid rgba(42, 42, 42, 0.85);
  border-radius: 10px;
  overflow: hidden !important;
  box-shadow: 0 24px 60px rgba(0,0,0,0.45);
  -webkit-backdrop-filter: blur(12px) !important;
  backdrop-filter: blur(12px) !important;
  display: flex !important;
  flex-direction: column !important;
  position: relative;
  contain: layout style;
  box-sizing: border-box !important;
  align-self: stretch;
  touch-action: pan-y;
}
.vv-term-bar {
  display: flex; align-items: center; gap: 0.75rem;
  padding: 0.7rem 1rem;
  background: #1a1a1a !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  border-bottom: 1px solid #2a2a2a;
  flex: 0 0 auto !important;
  height: 44px;
  box-sizing: border-box;
}
.vv-term-dots { display: flex; gap: 6px; }
.vv-term-dots span {
  width: 11px; height: 11px; border-radius: 50%;
  background: #3f3f46;
}
.vv-term-dots span:nth-child(1) { background: #ff5f56; }
.vv-term-dots span:nth-child(2) { background: #ffbd2e; }
.vv-term-dots span:nth-child(3) { background: #27c93f; }
.vv-term-title {
  flex: 1;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.74rem;
  color: #8a8a8a;
  letter-spacing: 0.04em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.vv-term-live {
  display: inline-flex; align-items: center; gap: 6px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.62rem; font-weight: 700; letter-spacing: 0.14em;
  color: #ff6b6b;
}
.vv-term-live i {
  width: 7px; height: 7px; border-radius: 50%;
  background: #ff3b3b;
  box-shadow: 0 0 8px rgba(255,59,59,0.75);
  animation: vvBlink 1.2s ease-in-out infinite;
}
.vv-term-scroll {
  flex: 1 1 0% !important;
  min-height: 0 !important;
  max-height: none !important;
  height: auto !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  background: transparent !important;
  overscroll-behavior: auto;
  -webkit-overflow-scrolling: touch;
  box-sizing: border-box !important;
  scrollbar-width: none !important; /* Firefox */
  -ms-overflow-style: none !important; /* IE/Edge */
  touch-action: pan-y;
  display: block !important;
  justify-content: flex-start !important;
  align-items: stretch !important;
}
.vv-term-scroll::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
}
.vv-term-body,
pre.vv-term-body,
#vvTermBody {
  display: block !important;
  margin: 0 !important;
  padding: 1.1rem 1.15rem 0.55rem !important;
  min-height: 0 !important;
  max-height: none !important;
  height: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  background: transparent !important;
  font-family: 'JetBrains Mono', 'Cascadia Code', Consolas, monospace;
  font-size: 0.82rem;
  line-height: 1.65;
  color: #cccccc;
  white-space: pre-wrap !important;
  word-break: break-word !important;
  overflow-wrap: anywhere !important;
  overflow: visible !important;
  text-align: left !important;
  vertical-align: top !important;
}
.vv-term-body .t-cmd { color: #00ff41; }
.vv-term-body .t-ok { color: #00ff41; }
.vv-term-body .t-info { color: #3b9eff; }
.vv-term-body .t-dim { color: #6a6a6a; }
.vv-term-body .t-warn { color: #e5c07b; }
.vv-term-body .t-cursor {
  display: inline-block; width: 8px; height: 1em;
  background: #00ff41; margin-left: 2px; vertical-align: text-bottom;
  animation: vvTermCursor 1s step-end infinite;
}
.vv-term-input-row {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  padding: 0.55rem 1.15rem 1rem;
  background: transparent !important;
  border-top: 1px solid rgba(42, 42, 42, 0.55);
  flex: 0 0 auto !important;
  height: 48px;
  box-sizing: border-box;
  margin: 0;
  touch-action: manipulation;
}
.vv-term-prompt {
  font-family: 'JetBrains Mono', 'Cascadia Code', Consolas, monospace;
  font-size: 0.78rem;
  color: #00ff41;
  line-height: 1.35;
  flex-shrink: 0;
  white-space: nowrap;
}
.vv-term-prompt .vv-term-user { color: #3b9eff; }
.vv-term-prompt .vv-term-path { color: #e5c07b; }
.vv-term-prompt .vv-term-dollar { color: #00ff41; margin-left: 0.2rem; }
.vv-term-input {
  flex: 1;
  min-width: 0;
  background: transparent !important;
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  color: #cccccc !important;
  caret-color: #00ff41;
  font-family: 'JetBrains Mono', 'Cascadia Code', Consolas, monospace;
  font-size: 0.82rem;
  line-height: 1.4;
  padding: 0 !important;
  margin: 0;
  -webkit-appearance: none;
  appearance: none;
}
.vv-term-input::placeholder { color: #4a4a4a; }
@keyframes vvTermCursor { 50% { opacity: 0; } }
@media (max-width: 900px) {
  .vv-term-layout { grid-template-columns: 1fr; gap: 1.75rem; }
  .vv-term-lottie { justify-content: center; margin-bottom: 0.35rem; }
  .vv-term-lottie dotlottie-wc {
    width: min(110px, 32vw) !important;
    height: min(110px, 32vw) !important;
  }
  .vv-term-window {
    height: 420px !important; max-height: 420px !important; min-height: 420px !important;
    touch-action: pan-y !important;
  }
  /* Let page scroll win on mobile — no nested terminal scroll trap */
  .vv-term-scroll {
    overflow: hidden !important;
    overscroll-behavior: auto !important;
    touch-action: pan-y !important;
    -webkit-overflow-scrolling: auto !important;
  }
  .vv-term-body, pre.vv-term-body, #vvTermBody { font-size: 0.74rem; touch-action: pan-y !important; }
  .vv-term-input, .vv-term-prompt { font-size: 0.74rem; }
}


.vv-ch-header {
  display: flex; align-items: flex-end; justify-content: space-between;
  margin-bottom: 3rem; flex-wrap: wrap; gap: 1rem;
}
.vv-viewall {
  font-family: 'JetBrains Mono', monospace; font-size: 0.65rem;
  letter-spacing: 0.18em; color: var(--vv-red); text-decoration: none;
  border-bottom: 1px solid rgba(0,184,230,0.35); padding-bottom: 2px;
  transition: border-color 0.2s; white-space: nowrap; align-self: flex-end;
}
.vv-viewall:hover { border-color: var(--vv-red); }

.vv-ch-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1px; border: 1px solid var(--vv-border);
  border-radius: 12px; overflow: hidden;
}
.vv-ch-card {
  background: rgba(18,18,26,0.55); padding: 1.5rem;
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  display: flex; flex-direction: column; gap: 0.6rem;
  transition: background 0.25s; cursor: pointer;
  position: relative;
}
.vv-ch-card:hover { background: var(--vv-card2); }
.vv-ch-top {
  display: flex; align-items: flex-start; justify-content: space-between;
  margin-bottom: 0.4rem;
}
.vv-ch-icon {
  width: 44px; height: 44px; border-radius: 10px;
  display: flex; align-items: center; justify-content: center; font-size: 1.4rem;
}
.vv-ch-name { font-weight: 700; font-size: 0.9rem; color: var(--vv-text); }
.vv-ch-count {
  font-family: 'JetBrains Mono', monospace; font-size: 0.62rem;
  color: var(--vv-muted); letter-spacing: 0.06em;
}
.vv-ch-bar {
  height: 2px; background: rgba(255,255,255,0.06);
  border-radius: 1px; margin-top: auto;
}
.vv-ch-fill { height: 100%; border-radius: 1px; transition: width 1.2s ease; }

@media (max-width: 1100px) {
  .vv-ch-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
  .vv-ch-header { flex-direction: column; align-items: flex-start; }
  .vv-ch-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 400px) {
  .vv-ch-grid { grid-template-columns: 1fr; }
}


.vv-feat-header { margin-bottom: 3.5rem; }
.vv-feat-header .vv-h2 { margin: 0.5rem 0 0.8rem; }

.vv-feat-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px; border: 1px solid var(--vv-border);
  border-radius: 14px; overflow: hidden;
}

.vv-feat-card {
  background: var(--vv-card); padding: 2.2rem;
  position: relative; transition: background 0.25s; overflow: hidden;
}
.vv-feat-card:hover { background: var(--vv-card2); }

/* Large cards span 2 rows on desktop via CSS grid */
.vv-feat-large { grid-row: span 1; }

.vv-feat-glow {
  position: absolute; top: -40%; left: -20%; width: 140%; height: 140%;
  pointer-events: none; opacity: 0.6;
}

.vv-feat-num {
  font-family: 'Bebas Neue', sans-serif; font-size: 5rem;
  color: rgba(255,255,255,0.04); line-height: 1;
  position: absolute; top: 1rem; right: 1.5rem;
  pointer-events: none; user-select: none;
}
.vv-feat-icon-big { font-size: 2rem; margin-bottom: 1.2rem; display: block; }
.vv-feat-title {
  font-family: 'Manrope', sans-serif; font-size: 1rem;
  font-weight: 700; color: var(--vv-text); margin-bottom: 0.7rem;
}
.vv-feat-desc { font-size: 0.86rem; color: var(--vv-muted2); line-height: 1.75; font-weight: 400; }

.vv-feat-tag {
  display: inline-block; margin-top: 1.2rem;
  background: rgba(0,184,230,0.12); color: var(--vv-red);
  font-family: 'JetBrains Mono', monospace; font-size: 0.58rem;
  letter-spacing: 0.15em; text-transform: uppercase;
  padding: 0.25rem 0.7rem; border-radius: 4px;
}
.vv-feat-link {
  display: inline-block; margin-top: 1.2rem;
  font-family: 'JetBrains Mono', monospace; font-size: 0.65rem;
  color: #22c55e; letter-spacing: 0.12em; text-decoration: none;
  border-bottom: 1px solid rgba(34,197,94,0.35); padding-bottom: 1px;
  transition: border-color 0.2s;
}
.vv-feat-link:hover { border-color: #fff; color: #fff !important; }

@media (max-width: 900px) {
  .vv-feat-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 560px) {
  .vv-feat-grid { grid-template-columns: 1fr; }
}


.vv-speed-head {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem 1.5rem;
  margin-bottom: 3.15rem;
  text-align: center;
}
.vv-speed-head > div {
  width: 100%;
  max-width: min(72rem, 100%);
  margin-left: auto;
  margin-right: auto;
}
.vv-speed-head .vv-h2,
.vv-speed-head .vv-lead,
.vv-speed-head .vv-eyebrow {
  text-align: center;
}
.vv-speed-head .vv-lead,
.vv-speed-head .vv-cdn-note {
  margin-left: auto;
  margin-right: auto;
}
.vv-speed-head .vv-cdn-note {
  max-width: none !important;
  width: 100% !important;
}
.vv-speed-wrap {
  display: grid; grid-template-columns: 1.05fr 0.95fr;
  gap: 2rem; align-items: stretch;
  min-height: 0;
}
.vv-speed-tester {
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  display: flex; flex-direction: column; align-items: stretch;
  justify-content: stretch; gap: 0;
  height: 100%; min-height: 0;
  align-self: stretch;
  box-sizing: border-box;
}
.vv-speed-frame-wrap {
  width: 100%;
  flex: 1 1 auto;
  min-height: 560px;
  height: 100%;
  position: relative;
  border-radius: 16px;
  overflow: visible;
  border: none;
  background: transparent;
  box-shadow: none;
  padding: 0;
}
.vv-speed-frame-wrap #vvSpeedPanel {
  min-height: 560px;
  height: 100%;
  box-sizing: border-box;
}
.vv-speed-metrics {
  display: flex; align-items: center; gap: 1rem; width: 100%; justify-content: center;
}
.vv-metric { text-align: center; }
.vv-metric-icon {
  font-size: 1rem; color: var(--vv-muted); margin-bottom: 4px;
  font-family: 'JetBrains Mono', monospace;
}
.vv-metric-label {
  font-size: 0.65rem; color: var(--vv-muted); letter-spacing: 0.1em;
  text-transform: uppercase; font-family: 'JetBrains Mono', monospace;
}
.vv-metric-val {
  font-family: 'Bebas Neue', sans-serif; font-size: 1.5rem; color: var(--vv-text);
  margin-top: 2px; min-width: 60px;
}
.vv-metric-sep { width: 1px; height: 40px; background: var(--vv-border); }
.vv-test-btn {
  background: linear-gradient(135deg, #00E5FF 0%, #2F6BFF 55%, #7c5cff 100%);
  color: #fff; border: none; cursor: pointer;
  font-family: 'Manrope', sans-serif; font-weight: 700; font-size: 0.85rem;
  letter-spacing: 0.1em; text-transform: uppercase;
  padding: 0.9rem 2.4rem; border-radius: 8px; width: 100%; max-width: 320px;
  box-shadow: 0 4px 20px var(--vv-red-glow);
  transition: opacity 0.2s, transform 0.2s, box-shadow 0.2s;
}
.vv-test-btn:hover:not(:disabled) { transform: translateY(-2px); box-shadow: 0 8px 32px rgba(0,184,230,0.4); }
.vv-test-btn:disabled { opacity: 0.6; cursor: not-allowed; }
.vv-test-status {
  font-family: 'JetBrains Mono', monospace; font-size: 0.62rem;
  color: var(--vv-muted); letter-spacing: 0.1em; min-height: 1rem;
  text-align: center; text-transform: uppercase;
}
.vv-speed-tiers {
  display: flex; flex-direction: column; gap: 1rem;
  height: 100%; min-height: 100%;
  box-sizing: border-box;
}
.vv-speed-world {
  margin: 0 0 0.55rem;
  flex: 0 0 auto;
  width: 100%;
  max-height: 300px;
  display: flex; align-items: center; justify-content: center;
  min-height: 0;
  border: none;
  background: transparent !important;
  box-shadow: none;
  border-radius: 0;
  overflow: visible;
  padding: 0;
}
.vv-speed-world img {
  display: block;
  width: 100%;
  max-width: none;
  height: auto;
  max-height: 290px;
  object-fit: contain;
  object-position: center;
  transform: none;
  image-rendering: -webkit-optimize-contrast;
  background: transparent !important;
  mix-blend-mode: normal;
  filter: drop-shadow(0 0 18px rgba(0,229,255,0.18));
}
.vv-tiers-title {
  font-family: 'JetBrains Mono', monospace; font-size: 0.65rem;
  color: var(--vv-muted); letter-spacing: 0.2em; text-transform: uppercase;
  margin-bottom: 0.5rem;
}
.vv-tiers-list { display: flex; flex-direction: column; gap: 0.8rem; }
.vv-tier {
  background: var(--vv-card); border: 1px solid var(--vv-border);
  border-radius: 10px; padding: 1rem 1.2rem;
  display: flex; align-items: center; justify-content: space-between;
  transition: border-color 0.3s, background 0.3s, box-shadow 0.3s, transform 0.25s;
}
.vv-tier.vv-tier-active {
  border-color: rgba(34,197,94,0.4); background: rgba(34,197,94,0.05);
}
.vv-tier.vv-tier-best {
  border-color: rgba(0,229,255,0.55) !important;
  background: rgba(0,229,255,0.08) !important;
  box-shadow: 0 0 22px rgba(0,229,255,0.18);
  transform: translateX(2px);
}
.vv-tier-left { display: flex; align-items: center; gap: 0.9rem; }
.vv-tier-badge {
  font-family: 'Bebas Neue', sans-serif; font-size: 0.85rem;
  letter-spacing: 0.08em; padding: 0.25rem 0.6rem; border-radius: 5px;
  min-width: 36px; text-align: center;
}
.vv-tier-name { font-size: 0.88rem; font-weight: 600; color: var(--vv-text); }
.vv-tier-speed {
  font-family: 'JetBrains Mono', monospace; font-size: 0.6rem;
  color: var(--vv-muted); letter-spacing: 0.08em; margin-top: 2px;
}
.vv-tier-indicator {
  width: 10px; height: 10px; border-radius: 50%;
  background: var(--vv-border); transition: background 0.4s, box-shadow 0.4s;
}
.vv-tier.vv-tier-active .vv-tier-indicator {
  background: #22c55e; box-shadow: 0 0 10px rgba(34,197,94,0.5);
}
.vv-tier.vv-tier-best .vv-tier-indicator {
  background: #00E5FF; box-shadow: 0 0 12px rgba(0,229,255,0.65);
}
.vv-result-card {
  display: none;
  align-items: center;
  gap: 1rem 1.25rem;
  flex-wrap: wrap;
  background: #fff;
  border: 1px solid rgba(255,255,255,0.95);
  border-radius: 14px;
  padding: 1.15rem 1.25rem 1.15rem 1.35rem;
  text-align: left;
  box-shadow: 0 14px 40px rgba(0,0,0,.35);
  margin-top: 0.85rem;
}
.vv-result-card.is-open { display: flex; }
.vv-result-badge {
  flex: 0 0 auto;
  min-width: 3.1rem;
  height: 3.1rem;
  padding: 0 0.65rem;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: 'Bebas Neue', sans-serif;
  font-size: 1.35rem;
  letter-spacing: 0.06em;
  color: #0a0a12;
  background: linear-gradient(135deg, #00E5FF 0%, #7c5cff 100%);
}
.vv-result-body {
  flex: 1 1 180px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.85rem 1.1rem;
  flex-wrap: wrap;
  min-width: 0;
}
.vv-result-msg {
  flex: 1 1 160px;
  font-size: 0.92rem;
  font-weight: 650;
  color: #0a0a12;
  line-height: 1.45;
}
.vv-result-order {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 1.35rem;
  border-radius: 8px;
  background: #0a0a12 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: 'Manrope', sans-serif;
  font-weight: 700;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none !important;
  border: 1px solid #0a0a12;
  box-shadow: 0 6px 18px rgba(0,0,0,.22);
  transition: transform 0.2s, filter 0.2s;
}
.vv-result-order:hover {
  filter: brightness(1.08);
  transform: translateY(-1px);
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
@media (max-width: 900px) {
  .vv-speed-head { justify-content: center; text-align: center; margin-bottom: 2.35rem; }
  .vv-speed-wrap { grid-template-columns: 1fr; min-height: 0; }
  .vv-speed-tester, .vv-speed-tiers { height: auto; min-height: 0; }
  .vv-speed-world { width: 100%; max-height: 240px; }
  .vv-speed-world img { width: 100%; max-width: none; max-height: 230px; transform: none; object-fit: contain; }
  .vv-speed-frame-wrap {
    position: relative;
    min-height: 520px;
    height: auto;
    flex: none;
  }
  .vv-speed-frame-wrap #vvSpeedPanel { min-height: 520px; }
}


.vv-devices-layout {
  display: grid;
  grid-template-columns: minmax(380px, 1.2fr) minmax(280px, 0.95fr);
  gap: 1.5rem 1.5rem;
  align-items: center;
}
.vv-devices-left,
.vv-devices-right {
  display: flex;
  flex-direction: column;
  min-height: 0;
  width: 100%;
}
.vv-devices-left {
  order: 2;
  justify-content: center;
  gap: 1.35rem;
  max-width: none;
}
.vv-devices-right {
  order: 1;
  justify-content: center;
  align-items: center;
  gap: 0;
  min-height: 640px;
}
.vv-devices-copy {
  max-width: 560px;
  text-align: left;
}
.vv-devices-h2 {
  white-space: normal;
  font-size: clamp(1.85rem, 2.8vw, 3.1rem) !important;
  line-height: 1.1;
}
.vv-devices-copy .vv-lead { max-width: 480px; }
.vv-devices-lottie {
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  min-height: 640px;
  margin: 0;
  filter: drop-shadow(0 0 36px rgba(168,85,247,.32));
}
.vv-devices-lottie dotlottie-wc {
  width: min(760px, 100%) !important;
  height: min(760px, 72vw) !important;
  max-width: 100%;
  max-height: 780px;
}
.vv-devices-cta {
  margin-top: 0.35rem;
  align-self: flex-start;
  background: #fff !important;
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
  border: 1px solid #fff !important;
  box-shadow: 0 8px 28px rgba(0,0,0,0.35);
  font-weight: 700;
  letter-spacing: 0.04em;
}
.vv-devices-cta:hover {
  background: #f4f4f5 !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  transform: translateY(-1px);
}
/* Two vertical lines of device cards — slightly larger */
.vv-devices-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 12px;
  flex: 0 1 auto;
  align-content: start;
  width: 100%;
  max-width: 580px;
}
.vv-devices-col {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}
.vv-device-card {
  background: var(--vv-card); border: 1px solid var(--vv-border);
  border-radius: 11px;
  padding: 0.78rem 0.85rem;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 0.7rem;
  text-align: left;
  transition: background 0.2s, border-color 0.2s, transform 0.2s;
  cursor: default;
  aspect-ratio: auto;
  min-height: 0;
  height: auto;
  width: 100%;
  box-sizing: border-box;
}
.vv-device-card:hover {
  background: var(--vv-card2); border-color: rgba(255,255,255,0.28);
  transform: translateY(-2px);
}
.vv-device-icon {
  font-size: 1.35rem;
  line-height: 1;
  flex: 0 0 auto;
  width: 1.65rem;
  text-align: center;
}
.vv-device-meta {
  display: flex;
  flex-direction: column;
  gap: 0.18rem;
  min-width: 0;
  flex: 1 1 auto;
}
.vv-device-name {
  font-size: 0.86rem;
  font-weight: 700;
  color: var(--vv-text);
  line-height: 1.15;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.vv-device-apps {
  font-size: 0.58rem;
  color: var(--vv-muted);
  letter-spacing: 0.02em;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (max-width: 900px) {
  .vv-devices-layout {
    grid-template-columns: 1fr;
    gap: 0.55rem;
    text-align: center;
    align-items: start;
  }
  .vv-devices-right {
    order: 1;
    align-items: center;
    min-height: 0 !important;
    height: auto !important;
  }
  .vv-devices-left {
    order: 2;
    max-width: 560px;
    margin: 0 auto;
    width: 100%;
    align-items: center;
    gap: 1rem;
  }
  .vv-devices-copy { text-align: center; margin: 0 auto; }
  .vv-devices-copy .vv-lead { margin-left: auto; margin-right: auto; }
  .vv-devices-cta { margin-left: auto; margin-right: auto; align-self: center; }
  .vv-devices-grid { max-width: 480px; margin: 0 auto; }
  .vv-devices-lottie {
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
  }
  .vv-devices-lottie dotlottie-wc {
    width: min(320px, 78vw) !important;
    height: min(320px, 78vw) !important;
    max-height: 340px !important;
  }
}
@media (max-width: 480px) {
  .vv-devices-grid { gap: 8px; }
  .vv-device-card { padding: 0.65rem 0.7rem; }
  .vv-device-name { font-size: 0.78rem; }
  .vv-device-apps { font-size: 0.52rem; }
  .vv-devices-layout { gap: 0.35rem !important; }
  .vv-devices-lottie { min-height: 0 !important; }
  .vv-devices-lottie dotlottie-wc {
    width: min(280px, 76vw) !important;
    height: min(280px, 76vw) !important;
    max-height: 300px !important;
  }
}


.vv-download-layout {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 2.75rem;
  align-items: center;
}
.vv-download-visual {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  width: 100%;
}
.vv-download-visual .vv-devices-logos {
  align-self: center;
  max-width: 260px;
  margin-top: 3.5rem;
  padding-top: 0.35rem;
  text-align: center;
}
.vv-download-visual .vv-devices-logos img {
  display: block;
  max-width: 240px;
  width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}
.vv-download-btns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.7rem;
  margin-top: 1.6rem;
}
.vv-dl-btn {
  display: inline-flex; align-items: center; justify-content: center;
  text-align: center;
  padding: 0.72rem 0.9rem;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,0.16);
  background: rgba(255,255,255,0.04);
  color: #fff !important;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-decoration: none !important;
  transition: background 0.2s, border-color 0.2s, transform 0.2s;
}
.vv-dl-btn:hover {
  background: #fff !important;
  border-color: #fff !important;
  color: #0a0a12 !important;
  transform: translateY(-1px);
}
.vv-dl-primary {
  background: linear-gradient(135deg, #00E5FF 0%, #2F6BFF 55%, #7c5cff 100%) !important;
  border: 0 !important;
  color: #fff !important;
  box-shadow: 0 8px 24px rgba(0,229,255,0.25);
}
.vv-dl-primary:hover {
  background: linear-gradient(135deg, #7c5cff 0%, #2F6BFF 45%, #00E5FF 100%) !important;
  color: #fff !important;
  filter: none;
}
.vv-download-media {
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,0.1);
  background: #05070d;
  box-shadow: 0 24px 60px rgba(0,0,0,0.45), 0 0 40px rgba(0,229,255,0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.15rem 1.25rem;
  max-width: 92%;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}
.vv-download-lottie {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 92%;
  margin-left: auto;
  margin-right: 0;
  pointer-events: none;
  filter: drop-shadow(0 12px 36px rgba(0,229,255,0.18));
}
.vv-download-lottie dotlottie-wc {
  display: block;
  width: 280px !important;
  height: 280px !important;
  max-width: min(280px, 70vw);
  max-height: min(280px, 70vw);
}
.vv-download-media img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  border-radius: 10px;
  vertical-align: middle;
}
@media (max-width: 900px) {
  .vv-download-layout { grid-template-columns: 1fr; gap: 1.75rem; text-align: center; }
  .vv-download-btns { grid-template-columns: 1fr; max-width: 420px; margin-left: auto; margin-right: auto; }
  .vv-download-visual { align-items: center; }
  .vv-download-visual .vv-devices-logos { margin-top: 2rem; }
  .vv-download-media {
    max-width: 100%;
    margin: 0 auto;
    padding: 0.85rem;
  }
  .vv-download-lottie {
    max-width: 100%;
    margin: 0 auto;
  }
  .vv-download-lottie dotlottie-wc {
    width: 240px !important;
    height: 240px !important;
  }
}


.vv-faq-layout {
  display: grid; grid-template-columns: 1fr 1.6fr; gap: 4rem; align-items: start;
}
.vv-faq-list { display: flex; flex-direction: column; }
.vv-faq-item { border-bottom: 1px solid var(--vv-border); }
.vv-faq-q {
  width: 100%;
  background: transparent;
  background-color: transparent;
  background-image: none;
  border: none !important; cursor: pointer; box-shadow: none !important;
  color: var(--vv-text) !important; font-family: 'Manrope', sans-serif;
  font-size: 0.95rem; font-weight: 600; text-align: left;
  padding: 1.15rem 1rem; margin: 0 -0.35rem; border-radius: 10px;
  display: flex; justify-content: space-between; align-items: center;
  gap: 1rem;
  transition: color 0.22s ease, background-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}
.vv-faq-item:hover > .vv-faq-q,
.vv-faq-q:hover,
.vv-faq-q:focus,
.vv-faq-q:focus-visible,
.tc-v2-root .vv-faq-list .vv-faq-item .vv-faq-q:hover,
.vv-wrap .vv-faq-list .vv-faq-item .vv-faq-q:hover {
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  box-shadow: 0 8px 28px rgba(255,255,255,0.14) !important;
  outline: none !important;
}
.vv-faq-item:hover > .vv-faq-q .vv-faq-icon,
.vv-faq-q:hover .vv-faq-icon,
.vv-faq-q:focus .vv-faq-icon {
  color: #0a0a12 !important;
}
.vv-faq-q.open {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: transparent !important;
  background-color: transparent !important;
}
.vv-faq-item:hover > .vv-faq-q.open,
.vv-faq-q.open:hover,
.vv-faq-q.open:focus {
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
  background: #fff !important;
  background-color: #fff !important;
}
.vv-faq-icon {
  font-family: 'Bebas Neue', sans-serif; font-size: 1.4rem; color: var(--vv-red);
  transition: transform 0.3s, color 0.22s; flex-shrink: 0;
}
.vv-faq-icon::before { content: "+"; }
.vv-faq-q.open .vv-faq-icon { transform: rotate(45deg); }
.vv-faq-item:hover > .vv-faq-q.open .vv-faq-icon,
.vv-faq-q.open:hover .vv-faq-icon {
  color: #0a0a12 !important;
}
.vv-faq-a {
  display: none; color: var(--vv-muted2); font-size: 0.88rem;
  line-height: 1.8; padding: 0 1rem 1.4rem; font-weight: 400;
}
.vv-faq-a.show { display: block; animation: vvFadeUp 0.3s ease; }

@media (max-width: 900px) {
  .vv-faq-layout { grid-template-columns: 1fr; gap: 2rem; }
}


.vv-final-cta {
  position: relative;
  padding-top: 2.25rem !important;
  padding-bottom: 3.25rem !important;
  overflow: hidden;
}
/* Wide horizontal band — icon | copy (fills) | buttons (right) */
.vv-final-cta-inner {
  position: relative;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1.35rem 1.75rem;
  text-align: left;
  width: 100%;
  max-width: min(1320px, 100%);
  margin: 0 auto;
  padding: 2.35rem 2.25rem;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,0.18);
  background: linear-gradient(105deg, #00E5FF 0%, #2F6BFF 48%, #7c5cff 100%) !important;
  box-shadow: 0 20px 60px rgba(47,107,255,0.35), inset 0 1px 0 rgba(255,255,255,0.2);
}
.vv-trial-lottie {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
  margin: 0;
  filter: drop-shadow(0 0 16px rgba(0,0,0,0.25));
}
.vv-trial-lottie dotlottie-wc {
  display: block;
  width: 150px !important;
  height: 150px !important;
  max-width: 150px;
}
.vv-final-cta-copy {
  flex: 1 1 auto;
  min-width: 0;
  max-width: none;
  text-align: left;
}
.vv-final-cta-inner .vv-h2 {
  margin: 0.2rem 0 0.55rem;
  line-height: 1.05;
  white-space: normal;
  font-size: clamp(2.15rem, 3.4vw, 3.15rem) !important;
  letter-spacing: 0.02em;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-shadow: 0 2px 18px rgba(0,0,0,0.2);
}
.vv-final-cta-inner .vv-h2 span,
.vv-final-cta-inner .vv-h2 .vv-trial-brand {
  color: #00E5FF !important;
  -webkit-text-fill-color: #00E5FF !important;
  background: none !important;
  opacity: 1;
}
.vv-final-cta-inner .vv-lead {
  margin: 0;
  max-width: 52ch;
  color: rgba(255,255,255,0.98);
  font-size: 1.08rem;
  line-height: 1.62;
  font-weight: 500;
  opacity: 1;
}
.vv-final-cta-inner .vv-eyebrow {
  font-size: 0.88rem;
  letter-spacing: 0.22em;
  margin: 0;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
.vv-final-cta-btns {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 0.75rem 0.9rem;
  justify-content: flex-end !important;
  align-items: center;
  margin: 0 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto;
}
.vv-final-cta-btns .vv-btn {
  min-width: 0;
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  white-space: nowrap;
  justify-content: center;
  display: inline-flex !important;
  box-sizing: border-box;
}
.vv-final-cta-btns .vv-trial-primary {
  font-size: 0.92rem !important;
  letter-spacing: 0.06em;
  padding: 1.05rem 1.55rem !important;
  line-height: 1.15;
  background: #fff !important;
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
  border: none !important;
  box-shadow: 0 8px 28px rgba(0,0,0,0.22);
  font-weight: 700;
  border-radius: 999px !important;
}
.vv-final-cta-btns .vv-trial-primary:hover {
  background: #0a0a12 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 8px 28px rgba(0,0,0,0.35);
}
.vv-final-cta-btns .vv-btn-outline {
  font-size: 0.88rem !important;
  padding: 1rem 1.35rem !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 1.5px solid #fff !important;
  box-shadow: none !important;
  border-radius: 999px !important;
}
.vv-final-cta-btns .vv-btn-outline:hover {
  background: #fff !important;
  background-color: #fff !important;
  color: #0a0a12 !important;
  -webkit-text-fill-color: #0a0a12 !important;
  border-color: #fff !important;
  box-shadow: 0 8px 28px rgba(255,255,255,0.22) !important;
}
@media (max-width: 1100px) {
  .vv-final-cta-inner {
    flex-wrap: wrap !important;
    padding: 1.5rem 1.35rem;
    gap: 1.15rem 1.25rem;
  }
  .vv-final-cta-copy { flex: 1 1 280px; }
  .vv-final-cta-inner .vv-h2 { white-space: normal; }
  .vv-final-cta-btns {
    flex: 1 1 100%;
    justify-content: flex-start !important;
    width: 100% !important;
  }
}
@media (max-width: 600px) {
  .vv-final-cta-inner {
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 1.75rem 1.2rem;
    border-radius: 14px;
  }
  .vv-trial-lottie { align-self: center; margin-left: auto; margin-right: auto; }
  .vv-trial-lottie dotlottie-wc { width: 110px !important; height: 110px !important; max-width: 110px; }
  .vv-final-cta-copy { text-align: left; }
  .vv-final-cta-inner .vv-lead { margin: 0; max-width: 100%; }
  .vv-final-cta-inner .vv-h2 { font-size: clamp(1.7rem, 7.5vw, 2.25rem) !important; }
  .vv-final-cta-btns {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    gap: 0.55rem;
    width: 100% !important;
  }
  .vv-final-cta-btns .vv-btn {
    flex: 1 1 0 !important;
    white-space: nowrap;
    text-align: center;
    line-height: 1.25;
  }
  .vv-final-cta-btns .vv-trial-primary {
    font-size: 0.74rem !important;
    padding: 0.9rem 0.7rem !important;
    letter-spacing: 0.04em;
  }
  .vv-final-cta-btns .vv-btn-outline {
    font-size: 0.74rem !important;
    padding: 0.9rem 0.7rem !important;
  }
}


/* Footer — frosted / blurry glass band */
.vv-footer {
  position: relative;
  z-index: 4;
  background: rgba(6, 10, 18, 0.42);
  backdrop-filter: blur(22px) saturate(1.35);
  -webkit-backdrop-filter: blur(22px) saturate(1.35);
  border-top: 1px solid rgba(255,255,255,0.12);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.06),
    0 -24px 48px rgba(0,0,0,0.35);
  padding: 0 3rem 2.75rem;
  isolation: isolate;
  overflow: hidden;
}
.vv-footer-map {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.vv-footer-map img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center center;
  opacity: 0.28;
  filter: saturate(0.9) brightness(1.05);
  user-select: none;
  -webkit-user-drag: none;
  transform: none;
  image-rendering: auto;
}
.vv-footer > .vv-max {
  position: relative;
  z-index: 1;
  width: 100%;
  border-top: none;
  padding-top: 4rem;
  box-sizing: border-box;
}

.vv-footer-grid {
  display: grid;
  grid-template-columns: 2fr repeat(3, 1fr);
  gap: 2.75rem 3rem;
  margin-bottom: 0;
  padding-bottom: 3rem;
}

.vv-footer-tag {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.62rem; letter-spacing: 0.12em; text-transform: uppercase;
  color: #00E5FF; margin: 0.45rem 0 0.7rem;
}
.vv-footer-logo {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 2rem;
  letter-spacing: 0.06em;
  color: #fff;
  margin-bottom: 0.35rem;
}

.vv-footer-desc {
  font-size: 0.88rem;
  color: rgba(220, 222, 230, 0.78);
  line-height: 1.7;
  max-width: 320px;
  font-weight: 400;
  margin: 0;
}

.vv-footer-col h4 {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.62rem;
  letter-spacing: 0.22em;
  color: #00E5FF;
  text-transform: uppercase;
  margin: 0 0 1.15rem;
}

.vv-footer-col a {
  display: block;
  color: rgba(220, 222, 230, 0.82);
  text-decoration: none;
  font-size: 0.9rem;
  margin-bottom: 0.65rem;
  transition: color 0.2s;
  font-weight: 400;
}

.vv-footer-col a:hover {
  color: #fff !important;
}

.vv-footer-bottom {
  width: 100%;
  box-sizing: border-box;
  border-top: 1px solid rgba(255,255,255,0.12);
  padding: 1.35rem 0 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem 1.25rem;
}

.vv-footer-copy,
.vv-footer-meta {
  margin: 0;
  font-family: 'Manrope', sans-serif;
  font-size: 0.78rem;
  color: rgba(255,255,255,0.72);
  letter-spacing: 0.02em;
  line-height: 1.45;
}
.vv-footer-meta {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.45rem 0.55rem;
  justify-content: flex-end;
}
.vv-footer-meta a {
  color: rgba(255,255,255,0.72) !important;
  text-decoration: none !important;
  transition: color 0.2s;
}
.vv-footer-meta a:hover { color: #fff !important; }
.vv-footer-meta span { color: rgba(255,255,255,0.35); }

@media (max-width: 900px) {
  .vv-footer { padding: 0 1.5rem 2rem; }
  .vv-footer > .vv-max { padding-top: 3rem; }
  .vv-footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem; padding-bottom: 2.25rem; }
  .vv-footer-bottom { flex-direction: column; align-items: flex-start; }
  .vv-footer-meta { justify-content: flex-start; }
}

@media (max-width: 480px) {
  .vv-footer-grid { grid-template-columns: 1fr; }
}


/* ============================================================
   FLUID RESPONSIVE — all resolutions (phone → ultrawide)
   Loaded last so it wins over section-local media queries.
   ============================================================ */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
html, body, .tc-v2-root {
  max-width: 100%;
  overflow-x: clip;
}
.tc-v2-root img,
.tc-v2-root video,
.tc-v2-root iframe,
.tc-v2-root canvas,
.tc-v2-root svg,
.tc-v2-root dotlottie-wc {
  max-width: 100% !important;
  height: auto;
}
.tc-v2-root iframe { width: 100% !important; }
.vv-wrap, .vv-max, .vv-hero-inner, .vv-section, .vv-section-alt {
  box-sizing: border-box;
  max-width: 100%;
}
.vv-max {
  width: 100%;
  padding-inline: clamp(0.85rem, 2.4vw, 2rem);
}

/* ---- Ultrawide / large desktop ---- */
@media (min-width: 1600px) {
  .vv-hero-inner { max-width: min(1760px, 92vw) !important; gap: clamp(2rem, 3vw, 4.5rem) !important; }
  .vv-hero-h1 { font-size: clamp(3.4rem, 4.2vw, 5.2rem) !important; }
  .vv-max { max-width: min(1400px, 90vw); margin-inline: auto; }
}
@media (min-width: 1920px) {
  .vv-hero-inner { max-width: min(1840px, 90vw) !important; }
  .vv-hero-section { padding-inline: clamp(1rem, 2vw, 3rem) !important; }
}

/* ---- Laptop / small desktop: fix rigid 480px hero column ---- */
@media (max-width: 1400px) and (min-width: 1101px) {
  .vv-hero-inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr) !important;
    max-width: min(1280px, 96vw) !important;
    gap: clamp(1.25rem, 2.5vw, 2.75rem) !important;
  }
  .vv-hero-text { max-width: min(560px, 100%) !important; }
  .vv-hero-lottie dotlottie-wc {
    width: min(400px, 100%) !important;
    height: min(400px, 42vw) !important;
  }
}
@media (max-width: 1100px) and (min-width: 901px) {
  .vv-hero-inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr) !important;
    max-width: min(1040px, 96vw) !important;
    gap: 1.25rem !important;
  }
  .vv-hero-text { max-width: 100% !important; }
  .vv-hero-h1 { font-size: clamp(2.4rem, 4.5vw, 3.4rem) !important; }
  .vv-hero-lottie { width: min(320px, 100%) !important; }
  .vv-hero-lottie dotlottie-wc {
    width: min(320px, 36vw) !important;
    height: min(320px, 36vw) !important;
  }
  .vv-app-float-grid .vv-app-cell { width: 108px !important; padding: 0.85rem 0.55rem !important; }
  .vv-plans-row-4 { grid-template-columns: repeat(2, 1fr) !important; }
  .vv-feat-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .vv-devices-layout { grid-template-columns: 1fr 1fr !important; gap: 1rem !important; }
  .vv-download-layout, .vv-faq-layout, .vv-term-layout, .vv-speed-wrap {
    grid-template-columns: 1fr 1fr !important;
    gap: 1.5rem !important;
  }
  .vv-nav-links { gap: 0.25rem 1.1rem !important; }
  .vv-nav-links a { font-size: 0.92rem !important; }
}

/* ---- Tablet / fold to stacked hero ---- */
@media (max-width: 900px) {
  .vv-hero-inner {
    display: flex !important;
    flex-direction: column !important;
    max-width: 100% !important;
    gap: 0.75rem !important;
    padding-inline: 0 !important;
  }
  .vv-hero-section {
    min-height: 0 !important;
    /* Moderate mobile padding — reduced from large clamp, not flush */
    padding: 0.85rem 1rem 0 !important;
  }
  .vv-hero-text { max-width: 100% !important; width: 100% !important; }
  .vv-hero-h1 {
    font-size: clamp(2.05rem, 8.2vw, 2.85rem) !important;
    line-height: 0.94 !important;
  }
  .vv-hero-sub { font-size: clamp(0.78rem, 2.8vw, 0.92rem) !important; }
  .vv-hero-btns {
    flex-wrap: wrap !important;
    gap: 0.45rem !important;
  }
  .vv-hero-section .vv-btn {
    flex: 0 1 auto !important;
    white-space: nowrap !important;
  }
  .vv-hero-trust {
    width: 100% !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-template-columns: unset !important;
    overflow: visible !important;
    -webkit-overflow-scrolling: auto;
    scrollbar-width: none;
    gap: 0.15rem !important;
  }
  .vv-hero-trust::-webkit-scrollbar { display: none; }
  .vv-hero-trust .vv-trust-item,
  .vv-hero-trust .vv-trust-item:nth-child(n+5) {
    display: flex !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
  }
  .vv-soft-shade {
    display: none !important;
  }
  .vv-soft-shade--player {
    display: block !important;
    inset: 0 !important;
    left: 0 !important;
    right: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    height: auto !important;
    border-radius: 18px !important;
    z-index: 20 !important;
    background: linear-gradient(
      to top,
      #000 0%,
      rgba(0, 0, 0, 0.95) 10%,
      rgba(0, 0, 0, 0.7) 28%,
      rgba(0, 0, 0, 0.42) 50%,
      rgba(0, 0, 0, 0.2) 72%,
      rgba(0, 0, 0, 0.08) 100%
    ) !important;
    box-shadow: none !important;
  }
  .vv-app-window-stats {
    overflow: hidden !important;
    border-bottom: none !important;
    -webkit-mask-image: linear-gradient(to top, transparent 0%, #000 22px, #000 100%) !important;
    mask-image: linear-gradient(to top, transparent 0%, #000 22px, #000 100%) !important;
  }
  .vv-hero-mockup, .vv-hero-stage, .vv-app-window-stats {
    width: 100% !important;
    max-width: 100% !important;
  }
  .vv-hero-lottie {
    margin-inline: auto !important;
    width: min(260px, 62vw) !important;
  }
  .vv-hero-lottie dotlottie-wc {
    width: min(260px, 62vw) !important;
    height: min(260px, 62vw) !important;
  }
  .vv-plans-row, .vv-plans-row-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .vv-steps-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .vv-feat-grid, .vv-ch-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .vv-feat-large { grid-column: 1 / -1 !important; }
  .vv-devices-layout,
  .vv-download-layout,
  .vv-faq-layout,
  .vv-term-layout,
  .vv-speed-wrap,
  .vv-final-cta-inner {
    grid-template-columns: 1fr !important;
    display: grid !important;
  }
  .vv-final-cta-inner {
    flex-direction: column !important;
    text-align: center !important;
    align-items: center !important;
    padding: 1.5rem 1.15rem !important;
  }
  .vv-final-cta-btns {
    width: 100% !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
  }
  .vv-pricing-controls {
    flex-direction: column !important;
    align-items: center !important;
  }
  .vv-guides-viewport { margin-inline: 2.2rem !important; }
  .vv-guide-card {
    flex-basis: min(240px, 72vw) !important;
    width: min(240px, 72vw) !important;
  }
}

/* ---- Large phones ---- */
@media (max-width: 640px) {
  .vv-plans-row, .vv-plans-row-4,
  .vv-steps-grid {
    grid-template-columns: 1fr !important;
  }
  .vv-plan-card { width: 100% !important; max-width: 100% !important; }
  .vv-devices-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .vv-footer-grid { grid-template-columns: 1fr 1fr !important; }
  .vv-app-stats {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
  }
  .vv-app-stat-sep { display: none !important; }
  .vv-download-btns {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
  }
  .vv-dl-btn { width: 100% !important; justify-content: center !important; }
}

/* ---- Small phones ---- */
@media (max-width: 480px) {
  .vv-max { padding-inline: 0.85rem !important; }
  .vv-section, .vv-section-alt { padding: 2.85rem 0.85rem !important; }
  .vv-h2 { font-size: clamp(1.85rem, 8.5vw, 2.55rem) !important; }
  .vv-feat-grid, .vv-ch-grid, .vv-footer-grid {
    grid-template-columns: 1fr !important;
  }
  .vv-devices-grid { grid-template-columns: 1fr 1fr !important; gap: 0.55rem !important; }
  .vv-hero-trust .vv-trust-item { min-width: 4.2rem !important; }
  .vv-trust-num { font-size: clamp(1.25rem, 6vw, 1.65rem) !important; }
  .vv-trust-item { font-size: 0.62rem !important; }
  .vv-scroll-cue--dock { display: none !important; }
  .vv-wa-float {
    width: 48px !important; height: 48px !important;
    bottom: calc(22px + env(safe-area-inset-bottom, 0px)) !important;
    right: 12px !important;
  }
  .vv-back-top {
    width: 42px !important; height: 42px !important;
    bottom: calc(82px + env(safe-area-inset-bottom, 0px)) !important;
    right: 12px !important;
  }
}

/* ---- Tiny / notch phones ---- */
@media (max-width: 360px) {
  .vv-hero-h1 { font-size: clamp(1.7rem, 9vw, 2.1rem) !important; }
  .vv-logo { font-size: 1.15rem !important; }
  .vv-hero-btns .vv-btn { padding: 0.55rem 0.85rem !important; font-size: 0.68rem !important; }
  .vv-devices-grid { grid-template-columns: 1fr !important; }
  .vv-app-stats { grid-template-columns: 1fr !important; }
}

/* ---- Short landscape phones / foldables ---- */
@media (max-height: 500px) and (orientation: landscape) {
  .vv-hero-section {
    min-height: 0 !important;
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
  }
  .vv-hero-lottie dotlottie-wc {
    width: min(180px, 28vw) !important;
    height: min(180px, 28vw) !important;
  }
  .vv-app-float-grid { display: none !important; }
  .vv-float-uptime { display: none !important; }
  .vv-scroll-cue { display: none !important; }
}

/* ---- Reduced motion ---- */
@media (prefers-reduced-motion: reduce) {
  .vv-soft-shade,
  .vv-soft-shade--player {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
}
