/* ===== ANIMATIONS ===== */
@-webkit-keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1; }
}

@keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1; }
}

@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(70px);
        transform: translateY(70px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(70px);
        transform: translateY(70px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes fadeInScale {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes fadeInScale {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-70px);
        transform: translateY(-70px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-70px);
        transform: translateY(-70px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-150px);
        transform: translateX(-150px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-150px);
        transform: translateX(-150px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(150px);
        transform: translateX(150px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(150px);
        transform: translateX(150px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes scroll {
    0% {
        transform: translateX(0)
    }

    100% {
        transform: translateX(-50%)
    }
}

/* ===== ANIMATION CLASSES ===== */
.fadeIn {
    -webkit-animation: fadeIn 0.5s forwards;
    animation: fadeIn 0.5s forwards;
}

.fadeInUp {
    -webkit-animation: fadeInUp 0.6s forwards;
    animation: fadeInUp 0.6s forwards;
}

.fadeInScale {
    -webkit-animation: fadeInScale 0.6s forwards;
    animation: fadeInScale 0.6s forwards;
}

.fadeInDown {
    -webkit-animation: fadeInDown 0.6s forwards;
    animation: fadeInDown 0.6s forwards;
}

.fadeInRight {
    -webkit-animation: fadeInRight 0.8s forwards;
    animation: fadeInRight 0.8s forwards;
}

.fadeInLeft {
    -webkit-animation: fadeInLeft 0.8s forwards;
    animation: fadeInLeft 0.8s forwards;
}

/* ===== ANIMATION DELAYS ===== */
.delay-1 {
    -webkit-animation-delay: 0.1s;
    animation-delay: 0.1s;
}

.delay-2 {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
}

.delay-3 {
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
}

.delay-4 {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
}

.delay-5 {
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
}

/* ===== VISIBILITY HELPERS ===== */
.hidden {
    opacity: 0;
}

.visible {
    opacity: 1;
}

.in-view {
    opacity: 1;
    -webkit-animation: fadeIn 0.5s forwards;
    animation: fadeIn 0.5s forwards;
}
