body { background-color: #eeeeee !important; }

#header .container { max-height: 165px; }
#footer, #copyrights { background-color: #fff !important; max-height: 165px; }

#wrapper {
    background-image: url("/images/fondoframe_20.png") !important;
    background-repeat: no-repeat;
    background-size: cover !important;
    background-color: #fff !important;
    background-position: center top;
}

.side-panel-wrap {
    background-image: url("/images/fondoframess_all.png") !important;
    background-repeat: no-repeat;
    background-size: cover !important;
    background-color: #fff !important;
    background-position: left top;
}
.side-panel-wrap .widget img { background-color: #fff !important; }

#side-panel .side-panel-wrap { min-width: 360px !important; padding: 20px; }
#side-panel .widget { min-width: 250px !important; }

#top-bar, .header-row, #top-logo, #contentsection, #mainform,
.grid-inner, .product, .product-title, .product-image,
.product-desc, .product-subtitle, .iconlist,
#content, img { background-color: transparent !important; }

.white-section {
    background-color: #FFF;
    padding: 25px 20px;
    box-shadow: 0px 1px 1px 0px #dfdfdf;
    border-radius: 3px;
}
.white-section label { margin-bottom: 30px; }
.dark .white-section {
    background-color: #333;
    box-shadow: 0px 1px 1px 0px #444;
}

.logo { justify-content: center; height: 110px; }

.box-orange { position: absolute; width: auto; top: -80px; right: 5px; }

.icon-cogs-new, .icon-tint-new, .icon-star-new {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain !important;
    background-color: transparent;
}
.icon-cogs-new { width: 20px; background-image: url('/images/icons/icona_caratteristichetecniche.png?v2'); }
.icon-tint-new { width: 25px; background-image: url('/images/icons/icona_guarnizioni.png?v2'); }
.icon-star-new { width: 20px; background-image: url('/images/icons/icona_opzioni.png?v2'); }

.slide { height: 400px !important; }
.flex-control-nav { height: 100px !important; margin-bottom: -2px; }
.flex-control-nav.flex-control-thumbs { justify-content: center !important; }
.tab-nav li a { padding: 0 5px; }
mark { background-color: transparent; }

.mfp-content, .mfp-figure {
    background-color: #fff !important;
    width: 600px !important;
    height: 400px !important;
}

/* Desktop: immagini e schede affiancate */
.pcd-desktop-row { display: flex; flex-direction: row; width: 100%; }

@media (max-width: 991.98px) {
    .pcd-desktop-row { display: contents; }

    body { background-color: #eeeeee !important; }
    .m-5 { margin: 0.5rem !important; }
    #page-title { padding: 0.8rem; text-align: center; }
    #copyrights { display: none; }
    .section, .content-wrap { padding-bottom: 0 !important; }
    .white-section { padding: 5px 1px !important; }

    .page-header h1 { font-size: 1.3rem; font-weight: 600; text-align: center; }
    .h3 { font-size: 1.3rem; font-weight: 400; text-align: center; }

    #productlist {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        gap: 0;
        padding: 0 !important;
        scrollbar-width: none;
    }
    #productlist::-webkit-scrollbar { display: none; }

    .pcd-slide {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        min-width: 100%;
        scroll-snap-align: start;
        padding: 12px 14px 18px;
        box-sizing: border-box;
        float: none !important;
    }

    .pcd-slide-images .actbtncart {
        display: block !important;
        float: none !important;
        width: 100% !important;
        text-align: center;
        margin: 8px 0 0 !important;
    }
    .pcd-slide-tabs .tab-nav li a { padding: 6px 8px; font-size: 12px; }
    .pcd-slide-tabs table { font-size: 12px; }

     .pcd-slide-faq .product-faq {
        max-height: calc(100vh - 168px - env(safe-area-inset-bottom, 0px));
        overflow-y: auto;
        overflow-x: none;
        -webkit-overflow-scrolling: touch;
        padding-right: 4px;
    }

    #product-carousel-dots {
        display: flex !important;
        justify-content: center;
        align-items: center;
        gap: 7px;
        padding: 10px 0 4px;
        width: 100%;
    }
    #product-carousel-dots .pcd-dot {
        width: 7px; height: 7px;
        border-radius: 50%;
        background: #d8d8d8;
        transition: background .15s, transform .15s;
    }
    #product-carousel-dots .pcd-dot.active {
        background: #009FE3;
        transform: scale(1.25);
    }
}
@media (max-width: 991.98px) {
	.m-5 {
		margin: 0.5rem !important;
	}
	.page-header h1 {
		font-size: 1.3rem;
		font-weight: 600;
		text-align: center;
	}
    .page-h2 .span-h2 {
		font-size: 1.3rem;
		font-weight: 200;
		text-align: center;
	}    
	.h3 {
		font-size: 1.3rem;
		font-weight: 400;
		text-align: center;
	}
	.white-section {
		padding: 5px 1px 5px 1px !important;
	}			
    #productlist > .product {
        gap: 14px;
        padding-top: 4px !important;
        padding-right: 4px !important;
        padding-bottom: 6px !important;
        padding-left: 4px !important;
    }	
    #page-title {
        padding: 0.8rem;
        text-align: center;
    }	
	#productlist .product-image img {
        max-height: 300px !important;
        max-height: 250px !important;
	}	
	#productlist .sale-flash,
	#productlist .sale-flash.d-block.d-md-none {
		width: 100% !important;
	}
	.sale-flash .button-slider {
	    width: 100% !important;
	}	
	.sale-flash .button-slider {
        display: inline-block !important;
        float: none !important;
        margin: 12px 0 0 !important;
        width: 100%;
        text-align: center;
	}	
	#productlist > .product {
		box-shadow: none;
	}			
 		
 		
    .slide { height: 250px !important; }
}
@media (max-width: 991.98px) {

  .pcd-slide-faq {
    /* togliamo anche ~30px per i dots */
    min-height: calc(100vh - 48px - 60px - 30px - env(safe-area-inset-bottom, 0px));
    /*max-height: calc(100vh - 48px - 60px - 50px - env(safe-area-inset-bottom, 0px));*/
    overflow-y: auto;
    box-sizing: border-box;
  }

  .pcd-slide-faq .product-faq {
    max-height: calc(100vh - 48px - 60px - 30px - env(safe-area-inset-bottom, 0px));
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding-right: 4px;
    padding-bottom: 16px; /* respiro extra in fondo */
  }

  /* Assicura che i dots siano sempre visibili sopra tutto */
  #product-carousel-dots {
    position: relative;
    z-index: 10;
    background: #fff; /* o il colore della pagina */
    flex-shrink: 0;
  }
}
@media (max-width: 991.98px) {
  #contentsection,
  #shop {
    overflow: hidden; /* impedisce che lo scroll orizzontale si propaghi su */
  }
}
@media (max-width: 991.98px) {

  #productlist {
    overflow-x: auto;
    overflow-y: hidden; /* blocca la scrollbar orizzontale fantasma */
  }

  .pcd-slide-faq .product-faq {
    overflow-x: hidden; /* niente scrollbar orizzontale dentro la faq */
  }
}