/* Shared kinetic layer: progressive enhancement, native scrolling. */
@view-transition{navigation:auto}
::view-transition-old(root){animation:page-out .22s ease both}
::view-transition-new(root){animation:page-in .55s cubic-bezier(.16,1,.3,1) both}
@keyframes page-out{to{opacity:0;transform:translateY(-12px)}}
@keyframes page-in{from{opacity:0;transform:translateY(24px)}}
:root{--motion-ease:cubic-bezier(.16,1,.3,1)}
.scroll-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:100;pointer-events:none;background:var(--blue);transform:scaleX(0);transform-origin:left}
.motion-line{display:block!important;color:inherit!important;overflow:clip;padding-bottom:.09em;margin-bottom:-.09em}
.motion-line-inner{display:block!important;color:inherit!important;transform-origin:0 100%}
h1 .motion-line-inner>span{color:var(--blue)}
.header{transition:height .45s var(--motion-ease),background .4s,box-shadow .4s;backdrop-filter:blur(18px)}
body.is-scrolled .header{background:#0c0e10f0;box-shadow:0 8px 30px #00000018}
.header nav a{position:relative}
.header nav a:after{content:'';position:absolute;bottom:-8px;left:0;height:2px;width:100%;background:var(--blue);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--motion-ease)}
.header nav a:hover:after,.header nav a[aria-current]:after{transform:scaleX(1);transform-origin:left}
.button{position:relative;isolation:isolate;overflow:hidden;transition:transform .45s var(--motion-ease),box-shadow .45s,background .3s}
.button:before{content:'';position:absolute;inset:0;z-index:-1;background:#ffffff24;transform:translateX(-102%) skewX(-12deg);transition:transform .55s var(--motion-ease)}
.button:hover:before{transform:translateX(0) skewX(0)}
.button:hover{transform:translateY(-4px);box-shadow:0 10px 25px #00000018}
.button span,.text-link span,.round-arrow{transition:transform .45s var(--motion-ease)}
.button:hover span,.text-link:hover span{transform:translate(3px,-3px)}
.button:active{transform:translateY(0) scale(.985)}
.text-link{background-image:linear-gradient(var(--blue),var(--blue));background-repeat:no-repeat;background-size:0 2px;background-position:0 100%;transition:background-size .4s var(--motion-ease),color .3s}
.text-link:hover{background-size:100% 2px}
.program,.price-card,.flex-card{transition:box-shadow .5s var(--motion-ease),border-color .4s,translate .5s var(--motion-ease)}
.program:hover{translate:0 -7px}.price-card:hover,.flex-card:hover{translate:0 -7px;box-shadow:0 22px 48px #10182016;border-color:var(--blue)}
.program:hover .round-arrow{transform:rotate(45deg)}
.program-image img{transition:transform .8s var(--motion-ease),filter .8s}
.intro-photo,.coach-photo,.foundations-photo,.pricing-hero-photo{isolation:isolate}
.kinetic-image{transform:translate3d(0,var(--image-y,0px),0) scale(1.12)!important}
.hero-media{transform:translate3d(0,var(--hero-y,0px),0) scale(1.035);transform-origin:center}
.hero-inner{transform:translate3d(0,var(--copy-y,0px),0);opacity:var(--copy-opacity,1)}
.brand-strip.motion-strip{display:block;overflow:hidden;padding:24px 0;min-height:88px}
.marquee-track{display:flex;width:max-content;align-items:center;gap:55px;transform:translate3d(var(--marquee-x,0px),0,0);font-size:28px;line-height:1.2}
.marquee-group{display:flex;align-items:center;gap:55px;flex-shrink:0}
.marquee-group span{white-space:nowrap}.marquee-group i{display:block!important;font-size:38px;line-height:1;transform:rotate(var(--star-angle,0deg))}
.section-label{position:relative}
.motion-label:before{content:'';display:inline-block;width:22px;height:2px;background:currentColor;vertical-align:middle;margin-right:12px;transform:scaleX(var(--label-progress,0));transform-origin:left}
.pricing-jumps{position:sticky;top:90px;z-index:10;background:#ffffffef;backdrop-filter:blur(16px)}
.pricing-jumps a{position:relative;transition:color .3s,background .3s}
.pricing-jumps a:after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--motion-ease)}
.pricing-jumps a.is-active{color:#096f98;background:#36ace00c}.pricing-jumps a.is-active:after{transform:scaleX(1)}
.pricing-page section[id]{scroll-margin-top:85px}
.final-cta h2 .motion-line-inner>span{background:linear-gradient(90deg,var(--black) var(--text-fill,0%),transparent var(--text-fill,0%));background-clip:text;-webkit-background-clip:text}
.motion-control{position:fixed;bottom:18px;right:18px;z-index:30;display:flex;align-items:center;gap:8px;border:1px solid #ffffff35;border-radius:30px;background:#10171ceb;color:white;padding:9px 13px;font:500 11px var(--body);letter-spacing:.02em;backdrop-filter:blur(12px);box-shadow:0 3px 18px #0002}
.motion-control .motion-indicator{display:flex;align-items:center;gap:2px;height:12px}.motion-indicator i{display:block;width:2px;background:var(--blue);height:5px}.motion-indicator i:nth-child(2){height:11px}.motion-indicator i:nth-child(3){height:8px}
.motion-control[aria-pressed=false] .motion-indicator i{height:2px}
.footer{padding-bottom:65px}
@media(max-width:760px){.pricing-jumps{top:74px}.pricing-page section[id]{scroll-margin-top:145px}.marquee-track,.marquee-group{gap:30px}.marquee-track{font-size:22px}.brand-strip.motion-strip{padding:20px 0;min-height:70px}.marquee-group span{border:0!important}.marquee-group i{font-size:28px}.motion-control{bottom:12px;right:12px;font-size:10px;padding:8px 11px}.pricing-jumps a{padding-top:12px!important;padding-bottom:12px!important}}
body.motion-disabled .kinetic-image{transform:none!important}body.motion-disabled .hero-media,body.motion-disabled .hero-inner{transform:none!important;opacity:1!important}body.motion-disabled .marquee-track{transform:none!important}body.motion-disabled .motion-label{--label-progress:1}body.motion-disabled .program:hover,body.motion-disabled .price-card:hover,body.motion-disabled .flex-card:hover{translate:none}
body.motion-disabled *,body.motion-disabled *:before,body.motion-disabled *:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}.kinetic-image,.hero-media,.hero-inner,.marquee-track{transform:none!important;opacity:1!important}.motion-label{--label-progress:1}.program:hover,.price-card:hover,.flex-card:hover{translate:none}.button:hover{transform:none}.final-cta h2 .motion-line-inner>span{background:none}}
html.motion-disabled::view-transition-old(root),html.motion-disabled::view-transition-new(root){animation:none!important}.motion-control:disabled{cursor:default;opacity:.85}
@media(max-width:760px) and (prefers-reduced-motion:no-preference){.coach-photo>.kinetic-image,.foundations-photo>.kinetic-image{object-position:center top;transform:translate3d(0,var(--image-y,0px),0) scale(1.06)!important}}

