/* Vitality cinematic visual system — isolated, additive, no checkout overrides. */
:root{--vs-ink:#040712;--vs-panel:#0a1020;--vs-cyan:#33e2ff;--vs-violet:#b365ff;--vs-electric:#4783ff}
html{scroll-behavior:smooth}
body.vitality-theme{background:radial-gradient(ellipse 65% 40% at 88% 2%,rgba(77,61,184,.20),transparent 75%),radial-gradient(ellipse 50% 30% at 0 34%,rgba(0,157,237,.075),transparent 78%),#040712;color:#f7f9ff}
body.vitality-theme::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.26;background-image:linear-gradient(rgba(85,151,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(85,151,255,.055) 1px,transparent 1px);background-size:88px 88px;mask-image:linear-gradient(to bottom,#000 0,transparent 95%)}
body.vitality-theme main,body.vitality-theme footer{position:relative}
body.vitality-theme .topbar{backdrop-filter:blur(22px) saturate(1.5);-webkit-backdrop-filter:blur(22px) saturate(1.5);transition:background .25s,border-color .25s,box-shadow .25s}
body.vitality-theme .topbar.vs-scrolled{background:rgba(3,6,17,.97);border-bottom-color:rgba(51,226,255,.2);box-shadow:0 18px 50px #0005}
body.vitality-theme .brand-logo{object-fit:contain!important;object-position:center!important;mix-blend-mode:normal!important;filter:drop-shadow(0 0 12px rgba(100,79,245,.24));height:auto!important;aspect-ratio:1!important}
body.vitality-theme .links a{position:relative;transition:color .22s}
body.vitality-theme .links a::after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:2px;background:linear-gradient(90deg,var(--vs-violet),var(--vs-cyan));transition:right .25s}
body.vitality-theme .links a:hover::after,body.vitality-theme .links a:focus-visible::after{right:0}
body.vitality-theme .btn,body.vitality-theme .navbtn{transition:transform .22s ease,box-shadow .25s ease,filter .25s ease,border-color .25s ease}
body.vitality-theme .btn.primary,body.vitality-theme .primary{background:linear-gradient(112deg,#6b2cf1,#2156ca 55%,#047eab);border-color:#6661fb;color:#fff;box-shadow:0 9px 30px #6d39ff25,inset 0 1px #ffffff35}
body.vitality-theme .btn.primary:hover,body.vitality-theme .primary:hover{transform:translateY(-3px);box-shadow:0 12px 38px #7c58ff52,0 0 28px #20cfff21;filter:brightness(1.11)}
body.vitality-theme .btn.secondary:hover,body.vitality-theme .navbtn:hover{transform:translateY(-2px);border-color:#55c5fb88;box-shadow:0 7px 22px #14a4ff16}
body.vitality-theme .v-hero{position:relative;isolation:isolate;overflow:hidden;border:1px solid #354677b3;border-radius:22px!important;background:radial-gradient(circle at 73% 38%,rgba(99,39,189,.24),transparent 38%),linear-gradient(140deg,#0a1225 0%,#090c1b 40%,#030812 100%)}
body.vitality-theme .v-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 27%,rgba(47,169,255,.065) 46%,transparent 61%);transform:translateX(-125%);animation:vs-hero-scan 11s ease-in-out infinite;pointer-events:none}
body.vitality-theme .v-hero::after{content:"";position:absolute;right:-150px;top:-190px;width:620px;height:620px;border-radius:50%;border:1px solid #7472ff22;box-shadow:0 0 0 72px #7472ff08,0 0 0 150px #7472ff05;pointer-events:none}
body.vitality-theme .v-hero-inner{position:relative;z-index:1;align-items:center;gap:34px}
body.vitality-theme .v-hero-copy{position:relative;z-index:2}
body.vitality-theme .v-hero h1{font-size:clamp(49px,6.5vw,100px);line-height:.94;letter-spacing:.015em;max-width:770px;text-wrap:balance;text-shadow:0 8px 42px #0008}
body.vitality-theme .v-hero h1 em{background:linear-gradient(95deg,#a65aff,#73a9ff 63%,#46dfff);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:normal}
body.vitality-theme .v-hero p{font-size:clamp(14px,1.35vw,17px);line-height:1.7;max-width:570px;color:#c7d1e6}
body.vitality-theme .hero-caption{display:flex;flex-wrap:wrap;gap:15px;color:#7b91b7}
body.vitality-theme .hero-caption span{letter-spacing:.13em;font-size:10px}
.vs-hero-display{position:relative;min-height:350px;display:block!important;perspective:950px;isolation:isolate}
.vs-hero-display::before{content:"";position:absolute;inset:11% 11%;border:1px solid #6662ff36;border-radius:50%;box-shadow:0 0 0 25px #89bfff07,0 0 0 70px #89bfff05;animation:vs-orbit 18s linear infinite}
.vs-hero-display .vs-orbit-logo{position:absolute;z-index:6;left:35%;top:29%;width:31%;height:auto!important;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 0 33px #6759f787);animation:vs-float 6s ease-in-out infinite}
.vs-floating-cover{position:absolute;display:block;overflow:hidden;border:1px solid #8a8eff66;border-radius:13px;background:#070e1e;box-shadow:0 25px 55px #0009,0 0 33px #5974ff24;transition:transform .35s,box-shadow .3s;animation:vs-float 6.5s ease-in-out infinite}
.vs-floating-cover img{display:block;width:100%;height:100%;object-fit:cover}
.vs-floating-cover:hover{transform:translateY(-6px) scale(1.05)!important;box-shadow:0 28px 62px #000a,0 0 30px #45d9ff40}
.vs-cover-one{width:49%;aspect-ratio:16/9;top:10%;left:1%;transform:rotate(-12deg);animation-delay:-2s}
.vs-cover-two{width:53%;aspect-ratio:16/9;top:25%;right:0;transform:rotate(8deg);animation-delay:-4s;z-index:1}
.vs-cover-three{width:49%;aspect-ratio:16/9;bottom:4%;left:11%;transform:rotate(-5deg);animation-delay:-1s;z-index:2}
body.vitality-theme .release-grid{align-items:stretch;gap:20px}
body.vitality-theme .release-card{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden!important;border-radius:16px!important;border:1px solid #32416c!important;background:linear-gradient(154deg,#0c1224,#070b17 83%)!important;box-shadow:0 17px 42px #0005;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .3s}
body.vitality-theme .release-card:hover{transform:translateY(-7px);border-color:#7299ffb0!important;box-shadow:0 30px 68px #0009,0 0 32px #4860dd2a}
body.vitality-theme .release-card::before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,var(--product-accent,#4fe1ff),transparent);opacity:0;transition:opacity .3s;z-index:2}
body.vitality-theme .release-card:hover::before{opacity:1}
body.vitality-theme .release-cover{display:block;aspect-ratio:16/9;overflow:hidden;background:#070c1a}
body.vitality-theme .release-cover img{width:100%;height:100%;object-fit:cover!important;object-position:center;transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .4s}
body.vitality-theme .release-card:hover .release-cover img{transform:scale(1.055);filter:brightness(1.05)}
body.vitality-theme .release-body{display:flex;flex:1;flex-direction:column;padding:23px!important;min-width:0;gap:0}
body.vitality-theme .release-body h3,body.vitality-theme .release-grid>.release-card:nth-child(-n+2) .release-body h3{font-size:clamp(25px,2.2vw,31px);white-space:normal!important;max-height:none!important;overflow:visible!important;text-overflow:unset!important;overflow-wrap:break-word}
body.vitality-theme .release-body>p{color:#b5c1d9;line-height:1.6;font-size:13px;max-height:none!important;min-height:0;overflow:visible!important}
body.vitality-theme .release-price{margin-top:auto;padding-top:17px;color:#66e3ff}
body.vitality-theme .release-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
body.vitality-theme .release-actions .btn{width:100%;min-width:0;padding:8px 10px;text-align:center;min-height:43px;font-size:clamp(12px,1.1vw,15px)}
body.vitality-theme .v-section-head{align-items:end;gap:22px}
body.vitality-theme .v-section-head h2{font-size:clamp(38px,4.2vw,58px);text-wrap:balance}
body.vitality-theme .hosting-banner{border:1px solid #46518b88;border-radius:20px;background:radial-gradient(circle at 89% 22%,#334ba036,transparent 55%),linear-gradient(115deg,#0c1530,#070d1c)}
body.vitality-theme .partner-zone .hosting-banner{position:relative;overflow:hidden}
body.vitality-theme .partner-zone .hosting-banner::before{content:"";position:absolute;left:-50%;top:0;width:30%;height:100%;background:linear-gradient(90deg,transparent,#8acfff13,transparent);transform:skewX(-19deg);animation:vs-banner-shine 7s ease-in-out infinite;pointer-events:none}
body.vitality-theme .hosting-banner .hosting-emblem{object-fit:contain!important}
body.vitality-theme footer{background:linear-gradient(175deg,#080d1c,#03060d)!important;border-top:1px solid #35447b}
body.vitality-theme footer .brand-logo{width:46px!important;height:46px!important;aspect-ratio:1;object-fit:contain!important}
body.vitality-theme .release-detail,body.vitality-theme .catalog-intro,body.vitality-theme .pagehero{animation:vs-entrance .75s ease-out both}
body.vitality-theme .release-detail img,body.vitality-theme .vdocs-cover img{max-height:100%;object-fit:contain}
body.vitality-theme .v-copy-feature,body.vitality-theme .support-card,body.vitality-theme .home-feature{border-color:#344264!important;box-shadow:0 12px 34px #0003;transition:transform .28s,border-color .28s,box-shadow .28s}
body.vitality-theme .v-copy-feature:hover,body.vitality-theme .support-card:hover{transform:translateY(-4px);border-color:#777cf5!important}
body.vitality-theme .filter{transition:background .25s,color .25s,transform .25s,border-color .25s}
body.vitality-theme .filter:hover{transform:translateY(-2px)}
.vs-reveal{animation:vs-entrance .85s cubic-bezier(.2,.8,.2,1) both}
.vs-intro{position:fixed;inset:0;display:grid;place-items:center;z-index:99999;overflow:hidden;background:radial-gradient(circle at 50% 42%,#111d46 0,#070e24 35%,#02050e 83%);transition:opacity .48s ease,visibility .48s ease;pointer-events:auto}
.vs-intro.vs-leaving{opacity:0;visibility:hidden;pointer-events:none}
.vs-intro::before{content:"";position:absolute;inset:-20%;background:linear-gradient(112deg,transparent 43%,#6694ff16 50%,transparent 57%);animation:vs-hero-scan 2s ease-in-out both}
.vs-intro__content{position:relative;text-align:center;width:min(78vw,440px);display:grid;justify-items:center;gap:14px}
.vs-intro__logo{width:clamp(124px,19vw,205px);height:auto;object-fit:contain;filter:drop-shadow(0 0 34px #8a70ff66);animation:vs-logo-open .95s cubic-bezier(.2,.8,.2,1) both}
.vs-intro__name{font:800 clamp(34px,5vw,58px)/.96 "Barlow Condensed",Impact,sans-serif;letter-spacing:.16em;color:#fff;text-shadow:0 0 28px #365bcd66;animation:vs-entrance .6s .2s both}
.vs-intro__sub{color:#8197ba;letter-spacing:.48em;font:700 11px Inter,sans-serif}
.vs-intro__track{width:min(70vw,270px);height:2px;margin-top:22px;background:#253359;overflow:hidden;border-radius:3px}
.vs-intro__progress{width:100%;height:100%;background:linear-gradient(90deg,#7544fe,#52e8ff);transform:translateX(-100%);animation:vs-load 1.05s ease-in-out forwards}
.vs-intro__skip{position:absolute;bottom:25px;right:25px;padding:7px 10px;background:none;border:0;color:#8191b1;cursor:pointer;font:600 12px Inter,sans-serif}
.vs-intro__skip:hover{color:#fff}
@keyframes vs-load{to{transform:translateX(0)}}
@keyframes vs-logo-open{from{opacity:0;transform:translateY(19px) scale(.74);filter:blur(9px)}to{opacity:1;transform:translateY(0) scale(1);filter:drop-shadow(0 0 34px #8a70ff66)}}
@keyframes vs-entrance{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes vs-hero-scan{0%,15%{transform:translateX(-130%)}65%,100%{transform:translateX(150%)}}
@keyframes vs-banner-shine{0%,40%{transform:translateX(-50vw) skewX(-19deg)}85%,100%{transform:translateX(180vw) skewX(-19deg)}}
@keyframes vs-orbit{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes vs-float{0%,100%{translate:0 0}50%{translate:0 -12px}}
@media(max-width:1050px){body.vitality-theme .v-hero-inner{grid-template-columns:1fr 0.85fr;gap:18px}body.vitality-theme .v-hero h1{font-size:clamp(45px,6vw,70px)}.vs-hero-display{min-height:300px}}
@media(max-width:760px){body.vitality-theme .v-hero{margin:20px auto 0!important;width:calc(100% - 26px)!important;border-radius:16px!important}body.vitality-theme .v-hero-inner{width:calc(100% - 32px)!important;display:grid;grid-template-columns:1fr!important;padding:35px 0 27px!important;gap:20px!important}body.vitality-theme .v-hero-copy{text-align:center}body.vitality-theme .v-hero h1{font-size:clamp(45px,10vw,68px)!important;max-width:100%;margin:13px 0 19px}body.vitality-theme .v-hero p{max-width:100%;font-size:14px}body.vitality-theme .v-hero-actions{justify-content:center}body.vitality-theme .hero-caption{justify-content:center;gap:10px}body.vitality-theme .hero-caption span{font-size:9px}.vs-hero-display{width:100%;min-height:245px;max-width:390px;margin:auto}.vs-hero-display .vs-orbit-logo{top:30%;width:26%}body.vitality-theme .release-grid{gap:16px}body.vitality-theme .release-body{padding:19px!important}body.vitality-theme .release-body>p{font-size:13px}body.vitality-theme .release-actions{grid-template-columns:1fr 1fr}body.vitality-theme .release-actions .btn{padding:8px;white-space:normal}body.vitality-theme .v-section-head{align-items:start}body.vitality-theme .v-section-head h2{font-size:clamp(33px,8vw,46px)}body.vitality-theme .brand-logo{width:37px!important;height:37px!important}body.vitality-theme footer .brand-logo{width:42px!important;height:42px!important}}
@media(max-width:405px){.vs-hero-display{min-height:210px}body.vitality-theme .release-actions{grid-template-columns:1fr}body.vitality-theme .release-actions .btn{width:100%}body.vitality-theme .v-hero h1{font-size:43px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.vs-intro,.vs-hero-display::before,.vs-intro::before,.vs-intro__logo,.vs-intro__name,.vs-intro__progress,body.vitality-theme .v-hero::before,body.vitality-theme .partner-zone .hosting-banner::before,.vs-floating-cover,.vs-hero-display .vs-orbit-logo,.vs-reveal{animation:none!important;transition:none!important}.vs-intro{display:none!important}body.vitality-theme .release-card:hover,body.vitality-theme .btn:hover{transform:none}}
