﻿.animate-rotate {
    animation: 15s rotate infinite linear;
}

@keyframes rotate {
    100% {
        transform: rotate(1turn)
    }
}

.animate-pan {
    animation: pan 35s infinite;
}

@keyframes pan {
    0% {
        opacity: 0;
    }

    5% {
        opacity: 1;
    }

    95% {
        transform: scale3d(1.25, 1.25, 1.25) translate3d(-190px, -120px, 0px);
        animation-timing-function: ease-in;
        opacity: 1;
    }

    100% {
        transform: scale3d(2, 2, 2) translate3d(-170px, -100px, 0px);
        opacity: 0;
    }
}

.animate-slide-up {
    /*visibility: hidden;*/
    opacity: 0;
    animation: 1s ease-out 0s 1 forwards slide-up;
}

@keyframes slide-up {
    0% {
        transform: translateY(30%);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@media screen and (prefers-reduced-motion: reduce) {
    .animation-slide-up { animation: none !important; }
}

.animate-reveal {
    /* Small class to reveal in --d amount of times
        HTML: style="--d: 0s" // increase --d to delay 
    */
    display: block;
    opacity: 0;
    animation: reveal 0.5s forwards var(--d);
}

@keyframes reveal {
    from {
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: none;
    }
}


.animation-delay-2 {
    animation-delay: .2s !important;
}

.animation-delay-3 {
    animation-delay: .4s !important;
}

.animation-delay-4 {
    animation-delay: .6s !important;
}

.animation-delay-5 {
    animation-delay: .8s !important;
}

.animation-delay-6 {
    animation-delay: 1s !important;
}

@media only screen and (max-width: 992px) {
    .animate-lg-slide-up {
        /* active slide up animation only on large screens - must combine with the original class */
        opacity: 1;
        animation: unset;
    }
}