/* ============================================
   ANIMATIONS — Keyframes & Animation Classes
   ============================================ */

/* ═══ Base Reveal ═══ */
.reveal {
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}
.reveal.revealed {
  opacity: 1;
}

/* ═══ Fade In ═══ */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* ═══ Scale In ═══ */
@keyframes scaleIn {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

/* ═══ Slide In Left ═══ */
@keyframes slideInLeft {
  from {
    opacity: 0;
    transform: translateX(-40px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* ═══ Slide In Right ═══ */
@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(40px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* ═══ Shimmer, Glow, Float REMOVED ═══ */
/* Replaced with stark, minimalist transitions */

/* ═══ Stagger delay utility classes ═══ */
.stagger-1 { transition-delay: 0.05s; }
.stagger-2 { transition-delay: 0.1s; }
.stagger-3 { transition-delay: 0.15s; }
.stagger-4 { transition-delay: 0.2s; }
.stagger-5 { transition-delay: 0.25s; }
.stagger-6 { transition-delay: 0.3s; }
.stagger-7 { transition-delay: 0.35s; }
.stagger-8 { transition-delay: 0.4s; }

/* ═══ Grain Overlay Animation ═══ */
@keyframes grain {
  0%, 100% { transform: translate(0, 0); }
  10% { transform: translate(-1%, -2%); }
  20% { transform: translate(-3%, 1%); }
  30% { transform: translate(2%, -4%); }
  40% { transform: translate(-1%, 4%); }
  55% { transform: translate(-3%, 2%); }
  68% { transform: translate(3%, 0%); }
  72% { transform: translate(0%, 2%); }
  85% { transform: translate(1%, 4%); }
  90% { transform: translate(-2%, 2%); }
}

/* ═══ REC Red Dot Blink ═══ */
@keyframes recBlink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}

.blink {
  animation: recBlink 1.5s infinite steps(1);
}

