/* Activación de Animate.css mediante IntersectionObserver */
:root {
  --animate-duration: 700ms;
}

.reveal.animate__animated {
  animation-play-state: paused;
}

.reveal.animate__animated.is-visible {
  animation-play-state: running;
}

/* Inicio, sección 01: mostrar texto e imagen sin animación en móvil. */
@media (max-width: 40rem) {
  .home-page .home-intro .reveal.animate__animated {
    animation: none;
    opacity: 1;
    transform: none;
  }

  .home-page .home-intro-visual img {
    transition: none;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  /*
   * Decisión del proyecto: conservar animaciones breves de entrada
   * incluso cuando el sistema solicita reducir el movimiento.
   */
  .animate__animated {
    animation-duration: var(--animate-duration) !important;
    animation-iteration-count: 1 !important;
  }
}
