/* ============================================================
   ANIMATE — Custom subset (fadeInLeft, fadeInUp, delays)
   Replaces full animate.css (~80KB) with only what's used (~2KB)
   ============================================================ */

.animate__animated {
    animation-duration: 1s;
    animation-fill-mode: both;
}

.animate__delay-1s { animation-delay: 0.3s; }
.animate__delay-2s { animation-delay: 0.6s; }
.animate__delay-3s { animation-delay: 0.9s; }

@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translate3d(-30px, 0, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}
.animate__fadeInLeft { animation-name: fadeInLeft; }

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 30px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}
.animate__fadeInUp { animation-name: fadeInUp; }

/* Respect reduced motion preference */
@media (prefers-reduced-motion: reduce) {
    .animate__animated {
        animation-duration: 0.01ms !important;
        animation-delay: 0s !important;
    }
}
