/* Same quiet entrance as Bite AI. No loading overlay or artificial delay. */
@keyframes wa-arrive {
  from { opacity: 0; translate: 0 22px; }
  to { opacity: 1; translate: 0 0; }
}
.wa-motion .hero-copy > * { animation: wa-arrive .9s cubic-bezier(.2,.7,.2,1) backwards; }
.wa-motion .hero-copy > :nth-child(2) { animation-delay: .06s; }
.wa-motion .hero-copy > :nth-child(3) { animation-delay: .14s; }
.wa-motion .hero-copy > :nth-child(4) { animation-delay: .22s; }
.wa-motion .hero-copy > :nth-child(5) { animation-delay: .28s; }
/* Animate the stage as one unit: leave the video's transform and timed cards alone. */
.wa-motion .hero-film { animation: wa-arrive 1.1s cubic-bezier(.2,.7,.2,1) .1s backwards; }
.wa-motion [data-wa-reveal] {
  opacity: 0; translate: 0 24px;
  transition: opacity .8s cubic-bezier(.2,.7,.2,1), translate .95s cubic-bezier(.2,.7,.2,1);
  transition-delay: var(--wa-delay, 0ms);
}
.wa-motion [data-wa-reveal].wa-visible { opacity: 1; translate: 0 0; }
@media (prefers-reduced-motion: reduce) {
  .wa-motion .hero-copy > *, .wa-motion .hero-film { animation: none; }
  .wa-motion [data-wa-reveal] { opacity: 1; translate: none; transition: none; }
}
