/*
Theme Name: Hello Elementor Child
Theme URI: https://example.com/
Description: Child theme for Hello Elementor
Author: Barbara Frigato
Author URI:
Copyright: © 2026 Barbara Frigato
Template: hello-elementor
Version: 1.0.10
Text Domain: hello-elementor-child
*/

/**CSS COMPLETO PRODUCT PAGE**/


/* =========================
   LAYOUT GENERALE
========================= */

.custom-product__inner {
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 20px;
}

/* =========================
   TOP SECTION
========================= */
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) .woocommerce-breadcrumb  {
    text-align: center;
    font-family: 'Hind', sans-serif;
    font-size: 16px;
    margin-bottom: 60px;
}
.product-title {
    font-family: 'Hind', sans-serif;
    font-weight: 700;
}

.product-title::after{
    content:"";
    display:block;
    width:80px;
    height:3px;
    background:#ED2226;
    margin:18px 0 0;
}

.product-sku {
    font-size: 16px !important;
    color: #000 !important;
    font-family: 'Hind', sans-serif;
}
.product-top{
    display: flex;
    gap: 40px;
    align-items: flex-start;
}

.product-top .left{
    flex: 1;
}

.product-top .right{
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.product-top .right h1{
    font-size: 28px;
    margin: 0;
    line-height: 1.2;
}

.product-sku{
    font-size: 13px;
    color: #777;
}

.product-top .price{
    font-size: 22px;
    font-weight: 600;
}

/* =========================
   RATING
========================= */

.woocommerce-product-rating{
    display: flex;
    gap: 8px;
    font-size: 14px;
}

/* =========================
   SHORT DESCRIPTION
========================= */

.woocommerce-product-details__short-description{
    font-size: 16px;
    line-height: 1.5;
    color: #444444;
    font-family: 'Hind', sans-serif;
}
.woocommerce-product-details__short-description a span {
    color: #444444;
    font-weight: 700 !important;
    margin-top: 20px !important;
}
.woocommerce-product-details__short-description p {
    margin-top: 30px;
}

/* =========================
   GALLERY WOOCOMMERCE
========================= */

.woocommerce-product-gallery{
    width: 100%;
}

.woocommerce-product-gallery__wrapper{
    margin-bottom: 10px;
}

.woocommerce-product-gallery__image img{
    width: 100%;
    height: auto;
    border-radius: 10px;
    display: block;
}

/* thumbnails */
.flex-control-thumbs{
    display: flex;
    gap: 10px;
    list-style: none;
    padding: 0;
    margin-top: 10px;
}

.flex-control-thumbs li{
    width: 70px;
    height: 70px;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid #eee;
    cursor: pointer;
}

.flex-control-thumbs img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.7;
}

.flex-control-thumbs img:hover{
    opacity: 1;
}

/* =========================
   FORM CART
========================= */

.single-product form.cart{
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* GARANZIA */
.single-product form.cart .extra-warranty {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
    margin-top: -10px;
    margin-bottom: 20px;
}
.extra-warranty span.woocommerce-Price-amount.amount {
    font-size: 16px !important;
    font-weight: 600;
}
/* =========================
   RIGA QUANTITY + BUTTON
========================= */

.cart-row{
    display: flex;
    gap: 10px;
    align-items: center;
    width: 70%;
}

/* =========================
   STEPPER QUANTITY
========================= */

.quantity{
    display: flex;
    align-items: center;
    border: 1px solid #ddd;
    border-radius: 6px;
    overflow: hidden;
    height: 44px;
    width: 40%;
}

/* input */
.quantity input.qty{
    width: 60px;
    height: 44px;
    border: none;
    text-align: center;
    outline: none;
}

/* bottoni stepper */
.quantity button.qty-minus,
.quantity button.qty-plus{
    width: 36px;
    height: 44px;
    background: #f5f5f5;
    border: none;
    cursor: pointer;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
}

/* =========================
   ADD TO CART BUTTON
========================= */

.single_add_to_cart_button{
    height: 44px;
    padding: 0 20px;
    background: #000;
    color: #fff;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    flex: 1;
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt {
    background-color: #ED2226;
    font-family: "Roboto", Sans-Serif;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover {
    background-color: #000;
}

/* =========================
   METODI PAGAMENTO
========================= */

div.payment-methods {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    /*margin-top: -50px*/
}
.payment-methods-img {
    max-width: 12% !important;
    height: auto;
    object-fit: contain;
}

/* =========================
   TABS
========================= */

.product-tabs {
    margin: 60px 0 80px;
}

.tab-nav{
    display:flex;
    margin-left: -40px !important;
}

/*.tab-nav li{
    list-style:none;
    cursor:pointer;
    padding:10px 30px 0;
    color:#000;
    position:relative;
    font-family: "Roboto", Sans-Serif;
    font-size: 16px;
}

.tab-nav li:hover{
    color:#000;
}

.tab-nav li.active{
    color:#000;
    font-weight:600;
}

.tab-nav li.active::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-1px;
    width:100%;
    height:3px;
    background:#ed2226;
}*/

.tab-panel{
    display:none;
}

.tab-panel.active{
    display:block;
}

.tech-table{
    width:100%;
    border-collapse:collapse;
}

.tech-table td{
    padding:20px !important;
    border-bottom:1px solid #eee;
}
.tab-nav li {
    padding: 10px 14px;
    transition: all 0.2s ease;
    background: #efefef;
    color: #000;
    border: 1px solid #ddd;
    font-family: 'Hind', sans-serif;
    font-size: 16px;
    font-weight: 400;
}

/*.tab-nav li:hover {
    background: rgba(237, 34, 38, 0.06);
}*/

.tab-nav li.active {
    background: #fff;
    font-weight: 600;
    color: #000;
    border-top: 2px solid #ED2226;
}
.tab-nav li {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}

.tab-nav li .tab-icon {
    color: #ED2226;
    font-size: 16px;
    flex-shrink: 0;
}

/* =========================
   TABLE
========================= */

.tech-table{
    width: 100%;
    border-collapse: collapse;
}

.tech-table td{
    padding: 12px 0;
    border-bottom: 1px solid #eee;
}

/* ==========================
SPEDIZIONI E RESI
===========================*/
.shipping-returns-grid{
    display: flex;
    gap: 40px;
    align-items: flex-start;
        padding: 20px;
    border: 1px solid #ddd;
}

.shipping-box,
.returns-box{
    flex: 1;
}

.shipping-box h4,
.returns-box h4{
    margin-bottom: 10px;
    font-family: 'Hind', sans-serif;
    Font-size: 18px;
}

.shipping-box .content,
.returns-box .content{
    font-family: 'Hind', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #444444;
}
#garanzia p {
    font-family: 'Hind', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #444444;
        padding: 20px;
    border: 1px solid #ddd;
    
}

.related-products h2 {
    font-family: 'Hind', sans-serif;
    font-size: 20px !important;
    font-weight: 700;
}

/* =========================
   CARD
========================= */
.benefits-section,
.benefits-section-2{
    width:100%;
    padding:70px 20px;
    background:
        linear-gradient(rgba(0,0,0,.75), rgba(0,0,0,.75)),
        url("https://www.clickautoricambi.com/wp-content/uploads/2026/10/Motore-ricambi.webp") center center / cover no-repeat;
}

.benefits-container{
    max-width:1200px;
    margin:0 auto;
}

.benefits-intro{
    max-width:980px;
    margin:0 auto 36px;
}

.c-txt-banner-about{
    margin:0;
    text-align:center;
    font-family:"Hind",sans-serif;
    font-size:15px;
    font-weight:600;
    line-height:1.7;
    color:#FFFFFF;
}

.product-benefits{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.benefit-card{
    background:#fff;
    border:1px solid #e8e8e8;
    border-radius:12px;
    overflow:hidden;
    text-align:center;
    transition:.3s ease;
    box-shadow:0 4px 15px rgba(0,0,0,.05);
}

.benefit-card:hover{
    transform:translateY(-5px);
    box-shadow:0 12px 30px rgba(0,0,0,.12);
}

.benefit-top{
    height:10px;
    background:linear-gradient(to right,#d10000,#1f1f1f);
}

.benefit-icon{
    width:72px;
    height:72px;
    margin:30px auto 20px;
    border-radius:50%;
    background:#1f1f1f;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:30px;
    transition:.3s;
}

.benefit-card:hover .benefit-icon{
    background:#d10000;
}

.benefit-card h3{
    margin:0 20px 15px;
    color:#222;
    font-size:22px;
    font-weight:700;
}

.benefit-card p{
    padding:0 25px 30px;
    margin:0;
    color:#666;
    line-height:1.6;
    font-size:15px;
}

.benefits-cta{
    margin-top:50px;
    text-align:center;
}

.benefits-cta p{
    margin:0;
    color:#fff;
    font-size:20px;
    font-family:'Hind', sans-serif;
    font-weight:500;
    line-height:1.6;
}

.benefits-cta a{
    display:inline-block;
    margin:0 4px;
    color:#fff;
    font-weight:700;
    text-decoration:none;
    border-bottom:2px solid #ED2226;
    transition:.3s ease;
}

.benefits-cta a:hover{
    color:#ED2226;
    border-color:#fff;
}

@media(max-width:991px){

    .product-benefits{
        grid-template-columns:1fr;
    }


}


/* =========================
   PRODOTTI CORRELATI
========================= */

.related-products{
    margin:80px;
}

.related-products h2 {
    text-align:center;
    font-family:'Hind', sans-serif;
    font-size:18px !important;
    font-weight:700;
    margin-bottom:50px;
    position:relative;
}

.related-products h2::after{
    content:"";
    display:block;
    width:80px;
    height:3px;
    background:#ED2226;
    margin:18px auto 0;
}

/* Grid */

.related-products ul.products{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
    margin:0;
    padding:0;
}

.related-products ul.products::before,
.related-products ul.products::after{
    display:none;
}

/* Card */

.related-products ul.products li.product{
    width:auto !important;
    margin:0 !important;
    float:none !important;

    background:#fff;
    border:1px solid #eee;
    border-radius:12px;
    overflow:hidden;
    transition:.3s;
    box-shadow:0 5px 20px rgba(0,0,0,.05);
}

.related-products ul.products li.product:hover{
    transform:translateY(-6px);
    box-shadow:0 15px 35px rgba(0,0,0,.12);
}

/* Immagine */

.related-products ul.products li.product img{
    width:100%;
    margin:0;
    transition:.35s;
}

.related-products ul.products li.product:hover img{
    transform:scale(1.05);
}

/* Titolo */

.woocommerce-loop-product__title{
    padding:20px 20px 10px !important;
    font-size:18px !important;
    font-family:'Hind', sans-serif;
    color:#222;
    line-height:1.4;
}

/* Prezzo */

.related-products .price{
    padding:0 20px;
    font-size:20px !important;
    font-weight:700 !important;
    color:#ED2226 !important;
    margin-bottom:20px;
    text-align: center;
}

/* Pulsante */

.related-products .button{
    display:block;
    margin:20px !important;
    padding:14px !important;
    background:#ED2226 !important;
    color:#fff !important;
    text-align:center !important;
    text-transform:uppercase !important;
    font-size:14px;
    font-weight:700;
    border-radius:6px;
    transition:.3s;
}

.related-products .button:hover{
    background:#000;
    color:#fff;
}

/* Badge Offerta */

.related-products .onsale{
    background:#ED2226;
    border-radius:4px;
    padding:6px 12px;
    font-weight:700;
}

/* Responsive */

@media(max-width:1024px){

    .related-products ul.products{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:640px){

    .related-products ul.products{
        grid-template-columns:1fr;
    }

}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 768px){

    .product-top{
        flex-direction: column;
    }

    .cart-row{
        flex-direction: column;
        align-items: stretch;
    }

    .single_add_to_cart_button{
        width: 100%;
    }

    .quantity{
        width: 100%;
        justify-content: space-between;
    }

    .flex-control-thumbs{
        overflow-x: auto;
    }
}

/* =====================================================
   RESPONSIVE: HEADER, SHOP, PRODOTTO E CARRELLO
   ===================================================== */

@media (max-width: 1024px){
    #masthead .elementor-element-14a06df{
        padding-left:32px !important;
        padding-right:32px !important;
    }

    #masthead .elementor-element-8eea31f .hfe-menu-item{
        padding-left:12px !important;
        padding-right:12px !important;
        font-size:15px !important;
    }

    #menu-item-62 .mega-menu{
        width:min(720px, 88vw);
    }

    #menu-item-62 .mega-menu-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:18px 30px;
    }

    .cw-cart-layout{
        grid-template-columns:1fr;
    }

    .cw-cart-summary{
        position:static;
    }
}

@media (max-width: 767px){
    body{
        overflow-x:hidden;
    }

    /* Header Elementor */
    #masthead .elementor-element-14a06df{
        padding:12px 20px !important;
        align-items:center !important;
    }

    #masthead .elementor-element-40c3bdb,
    #masthead .elementor-element-82d4425{
        width:50% !important;
    }

    #masthead .elementor-element-40c3bdb{
        justify-content:flex-start !important;
    }

    #masthead .elementor-element-90c74f1 img{
        width:160px !important;
        max-width:100% !important;
        height:auto !important;
    }

    #masthead .elementor-element-ede66ad{
        align-items:center !important;
    }

    #masthead .header-icons{
        justify-content:flex-end;
        gap:15px;
    }

    #masthead .elementor-element-adadd63{
        width:100% !important;
        padding-top:8px !important;
    }

    #masthead .elementor-element-0acbf6e{
        width:100% !important;
    }

    #masthead .hfe-nav-menu__toggle{
        display:flex;
        align-items:center;
        justify-content:flex-end;
        width:100%;
        min-height:38px;
    }

    #masthead .hfe-nav-menu__toggle,
    #masthead .hfe-nav-menu__toggle svg{
        color:currentColor;
        fill:currentColor;
    }

    #masthead .hfe-nav-menu__layout-horizontal > ul.hfe-nav-menu,
    #masthead .hfe-nav-menu__layout-horizontal > ul.hfe-nav-menu.hfe-active-menu{
        width:100%;
        margin-top:8px;
        background:#fff;
        border-top:2px solid #ed2226;
        box-shadow:0 12px 28px rgba(0,0,0,.12);
    }

    #masthead .hfe-nav-menu__layout-horizontal > ul.hfe-nav-menu > li{
        width:100%;
    }

    #masthead .hfe-nav-menu__layout-horizontal > ul.hfe-nav-menu > li > a.hfe-menu-item{
        display:block;
        padding:14px 18px !important;
        color:#222 !important;
        font-size:15px !important;
    }

    #masthead .elementor-element-3224534{
        width:100% !important;
        margin-top:10px;
    }

    #masthead .elementor-element-0255861 .elementor-button{
        width:100%;
        justify-content:center;
    }

    /* Mega menu: nel menu mobile diventa una lista leggibile. */
    #menu-item-62 .mega-menu{
        position:static;
        display:block;
        width:100%;
        max-width:none;
        padding:0 18px 12px;
        box-sizing:border-box;
        border:0;
        box-shadow:none;
        background:#f7f7f7;
    }

    #menu-item-62 .mega-menu-grid{
        grid-template-columns:1fr;
        gap:0;
    }

    #menu-item-62 .mega-column a{
        display:block;
        padding:9px 0;
        font-size:14px;
    }

    /* Hero e catalogo */
    .shop-hero{
        min-height:320px;
        height:auto;
        padding:54px 0;
    }

    .shop-hero__content{
        padding:0 20px;
    }

    .shop-hero__title{
        font-size:36px;
        line-height:1.1;
    }

    .shop-section,
    .custom-product__inner{
        margin-top:32px;
        margin-bottom:32px;
        padding-left:16px;
        padding-right:16px;
    }

    /* Prodotto */
    .product-top{
        gap:26px;
    }

    .product-top .right h1,
    .product-title{
        font-size:26px;
    }

    .product-tabs-section{
        margin-top:36px;
    }

    .product-tabs .tabs,
    .woocommerce-tabs ul.tabs{
        display:flex;
        overflow-x:auto;
        gap:0;
        white-space:nowrap;
        -webkit-overflow-scrolling:touch;
    }

    .payment-methods{
        flex-wrap:wrap;
        gap:8px;
    }

    .payment-methods-img{
        max-width:58px;
        height:auto;
    }

    /* Carrello */
    .cw-cart-layout{
        margin:30px 0;
        gap:24px;
    }

    .cw-cart-item{
        padding:20px;
        gap:20px;
    }

    .cw-main{
        gap:16px;
        padding-right:28px;
    }

    .cw-image{
        width:88px;
    }

    .cw-title{
        font-size:17px;
    }

    .cw-actions{
        flex-direction:column;
        align-items:stretch;
        gap:20px;
        margin-top:28px;
    }

    .cw-coupon{
        max-width:none;
    }

    .cw-breakdown-total{
        font-size:19px;
    }

    /* Sezioni informative e popup */
    .benefits-section,
    .benefits-section-2{
        padding:52px 20px;
    }

    .benefit-card{
        padding:28px 22px;
    }

    .benefits-cta p{
        font-size:16px;
    }

    #authOverlay .box,
    #searchOverlay .box{
        width:calc(100% - 32px);
        padding:22px;
    }

    .header-ricambi-search{
        flex-direction:column;
    }

    .header-ricambi-search button[type="submit"]{
        min-height:46px;
    }

    .cart-added-modal{
        padding:26px 20px;
    }
}

/* Forzatura compatibile anche con il widget Checkout di Elementor e Woo Blocks. */
body.woocommerce-checkout #place_order,
body.woocommerce-checkout button[name="woocommerce_checkout_place_order"],
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page #place_order,
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page button[name="woocommerce_checkout_place_order"],
body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wc-block-checkout__actions_row .wc-block-components-button{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    float:none !important;
    width:100% !important;
    min-height:54px !important;
    margin:22px 0 0 !important;
    padding:15px 20px !important;
    border:0 !important;
    border-radius:8px !important;
    outline:0 !important;
    appearance:none !important;
    -webkit-appearance:none !important;
    background:#ed2226 !important;
    background-image:none !important;
    color:#fff !important;
    font-family:'Hind', sans-serif !important;
    font-size:14px !important;
    font-weight:700 !important;
    line-height:1.2 !important;
    letter-spacing:.2px !important;
    text-align:center !important;
    text-transform:uppercase !important;
    text-shadow:none !important;
    box-shadow:none !important;
}

body.woocommerce-checkout #place_order:hover,
body.woocommerce-checkout button[name="woocommerce_checkout_place_order"]:hover,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
body.woocommerce-checkout .wc-block-checkout__actions_row .wc-block-components-button:hover{
    background:#171717 !important;
    background-image:none !important;
    color:#fff !important;
}

/* Carrello vuoto. */
.woocommerce-cart .cart-empty{
    max-width:620px;
    box-sizing:border-box;
    margin:54px auto 18px !important;
    padding:42px 28px 28px !important;
    border:1px solid #ececec !important;
    border-radius:14px;
    background:#fff !important;
    color:#333 !important;
    font:600 18px/1.5 'Hind', sans-serif !important;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.woocommerce-cart .cart-empty::before{
    content:'🛒';
    display:block;
    margin:0 0 12px;
    font-size:34px;
    line-height:1;
}

.woocommerce-cart .return-to-shop{
    margin:0 0 64px;
    text-align:center;
}

.woocommerce-cart .return-to-shop .button,
.woocommerce-cart a.wc-backward{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:13px 22px !important;
    border:0 !important;
    border-radius:8px !important;
    background:#ed2226 !important;
    color:#fff !important;
    font:700 14px/1.2 'Hind', sans-serif !important;
    text-decoration:none;
    text-transform:uppercase;
}

.woocommerce-cart .return-to-shop .button:hover,
.woocommerce-cart a.wc-backward:hover{
    background:#171717 !important;
    color:#fff !important;
}

@media (max-width: 767px){
    .woocommerce-cart .cart-empty{
        margin:28px 16px 16px !important;
        padding:34px 20px 24px !important;
        font-size:17px !important;
    }

    .woocommerce-cart .return-to-shop{
        margin:0 16px 40px;
    }

    .woocommerce-cart .return-to-shop .button,
    .woocommerce-cart a.wc-backward{
        width:100%;
        box-sizing:border-box;
    }
}

/* =====================================================
   HEADER MOBILE – struttura reale Elementor / HFE
   ===================================================== */
@media (max-width: 767px){
    #masthead .elementor-element-14a06df{
        display:grid !important;
        grid-template-columns:minmax(0, 1fr) auto;
        grid-template-areas:
            "logo icons"
            "menu cta";
        gap:10px 14px;
        width:100%;
        padding:14px 16px !important;
        box-sizing:border-box;
        align-items:center !important;
    }

    #masthead .elementor-element-40c3bdb{
        grid-area:logo;
        width:auto !important;
        min-width:0;
        justify-content:flex-start !important;
    }

    #masthead .elementor-element-82d4425{
        grid-area:icons;
        width:auto !important;
        min-width:0;
    }

    #masthead .elementor-element-ede66ad{
        justify-content:flex-end !important;
    }

    #masthead .elementor-element-90c74f1,
    #masthead .elementor-element-90c74f1 .elementor-widget-container{
        width:auto !important;
        margin:0 !important;
    }

    #masthead .elementor-element-90c74f1 img{
        display:block;
        width:145px !important;
        max-width:100%;
        height:auto !important;
    }

    #masthead .header-icons{
        gap:8px;
    }

    #masthead .header-icons .icon-btn{
        width:38px;
        height:38px;
        font-size:17px;
    }

    #masthead .header-icons .cart-count{
        top:1px;
        right:0;
        min-width:16px;
        padding:1px 4px;
        box-sizing:border-box;
        text-align:center;
    }

    #masthead .account-dropdown{
        top:42px;
        right:0;
        min-width:190px;
        z-index:100001;
        box-shadow:0 12px 30px rgba(0,0,0,.16);
    }

    #masthead .elementor-element-adadd63{
        grid-area:menu;
        width:auto !important;
        min-width:0;
        margin:0 !important;
        padding:0 !important;
    }

    #masthead .elementor-element-0acbf6e,
    #masthead .elementor-element-8eea31f,
    #masthead .elementor-element-8eea31f .elementor-widget-container,
    #masthead .elementor-element-8eea31f .hfe-nav-menu{
        width:100% !important;
    }

    #masthead .hfe-nav-menu__toggle{
        justify-content:flex-start;
        width:44px;
        min-height:40px;
        margin:0 !important;
        padding:0;
    }

    #masthead .hfe-nav-menu-icon,
    #masthead .hfe-nav-menu-icon svg{
        width:24px;
        height:24px;
    }

    #masthead .elementor-element-8eea31f nav.hfe-dropdown{
        z-index:100000;
        width:calc(100vw - 32px);
        max-width:none;
        margin-top:8px;
    }

    #masthead .elementor-element-8eea31f nav.hfe-dropdown > ul.hfe-nav-menu{
        overflow:hidden;
        border-radius:10px;
        box-shadow:0 14px 32px rgba(0,0,0,.16);
    }

    #masthead .elementor-element-3224534{
        grid-area:cta;
        width:auto !important;
        margin:0 !important;
        padding:0 !important;
    }

    #masthead .elementor-element-0255861,
    #masthead .elementor-element-0255861 .elementor-widget-container{
        margin:0 !important;
    }

    #masthead .elementor-element-0255861 .elementor-button{
        min-height:40px;
        padding:10px 12px !important;
        border-radius:7px;
        font-size:11px;
        line-height:1.15;
        white-space:nowrap;
    }

    #masthead .elementor-element-0255861 .elementor-button-icon{
        margin-left:6px;
    }

    #masthead .elementor-element-0255861 .elementor-button-icon svg{
        width:14px;
        height:14px;
    }
}

@media (max-width: 380px){
    #masthead .elementor-element-14a06df{
        grid-template-areas:
            "logo icons"
            "menu menu"
            "cta cta";
    }

    #masthead .elementor-element-90c74f1 img{
        width:128px !important;
    }

    #masthead .elementor-element-0255861 .elementor-button{
        width:100%;
        justify-content:center;
    }
}

@media (max-width: 420px){
    #masthead .elementor-element-90c74f1 img{
        width:130px !important;
    }

    #masthead .header-icons{
        gap:12px;
    }

    .header-icons .icon-btn{
        font-size:16px;
    }

    .shop-hero__title{
        font-size:30px;
    }

    .cw-main{
        flex-direction:column;
        padding-right:0;
    }

    .cw-image{
        width:100%;
        max-width:180px;
    }

    .cw-remove{
        top:12px;
        right:12px;
    }
}

/**CSS MEGAMENU**/

/* ==========================
MEGAMENU
========================== */


#menu-item-62{
    position: relative;
}

/* blocco menu (IMPORTANTE: hidden di default) */
#menu-item-62 .mega-menu{
    position: absolute;
    top: 100%;
    left: 0;

    width: 900px; /* più sicuro di 1200 in header Elementor */
    max-width: 90vw;

    background: #fff;
    padding: 30px;

    display: none;

    box-shadow: 0 20px 50px rgba(0,0,0,.15);
    border-top: 3px solid #ED2226;

    z-index: 99999;
}

/* hover */
#menu-item-62:hover .mega-menu{
    display: block;
}

/* griglia */
#menu-item-62 .mega-menu-grid{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

/* reset lista */
#menu-item-62 .mega-column ul{
    list-style: none;
    margin: 0;
    padding: 0;
}

#menu-item-62 .mega-column li{
    margin-bottom: 10px;
}

#menu-item-62 .mega-column a{
    text-decoration: none;
    font-family: "Roboto", Sans-serif;
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    color: #000000;
}

#menu-item-62 .mega-column a:hover{
    color: #ED2226;
}

/**PAGINA CATEGORIA**/

/*==================================================
HERO
==================================================*/

.shop-hero{
    position:relative;
    height:400px;
    background-size:cover;
    background-position:center;
    display:flex;
    align-items:center;
}

.shop-hero__content{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1200px;
    margin:auto;
    padding:0 20px;
    text-align:left;
}

.shop-hero__content .woocommerce-breadcrumb{
    color:#767676;
    margin-bottom:20px;
    text-align:left;
}

.shop-hero__content .woocommerce-breadcrumb a{
    color:#767676;
    opacity:.8;
}

.shop-hero__title{
    font-family:"Hind",sans-serif;
    font-size:52px;
    font-weight:700;
    color:#000;
    margin:0;
}

.shop-hero__title::after{
    content:"";
    display:block;
    width:90px;
    height:4px;
    background:#ED2226;
    margin:18px 0;
}

.shop-hero__description{
    max-width:700px;
    margin-top:30px;
    color:#000;
    font-family:"Hind",sans-serif;
    font-size:16px;
    line-height:1.8;
}

.shop-hero__description p{
    margin:0;
}

.shop-hero__description a{
    color:#fff;
    text-decoration:underline;
}
/*==================================================
CATALOGO
==================================================*/

.shop-section{
    padding:70px 20px;
    background:#fff;
}

.shop-layout{
    max-width:1400px;
    margin:auto;
}


/*==================================================
BENEFITS
==================================================*/

.benefits-section,
.benefits-section-2{
    width:100%;
    padding:80px 20px;
    background:
        linear-gradient(rgba(0,0,0,.75),rgba(0,0,0,.75)),
        url("https://www.clickautoricambi.com/wp-content/uploads/2026/10/Motore-ricambi.webp") center center / cover no-repeat;
}

.benefits-container{
    max-width:1200px;
    margin:auto;
}

.product-benefits{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.benefit-card{
    background:#fff;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.3s;
    text-align:center;
}

.benefit-card:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 40px rgba(0,0,0,.15);
}

.benefit-top{
    height:8px;
    background:linear-gradient(to right,#ED2226,#111);
}

.benefit-icon{
    width:80px;
    height:80px;
    margin:30px auto;
    border-radius:50%;
    background:#111;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:30px;
    transition:.3s;
}

.benefit-card:hover .benefit-icon{
    background:#ED2226;
}

.benefit-card h3{
    font-family:"Hind",sans-serif;
    font-size:24px;
    margin-bottom:15px;
    color:#222;
}

.benefit-card p{
    padding:0 30px 35px;
    color:#666;
    line-height:1.7;
    margin:0;
    font-family:"Hind",sans-serif;
    font-size:15px;
}


/*==================================================
CTA BENEFITS
==================================================*/

.benefits-cta{
    margin-top:60px;
    text-align:center;
}

.benefits-cta p{
    color:#fff;
    font-size:22px;
    font-family:"Hind",sans-serif;
}

.benefits-cta a{
    color:#ED2226;
    font-weight:700;
    text-decoration:none;
}

.benefits-cta a:hover{
    text-decoration:underline;
}

@media(max-width:991px){
    .benefits-section,
    .benefits-section-2{padding:60px 20px;}
    .product-benefits{grid-template-columns:1fr;}
}


/*==================================================
CTA FINALE
==================================================*/

.shop-bottom-cta{
    padding:90px 20px;
    background:#f8f8f8;
}

.shop-bottom-cta__inner{
    max-width:900px;
    margin:auto;
    text-align:center;
}

.shop-bottom-cta__inner h2{
    font-family:"Hind",sans-serif;
    font-size:42px;
    font-weight:700;
    margin-bottom:20px;
}

.shop-bottom-cta__inner h2::after{
    content:"";
    display:block;
    width:90px;
    height:4px;
    background:#ED2226;
    margin:20px auto;
}

.shop-bottom-cta__inner p{
    font-size:18px;
    color:#555;
    line-height:1.8;
    margin-bottom:35px;
}

.shop-bottom-cta__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:18px 42px;
    background:#ED2226;
    color:#fff;
    text-decoration:none;
    text-transform:uppercase;
    font-weight:700;
    border-radius:6px;
    transition:.3s;
}

.shop-bottom-cta__button:hover{
    background:#000;
    color:#fff;
}

/*Scheda prodotto badge disponibilità*/
.product-stock-badge{

    display:inline-flex;

    align-items:center;

    padding:8px 18px;

    margin:20px 0;

    border-radius:30px;

    background:#F39C12;

    color:#fff;

    font-size:13px;

    font-weight:700;

    text-transform:uppercase;

}

.product-stock-message{

    display:none;

    margin-top:20px;

    padding:18px;

    border-radius:8px;

    line-height:1.6;

    font-size:15px;

}

.product-stock-message.warning{

    display:block;

    background:#FFF7E6;

    border:1px solid #F39C12;

    color:#8A5A00;

}

.product-stock-message.error{

    display:block;

    background:#FDECEC;

    border:1px solid #ED2226;

    color:#B71C1C;

}


/* ==========================================
BOTTONE DISABILITATO
========================================== */

.single_add_to_cart_button.disabled,
.single_add_to_cart_button:disabled{

    background:#bdbdbd !important;

    border-color:#bdbdbd !important;

    color:#fff !important;

    cursor:not-allowed !important;

    opacity:1;

    box-shadow:none;

    pointer-events:none;

}

.single_add_to_cart_button.disabled:hover,
.single_add_to_cart_button:disabled:hover{

    background:#bdbdbd !important;

    border-color:#bdbdbd !important;

    color:#fff !important;

    transform:none;

}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:991px){

    .shop-help__content{
        flex-direction:column;
        text-align:center;
    }

    .shop-help__text h2::after{
        margin:15px auto 0;
    }

    .product-benefits{
        grid-template-columns:1fr;
    }

}

@media(max-width:768px){

    .shop-hero{
        height:260px;
    }

    .shop-hero__title{
        font-size:36px;
    }

    .shop-help__text h2{
        font-size:28px;
    }

    .shop-bottom-cta__inner h2{
        font-size:32px;
    }

    .shop-category-description p,
    .shop-help__text p,
    .shop-bottom-cta__inner p{
        font-size:16px;
    }

}


/* =====================================================
LAYOUT
===================================================== */

.cw-cart-layout{

    display:grid;

    grid-template-columns:minmax(0,1fr) 360px;

    gap:40px;

    align-items:start;

    margin:60px 0;

}

.cw-cart-summary{

    position:sticky;

    top:30px;

}

/*CARRELLO*/

/*====================================================
LAYOUT
====================================================*/

.cw-cart-layout{

    display:grid;

    grid-template-columns:minmax(0,1fr) 360px;

    gap:40px;

    align-items:start;

    margin:60px 0;

}

.cw-cart-summary{

    position:sticky;

    top:30px;

}


/*====================================================
LISTA PRODOTTI
====================================================*/

.cw-cart-items{

    display:flex;

    flex-direction:column;

    gap:25px;

}


/*====================================================
CARD
====================================================*/

.cw-cart-item{

    position:relative;

    display:flex;

    flex-direction:column;

    gap:30px;

    padding:30px;

    background:#fff;

    border:1px solid #ECECEC;

    border-radius:12px;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

}


/*====================================================
PULSANTE ELIMINA
====================================================*/

.cw-remove{

    position:absolute;

    top:18px;

    right:18px;

}

.cw-remove a{

    width:42px;

    height:42px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:8px;

    background:#F7F7F7;

    color:#8A8A8A;

    transition:.25s;

}

.cw-remove a:hover{

    background:#ED2226;

    color:#FFF;

}

.cw-remove i{

    font-size:16px;

}


/*====================================================
CORPO CARD
====================================================*/

.cw-main{

    display:flex;

    gap:30px;

    align-items:flex-start;

}


/*====================================================
IMMAGINE
====================================================*/

.cw-image{

    width:140px;

    flex-shrink:0;

}

.cw-image img{

    width:100%;

    border-radius:12px;

    border:1px solid #ECECEC;

}


/*====================================================
INFO
====================================================*/

.cw-info{

    flex:1;

}

.cw-title{

font-family:'Hind',sans-serif;

font-size:22px;

font-weight:700;

line-height:1.35;

}

.cw-title a{

    color:#222;

    text-decoration:none;

}

.cw-title a:hover{

    color:#ED2226;

}

.cw-sku{

    margin-bottom:15px;

    color:#777;

    font-size:15px;

}

.cw-extra-warranty{

    display:inline-flex;

    align-items:center;

    gap:8px;

    margin-top:18px;

    padding:10px 14px;

    background:#EEF8F1;

    color:#2D7A45;

    border-radius:8px;

    font-weight:600;

}


/*====================================================
FOOTER CARD
====================================================*/

.cw-cart-footer{

    margin-top:15px;

    padding-top:18px;

    border-top:1px solid #ECECEC;

}

.cw-label{

    display:block;

    margin-bottom:8px;

    font-size:13px;

    font-weight:700;

    color:#888;

    text-transform:uppercase;

    letter-spacing:.05em;

}

.cw-value{

    font-size:20px;

    font-weight:700;

}

.cw-total .cw-value{

    color:#ED2226;

    font-size:24px;

    font-weight:700;

}

/*====================================================
QUANTITA'
====================================================*/

.cw-qty .quantity{

    margin:0;

}


/*====================================================
COUPON
====================================================*/

.cw-actions{

    margin-top:40px;

    display:flex;

    justify-content:space-between;

    align-items:flex-end;

    gap:30px;

}

.cw-coupon{
    max-width:450px;
    width:100%;
    box-sizing:border-box;
    position:relative;
    overflow:hidden;
    padding:26px 28px 28px 34px;
    border:1px solid #e3e3e3;
    border-radius:12px;
    background:#fff;
    box-shadow:0 10px 28px rgba(0,0,0,.06);
}

.cw-coupon::before{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    width:6px;
    background:#ed2226;
    content:"";
}

.cw-coupon-title{
    display:block;
    margin:0 0 6px;
    color:#1d1d1d;
    font:700 20px/1.2 'Hind', sans-serif;
}

.cw-coupon-label{
    display:block;
    margin-bottom:14px;
    color:#5d5d5d;
    font:500 15px/1.45 'Hind', sans-serif;
}

.cw-coupon input{
    width:100%;
    box-sizing:border-box;
    min-height:48px;
    margin:0 0 12px;
    padding:11px 14px;
    border:1px solid #d9d9d9;
    border-radius:6px;
    color:#1d1d1d;
    font:500 15px/1.2 'Hind', sans-serif;
    box-shadow:none;
}

.cw-coupon input:focus{
    border-color:#ed2226;
    outline:2px solid rgba(237,34,38,.16);
    outline-offset:1px;
}

.cw-coupon .button{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:46px;
    margin:0 !important;
    padding:11px 18px !important;
    border:0 !important;
    border-radius:6px;
    background:#ed2226 !important;
    color:#fff !important;
    font:700 13px/1.2 'Hind', sans-serif !important;
    letter-spacing:.2px;
    text-align:center;
    text-transform:uppercase;
    box-shadow:none !important;
    transition:background .2s ease, transform .2s ease;
}

.cw-coupon .button:hover,
.cw-coupon .button:focus{
    background:#1d1d1d !important;
    color:#fff !important;
    transform:translateY(-1px);
}

@media (max-width:767px){
    .cw-coupon{
        padding:22px 20px 22px 28px;
    }
}

.cw-breakdown{

    display:flex;

    flex-direction:column;

    gap:10px;

}

.cw-breakdown-row,

.cw-breakdown-total{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.cw-breakdown-row{

    font-size:15px;

    color:#666;

}

.cw-breakdown-total{

    margin-top:8px;

    padding-top:10px;

    border-top:1px solid #ECECEC;

    font-size:22px;

    font-weight:700;

    color:#ED2226;

}

.cart-stock-message{

    margin-top:15px;

    padding:12px 14px;

    border-radius:8px;

    display:flex;

    align-items:center;

    gap:10px;

    font-size:14px;

    line-height:1.4;

}

.cart-stock-message.success{

    background:#EEF8F1;

    color:#2E7D32;

}

.cart-stock-message.warning{

    background:#FFF8E8;

    color:#A66A00;

}

.cart-stock-message.error{

    background:#FDECEC;

    color:#C62828;

}

.cart-stock-message i{

    font-size:16px;

    flex-shrink:0;

}

.ca-category-menu{
    width:100%;
    font-family:'Hind',sans-serif;
}

.ca-category-menu ul{
    margin:0;
    padding:0;
    list-style:none;

    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:40px;
    row-gap:2px;
}

.ca-category-menu li{
    margin:0;
    padding:0;
}

.ca-category-menu a{
    display:flex;
    align-items:center;
    padding:10px 0;
    font-family:'Hind',sans-serif !important;
    font-size:15px !important;
    font-weight:600 !important;
    color:#444444 !important;
    text-decoration:none !important;
    transition:all .25s ease;
    text-transform: uppercase !important;
}

.ca-category-menu a:hover{
    color:#ED2226 !important;
    padding-left:8px;
}



@media (max-width:768px){

    .ca-category-menu ul{
        grid-template-columns:1fr;
        column-gap:0;
    }

}


.woocommerce ul.products li.product .button {
    display: inline-block;
    margin-top: 1em;
    margin: 20px 18% !important;
}

/* L'ordine del foglio richiede questo override finale per il mega-menu mobile. */
@media (max-width: 767px){
    #menu-item-62 .mega-menu{
        position:static;
        display:block;
        width:100%;
        max-width:none;
        padding:0 18px 12px;
        box-sizing:border-box;
        border:0;
        box-shadow:none;
        background:#f7f7f7;
    }

    #menu-item-62 .mega-menu-grid{
        grid-template-columns:1fr;
        gap:0;
    }

    /* Tabella caratteristiche: ogni riga diventa un blocco leggibile. */
    .tech-table,
    .tech-table tbody,
    .tech-table tr,
    .tech-table td{
        display:block;
        width:100%;
        box-sizing:border-box;
    }

    .tech-table tr{
        padding:14px 16px;
        border-bottom:1px solid #e7e7e7;
    }

    .tech-table td{
        padding:0 !important;
        border:0 !important;
        overflow-wrap:anywhere;
    }

    .tech-table td:first-child{
        margin-bottom:4px;
        color:#222;
        font-size:14px;
    }

    .tech-table td:last-child{
        color:#555;
        font-size:16px;
        line-height:1.45;
    }
}

/* Le sottocategorie del mega-menu restano visivamente secondarie. */
#menu-item-62 .mega-column a{
    font-size:14px !important;
    font-weight:500 !important;
}

@media (max-width: 767px){
    #menu-item-62 .mega-column a{
        padding:8px 0;
        font-size:13px !important;
        font-weight:500 !important;
    }

    /* Le tab non devono affiancare il pannello contenuto su schermi piccoli. */
    .product-tabs .tabs{
        display:block;
    }

    .product-tabs .tab-nav{
        display:grid;
        grid-template-columns:1fr;
        gap:8px;
        width:100%;
        margin:0 0 14px !important;
        padding:0;
        list-style:none;
    }

    .product-tabs .tab-nav li{
        width:100%;
        min-height:48px;
        padding:12px 14px;
        box-sizing:border-box;
        font-size:15px;
        line-height:1.25;
    }

    .product-tabs .tab-content{
        width:100%;
    }

    .shipping-returns-grid{
        flex-direction:column;
        gap:20px;
        padding:16px;
    }
}

/* Pagina categoria: maggiore respiro tra l'intestazione e i filtri. */
.shop-section{
    padding-top:110px;
}

@media (max-width: 767px){
    .shop-hero{
        height:300px;
        min-height:300px;
        padding:0;
        background-color:#E2E2E2;
        background-position:right center;
        background-repeat:no-repeat;
        background-size:auto 100%;
    }

    .shop-hero__content{
        max-width:68%;
        margin-left:0;
        padding:28px 20px;
        box-sizing:border-box;
    }

    .shop-hero__description{
        margin-top:16px;
        font-size:14px;
        line-height:1.5;
    }

    .shop-section{
        padding:68px 16px 48px;
    }
}

@media (max-width: 767px){
    .shop-hero{
        background-image:none !important;
        background-color:#E2E2E2 !important;
        height:auto;
        min-height:0;
        padding:48px 0;
    }

    .shop-hero__content{
        max-width:none;
    }

    .shop-section{
        padding:0 16px 48px;
    }
}

/* =====================================================
   CARRELLO: RIEPILOGO E CHECKOUT
   ===================================================== */
.cw-cart-footer{
    display:grid;
    grid-template-columns:minmax(100px, .7fr) minmax(115px, .8fr) minmax(220px, 1.5fr);
    gap:24px;
    align-items:start;
}

.cw-cart-summary .cart-collaterals,
.cw-cart-summary .cart_totals{
    float:none !important;
    width:100% !important;
}

.cw-cart-summary .cart_totals{
    box-sizing:border-box;
    padding:28px;
    border:1px solid #ececec;
    border-radius:12px;
    background:#fff;
    box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.cw-cart-summary .cart_totals > h2{
    margin:0 0 20px;
    color:#222;
    font:700 24px/1.2 'Hind', sans-serif;
}

.cw-cart-summary .cart_totals table{
    width:100%;
    margin:0;
    border-collapse:collapse;
}

.cw-cart-summary .cart_totals th,
.cw-cart-summary .cart_totals td{
    padding:13px 0;
    border-color:#ececec;
    font:500 15px 'Hind', sans-serif;
}

.cw-cart-summary .cart_totals td{
    text-align:right;
}

.cw-cart-summary .cart_totals .order-total th,
.cw-cart-summary .cart_totals .order-total td{
    color:#222;
    font-size:18px;
    font-weight:700;
}

.woocommerce .cw-cart-summary .wc-proceed-to-checkout{
    margin:24px 0 0;
    padding:0;
}

.ca-cart-margin-notice{
    display:flex;
    align-items:flex-start;
    gap:10px;
    margin:0 0 14px;
    padding:12px 14px;
    border:1px solid #f1d7d8;
    border-radius:8px;
    background:#fff8f8;
    color:#5b3b3d;
    font:500 13px/1.45 'Hind', sans-serif;
    text-align:left;
}

.ca-cart-margin-notice__icon{
    display:inline-flex;
    flex:0 0 18px;
    align-items:center;
    justify-content:center;
    width:18px;
    height:18px;
    margin-top:1px;
    border-radius:50%;
    background:#ed2226;
    color:#fff;
    font:700 12px/1 Arial, sans-serif;
}

/* Sovrascrive lo stile WooCommerce originale del bottone checkout. */
.woocommerce .cw-cart-summary a.checkout-button,
.woocommerce-page .cw-cart-summary a.checkout-button,
.cw-cart-summary .wc-proceed-to-checkout a.checkout-button{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:52px;
    box-sizing:border-box;
    margin:0 !important;
    padding:14px 20px !important;
    border:0 !important;
    border-radius:8px !important;
    background:#ed2226 !important;
    color:#fff !important;
    font:700 14px/1.2 'Hind', sans-serif !important;
    letter-spacing:.2px;
    text-align:center;
    text-decoration:none;
    text-transform:uppercase;
    transition:background .2s ease, transform .2s ease;
}

.woocommerce .cw-cart-summary a.checkout-button:hover,
.woocommerce-page .cw-cart-summary a.checkout-button:hover,
.cw-cart-summary .wc-proceed-to-checkout a.checkout-button:hover{
    background:#171717 !important;
    color:#fff !important;
    transform:translateY(-1px);
}

.woocommerce .cw-cart-summary a.checkout-button.disabled,
.woocommerce .cw-cart-summary a.checkout-button[aria-disabled="true"]{
    background:#bcbcbc !important;
    color:#fff !important;
    cursor:not-allowed;
    opacity:.75;
    transform:none;
}

@media (max-width: 767px){
    .cw-cart-layout{
        margin:24px 0 40px;
    }

    .cw-cart-item{
        padding:18px;
        border-radius:10px;
    }

    .cw-cart-footer{
        grid-template-columns:1fr 1fr;
        gap:18px 14px;
    }

    .cw-total{
        grid-column:1 / -1;
        padding-top:16px;
        border-top:1px solid #ececec;
    }

    .cw-price .cw-value,
    .cw-qty .cw-value{
        font-size:18px;
    }

    .cw-qty .quantity{
        width:100%;
        min-width:0;
    }

    .cw-actions .button,
    .cw-coupon .button{
        width:100%;
        min-height:46px;
    }

    .cw-cart-summary .cart_totals{
        padding:22px 18px;
        border-radius:10px;
    }

    .cw-cart-summary .cart_totals > h2{
        font-size:22px;
    }

    .woocommerce .cw-cart-summary a.checkout-button,
    .woocommerce-page .cw-cart-summary a.checkout-button,
    .cw-cart-summary .wc-proceed-to-checkout a.checkout-button{
        min-height:54px;
        font-size:14px !important;
    }
}

/* Layout carrello mobile: nessuna colonna o sovrapposizione. */
@media (max-width: 767px){
    form.woocommerce-cart-form .cw-cart-layout{
        display:flex !important;
        flex-direction:column !important;
        gap:24px !important;
        width:100%;
        min-width:0;
        margin:24px 0 40px !important;
    }

    form.woocommerce-cart-form .cw-cart-items{
        order:1;
        width:100%;
        min-width:0;
    }

    form.woocommerce-cart-form .cw-cart-summary{
        order:2;
        position:static !important;
        width:100% !important;
        min-width:0;
        margin:0;
    }

    form.woocommerce-cart-form .cw-cart-item{
        width:100%;
        min-width:0;
        box-sizing:border-box;
    }

    form.woocommerce-cart-form .cw-main{
        display:grid;
        grid-template-columns:100px minmax(0, 1fr);
        align-items:start;
        gap:16px;
        width:100%;
        min-width:0;
        padding-right:30px;
        box-sizing:border-box;
    }

    form.woocommerce-cart-form .cw-image{
        width:100%;
        min-width:0;
    }

    form.woocommerce-cart-form .cw-info{
        width:auto;
        min-width:0;
    }

    form.woocommerce-cart-form .cw-title{
        margin:0 0 8px;
        font-size:18px;
        line-height:1.3;
        overflow-wrap:break-word;
    }

    form.woocommerce-cart-form .cw-sku{
        margin-bottom:10px;
        font-size:14px;
        overflow-wrap:anywhere;
    }

    form.woocommerce-cart-form .cart-stock-message{
        margin-top:12px;
        padding:10px 12px;
        font-size:13px;
    }

    form.woocommerce-cart-form .cw-cart-footer{
        width:100%;
        min-width:0;
        box-sizing:border-box;
    }
}

@media (max-width: 420px){
    form.woocommerce-cart-form .cw-main{
        grid-template-columns:84px minmax(0, 1fr);
        gap:12px;
    }

    form.woocommerce-cart-form .cw-title{
        font-size:16px;
    }
}

/* =====================================================
   CHECKOUT: CTA EFFETTUA ORDINE
   ===================================================== */
.woocommerce-checkout #payment #place_order,
.woocommerce-page.woocommerce-checkout #payment #place_order,
form.checkout #place_order{
    display:flex !important;
    align-items:center;
    justify-content:center;
    float:none !important;
    width:100% !important;
    min-height:54px;
    box-sizing:border-box;
    margin:22px 0 0 !important;
    padding:15px 20px !important;
    border:0 !important;
    border-radius:8px !important;
    background:#ed2226 !important;
    color:#fff !important;
    font:700 14px/1.2 'Hind', sans-serif !important;
    letter-spacing:.2px;
    text-align:center;
    text-transform:uppercase;
    text-shadow:none !important;
    box-shadow:none !important;
    transition:background .2s ease, transform .2s ease;
}

.woocommerce-checkout #payment #place_order:hover,
.woocommerce-page.woocommerce-checkout #payment #place_order:hover,
form.checkout #place_order:hover{
    background:#171717 !important;
    color:#fff !important;
    transform:translateY(-1px);
}

/* Checkbox obbligatorio termini e privacy, prima della CTA di pagamento. */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row.validate-required{
    margin:18px 0 20px;
    padding:14px 16px;
    border:1px solid #e5e5e5;
    border-radius:8px;
    background:#fafafa;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox{
    display:flex !important;
    align-items:flex-start;
    gap:11px;
    margin:0 !important;
    color:#343434;
    cursor:pointer;
    font:500 14px/1.5 'Hind', sans-serif;
    text-align:left;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper #terms{
    display:block !important;
    position:static !important;
    clip:auto !important;
    clip-path:none !important;
    width:19px !important;
    height:19px !important;
    min-width:19px;
    margin:2px 0 0 !important;
    padding:0 !important;
    overflow:visible !important;
    opacity:1 !important;
    appearance:auto !important;
    accent-color:#ed2226;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper #terms:focus-visible{
    outline:2px solid #ed2226;
    outline-offset:2px;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-checkbox-text a{
    color:#ed2226;
    font-weight:700;
    text-decoration:underline;
    text-underline-offset:2px;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-checkbox-text a:hover{
    color:#1d1d1d;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-invalid{
    border-color:#ed2226;
}

/* Checkout Block WooCommerce: consenso nativo obbligatorio prima della CTA. */
.woocommerce-checkout .wc-block-checkout__terms{
    margin:18px 0 20px !important;
    padding:14px 16px;
    border:1px solid #e5e5e5;
    border-radius:8px;
    background:#fafafa;
}

.woocommerce-checkout .wc-block-checkout__terms .wc-block-components-checkbox{
    align-items:flex-start;
    margin:0;
}

.woocommerce-checkout .wc-block-checkout__terms .wc-block-components-checkbox__label{
    color:#343434;
    font:500 14px/1.5 'Hind', sans-serif;
    text-align:left;
}

.woocommerce-checkout .wc-block-checkout__terms .wc-block-components-checkbox__label a{
    color:#ed2226;
    font-weight:700;
    text-decoration:underline;
    text-underline-offset:2px;
}

.woocommerce-checkout .wc-block-checkout__terms .wc-block-components-checkbox__label a:hover{
    color:#1d1d1d;
}

.woocommerce-checkout .wc-block-checkout__terms .wc-block-components-validation-error{
    margin:10px 0 0;
}

.woocommerce-checkout #payment #place_order:disabled,
.woocommerce-checkout #payment #place_order.disabled,
.woocommerce-checkout #payment #place_order[aria-disabled="true"]{
    background:#bcbcbc !important;
    color:#fff !important;
    cursor:not-allowed;
    opacity:.75;
    transform:none;
}

@media (max-width: 767px){
    .woocommerce-checkout #payment #place_order,
    .woocommerce-page.woocommerce-checkout #payment #place_order,
    form.checkout #place_order{
        min-height:56px;
        margin-top:18px !important;
        font-size:14px !important;
    }
}

/* =====================================================
   AREA CLIENTE / MIO ACCOUNT
   ===================================================== */
body.woocommerce-account .woocommerce{
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start;
    gap:32px;
    width:min(1180px, calc(100% - 40px));
    margin:56px auto 72px;
    font-family:'Hind', sans-serif;
}

body.woocommerce-account .woocommerce-notices-wrapper{
    flex:0 0 100%;
}

body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content{
    float:none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation{
    flex:0 0 260px;
    width:260px;
    padding:12px;
    border:1px solid #ececec;
    border-radius:14px;
    background:#fff;
    box-shadow:0 10px 30px rgba(0,0,0,.05);
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    margin:0;
    padding:0;
    list-style:none;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li{
    margin:0;
    padding:0;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a{
    display:flex;
    align-items:center;
    min-height:46px;
    padding:10px 14px;
    border-radius:8px;
    color:#333;
    font-size:15px;
    font-weight:600;
    line-height:1.25;
    text-decoration:none;
    transition:background .2s ease, color .2s ease, transform .2s ease;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
    background:#fff0f0;
    color:#ed2226;
    transform:translateX(3px);
}

body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{
    background:#ed2226;
    color:#fff;
    box-shadow:0 6px 15px rgba(237,34,38,.2);
}

body.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout{
    margin-top:8px;
    padding-top:8px;
    border-top:1px solid #ececec;
}

body.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a{
    color:#a61b1b;
}

body.woocommerce-account .woocommerce-MyAccount-content{
    flex:1 1 0;
    min-width:0;
    width:auto;
    padding:34px;
    border:1px solid #ececec;
    border-radius:14px;
    background:#fff;
    color:#444;
    font-size:16px;
    line-height:1.65;
    box-shadow:0 10px 30px rgba(0,0,0,.05);
}

body.woocommerce-account .woocommerce-MyAccount-content > :first-child{
    margin-top:0;
}

body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3{
    margin:0 0 18px;
    color:#1d1d1d;
    font-family:'Hind', sans-serif;
    font-weight:700;
    line-height:1.2;
}

body.woocommerce-account .woocommerce-MyAccount-content h2{font-size:28px;}
body.woocommerce-account .woocommerce-MyAccount-content h3{font-size:21px;}

body.woocommerce-account .woocommerce-MyAccount-content a:not(.button){
    color:#ed2226;
    font-weight:600;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button,
body.woocommerce-account .woocommerce-MyAccount-content .button,
body.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
body.woocommerce-account .woocommerce-MyAccount-content input[type="submit"]{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:12px 20px !important;
    border:0 !important;
    border-radius:8px !important;
    background:#ed2226 !important;
    color:#fff !important;
    font:700 14px/1.2 'Hind', sans-serif !important;
    text-decoration:none !important;
    text-transform:uppercase;
    box-shadow:none !important;
    transition:background .2s ease, transform .2s ease;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button:hover,
body.woocommerce-account .woocommerce-MyAccount-content .button:hover,
body.woocommerce-account .woocommerce-MyAccount-content button[type="submit"]:hover,
body.woocommerce-account .woocommerce-MyAccount-content input[type="submit"]:hover{
    background:#171717 !important;
    color:#fff !important;
    transform:translateY(-1px);
}

body.woocommerce-account .woocommerce-MyAccount-content .form-row{margin:0 0 18px;}

body.woocommerce-account .woocommerce-MyAccount-content label{
    display:block;
    margin:0 0 7px;
    color:#333;
    font-size:14px;
    font-weight:600;
}

body.woocommerce-account .woocommerce-MyAccount-content input:not([type="submit"]),
body.woocommerce-account .woocommerce-MyAccount-content select,
body.woocommerce-account .woocommerce-MyAccount-content textarea{
    width:100%;
    min-height:46px;
    padding:11px 13px;
    border:1px solid #dcdcdc;
    border-radius:8px;
    background:#fff;
    color:#222;
    font:400 16px 'Hind', sans-serif;
    outline:0;
    transition:border-color .2s ease, box-shadow .2s ease;
}

body.woocommerce-account .woocommerce-MyAccount-content textarea{
    min-height:120px;
    resize:vertical;
}

body.woocommerce-account .woocommerce-MyAccount-content input:focus,
body.woocommerce-account .woocommerce-MyAccount-content select:focus,
body.woocommerce-account .woocommerce-MyAccount-content textarea:focus{
    border-color:#ed2226;
    box-shadow:0 0 0 3px rgba(237,34,38,.12);
}

body.woocommerce-account .woocommerce-MyAccount-content table{
    width:100%;
    border-collapse:collapse;
    font-size:15px;
}

body.woocommerce-account .woocommerce-MyAccount-content table th{
    padding:12px 10px;
    border-bottom:2px solid #ed2226;
    color:#333;
    font-weight:700;
    text-align:left;
}

body.woocommerce-account .woocommerce-MyAccount-content table td{
    padding:14px 10px;
    border-bottom:1px solid #ececec;
    vertical-align:middle;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions .button{
    min-height:36px;
    padding:8px 12px !important;
    font-size:12px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address{
    min-height:180px;
    padding:22px;
    border:1px solid #ececec;
    border-radius:10px;
    background:#fafafa;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title{margin-bottom:14px;}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a{font-size:14px;}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message{
    margin:0 0 20px;
    border-top-color:#ed2226;
    background:#fff5f5;
    color:#333;
}

@media (max-width: 767px){
    body.woocommerce-account .woocommerce{
        display:block;
        width:calc(100% - 32px);
        margin:30px auto 48px;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation{
        width:100%;
        margin:0 0 20px;
        padding:8px;
        box-sizing:border-box;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation ul{
        display:grid;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:6px;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation li{min-width:0;}

    body.woocommerce-account .woocommerce-MyAccount-navigation a{
        justify-content:center;
        min-height:42px;
        padding:8px 10px;
        font-size:13px;
        text-align:center;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{transform:none;}

    body.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout{
        grid-column:1 / -1;
        margin-top:0;
        padding-top:6px;
    }

    body.woocommerce-account .woocommerce-MyAccount-content{
        width:100%;
        padding:24px 18px;
        box-sizing:border-box;
        border-radius:10px;
        font-size:15px;
    }

    body.woocommerce-account .woocommerce-MyAccount-content h2{font-size:24px;}
    body.woocommerce-account .woocommerce-MyAccount-content h3{font-size:19px;}

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{
        display:grid;
        gap:14px;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address{
        min-height:0;
        padding:18px;
    }

    body.woocommerce-account .woocommerce-MyAccount-content table{
        display:block;
        overflow-x:auto;
        white-space:nowrap;
        -webkit-overflow-scrolling:touch;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button,
    body.woocommerce-account .woocommerce-MyAccount-content .button,
    body.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
    body.woocommerce-account .woocommerce-MyAccount-content input[type="submit"]{
        width:100%;
    }
}

/* =====================================
   RECUPERO PASSWORD FRONT-END
   ===================================== */
.ca-password-reset-overlay,
.ca-password-reset-overlay *{
    box-sizing:border-box;
}

.ca-password-reset-overlay{
    position:fixed;
    inset:0;
    z-index:100100;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:20px;
    background:rgba(16,18,22,.72);
    backdrop-filter:blur(5px);
}

.ca-password-reset-overlay[hidden]{
    display:none !important;
}

.ca-password-reset-modal{
    position:relative;
    width:min(100%,440px);
    max-height:calc(100vh - 40px);
    overflow:auto;
    padding:34px;
    border-radius:16px;
    background:#fff;
    box-shadow:0 24px 64px rgba(0,0,0,.25);
    color:#222;
    font-family:'Hind',sans-serif;
}

.ca-password-reset-close{
    position:absolute;
    top:14px;
    right:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    padding:0;
    border:0;
    border-radius:50%;
    background:#f5f5f5;
    color:#555;
    font:400 28px/1 Arial,sans-serif;
    cursor:pointer;
    transition:background .2s,color .2s;
}

.ca-password-reset-close:hover{
    background:#ed2226;
    color:#fff;
}

.ca-password-reset-kicker{
    margin:0 42px 10px 0;
    color:#ed2226;
    font-size:12px;
    font-weight:700;
    letter-spacing:.7px;
    line-height:1.3;
    text-transform:uppercase;
}

.ca-password-reset-title{
    margin:0;
    color:#222;
    font-size:26px;
    font-weight:700;
    line-height:1.2;
}

.ca-password-reset-intro,
.ca-password-reset-confirmation > p:not(.ca-password-reset-kicker),
.ca-password-reset-success > p:not(.ca-password-reset-kicker){
    margin:14px 0 24px;
    color:#555;
    font-size:16px;
    line-height:1.55;
}

.ca-password-reset-form{
    display:flex;
    flex-direction:column;
    gap:11px;
}

.ca-password-reset-form label{
    color:#333;
    font-size:14px;
    font-weight:600;
}

.ca-password-reset-form input{
    width:100%;
    min-height:48px;
    padding:12px 14px;
    border:1px solid #ddd;
    border-radius:8px;
    background:#fff;
    color:#222;
    font:400 15px 'Hind',sans-serif;
    outline:none;
    transition:border-color .2s,box-shadow .2s;
}

.ca-password-reset-form input:focus{
    border-color:#ed2226;
    box-shadow:0 0 0 3px rgba(237,34,38,.12);
}

.ca-password-reset-form button,
.ca-password-reset-primary{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:48px;
    margin-top:7px;
    padding:12px 18px;
    border:0;
    border-radius:8px;
    background:#ed2226;
    color:#fff;
    font:700 14px 'Hind',sans-serif;
    letter-spacing:.2px;
    text-align:center;
    text-decoration:none;
    text-transform:uppercase;
    cursor:pointer;
    transition:background .2s;
}

.ca-password-reset-form button:hover,
.ca-password-reset-primary:hover{
    background:#111;
    color:#fff;
}

.ca-password-reset-form button:disabled{
    cursor:wait;
    opacity:.7;
}

.ca-password-reset-message{
    min-height:19px;
    margin:0;
    color:#555;
    font-size:13px;
    line-height:1.45;
}

.ca-password-reset-message.is-error{color:#b42318;}
.ca-password-reset-message.is-success{color:#17733b;}

.ca-password-reset-confirmation,
.ca-password-reset-success{
    text-align:center;
}

.ca-password-reset-confirmation .ca-password-reset-kicker,
.ca-password-reset-success .ca-password-reset-kicker{
    margin-right:0;
}

.ca-password-reset-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:64px;
    height:64px;
    margin:0 auto 20px;
    border-radius:50%;
    background:#fff3f3;
    color:#ed2226;
    font:400 30px/1 Arial,sans-serif;
}

.ca-password-reset-icon--success{
    background:#eef9f1;
    color:#17733b;
    font-weight:700;
}

@media (max-width: 767px){
    .ca-password-reset-overlay{padding:16px;}

    .ca-password-reset-modal{
        width:calc(100% - 32px);
        max-height:calc(100vh - 32px);
        padding:28px 22px;
    }

    .ca-password-reset-title{font-size:23px;}
    .ca-password-reset-intro,
    .ca-password-reset-confirmation > p:not(.ca-password-reset-kicker),
    .ca-password-reset-success > p:not(.ca-password-reset-kicker){font-size:15px;}
}

/* =====================================================
   SHOP E CATEGORIE — CONTENUTI DOPO IL FILTRO
   ===================================================== */

.shop-request-cta,
.shop-request-cta *{
    box-sizing:border-box;
}

.shop-request-cta{
    position:relative;
    isolation:isolate;
    padding:0 20px 60px;
    overflow:hidden;
    background:
        linear-gradient(rgba(15,15,17,.75),rgba(15,15,17,.75)),
        url("https://www.clickautoricambi.com/wp-content/uploads/2026/10/Vano-motore-in-chiaroscuro-cinematico.png") center center / cover no-repeat;
    color:#fff;
}

.shop-request-cta__inner{
    position:relative;
    z-index:1;
    width:100%;
    max-width:1200px;
    margin:0 auto;
}

.shop-request-cta__content{
    width:60%;
    padding:60px 80px 0;
}

.shop-request-cta__eyebrow,
.shop-bottom-cta__eyebrow{
    margin:0 0 8px;
    color:#ed2226;
    font-family:"Hind",sans-serif;
    font-size:20px;
    font-weight:600;
    letter-spacing:.02em;
    line-height:1.25;
    text-transform:uppercase;
}

.shop-request-cta h2{
    margin:0;
    color:#fff;
    font-family:"Hind",sans-serif;
    font-size:35px;
    font-weight:600;
    line-height:1.16;
}

.shop-request-cta__headline{
    margin:-6px 0 16px;
    color:#ed2226;
    font-family:"Hind",sans-serif;
    font-size:35px;
    font-weight:600;
    line-height:1.16;
}

.shop-request-cta__copy{
    color:#fff;
    font-family:"Hind",sans-serif;
    font-size:15px;
    font-weight:500;
    line-height:1.6;
}

.shop-request-cta__copy p{
    margin:0 0 12px;
}

.shop-request-cta__button,
.shop-bottom-cta--compatibility .shop-bottom-cta__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:48px;
    margin-top:6px;
    padding:14px 22px;
    border-radius:5px;
    background:#ed2226;
    color:#fff;
    font-family:"Exo 2","Hind",sans-serif;
    font-size:14px;
    font-weight:700;
    line-height:1;
    text-align:center;
    text-decoration:none;
    text-transform:uppercase;
    transition:background .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease;
}

.shop-request-cta__button:hover,
.shop-request-cta__button:focus,
.shop-bottom-cta--compatibility .shop-bottom-cta__button:hover,
.shop-bottom-cta--compatibility .shop-bottom-cta__button:focus{
    background:#fff;
    color:#1d1d1d;
    transform:translateY(-2px);
    box-shadow:0 10px 24px rgba(0,0,0,.2);
}

.shop-request-cta__features{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    width:75%;
    margin:20px 0 0 80px;
    padding:0;
    list-style:none;
}

.shop-request-cta__features li{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:50px;
    padding:0 24px 0 0;
    border-right:1px solid rgba(255,255,255,.7);
    color:#fff;
}

.shop-request-cta__features li + li{
    padding-left:24px;
}

.shop-request-cta__features li:last-child{
    border-right:0;
}

.shop-request-cta__features > li > i{
    flex:0 0 auto;
    color:#ed2226;
    font-size:31px;
}

.shop-request-cta__features span{
    display:flex;
    flex-direction:column;
    gap:2px;
}

.shop-request-cta__features strong,
.shop-request-cta__features small{
    font-family:"Hind",sans-serif;
    line-height:1.3;
}

.shop-request-cta__features strong{
    color:#fff;
    font-size:15px;
    font-weight:700;
}

.shop-request-cta__features small{
    color:#fff;
    font-size:14px;
    font-weight:400;
}

/* La CTA di compatibilità segue la ricerca e resta distinta dalle card. */
.shop-bottom-cta--compatibility{
    padding:88px 20px;
    background:#f4f4f4;
}

.shop-bottom-cta--compatibility .shop-bottom-cta__inner{
    position:relative;
    max-width:1000px;
    padding:54px 68px;
    overflow:hidden;
    border:1px solid #e3e3e3;
    border-radius:16px;
    background:#fff;
    box-shadow:0 16px 42px rgba(0,0,0,.08);
}

.shop-bottom-cta--compatibility .shop-bottom-cta__inner::before{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    width:7px;
    background:#ed2226;
    content:"";
}

.shop-bottom-cta--compatibility .shop-bottom-cta__eyebrow{
    margin-bottom:10px;
    font-size:14px;
}

.shop-bottom-cta--compatibility .shop-bottom-cta__inner h2{
    max-width:760px;
    margin:0 auto 18px;
    color:#1d1d1d;
    font-size:38px;
    line-height:1.2;
}

.shop-bottom-cta--compatibility .shop-bottom-cta__inner h2::after{
    margin:18px auto 0;
}

.shop-bottom-cta--compatibility .shop-bottom-cta__inner p:not(.shop-bottom-cta__eyebrow){
    max-width:680px;
    margin:0 auto 28px;
}

.shop-bottom-cta--compatibility .shop-bottom-cta__button{
    min-width:184px;
    margin-top:0;
    box-shadow:0 8px 18px rgba(237,34,38,.2);
}

.shop-bottom-cta--compatibility .shop-bottom-cta__button:hover,
.shop-bottom-cta--compatibility .shop-bottom-cta__button:focus{
    background:#1d1d1d;
    color:#fff;
    box-shadow:0 10px 24px rgba(0,0,0,.2);
}

/* Le card restano invariate, ma senza il fondale fotografico della sezione. */
.benefits-section.benefits-section--plain{
    padding:0 20px 90px;
    background:#fff;
}

/* I correlati della scheda prodotto restano tra ricerca e supporto pre-acquisto. */
.related-products.related-products--single{
    width:100%;
    max-width:1400px;
    margin:72px auto;
    padding:0 20px;
}

.related-products--single .related{
    margin:0;
}

@media (max-width: 991px){
    .shop-request-cta__content{
        width:72%;
        padding-left:48px;
        padding-right:48px;
    }

    .shop-request-cta__features{
        width:calc(100% - 96px);
        margin-left:48px;
    }

    .shop-request-cta__features li,
    .shop-request-cta__features li + li{
        padding-right:16px;
        padding-left:16px;
    }

    .shop-request-cta__features li:first-child{
        padding-left:0;
    }

    .benefits-section.benefits-section--plain{
        padding:0 20px 72px;
    }
}

@media (max-width: 767px){
    .shop-request-cta{
        padding:0 16px 48px;
        background-position:center center;
    }

    .shop-request-cta__content{
        width:100%;
        padding:48px 0 0;
    }

    .shop-request-cta__eyebrow{
        font-size:14px;
    }

    .shop-request-cta h2,
    .shop-request-cta__headline{
        font-size:30px;
    }

    .shop-request-cta__headline{
        margin-top:-4px;
    }

    .shop-request-cta__button{
        width:100%;
    }

    .shop-request-cta__features{
        grid-template-columns:1fr;
        width:100%;
        margin:30px 0 0;
        gap:0;
    }

    .shop-request-cta__features li,
    .shop-request-cta__features li + li,
    .shop-request-cta__features li:first-child{
        min-height:0;
        padding:16px 0;
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,.55);
    }

    .shop-request-cta__features li:last-child{
        padding-bottom:0;
        border-bottom:0;
    }

    .shop-bottom-cta--compatibility{
        padding:56px 16px;
    }

    .shop-bottom-cta--compatibility .shop-bottom-cta__inner{
        padding:38px 24px;
    }

    .shop-bottom-cta--compatibility .shop-bottom-cta__inner h2{
        font-size:29px;
    }

    .shop-bottom-cta--compatibility .shop-bottom-cta__button{
        width:100%;
    }

    .benefits-section.benefits-section--plain{
        padding:0 16px 56px;
    }

    .related-products.related-products--single{
        margin:56px auto;
        padding:0 16px;
    }
}

/* =====================================================
   SOVRASCRITTURE FINALI — SHOP, CATEGORIE E PRODOTTO
   Restano in fondo al foglio per prevalere sulle regole storiche.
   ===================================================== */
body.woocommerce .benefits-section.benefits-section--plain{
    background:#fff !important;
}

body.woocommerce .shop-bottom-cta.shop-bottom-cta--compatibility{
    background:#f4f4f4 !important;
}

body.single-product .related-products.related-products--single{
    width:100%;
    max-width:1400px;
    margin:72px auto;
    padding:0 20px;
}

/* Barra di ricerca dello shortcode [header_icons]: più ampia senza alterare gli altri popup. */
#searchOverlay .box{
    width:min(calc(100vw - 48px),760px);
    max-width:760px;
    box-sizing:border-box;
}

@media (max-width:767px){
    #searchOverlay .box{
        width:calc(100% - 32px);
        max-width:none;
    }
}
