.banner_image {
    content-visibility: auto;
    contain-intrinsic-size: 500px;
}

.banner_image .slide:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(179deg, rgba(0, 0, 0, 0) -32.41%, #000 98.89%);
}

.banner_image .slide.linear-gradient-reverse:after {
    background: linear-gradient(90deg,rgba(14, 14, 14, 1) 55%, rgba(14, 14, 14, 0.1) 100%);
}

@media screen and (min-width: 768px) {
    .banner_image .slide:after {
        background: linear-gradient(90deg, rgba(0, 0, 0, 0) -6.13%, #000 106.34%);
    }
    .banner_image .slide.linear-gradient-reverse:after {
        background: linear-gradient(90deg,rgba(14, 14, 14, 1) 55%, rgba(14, 14, 14, 0.1) 100%);
    }
}

.banner_image .content-slide {
    z-index: 100;
    right: 0;
    width: 100%;
    padding: 0 1rem;
}

.banner_image .content-slide .label {
    width: fit-content;
    font-size: 0.85rem;
}

.banner_image .content-slide p {
    width: 100%;
}

@media screen and (min-width: 768px) {
    .banner_image .content-slide p {
        width: 70%;
    }
}

/* Default: tutte le slide */
.banner_image .wrap-img img {
    width: auto;
    height: 450px;
}

/* Desktop: ≥992px */
@media screen and (min-width: 992px) {
    .banner_image .wrap-img img,
    .slide.linear-gradient-reverse .wrap-img img {
        width: 100%;
        height: 400px;
        object-fit: cover;
    }
}

/* Mobile / tablet: <992px, solo slide linear-gradient-reverse */
@media screen and (max-width: 991px) {
    .slide.linear-gradient-reverse .wrap-img img {
        width: 100%;
        height: 450px;
        object-fit: cover;
    }
}


/* Dots */

.banner_image .container-slider .slick-dots {
    bottom: 24px;
}

.banner_image .container-slider .slick-dots li button:before {
    color: #fff;
    opacity: 0.5;
}

@media screen and (min-width: 768px) and (max-width: 800px) {
    .banner_image .container-slider .slick-dots {
        left: 32px;
        text-align: left;
    }
}

.banner_image .container-slider .slick-dots li {
    margin: 0;
}

.banner_image .container-slider .slick-dots li.slick-active button:before {
    color: transparent;
    width: 16px;
    height: 6px;
    background-color: #fff;
    border-radius: 100px;
    top: calc(50% - 4px);
    opacity: 1;
}

/* Gestione navigation in base al numero di slide */

.banner_image .slick-slider .slick-dots {
    display: none;
}

.banner_image div.slick-slide:first-child:nth-last-child(n + 1):parent(.slick-slider) .slick-dots {
    display: block;
}
