/* ── KEYFRAMES ────────────────────────────────────────────────── */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

@keyframes bounce {
  0%, 100% { transform: translateX(-50%) translateY(0); }
  50%       { transform: translateX(-50%) translateY(8px); }
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

@keyframes countUp {
  from { opacity: 0; transform: scale(0.8); }
  to   { opacity: 1; transform: scale(1); }
}

/* ── REVEAL ON SCROLL ─────────────────────────────────────────── */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.55s ease, transform 0.55s ease;
}

.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

.reveal-delay-1 { transition-delay: 0.1s; }
.reveal-delay-2 { transition-delay: 0.2s; }
.reveal-delay-3 { transition-delay: 0.3s; }
.reveal-delay-4 { transition-delay: 0.4s; }

/* ── GOLD PULSE (hero logo mark) ──────────────────────────────── */
@keyframes goldPulse {
  0%, 100% { filter: drop-shadow(0 0 12px rgba(212, 175, 55, 0.2)); }
  50%       { filter: drop-shadow(0 0 28px rgba(212, 175, 55, 0.5)); }
}

/* ── HERO ENTRANCE ────────────────────────────────────────────── */
.hero-logo-mark { animation: fadeIn 0.8s ease 0.1s both; }
.hero-logo-mark img { animation: goldPulse 4s ease-in-out 1.2s infinite; }
.hero-eyebrow  { animation: fadeInUp 0.6s ease 0.3s both; }
.hero-title    { animation: fadeInUp 0.6s ease 0.5s both; }
.hero-subtitle { animation: fadeInUp 0.6s ease 0.7s both; }
.hero-actions  { animation: fadeInUp 0.6s ease 0.9s both; }
.hero-scroll   { animation: fadeIn  0.6s ease 1.2s both, bounce 2s ease 1.8s infinite; }

/* ── STAT NUMBER ──────────────────────────────────────────────── */
.stat-number.counting {
  animation: countUp 0.4s ease both;
}
