/* Definizione dell'ordine di precedenza 
(dal meno importante al più importante) */
@layer theme_reset, parent_overrides, components, utilities, emergency;

/**
 * LAYER: THEME_RESET
 * Qui inseriamo reset specifici o variabili CSS globali.
 */
 
@layer theme_reset {
    /* Esempio: Colore personalizzato */
    :root {--child-primary-color: #e67e22;}
    body {font-family: 'Jost', sans-serif !important;}

/* Protezione esplicita per le icone: MAI cambiare il font alle Material */
    .material-icons {font-family: 'Material Icons' !important;}
}

/**
 * LAYER: PARENT_OVERRIDES
 * Qui andiamo a "correggere" o sovrascrivere le classi base di Hummingbird/Bootstrap 5.
 * Anche se il genitore usa selettori complessi, il tuo codice qui vincerà 
 * se posizionato correttamente nell'ordine dei layer.
 */
@layer parent_overrides {
  
.breadcrumb {
    text-transform: lowercase;
}

    
}/*END parent_overrides*/

/**
 * LAYER: COMPONENTS
 * Per i tuoi nuovi elementi grafici 
 (es. un banner personalizzato, un nuovo widget).
 * Segui la metodologia BEM.
 */
@layer components {
.custom-promo-banner {
    display: flex;
    padding: 20px;
    border-radius: 8px;
}
.custom-promo-banner__title {
    font-weight: bold;
}

/* Contenitore Unificato Brand + Categoria */
.product__meta-wrapper {
    background-color: #f8f9fa; /* Grigio fumo molto leggero */
    border: 1px solid #e9ecef; /* Bordo quasi impercettibile */
    border-radius: 4px; 
    padding: 0px 0px;
    margin: 0 0 12px 0;
    transition: background-color 0.3s ease;
    display: flex !important;
    flex-direction: column;
    height: 4.5rem;
    overflow: hidden;
    /*position:relative;*/
}
/* Effetto Hover sulla card per evidenziare il blocco */
.product-miniature:hover .product__meta-wrapper {
    background-color: #f1f3f5;
    border-color: #dee2e6;
}
/* Stile Marchio (Più marcato) */
.product__manufacturer {
    flex: 1;
    display: flex;
    align-items: center;    /* Centratura verticale */
    justify-content: center; /* Centratura orizzontale */
    border-bottom: 1px solid #e9ecef; /* Separatore interno sottile */
    border-top: 1px solid #e9ecef; /* Separatore interno sottile */
    text-align: center;
height: 50%;
}
.product__manufacturer a {
    font-weight: 450;
    font-size: 0.70rem;
    text-transform: uppercase;
    color: #888 !important;
    letter-spacing: 1px !important; /* Effetto Luxury */
    line-height: 1.1;
    width: 100%;
}
/* Stile Categoria (Più discreto) */
.product__category-default {
    flex: 1; /* Occupa il restante 50% */
    display: flex;
    align-items: center;    /* Centratura verticale */
    justify-content: center; /* Centratura orizzontale */
    text-align: center;
    border-bottom: 1px solid #e9ecef; /* Separatore interno sottile */
height: 50%;
}
.product__category-default a {
    font-size: 0.65rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.65px;
    color: #0056b3 !important; /* Blu per la categoria come da screenshot */
    width: 100%;
}
.product__meta-wrapper a {
    text-decoration: none !important;
    display: block;
}
    
/* Allineamento Titoli con Classe Specifica Hummingbird */
.product-miniature__title {
    display: -webkit-box;
    -webkit-line-clamp: 3; /* Blocca a massimo 3 righe */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;      
    /* Aggiunge i "..." alla fine della terza riga */
    
    /* Calcolo Altezza: 3 righe da 1.2rem + eventuale margine */
    min-height: 3.6rem;       
    line-height: 1.2rem;
    
    font-size: 0.80rem !important; 
    /* Dimensione tipica per leggibilità desktop/mobile */
    margin: 10px 0;
    text-align: center;
    word-break: break-word;
    color: #6c757d !important;
    font-weight: 500;
    
    border-bottom: 1px solid #e9ecef; /* Separatore interno sottile */    
} 
/* Rimuoviamo eventuali sottolineature dai link del titolo */
.product-miniature__infos_top a {
    text-decoration: none !important;
}
    
/* Allineamento Area Prezzi */
.product-miniature__prices {
    /* min-height: 60px; Spazio costante per prezzo e sconto */
    display: flex;
    justify-content:center; /* Spinge il prezzo verso il basso */
    align-items: center;
    margin-bottom: 1rem;
}
/* PREZZO SCONTATO (Il protagonista) */
.product-miniature__prices .product-miniature__price {
    font-size: 1.4rem; /* Più grande */
    font-weight: 600; /* Molto marcato */
    /* Rosso "Offerta" (o il tuo colore brand primario) */
    color: #d91b1b;   
    line-height: 1.2;
    display: block;
}
/* PREZZO ORIGINALE BARRATO (Il comprimario) */
.product-miniature__prices .product-miniature__discount-price .product-miniature__regular-price {
    font-size: 0.9rem;
    /* Grigio tenue per "spegnerlo" visivamente */
    color: #999;      
    text-decoration: line-through;
    font-weight: 400;
    margin-bottom: 2px;
}
/* Eventuale etichetta sconto accanto al prezzo (es. -18%) */
.product-miniature__prices .discount-percentage,
.product-miniature__prices .discount-amount {
    background-color: #d91b1b;
    color: #fff;
    padding: 2px 6px;
    font-size: 0.75rem;
    font-weight: 700;
    border-radius: 3px;
    margin-left: 5px;
    vertical-align: middle;
}
    
/* Allineamento Form Carrello */
    .product-miniature__infos__bottom form {
        min-height: 45px;
        justify-content: center;
    }
    
/* --- OTTIMIZZAZIONE MOBILE (sotto 576px) --- */
@media (max-width: 575.98px) {
    
    /* 1. Unificazione e alleggerimento blocco Brand/Categoria */
    .product__meta-wrapper {
        padding: 4px;
        margin: 0 0 10px 0;
        background-color: #f9f9f9;
        border: none;
        border-bottom: 1px solid #eee;
    } 

    /* 2. Titolo: Allineamento forzato a 4 righe per Mobile */
    .product-miniature__title {
        display: -webkit-box;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
        
        /* Altezza minima per pareggiare le card */
        min-height: 4.8rem; 
        line-height: 1.2rem;
        font-size: 0.9rem;
        margin-bottom: 12px;
    }

    /* 3. Prezzi: Spaziatura e separazione */
    .product-miniature__prices {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 40px; /* Forza l'allineamento orizzontale dei tasti carrello */
        margin-top: 5px;
    }

    /* 4. Prezzo Scontato (Rosso) */
    .product-miniature__prices span.product-miniature__price {
        font-size: 1.3rem;
        font-weight: 800;
        margin-bottom: 2px;
    }

    /* 5. Prezzo Barrato (Grigio) */
    .product-miniature__prices .product-miniature__discount-price span.product-miniature__regular-price {
        font-size: 0.85rem;
        color: #888;
        display: block;
    }
}

#facet_79553, .facet.accordion-item div[id^="facet_"] {
    max-height: 350px;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: thin;
    scrollbar-color: #ccc transparent;
}

}/* END LAYER */



/**
 * LAYER: EMERGENCY (L'ultima spiaggia)
 * Da usare raramente per forzare modifiche su moduli esterni ostici.
 */
@layer emergency {
    /* Il tuo codice qui vince su tutto il resto nel custom.css */
}
