/* ==========================================================
   ANIMATIONS.CSS — Amatista Diseño y Construcción
   Definiciones @keyframes + clases de estado de animación
   (reveal-on-scroll, hero entrance, orbit spin, etc.)
   ========================================================== */

@keyframes scrollLine { 0% { top: -100%; } 50% { top: 0%; } 100% { top: 100%; } }

@keyframes reveal { to { opacity: 1; transform: translateY(0); } }

@keyframes whatsappPulse {
    0%   { transform: scale(1); opacity: 0.6; }
    100% { transform: scale(1.7); opacity: 0; }
  }

@keyframes spin { to { transform: rotate(360deg); } }

@keyframes scroll-left { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ---- Clases de estado de animación (reveal on scroll) ---- */

.reveal-up {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.9s var(--ease-out), transform 0.9s var(--ease-out);
}
.reveal-up.is-visible {
  opacity: 1;
  transform: translateY(0);
}
