/* =================================================
   ANIMATIONS — Keyframes, Scroll Reveal, Transitions
   ================================================= */

/* ---- Scroll Reveal ---- */
.reveal {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 1s ease, transform 1s ease, box-shadow .4s ease;
}

.reveal.active {
    opacity: 1;
    transform: translateY(0);
}

/* ---- Keyframes (add more here as needed) ---- */

/* Fade in from below */
@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

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

/* Scale in */
@keyframes scaleIn {
    from {
        opacity: 0;
        transform: scale(.92);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Pulse (useful for CTAs or badges) */
@keyframes pulse {
    0%, 100% { transform: scale(1); }
    50%       { transform: scale(1.05); }
}