/* Homepage entrances: the slower glide follows the requested Apple marketing
   reference. Control feedback keeps the shared site's existing timing tokens.
   Nothing is hidden while waiting for JavaScript or an observer callback. */
.home-enter {
  --home-enter-distance: 24px;
  animation: home-enter 0.85s cubic-bezier(0.22, 0.61, 0.36, 1) backwards;
}

.home-enter.home-enter-media { --home-enter-distance: 36px; }
.home-enter.home-enter-step-1 { animation-delay: 60ms; }
.home-enter.home-enter-step-2 { animation-delay: 120ms; }

@keyframes home-enter {
  from { opacity: 0; transform: translateY(var(--home-enter-distance)); }
  to { opacity: 1; transform: none; }
}

@media (max-width: 600px) {
  .home-enter,
  .home-enter.home-enter-media { --home-enter-distance: 20px; }
  .home-enter.home-enter-step-1,
  .home-enter.home-enter-step-2 { animation-delay: 0s; }
}

/* Focus is never delayed or made translucent by an entrance. */
.home-enter:focus-within { animation: none; }

@media (prefers-reduced-motion: reduce), print {
  .home-enter { animation: none !important; }
}
