/* Progressive motion: content stays readable without JavaScript. */
@keyframes ember-settle{from{translate:0 14px}to{translate:0 0}}
@keyframes ember-float{0%,100%{translate:0 0}50%{translate:0 -8px}}
@keyframes ember-orbit{0%,100%{opacity:.65;scale:1}50%{opacity:1;scale:1.025}}
@keyframes ember-menu-item{from{opacity:.5;translate:12px 0}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:no-preference){
  .hero-copy>.kicker,.hero-copy>h1,.hero-copy>.lead,.hero-actions,.hero-proof{animation:ember-settle .7s cubic-bezier(.2,.7,.2,1) both}
  .hero-copy>.lead{animation-duration:.85s}.hero-actions,.hero-proof{animation-duration:1s}
  .hero-media>img:first-child{animation:ember-float 7s ease-in-out infinite;animation-play-state:paused}
  .hero-media>.hero-device{animation:ember-float 6s ease-in-out -2s infinite;animation-play-state:paused}
  .hero-media::before{animation:ember-orbit 9s ease-in-out infinite;animation-play-state:paused}
  .hero-in-view .hero-media>img,.hero-in-view .hero-media::before{animation-play-state:running}
  .motion-paused .hero-media>img,.motion-paused .hero-media::before{animation-play-state:paused}
  .mobile-menu.open>a{animation:ember-menu-item .3s ease-out both}
  .mobile-menu.open>a:nth-child(2){animation-delay:35ms}.mobile-menu.open>a:nth-child(3){animation-delay:70ms}.mobile-menu.open>a:nth-child(4){animation-delay:105ms}.mobile-menu.open>a:nth-child(5){animation-delay:140ms}
  .site-header{transition:background .25s,border-color .25s,box-shadow .3s}
  .site-header.is-scrolled{background:rgba(18,16,22,.95);border-bottom-color:#51405e;box-shadow:0 8px 30px #0003}
  .cta{transition:background .2s,transform .2s,box-shadow .25s}.cta svg,.round-arrow svg{transition:translate .25s cubic-bezier(.2,.7,.2,1)}
  .cta:hover svg,.cta:focus-visible svg,.focus-card:hover .round-arrow svg{translate:4px 0}
  .cta:hover{box-shadow:0 8px 28px #CDA7F526}.cta:active{transform:translateY(0) scale(.97)}
  .focus-stage img{transition:scale .65s cubic-bezier(.2,.7,.2,1)}
  .coach-card img{transition:scale .55s cubic-bezier(.2,.7,.2,1)}
  .coach-card[aria-pressed=true] img{scale:1.035}
  .coach-card:active{transform:scale(.985)}
  .tab-button{transition:border-color .25s,color .25s}.text-link svg{transition:translate .25s}.text-link:hover svg{translate:5px 0}
  @media(hover:hover) and (pointer:fine){.focus-card:hover .focus-stage img{scale:1.035}.coach-card:hover img{scale:1.035}}
  @media(max-width:720px){.hero-media>img:first-child{animation-duration:8s}.hero-media>.hero-device{animation-duration:7s}}
}
@media(prefers-reduced-motion:reduce){.hero-media>img,.hero-media::before,.hero-copy>*,.mobile-menu>a{animation:none!important;translate:none!important}.focus-stage img,.coach-card img{scale:1!important}}
