.v2-landing{overflow-x:hidden}.v2-brand img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 0 18px rgba(226,63,196,.28))}.v2-brand>span{display:flex;align-items:baseline;gap:9px}.v2-brand i{display:none}.v2-nav{backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.v2-nav .v2-shell{position:relative}.v2-nav .v2-shell:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(167,129,255,.42),transparent)}
.v2-ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.v2-ambient i{position:absolute;width:44vw;height:44vw;border-radius:50%;filter:blur(110px);opacity:.12;animation:v2drift 18s ease-in-out infinite alternate}.v2-ambient i:nth-child(1){background:#d44dff;left:-18vw;top:5vh}.v2-ambient i:nth-child(2){background:#346bff;right:-20vw;top:35vh;animation-delay:-7s}.v2-ambient i:nth-child(3){background:#ff8a68;left:30vw;bottom:-35vw;animation-delay:-12s}@keyframes v2drift{to{transform:translate3d(8vw,5vh,0) scale(1.16)}}
.v2-hero{padding-top:104px}.v2-hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(340px,.72fr);gap:clamp(30px,5vw,84px);align-items:center}.v2-hero-copy{position:relative;z-index:3;min-width:0}.v2-hero h1{font-size:clamp(62px,6.5vw,104px);max-width:900px}.hero-3d{height:600px;min-width:0}.hero-device{width:315px;height:558px}.hero-device-copy h3{font-size:34px}.v2-float.one{left:-5%;top:15%}.v2-float.two{right:-7%;bottom:13%}.v2-note{flex-wrap:wrap}
.v2-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.v2-faq details{border:1px solid rgba(255,255,255,.1);border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.025));box-shadow:inset 0 1px rgba(255,255,255,.06);transition:border-color .25s,transform .25s}.v2-faq details:hover{border-color:rgba(189,137,255,.34);transform:translateY(-2px)}.v2-faq summary{list-style:none;cursor:pointer;padding:24px 58px 24px 25px;font-weight:700;position:relative}.v2-faq summary::-webkit-details-marker{display:none}.v2-faq summary:after{content:'+';position:absolute;right:24px;top:18px;font-size:27px;font-weight:300;color:#d897ff;transition:transform .25s}.v2-faq details[open] summary:after{transform:rotate(45deg)}.v2-faq details p{margin:0;padding:0 25px 25px;color:rgba(255,255,255,.62);line-height:1.7}.v2-cta-logo{width:90px;height:90px;object-fit:contain;filter:drop-shadow(0 0 30px rgba(238,76,206,.38));margin-bottom:18px}.v2-footer{border-top:1px solid rgba(255,255,255,.08);padding:34px 0 42px}.v2-footer .v2-shell{display:flex;align-items:center;gap:30px}.v2-footer p{color:rgba(255,255,255,.48);margin-right:auto}.v2-footer>div>div{display:flex;gap:20px}.v2-footer a{color:inherit;text-decoration:none}.v2-footer .v2-brand img{width:36px;height:36px}
.modal-open{overflow:hidden}.lead-modal[hidden]{display:none}.lead-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;opacity:0;transition:opacity .22s}.lead-modal.open{opacity:1}.lead-backdrop{position:absolute;inset:0;background:rgba(5,4,9,.8);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.lead-dialog{position:relative;width:min(680px,100%);max-height:min(850px,calc(100vh - 32px));overflow:auto;padding:clamp(28px,5vw,52px);border:1px solid rgba(255,255,255,.14);border-radius:32px;background:radial-gradient(circle at 90% 0,rgba(131,77,213,.25),transparent 34%),#15101a;box-shadow:0 40px 140px rgba(0,0,0,.7);transform:translateY(18px) scale(.98);transition:transform .22s}.lead-modal.open .lead-dialog{transform:none}.lead-dialog h2{font-size:clamp(34px,5vw,55px);letter-spacing:-.055em;margin:14px 0 12px}.lead-dialog>p{color:rgba(255,255,255,.6);line-height:1.65;margin-bottom:28px}.lead-close{position:absolute;right:20px;top:20px;width:40px;height:40px;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(255,255,255,.05);color:#fff;font-size:25px;cursor:pointer}.lead-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.lead-fields label{display:grid;gap:8px;font-size:12px;font-weight:700;color:rgba(255,255,255,.7)}.lead-fields input,.lead-fields select,.lead-fields textarea{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.055);color:#fff;padding:14px;font:inherit;outline:none}.lead-fields select option{color:#111}.lead-fields input:focus,.lead-fields select:focus,.lead-fields textarea:focus{border-color:#b86fff;box-shadow:0 0 0 3px rgba(184,111,255,.12)}.lead-wide{grid-column:1/-1}.lead-consent{display:flex;align-items:flex-start;gap:10px;margin:18px 0;color:rgba(255,255,255,.58);font-size:12px;line-height:1.5}.lead-consent input{margin-top:3px}.lead-trap{position:absolute!important;left:-9999px!important}.lead-submit{width:100%;justify-content:center}.lead-status{min-height:22px;font-size:13px}.lead-status.success{color:#80e9ba}.lead-status.error{color:#ff8d94}
@media(max-width:1100px){.v2-hero h1{font-size:clamp(58px,7.2vw,78px)}.v2-float.one{left:-2%}.v2-float.two{right:-2%}}
@media(max-width:980px){.v2-hero{padding-top:130px}.v2-hero-grid{gap:18px}.v2-hero-copy{max-width:760px}.hero-3d{height:570px;width:min(100%,620px);margin:10px auto 0}.hero-device{width:310px;height:548px}.v2-float.one{left:4%}.v2-float.two{right:3%}}
@media(max-width:680px){.v2-brand img{width:36px;height:36px}.v2-brand>span{gap:7px}.v2-nav-links .v2-btn{display:inline-flex;padding:11px 14px;font-size:12px}.v2-hero{padding-top:110px}.v2-hero-grid{gap:22px}.v2-hero h1{font-size:clamp(48px,14vw,64px);line-height:.94}.v2-lead{font-size:17px}.v2-actions{display:grid}.v2-actions>*{width:100%;justify-content:center}.v2-note{gap:9px 14px}.hero-3d{height:450px;width:100%;overflow:visible}.hero-device{width:250px;height:440px;border-radius:38px}.hero-device img,.hero-device:after{border-radius:31px}.hero-device-copy{left:28px;right:28px;bottom:27px}.hero-device-copy h3{font-size:28px}.v2-faq-grid{grid-template-columns:1fr}.v2-faq summary{padding:21px 52px 21px 20px}.v2-faq details p{padding:0 20px 22px}.v2-footer .v2-shell{align-items:flex-start;flex-direction:column;gap:18px}.v2-footer p{margin:0}.lead-fields{grid-template-columns:1fr}.lead-wide{grid-column:auto}.lead-dialog{border-radius:25px;padding:30px 20px}.lead-close{right:14px;top:14px}}
@media(prefers-reduced-motion:reduce){.v2-ambient i{animation:none}.lead-dialog,.lead-modal,.v2-faq details{transition:none}}

/* True transparent brand asset and interactive future layer */
.v2-brand img,.v2-cta-logo{content:url('/assets/favicon.png')}.future-field{position:fixed;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none;opacity:.72}.v2-landing:before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(520px circle at var(--spot-x,68%) var(--spot-y,18%),rgba(149,75,255,.19),transparent 62%)}.v2-hero:after{content:'';position:absolute;width:520px;height:520px;right:4vw;top:18%;border:1px solid rgba(191,124,255,.16);border-radius:50%;box-shadow:0 0 90px rgba(126,62,255,.12),inset 0 0 90px rgba(126,62,255,.06);animation:futureOrbit 14s linear infinite;pointer-events:none}.hero-device{box-shadow:35px 70px 120px rgba(0,0,0,.55),0 0 70px rgba(137,73,255,.22)}.hero-device:before{content:'';position:absolute;inset:-2px;border-radius:50px;padding:1px;background:linear-gradient(130deg,transparent 15%,rgba(217,117,255,.9),rgba(92,202,255,.8),transparent 72%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;z-index:4;pointer-events:none;animation:futurePulse 3.6s ease-in-out infinite}.v2-template{transform-style:preserve-3d;transition:transform .32s ease,box-shadow .32s ease}.v2-template:hover{transform:translateY(-8px) perspective(900px) rotateX(1.5deg);box-shadow:0 34px 80px rgba(65,24,94,.28)}@keyframes futureOrbit{to{transform:rotate(360deg)}}@keyframes futurePulse{50%{opacity:.35;filter:brightness(1.45)}}
@media(max-width:680px){.future-field{opacity:.42}.v2-hero:after{width:330px;height:330px;right:-130px;top:48%}}
@media(prefers-reduced-motion:reduce){.v2-hero:after,.hero-device:before{animation:none}}

/* Contained phone stage — every layer stays inside the hero composition */
.v2-hero-grid{grid-template-columns:minmax(0,1fr) minmax(390px,430px);gap:clamp(34px,4vw,64px)}.hero-3d{height:530px;isolation:isolate}.hero-device{width:276px;height:488px;border-radius:42px;box-shadow:24px 48px 90px rgba(0,0,0,.52),0 0 58px rgba(137,73,255,.2)}.hero-device img,.hero-device:after{border-radius:34px}.hero-device-copy{left:30px;right:30px;bottom:30px}.hero-device-copy h3{font-size:29px}.hero-device-copy .v2-btn{padding:12px 16px;font-size:12px}.v2-float{z-index:5;max-width:168px}.v2-float.one{left:0;top:17%}.v2-float.two{right:0;bottom:10%}.v2-hero:after{width:440px;height:440px;right:2.2vw;top:21%}.v2-cta-wordmark{display:inline-flex;align-items:baseline;gap:11px;margin-bottom:24px;font-size:clamp(30px,4vw,48px);font-weight:800;letter-spacing:-.055em;line-height:1;background:linear-gradient(100deg,#fff 12%,#eea6ff 52%,#8ddcff);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 38px rgba(194,95,255,.24)}.v2-cta-wordmark:before{content:'';width:10px;height:10px;border-radius:50%;align-self:center;background:#d8ff6a;box-shadow:0 0 18px #d8ff6a}.v2-cta-wordmark small{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:rgba(255,255,255,.5);-webkit-text-fill-color:rgba(255,255,255,.5)}
@media(max-width:1100px) and (min-width:981px){.v2-hero-grid{grid-template-columns:minmax(0,1fr) 380px}.hero-3d{height:500px}.hero-device{width:258px;height:456px}.v2-float.one{left:-4px}.v2-float.two{right:-3px}}
@media(max-width:980px){.v2-hero-grid{grid-template-columns:1fr}.hero-3d{height:510px;width:min(100%,560px);overflow:hidden;border-radius:42px;margin-top:32px}.hero-device{width:270px;height:478px}.v2-float.one{left:18px}.v2-float.two{right:18px}.v2-hero:after{right:-90px;top:52%}}
@media(max-width:680px){.hero-3d{height:410px;width:100%;border-radius:30px;margin-top:18px}.hero-device{width:218px;height:386px;border-radius:34px}.hero-device img,.hero-device:after{border-radius:27px}.hero-device-copy{left:23px;right:23px;bottom:22px}.hero-device-copy h3{font-size:23px}.hero-device-copy p{display:none}.v2-float{display:block;scale:.78;max-width:140px}.v2-float.one{left:-13px;top:12%;transform-origin:left center}.v2-float.two{display:none}.v2-hero:after{width:300px;height:300px;right:-140px;top:55%}.v2-cta-wordmark{font-size:36px}}
@media(min-width:1101px){.hero-3d{height:490px}.hero-device{width:260px;height:458px}}

/* Continuous starfield — every section rides the same dark future sky */
.v2-landing .v2-hero{background:radial-gradient(circle at 70% 30%,rgba(56,32,68,.85) 0,transparent 42%)}
.v2-landing .v2-section{background:transparent;color:#fff}
.v2-landing .v2-section-head>p{color:rgba(255,255,255,.6)}
.v2-landing .v2-benefits{background:transparent;color:#fff}
.v2-landing .v2-benefits .v2-section-head>p{color:rgba(255,255,255,.6)}
.v2-landing .v2-cta{background:transparent}
.v2-landing .v2-template{box-shadow:0 30px 80px rgba(0,0,0,.45)}
.v2-landing .v2-section,.v2-landing .v2-cta{position:relative;z-index:1}
@media(max-width:680px){.v2-landing .v2-section{padding:78px 0}}

/* Cards as instruments — violet glass, lit edges, spotlight response */
.v2-landing .v2-benefit{position:relative;isolation:isolate;border:1px solid transparent;border-radius:28px;background:linear-gradient(165deg,rgba(38,24,52,.72),rgba(19,13,26,.85)) padding-box,linear-gradient(150deg,rgba(190,140,255,.5),rgba(190,140,255,.06) 42%,rgba(140,214,255,.28)) border-box;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:inset 0 1px rgba(255,255,255,.09),0 22px 60px rgba(10,4,18,.45);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.v2-landing .v2-benefit:before{content:'';position:absolute;inset:0;border-radius:inherit;z-index:-1;background:radial-gradient(320px circle at 50% -10%,rgba(168,106,255,.16),transparent 68%);opacity:0;transition:opacity .4s}
.v2-landing .v2-benefit:hover{transform:translateY(-6px);box-shadow:inset 0 1px rgba(255,255,255,.12),0 30px 80px rgba(30,10,50,.55)}
.v2-landing .v2-benefit:hover:before{opacity:1}
.v2-landing .v2-benefit b{color:var(--v2-lime);text-shadow:0 0 34px rgba(216,255,106,.3)}
.v2-landing .v2-benefit p{color:rgba(255,255,255,.6)}
.v2-landing .v2-faq details{border:1px solid transparent;background:linear-gradient(165deg,rgba(34,22,46,.66),rgba(18,12,24,.8)) padding-box,linear-gradient(150deg,rgba(190,140,255,.34),rgba(190,140,255,.05) 55%) border-box;box-shadow:inset 0 1px rgba(255,255,255,.06)}
.v2-landing .v2-faq details:hover{border-color:transparent;background:linear-gradient(165deg,rgba(42,27,58,.72),rgba(20,13,27,.82)) padding-box,linear-gradient(150deg,rgba(206,158,255,.6),rgba(190,140,255,.1) 60%) border-box}
.v2-landing .v2-faq details[open]{background:linear-gradient(165deg,rgba(46,30,64,.78),rgba(21,14,28,.86)) padding-box,linear-gradient(150deg,rgba(216,255,106,.4),rgba(190,140,255,.14) 60%) border-box}
.v2-landing .v2-float{background:linear-gradient(160deg,rgba(44,26,60,.72),rgba(22,13,30,.85));border-color:rgba(200,150,255,.26)}
.v2-landing .v2-note span{padding:7px 13px;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:rgba(255,255,255,.04)}

/* Quiet logo — no halo behind the transparent mark */
.v2-brand img{filter:none}
.v2-cta-logo{filter:drop-shadow(0 4px 22px rgba(0,0,0,.4))}

/* Tactile controls and a11y focus */
.v2-btn:active{transform:translateY(1px) scale(.98)}
.v2-btn.primary{background:linear-gradient(140deg,#ff8a68,#ff6a4e);box-shadow:0 12px 34px rgba(255,116,88,.32),inset 0 1px rgba(255,255,255,.35)}
.v2-btn.primary:hover{box-shadow:0 18px 44px rgba(255,116,88,.44),inset 0 1px rgba(255,255,255,.4)}
.v2-btn:focus-visible,.v2-nav-links a:focus-visible,.v2-faq summary:focus-visible{outline:2px solid #d8ff6a;outline-offset:3px;border-radius:8px}
::selection{background:rgba(168,106,255,.45);color:#fff}

/* Scroll reveal — cascading entries, gated behind no-preference */
@media(prefers-reduced-motion:no-preference){
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.reveal.in{opacity:1;transform:none}
}
