/* Movimiento público: sin bloquear enlaces ni ocultar contenido si falla JS. */
@view-transition { navigation: auto; }
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
main, header .hero, header .pilot-hero { animation: public-arrive 360ms ease-out both; }
@keyframes public-arrive {
  from { opacity: .65; transform: translateY(7px); }
  to { opacity: 1; transform: none; }
}
::view-transition-old(root) { animation: public-out 140ms ease-out both; }
::view-transition-new(root) { animation: public-in 220ms ease-out both; }
@keyframes public-out { to { opacity: 0; } }
@keyframes public-in { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) {
  @view-transition { navigation: none; }
  html { scroll-behavior: auto !important; }
  main, header .hero, header .pilot-hero { animation: none; }
  *, *::before, *::after { scroll-behavior: auto !important; }
  .button, .wine-button { transition: none !important; }
  .button:hover, .wine-button:hover { transform: none !important; }
}
@media print { main, header .hero, header .pilot-hero { animation: none; } }
