/*
 * Custom code Tentazioni.
 * KINGMO MODS ~ all
 */

/* ============================================================
   MOBILE BAR — Tentazioni
   use_mobile_header=2: #mobile_bar è visibile a TUTTI i breakpoint.
   Le regole di sfondo e testo "DAL MENU" sono globali (nessun media
   query) così funzionano sia a 500px che a 1000px che a 1400px.
   ============================================================ */

/* Sfondo bianco con bordo bordeaux — su tutti i breakpoint */
#mobile_bar {
    background:    #ffffff !important;
    border-bottom: 3px solid #6B1A2B !important;
    box-shadow:    0 2px 6px rgba(107,26,43,0.10) !important;
}

/* Nasconde il testo "DAL MENU" / "MENU" — su tutti i breakpoint */
#mobile_bottom_menu_tri .mobile_bar_tri_text,
.menu_mobile_bar_tri .mobile_bar_tri_text,
.mobile_bar_item.with_text .mobile_bar_tri_text {
    display: none !important;
}

/* Regole visive limitate a schermi stretti/medi */
@media (max-width: 999px) {

    /* Logo dimensione */
    #mobile_bar .mobile_logo img,
    #mobile_bar .logo {
        max-height: 38px !important;
        width:      auto !important;
    }

    /* Icone mobile bar: colore bordeaux */
    #mobile_bar .mobile_bar_item,
    #mobile_bar .mobile_bar_item i,
    #mobile_bar .mobile_bar_tri i,
    #mobile_bar #mobile_bottom_menu_tri i,
    #mobile_bar_right i,
    #mobile_bar_right a {
        color: #6B1A2B !important;
    }

    /* Icona ricerca: colore bordeaux */
    #mobile_bar .search_mobile_bar_tri i,
    #mobile_bar .stsearchbar_builder i,
    #mobile_bar .search_widget_block i {
        color: #6B1A2B !important;
    }

    /* Hover icone */
    #mobile_bar .mobile_bar_item:hover i,
    #mobile_bar .mobile_bar_tri:hover i {
        color: #4E1120 !important;
    }

}

/* KINGMO MODS — ricerca inline tablet (500–991px) */

/* Di default nascosto (mobile < 500px e desktop > 991px) */
#mobile_search_inline {
    display: none !important;
}

/* Tablet 500–991px: mostra il form, nasconde l'icona lente */
@media (min-width: 500px) and (max-width: 991px) {

    #mobile_search_inline {
        display: flex !important;
        align-items: center;
        flex: 1;
        margin: 0 8px;
        background: #f5f5f5;
        border: 1px solid rgba(107,26,43,0.25);
        border-radius: 4px;
        overflow: hidden;
    }

    .mobile_search_inline_input {
        flex: 1;
        border: none;
        background: transparent;
        padding: 6px 10px;
        font-size: 14px;
        outline: none;
        color: #333;
    }

    .mobile_search_inline_btn {
        background: none;
        border: none;
        padding: 6px 10px;
        cursor: pointer;
        color: #6B1A2B !important;
        font-size: 16px;
        line-height: 1;
    }

    .mobile_search_inline_btn:hover {
        color: #4E1120 !important;
    }

    /* Nasconde l'icona lente (già nella barra centro) nel range tablet */
    #mobile_bar_center .search_mobile_bar_tri {
        display: none !important;
    }
}


/* Rende il pannello una colonna flex così il footer scende in fondo */
#side_search,
#side_stmobilemenu,
#side_mobile_nav {
    display: flex !important;
    flex-direction: column !important;
}

#side_search > *:not(.st-menu-footer),
#side_stmobilemenu > *:not(.st-menu-footer),
#side_mobile_nav > *:not(.st-menu-footer) {
    flex-shrink: 0;
}

.st-menu-footer {
    margin-top: auto;
    padding: 12px 16px;
    text-align: center;
    border-top: 1px solid rgba(107,26,43,0.15);
}

.btn_close_bottom {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 10px 28px;
    background-color: #6B1A2B !important;
    color: #ffffff !important;
    border-radius: 4px;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none !important;
    letter-spacing: 0.5px;
    transition: background-color 0.2s ease;
}

.btn_close_bottom i {
    color: #ffffff !important;
    font-size: 14px;
}

.btn_close_bottom:hover,
.btn_close_bottom:focus {
    background-color: #4E1120 !important;
    color: #ffffff !important;
}
/* /KINGMO MODS */


/* Normal links */
.sttab_2_2 .nav-tabs .nav-link,
.sttab_2_2 .nav-tabs .nav-link:link {
    color: #c03232;
    background-color: #fff;
}

.sttab_2_2 .nav-item .nav-link.active,
.sttab_2_2 .nav-item .nav-link.active:link,
.sttab_2_2 .nav-item .nav-link:hover {
    color: #660000;
    background-color: #c2ada7; /* add background-color to active links */
}

.right_more_info_block .nav-item.active .nav-link,
.right_more_info_block .nav-item .nav-link:active,
.right_more_info_block .nav-item .nav-link:focus,
.right_more_info_block .nav-item:hover .nav-link {
    color: #00B159;
}

.pro_extra_info {
    font-size: 12px;
}

.pro_extra_info .pro_extra_info_content {
    color: #663300;
	font-weight:bolder;
}

.desc_short_extra {
    font-size: 14px;
}


@media (min-width: 980px){
	.flex_child .product_name {font-size:10px;}
	.product-description-short .st_read_more_box {font-size: 18px;}
	.product_description_container .st_read_more_box {font-size: 15px;}
	.product-description-short {font-size: 14px;}
	.product-description {font-size: 14px;}
	.current-price .price{font-size: 23px !important; font-weight: bold;}
	.st_read_more_box h1{font-size:16px;}
	.st_read_more_box h2{font-size:14px;}
	.st_read_more_box h3{font-size:12px;}
}


.highlight-error {
    border: 2px solid #ff0000 !important;
    background-color: #fff0f0 !important;
    padding: 10px !important;
    border-radius: 5px !important;
    transition: all 0.3s ease;
}
.highlight-error .psgdpr_consent_message, 
.highlight-error .flex_child {
    color: #ff0000 !important;
    font-weight: bold;
}


/* ==========================================================
   FIX ALTEZZA CARD PRODOTTO — griglia categorie
   Il flexbox limita .product_list_item all'altezza della riga
   (calcolata sugli altri item), tagliando il contenuto che
   sporge (nome/brand sotto i bottoni sempre visibili).
   ========================================================== */
.product_list.grid .product_list_item {
    height: auto !important;
    align-self: flex-start !important;
}

/* ==========================================================
   TENTAZIONI - Bottoni prodotto sempre visibili
   + hover: bottone attivo bordeaux (#6B1A2B),
   gli altri bottoni diventano grigio chiaro (#c0c2c7)
   ========================================================== */

/* 1. Rende sempre visibile il blocco "aggiungi al carrello"
      che il tema mostra solo all'hover (classe display_when_hover) */
.js-product-miniature .act_box_cart.display_when_hover {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    max-height: none !important;
    pointer-events: auto !important;
}

/* 2. Rende sempre visibili i bottoni flyout sovrapposti all'immagine
      (hover_fly e' hidden di default, mostrato solo al mouseover) */
.js-product-miniature .pro_first_box .hover_fly {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
    bottom: 0 !important;
    pointer-events: auto !important;
}

/* 3. Quando il mouse e' sulla card: tutti i bottoni diventano grigio chiaro */
.js-product-miniature:hover .act_box_cart .btn,
.js-product-miniature:hover .act_box_cart .ajax_add_to_cart_button,
.js-product-miniature:hover .act_box_cart .btn-view-more {
    background-color: #c0c2c7 !important;
    border-color: #c0c2c7 !important;
    color: #ffffff !important;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

/* 4. Quando il mouse e' sulla card: bottoni flyout diventano grigio chiaro */
.js-product-miniature:hover .hover_fly .hover_fly_btn,
.js-product-miniature:hover .hover_fly .ajax_add_to_cart_button,
.js-product-miniature:hover .hover_fly a {
    background-color: #c0c2c7 !important;
    border-color: #c0c2c7 !important;
    color: #ffffff !important;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

/* 5. Icone nei bottoni flyout -> bianco quando la card e' hovered */
.js-product-miniature:hover .hover_fly .hover_fly_btn i,
.js-product-miniature:hover .hover_fly .hover_fly_btn span,
.js-product-miniature:hover .hover_fly a i,
.js-product-miniature:hover .hover_fly a span {
    color: #ffffff !important;
}

/* 6. Solo il bottone specifico su cui e' il mouse -> rosso bordeaux */
.js-product-miniature .act_box_cart .btn:hover,
.js-product-miniature .act_box_cart .ajax_add_to_cart_button:hover,
.js-product-miniature .act_box_cart .btn-view-more:hover {
    background-color: #6B1A2B !important;
    border-color: #6B1A2B !important;
    color: #ffffff !important;
}

.js-product-miniature .hover_fly .hover_fly_btn:hover,
.js-product-miniature .hover_fly .ajax_add_to_cart_button:hover,
.js-product-miniature .hover_fly a:hover {
    background-color: #6B1A2B !important;
    border-color: #6B1A2B !important;
    color: #ffffff !important;
}

.js-product-miniature .hover_fly .hover_fly_btn:hover i,
.js-product-miniature .hover_fly .hover_fly_btn:hover span,
.js-product-miniature .hover_fly a:hover i,
.js-product-miniature .hover_fly a:hover span {
    color: #ffffff !important;
}

/* ==========================================================
   HOMEPAGE SPACER - Distanza tra header trasparente e slider
   L'altezza è impostata interamente via JS (ResizeObserver su
   #st_header + fallback su DOMContentLoaded / load / resize).
   Il CSS non usa più px fissi per breakpoint: il JS si aggiorna
   automaticamente qualunque sia il numero di righe del menu.
   ========================================================== */
body#index #transparent_header_spacer {
    height: 0; /* il JS imposta l'altezza reale appena l'header è misurabile */
}

/* ==========================================================
   HEADER DESKTOP (> 991px) — layout 2 righe
   RIGA 1: logo (sx)            | menu (dx)
   RIGA 2: [search CENTRATA tra logo e icone, larghezza % responsive]
                                                            | icone (dx)
   ----------------------------------------------------------
   La search è in position:absolute centrata orizzontalmente
   in #header_primary_row (left:50% + translateX(-50%)).
   Le icone restano nel flow flex di #header_right_bottom (a destra).
   ========================================================== */
@media (min-width: 992px) {

    /* header_primary_row: punto di riferimento per la search assoluta */
    #header_primary_row {
        position: relative !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
    }

    /* Logo: colonna sinistra, larghezza auto */
    #header_left {
        flex: 0 0 auto !important;
        order: 1 !important;
        display: flex !important;
        align-items: center !important;
    }

    /* header_center: non usato */
    #header_center {
        display: none !important;
    }

    /* header_right: colonna destra, si espande, dispone le righe in colonna */
    #header_right {
        flex: 1 1 auto !important;
        order: 2 !important;
        display: flex !important;
        flex-direction: column !important;
    }

    /* RIGA 1 — Menu: allineato a destra */
    #header_right_top {
        flex: 0 0 auto !important;
        justify-content: flex-end !important;
    }

    /* RIGA 2 — solo icone (la search è in absolute, fuori dal flow)
       Uso uno spacer flex (::before) che cresce a riempire tutto lo
       spazio a sinistra: le icone vengono spinte a destra a prescindere
       da qualsiasi regola tema sui figli. */
    #header_right_bottom {
        flex: 1 1 auto !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-end !important;
        align-self: stretch !important;
        width: 100% !important;
        padding: 4px 0 6px 0 !important;
        gap: 8px !important;
        min-height: 44px !important;
    }

    /* Spacer flex: occupa tutto lo spazio disponibile a sinistra,
       costringendo le icone (e qualsiasi altro figlio non-search) a
       impacchettarsi sulla destra. */
    #header_right_bottom::before {
        content: "" !important;
        flex: 1 1 auto !important;
        display: block !important;
        order: -100 !important;
        min-width: 0 !important;
        height: 1px !important;
    }

    /* SEARCH WIDGET (SEARCH BAR): posizionata ASSOLUTA, centrata orizzontalmente
       rispetto all'intera #header_primary_row.
       USA vw (viewport width) invece di % perché la % sarebbe relativa
       al container Bootstrap (larghezza fissa), non al viewport.
       Con vw la barra cresce in modo CONTINUO all'aumentare dello schermo.
       Base (992px+): 62vw — cresce linearmente con breakpoint superiori. */
    #header_primary_row .search_widget_block,
    #header_primary_row .search_widget,
    #header_primary_row .search-widget,
    #header_primary_row #search_widget,
    #header_primary_row .stsearchbar_builder,
    #header_primary_row .stsearchbar_link {
        position: absolute !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        bottom: 7px !important;
        width: 55vw !important;
        max-width: 860px !important;
        min-width: 280px !important;
        margin: 0 !important;
        z-index: 5 !important;
    }

    /* Il form / input interno occupa tutta la larghezza del wrapper centrato */
    #header_primary_row #search_widget,
    #header_primary_row #search_widget form,
    #header_primary_row .search-widget form,
    #header_primary_row .search_widget_block form {
        width: 100% !important;
    }

    /* SEARCH BAR — altezza e stile visivo (desktop 992px+)
       Colori: default neutro (menu classico).
       Gli override stagionali (body.tentazioni-style-X) sono in fondo al file. */
    #header_primary_row .stsearchbar_builder,
    #header_primary_row .search_widget_block,
    #header_primary_row .search-widget {
        height: 44px !important;
    }
    /* Form: flex row per allineare input e bottone */
    #header_primary_row .stsearchbar_builder form,
    #header_primary_row .search_widget_block form,
    #header_primary_row .search-widget form {
        display: flex !important;
        align-items: stretch !important;
        height: 44px !important;
        border: 2px solid #888888 !important;
        border-radius: 6px !important;
        overflow: hidden !important;
        background: #ffffff !important;
    }
    /* Input di testo */
    #header_primary_row .stsearchbar_builder form input[type="text"],
    #header_primary_row .stsearchbar_builder form input[type="search"],
    #header_primary_row .stsearchbar_builder form input.ui-autocomplete-input,
    #header_primary_row .search_widget_block form input[type="text"],
    #header_primary_row .search_widget_block form input[type="search"],
    #header_primary_row .search-widget form input[type="text"],
    #header_primary_row .search-widget form input[type="search"] {
        flex: 1 1 auto !important;
        height: 40px !important;
        line-height: 40px !important;
        padding: 0 14px !important;
        border: none !important;
        outline: none !important;
        font-size: 14px !important;
        color: #333 !important;
        background: transparent !important;
    }
    /* Bottone lente — colore neutro (override stagionale sotto) */
    #header_primary_row .stsearchbar_builder form button[type="submit"],
    #header_primary_row .stsearchbar_builder form .search_button,
    #header_primary_row .search_widget_block form button[type="submit"],
    #header_primary_row .search-widget form button[type="submit"] {
        flex: 0 0 auto !important;
        width: 44px !important;
        height: 40px !important;
        background: #888888 !important;
        border: none !important;
        color: #ffffff !important;
        font-size: 16px !important;
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        transition: background-color 0.2s ease !important;
    }
    #header_primary_row .stsearchbar_builder form button[type="submit"]:hover,
    #header_primary_row .search_widget_block form button[type="submit"]:hover,
    #header_primary_row .search-widget form button[type="submit"]:hover {
        background: #555555 !important;
    }
    /* Icona dentro il bottone */
    #header_primary_row .stsearchbar_builder form button[type="submit"] i,
    #header_primary_row .search_widget_block form button[type="submit"] i,
    #header_primary_row .search-widget form button[type="submit"] i {
        color: #ffffff !important;
        font-size: 16px !important;
    }

    /* Icone (carrello, confronta, love): dimensione fissa, estrema destra */
    #header_right_bottom .stcompare_link,
    #header_right_bottom .loved_link,
    #header_right_bottom .stcompare_header,
    #header_right_bottom .add_to_love,
    #header_right_bottom .stlove_header,
    #header_right_bottom .blockcart,
    #header_right_bottom .st_cart_block,
    #header_right_bottom .st-cart-preview,
    #header_right_bottom .top_bar_item:not(.search_widget_block):not(.search_widget):not(.stsearchbar_link) {
        flex: 0 0 auto !important;
    }
}

/* ==========================================================
   HEADER MEDIO (992px–1199px)
   Il menu è ora in displayMainMenu → #top_extra (barra piena larghezza).
   #header_right_top contiene solo icone (carrello/confronta/love).
   Manteniamo flex-wrap e le regole di overflow per sicurezza.
   NOTA: max-width limitato a 1199px per NON sovrascrivere
   le regole di crescita progressiva da 1200px in su.
   ========================================================== */

@media (min-width: 992px) and (max-width: 1199px) {

    /* 1. L'header si adatta all'altezza del contenuto */
    #header_primary,
    #header_primary_container,
    #header_primary_row {
        overflow: visible !important;
        height: auto !important;
    }

    /* 2. header_right_top: permetti il wrap
          menu → prima riga (flex: 1 → prende tutto lo spazio)
          icone → seconda riga (flex: 0 → si comprimono a destra) */
    #header_right_top {
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: flex-end !important;
        overflow: visible !important;
        width: 100% !important;
    }

    /* SEARCH BAR — fascia media 992–1199px
       Container fisso a 992px → usiamo vw per larghezza continua */
    #header_primary_row .search_widget_block,
    #header_primary_row .search_widget,
    #header_primary_row .search-widget,
    #header_primary_row #search_widget,
    #header_primary_row .stsearchbar_builder,
    #header_primary_row .stsearchbar_link {
        width: 48vw !important;
        max-width: 700px !important;
    }
}

@media (min-width: 992px) and (max-width: 1100px) {

    /* SEARCH BAR — schermi stretti 992–1100px */
    #header_primary_row .search_widget_block,
    #header_primary_row .search_widget,
    #header_primary_row .search-widget,
    #header_primary_row #search_widget,
    #header_primary_row .stsearchbar_builder,
    #header_primary_row .stsearchbar_link {
        width: 42vw !important;
        max-width: 560px !important;
        min-width: 260px !important;
    }
}

/* ==========================================================
   SEARCH BAR — CRESCITA PROGRESSIVA su schermi ≥ 1200px

   SI USA vw (viewport width) invece di %:
   - % sarebbe relativa al container Bootstrap (valori fissi discreti)
   - vw è relativa al VIEWPORT → cresce in modo CONTINUO

   Il container tema ha questi max-width:
     992px → 992px  (bootstrap md)
     1200px → 1200px (bootstrap xl)
     1440px → 1440px (bootstrap xxl)
     1600px → 100%  (full-width)

   Soglie viewport → larghezza barra in vw:
     1200px–1439px  → 62vw  (≈ 744px–893px)
     1440px–1599px  → 66vw  (≈ 950px–1055px)
     1600px–1799px  → 68vw  (≈ 1088px–1223px)
     ≥ 1800px        → 70vw  (≈ 1260px+)
   ========================================================== */

/* 1200px–1439px: prima crescita reale (container = 1200px) */
@media (min-width: 1200px) and (max-width: 1439px) {
    #header_primary_row .search_widget_block,
    #header_primary_row .search_widget,
    #header_primary_row .search-widget,
    #header_primary_row #search_widget,
    #header_primary_row .stsearchbar_builder,
    #header_primary_row .stsearchbar_link {
        width: 62vw !important;
        max-width: 920px !important;
    }
}

/* 1440px–1599px: crescita intermedia (container = 1440px) */
@media (min-width: 1440px) and (max-width: 1599px) {
    #header_primary_row .search_widget_block,
    #header_primary_row .search_widget,
    #header_primary_row .search-widget,
    #header_primary_row #search_widget,
    #header_primary_row .stsearchbar_builder,
    #header_primary_row .stsearchbar_link {
        width: 66vw !important;
        max-width: 1060px !important;
    }
}

/* 1600px–1799px: schermo grande (container = 100% fluid) */
@media (min-width: 1600px) and (max-width: 1799px) {
    #header_primary_row .search_widget_block,
    #header_primary_row .search_widget,
    #header_primary_row .search-widget,
    #header_primary_row #search_widget,
    #header_primary_row .stsearchbar_builder,
    #header_primary_row .stsearchbar_link {
        width: 68vw !important;
        max-width: 1200px !important;
    }
}

/* ≥ 1800px: schermo molto largo */
@media (min-width: 1800px) {
    #header_primary_row .search_widget_block,
    #header_primary_row .search_widget,
    #header_primary_row .search-widget,
    #header_primary_row #search_widget,
    #header_primary_row .stsearchbar_builder,
    #header_primary_row .stsearchbar_link {
        width: 70vw !important;
        max-width: 1400px !important;
    }
}

/* ==========================================================
   FIX SCROLL — TUTTE LE PAGINE (desktop + mobile)
   Il tema usa height:100% su html > body > .st-pusher >
   .st-content che blocca lo scroll. La fix rompe solo la
   catena di height:100% lasciando overflow:hidden intatto
   (necessario per il sistema off-canvas dei pannelli laterali).
   ========================================================== */

/* Rompe la catena height:100% senza toccare overflow */
html,
body {
    height: auto !important;
}

.st-pusher,
.st-content,
.st-content-inner {
    height: auto !important;
}

/* ── Mobile only ─────────────────────────────────────────── */
@media (max-width: 991px) {

    /* Swiper: permette scroll verticale */
    .swiper-container,
    .swiper-wrapper {
        touch-action: pan-y !important;
    }

    /* Padding per la barra fissa in basso (50px) */
    #body_wrapper {
        padding-bottom: 50px !important;
    }
    #body_wrapper.no_sidebar {
        padding-bottom: 0 !important;
    }

    /* Blocca classi JS che impostano overflow:hidden */
    body.kk_open {
        overflow: auto !important;
    }

    #sidebar_box {
        max-height: 50px !important;
        overflow: hidden !important;
    }
}

/* ==========================================================
   CHECKOUT — Condizioni TOS gestite da PS (sicure lato server)
   Posizionamento + effetto rosso su errore via MutationObserver
   ========================================================== */
.checkout-tos-form {
    margin: 12px 0 16px;
    padding-left: 45px;   /* sposta a destra per non coprire l'icona iubenda */
}
.checkout-tos-form ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.checkout-tos-item {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}
.checkout-tos-item .js-terms {
    font-size: 0.9em;
    font-weight: 700;
    color: #555;
    line-height: 1.5;
    cursor: pointer;
    transition: color 0.2s;
}
.checkout-tos-item .js-terms a {
    color: inherit;
    text-decoration: underline;
}
.checkout-tos-item .js-terms a:hover {
    color: #6B1A2B;
}
/* stato errore: tutta la riga diventa rossa */
.checkout-tos-form.tos-error .js-terms,
.checkout-tos-form.tos-error .js-terms a {
    color: #6B1A2B;
    font-weight: 600;
}


/* ==========================================================
   MENU MODERNO — Tentazioni  (STMM_MENU_STYLE = 1)
   Classi: #st_mega_menu_wrap.stmm-style-1
           .st_mega_menu_container.stmm-style-1  (solo se header_bottom)
   Attivato da BO → Megamenu → Stile Menu → Moderno.
   Azzerato automaticamente su stile Classico (style-0).
   ========================================================== */

/* --- Contenitore bordeaux (header_bottom) ---------------- */
/* .st_mega_menu_container è il diretto figlio flex di #header_right_top.
   Di default si estende (align-items:stretch) riempiendo tutta la riga.
   align-self:flex-end + height:auto lo riduce all'altezza del suo contenuto
   e lo sposta in basso. margin-top aggiunge lo spazio visivo sopra al box. */
.st_mega_menu_container.stmm-style-1 {
    background-color: #6B1A2B;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.18);
    align-self: flex-end !important;
    height: auto !important;
    margin-top: 5px !important;
    border-radius: 6px 6px 0 0 !important;
    overflow: visible !important;   /* i dropdown devono uscire dal box */
}

/* Il div intermedio #st_mega_menu_header_container non deve aggiungere altezza */
.st_mega_menu_container.stmm-style-1 #st_mega_menu_header_container {
    height: auto !important;
}

/* --- Barra nav bordeaux ---------------------------------- */
/* background ridondante ma utile quando il container non è presente */
#st_mega_menu_wrap.stmm-style-1 {
    background-color: #6B1A2B;
    width: 100%;
    height: auto !important;
    border-radius: 6px 6px 0 0 !important;
}

/* --- Voci primo livello: bianco, uppercase --------------- */
/* il tema blocca height:36px e line-height:36px su .ma_level_0 —
   li azzeriamo entrambi e usiamo solo il padding per l'altezza */
#st_mega_menu_wrap.stmm-style-1 .ma_level_0 {
    height: auto !important;
    line-height: 1 !important;
}
#st_mega_menu_wrap.stmm-style-1 .st_mega_menu.mu_level_0 > li.ml_level_0 > a.ma_level_0 {
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    height: auto !important;
    line-height: 1 !important;
    padding-top: 7px !important;
    padding-bottom: 7px !important;
    background: transparent !important;
    border: none !important;
    position: relative !important;
    transition: background-color 0.2s ease !important;
}

/* Hover / pagina corrente / dropdown aperto */
#st_mega_menu_wrap.stmm-style-1 .mu_level_0 > li.ml_level_0:hover > a.ma_level_0,
#st_mega_menu_wrap.stmm-style-1 .mu_level_0 > li.ml_level_0.current > a.ma_level_0,
#st_mega_menu_wrap.stmm-style-1 .mu_level_0 > li.ml_level_0.open > a.ma_level_0 {
    background-color: rgba(255, 255, 255, 0.18) !important;
    color: #ffffff !important;
}

/* Sottolineatura bianca sulla pagina corrente */
#st_mega_menu_wrap.stmm-style-1 .mu_level_0 > li.ml_level_0.current > a.ma_level_0::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 14px;
    right: 14px;
    height: 3px;
    background-color: rgba(255, 255, 255, 0.90);
    border-radius: 3px 3px 0 0;
}

/* --- Dropdown panel ------------------------------------- */
#st_mega_menu_wrap.stmm-style-1 .stmenu_sub {
    background-color: #ffffff !important;
    border-top: 3px solid #6B1A2B !important;
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.14) !important;
    border-radius: 0 0 6px 6px !important;
    padding-top: 16px !important;
    padding-bottom: 12px !important;
}

/* --- Link secondo livello ------------------------------- */
#st_mega_menu_wrap.stmm-style-1 .stmenu_sub a.ma_level_1,
#st_mega_menu_wrap.stmm-style-1 .stmenu_sub a.ma_item {
    color: #2d2d2d !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 6px 16px !important;
    display: block !important;
    background: transparent !important;
    transition: color 0.15s ease, padding-left 0.15s ease !important;
}

#st_mega_menu_wrap.stmm-style-1 .stmenu_sub a.ma_level_1:hover,
#st_mega_menu_wrap.stmm-style-1 .stmenu_sub a.ma_item:hover {
    color: #6B1A2B !important;
    padding-left: 22px !important;
    background: transparent !important;
}

/* --- Link terzo livello --------------------------------- */
#st_mega_menu_wrap.stmm-style-1 .stmenu_sub a.ma_level_2 {
    color: #555555 !important;
    font-size: 12px !important;
    padding: 4px 16px 4px 24px !important;
}

#st_mega_menu_wrap.stmm-style-1 .stmenu_sub a.ma_level_2:hover {
    color: #6B1A2B !important;
    padding-left: 30px !important;
}

/* --- Titoli colonne nel dropdown ------------------------ */
#st_mega_menu_wrap.stmm-style-1 .stmenu_sub .st_mm_col_title,
#st_mega_menu_wrap.stmm-style-1 .stmenu_sub .st_mm_title,
#st_mega_menu_wrap.stmm-style-1 .stmenu_sub .st_sub_title {
    color: #6B1A2B !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 2px 16px 8px !important;
    border-bottom: 1px solid rgba(192, 57, 43, 0.2) !important;
    margin-bottom: 8px !important;
}

/* --- Separatore verticale tra colonne dropdown ---------- */
#st_mega_menu_wrap.stmm-style-1 .stmenu_sub [class*="col-"]:not(:last-child) {
    border-right: 1px solid #f0f0f0;
}

/* --- Icona freccia lista (livello 2→3) ------------------ */
#st_mega_menu_wrap.stmm-style-1 .stmenu_sub .fto-angle-right,
#st_mega_menu_wrap.stmm-style-1 .stmenu_sub .list_arrow {
    color: #6B1A2B !important;
}

/* --- Badge etichetta (es. "Nuovo", "Offerta") ----------- */
/* nella barra: bianco su bordeaux scuro */
#st_mega_menu_wrap.stmm-style-1 .mu_level_0 > li > a.ma_level_0 .cate_label {
    background-color: rgba(255, 255, 255, 0.25) !important;
    color: #ffffff !important;
    border-radius: 3px !important;
    padding: 1px 6px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
}

/* nel dropdown: bordeaux su bianco */
#st_mega_menu_wrap.stmm-style-1 .stmenu_sub .cate_label {
    background-color: #6B1A2B !important;
    color: #ffffff !important;
    border-radius: 3px !important;
    padding: 1px 6px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
}

/* --- Font Awesome 6 icone (iniettate da JS) ------------- */
/* font-family !important: sovrascrive qualsiasi regola fontello
   che il tema potrebbe avere su <i> o [class*="fa-"] */
#st_mega_menu_wrap.stmm-style-1 .stmm-fa-icon {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;          /* fa-solid richiede weight 900 */
    font-style: normal !important;
    font-size: 13px !important;
    margin-right: 6px !important;
    vertical-align: middle !important;
    display: inline-block !important;
    color: rgba(255, 255, 255, 0.80) !important;
    transition: color 0.2s ease !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
/* al hover/voce attiva l'icona diventa bianca piena */
#st_mega_menu_wrap.stmm-style-1 .mu_level_0 > li:hover .stmm-fa-icon,
#st_mega_menu_wrap.stmm-style-1 .mu_level_0 > li.current .stmm-fa-icon {
    color: #ffffff !important;
}
/* annulla ::before del fontello sull'icona rimpiazzata */
#st_mega_menu_wrap.stmm-style-1 .stmm-fa-icon::before {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
}

/* --- Icona "home" nel menu ------------------------------ */
#st_mega_menu_wrap.stmm-style-1 .ma_level_0 i.fto-home,
#st_mega_menu_wrap.stmm-style-1 .ma_level_0 .ma_icon i {
    color: #ffffff !important;
}

/* --- Adattamento tablet 992–1199px ---------------------- */
@media (min-width: 992px) and (max-width: 1199px) {
    #st_mega_menu_wrap.stmm-style-1 .st_mega_menu.mu_level_0 > li > a.ma_level_0 {
        font-size: 11px !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        letter-spacing: 0.2px !important;
    }
}

@media (min-width: 992px) and (max-width: 1100px) {
    #st_mega_menu_wrap.stmm-style-1 .st_mega_menu.mu_level_0 > li > a.ma_level_0 {
        font-size: 10px !important;
        padding-left: 6px !important;
        padding-right: 6px !important;
        letter-spacing: 0 !important;
    }
}

/* /MENU MODERNO */


/* ==========================================================
   MENU NATALIZIO — Tentazioni  (STMM_MENU_STYLE = 2)
   Verde foresta #1a5f2a · accenti oro #D4AF37
   ========================================================== */

.st_mega_menu_container.stmm-style-2 {
    background-color: #1a5f2a;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.25);
    align-self: flex-end !important;
    height: auto !important;
    margin-top: 5px !important;
    border-radius: 6px 6px 0 0 !important;
    overflow: visible !important;
}

.st_mega_menu_container.stmm-style-2 #st_mega_menu_header_container {
    height: auto !important;
}

#st_mega_menu_wrap.stmm-style-2 {
    background-color: #1a5f2a;
    width: 100%;
    height: auto !important;
    border-radius: 6px 6px 0 0 !important;
}

/* --- Voci primo livello ---------------------------------- */
#st_mega_menu_wrap.stmm-style-2 .ma_level_0 {
    height: auto !important;
    line-height: 1 !important;
}
#st_mega_menu_wrap.stmm-style-2 .st_mega_menu.mu_level_0 > li.ml_level_0 > a.ma_level_0 {
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    height: auto !important;
    line-height: 1 !important;
    padding-top: 7px !important;
    padding-bottom: 7px !important;
    background: transparent !important;
    border: none !important;
    position: relative !important;
    transition: background-color 0.2s ease !important;
}

/* Hover / pagina corrente */
#st_mega_menu_wrap.stmm-style-2 .mu_level_0 > li.ml_level_0:hover > a.ma_level_0,
#st_mega_menu_wrap.stmm-style-2 .mu_level_0 > li.ml_level_0.current > a.ma_level_0,
#st_mega_menu_wrap.stmm-style-2 .mu_level_0 > li.ml_level_0.open > a.ma_level_0 {
    background-color: rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
}

/* Sottolineatura oro sulla voce corrente */
#st_mega_menu_wrap.stmm-style-2 .mu_level_0 > li.ml_level_0.current > a.ma_level_0::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 14px;
    right: 14px;
    height: 3px;
    background-color: #D4AF37;
    border-radius: 3px 3px 0 0;
}

/* --- Dropdown ------------------------------------------- */
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub {
    background-color: #ffffff !important;
    border-top: 3px solid #1a5f2a !important;
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.14) !important;
    border-radius: 0 0 6px 6px !important;
    padding-top: 16px !important;
    padding-bottom: 12px !important;
}

/* Link livello 1 */
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub a.ma_level_1,
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub a.ma_item {
    color: #2d2d2d !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 6px 16px !important;
    display: block !important;
    background: transparent !important;
    transition: color 0.15s ease, padding-left 0.15s ease !important;
}
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub a.ma_level_1:hover,
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub a.ma_item:hover {
    color: #1a5f2a !important;
    padding-left: 22px !important;
    background: transparent !important;
}

/* Link livello 2 */
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub a.ma_level_2 {
    color: #555555 !important;
    font-size: 12px !important;
    padding: 4px 16px 4px 24px !important;
}
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub a.ma_level_2:hover {
    color: #1a5f2a !important;
    padding-left: 30px !important;
}

/* Titoli colonne dropdown */
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub .st_mm_col_title,
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub .st_mm_title,
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub .st_sub_title {
    color: #1a5f2a !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 2px 16px 8px !important;
    border-bottom: 1px solid rgba(26, 95, 42, 0.2) !important;
    margin-bottom: 8px !important;
}

/* Separatore colonne */
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub [class*="col-"]:not(:last-child) {
    border-right: 1px solid #f0f0f0;
}

/* Arrow lista */
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub .fto-angle-right,
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub .list_arrow {
    color: #1a5f2a !important;
}

/* Badge barra */
#st_mega_menu_wrap.stmm-style-2 .mu_level_0 > li > a.ma_level_0 .cate_label {
    background-color: rgba(255, 255, 255, 0.25) !important;
    color: #ffffff !important;
    border-radius: 3px !important;
    padding: 1px 6px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
}

/* Badge dropdown */
#st_mega_menu_wrap.stmm-style-2 .stmenu_sub .cate_label {
    background-color: #1a5f2a !important;
    color: #ffffff !important;
    border-radius: 3px !important;
    padding: 1px 6px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
}

/* --- Icone FA6 ------------------------------------------ */
#st_mega_menu_wrap.stmm-style-2 .stmm-fa-icon {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    font-style: normal !important;
    font-size: 13px !important;
    margin-right: 6px !important;
    vertical-align: middle !important;
    display: inline-block !important;
    color: rgba(255, 255, 255, 0.80) !important;
    transition: color 0.2s ease !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
#st_mega_menu_wrap.stmm-style-2 .mu_level_0 > li:hover .stmm-fa-icon,
#st_mega_menu_wrap.stmm-style-2 .mu_level_0 > li.current .stmm-fa-icon {
    color: #D4AF37 !important;   /* oro all'hover */
}
#st_mega_menu_wrap.stmm-style-2 .stmm-fa-icon::before {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
}

/* --- Tablet 992–1199px ---------------------------------- */
@media (min-width: 992px) and (max-width: 1199px) {
    #st_mega_menu_wrap.stmm-style-2 .st_mega_menu.mu_level_0 > li > a.ma_level_0 {
        font-size: 11px !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        letter-spacing: 0.2px !important;
    }
}
@media (min-width: 992px) and (max-width: 1100px) {
    #st_mega_menu_wrap.stmm-style-2 .st_mega_menu.mu_level_0 > li > a.ma_level_0 {
        font-size: 10px !important;
        padding-left: 6px !important;
        padding-right: 6px !important;
        letter-spacing: 0 !important;
    }
}

/* /MENU NATALIZIO */


/* ==========================================================
   MENU PASQUALE — Tentazioni  (STMM_MENU_STYLE = 3)
   Viola ametista #5C2D82 · accenti oro primaverile #E8C840
   ========================================================== */

.st_mega_menu_container.stmm-style-3 {
    background-color: #5C2D82;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.25);
    align-self: flex-end !important;
    height: auto !important;
    margin-top: 5px !important;
    border-radius: 6px 6px 0 0 !important;
    overflow: visible !important;
}

.st_mega_menu_container.stmm-style-3 #st_mega_menu_header_container {
    height: auto !important;
}

#st_mega_menu_wrap.stmm-style-3 {
    background-color: #5C2D82;
    width: 100%;
    height: auto !important;
    border-radius: 6px 6px 0 0 !important;
}

/* --- Voci primo livello ---------------------------------- */
#st_mega_menu_wrap.stmm-style-3 .ma_level_0 {
    height: auto !important;
    line-height: 1 !important;
}
#st_mega_menu_wrap.stmm-style-3 .st_mega_menu.mu_level_0 > li.ml_level_0 > a.ma_level_0 {
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    height: auto !important;
    line-height: 1 !important;
    padding-top: 7px !important;
    padding-bottom: 7px !important;
    background: transparent !important;
    border: none !important;
    position: relative !important;
    transition: background-color 0.2s ease !important;
}

/* ============================================================
   KINGMO MODS — FOOTER ACCENT STAGIONALE
   Striscia colorata in cima al footer che segue il menu attivo.
   Selettore standard Transformer: #footer — adattare se diverso.
   ============================================================ */
body.tentazioni-style-1 #footer,
body.tentazioni-style-1 footer.footer-container {
    border-top: 4px solid #6B1A2B !important;
    box-shadow: 0 -2px 8px rgba(107, 26, 43, 0.25) !important;
}
body.tentazioni-style-2 #footer,
body.tentazioni-style-2 footer.footer-container {
    border-top: 4px solid #1a5f2a !important;
    box-shadow: 0 -2px 8px rgba(26, 95, 42, 0.25) !important;
}
body.tentazioni-style-3 #footer,
body.tentazioni-style-3 footer.footer-container {
    border-top: 4px solid #5C2D82 !important;
    box-shadow: 0 -2px 8px rgba(92, 45, 130, 0.25) !important;
}
/* /KINGMO MODS — FOOTER ACCENT */

/* ============================================================
   KINGMO MODS — EFFETTO NEVE (solo stile Natalizio)
   ============================================================ */
#stmm-snow {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 9000;
    overflow: hidden;
}
.stmm-flake {
    position: absolute;
    top: -20px;
    font-style: normal;
    color: #ffffff;
    text-shadow: 0 0 4px rgba(180, 220, 255, 0.9);
    animation: stmmSnowFall linear infinite;
    user-select: none;
}
@keyframes stmmSnowFall {
    0%   { transform: translateY(0)     rotate(0deg)   translateX(0);    }
    33%  { transform: translateY(33vh)  rotate(120deg) translateX(15px);  }
    66%  { transform: translateY(66vh)  rotate(240deg) translateX(-10px); }
    100% { transform: translateY(108vh) rotate(360deg) translateX(5px);   }
}
/* /KINGMO MODS — EFFETTO NEVE */

/* Hover / pagina corrente */
#st_mega_menu_wrap.stmm-style-3 .mu_level_0 > li.ml_level_0:hover > a.ma_level_0,
#st_mega_menu_wrap.stmm-style-3 .mu_level_0 > li.ml_level_0.current > a.ma_level_0,
#st_mega_menu_wrap.stmm-style-3 .mu_level_0 > li.ml_level_0.open > a.ma_level_0 {
    background-color: rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
}

/* Sottolineatura oro primaverile sulla voce corrente */
#st_mega_menu_wrap.stmm-style-3 .mu_level_0 > li.ml_level_0.current > a.ma_level_0::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 14px;
    right: 14px;
    height: 3px;
    background-color: #E8C840;
    border-radius: 3px 3px 0 0;
}

/* --- Dropdown ------------------------------------------- */
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub {
    background-color: #ffffff !important;
    border-top: 3px solid #5C2D82 !important;
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.14) !important;
    border-radius: 0 0 6px 6px !important;
    padding-top: 16px !important;
    padding-bottom: 12px !important;
}

/* Link livello 1 */
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub a.ma_level_1,
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub a.ma_item {
    color: #2d2d2d !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 6px 16px !important;
    display: block !important;
    background: transparent !important;
    transition: color 0.15s ease, padding-left 0.15s ease !important;
}
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub a.ma_level_1:hover,
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub a.ma_item:hover {
    color: #5C2D82 !important;
    padding-left: 22px !important;
    background: transparent !important;
}

/* Link livello 2 */
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub a.ma_level_2 {
    color: #555555 !important;
    font-size: 12px !important;
    padding: 4px 16px 4px 24px !important;
}
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub a.ma_level_2:hover {
    color: #5C2D82 !important;
    padding-left: 30px !important;
}

/* Titoli colonne dropdown */
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub .st_mm_col_title,
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub .st_mm_title,
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub .st_sub_title {
    color: #5C2D82 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 2px 16px 8px !important;
    border-bottom: 1px solid rgba(92, 45, 130, 0.2) !important;
    margin-bottom: 8px !important;
}

/* Separatore colonne */
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub [class*="col-"]:not(:last-child) {
    border-right: 1px solid #f0f0f0;
}

/* Arrow lista */
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub .fto-angle-right,
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub .list_arrow {
    color: #5C2D82 !important;
}

/* Badge barra */
#st_mega_menu_wrap.stmm-style-3 .mu_level_0 > li > a.ma_level_0 .cate_label {
    background-color: rgba(255, 255, 255, 0.25) !important;
    color: #ffffff !important;
    border-radius: 3px !important;
    padding: 1px 6px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
}

/* Badge dropdown */
#st_mega_menu_wrap.stmm-style-3 .stmenu_sub .cate_label {
    background-color: #5C2D82 !important;
    color: #ffffff !important;
    border-radius: 3px !important;
    padding: 1px 6px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
}

/* --- Icone FA6 ------------------------------------------ */
#st_mega_menu_wrap.stmm-style-3 .stmm-fa-icon {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    font-style: normal !important;
    font-size: 13px !important;
    margin-right: 6px !important;
    vertical-align: middle !important;
    display: inline-block !important;
    color: rgba(255, 255, 255, 0.80) !important;
    transition: color 0.2s ease !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
#st_mega_menu_wrap.stmm-style-3 .mu_level_0 > li:hover .stmm-fa-icon,
#st_mega_menu_wrap.stmm-style-3 .mu_level_0 > li.current .stmm-fa-icon {
    color: #E8C840 !important;   /* oro primaverile all'hover */
}
#st_mega_menu_wrap.stmm-style-3 .stmm-fa-icon::before {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
}

/* --- Tablet 992–1199px ---------------------------------- */
@media (min-width: 992px) and (max-width: 1199px) {
    #st_mega_menu_wrap.stmm-style-3 .st_mega_menu.mu_level_0 > li > a.ma_level_0 {
        font-size: 11px !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        letter-spacing: 0.2px !important;
    }
}
@media (min-width: 992px) and (max-width: 1100px) {
    #st_mega_menu_wrap.stmm-style-3 .st_mega_menu.mu_level_0 > li > a.ma_level_0 {
        font-size: 10px !important;
        padding-left: 6px !important;
        padding-right: 6px !important;
        letter-spacing: 0 !important;
    }
}

/* /MENU PASQUALE */


/* ============================================================
   MENU STILI 1-2-3 — Struttura reale (da DevTools):
     .st_mega_menu_container.stmm-style-X  (era 640px)
       #st_mega_menu_header_container
         nav#st_mega_menu_wrap
           ul.st_mega_menu.mu_level_0

   STRATO 1 (992px+): la barra si estende a piena larghezza.
   STRATO 2 (1300px+): le voci si distribuiscono uniformemente.
   Non tocca lo stile Classico (style-0).
   ============================================================ */

/* --- STRATO 1: barra full-width dal breakpoint desktop --- */
/* Il menu è in displayMainMenu → #top_extra → .container Bootstrap.
   Rimuoviamo il max-width fisso del container così la barra si estende
   fino ai bordi del viewport su qualsiasi schermo. */
@media (min-width: 992px) {
    #top_extra .container {
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* --- STRATO 2: distribuzione voci su schermi larghi --- */
@media (min-width: 1300px) {
    /* ul: piena larghezza, no wrap */
    #st_mega_menu_wrap.stmm-style-1 .st_mega_menu.mu_level_0,
    #st_mega_menu_wrap.stmm-style-2 .st_mega_menu.mu_level_0,
    #st_mega_menu_wrap.stmm-style-3 .st_mega_menu.mu_level_0 {
        display: flex !important;
        width: 100% !important;
        flex-wrap: nowrap !important;
    }
    /* li: porzione uguale, non può ridursi oltre il testo */
    #st_mega_menu_wrap.stmm-style-1 .st_mega_menu.mu_level_0 > li.ml_level_0,
    #st_mega_menu_wrap.stmm-style-2 .st_mega_menu.mu_level_0 > li.ml_level_0,
    #st_mega_menu_wrap.stmm-style-3 .st_mega_menu.mu_level_0 > li.ml_level_0 {
        flex: 1 1 0 !important;
        min-width: max-content !important;
        text-align: center !important;
    }
    /* link: centrato nella cella */
    #st_mega_menu_wrap.stmm-style-1 .st_mega_menu.mu_level_0 > li.ml_level_0 > a.ma_level_0,
    #st_mega_menu_wrap.stmm-style-2 .st_mega_menu.mu_level_0 > li.ml_level_0 > a.ma_level_0,
    #st_mega_menu_wrap.stmm-style-3 .st_mega_menu.mu_level_0 > li.ml_level_0 > a.ma_level_0 {
        display: flex !important;
        justify-content: center !important;
        width: 100% !important;
    }
    /* Reset: i sottomenu ereditano text-align:center dal li padre — li reallineiamo a sinistra */
    #st_mega_menu_wrap.stmm-style-1 .stmenu_sub,
    #st_mega_menu_wrap.stmm-style-2 .stmenu_sub,
    #st_mega_menu_wrap.stmm-style-3 .stmenu_sub {
        text-align: left !important;
    }
}


/* ============================================================
   SEARCH BAR — Colori stagionali (bordo form + bottone lente)
   Seguono il colore della barra menu attiva:
     style-1 = Moderno/Bordeaux   #6B1A2B
     style-2 = Natalizio/Verde    #1a5f2a
     style-3 = Pasquale/Viola     #5C2D82
     (nessuna classe) = Classico  grigio neutro (default sopra)
   ============================================================ */

@media (min-width: 992px) {

    /* --- STILE 1: Moderno bordeaux ------------------------- */
    body.tentazioni-style-1 #header_primary_row .stsearchbar_builder form,
    body.tentazioni-style-1 #header_primary_row .search_widget_block form,
    body.tentazioni-style-1 #header_primary_row .search-widget form {
        border-color: #6B1A2B !important;
    }
    body.tentazioni-style-1 #header_primary_row .stsearchbar_builder form button[type="submit"],
    body.tentazioni-style-1 #header_primary_row .stsearchbar_builder form .search_button,
    body.tentazioni-style-1 #header_primary_row .search_widget_block form button[type="submit"],
    body.tentazioni-style-1 #header_primary_row .search-widget form button[type="submit"] {
        background: #6B1A2B !important;
    }
    body.tentazioni-style-1 #header_primary_row .stsearchbar_builder form button[type="submit"]:hover,
    body.tentazioni-style-1 #header_primary_row .search_widget_block form button[type="submit"]:hover,
    body.tentazioni-style-1 #header_primary_row .search-widget form button[type="submit"]:hover {
        background: #4E1120 !important;
    }

    /* --- STILE 2: Natalizio verde -------------------------- */
    body.tentazioni-style-2 #header_primary_row .stsearchbar_builder form,
    body.tentazioni-style-2 #header_primary_row .search_widget_block form,
    body.tentazioni-style-2 #header_primary_row .search-widget form {
        border-color: #1a5f2a !important;
    }
    body.tentazioni-style-2 #header_primary_row .stsearchbar_builder form button[type="submit"],
    body.tentazioni-style-2 #header_primary_row .stsearchbar_builder form .search_button,
    body.tentazioni-style-2 #header_primary_row .search_widget_block form button[type="submit"],
    body.tentazioni-style-2 #header_primary_row .search-widget form button[type="submit"] {
        background: #1a5f2a !important;
    }
    body.tentazioni-style-2 #header_primary_row .stsearchbar_builder form button[type="submit"]:hover,
    body.tentazioni-style-2 #header_primary_row .search_widget_block form button[type="submit"]:hover,
    body.tentazioni-style-2 #header_primary_row .search-widget form button[type="submit"]:hover {
        background: #0e3a18 !important;
    }

    /* --- STILE 3: Pasquale viola --------------------------- */
    body.tentazioni-style-3 #header_primary_row .stsearchbar_builder form,
    body.tentazioni-style-3 #header_primary_row .search_widget_block form,
    body.tentazioni-style-3 #header_primary_row .search-widget form {
        border-color: #5C2D82 !important;
    }
    body.tentazioni-style-3 #header_primary_row .stsearchbar_builder form button[type="submit"],
    body.tentazioni-style-3 #header_primary_row .stsearchbar_builder form .search_button,
    body.tentazioni-style-3 #header_primary_row .search_widget_block form button[type="submit"],
    body.tentazioni-style-3 #header_primary_row .search-widget form button[type="submit"] {
        background: #5C2D82 !important;
    }
    body.tentazioni-style-3 #header_primary_row .stsearchbar_builder form button[type="submit"]:hover,
    body.tentazioni-style-3 #header_primary_row .search_widget_block form button[type="submit"]:hover,
    body.tentazioni-style-3 #header_primary_row .search-widget form button[type="submit"]:hover {
        background: #3d1d57 !important;
    }

}
/* /SEARCH BAR COLORI STAGIONALI */

/* ==========================================================
   STSWIPER — Fix frecce nei bottoni di navigazione (circle / rectangle / arrow)

   ROOT CAUSE (da theme.css):
   Per circle/arrow navigation il tema imposta "position:static" sull'<i>,
   togliendo la blockificazione da position:absolute. Con display:inline
   (default <i>) i valori height/width vengono IGNORATI, il box è grande
   quanto il solo ::before (~24px) e il glifo non è centrato nel cerchio.

   FIX: display:flex sull'<i> visibile lo blockifica → height/width:40px
   tornano attivi → align-items:center centra il ::before in modo preciso.
   La regola top:50% + margin-top:-20px nativa di Swiper centra già il
   bottone correttamente: nessun translateY aggiuntivo necessario.
   ========================================================== */

/* L'<i> visibile diventa flex container: centra il glifo ::before */
.swiper-button-lr .swiper-button-next .slider_arrow_right,
.swiper-button-lr .swiper-button-next .fto-right-open-3,
.swiper-button-lr .swiper-button-prev .slider_arrow_left,
.swiper-button-lr .swiper-button-prev .fto-left-open-3 {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* <i> della freccia opposta: nascosto */
.swiper-button-lr .swiper-button-next .slider_arrow_left,
.swiper-button-lr .swiper-button-next .fto-left-open-3,
.swiper-button-lr .swiper-button-prev .slider_arrow_right,
.swiper-button-lr .swiper-button-prev .fto-right-open-3 {
    display: none !important;
}
/* /STSWIPER */

/* ==========================================================
   STSWIPER — Fallback altezza minima slider pagine interne
   Se in BO il campo "Height" del gruppo slide è 0, il container
   collassa. Questo assicura una altezza minima visibile e forza
   background-size:cover a funzionare anche senza height esplicita.
   NOTA: imposta comunque l'altezza in BO (es. 300px) per il
   corretto funzionamento del background-image vs lazy-img.
   ========================================================== */
.swiper_images_slider .swiper-container .st_swiper_block {
    min-height: inherit;
}
/* /STSWIPER */

/* ==========================================================
   STSOCIAL — Fix icone social nel footer (steasycontent-element-10)

   ROOT CAUSE: identico alle frecce Swiper.
   .social_wrap (<div>) ha height/line-height: 34px e la <i> è
   display:inline. Il glifo ::before (display:inline-block; line-height:1em)
   si allinea alla baseline del box da 34px invece di centrarsi.

   FIX: .social_wrap diventa flex container → la <i> diventa flex item
   → align-items:center + justify-content:center la centrano nel cerchio.
   ========================================================== */

.stsocial_list .social_wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
/* /STSOCIAL */

/* ==========================================================
   PAYPAL - Nascondi il tasto PS "Conferma ordine" solo quando
   l'utente seleziona un metodo ps_checkout (PayPal / carta).
   ps_checkout gestisce la conferma con il proprio pulsante
   (#paypal-buttons, inserito subito dopo #payment-confirmation).

   Usiamo :has() sul sibling .payment-options: si attiva SOLO
   se il radio ps_checkout è checked → nessun effetto al
   caricamento della pagina, nessun conflitto con altri metodi.
   ========================================================== */
.payment-options:has(
    input[name="payment-option"][data-module-name="ps_checkout"]:checked
) ~ #payment-confirmation .ps-shown-by-js {
    display: none !important;
}
/* /PAYPAL */

/* ==========================================================
   CHECKOUT — link nelle aree contenuto degli step
   (es. "Pippo Topolino", "Esci", link indirizzi, ecc.)
   ========================================================== */
.checkout-step .content a {
    color: #6B1A2B;
    font-weight: 700;
}
.checkout-step .content a:hover,
.checkout-step .content a:focus {
    color: #6B1A2B;
    text-decoration: underline;
}
/* /CHECKOUT LINKS */

