/* IVK Fitness: liikumise kiht (sama tunne mis vanal lehel) */
:root{--ease-spring:cubic-bezier(.22,1,.36,1);--teal:#34d4b0;--blue:#4f8ef7;--orange:#ff9f43}
body:before{content:"";position:fixed;inset:-20%;pointer-events:none;z-index:0;opacity:.95;background:radial-gradient(circle at 18% 0%,rgba(184,247,36,.09),transparent 24%),radial-gradient(circle at 85% 18%,rgba(79,142,247,.06),transparent 22%),radial-gradient(circle at 48% 75%,rgba(52,212,176,.045),transparent 30%);animation:ambientBreath 16s ease-in-out infinite alternate;transform-origin:center}
@keyframes ambientBreath{0%{transform:scale(1) translate3d(0,0,0);filter:hue-rotate(0deg)}50%{transform:scale(1.055) translate3d(1.5%,-1%,0);filter:hue-rotate(4deg)}100%{transform:scale(1.02) translate3d(-1.4%,1.2%,0);filter:hue-rotate(-3deg)}}
.noise{position:fixed;inset:0;pointer-events:none;opacity:.024;z-index:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.ambient-orb{position:fixed;pointer-events:none;z-index:0;border-radius:50%;filter:blur(22px);opacity:.16;mix-blend-mode:screen}
.ambient-orb.one{width:520px;height:520px;left:-220px;top:34vh;background:radial-gradient(circle,var(--teal),transparent 66%);animation:orbOne 20s ease-in-out infinite}
.ambient-orb.two{width:620px;height:620px;right:-260px;top:62vh;background:radial-gradient(circle,var(--blue),transparent 66%);animation:orbTwo 24s ease-in-out infinite}
.ambient-orb.three{width:460px;height:460px;left:38vw;top:150vh;background:radial-gradient(circle,var(--orange),transparent 68%);opacity:.08;animation:orbThree 28s ease-in-out infinite}
@keyframes orbOne{50%{transform:translate3d(110px,-80px,0) scale(1.12)}}
@keyframes orbTwo{50%{transform:translate3d(-130px,100px,0) scale(.92)}}
@keyframes orbThree{50%{transform:translate3d(80px,-120px,0) scale(1.14)}}
/* sisu kihid orbide kohale */
.sec,.cta{position:relative;z-index:1}
.sx-foot{position:relative;z-index:1}
/* edenemisriba ja kursori kuma */
.scroll-progress{position:fixed;left:0;top:0;width:100%;height:2px;z-index:120;pointer-events:none}
.scroll-progress>i{display:block;width:100%;height:100%;transform-origin:left center;transform:scaleX(0);background:linear-gradient(90deg,#b8f724,#34d4b0,#4f8ef7);box-shadow:0 0 18px rgba(184,247,36,.42)}
.pointer-glow{position:fixed;left:0;top:0;width:460px;height:460px;border-radius:50%;pointer-events:none;z-index:0;opacity:0;background:radial-gradient(circle,rgba(184,247,36,.085),rgba(79,142,247,.04) 36%,transparent 70%);filter:blur(6px);transform:translate3d(-50%,-50%,0);transition:opacity .35s ease;will-change:transform}
body.pointer-ready .pointer-glow{opacity:1}
body.scrolled .sx-nav{background:rgba(16,16,22,.97);box-shadow:0 12px 34px -28px rgba(0,0,0,.9)}
/* hero: sisseujumine laadimisel ja hõõgus */
.sec.first{overflow:hidden;isolation:isolate}
.sec.first:before{content:"";position:absolute;width:760px;height:760px;border-radius:50%;left:50%;top:-430px;transform:translateX(-50%);background:radial-gradient(circle,rgba(184,247,36,.15),rgba(52,212,176,.05) 36%,transparent 68%);filter:blur(6px);z-index:-1;pointer-events:none;animation:heroAura 12s ease-in-out infinite alternate}
@keyframes heroAura{to{transform:translateX(-50%) scale(1.12);opacity:.72}}
@keyframes heroIn{from{opacity:0;transform:translateY(26px)}}
.sec.first .eyebrow,.sec.first h1,.sec.first .lead,.sec.first .btns,.sec.first .trial,.sec.first .cards2,.sec.first .mono{animation:heroIn .9s var(--ease-spring) backwards}
.sec.first h1{animation-delay:.08s}.sec.first .lead{animation-delay:.18s}.sec.first .btns,.sec.first .cards2{animation-delay:.28s}.sec.first .trial{animation-delay:.36s}
.sec.first .ph{animation:heroIn 1.1s var(--ease-spring) .2s backwards}
/* telefonide hõljumine */
.sec.first .ph,.sec.two>div>.ph,.two>div[style*="gap:24px"] .ph{will-change:translate}
@keyframes phoneFloat{50%{translate:0 -9px}}
.sec.first .herophones .ph:nth-child(1),.sec.first .hero-ph,.two>div[style*="gap:24px"] .ph:nth-child(1){animation:heroIn 1.1s var(--ease-spring) .2s backwards,phoneFloat 8s ease-in-out 1.3s infinite}
.sec.first .herophones .ph:nth-child(2),.two>div[style*="gap:24px"] .ph:nth-child(2){animation:heroIn 1.1s var(--ease-spring) .3s backwards,phoneFloat 9s ease-in-out 1.4s infinite reverse}
/* kerimisel sisseujumine */
.reveal{opacity:0;transform:translateY(34px) scale(.985);transition:opacity .95s var(--ease-spring),transform .95s var(--ease-spring);transition-delay:var(--d,0s)}
.reveal.visible{opacity:1;transform:none}
/* kaardid: kuma hiire all, tõus hoveril */
.motion-card{position:relative;isolation:isolate;overflow:hidden;transition:transform .45s var(--ease-spring),border-color .35s ease,box-shadow .45s var(--ease-spring)}
.motion-card:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.09),transparent 42%);opacity:0;transition:opacity .35s ease}
.motion-card:hover:before{opacity:1}
.opt.motion-card:hover,.plan.motion-card:hover,a.panel.motion-card:hover,.panel.motion-card:hover{transform:translateY(-5px);box-shadow:0 30px 80px -52px rgba(0,0,0,.9)}
.plan.hot.motion-card{box-shadow:0 38px 100px -64px rgba(184,247,36,.6)}
.it{transition:border-color .3s ease}
.it:hover{border-color:#34d4b0}
.step{transition:border-color .3s ease}
.step:hover{border-color:#b8f724}
/* nupud: läige ja magnet */
.btn,.sx-btn{position:relative;overflow:hidden;transition:transform .42s var(--ease-spring),box-shadow .42s var(--ease-spring),border-color .42s ease,filter .3s}
.btn:after,.sx-btn:after{content:"";position:absolute;top:-110%;left:-36%;width:28%;height:300%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);transform:rotate(20deg);transition:left .72s var(--ease-spring);pointer-events:none}
.btn.ghost:after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent)}
.btn:hover:after,.sx-btn:hover:after{left:118%}
.btn:not(.ghost):hover,.sx-btn:hover{box-shadow:0 20px 55px -24px rgba(184,247,36,.95)}
/* pealkirja pehme läige avalehel */
h1 .soft{display:inline-block;background:linear-gradient(105deg,#a6a6a6 0%,#d0d0d0 42%,#a6a6a6 58%,#a6a6a6 100%);background-size:230% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:softSheen 8s ease-in-out infinite}
@keyframes softSheen{0%,65%,100%{background-position:100% 0}78%{background-position:0 0}}
h2{transition:letter-spacing .55s var(--ease-spring)}
.sec:hover h2{letter-spacing:-.035em}
@media(hover:none),(pointer:coarse){.pointer-glow,.motion-card:before{display:none}}
@media(max-width:700px){.scroll-progress{height:2px}.ambient-orb{opacity:.1}}
@media(prefers-reduced-motion:reduce){
 *,*:before,*:after{animation:none!important;transition:none!important}
 .reveal{opacity:1!important;transform:none!important}
 .pointer-glow,.scroll-progress{display:none!important}
}
.sec.first .about-ph{animation:heroIn 1.1s var(--ease-spring) .2s backwards}
