/* Floating Cards */

@keyframes float {

    0%,
    100% {

        transform: translateY(0px);

    }

    50% {

        transform: translateY(-20px);

    }

}

/* Scroll Indicator */

@keyframes scroll {

    0% {

        opacity: .3;

        transform: translateY(0);

    }

    50% {

        opacity: 1;

    }

    100% {

        opacity: .3;

        transform: translateY(20px);

    }

}

/* ==========================================
   GLOBAL FADE UP REVEALS
   ========================================== */

.fade-up {
    opacity: 0;
    transform: translateY(40px);
    filter: blur(8px);
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1),
                transform 0.8s cubic-bezier(0.16, 1, 0.3, 1),
                filter 0.8s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform, opacity, filter;
}

.fade-up.is-visible {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
}