/* Base animation settings */
.animated {
    animation-duration: 1s;
    animation-fill-mode: both;
}

.slow {
    animation-duration: 1.5s;
    animation-fill-mode: both;
}

.slower {
    animation-duration: 2s;
    animation-fill-mode: both;
}

.slowest {
    animation-duration: 2.5s;
    animation-fill-mode: both;
}

/* Delay classes */
.delay-200 {
    animation-delay: 0.2s;
}

.delay-400 {
    animation-delay: 0.4s;
}

.delay-600 {
    animation-delay: 0.6s;
}

/* Fade In Up Animation (for headings and text) */
@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.fadeInUp {
    opacity: 0;
    transform: translateY(30px);
}

.fadeInUp.go {
    animation-name: fadeInUp;
    animation-timing-function: ease-out;
}

/* Scale In Animation (for cards) */
@keyframes scaleIn {
    0% {
        opacity: 0;
        transform: scale(0.9);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}

.scaleIn {
    opacity: 0;
    transform: scale(0.9);
}

.scaleIn.go {
    animation-name: scaleIn;
    animation-timing-function: ease-in-out;
}