/* Preloader */

.preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(155, 155, 155, 0.6);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    display: flex !important;
    align-items: center;
    justify-content: center;
    opacity: 1;
    visibility: visible;
    z-index: 99999;
    transition: opacity 0.8s ease-out, visibility 0.8s ease-out;
}

.preloader.preloader--running,
.preloader.preloader--running.hide,
.preloader.preloader--running.d-none,
.preloader.preloader--locked,
.preloader.preloader--locked.hide,
.preloader.preloader--locked.d-none,
.preloader.preloader--locked.preloader--hidden,
.preloader.hide:not(.preloader--hidden),
.preloader.d-none:not(.preloader--hidden),
.preloader.preloader--hidden:not(.preloader--can-hide) {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.preloader.preloader--can-hide.preloader--hidden {
    display: flex !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none;
}

.preloader__inner {
    display: flex;
    align-items: center;
    justify-content: center;
}

.preloader__logo {
    max-width: 350px;
    height: auto;
}

.preloader:not(.preloader--running) [class^="svg-elem-"],
.preloader:not(.preloader--running) [class*=" svg-elem-"] {
    -webkit-animation: none !important;
    animation: none !important;
    fill: transparent;
}


/* SVG fill animation */

@-webkit-keyframes animate-svg-fill-1 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-1 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-1 {
    -webkit-animation: animate-svg-fill-1 0.7s ease-in-out 0.8s both;
    animation: animate-svg-fill-1 0.7s ease-in-out 0.8s both;
}

@-webkit-keyframes animate-svg-fill-2 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-2 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-2 {
    -webkit-animation: animate-svg-fill-2 0.7s ease-in-out 0.91s both;
    animation: animate-svg-fill-2 0.7s ease-in-out 0.91s both;
}

@-webkit-keyframes animate-svg-fill-3 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-3 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-3 {
    -webkit-animation: animate-svg-fill-3 0.7s ease-in-out 1.02s both;
    animation: animate-svg-fill-3 0.7s ease-in-out 1.02s both;
}

@-webkit-keyframes animate-svg-fill-4 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-4 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-4 {
    -webkit-animation: animate-svg-fill-4 0.7s ease-in-out 1.13s both;
    animation: animate-svg-fill-4 0.7s ease-in-out 1.13s both;
}

@-webkit-keyframes animate-svg-fill-5 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-5 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-5 {
    -webkit-animation: animate-svg-fill-5 0.7s ease-in-out 1.24s both;
    animation: animate-svg-fill-5 0.7s ease-in-out 1.24s both;
}

@-webkit-keyframes animate-svg-fill-6 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-6 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-6 {
    -webkit-animation: animate-svg-fill-6 0.7s ease-in-out 1.35s both;
    animation: animate-svg-fill-6 0.7s ease-in-out 1.35s both;
}

@-webkit-keyframes animate-svg-fill-7 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-7 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-7 {
    -webkit-animation: animate-svg-fill-7 0.7s ease-in-out 1.46s both;
    animation: animate-svg-fill-7 0.7s ease-in-out 1.46s both;
}

@-webkit-keyframes animate-svg-fill-8 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-8 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-8 {
    -webkit-animation: animate-svg-fill-8 0.7s ease-in-out 1.57s both;
    animation: animate-svg-fill-8 0.7s ease-in-out 1.57s both;
}

@-webkit-keyframes animate-svg-fill-9 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-9 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-9 {
    -webkit-animation: animate-svg-fill-9 0.7s ease-in-out 1.68s both;
    animation: animate-svg-fill-9 0.7s ease-in-out 1.68s both;
}

@-webkit-keyframes animate-svg-fill-10 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-10 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-10 {
    -webkit-animation: animate-svg-fill-10 0.7s ease-in-out 1.79s both;
    animation: animate-svg-fill-10 0.7s ease-in-out 1.79s both;
}

@-webkit-keyframes animate-svg-fill-11 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-11 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-11 {
    -webkit-animation: animate-svg-fill-11 0.7s ease-in-out 1.9s both;
    animation: animate-svg-fill-11 0.7s ease-in-out 1.9s both;
}

@-webkit-keyframes animate-svg-fill-12 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-12 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-12 {
    -webkit-animation: animate-svg-fill-12 0.7s ease-in-out 2.01s both;
    animation: animate-svg-fill-12 0.7s ease-in-out 2.01s both;
}

@-webkit-keyframes animate-svg-fill-13 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-13 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-13 {
    -webkit-animation: animate-svg-fill-13 0.7s ease-in-out 2.12s both;
    animation: animate-svg-fill-13 0.7s ease-in-out 2.12s both;
}

@-webkit-keyframes animate-svg-fill-14 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-14 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-14 {
    -webkit-animation: animate-svg-fill-14 0.7s ease-in-out 2.23s both;
    animation: animate-svg-fill-14 0.7s ease-in-out 2.23s both;
}

@-webkit-keyframes animate-svg-fill-15 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-15 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-15 {
    -webkit-animation: animate-svg-fill-15 0.7s ease-in-out 2.34s both;
    animation: animate-svg-fill-15 0.7s ease-in-out 2.34s both;
}

@-webkit-keyframes animate-svg-fill-16 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-16 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-16 {
    -webkit-animation: animate-svg-fill-16 0.7s ease-in-out 2.45s both;
    animation: animate-svg-fill-16 0.7s ease-in-out 2.45s both;
}

@-webkit-keyframes animate-svg-fill-17 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-17 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-17 {
    -webkit-animation: animate-svg-fill-17 0.7s ease-in-out 2.56s both;
    animation: animate-svg-fill-17 0.7s ease-in-out 2.56s both;
}

@-webkit-keyframes animate-svg-fill-18 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-18 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-18 {
    -webkit-animation: animate-svg-fill-18 0.7s ease-in-out 2.67s both;
    animation: animate-svg-fill-18 0.7s ease-in-out 2.67s both;
}

@-webkit-keyframes animate-svg-fill-19 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-19 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-19 {
    -webkit-animation: animate-svg-fill-19 0.7s ease-in-out 2.78s both;
    animation: animate-svg-fill-19 0.7s ease-in-out 2.78s both;
}

@-webkit-keyframes animate-svg-fill-20 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-20 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-20 {
    -webkit-animation: animate-svg-fill-20 0.7s ease-in-out 2.89s both;
    animation: animate-svg-fill-20 0.7s ease-in-out 2.89s both;
}

@-webkit-keyframes animate-svg-fill-21 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

@keyframes animate-svg-fill-21 {
    0% {
        fill: transparent;
    }
    100% {
        fill: rgb(235, 29, 39);
    }
}

.svg-elem-21 {
    -webkit-animation: animate-svg-fill-21 0.7s ease-in-out 3s both;
    animation: animate-svg-fill-21 0.7s ease-in-out 3s both;
}
