/* ==========================================
   GLOBAL ANIMATIONS
========================================== */

[data-animate] {
    opacity: 0;
    transition:
    opacity .9s cubic-bezier(.22,.61,.36,1),
    transform .9s cubic-bezier(.22,.61,.36,1);
    will-change: transform, opacity;
}

[data-animate]{
    backface-visibility:hidden;
    perspective:1000px;
}

[data-animate="fade-up-small"] {
    transform: translateY(30px);
}

[data-animate="zoom-up"] {
    transform: translateY(40px) scale(.95);
}

/* Visible State */
[data-animate].animate-in {
    opacity: 1;
    transform: translate(0, 0) scale(1);
}

/* Fade Up */
[data-animate="fade-up"] {
    transform: translateY(60px);
}

/* Fade Down */
[data-animate="fade-down"] {
    transform: translateY(-60px);
}

/* Fade Left */
[data-animate="fade-left"] {
    transform: translateX(60px);
}

/* Fade Right */
[data-animate="fade-right"] {
    transform: translateX(-60px);
}

/* Zoom In */
[data-animate="zoom-in"] {
    transform: scale(0.85);
}

/* Fade Only */
[data-animate="fade"] {
    transform: none;
}

/* Delay Helpers */
.delay-100 {
    transition-delay: .1s;
}

.delay-200 {
    transition-delay: .2s;
}

.delay-300 {
    transition-delay: .3s;
}

.delay-400 {
    transition-delay: .4s;
}

.delay-500 {
    transition-delay: .5s;
}

.delay-600 {
    transition-delay: .6s;
}

/* Mobile Optimization */
@media (max-width: 768px) {

    [data-animate="fade-left"],
    [data-animate="fade-right"] {
        transform: translateY(40px);
    }
}