/* ============================================================
   ANIMATIONS.CSS — Athenia Academy
   Direction : lentes, subtiles, Apple-like
   Règle : aucun effet agressif, aucun glitch, aucun neon
   ============================================================ */

/* ════════════════════════════════════════════════════════════
   KEYFRAMES
════════════════════════════════════════════════════════════ */

/* Ticker — défilement horizontal logos partenaires */
@keyframes ticker-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* Indicateur de scroll — rebond doux vers le bas */
@keyframes bounce-down {
  0%, 100% { transform: translateX(-50%) translateY(0); }
  50%       { transform: translateX(-50%) translateY(10px); }
}

/* Reveal au scroll — fade + montée douce */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Pulse dot — indicateur d'état actif */
@keyframes pulse-dot {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.4; transform: scale(1.5); }
}

/* Blink curseur — champ texte simulé */
@keyframes blink {
  0%, 100% { opacity: 1; }
  50%       { opacity: 0; }
}

/* ════════════════════════════════════════════════════════════
   CLASSES D'ANIMATION
════════════════════════════════════════════════════════════ */

/* Fade up au chargement de page */
.fade-up   { opacity: 0; animation: fadeInUp 0.6s ease forwards; }
.fade-in   { opacity: 0; animation: fadeInUp 0.5s ease forwards; }
.fade-up-1 { animation-delay: 0.1s; }
.fade-up-2 { animation-delay: 0.2s; }
.fade-up-3 { animation-delay: 0.3s; }
.fade-up-4 { animation-delay: 0.4s; }
.fade-up-5 { animation-delay: 0.5s; }

/* Blink curseur */
.cursor-blink { animation: blink 1s step-end infinite; }

/* ════════════════════════════════════════════════════════════
   RESPECT PREFERS-REDUCED-MOTION
════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration:        0.01ms !important;
    animation-iteration-count: 1      !important;
    transition-duration:       0.01ms !important;
  }
}
