/*---------------------------------------
  ANIMATIONS
  Barista-inspired smooth transitions
-----------------------------------------*/

/* ---- Hero slide transition ---- */
@keyframes kenBurns {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1.08);
    }
}

.slide.active {
    animation: kenBurns 8s ease forwards;
}

/* ---- Scroll pulse ---- */
@keyframes scrollPulse {

    0%,
    100% {
        opacity: 0.3;
        transform: scaleY(1);
    }

    50% {
        opacity: 1;
        transform: scaleY(1.3);
    }
}

/* ---- Modal entrance ---- */
@keyframes modalIn {
    from {
        opacity: 0;
        transform: scale(0.95) translateY(20px);
    }

    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

/* ---- WhatsApp pulse ---- */
@keyframes waPulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
}

.wa-float {
    animation: waPulse 2s infinite ease-in-out;
    will-change: transform;
}

/* ---- Counter glow ---- */
@keyframes counterGlow {

    0%,
    100% {
        text-shadow: none;
    }

    50% {
        text-shadow: 0 0 20px rgba(221, 161, 94, 0.3);
    }
}

.stat-number.animated {
    animation: counterGlow 2s ease-in-out 1;
}

/* ---- Hero content entrance ---- */
@keyframes heroContentIn {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

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

.hero-content {
    animation: heroContentIn 1s ease 0.5s both;
}

/* ---- Reduced Motion ---- */
@media (prefers-reduced-motion: reduce) {
    .slide.active {
        animation: none;
    }

    .wa-float {
        animation: none;
    }

    .hero-content {
        animation: none;
        opacity: 1;
    }

    [data-reveal] {
        opacity: 1;
        transform: none;
        transition: none;
    }
}