/* ============================================================
   ALL GESTORÍA DEL AUTOMOTOR — animations.css
   Scroll reveal + will-change (liberado en JS con transitionend)
   ============================================================ */

.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s cubic-bezier(.16,1,.3,1), transform 0.8s cubic-bezier(.16,1,.3,1);
  will-change: opacity, transform;
}
.reveal-left {
  opacity: 0;
  transform: translateX(-30px);
  transition: opacity 0.8s cubic-bezier(.16,1,.3,1), transform 0.8s cubic-bezier(.16,1,.3,1);
  will-change: opacity, transform;
}
.reveal-right {
  opacity: 0;
  transform: translateX(30px);
  transition: opacity 0.8s cubic-bezier(.16,1,.3,1), transform 0.8s cubic-bezier(.16,1,.3,1);
  will-change: opacity, transform;
}

.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal-left.visible,
.reveal-right.visible { opacity: 1; transform: translateX(0); }

/* Respeta la preferencia de movimiento reducido: apaga las animaciones
   decorativas (reveals de entrada, pulso del WhatsApp flotante, líneas del
   hero) y deja el contenido visible de inmediato, sin depender de JS. */
@media (prefers-reduced-motion: reduce) {
  .reveal, .reveal-left, .reveal-right { opacity: 1; transform: none; transition: none; }
  .hero-scroll { animation: none; }
  .whatsapp-float::after { animation: none !important; display: none; }

  .reveal-line-inner,
  .hero-in {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }

  .btn-cta, .btn-cta-outline, .elegir-card, .tab-btn { transition: none !important; }
}
