html{scroll-behavior:smooth;scroll-padding-top:88px}
.motion-reveal{opacity:0;transform:translate3d(0,22px,0);transition:opacity .65s cubic-bezier(.2,.75,.25,1),transform .65s cubic-bezier(.2,.75,.25,1);transition-delay:var(--motion-delay,0ms);will-change:opacity,transform}
.motion-reveal.is-visible{opacity:1;transform:translate3d(0,0,0);will-change:auto}
.steps__grid .motion-reveal:nth-child(2),.about__grid .motion-reveal:nth-child(2){--motion-delay:90ms}
.steps__grid .motion-reveal:nth-child(3),.about__grid .motion-reveal:nth-child(3){--motion-delay:180ms}
.nav__cta,.submit-btn,.crew-promo__button,.step-card,.about__card,.form-card,.crew-bottom-cta{transition:transform .22s cubic-bezier(.2,.75,.25,1),box-shadow .22s ease,filter .22s ease}
.nav__cta:hover,.submit-btn:hover,.crew-promo__button:hover{transform:translateY(-3px);filter:saturate(1.08)}
.step-card:hover,.about__card:hover,.form-card:hover{transform:translateY(-4px);box-shadow:7px 8px 0 var(--ink,#0b0b0b)}
.crew-bottom-cta:hover{filter:saturate(1.15);transform:scale(1.008)}
a:focus-visible,button:focus-visible{scroll-margin-block:110px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-reveal,.motion-reveal.is-visible{opacity:1;transform:none;transition:none;will-change:auto}.nav__cta,.submit-btn,.crew-promo__button,.step-card,.about__card,.form-card,.crew-bottom-cta{transition:none}.nav__cta:hover,.submit-btn:hover,.crew-promo__button:hover,.step-card:hover,.about__card:hover,.form-card:hover,.crew-bottom-cta:hover{transform:none;filter:none}}

@media(max-width:720px) and (prefers-reduced-motion:no-preference){
  @keyframes mobile-arrive{from{opacity:0;transform:translate3d(0,18px,0) scale(.985)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
  @keyframes mobile-card-arrive{0%{opacity:0;transform:translateY(16px) scale(.98)}70%{opacity:1;transform:translateY(-2px) scale(1.005)}100%{opacity:1;transform:translateY(0) scale(1)}}
  .hero__title{animation:mobile-arrive .7s .06s both cubic-bezier(.2,.75,.25,1)}
  .hero__lede{animation:mobile-arrive .65s .14s both cubic-bezier(.2,.75,.25,1)}
  .hero__badges .badge{animation:mobile-arrive .55s both cubic-bezier(.2,.75,.25,1)}
  .hero__badges .badge:nth-child(2){animation-delay:.12s}
  .step-card.is-visible,.about__card.is-visible{animation:mobile-card-arrive .62s var(--motion-delay,0ms) both cubic-bezier(.2,.75,.25,1)}
  .crew-promo.is-visible .crew-promo__button{animation:mobile-arrive .58s .12s both cubic-bezier(.2,.75,.25,1)}
  .crew-invite.is-visible .nav__cta{animation:mobile-arrive .58s .1s both cubic-bezier(.2,.75,.25,1)}
}
@media(hover:none) and (prefers-reduced-motion:no-preference){
  .nav__cta:active,.submit-btn:active,.crew-promo__button:active{transform:translateY(2px) scale(.975);filter:saturate(1.18);box-shadow:1px 1px 0 var(--ink,#0b0b0b)}
  .step-card:active,.about__card:active,.form-card:active{transform:scale(.99);box-shadow:2px 2px 0 var(--ink,#0b0b0b)}
  .crew-bottom-cta:active{transform:scale(.985);filter:saturate(1.2)}
}
