.preloader {
    position: fixed;
    width: 100%;
    height: 100vh;
    left: 0;
    top: 0;
    transition: all 400ms;
    z-index: 9999999999;
    color: var(--color_pre_loader_text);
}

.preloader.hide-animated {
    animation:preloader-hide 0.5s forwards;
}

.preloader .preloader-bg {
    height: 100%;
    background: var(--color_pre_loader_background);
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    opacity: 0.85;
}

.preloader .preloader-content {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.preloader .preloader-text {
    color: var(--color_pre_loader_text);
    text-transform: uppercase;
    letter-spacing: 8px;
    font-size: 15px;
}

.preloader .dots-container {
    display: flex;
    margin-bottom: 48px;
}

.preloader .dot {
    background: red;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    margin: 0 5px;
}

.preloader .dot.red {
    background: #ef476f;
    animation: bounce 1000ms infinite;
}

.preloader .dot.green {
    background: #06d6a0;
    animation: bounce 1000ms infinite;
    animation-delay: 200ms;
}

.preloader .dot.yellow {
    background: #ffd166;
    animation: bounce 1000ms infinite;
    animation-delay: 400ms;
}

@keyframes bounce {
50% {
    transform: translateY(16px);
}

100% {
    transform: translateY(0);
}
}

@keyframes preloader-hide{
    from {opacity :1;}
    to {opacity :0;}
}

@-webkit-keyframes preloader-hide{
    from {opacity :1;}
    to {opacity :0;}
}