/* The unanimated hero remains the default until JavaScript is ready. */
.hero-scene-image{display:block;width:100%;height:100%;position:relative}
.hero-scene-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.hero-scene:hover .hero-scene-image img{transform:scale(1.025)}
.hero-lights,.hero-dust{position:absolute;pointer-events:none}
.hero-lights{overflow:visible;inset:0}
.hero-light{position:absolute;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,#ffcf7a 0%,#ffcf7a99 20%,#ffcf7a00 70%);mix-blend-mode:screen;opacity:0}
.hero-dust{inset:0;width:100%;height:100%;z-index:1}
@media(max-width:700px){.hero-scene-image img{object-position:58% center}.hero-aside .button{min-height:44px}}
@media(prefers-reduced-motion:no-preference){
  .hero-anim .hero-topline{animation:ha-rise 400ms both}
  .hero-anim .hero-letter{display:inline-block;animation:ha-letter 420ms cubic-bezier(.34,1.56,.64,1) both;animation-delay:var(--letter-delay)}
  .hero-anim .joy-word{color:var(--ink)}
  .hero-anim .joy-word .hero-letter{animation-name:ha-letter,ha-joy;animation-duration:420ms,300ms;animation-timing-function:cubic-bezier(.34,1.56,.64,1),ease;animation-delay:var(--letter-delay),var(--letter-delay);animation-fill-mode:both}
  .hero-anim .hand-star{color:#dc704c;animation:ha-star 500ms cubic-bezier(.34,1.56,.64,1) both,ha-twinkle 3.2s ease-in-out infinite;animation-delay:var(--star-delay),calc(var(--star-delay) + 500ms)}
  .hero-anim .hero-aside{animation:ha-aside 500ms 700ms both}
  .hero-anim .hero-scene{animation:ha-card 800ms 200ms backwards}
  .hero-anim .hero-scene-image img{animation:ha-image 800ms 200ms backwards}
  .hero-anim .scene-caption{animation:ha-caption 450ms 900ms both}
  .hero-anim .scene-note{animation:ha-fade 400ms 1000ms both}
  .hero-anim .hero-light{animation:ha-glow var(--glow-duration) ease-in-out infinite alternate;animation-delay:var(--glow-delay)}
  .hero-anim.hero-paused .hero-light,.hero-anim.hero-paused .hand-star{animation-play-state:paused}
  @keyframes ha-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
  @keyframes ha-letter{from{opacity:0;transform:translateY(.35em) scale(.6)}to{opacity:1;transform:translateY(0) scale(1)}}
  @keyframes ha-joy{from{color:var(--ink)}to{color:#dc704c}}
  @keyframes ha-star{0%{opacity:0;transform:rotate(-90deg) scale(0)}70%{opacity:1;transform:rotate(14deg) scale(1.25)}100%{opacity:1;transform:rotate(14deg) scale(1)}}
  @keyframes ha-twinkle{0%,100%{transform:rotate(14deg) scale(1)}50%{transform:rotate(22deg) scale(1.08)}}
  @keyframes ha-aside{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
  @keyframes ha-card{from{clip-path:inset(7% 5% round 18px)}to{clip-path:inset(0 round 18px)}}
  @keyframes ha-image{from{transform:scale(1.08)}to{transform:scale(1)}}
  @keyframes ha-caption{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
  @keyframes ha-fade{from{opacity:0}to{opacity:1}}
  @keyframes ha-glow{from{opacity:.35}to{opacity:.7}}
  @media(max-width:700px){@keyframes ha-card{from{clip-path:inset(7% 5% round 13px)}to{clip-path:inset(0 round 13px)}}}
}
