:root{--ica-dark:#05051f;--ica-violet:#6d28d9;--ica-purple:#7c3aed;--ica-pink:#e72563;--ica-orange:#f8ac22;--ica-blue:#008df5;--ica-line:#ececf4;--ica-text:#101334;--ica-muted:#676b85;--ica-grad:linear-gradient(45deg,#f8ac22 0%,#e72563 20%,#d23f8d 50%,#75b6e4 80%,#6d3a8e 100%)}
.ica-shop-builder{font-family:inherit;color:var(--ica-text);padding:34px 0 20px}.ica-shop-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:28px;align-items:start}.ica-shop-sidebar{display:grid;gap:20px}.ica-shop-category-panel,.ica-shop-promo-card{border:1px solid var(--ica-line);border-radius:16px;background:#fff;padding:20px;box-shadow:0 12px 35px rgba(30,20,70,.035)}.ica-shop-category-panel h3{font-size:16px;text-transform:uppercase;margin:0 0 16px;padding-bottom:12px;position:relative}.ica-shop-category-panel h3:after{content:"";position:absolute;left:0;bottom:0;width:36px;height:3px;border-radius:9px;background:var(--ica-grad)}.ica-category-filter{appearance:none;border:0;background:transparent;width:100%;padding:11px 12px;border-radius:10px;display:flex;align-items:center;gap:11px;text-align:left;color:#343555;font-size:14px;cursor:pointer;transition:.2s}.ica-category-filter:hover,.ica-category-filter.is-active{background:linear-gradient(90deg,rgba(109,40,217,.11),rgba(109,40,217,.035));color:var(--ica-violet)}.ica-cat-icon{width:22px;text-align:center;color:var(--ica-violet);font-size:17px}.ica-shop-promo-card{color:#fff;background:linear-gradient(45deg,rgba(230,21,144,1) 0%,rgba(82,65,200,1) 50%,rgba(20,128,231,1) 100%);border:0;padding:26px 22px}.ica-promo-icon{display:block;font-size:34px;margin-bottom:18px}.ica-shop-promo-card h3{color:#fff;font-size:20px;line-height:1.35;margin:0 0 12px}.ica-shop-promo-card p{color:#fff;margin:0;line-height:1.65;font-size:13px}.ica-shop-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 20px}.ica-shop-heading{display:flex;align-items:baseline;gap:14px}.ica-shop-heading h2{font-size:22px;margin:0;color:var(--ica-text)}.ica-result-count{color:var(--ica-violet);font-size:12px;font-weight:700}.ica-shop-order{display:flex;align-items:center;border:1px solid var(--ica-line);border-radius:999px;padding:0 14px;background:#fff;height:42px}.ica-shop-order span{text-transform:uppercase;font-size:11px;font-weight:700;margin-right:8px}.ica-shop-order select{border:0!important;background:transparent!important;box-shadow:none!important;font-size:12px;min-width:110px;padding:0!important;height:auto!important}.ica-products-grid{display:grid;gap:16px}.ica-products-grid.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}.ica-products-grid.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}.ica-products-grid.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ica-product-card{border:1px solid var(--ica-line);border-radius:14px;background:#fff;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:.25s;box-shadow:0 9px 25px rgba(22,16,55,.025)}.ica-product-card:hover{transform:translateY(-4px);box-shadow:0 18px 36px rgba(22,16,55,.09)}.ica-product-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;background:linear-gradient(145deg,#fbfbfd,#f3f3f7);overflow:hidden}.ica-product-image img{width:100%;height:100%;object-fit:contain;margin:0!important;padding:12px}.ica-product-body{padding:15px;display:flex;flex:1;flex-direction:column}.ica-product-title{font-size:14px;font-weight:700;line-height:1.35;color:var(--ica-text)!important;min-height:38px}.ica-product-bottom{margin-top:auto;padding-top:14px;display:flex;justify-content:space-between;align-items:center}.ica-product-price{font-weight:800;font-size:15px;color:var(--ica-text)}.ica-product-price del{font-size:11px;color:#9699aa}.ica-product-price ins{text-decoration:none}.ica-cart-button,
.woocommerce .ica-cart-button,
.woocommerce a.button.ica-cart-button,
.woocommerce a.added_to_cart.ica-cart-button{
width:34px!important;
height:34px!important;
min-width:34px!important;
max-width:34px!important;
min-height:34px!important;
padding:0!important;
margin:0!important;
border-radius:50%!important;
border:1px solid rgba(109,40,217,.25)!important;
display:grid!important;
place-items:center!important;
flex:0 0 34px!important;
box-sizing:border-box!important;
line-height:1!important;
background:#fff!important;
color:var(--ica-violet)!important;
font-size:13px!important;
text-decoration:none!important;
overflow:hidden;
}.ica-cart-button:hover{background:var(--ica-violet);color:#fff!important}.ica-load-more-wrap{text-align:center;padding:25px 0 4px}.ica-load-more{border:1.5px solid var(--ica-violet);color:var(--ica-violet);border-radius:999px;background:#fff;padding:11px 24px;text-transform:uppercase;font-size:11px;font-weight:800;cursor:pointer}.ica-load-more span{margin-left:8px}.ica-shop-empty{text-align:center;padding:45px;border:1px dashed var(--ica-line);border-radius:14px}.ica-shop-builder.is-loading .ica-products-grid{opacity:.45;pointer-events:none}.ica-shop-trust-strip{margin-top:28px;border:1px solid var(--ica-line);border-radius:16px;background:#fff;display:grid;grid-template-columns:repeat(4,1fr);padding:20px 24px;gap:24px}.ica-shop-trust-strip>div{display:grid;grid-template-columns:32px 1fr;column-gap:10px;align-items:center}.ica-shop-trust-strip span{grid-row:1/3;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:rgba(109,40,217,.08);color:var(--ica-violet)}.ica-shop-trust-strip strong{font-size:12px}.ica-shop-trust-strip small{font-size:10px;color:var(--ica-muted)}.ica-native-loop-hidden{display:none!important}
/* Scheda prodotto WooCommerce/Sway */
.ica-product-design-active.single-product .site-content,.ica-product-design-active.single-product .container{max-width:1220px}.ica-product-design-active div.product{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);column-gap:42px;align-items:start}.ica-product-design-active div.product div.images,.ica-product-design-active div.product div.summary{width:auto!important;float:none!important}.ica-product-design-active div.product div.images .woocommerce-product-gallery__wrapper{background:#f7f7fa;border-radius:22px;overflow:hidden}.ica-product-design-active div.product .summary h1{font-size:42px;line-height:1.08;color:var(--ica-text);margin-bottom:14px}.ica-product-design-active div.product .summary .price{font-size:28px!important;font-weight:800;color:var(--ica-violet)!important}.ica-product-design-active div.product .summary .woocommerce-product-details__short-description{font-size:16px;line-height:1.75;color:#40435f;padding:18px 0;border-bottom:1px solid var(--ica-line)}.ica-product-design-active div.product form.cart{display:flex;align-items:center;gap:14px;margin-top:25px}.ica-product-design-active div.product form.cart .quantity{border:1px solid var(--ica-line);border-radius:999px;padding:4px}.ica-product-design-active div.product form.cart .single_add_to_cart_button{border:0!important;border-radius:999px!important;background:var(--ica-grad)!important;color:#fff!important;padding:16px 28px!important;text-transform:uppercase;font-size:12px;font-weight:800}.ica-product-design-active .woocommerce-tabs{grid-column:1/2;margin-top:30px}.ica-product-design-active .woocommerce-tabs ul.tabs{border-bottom:1px solid var(--ica-line);padding:0!important}.ica-product-design-active .woocommerce-tabs ul.tabs:before{display:none!important}.ica-product-design-active .woocommerce-tabs ul.tabs li{border:0!important;background:none!important;margin:0 28px 0 0!important;padding:0!important}.ica-product-design-active .woocommerce-tabs ul.tabs li a{padding:14px 0!important;text-transform:uppercase;font-size:11px}.ica-product-design-active .woocommerce-tabs ul.tabs li.active a{color:var(--ica-violet)!important;border-bottom:2px solid var(--ica-violet)}.ica-product-design-active section.related{grid-column:1/-1;margin-top:42px}.ica-product-design-active section.related>h2{font-size:22px;color:var(--ica-text)}.ica-product-design-active section.related ul.products{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.ica-product-design-active section.related ul.products li.product{width:auto!important;margin:0!important;border:1px solid var(--ica-line);border-radius:14px;overflow:hidden;padding:10px!important}.ica-product-design-active section.related ul.products li.product h2{font-size:12px!important;line-height:1.35}.ica-product-design-active section.related ul.products li.product .button{display:none}.ica-single-support-grid{grid-column:2/3;display:grid;gap:14px;margin-top:28px}.ica-single-support{border:1px solid var(--ica-line);border-radius:16px;padding:20px;display:flex;gap:14px;background:#fff}.ica-single-support>span{width:40px;height:40px;border-radius:50%;background:rgba(109,40,217,.08);display:grid;place-items:center;color:var(--ica-violet)}.ica-single-support strong{font-size:14px;color:var(--ica-text)}.ica-single-support p{font-size:12px;color:var(--ica-muted);margin:4px 0}.ica-single-support a{font-size:12px;font-weight:800;color:var(--ica-violet)}.ica-payment-labels{font-size:12px;font-weight:800;color:#3048a2;margin-top:9px}
@media(max-width:1024px){.ica-shop-layout{grid-template-columns:210px 1fr}.ica-products-grid.columns-4{grid-template-columns:repeat(3,1fr)}.ica-product-design-active div.product{grid-template-columns:1fr 1fr}.ica-product-design-active section.related ul.products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:767px){.ica-shop-builder{padding-top:20px}.ica-shop-layout{grid-template-columns:1fr}.ica-shop-sidebar{order:2}.ica-shop-category-panel{overflow:hidden}.ica-shop-toolbar{align-items:flex-start;flex-direction:column}.ica-shop-order{width:100%;justify-content:space-between}.ica-products-grid.columns-4,.ica-products-grid.columns-3,.ica-products-grid.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ica-shop-trust-strip{grid-template-columns:1fr 1fr}.ica-product-design-active div.product{display:block}.ica-product-design-active .woocommerce-tabs,.ica-product-design-active section.related{display:block}.ica-product-design-active div.product .summary h1{font-size:31px}.ica-product-design-active section.related ul.products{grid-template-columns:repeat(2,1fr)}.ica-single-support-grid{display:grid;margin:25px 0}.ica-product-title{font-size:13px}}
@media(max-width:480px){.ica-products-grid.columns-4,.ica-products-grid.columns-3,.ica-products-grid.columns-2{grid-template-columns:1fr 1fr;gap:10px}.ica-product-body{padding:12px}.ica-product-title{min-height:52px}.ica-shop-trust-strip{grid-template-columns:1fr}.ica-shop-promo-card{display:none}}

/* v1.0.1 — pagina Shop WPBakery gestita dal plugin, senza archivio nativo Sway */
body.ica-shop-builder-page .ica-shop-page-shell{
    width:100%;
    min-height:1px;
    overflow:hidden;
    background:#fbfaff;
}
body.ica-shop-builder-page .ica-shop-page-shell > .vc_row,
body.ica-shop-builder-page .ica-shop-page-shell > .wpb-content-wrapper{
    margin-left:0;
    margin-right:0;
}
body.ica-shop-builder-page .ica-shop-page-shell .ica-shop-builder{
    position:relative;
    z-index:2;
}
body.ica-shop-builder-page .ica-shop-page-shell .ica-shop-builder a,
body.ica-shop-builder-page .ica-shop-page-shell .ica-shop-builder button,
body.ica-shop-builder-page .ica-shop-page-shell .ica-shop-builder select{
    font-family:inherit;
}
body.ica-shop-builder-page .ica-shop-page-shell .ica-shop-builder .ica-products-grid:empty + .ica-shop-empty{
    display:block;
}
body.ica-shop-builder-page .ica-shop-page-shell .ica-shop-builder .ica-shop-empty[hidden]{
    display:none!important;
}


/* v1.0.2 — Shop Sway/WPBakery: singolo rendering, controlli vista e personalizzazioni */
.woocommerce-page.post-type-archive-product .blog-header.entry-header,
.woocommerce-page.post-type-archive-product .blog-header.entry-header.with-topbar{
    padding-top:0!important;
}

.ica-line-icon{
    width:1em;
    height:1em;
    display:block;
    pointer-events:none;
}

.ica-cat-icon .ica-line-icon{
    width:19px;
    height:19px;
}

.ica-shop-toolbar-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex:0 0 auto;
}

.ica-view-switcher{
    display:inline-flex;
    align-items:center;
    padding:3px;
    border:1px solid var(--ica-line);
    border-radius:999px;
    background:#fff;
    box-shadow:0 8px 24px rgba(22,16,55,.035);
}

.ica-view-button{
    appearance:none;
    width:34px;
    height:34px;
    min-width:34px;
    padding:0;
    border:0;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:transparent;
    color:#6f7188;
    cursor:pointer;
    transition:background-color .2s ease,color .2s ease,box-shadow .2s ease;
}

.ica-view-button .ica-line-icon{
    width:17px;
    height:17px;
}

.ica-view-button:hover,
.ica-view-button.is-active{
    color:var(--ica-violet);
    background:rgba(109,40,217,.09);
}

.ica-view-button:focus-visible{
    outline:2px solid var(--ica-violet);
    outline-offset:2px;
}

/* Vista elenco */
.ica-shop-builder.view-list .ica-products-grid{
    grid-template-columns:1fr!important;
}

.ica-shop-builder.view-list .ica-product-card{
    display:grid;
    grid-template-columns:170px minmax(0,1fr);
    min-height:170px;
}

.ica-shop-builder.view-list .ica-product-image{
    width:100%;
    height:170px;
    aspect-ratio:auto;
    border-radius:13px 0 0 13px;
}

.ica-shop-builder.view-list .ica-product-body{
    padding:22px;
    justify-content:center;
}

.ica-shop-builder.view-list .ica-product-title{
    min-height:0;
    font-size:16px;
}

.ica-shop-builder.view-list .ica-product-bottom{
    padding-top:20px;
}

.ica-shop-builder.view-list .ica-product-price{
    font-size:17px;
}

/* Fascia servizi personalizzabile */
.ica-shop-trust-strip .ica-trust-item{
    display:grid;
    grid-template-columns:38px 1fr;
    column-gap:11px;
    align-items:center;
}

.ica-shop-trust-strip .ica-trust-icon{
    grid-row:1/3;
    width:36px;
    height:36px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:rgba(109,40,217,.08);
    color:var(--ica-violet);
}

.ica-shop-trust-strip .ica-trust-icon .ica-line-icon{
    width:19px;
    height:19px;
}

.ica-shop-trust-strip .ica-trust-item strong{
    font-size:12px;
    line-height:1.25;
}

.ica-shop-trust-strip .ica-trust-item small{
    font-size:10px;
    line-height:1.35;
    color:var(--ica-muted);
}

/* Evita che i CSS generici dei pulsanti WooCommerce deformino solo i prodotti semplici. */
.ica-cart-button > span{
    width:100%;
    height:100%;
    display:grid;
    place-items:center;
}

.ica-cart-button .ica-line-icon{
    width:16px;
    height:16px;
}

.ica-cart-button:hover,
.woocommerce .ica-cart-button:hover,
.woocommerce a.button.ica-cart-button:hover{
    background:var(--ica-violet)!important;
    color:#fff!important;
}

@media(max-width:767px){
    .ica-shop-toolbar-actions{
        width:100%;
        justify-content:space-between;
    }
    .ica-shop-order{
        flex:1 1 auto;
        width:auto;
    }
    .ica-shop-builder.view-list .ica-product-card{
        grid-template-columns:120px minmax(0,1fr);
        min-height:120px;
    }
    .ica-shop-builder.view-list .ica-product-image{
        height:120px;
    }
    .ica-shop-builder.view-list .ica-product-body{
        padding:14px;
    }
}

@media(max-width:480px){
    .ica-shop-toolbar-actions{
        align-items:stretch;
    }
    .ica-view-switcher{
        flex:0 0 auto;
    }
    .ica-shop-builder.view-list .ica-product-card{
        grid-template-columns:96px minmax(0,1fr);
        min-height:110px;
    }
    .ica-shop-builder.view-list .ica-product-image{
        height:110px;
    }
    .ica-shop-builder.view-list .ica-product-title{
        font-size:13px;
    }
}

/* v1.0.3 — allineamenti Shop, fascia servizi avanzata e scheda prodotto ICA */
body.woocommerce-shop .hero-policy .wpb_text_column,
body.woocommerce-shop .hero-policy .wpb_text_column .wpb_wrapper,
body.woocommerce-shop .hero-policy .wpb_text_column p,
body.post-type-archive-product .hero-policy .wpb_text_column,
body.post-type-archive-product .hero-policy .wpb_text_column .wpb_wrapper,
body.post-type-archive-product .hero-policy .wpb_text_column p{
    text-align:left!important;
}

.ica-shop-builder{
    margin-bottom:0!important;
    padding-bottom:0!important;
}
.ica-shop-layout,
.ica-shop-main,
.ica-products-grid,
.ica-product-card,
.ica-product-body,
.ica-product-title,
.ica-product-price,
.ica-product-bottom{
    text-align:left!important;
}
.ica-product-card{
    margin-bottom:0!important;
}
.ica-product-image img{
    padding:0!important;
    margin:0!important;
}
.ica-product-title{
    display:block;
}

/* Colori e immagini personalizzate della fascia servizi. */
.ica-shop-trust-strip .ica-trust-icon{
    color:var(--ica-trust-icon-color,var(--ica-violet));
    background:var(--ica-trust-icon-bg,rgba(109,40,217,.08));
}
.ica-shop-trust-strip .ica-trust-custom-icon{
    width:21px;
    height:21px;
    max-width:21px;
    max-height:21px;
    display:block;
    object-fit:contain;
    padding:0!important;
    margin:0!important;
}

/* Scheda prodotto: impianto visivo vicino al layout di riferimento. */
body.single-product.ica-product-design-active .site-content,
body.single-product.ica-product-design-active .content-area,
body.single-product.ica-product-design-active .container{
    padding-bottom:0!important;
}

body.single-product.ica-product-design-active div.product{
    display:grid!important;
    grid-template-columns:minmax(0,1.12fr) minmax(350px,.88fr)!important;
    grid-template-rows:auto auto auto auto!important;
    column-gap:46px!important;
    row-gap:0!important;
    align-items:start!important;
    margin-bottom:0!important;
}

body.single-product.ica-product-design-active div.product div.images{
    grid-column:1!important;
    grid-row:1!important;
    margin:0!important;
}
body.single-product.ica-product-design-active div.product div.summary{
    grid-column:2!important;
    grid-row:1!important;
    margin:0!important;
    padding-top:4px!important;
    text-align:left!important;
}

/* Galleria con miniature verticali. */
body.single-product.ica-product-design-active .woocommerce-product-gallery{
    display:grid!important;
    grid-template-columns:78px minmax(0,1fr)!important;
    grid-template-rows:auto!important;
    gap:16px!important;
    align-items:start!important;
}
body.single-product.ica-product-design-active .woocommerce-product-gallery .flex-viewport,
body.single-product.ica-product-design-active .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper{
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    border:1px solid var(--ica-line)!important;
    border-radius:22px!important;
    background:linear-gradient(145deg,#fbfbfd,#f4f4f8)!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
}
body.single-product.ica-product-design-active .woocommerce-product-gallery .woocommerce-product-gallery__wrapper{
    margin:0!important;
}
body.single-product.ica-product-design-active .woocommerce-product-gallery .woocommerce-product-gallery__image,
body.single-product.ica-product-design-active .woocommerce-product-gallery .woocommerce-product-gallery__image a{
    display:block!important;
    width:100%!important;
}
body.single-product.ica-product-design-active .woocommerce-product-gallery .woocommerce-product-gallery__image img{
    width:100%!important;
    height:auto!important;
    aspect-ratio:1/1!important;
    object-fit:contain!important;
    padding:0!important;
    margin:0!important;
}
body.single-product.ica-product-design-active .woocommerce-product-gallery .flex-control-thumbs{
    grid-column:1!important;
    grid-row:1!important;
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
    width:100%!important;
    padding:0!important;
    margin:0!important;
    list-style:none!important;
}
body.single-product.ica-product-design-active .woocommerce-product-gallery .flex-control-thumbs li{
    width:100%!important;
    float:none!important;
    margin:0!important;
    border:1px solid var(--ica-line)!important;
    border-radius:13px!important;
    background:#f7f7fa!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
}
body.single-product.ica-product-design-active .woocommerce-product-gallery .flex-control-thumbs li:has(img.flex-active){
    border-color:var(--ica-violet)!important;
    box-shadow:0 0 0 1px var(--ica-violet)!important;
}
body.single-product.ica-product-design-active .woocommerce-product-gallery .flex-control-thumbs img{
    width:100%!important;
    aspect-ratio:1/1!important;
    object-fit:contain!important;
    padding:0!important;
    margin:0!important;
    opacity:1!important;
}

/* Titolo, prezzo, descrizione e acquisto. */
body.single-product.ica-product-design-active div.product .summary h1{
    margin:0 0 13px!important;
    font-size:42px!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
    color:var(--ica-text)!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active div.product .summary .price{
    display:block!important;
    margin:0 0 4px!important;
    font-size:27px!important;
    line-height:1.2!important;
    font-weight:800!important;
    color:var(--ica-violet)!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active div.product .summary .woocommerce-product-details__short-description{
    margin:18px 0 20px!important;
    padding:18px 0 20px!important;
    border-top:1px solid var(--ica-line)!important;
    border-bottom:1px solid var(--ica-line)!important;
    color:#41455f!important;
    font-size:15px!important;
    line-height:1.7!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active div.product .summary .woocommerce-product-details__short-description p{
    margin:0!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active div.product form.cart{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:12px!important;
    margin:22px 0 0!important;
}
body.single-product.ica-product-design-active div.product form.cart .quantity{
    display:flex!important;
    align-items:center!important;
    min-height:48px!important;
    border:1px solid var(--ica-line)!important;
    border-radius:999px!important;
    background:#fff!important;
    padding:3px 8px!important;
    box-shadow:none!important;
}
body.single-product.ica-product-design-active div.product form.cart .qty{
    width:42px!important;
    min-height:38px!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    text-align:center!important;
    font-weight:700!important;
}
body.single-product.ica-product-design-active div.product form.cart .single_add_to_cart_button{
    min-height:50px!important;
    border:0!important;
    border-radius:999px!important;
    background:var(--ica-grad)!important;
    color:#fff!important;
    padding:15px 27px!important;
    text-transform:uppercase!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:800!important;
    box-shadow:0 10px 26px rgba(109,40,217,.18)!important;
}
body.single-product.ica-product-design-active div.product form.cart .single_add_to_cart_button:hover{
    transform:translateY(-1px)!important;
    box-shadow:0 14px 30px rgba(109,40,217,.25)!important;
}

/* Varianti e attributi WooCommerce. */
body.single-product.ica-product-design-active div.product form.variations_form{
    display:block!important;
}
body.single-product.ica-product-design-active div.product table.variations{
    margin:0 0 14px!important;
    border:0!important;
}
body.single-product.ica-product-design-active div.product table.variations th,
body.single-product.ica-product-design-active div.product table.variations td{
    display:block!important;
    width:100%!important;
    padding:0!important;
    border:0!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active div.product table.variations th.label{
    margin:0 0 7px!important;
    font-size:12px!important;
    color:var(--ica-text)!important;
}
body.single-product.ica-product-design-active div.product table.variations td.value{
    margin:0 0 15px!important;
}
body.single-product.ica-product-design-active div.product table.variations select{
    width:100%!important;
    min-height:44px!important;
    border:1px solid var(--ica-line)!important;
    border-radius:12px!important;
    background:#fff!important;
    padding:0 13px!important;
}
body.single-product.ica-product-design-active div.product .reset_variations{
    display:inline-block!important;
    margin-top:7px!important;
    color:var(--ica-violet)!important;
    font-size:11px!important;
}

/* Fascia vantaggi sotto la galleria. */
.ica-single-benefits{
    grid-column:1!important;
    grid-row:2!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
    margin:24px 0 0!important;
    padding:15px 16px!important;
    border:1px solid var(--ica-line)!important;
    border-radius:16px!important;
    background:#fff!important;
}
.ica-single-benefit{
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr)!important;
    gap:9px!important;
    align-items:center!important;
    min-width:0!important;
}
.ica-single-benefit__icon{
    width:32px!important;
    height:32px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:50%!important;
    color:var(--ica-violet)!important;
    background:rgba(109,40,217,.08)!important;
}
.ica-single-benefit__icon .ica-line-icon{
    width:17px!important;
    height:17px!important;
}
.ica-single-benefit>span:last-child{
    display:flex!important;
    flex-direction:column!important;
    gap:2px!important;
    text-align:left!important;
}
.ica-single-benefit strong{
    color:var(--ica-text)!important;
    font-size:10px!important;
    line-height:1.3!important;
}
.ica-single-benefit small{
    color:var(--ica-muted)!important;
    font-size:9px!important;
    line-height:1.3!important;
}

/* Colonna assistenza e pagamenti. */
.ica-single-support-grid{
    grid-column:2!important;
    grid-row:2 / span 2!important;
    display:grid!important;
    gap:14px!important;
    align-self:start!important;
    margin:24px 0 0!important;
}
.ica-single-support{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr)!important;
    gap:14px!important;
    align-items:start!important;
    margin:0!important;
    padding:19px 20px!important;
    border:1px solid var(--ica-line)!important;
    border-radius:16px!important;
    background:#fff!important;
    box-shadow:0 10px 25px rgba(22,16,55,.025)!important;
    text-align:left!important;
}
.ica-single-support__icon{
    width:40px!important;
    height:40px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:50%!important;
    color:var(--ica-violet)!important;
    background:rgba(109,40,217,.08)!important;
}
.ica-single-support__icon .ica-line-icon{
    width:20px!important;
    height:20px!important;
}
.ica-single-support strong{
    display:block!important;
    color:var(--ica-text)!important;
    font-size:13px!important;
    line-height:1.3!important;
}
.ica-single-support p{
    margin:4px 0 0!important;
    color:var(--ica-muted)!important;
    font-size:11px!important;
    line-height:1.5!important;
}
.ica-single-support a{
    display:inline-block!important;
    margin-top:9px!important;
    color:var(--ica-violet)!important;
    font-size:11px!important;
    font-weight:800!important;
    text-transform:uppercase!important;
}
.ica-payment-labels{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:10px!important;
    margin-top:10px!important;
}
.ica-payment-labels span{
    color:#3048a2!important;
    font-size:10px!important;
    font-weight:800!important;
}

/* Tabs sotto la fascia vantaggi. */
body.single-product.ica-product-design-active .woocommerce-tabs{
    grid-column:1!important;
    grid-row:3!important;
    margin:28px 0 0!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active .woocommerce-tabs .panel,
body.single-product.ica-product-design-active .woocommerce-tabs .panel p,
body.single-product.ica-product-design-active .woocommerce-tabs .panel li{
    text-align:left!important;
}
body.single-product.ica-product-design-active .woocommerce-tabs .panel{
    margin:0!important;
    padding-top:18px!important;
    color:#41455f!important;
    font-size:13px!important;
    line-height:1.7!important;
}
body.single-product.ica-product-design-active .woocommerce-tabs ul.tabs{
    margin:0!important;
}

/* Prodotti correlati come card compatte. */
body.single-product.ica-product-design-active section.related{
    grid-column:1 / -1!important;
    grid-row:4!important;
    margin:38px 0 0!important;
    padding-bottom:0!important;
}
body.single-product.ica-product-design-active section.related>h2{
    margin:0 0 16px!important;
    color:var(--ica-text)!important;
    font-size:20px!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active section.related ul.products{
    margin:0!important;
}
body.single-product.ica-product-design-active section.related ul.products li.product{
    display:flex!important;
    flex-direction:column!important;
    margin:0!important;
    padding:0!important;
    border:1px solid var(--ica-line)!important;
    border-radius:14px!important;
    background:#fff!important;
    overflow:hidden!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active section.related ul.products li.product a{
    text-align:left!important;
}
body.single-product.ica-product-design-active section.related ul.products li.product img{
    width:100%!important;
    margin:0!important;
    padding:0!important;
    aspect-ratio:1/1!important;
    object-fit:contain!important;
    background:linear-gradient(145deg,#fbfbfd,#f3f3f7)!important;
}
body.single-product.ica-product-design-active section.related ul.products li.product .woocommerce-loop-product__title,
body.single-product.ica-product-design-active section.related ul.products li.product h2{
    min-height:48px!important;
    margin:0!important;
    padding:12px 12px 5px!important;
    color:var(--ica-text)!important;
    font-size:11px!important;
    line-height:1.35!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active section.related ul.products li.product .price{
    margin-top:auto!important;
    padding:0 12px 12px!important;
    color:var(--ica-text)!important;
    font-size:12px!important;
    font-weight:800!important;
    text-align:left!important;
}

@media(max-width:1024px){
    body.single-product.ica-product-design-active div.product{
        grid-template-columns:minmax(0,1fr) minmax(310px,.82fr)!important;
        column-gap:28px!important;
    }
    .ica-single-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}

@media(max-width:767px){
    body.single-product.ica-product-design-active div.product{
        display:block!important;
    }
    body.single-product.ica-product-design-active .woocommerce-product-gallery{
        display:block!important;
    }
    body.single-product.ica-product-design-active .woocommerce-product-gallery .flex-control-thumbs{
        display:grid!important;
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
        gap:8px!important;
        margin-top:10px!important;
    }
    body.single-product.ica-product-design-active div.product div.summary{
        margin-top:25px!important;
    }
    .ica-single-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        margin-top:22px!important;
    }
    .ica-single-support-grid{
        margin-top:18px!important;
    }
    body.single-product.ica-product-design-active .woocommerce-tabs,
    body.single-product.ica-product-design-active section.related{
        margin-top:28px!important;
    }
}

@media(max-width:480px){
    body.single-product.ica-product-design-active div.product .summary h1{
        font-size:31px!important;
    }
    .ica-single-benefits{
        grid-template-columns:1fr!important;
    }
    body.single-product.ica-product-design-active section.related ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:10px!important;
    }
}
body.woocommerce-shop .hero-policy .wpb_text_column p:last-child,
body.post-type-archive-product .hero-policy .wpb_text_column p:last-child{
    margin-bottom:0!important;
}
body.single-product.ica-product-design-active .woocommerce-product-gallery .flex-control-thumbs img.flex-active{
    outline:2px solid var(--ica-violet)!important;
    outline-offset:-2px!important;
    border-radius:11px!important;
}

/* v1.0.4 — scheda prodotto Sway ricostruita sul layout di riferimento */
body.single-product.ica-product-design-active{
    background:#fff!important;
}
body.single-product.ica-product-design-active #wrapper{
    background:#fff!important;
}

/* Hero prodotto: continuità visiva con l'header scuro del Congresso. */
body.single-product.ica-product-design-active header.blog-header.entry-header{
    position:relative!important;
    z-index:1!important;
    min-height:122px!important;
    margin:0!important;
    padding:72px 0 28px!important;
    overflow:hidden!important;
    background:
        radial-gradient(circle at 66% 35%,rgba(77,28,154,.33),transparent 32%),
        linear-gradient(115deg,#02031b 0%,#070520 58%,#121046 100%)!important;
}
body.single-product.ica-product-design-active header.blog-header.entry-header .blog-page-heading{
    margin:0!important;
    padding:0!important;
    background:transparent!important;
}
body.single-product.ica-product-design-active header.blog-header.entry-header .container{
    width:min(1180px,calc(100% - 48px))!important;
    max-width:none!important;
    padding:0!important;
}
body.single-product.ica-product-design-active header.blog-header.entry-header .section-heading{
    display:none!important;
}
body.single-product.ica-product-design-active header.blog-header.entry-header .breadcrumbs,
body.single-product.ica-product-design-active header.blog-header.entry-header .breadcrumbs a,
body.single-product.ica-product-design-active header.blog-header.entry-header .breadcrumbs span{
    color:#fff!important;
    font-size:13px!important;
    line-height:1.4!important;
}
body.single-product.ica-product-design-active header.blog-header.entry-header .breadcrumbs .fa{
    margin:0 9px!important;
    color:rgba(255,255,255,.7)!important;
    font-size:9px!important;
}
body.single-product.ica-product-design-active header.blog-header.entry-header:before{
    content:"";
    position:absolute;
    z-index:2;
    left:-2%;
    right:-2%;
    bottom:-1px;
    height:19px;
    background:var(--ica-grad);
    clip-path:polygon(0 42%,13% 80%,28% 62%,43% 88%,57% 56%,71% 78%,85% 48%,100% 68%,100% 100%,0 100%);
    pointer-events:none;
}
body.single-product.ica-product-design-active header.blog-header.entry-header:after{
    content:"";
    position:absolute;
    z-index:3;
    left:-2%;
    right:-2%;
    bottom:-7px;
    height:18px;
    background:#fff;
    clip-path:polygon(0 38%,13% 73%,28% 54%,43% 80%,57% 49%,71% 71%,85% 41%,100% 61%,100% 100%,0 100%);
    pointer-events:none;
}

/* Contenitore principale. */
body.single-product.ica-product-design-active #product-content.container{
    width:min(1180px,calc(100% - 48px))!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:62px 0 52px!important;
}
body.single-product.ica-product-design-active #product-content>.col-xs-12{
    float:none!important;
    width:100%!important;
    min-height:0!important;
    padding:0!important;
}
body.single-product.ica-product-design-active #product-content div.product{
    display:grid!important;
    grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr)!important;
    grid-template-rows:auto auto auto!important;
    column-gap:48px!important;
    row-gap:0!important;
    align-items:start!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
}
/* Il tema Sway racchiude galleria e riepilogo in product-inner-content.
   display:contents permette ai due blocchi di occupare le colonne della griglia. */
body.single-product.ica-product-design-active #product-content div.product>.product-inner-content{
    display:contents!important;
}
body.single-product.ica-product-design-active #product-content div.product .woocommerce-notices-wrapper{
    grid-column:1/-1!important;
}
body.single-product.ica-product-design-active #product-content div.product div.images,
body.single-product.ica-product-design-active #product-content div.product div.summary{
    float:none!important;
    width:auto!important;
    max-width:none!important;
}

/* Galleria proprietaria: una sola immagine principale e miniature verticali. */
body.single-product.ica-product-design-active .ica-product-gallery{
    grid-column:1!important;
    grid-row:1!important;
    display:grid!important;
    grid-template-columns:82px minmax(0,1fr)!important;
    gap:17px!important;
    align-items:start!important;
    margin:0!important;
    opacity:1!important;
}
body.single-product.ica-product-design-active .ica-product-gallery__thumbs{
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
    min-width:0!important;
}
body.single-product.ica-product-design-active .ica-product-gallery__thumb{
    appearance:none!important;
    display:block!important;
    width:82px!important;
    height:82px!important;
    min-width:82px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:1px solid #ececf4!important;
    border-radius:14px!important;
    background:linear-gradient(145deg,#fcfcfe,#f3f3f7)!important;
    box-shadow:none!important;
    cursor:pointer!important;
    transition:border-color .2s,box-shadow .2s,transform .2s!important;
}
body.single-product.ica-product-design-active .ica-product-gallery__thumb:hover{
    transform:translateY(-1px)!important;
}
body.single-product.ica-product-design-active .ica-product-gallery__thumb.is-active{
    border-color:#7c3aed!important;
    box-shadow:0 0 0 1px #7c3aed!important;
}
body.single-product.ica-product-design-active .ica-product-gallery__thumb img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
}
body.single-product.ica-product-design-active .ica-product-gallery__stage{
    position:relative!important;
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    aspect-ratio:1/1!important;
    min-height:0!important;
    overflow:hidden!important;
    border:1px solid #eeeeF5!important;
    border-radius:24px!important;
    background:linear-gradient(145deg,#fbfbfd,#f3f3f7)!important;
}
body.single-product.ica-product-design-active .ica-product-gallery__zoom{
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    height:100%!important;
    cursor:zoom-in!important;
}
body.single-product.ica-product-design-active .ica-product-gallery__main-image{
    display:block!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    transition:opacity .2s ease!important;
}

/* Riepilogo prodotto. */
body.single-product.ica-product-design-active #product-content div.product div.summary{
    grid-column:2!important;
    grid-row:1!important;
    margin:0!important;
    padding:0!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active #product-content .summary .product_title{
    margin:0 0 14px!important;
    color:#101334!important;
    font-size:42px!important;
    line-height:1.08!important;
    letter-spacing:-.03em!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active #product-content .summary p.price{
    display:block!important;
    margin:0!important;
    color:#6d28d9!important;
    font-size:28px!important;
    line-height:1.2!important;
    font-weight:800!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active .ica-product-tax-note{
    margin:3px 0 0!important;
    color:#595d78!important;
    font-size:12px!important;
    line-height:1.4!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active #product-content .summary .woocommerce-product-details__short-description{
    margin:22px 0 20px!important;
    padding:20px 0!important;
    border-top:0!important;
    border-bottom:1px solid #ececf4!important;
    color:#3f435f!important;
    font-size:15px!important;
    line-height:1.7!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active #product-content .summary .woocommerce-product-details__short-description p{
    margin:0!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active #product-content .summary .product_meta,
body.single-product.ica-product-design-active #product-content .summary .blog-social-sharing{
    display:none!important;
}

/* Varianti trasformate in pulsanti, mantenendo attivi i select WooCommerce. */
body.single-product.ica-product-design-active form.variations_form,
body.single-product.ica-product-design-active form.cart{
    width:100%!important;
    margin:0!important;
}
body.single-product.ica-product-design-active table.variations{
    width:100%!important;
    margin:0 0 14px!important;
    border:0!important;
}
body.single-product.ica-product-design-active table.variations tbody,
body.single-product.ica-product-design-active table.variations tr{
    display:block!important;
    width:100%!important;
}
body.single-product.ica-product-design-active table.variations tr{
    position:relative!important;
    margin:0 0 17px!important;
}
body.single-product.ica-product-design-active table.variations th,
body.single-product.ica-product-design-active table.variations td{
    display:block!important;
    width:100%!important;
    padding:0!important;
    border:0!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active table.variations th.label{
    margin:0 0 8px!important;
    color:#151837!important;
    font-size:12px!important;
    line-height:1.4!important;
    font-weight:800!important;
}
body.single-product.ica-product-design-active .ica-native-variation-select{
    position:absolute!important;
    left:-9999px!important;
    width:1px!important;
    height:1px!important;
    opacity:0!important;
    pointer-events:none!important;
}
body.single-product.ica-product-design-active .ica-variation-ui{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:9px!important;
    align-items:center!important;
}
body.single-product.ica-product-design-active .ica-variation-option{
    appearance:none!important;
    display:inline-grid!important;
    place-items:center!important;
    min-width:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:0 13px!important;
    border:1px solid #e6e6f1!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#272a49!important;
    box-shadow:none!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:700!important;
    cursor:pointer!important;
    transition:.2s!important;
}
body.single-product.ica-product-design-active .ica-variation-option:hover,
body.single-product.ica-product-design-active .ica-variation-option.is-selected{
    border-color:#7c3aed!important;
    color:#6d28d9!important;
    box-shadow:0 0 0 1px rgba(124,58,237,.12)!important;
}
body.single-product.ica-product-design-active .ica-variation-option.is-disabled{
    opacity:.35!important;
    cursor:not-allowed!important;
}
body.single-product.ica-product-design-active .ica-variation-option--color{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    padding:3px!important;
    border-radius:50%!important;
}
body.single-product.ica-product-design-active .ica-color-swatch{
    display:block!important;
    width:24px!important;
    height:24px!important;
    border:1px solid rgba(17,24,39,.14)!important;
    border-radius:50%!important;
}
body.single-product.ica-product-design-active .ica-size-guide{
    appearance:none!important;
    margin:10px 0 0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    color:#6d28d9!important;
    font-size:11px!important;
    line-height:1.4!important;
    font-weight:700!important;
    cursor:pointer!important;
}
body.single-product.ica-product-design-active .reset_variations{
    display:inline-block!important;
    margin-top:9px!important;
    color:#6d28d9!important;
    font-size:11px!important;
}

/* Quantità, carrello e preferiti. */
body.single-product.ica-product-design-active .single_variation_wrap{
    width:100%!important;
}
body.single-product.ica-product-design-active .single_variation{
    margin:0 0 10px!important;
}
body.single-product.ica-product-design-active .woocommerce-variation-add-to-cart,
body.single-product.ica-product-design-active form.cart:not(.variations_form){
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:12px!important;
    width:100%!important;
    margin:18px 0 0!important;
}
body.single-product.ica-product-design-active form.cart .quantity{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    min-height:48px!important;
    margin:0!important;
    padding:3px 7px!important;
    border:1px solid #e6e6f1!important;
    border-radius:999px!important;
    background:#fff!important;
}
body.single-product.ica-product-design-active form.cart .quantity .qty{
    width:36px!important;
    min-width:36px!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#141733!important;
    text-align:center!important;
    font-size:13px!important;
    font-weight:800!important;
    -moz-appearance:textfield!important;
}
body.single-product.ica-product-design-active form.cart .quantity .qty::-webkit-outer-spin-button,
body.single-product.ica-product-design-active form.cart .quantity .qty::-webkit-inner-spin-button{
    margin:0!important;
    -webkit-appearance:none!important;
}
body.single-product.ica-product-design-active .ica-qty-button{
    appearance:none!important;
    display:grid!important;
    place-items:center!important;
    width:27px!important;
    height:27px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    background:transparent!important;
    color:#6c7088!important;
    box-shadow:none!important;
    font-size:18px!important;
    line-height:1!important;
    cursor:pointer!important;
}
body.single-product.ica-product-design-active button.single_add_to_cart_button{
    min-height:50px!important;
    margin:0!important;
    padding:15px 25px!important;
    border:0!important;
    border-radius:999px!important;
    background:var(--ica-grad)!important;
    color:#fff!important;
    box-shadow:0 10px 25px rgba(109,40,217,.2)!important;
    text-transform:uppercase!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:800!important;
}
body.single-product.ica-product-design-active button.single_add_to_cart_button:after{
    content:"🛒";
    margin-left:9px;
    font-size:13px;
}
body.single-product.ica-product-design-active .ica-product-wishlist{
    appearance:none!important;
    display:grid!important;
    place-items:center!important;
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    background:#f7f7fb!important;
    color:#7c3aed!important;
    box-shadow:none!important;
    cursor:pointer!important;
}
body.single-product.ica-product-design-active .ica-product-wishlist svg{
    width:20px!important;
    height:20px!important;
}
body.single-product.ica-product-design-active .ica-product-wishlist.is-active svg{
    fill:currentColor!important;
}

/* Fascia vantaggi e colonna assistenza. */
body.single-product.ica-product-design-active .ica-single-benefits{
    grid-column:1!important;
    grid-row:2!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
    margin:24px 0 0!important;
    padding:15px 16px!important;
    border:1px solid #ececf4!important;
    border-radius:17px!important;
    background:#fff!important;
}
body.single-product.ica-product-design-active .ica-single-support-grid{
    grid-column:2!important;
    grid-row:2 / span 2!important;
    display:grid!important;
    gap:14px!important;
    align-self:start!important;
    margin:24px 0 0!important;
}
body.single-product.ica-product-design-active .ica-single-support{
    min-height:105px!important;
    padding:20px!important;
    border:1px solid #ececf4!important;
    border-radius:17px!important;
    background:#fff!important;
}

/* Tab descrizione nella colonna sinistra. */
body.single-product.ica-product-design-active #product-content .woocommerce-tabs{
    grid-column:1!important;
    grid-row:3!important;
    width:100%!important;
    margin:28px 0 0!important;
    padding:0!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active #product-content .woocommerce-tabs ul.tabs{
    display:flex!important;
    gap:30px!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border-bottom:1px solid #ececf4!important;
}
body.single-product.ica-product-design-active #product-content .woocommerce-tabs ul.tabs:before,
body.single-product.ica-product-design-active #product-content .woocommerce-tabs ul.tabs:after{
    display:none!important;
}
body.single-product.ica-product-design-active #product-content .woocommerce-tabs ul.tabs li{
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
}
body.single-product.ica-product-design-active #product-content .woocommerce-tabs ul.tabs li a{
    display:block!important;
    padding:13px 0!important;
    color:#2b2e4d!important;
    text-transform:uppercase!important;
    font-size:11px!important;
    line-height:1.2!important;
    font-weight:800!important;
}
body.single-product.ica-product-design-active #product-content .woocommerce-tabs ul.tabs li.active a{
    color:#6d28d9!important;
    border-bottom:2px solid #6d28d9!important;
}
body.single-product.ica-product-design-active #product-content .woocommerce-tabs .panel{
    width:100%!important;
    margin:0!important;
    padding:20px 0 0!important;
    color:#41455f!important;
    font-size:13px!important;
    line-height:1.72!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active #product-content .woocommerce-tabs .panel h2{
    margin:0 0 16px!important;
    color:#101334!important;
    font-size:22px!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active #product-content .woocommerce-tabs .panel p,
body.single-product.ica-product-design-active #product-content .woocommerce-tabs .panel li,
body.single-product.ica-product-design-active #product-content .woocommerce-tabs .panel table{
    text-align:left!important;
}
body.single-product.ica-product-design-active #product-content .woocommerce-tabs .size-table img{
    width:auto!important;
    max-width:200px!important;
    margin:15px 0!important;
}

/* Prodotti correlati, a tutta larghezza come nel riferimento. */
body.single-product.ica-product-design-active .kd-shop-related{
    margin:0!important;
    padding:0 0 58px!important;
    background:#fff!important;
}
body.single-product.ica-product-design-active .kd-shop-related>.container{
    width:min(1180px,calc(100% - 48px))!important;
    max-width:none!important;
    padding:0!important;
}
body.single-product.ica-product-design-active section.related{
    position:relative!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
}
body.single-product.ica-product-design-active section.related>h2{
    margin:0 0 18px!important;
    color:#101334!important;
    font-size:20px!important;
    line-height:1.3!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active section.related ul.products{
    display:flex!important;
    gap:14px!important;
    width:100%!important;
    margin:0!important;
    padding:0 0 4px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-behavior:smooth!important;
    scrollbar-width:none!important;
}
body.single-product.ica-product-design-active section.related ul.products::-webkit-scrollbar{
    display:none!important;
}
body.single-product.ica-product-design-active section.related ul.products li.product{
    flex:0 0 calc((100% - 70px)/6)!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #ececf4!important;
    border-radius:14px!important;
    background:#fff!important;
    overflow:hidden!important;
    box-shadow:none!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active section.related ul.products li.product img{
    display:block!important;
    width:100%!important;
    aspect-ratio:1/1!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    background:linear-gradient(145deg,#fbfbfd,#f3f3f7)!important;
}
body.single-product.ica-product-design-active section.related ul.products li.product .woocommerce-loop-product__title{
    min-height:52px!important;
    margin:0!important;
    padding:12px 12px 5px!important;
    color:#101334!important;
    font-size:11px!important;
    line-height:1.4!important;
    font-weight:700!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active section.related ul.products li.product .price{
    display:block!important;
    margin:0!important;
    padding:0 12px 13px!important;
    color:#101334!important;
    font-size:12px!important;
    line-height:1.3!important;
    font-weight:800!important;
    text-align:left!important;
}
body.single-product.ica-product-design-active section.related ul.products li.product .button,
body.single-product.ica-product-design-active section.related ul.products li.product .added_to_cart{
    display:none!important;
}
body.single-product.ica-product-design-active .ica-related-nav{
    position:absolute!important;
    top:-3px!important;
    right:0!important;
    display:flex!important;
    gap:7px!important;
}
body.single-product.ica-product-design-active .ica-related-nav button{
    appearance:none!important;
    display:grid!important;
    place-items:center!important;
    width:30px!important;
    height:30px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #e7e7f1!important;
    border-radius:50%!important;
    background:#fff!important;
    color:#343755!important;
    box-shadow:none!important;
    font-size:18px!important;
    line-height:1!important;
    cursor:pointer!important;
}

@media(max-width:1024px){
    body.single-product.ica-product-design-active #product-content div.product{
        grid-template-columns:minmax(0,1fr) minmax(320px,.85fr)!important;
        column-gap:30px!important;
    }
    body.single-product.ica-product-design-active .ica-product-gallery{
        grid-template-columns:68px minmax(0,1fr)!important;
        gap:12px!important;
    }
    body.single-product.ica-product-design-active .ica-product-gallery__thumb{
        width:68px!important;
        height:68px!important;
        min-width:68px!important;
    }
    body.single-product.ica-product-design-active #product-content .summary .product_title{
        font-size:34px!important;
    }
    body.single-product.ica-product-design-active .ica-single-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    body.single-product.ica-product-design-active section.related ul.products li.product{
        flex-basis:calc((100% - 42px)/4)!important;
    }
}

@media(max-width:767px){
    body.single-product.ica-product-design-active header.blog-header.entry-header{
        min-height:104px!important;
        padding:58px 0 26px!important;
    }
    body.single-product.ica-product-design-active header.blog-header.entry-header .container,
    body.single-product.ica-product-design-active #product-content.container,
    body.single-product.ica-product-design-active .kd-shop-related>.container{
        width:calc(100% - 32px)!important;
    }
    body.single-product.ica-product-design-active #product-content.container{
        padding:42px 0!important;
    }
    body.single-product.ica-product-design-active #product-content div.product{
        display:block!important;
    }
    body.single-product.ica-product-design-active #product-content div.product>.product-inner-content{
        display:block!important;
    }
    body.single-product.ica-product-design-active .ica-product-gallery{
        display:flex!important;
        flex-direction:column-reverse!important;
        gap:10px!important;
    }
    body.single-product.ica-product-design-active .ica-product-gallery__thumbs{
        display:grid!important;
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
        gap:8px!important;
    }
    body.single-product.ica-product-design-active .ica-product-gallery__thumb{
        width:100%!important;
        height:auto!important;
        min-width:0!important;
        aspect-ratio:1/1!important;
    }
    body.single-product.ica-product-design-active #product-content div.product div.summary{
        margin-top:28px!important;
    }
    body.single-product.ica-product-design-active #product-content .summary .product_title{
        font-size:31px!important;
    }
    body.single-product.ica-product-design-active .ica-single-benefits{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        margin-top:24px!important;
    }
    body.single-product.ica-product-design-active .ica-single-support-grid{
        margin-top:18px!important;
    }
    body.single-product.ica-product-design-active #product-content .woocommerce-tabs{
        margin-top:28px!important;
    }
    body.single-product.ica-product-design-active section.related ul.products li.product{
        flex-basis:calc((100% - 14px)/2)!important;
    }
}

@media(max-width:480px){
    body.single-product.ica-product-design-active .ica-single-benefits{
        grid-template-columns:1fr!important;
    }
    body.single-product.ica-product-design-active .woocommerce-variation-add-to-cart,
    body.single-product.ica-product-design-active form.cart:not(.variations_form){
        gap:9px!important;
    }
    body.single-product.ica-product-design-active button.single_add_to_cart_button{
        flex:1 1 160px!important;
        padding-left:17px!important;
        padding-right:17px!important;
    }
}

/* v1.0.5 — Lightbox, guida taglie in popup e loghi pagamento vettoriali. */
body.ica-modal-open{
    overflow:hidden!important;
}
.ica-modal{
    position:fixed!important;
    inset:0!important;
    z-index:999999!important;
    display:none!important;
    padding:28px!important;
    box-sizing:border-box!important;
}
.ica-modal.is-open{
    display:grid!important;
    place-items:center!important;
}
.ica-modal__backdrop{
    position:absolute!important;
    inset:0!important;
    background:rgba(2,3,27,.82)!important;
    backdrop-filter:blur(8px)!important;
    -webkit-backdrop-filter:blur(8px)!important;
    cursor:zoom-out!important;
}
.ica-modal__dialog{
    position:relative!important;
    z-index:1!important;
    width:min(940px,calc(100vw - 56px))!important;
    max-height:calc(100vh - 56px)!important;
    margin:0!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:24px!important;
    background:#fff!important;
    box-shadow:0 30px 90px rgba(0,0,0,.35)!important;
    box-sizing:border-box!important;
}
.ica-modal__close{
    appearance:none!important;
    position:absolute!important;
    top:14px!important;
    right:14px!important;
    z-index:5!important;
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(16,19,52,.1)!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.94)!important;
    color:#101334!important;
    box-shadow:0 8px 24px rgba(9,8,35,.12)!important;
    font-size:28px!important;
    line-height:1!important;
    font-weight:400!important;
    cursor:pointer!important;
}
.ica-product-lightbox__dialog{
    display:grid!important;
    grid-template-columns:54px minmax(0,1fr) 54px!important;
    align-items:center!important;
    width:min(1180px,calc(100vw - 56px))!important;
    min-height:min(760px,calc(100vh - 56px))!important;
    padding:28px!important;
    background:linear-gradient(145deg,#fff,#f6f6fb)!important;
}
.ica-product-lightbox__figure{
    display:grid!important;
    grid-template-rows:minmax(0,1fr) auto!important;
    align-items:center!important;
    justify-items:center!important;
    min-width:0!important;
    min-height:0!important;
    height:100%!important;
    margin:0!important;
}
.ica-product-lightbox__image{
    display:block!important;
    max-width:100%!important;
    max-height:calc(100vh - 150px)!important;
    width:auto!important;
    height:auto!important;
    margin:auto!important;
    object-fit:contain!important;
}
.ica-product-lightbox__caption{
    min-height:20px!important;
    margin-top:12px!important;
    color:#585c78!important;
    font-size:12px!important;
    line-height:1.4!important;
    text-align:center!important;
}
.ica-product-lightbox__nav{
    appearance:none!important;
    display:grid!important;
    place-items:center!important;
    width:44px!important;
    height:44px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #e5e5ef!important;
    border-radius:50%!important;
    background:#fff!important;
    color:#6d28d9!important;
    box-shadow:0 10px 25px rgba(22,16,55,.08)!important;
    font-size:30px!important;
    line-height:1!important;
    cursor:pointer!important;
}
.ica-product-lightbox__nav[hidden]{
    visibility:hidden!important;
}
.ica-size-guide-modal__dialog{
    width:min(820px,calc(100vw - 56px))!important;
    padding:34px!important;
    overflow:auto!important;
}
.ica-size-guide-modal__dialog h2{
    margin:0 52px 24px 0!important;
    color:#101334!important;
    font-size:28px!important;
    line-height:1.2!important;
    text-align:left!important;
}
.ica-size-guide-modal__content{
    color:#3f435f!important;
    text-align:left!important;
}
.ica-size-guide-modal__content .size-table{
    display:grid!important;
    grid-template-columns:minmax(180px,.7fr) minmax(260px,1.3fr)!important;
    gap:28px!important;
    align-items:center!important;
    margin:0!important;
}
.ica-size-guide-modal__content .size-image-wrapper,
.ica-size-guide-modal__content .size-table-wrapper{
    width:100%!important;
    margin:0!important;
}
.ica-size-guide-modal__content .size-image-wrapper img{
    display:block!important;
    max-width:100%!important;
    height:auto!important;
    margin:0 auto!important;
}
.ica-size-guide-modal__content table{
    width:100%!important;
    margin:0!important;
    border-collapse:collapse!important;
    border:1px solid #ececf4!important;
    border-radius:12px!important;
    overflow:hidden!important;
}
.ica-size-guide-modal__content th,
.ica-size-guide-modal__content td{
    padding:12px 14px!important;
    border:1px solid #ececf4!important;
    color:#242744!important;
    font-size:13px!important;
    line-height:1.4!important;
    text-align:center!important;
}
.ica-size-guide-modal__content th{
    background:#f7f5ff!important;
    color:#5f26c9!important;
    font-weight:800!important;
}
.ica-size-guide-modal__empty{
    margin:0!important;
    padding:18px!important;
    border-radius:12px!important;
    background:#f7f5ff!important;
}
body.single-product.ica-product-design-active .ica-payment-logos{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:14px!important;
    margin-top:12px!important;
}
body.single-product.ica-product-design-active .ica-payment-logos img{
    display:block!important;
    width:auto!important;
    max-width:76px!important;
    height:20px!important;
    max-height:20px!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
}
body.single-product.ica-product-design-active .ica-payment-logos img[alt="Mastercard"]{
    width:38px!important;
}
body.single-product.ica-product-design-active .ica-payment-logos img[alt="PayPal"]{
    width:76px!important;
}
body.single-product.ica-product-design-active .ica-single-support--shipping{
    min-height:unset!important;
}

@media(max-width:767px){
    .ica-modal{
        padding:14px!important;
    }
    .ica-modal__dialog,
    .ica-product-lightbox__dialog,
    .ica-size-guide-modal__dialog{
        width:calc(100vw - 28px)!important;
        max-height:calc(100vh - 28px)!important;
        border-radius:18px!important;
    }
    .ica-product-lightbox__dialog{
        grid-template-columns:40px minmax(0,1fr) 40px!important;
        min-height:0!important;
        padding:18px 10px!important;
    }
    .ica-product-lightbox__image{
        max-height:calc(100vh - 110px)!important;
    }
    .ica-product-lightbox__nav{
        width:36px!important;
        height:36px!important;
        font-size:24px!important;
    }
    .ica-size-guide-modal__dialog{
        padding:28px 20px!important;
    }
    .ica-size-guide-modal__dialog h2{
        font-size:24px!important;
    }
    .ica-size-guide-modal__content .size-table{
        grid-template-columns:1fr!important;
        gap:18px!important;
    }
}

/* v1.0.6 — Lightbox glassmorphism e icona carrello vettoriale bianca. */
.ica-product-lightbox .ica-modal__backdrop{
    background:rgba(3,5,28,.58)!important;
    backdrop-filter:blur(20px) saturate(135%)!important;
    -webkit-backdrop-filter:blur(20px) saturate(135%)!important;
}
.ica-product-lightbox__dialog{
    overflow:hidden!important;
    border:1px solid rgba(255,255,255,.56)!important;
    background:
        radial-gradient(circle at 12% 10%,rgba(248,172,34,.16),transparent 31%),
        radial-gradient(circle at 88% 12%,rgba(20,128,231,.18),transparent 34%),
        radial-gradient(circle at 72% 90%,rgba(230,21,144,.14),transparent 36%),
        linear-gradient(135deg,rgba(255,255,255,.72) 0%,rgba(255,255,255,.46) 55%,rgba(246,244,255,.34) 100%)!important;
    backdrop-filter:blur(30px) saturate(150%)!important;
    -webkit-backdrop-filter:blur(30px) saturate(150%)!important;
    box-shadow:0 34px 110px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.ica-product-lightbox__image{
    border-radius:18px!important;
    filter:drop-shadow(0 22px 34px rgba(15,13,44,.16))!important;
}
.ica-product-lightbox .ica-modal__close,
.ica-product-lightbox__nav{
    border:1px solid rgba(255,255,255,.68)!important;
    background:rgba(255,255,255,.58)!important;
    backdrop-filter:blur(16px) saturate(145%)!important;
    -webkit-backdrop-filter:blur(16px) saturate(145%)!important;
    box-shadow:0 12px 30px rgba(15,13,44,.14),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.ica-product-lightbox .ica-modal__close:hover,
.ica-product-lightbox__nav:hover{
    background:rgba(255,255,255,.82)!important;
    transform:translateY(-1px)!important;
}
.ica-product-lightbox__caption{
    min-height:24px!important;
    margin:16px 0 0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    color:#242744!important;
    font-size:16px!important;
    line-height:1.45!important;
    font-weight:650!important;
    letter-spacing:.01em!important;
    text-align:center!important;
}
body.single-product.ica-product-design-active button.single_add_to_cart_button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
}
body.single-product.ica-product-design-active button.single_add_to_cart_button:after{
    content:""!important;
    display:block!important;
    flex:0 0 18px!important;
    width:18px!important;
    height:18px!important;
    margin:0!important;
    background-image:url('../img/shopping-cart-outline-02-white.svg')!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    background-size:contain!important;
}

@media(max-width:767px){
    .ica-product-lightbox__dialog{
        background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(255,255,255,.48))!important;
    }
    .ica-product-lightbox__caption{
        margin-top:12px!important;
        font-size:15px!important;
    }
}
