.banner-slide {
    position: fixed;
    max-width: 96rem;
}

.banner-big {
    height: 725px;
}

@keyframes fillProgress {
    0% {
        background-position: 100% 0;
    }

    100% {
        background-position: 0% 0;
    }
}

/* Dots */
.slick-slider .slick-dots {
    position: absolute;
    bottom: 12%;
    right: 80px;
    width: fit-content;
    text-align: left;
    margin: 0;
    z-index: 1;
    display: flex;
    background-color: rgba(45, 35, 30, 0.45);
    backdrop-filter: blur(1px);
    -webkit-backdrop-filter: blur(1px);
    padding: 20px 18px;
    width: fit-content;
    border-radius: 24px;
}

.slick-slider .slick-dots li button {
    width: 16px;
    height: 16px;
    border-radius: 8px;
    margin: 0 5px;
    background-color: transparent;
    border: 1px solid white;
    cursor: pointer;
    content: "";
    display: block;
    font-size: 0;
}

.slick-dots li.slick-active button {
    width: 60px !important;
    background: linear-gradient(to right, #ffffff 50%, transparent 50%);
    background-size: 200% 100%;
    background-position: 100% 0;
    animation: fillProgress 5000ms linear infinite;
}

.banner-slide:hover .slick-dots li.slick-active button {
    animation-play-state: paused;
}

@media (max-width: 430px) {
    .banner-slide {
        position: relative;
    }

    .slick-slider .slick-dots {
        padding: 10px 5px;
        justify-content: center;
        left: 5%;
        bottom: 43%;
    }

    .slick-slider .slick-dots li button {
        width: 10px;
        height: 10px;
    }

    .slick-dots li.slick-active button {
        width: 40px !important;
    }
}
