/* RVCX cinematic 3D hero — GPU friendly, no WebGL dependency */
.rvcx-cinematic-host{position:relative!important;overflow:hidden!important;isolation:isolate;transform:translateZ(0)}
.rvcx-cinematic-host>.rvcx-cinematic-scene{position:absolute;inset:0;pointer-events:none;z-index:0;perspective:1100px;contain:layout paint style;overflow:hidden}
.rvcx-cinematic-host>*:not(.rvcx-cinematic-scene){position:relative;z-index:2}
.rvcx-cinematic-scene *{box-sizing:border-box;backface-visibility:hidden;transform-style:preserve-3d;will-change:transform,opacity}
.rvcx-cinema-grid{position:absolute;inset:-25%;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:44px 44px;transform:rotateX(68deg) translate3d(0,28%, -180px);mask-image:linear-gradient(to bottom,transparent 4%,#000 42%,transparent 85%)}
.rvcx-cinema-aurora{position:absolute;border-radius:50%;filter:blur(50px);opacity:.38;animation:rvcxOrb 9s ease-in-out infinite alternate}
.rvcx-cinema-aurora.a{width:38%;height:58%;right:5%;top:-18%;background:radial-gradient(circle,#7c3aed,transparent 68%)}
.rvcx-cinema-aurora.b{width:34%;height:52%;right:24%;bottom:-24%;background:radial-gradient(circle,#06b6d4,transparent 70%);animation-delay:-4s}
.rvcx-cinema-orbit{position:absolute;width:min(38vw,480px);aspect-ratio:1;right:1.5%;top:50%;translate:0 -50%;border:1px solid rgba(255,255,255,.13);border-radius:50%;transform:rotateX(68deg) rotateZ(-18deg);animation:rvcxOrbit 22s linear infinite}
.rvcx-cinema-orbit:before,.rvcx-cinema-orbit:after{content:"";position:absolute;inset:12%;border:1px solid rgba(255,255,255,.1);border-radius:50%}.rvcx-cinema-orbit:after{inset:29%;border-color:rgba(34,211,238,.23)}
.rvcx-phone-wrap{position:absolute;right:10%;top:50%;width:clamp(150px,18vw,245px);aspect-ratio:.52;transform:translate3d(var(--rx,0px),calc(-50% + var(--ry,0px)),80px) rotateY(-18deg) rotateX(7deg);animation:rvcxFloatPhone 6s ease-in-out infinite}
.rvcx-phone{position:absolute;inset:0;border-radius:clamp(25px,3vw,42px);padding:7px;background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(125,130,160,.34) 30%,rgba(10,12,25,.96) 62%);box-shadow:0 35px 80px rgba(0,0,0,.48),-12px 0 45px rgba(124,58,237,.25),12px 0 45px rgba(6,182,212,.18)}
.rvcx-phone-screen{position:relative;width:100%;height:100%;overflow:hidden;border-radius:calc(clamp(25px,3vw,42px) - 7px);background:radial-gradient(circle at 65% 12%,rgba(168,85,247,.72),transparent 32%),linear-gradient(145deg,#111429,#060712 70%);border:1px solid rgba(255,255,255,.13)}
.rvcx-phone-screen:before{content:"";position:absolute;top:8px;left:50%;translate:-50% 0;width:34%;height:18px;border-radius:20px;background:#05060b;z-index:5}
.rvcx-phone-logo{position:absolute;left:50%;top:22%;translate:-50% -50%;width:54px;height:54px;border-radius:17px;background:linear-gradient(145deg,#a855f7,#06b6d4);display:grid;place-items:center;color:#fff;font-weight:800;font-size:18px;box-shadow:0 12px 40px rgba(168,85,247,.45)}
.rvcx-phone-lines{position:absolute;left:11%;right:11%;top:36%;display:grid;gap:10px}.rvcx-phone-line{height:9px;border-radius:9px;background:rgba(255,255,255,.12)}.rvcx-phone-line:nth-child(1){width:74%;background:rgba(255,255,255,.7)}.rvcx-phone-line:nth-child(3){width:58%}
.rvcx-phone-cards{position:absolute;left:9%;right:9%;bottom:9%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.rvcx-phone-card{aspect-ratio:.78;border-radius:12px;background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.045));border:1px solid rgba(255,255,255,.11);box-shadow:inset 0 1px rgba(255,255,255,.12)}
.rvcx-phone-shine{position:absolute;inset:-45%;background:linear-gradient(105deg,transparent 43%,rgba(255,255,255,.18) 49%,transparent 55%);transform:translateX(-45%) rotate(8deg);animation:rvcxShine 5.5s ease-in-out infinite}
.rvcx-float-card{position:absolute;width:clamp(108px,12vw,160px);padding:11px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.055));box-shadow:0 24px 55px rgba(0,0,0,.28);backdrop-filter:blur(12px);color:#fff}
.rvcx-float-card strong{display:block;font-size:11px;letter-spacing:.02em}.rvcx-float-card span{display:block;margin-top:4px;font-size:9px;color:rgba(255,255,255,.62)}
.rvcx-float-card:before{content:"XML";display:grid;place-items:center;width:34px;height:34px;margin-bottom:8px;border-radius:11px;background:linear-gradient(145deg,#8b5cf6,#06b6d4);font-size:9px;font-weight:800;box-shadow:0 8px 26px rgba(124,58,237,.38)}
.rvcx-float-card.one{right:27%;top:15%;transform:translate3d(calc(var(--rx,0px)*-.55),calc(var(--ry,0px)*-.55),130px) rotateY(15deg) rotateZ(-5deg);animation:rvcxFloatCard1 5.4s ease-in-out infinite}
.rvcx-float-card.two{right:2%;bottom:13%;transform:translate3d(calc(var(--rx,0px)*.75),calc(var(--ry,0px)*.75),150px) rotateY(-17deg) rotateZ(6deg);animation:rvcxFloatCard2 6.2s ease-in-out infinite}
.rvcx-spark{position:absolute;width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 12px #fff,0 0 24px #8b5cf6;opacity:.72;animation:rvcxSpark 3.6s ease-in-out infinite}.rvcx-spark.s1{right:42%;top:22%}.rvcx-spark.s2{right:5%;top:31%;animation-delay:-1.3s}.rvcx-spark.s3{right:34%;bottom:17%;animation-delay:-2.1s}
@keyframes rvcxFloatPhone{50%{transform:translate3d(var(--rx,0px),calc(-50% + var(--ry,0px) - 10px),80px) rotateY(-14deg) rotateX(5deg)}}
@keyframes rvcxFloatCard1{50%{margin-top:-11px;rotate:0 1 0 4deg}}@keyframes rvcxFloatCard2{50%{margin-bottom:12px;rotate:1 0 0 4deg}}
@keyframes rvcxOrb{to{scale:1.14;translate:4% 5%;opacity:.5}}@keyframes rvcxOrbit{to{rotate:1 0 0 68deg;transform:rotateX(68deg) rotateZ(342deg)}}
@keyframes rvcxShine{0%,22%{transform:translateX(-48%) rotate(8deg)}60%,100%{transform:translateX(48%) rotate(8deg)}}@keyframes rvcxSpark{50%{opacity:.22;scale:.55;translate:0 -8px}}
@media(max-width:900px){.rvcx-phone-wrap{right:3%;opacity:.82;scale:.82}.rvcx-float-card.one{right:24%;top:9%;scale:.8}.rvcx-float-card.two{right:-3%;bottom:8%;scale:.78}.rvcx-cinema-orbit{right:-12%;width:440px;opacity:.65}}
@media(max-width:700px){.rvcx-cinematic-scene{opacity:.48}.rvcx-phone-wrap{right:-18%;top:57%;scale:.7}.rvcx-float-card.one{right:3%;top:12%;scale:.64}.rvcx-float-card.two{display:none}.rvcx-cinema-grid{opacity:.1}.rvcx-cinema-aurora{filter:blur(38px)} }
@media(prefers-reduced-motion:reduce){.rvcx-cinematic-scene *{animation:none!important}.rvcx-cinematic-scene{opacity:.35}.rvcx-phone-wrap,.rvcx-float-card{transform:none!important}}
