@media screen and (max-width: 1320px) {
	.cat-nav.cat-next {
		right: -18px !important;
	}
	.cat-nav.cat-prev {
		left: -18px !important;
	}	
}
@media screen and (max-width: 1280px) {
	.slider-prodotti{
		padding-left: 1rem;
	}
    .background-block-only-sx:not(.inverse-bck)::before {
        left: -7%;
        top: 35%;
        height: 48vh;
        max-height: 300px;
    }
    .background-block-only-sx.inverse-bck::after {
        right: -25%;
        top: 20%;
        height: 48vh;
        max-height: 300px;
    }
}


@media screen and (max-width: 991px) {
	.main-nav-cont{ background-color: white; }
	.responsive-block{
		height: var(--block-height-mobile);
	}

	.block-slider-video .swiper-slide { height: 35vh !important; }
	.block-slider-video .swiper-slide .video-wrapper { height: 20vh !important; }
	.block-slider-video .swiper-slide .video-wrapper video { height: 20vh !important; }
	.block-slider-video .swiper-slide.swiper-slide-active { height: 100% !important; min-height: 35vh !important; }
	.block-slider-video .swiper-slide.swiper-slide-active .video-wrapper { max-height: 35vh !important; height: 35vh !important; min-height: 10vh !important; }
	.block-slider-video .swiper-slide.swiper-slide-active .video-wrapper video { max-height: 35vh !important; height: 35vh !important; }
	.block-slider-video .swiper-slide.swiper-slide-active .video-wrapper picture { max-height: 35vh !important; height: 35vh !important;min-height: 10vh !important; }
    .main-nav-cont .navbar-brand{padding-left: 160px !important;}
	.social-bar .label-cond{font-size: 18px; font-weight: 500;}
	.social-bar .socials-list img{width: 36px; height: 36px;}
	.social-bar .col-lg-6 {padding-left:0; padding-right: 0;}
	.social-bar .col-lg-6:first-child{padding-left:16px;}



    .spec-modal {
        position: fixed !important;
        inset: 0 !important;
        z-index: 9999 !important;

        visibility: hidden !important;
        pointer-events: none !important;
    }

    .spec-modal.open {
        visibility: visible !important;
        pointer-events: auto !important;
    }

    .spec-modal-overlay {
        opacity: 0 !important;
        transition: opacity .3s ease !important;
    }

    .spec-modal.open .spec-modal-overlay {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    .spec-modal-content {
        position: fixed !important;
        left: 0 !important;
        bottom: 0 !important;

        width: 100% !important;
        height: 95vh !important;
        padding: 24px 20px 40px !important;

        background: #fff !important;
        border-radius: 22px 22px 0 0 !important;
        overflow-y: auto !important;

        transform: translateY(100%) !important;
        transition: transform .35s cubic-bezier(0.22, 1, 0.36, 1) !important;

        box-shadow: 0 -20px 40px rgba(0,0,0,0.25) !important;
    }

    .spec-modal.open .spec-modal-content {
        transform: translateY(0) !important;
    }

    .spec-modal-content::before {
        display: none !important;
    }

    .spec-modal-close {
        top: 14px !important;
        right: 14px !important;
        width: 42px !important;
        height: 42px !important;
        font-size: 22px !important;
    }

    .content-wrapper .cont-descr{
        margin-top: 20px;
    }

    .content-wrapper .content-list .cont-descr ul {
        flex-direction: row;
        gap: 0;
        flex-wrap: nowrap;
    }

    .content-wrapper .content-list .cont-descr ul li {
        width: 85%;
        flex-shrink: 0;
    }

    .content-wrapper .content-list .cont-descr .swiper-slide {
        display: block;
    }

    .content-wrapper .content-list .cont-descr .swiper-pagination-bullet {
        background: #999;
        opacity: 0.4;
    }

    .content-wrapper .content-list .cont-descr
    .swiper-pagination-bullet-active {
        opacity: 1;
        background: #000;
    }

    .content-wrapper .content-list .cont-descr {
        position: relative;
    }

    .content-wrapper .swiper-button-prev,
    .content-wrapper .swiper-button-next {
        display: flex;
        width: 32px;
        height: 32px;
        position: absolute;
        bottom: 16px;
        z-index: 20;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        color: transparent;
    }

    .content-wrapper .swiper-button-prev {
        left: 16px;
    }

    .content-wrapper .swiper-button-next {
        right: 16px;
    }

    .content-wrapper .swiper-pagination {
        position: absolute;
        bottom: 18px;
        left: 0;
        right: 0;
        display: flex;
        justify-content: center;
        z-index: 10;
    }

    .content-wrapper .content-list .swiper-controls {
        display: flex;
        align-items: center;
        justify-content: center;
        padding-top: 20px !important;
    }

    .content-wrapper .content-list .swiper-button-prev,
    .content-wrapper .content-list .swiper-button-next {
        width: 48px;
        height: 48px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }

    .content-wrapper .content-list .swiper-button-prev {
        background-image: url("../img/circular-arrow-left.svg");
    }

    .content-wrapper .content-list .swiper-button-next {
        background-image: url("../img/circular-arrow-right.svg");
    }

    .content-wrapper .content-list .cont-descr ul li img {
        display: block;
        margin: 4px auto 0 auto;
    }

        .research-content-section::before,
        .research-content-section::after {
            left: 24px;
            transform: none;
        }

        .research-content-section .timeline-diamond {
            left: calc(24px + 2px);
            transform: translateX(-50%) rotate(45deg);
        }

        .research-content-section .main-default-cont {
            padding-left: 48px;
            padding-bottom: 1rem;
        }

        .research-content-section .main-title {
            margin-top: 1.5rem;
            text-align: start;
        }

        .research-content-section .cont-descr p {
            margin-top: 1.5rem;
            text-align: start;
        }

        .research-content-section .main-content-col img {
            padding-top: 1.5rem;
            padding-bottom: 1.5rem;
        }

    .research-intro-section .main-textual-cont {
        max-width: 900px;
        margin: 0 auto;
        text-align: center;
        padding: 20px 20px;
    }

    .background-block::before, .background-block::after {
        display: none;
    }

    .background-block .container::before {
        content: "";
        position: absolute;
        top: 70px;
        left: 0;
        width: 110px;
        height: 150px;
        background-image: url('../img/bg-right.png');
        background-repeat: no-repeat;
        background-size: contain;
        z-index: 3;
    }

    /* RIGHT SHAPE (bg-left.png) */
    .background-block .container::after {
        content: "";
        position: absolute;
        bottom: 50px;
        right: -58px;
        width: 110px;
        height: 150px;
        background-image: url('../img/bg-left.png');
        background-repeat: no-repeat;
        background-size: contain;
        z-index: 3;
    }

    .blocco-cosa-e .left-spacer-col {
        left: -100px !important;
        top: 325px !important;
        bottom: 0;
        padding: 0;
        z-index: 0;
    }
    .blocco-benefici .right-spacer-col {
        top: -65% !important;
        padding: 0 !important;
        z-index: 0 !important;
        right: -110px !important;
        width: 135px !important;
    }
    .main-cont-slider-hero .diamonds {
        max-width: 390px;
        top: -200px;
        transform: rotate(-90deg);
    }
    .hero-main .swiper-slide .container .row div {
        margin-bottom: 0px !important;
    }
}


@media screen and (max-width: 768px) {
    /* 1. body bloccato */
    body.mega-menu-open {
        overflow: hidden;
        height: 100vh;
        touch-action: none;
    }
	.mega-cat-menu{
		position: fixed !important;
		display: block !important;
		opacity: 1;
		visibility: visible;
		top: 85px !important;
		overflow: scroll !important;
		height: 100% !important;
	}
	.mega-cat-item{
		font-weight: 400 !important;
	}
	.mega-cat-item i, .all-prod-btn i{
		right: 20px;
		position: absolute;
	}
	.btn-default-black.no-arrow:after{
		content: " " !important;
		background: none !important;
	}
	.all-prod-btn{ font-size: 0.875em !important; }
	.slider-cat-prodotti .swiper-controls {
		padding-top: 9px;
	}	
	.slider-cat-prodotti .main-title-slide {
		text-align: center;
		width: 100%;
		margin: 18px auto;
	}	
	.main-nav-cont{ background-color: transparent !important; background-size: cover; background-position-x: -70px; }
    .main-cont-slider-hero {
        height: auto;
        padding: 40px 0 60px;
    }
	.navbar-collapse{ 
		top: -55px;
		position: relative;
		z-index: -1;
		padding-top: 55px;
		background-color: white;
	}
    .main-cont-slider-hero .diamonds {
        max-width: 340px;
        margin-top: 40px;
		top: -180px;
		transform: rotate(-90deg);
    }
	.main-cont-slider-hero .diamonds .diamond.active{
		transform: translate(-50%, -50%) rotate(135deg);
	}
	.slider-hero-home{ min-height: 92vh; height: auto !important; }
	.slider-hero-home .main-title{ font-size: 3em !important; }
	.slider-cat-prodotti, .main-cont-slider-hero{ background: radial-gradient(circle, rgba(255, 221, 0, 0.16) 20%, rgba(255, 255, 255, 1) 90%) !important; }
	h1, h2, h3, h4{ font-size: 2em; }
	.wrapper-textual-generic:not(.slider-hero-home) .main-title, .slider-cat-prodotti .main-title, .content-wrapper .content-title .main-title{ font-size: 2.25em !important; }
	.supercontainer-slider.p-0{ padding-left: 1rem !important; }
	.block-named, .supercontainer-slider.p-0, .well-longevity{ padding-left: 1rem !important; padding-right: 1rem !important; }
	.yellow-bck-block-text, .block-newsletter-yellow, .content-wrapper, .block-giovinezza{ padding-left: 1rem !important; padding-right: 1rem !important; }
	.hero-landing:not(.hero-main) img { opacity: 0;}
	.hero-landing:not(.hero-main) {
        background-image:  url('../img/hero-landing-mobile.jpg');
        background-size: cover; background-position: center;
    }
	.yellow-bck-block-text .container{
        background-image:  url('../img/blur-mobile.jpg') !important;
        background-size: cover; background-position: center;		
	}
	.block-named .container { padding-top: 24px !important; padding-bottom: 24px !important; }
	.block-named .container .col-lg-5.offset-lg-6.ps-5 { padding-left: 1rem !important;}
	.footer-landing .main-footer-cont{ background-image: none !important;}
	.footer-landing { background: linear-gradient(to bottom, transparent 0 3px, #f6f6f6 80px 100%);}
    .slider-prodotti{ padding-left: 0; }
	.block-slider-video .swiper-slide.swiper-slide-active .main-title-slide {font-size: 1.5em !important;}

    .gallery-single-prod .swiper-button-prev {
        background-image: url('../img/yellow-circular-arrow-left.svg') !important;
        left: 35px;
        background-size: cover;
    }

    /*.prod-gallery-col {*/
    /*    padding-left: 56px;*/
    /*    padding-right: 56px;*/
    /*}*/
    .prod-content {
        gap: 1rem !important;
    }

    .prod-links .btn-black, .prod-links .btn-white-contact {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .blocco-assunzione .assunzione-title {
        font-size: 2rem !important;
    }

    .blocco-assunzione .assunzione-text p {
        font-size: 1rem !important;
    }

    .background-block-only-sx {
        overflow: visible;
    }

    .background-block-only-sx:not(.inverse-bck)::before {
        left: -24%;
        top: 35%;
        height: 48vh;
        max-height: 300px;
    }
    .background-block-only-sx.inverse-bck::after {
        right: -70%;
        top: 60%;
        height: 48vh;
        max-height: 300px;
    }

    .background-block {
        overflow: hidden;
        background: #fff;
    }

    .background-block .container {
        position: relative;
    }

    .cosa-e-title, .adatto-title, .benefici-title {
        font-size: 2em !important;
    }

    .adatto-text p {
        font-size: 1em !important;
    }

    .adatto-card .details {
        font-weight: 400 !important;
        line-height: 150% !important;
        font-size: 0.875em !important;
        color: #171717 !important;
    }

    .prod-content .prod-title {
        font-size: 2.5rem;
    }

    .spec-elem .title {
        font-size: 1.25rem !important;
    }

    .spec-elem .detail {
        font-size: 0.875rem !important;
    }

    .spec-elem .accordion-title {
        font-size: 1rem !important;
    }

    .background-block .container::before {
        content: "";
        position: absolute;
        top: -100px;
        left: 0;
        width: 110px;
        height: 150px;
        background-image: url('../img/bg-right.png');
        background-repeat: no-repeat;
        background-size: contain;
        z-index: 3;
    }

    /* RIGHT SHAPE (bg-left.png) */
    .background-block .container::after {
        content: "";
        position: absolute;
        bottom: -80px;
        right: -58px;
        width: 110px;
        height: 150px;
        background-image: url('../img/bg-left.png');
        background-repeat: no-repeat;
        background-size: contain;
        z-index: 3;
    }


    .left-spacer-img{
        aspect-ratio: 1/1;
        width: 400px;
        height: 400px;
        margin-top: 10%;
        margin-left: 30% !important;
    }

    .blocco-cosa-e .left-spacer-col {
        left: -5% !important;
        top: 230px !important;
        bottom: 0;
        padding: 0;
        z-index: 0;
        width: 200px !important;
    }

    .right-spacer-img{
        aspect-ratio: 1/1;
        width: 400px;
        height: 400px;
        margin-right: 15% !important;
        margin-top: 10% !important;
    }

    .blocco-benefici .right-spacer-col {
        top: 400px !important;
        padding: 0 !important;
        z-index: 0 !important;
        right: -110px !important;
        width: 200px !important;
    }


    footer {
        text-align: center;
    }

    footer .main-footer-cont {
        background-image: url("../img/bg-new-footer-mobile.png");
        background-repeat: no-repeat;
        background-position: top center;
        background-size: contain;
        padding-top: 120px;
        padding-bottom: 40px;
    }

    footer .footer-logo {
        display: inline-block;
        margin-bottom: 16px;
    }

    footer .footer-logo img {
        width: 191px;
        height: 68px;
    }

    footer p {
        font-size: 13px;
        line-height: 1.5;
        margin-bottom: 6px;
    }

    footer .row > [class*="col-"] {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
        text-align: center;
    }

    footer .offset-lg-1,
    footer .offset-md-3 {
        margin-left: 0 !important;
    }

    footer .footer-menu {
        border: none;
    }

    footer .footer-menu p {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 10px;
        margin: 0;
        padding: 10px 0;
        font-size: 14px;
        font-weight: 700;
        cursor: pointer;
    }

    footer .footer-menu p::after {
        content: "";
        width: 8px;
        height: 8px;
        margin-top: -2px;
        border-right: 2px solid #000;
        border-bottom: 2px solid #000;
        transform: rotate(45deg);
        transition: transform 0.3s ease;
    }

    footer .footer-menu.open p::after {
        margin-top: 4px;
        transform: rotate(-135deg);
    }

    footer .footer-menu .single-footer-link {
        display: none;
        padding: 2px 0;
        font-size: 14px;
        text-align: center;
    }

    footer .footer-menu.open .single-footer-link {
        display: block;
    }

    footer hr {
        width: 85%;
        margin: 28px auto 20px;
        height: 1px;
        border: none;
        background: rgba(0, 0, 0, 0.2);
    }

    footer .footer-logos {
        display: flex;
        justify-content: center;
        gap: 22px;
        padding: 30px 0;
    }

    footer .social-logo {
        width: 22px;
        height: 22px;
        opacity: 0.85;
    }

    footer .f-14 {
        margin-top: 10px;
        font-size: 12px;
        line-height: 1.4;
    }

    footer .main-footer-cont a {
        color: #000;
    }

}

@media screen and (max-width: 576px) {
	.hero-landing .swiper-slide:before{
		background-image: url('../img/hero-sfumatura-mobile.png');
	}
    .blocco-cosa-e .left-spacer-col {
        left: -110px !important;
        top: 46% !important;
        bottom: 0;
        padding: 0;
        z-index: 0;
        width: 132px !important;
    }
    .blocco-benefici .right-spacer-col {
        top: 65% !important;
        padding: 0 !important;
        z-index: 0 !important;
        right: -110px !important;
        width: 132px !important;
    }

    .left-spacer-img{
        aspect-ratio: 1/1;
        width: 280px;
        height: 280px;
        margin-top: 10%;
        margin-left: 15% !important;
    }

    .right-spacer-img{
        aspect-ratio: 1/1;
        width: 280px;
        height: 280px;
        margin-right: 15% !important;
        margin-top: 10% !important;
    }
	.breadcrumb-prodotti{ display: block !important; }
}
@media screen and (max-width: 480px) {
	.main-nav-cont{ background-color: transparent !important; background-size: cover; background-position-x: 0px; }
}
	