/* ═══════════════════════════════════════════════════════════════════
   HUNTEX — ANIMATIONS & REVEAL SYSTEM
═══════════════════════════════════════════════════════════════════ */

/* ── Reveal base states ─────────────────────────────────────────── */
.reveal-up {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.75s cubic-bezier(0,0,0.2,1), transform 0.75s cubic-bezier(0,0,0.2,1);
}
.reveal-fade {
    opacity: 0;
    transition: opacity 0.8s cubic-bezier(0,0,0.2,1);
}
.reveal-right {
    opacity: 0;
    transform: translateX(50px);
    transition: opacity 0.75s cubic-bezier(0,0,0.2,1), transform 0.75s cubic-bezier(0,0,0.2,1);
}
.reveal-pillar {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s cubic-bezier(0,0,0.2,1), transform 0.6s cubic-bezier(0,0,0.2,1);
}

/* Delays */
.delay-1 { transition-delay: 0.12s !important; }
.delay-2 { transition-delay: 0.22s !important; }
.delay-3 { transition-delay: 0.32s !important; }
.delay-4 { transition-delay: 0.42s !important; }
.delay-5 { transition-delay: 0.52s !important; }

/* In-view state */
.reveal-up.in-view,
.reveal-fade.in-view,
.reveal-right.in-view,
.reveal-pillar.in-view {
    opacity: 1;
    transform: none;
}

/* ── Intro animations ───────────────────────────────────────────── */
@keyframes fadeInUp {
    from { opacity:0; transform:translateY(30px); }
    to   { opacity:1; transform:translateY(0); }
}
@keyframes fadeOutUp {
    from { opacity:1; transform:translateY(0); }
    to   { opacity:0; transform:translateY(-40px); }
}

/* ── Glow pulse ─────────────────────────────────────────────────── */
@keyframes glowPulse {
    0%,100% { box-shadow: 0 0 30px rgba(0,87,255,0.2); }
    50%      { box-shadow: 0 0 60px rgba(0,87,255,0.5); }
}
.glow-pulse { animation: glowPulse 3s ease-in-out infinite; }

/* ── Floating ───────────────────────────────────────────────────── */
@keyframes float {
    0%,100% { transform:translateY(0); }
    50%      { transform:translateY(-12px); }
}
.float { animation: float 4s ease-in-out infinite; }

/* ── Shimmer skeleton ───────────────────────────────────────────── */
@keyframes shimmer {
    from { background-position: -200% center; }
    to   { background-position:  200% center; }
}

/* ── Stagger children ───────────────────────────────────────────── */
.stagger > *:nth-child(1) { transition-delay: 0s; }
.stagger > *:nth-child(2) { transition-delay: .1s; }
.stagger > *:nth-child(3) { transition-delay: .2s; }
.stagger > *:nth-child(4) { transition-delay: .3s; }
.stagger > *:nth-child(5) { transition-delay: .4s; }
.stagger > *:nth-child(6) { transition-delay: .5s; }
.stagger > *:nth-child(7) { transition-delay: .6s; }
.stagger > *:nth-child(8) { transition-delay: .7s; }
