/*
Theme Name: Indaweb Child
Template: Divi
Theme URI: https://indaweb.it
Author: Indaweb
Author URI: https://indaweb.it
Description: Flexible Multi-Purpose Responsive WordPress Theme
Version: 1.0
Tags: one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-menu, featured-images, flexible-header, post-formats, sticky-post, translation-ready

/* Below you can write your style */
@media screen and (max-width: 980px) {
    .reverse {
        display: flex!important;
        flex-direction: column-reverse!important;
    }
} 
/*Home*/
.overlay-section {
    position: relative;
    overflow: hidden;
}

.overlay-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6); /* Nero al 60% */
    z-index: 2;
}
.carosello-ambienti-home .dipl_horizontal_scrolling_card_wrapper{
	padding-top:0px;
}
.carosello-ambienti-home .dipl_horizontal_scrolling_card_title{
	margin-top:35px!important;
}

/*SCHEDA PRODOTTO*/
.iw-dettagli-title{
  margin: 0 0 .75rem;
	font-family: 'HelveticaNeue-Thin', Helvetica, Arial, Lucida, sans-serif!important;
	font-size:1em;
}
.iw-dettagli-grid{
  display: grid;
  grid-template-columns: 1fr;               /* mobile: una colonna */
  gap: 24px;
}
@media (min-width: 768px){
  .iw-dettagli-grid{
    grid-template-columns: 1fr 1fr;         /* da tablet: due colonne */
    gap: 32px;
  }
}
.iw-dettagli-col{}
.iw-dettaglio{
  margin: 0 0 20px;
}
.iw-dettaglio__title{
  margin: 0 0 8px;
  font-size: 1.25rem;
  line-height: 1.3;
}
.iw-dettaglio__content > :last-child{
  margin-bottom: 0;                          /* pulizia spaziatura finale */
}
/* Grid */
.iw-dimensioni-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
}
@media (min-width:768px){
  .iw-dimensioni-grid{ grid-template-columns:repeat(2,1fr); gap:28px; }
}
@media (min-width:1024px){
  .iw-dimensioni-grid.iw-dimensioni-cols-3{ grid-template-columns:repeat(3,1fr); gap:32px; }
  .iw-dimensioni-grid.iw-dimensioni-cols-2{ grid-template-columns:repeat(2,1fr); }
  .iw-dimensioni-grid.iw-dimensioni-cols-1{ grid-template-columns:1fr; }
}

.iw-dimensione__title{ margin:0 0 6px; font-size:1.25rem; line-height:1.35; }
.iw-dimensione__content > :last-child{ margin-bottom:0; }
.iw-dimensione__media{ margin:10px 0 0; line-height:0; }
.iw-dimensione__media img{ display:block; width:100%; height:auto; }

.iwc-gallery-wrap{position:relative;max-width:100%;height:650px;margin:30px 0;}
.iwc-gallery-viewport{height:100%;overflow:hidden;position:relative}
.iwc-track{display:flex;height:100%;transition:transform .35s ease;}
.iwc-slide{min-width:100%;height:100%;padding:0 60px;box-sizing:border-box;}
.iwc-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;height:100%;}
.iwc-grid.mix-hv{grid-template-columns:2fr 1fr;}
.iwc-grid.mix-vh{grid-template-columns:1fr 2fr;}
.iwc-cell{position:relative;overflow:hidden;border-radius:12px;background:#f5f5f5;}
.iwc-cell img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.iwc-nav{pointer-events:none;}
.iwc-btn{pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);z-index:5;
         width:44px;height:44px;border-radius:999px;border:1px solid #ddd;background:#fff;
         display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px rgba(0,0,0,.08);
         cursor:pointer;transition:box-shadow .2s ease, transform .2s ease;}
.iwc-btn:hover{box-shadow:0 6px 18px rgba(0,0,0,.12);}
.iwc-btn:active{transform:translateY(-50%) scale(.98);}
.iwc-prev{left:-52px;} .iwc-next{right:-52px;}
@media (max-width:900px){.iwc-slide{padding:0 40px;}.iwc-prev{left:-36px;}.iwc-next{right:-36px;}}
@media (max-width:640px){
  .iwc-gallery-wrap{height:520px;}
  .iwc-slide{padding:0 32px;}
  .iwc-prev{left:-28px;}.iwc-next{right:-28px;}
  .iwc-grid{gap:8px;}
}
/* Lightbox */
.iwc-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.85);display:none;align-items:center;justify-content:center;z-index:9999;}
.iwc-lightbox.open{display:flex;}
.iwc-lightbox img{max-width:90vw;max-height:90vh;object-fit:contain;}
.iwc-lb-close,.iwc-lb-prev,.iwc-lb-next{
  position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:999px;
  background:rgba(255,255,255,.96);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;
  box-shadow:0 2px 10px rgba(0,0,0,.2);}
.iwc-lb-close{top:24px;right:24px;transform:none;}
.iwc-lb-prev{left:24px;}.iwc-lb-next{right:24px;}
.iwc-icon{width:18px;height:18px;display:inline-block;}
.iwc-sr{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;}


/*--------------------CATEGORIA PRODOTTO-----------------------*/
/* === Indaweb Category Product Grid (1:1 full cover + hover) === */

/* Grid */
.iw-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 1024px){ .iw-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px){  .iw-grid { grid-template-columns: 1fr; } }

/* Card */
.iw-card { display:block; text-decoration:none; color:inherit; }

/* Wrapper immagine:
   - aspect-ratio moderno
   - fallback con .iw-aspect (padding-top:100%) */
.iw-img-wrap{
  position:relative;
  width:100%;
  overflow:hidden;
  border-radius:12px;
  background:#f6f6f6;
  aspect-ratio: 1 / 1;        /* moderno */
}
.iw-img-wrap .iw-aspect{
  display:block;
  width:100%;
  padding-top:100%;           /* fallback 1:1 */
}
.iw-img-wrap img{
	aspect-ratio: 1!important;
}
.iw-img{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;           /* COPRE SEMPRE lo spazio */
  object-position:center;
  display:block;
  transition:opacity .25s ease, transform .25s ease;
}
.iw-img-hover{ opacity:0; }
.iw-card:hover .iw-img-hover{ opacity:1; }
.iw-card:hover .iw-img-main { opacity:0; }

/* Titolo in basso a sinistra sopra l’immagine */
.iw-title{
	position:absolute;
	left:10px;
	bottom:10px;
	background:#ffffffcc;
	color:#000;
	padding:.3rem .6rem;
	letter-spacing:.5px;
	line-height:1.2;
	font-size:1rem;
	max-width:90%;
	font-family: 'HelveticaNeue-Medium', Helvetica, Arial, Lucida, sans-serif;
	border-radius:.5rem;
}

/* Filtri (tendine singole) */
.iw-grid-filters{ margin-bottom:1rem; }
.iw-filters-wrap{
  display:grid; gap:.75rem;
  grid-template-columns:repeat( auto-fit, minmax(200px,1fr) );
  align-items:end;
}
.iw-grid-filters label{ display:flex; flex-direction:column; gap:.35rem; }
.iw-grid-filters span{ font-size:.9rem; font-weight:600;letter-spacing:.5px; }
.iw-grid-filters select{
  padding:.5rem; border:.5px solid #000; border-radius:.5rem;
  background:#fff;
}
.iw-filter-buttons a.reset{
  display:inline-block; text-decoration:none;
  padding: .1em 2em;
  border: 1px solid #000;
  border-radius: .5rem;
  font-size: 16px;
  background: #000;
  color: #fff!important;
  letter-spacing: .5px;
}
.iw-filter-buttons a.reset:hover{
  padding: .1em 2em;
  border: 1px solid #000;
  border-radius: .5rem;
  font-size: 16px;
  background: #f9f9f9;
  color: #000!important;
  letter-spacing: .5px;
}
.iw-filter-buttons .reset:after{
	display:none
}
.iw-filter-buttons{ display:flex; gap:.5rem; align-items:center; }

/* Di default, pannello aperto su desktop */
.iw-filters-toggle {
    display: none;
}

/* Mobile */
@media (max-width: 768px) {
    .iw-filters-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        padding: 0.6rem 0.8rem;
        border: .5px solid #000000;
        background: #ffffff;
        cursor: pointer;
        margin-bottom: 0.5rem;
        border-radius: .5rem;
		letter-spacing:.5px;
    }

    .iw-filters-panel {
        display: none;
    }

    .iw-filters-panel.is-open {
        display: block;
    }
}

/* Loading state griglia (opzionale) */
.iw-grid-wrapper.iw-loading {
    opacity: 0.5;
    pointer-events: none;
    position: relative;
}
.iw-grid-wrapper.iw-loading::after {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, rgba(255,255,255,0.8) 0, rgba(255,255,255,0) 60%);
}
/*----------------CATEGORIA AMBIENTE-------------------*/
/* Griglia generica */
.iw-ambiente-grid {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 24px;
}

/* Tablet */
@media (min-width: 768px) {
    .iw-ambiente-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Desktop - 3 colonne */
@media (min-width: 1024px) {
    .iw-ambiente-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

.iw-ambiente-item {
    width: 100%;
}

.iw-ambiente-link {
    display: block;
    text-decoration: none;
    color: inherit;
}

/* Contenitore 1:1 con immagine + titolo sovrapposto */
.iw-ambiente-media {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1; /* 1:1 */
    overflow: hidden;
}

img.iw-ambiente-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
	aspetc-ratio:1!important;
}

/* Titolo in basso a sinistra */
.iw-ambiente-title {
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    margin: 0;
    padding: 0.5rem 0.75rem;
    font-size: 1rem;
    line-height: 1.2;
    background: rgb(254 254 254 / 55%);
    color: #ffffff;
}

/* Effetto hover carino */
.iw-ambiente-link:hover .iw-ambiente-img {
    transform: scale(1.05);
}
/*----------------------------------------------MENU-------------------------------------------*/
@media screen and (min-width:981px){
	.iwcm-overlay-inner-prodotti{
	padding-top:80px!important;
	}
	.iwcm-overlay-inner-menu{
		padding-top:40px!important;
	}
	#menu-menu-corporate .sub-menu li{
		line-height:2em!important;
		font-size:16px!important;
    	letter-spacing: .5px!important;
	}
}
@media screen and (max-width:980px){
	.iwcm-trigger-menu{
		margin:0!important;
	}
	.iwcm-overlay-panel {
		background: rgba(255, 255, 255, 0.95)!important;
	}
	.iwcm-menu-corporate > li > a {
		font-size:20px!important;
	}
	#menu-menu-corporate li.menu-item-type-post_type a{
		font-size:15px!important;
	}
}
.iwcm-trigger-prodotti, .iwcm-trigger-menu{
	cursor:pointer;
}
/* Rimuovi completamente marker / bullet / numerazione */
.iwcm-menu,
.iwcm-menu ul,
.iwcm-menu li {
    list-style: none !important;
    margin: 0;
    padding: 0;
}

/* Link dei menu senza marker */
.iwcm-menu,
.iwcm-menu ul,
.iwcm-menu li {
    list-style: none !important;
    margin: 0;
    padding: 0;
}

/* Assicura che il link sia largo quanto la parola */
.iwcm-menu a {
    display: inline-block; /* fondamentale */
    position: relative;
    text-decoration: none;
}

/* Linea animata 
.iwcm-menu a::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	height: 1px; 
	width: 0; 
	background: currentColor;
	transition: width 0.25s ease;
}

 Hover: underline estesa quanto la parola 
.iwcm-menu a:hover::after {
    width: 100%;
}*/

/* Base per tutti i link del menu */
.iwcm-menu a {
    display: inline-block;
    position: relative;
    text-decoration: none;
}

/* NESSUNA underline animata sui genitori (voci principali) */
.iwcm-menu > li > a::after {
    content: none !important;
}

/* UNDERLINE SOLO SULLE SOTTO VOCI (link dentro .sub-menu) */
.iwcm-menu .sub-menu a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;          /* distanza dalla parola */
    height: 1px;           /* spessore linea */
    width: 0;              /* parte da zero */
    background: currentColor;
    transition: width 0.25s ease;
}

/* Hover: la linea si estende quanto la parola */
.iwcm-menu .sub-menu a:hover::after {
    width: 100%;
}
.single-product .et_pb_section_2_tb_body .et_pb_code_inner{
	display: none !important;
}