/*
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

.d-none {
    display: none !important;
}

body {
    overflow-x: hidden !important;
}

/*NEWSLETTER*/
.sib-email-area {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    /* Spazio tra input e bottone */
}

.sib-email-area input[type="email"] {
    flex: 1;
}

.sib-email-area input[type="submit"] {
    white-space: nowrap;
}


/*IMMAGINE PRODOTTO THUMB LATERALI*/
/* DESKTOP */
.woocommerce .flex-control-thumbs {
    margin: 10px 0px 10px -25px !important;
    /* Thumbnails separation top and bottom */
    width: 90% !important;
    /* Controls width of thumbnails container on desktop - Horizontally */
    display: flex;
}

/* Controls thumbnails width on desktop - vertically
* Enable this ONLY for VERTICAL display
*/
ol.flex-control-nav.flex-control-thumbs li {
    width: 15% !important;
}

/* Enable this ONLY for HORIZONTAL display */
/*ol.flex-control-nav.flex-control-thumbs li {
width: 18% !important;
}*/

/* PHONES */
@media (max-width:414px) {
    ol.flex-control-nav.flex-control-thumbs li {
        width: 18% !important;
        /* Controls thumbnails width on mobile - Horizontally */
    }
}

/* TABLETS */
@media (min-width:568px) and (max-width:768px) {

    /* Controls thumbnails container width on tablet - vertically
* Enable this ONLY for VERTICAL display */
    .woocommerce .flex-control-thumbs {
        margin: 10px 0px 10px -5px !important;
        width: 15% !important;
    }

    /* Controls width of thumbnails container on tablet - horizontally
* Enable this ONLY for HORIZONTAL display */
    /*.woocommerce .flex-control-thumbs {
width: 70% !important;
}*/
    ol.flex-control-nav.flex-control-thumbs li {
        width: 90% !important;
        /* Controls thumbnails image width on tablet - vertically */
    }
}

@media (min-width:769px) and (max-width:1024px) {

    /* Controls thumbnails container width on tablet - vertically
* Enable this ONLY for VERTICAL display */
    .woocommerce .flex-control-thumbs {
        margin: 10px 0px 10px -5px !important;
        width: 12% !important;
    }

    /* Controls width of thumbnails container on tablet - horizontally
* Enable this ONLY for HORIZONTAL display */
    /*.woocommerce .flex-control-thumbs {
width: 70% !important;
}*/
    ol.flex-control-nav.flex-control-thumbs li {
        width: 100% !important;
        /* Controls thumbnails image width on tablet - vertically */
    }
}

/* Functionality: Product page image thumbnails on left side */
@media (min-width:568px) {
    .woocommerce .flex-control-nav {
        position: absolute;
        top: -10px;
        left: 0px;
    }

    .flex-control-thumbs {
        display: flex;
        flex-direction: column;
    }
}

@media (min-width:568px) and (max-width:768px) {
    .woocommerce .flex-viewport {
        width: 86.5% !important;
        left: 100px !important;
    }
}

@media (min-width:769px) and (max-width:1024px) {
    .woocommerce .flex-viewport {
        width: 87% !important;
        left: 95px !important;
    }
}

@media (min-width:1025px) {
    .woocommerce .flex-viewport {
        width: 85% !important;
        left: 80px !important;
    }
}

/*LENTE INGRANDIMENTO IMG PRODOTTO*/
.woocommerce-product-gallery__trigger {
    display: none !important;
}

/*FINE IMG PRODOTTO*/



/*TRACK ORDER BUTTON*/
button[name="track"] {
    background-color: white !important;
    color: black !important;
    border-radius: 0 !important;
    border: 1px solid black !important;
}

button[name="track"]:hover {
    background-color: black !important;
    color: white !important;
}


/*AVVISI WOOCOMMERCE*/
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
    padding: 10px 50px 10px !important;
}

/*AVVISO YITH PAGINA PAGAMENTO*/
#ywpar_apply_discounts {
    background-color: black !important;
    color: white !important;
    border-radius: 0 !important;
    border: 1px solid black !important;
}

#ywpar_apply_discounts:hover {
    background-color: white !important;
    color: black !important;
    border-radius: 0 !important;
    border: 1px solid black !important;
}

/*FINE AVVISO YITH PAGINA PAGAMENTO*/

/*PULSANTE PUNTI IN SCHEDA PRODOTTO*/
.yith-par-message.yith-par-message-product {
    border: solid black 1px;
    border-radius: 0 !important;
    border-color: black !important;
    color: black !important;
}

/*PREZZO VARIABILE*/
.price {
    color: black !important;
}

/*immagine prodotto hover*/
.product-image-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
}

.product-image-wrapper .product-image-main,
.product-image-wrapper .product-image-hover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity 0.3s ease;
}

.product-image-wrapper .product-image-hover {
    opacity: 0;
}

.product-image-wrapper:hover .product-image-main {
    opacity: 0;
}

.product-image-wrapper:hover .product-image-hover {
    opacity: 1 !important;
}

.form-submit input[type="submit"]:hover {
    border: 1px solid black !important;
    background-color: black !important;
    color: white !important;
    border-radius: 0px !important;
}

.woocommerce #reviews #comments ol.commentlist li .comment-text {
    border-color: #000;
}

.woocommerce-review__author {
    color: #000
}

.star-rating {
    color: #991918;
}

/*ELEMENTS WP*/
/*button {
border:1px solid black !important;
background-color: transparent !important;
color: black !important;
border-radius: 0px !important;
}

button:hover {
border:1px solid black !important;
background-color: black !important;
color: white !important;
border-radius: 0px !important;
}*/
.stock.in-stock {
    color: black !important;
}

/*CSS TEST CARRELLO NON TOCCARE*/


/* Stile pulsante "Ritorna al negozio" */
.woocommerce .return-to-shop {
    text-align: center !important;
    /* Centra il contenitore */
}

.woocommerce .return-to-shop .button.wc-backward {
    background-color: #000 !important;
    /* Colore sfondo */
    color: red !important;
    /* Colore testo */
    font-size: 14px !important;
    padding: 12px 30px !important;
    text-transform: uppercase !important;
    font-weight: bold !important;
    transition: 0.3s ease-in-out;
    display: inline-block !important;
    /* Mantiene la dimensione del bottone */
}

.woocommerce .return-to-shop .button.wc-backward:hover {
    background-color: #991918 !important;
    /* Colore hover */
    color: #fff !important;
}

/* Allineamento e stile del messaggio */
.woocommerce .cart-empty {
    margin-bottom: 80px !important;
    color: #000 !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    text-align: center !important;
    /* Centra il testo */
}


/*TEST VISUALIZZA CARRELLO IN SHOP NON TOCCARE*/

/* Stile del messaggio WooCommerce */
.woocommerce .woocommerce-message {
    padding-top: 20px;
    padding-bottom: 20px;
}


/*PULSANTE DOWNLOAD IN MY ACCOUNT*/
.button.wc-forward {
    color: white !important;
}

.button.wc-forward:hover {
    color: black !important;
}


/*NASCONDE PRODOTTI ESAURITI DAGLI SLIDER NELLA HOME*/
.e-loop-item.product.outofstock {
    display: none;
}


/* RIDIMENSIONAMENTO IMMAGINI PRODOTTO DENTRO PAGINA PRODOTTO MOBILE*/
/* Mobile: max 767px, adatta il breakpoint alle tue esigenze */
@media screen and (max-width: 767px) {

    /* restringo il blocco galleria e lo centro */
    .single-product .woocommerce-product-gallery {
        max-width: 100%;
        margin: 0 auto;
    }

    /* assicuro che le immagini stiano dentro al contenitore */
    .single-product .woocommerce-product-gallery__image img {
        width: 100%;
        height: auto;
    }

    /* opzionale: lascio gestire l’altezza in automatico,
        Flexslider mette un height fisso inline */
    .single-product .woocommerce-product-gallery .flex-viewport {
        /*         height: 20% !important; */
    }

    .woocommerce-product-gallery--with-images {
        margin: 0 !important;
        width: 100% !important;
    }

    .flex-control-nav.flex-control-thumbs {
        margin: 0 !important;
    }

    .product .e-con-inner {
        padding-top: 0 !important;
    }
}

/*NASCONDA LA INFO "DISPONIBILE" DALL'ADD TO CART FISSO IN BASSO SU MOBILE*/
.addtocart-mobile-bar .stock {
    display: none !important;
}

/*NASCONDE BADGE IUBENDA*/
html body button.iubenda-tp-btn.iubenda-cs-preferences-link[data-iub-enabled="1"] {
    display: none !important;
}

.trp-language-switcher {
    padding: 0 !important;
}

.yith-par-message {
    display: none !important;
}

/*Nasconde carrello di default plugin side cart*/
.xoo-wsc-modal .xoo-wsc-basket {
    display: none !important;
}

/*Allinea icona carrello nell'header*/
.xoo-wsc-sc-bkcont {
    display: flex;
    justify-content: center;
    align-items: center;
}

.xoo-wsc-cart-trigger {
    padding-right: 10px;
}

/*Nasconde tasto view card nel carrello offcanvas*/
.xoo-wsc-ft-btn-cart {
    display: none !important;
}

/*Nasconde importo carello da heeader mobile per motivi di spazio*/
@media screen and (max-width: 560px) {
    .xoo-wsc-sc-subt .woocommerce-Price-amount.amount {
        display: none !important;
    }
}




/* GESTIONE FILTRO SHOP */
/* ===================================== */
.shop-filter-mobile form {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}


/* 1. Forza il contenitore principale del bottone */
html body .btn-open-shop-filter a.premium-button {
    background-color: #8b0000 !important; /* Rosso Doctor G */
    border-radius: 8px !important;
    padding: 10px 20px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-decoration: none !important;
    border: none !important;
}

/* 2. Centra Icona e Testo uniformando il colore */
html body .btn-open-shop-filter .premium-button-text-icon-wrapper {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important; /* Spazio tra icona e testo */
    width: 100% !important;
    color: #ffffff !important; /* Forza tutto il testo in bianco */
}

/* 3. Forza l'icona SVG ad essere bianca e della giusta dimensione */
html body .btn-open-shop-filter .premium-button svg {
    fill: #ffffff !important; /* Colore bianco per l'icona */
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important; /* Rimuove margini ereditati che sballano la centratura */
}

/* 4. Forza lo span del testo */
html body .btn-open-shop-filter .premium-button span {
    color: #ffffff !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
}
/* --- GESTIONE STICKY CART DOCTOR G. - DEFINITIVO --- */

/* 1. SBLOCCO INPUT QUANTITÀ (Globale) */
.wpcsb-quantity {
    position: relative !important;
    z-index: 10 !important;
    pointer-events: auto !important;
}

.wpcsb-quantity .quantity input.qty {
    pointer-events: auto !important;
    cursor: text !important;
    z-index: 11 !important;
}

/* 2. STILE TASTO AGGIUNGI AL CARRELLO (Rosso Doctor G.) */
.wpcsb-btn.button.alt {
    background-color: #8B0000 !important;
    color: #ffffff !important;
    font-family: 'Barlow', sans-serif !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-radius: 0 !important;
    border: none !important;
    transition: background 0.3s ease !important;
}

.wpcsb-btn.button.alt:hover {
    background-color: #700000 !important;
}

/* 3. LAYOUT DESKTOP (Immagine + Nome a sinistra) */
@media (min-width: 769px) {
    .wpcsb-product {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100% !important;
    }

    .wpcsb-product-info {
        display: flex !important;
        align-items: center !important; /* Centra immagine e nome verticalmente */
        justify-content: flex-start !important;
        flex-grow: 1 !important;
        gap: 15px !important;
    }

    .wpcsb-product-image {
        height: 60px !important; /* Altezza premium */
        display: flex !important;
        align-items: center !important;
    }

    .wpcsb-product-image img {
        height: 100% !important;
        width: auto !important;
        object-fit: contain !important;
        margin: 0 !important;
    }

    .wpcsb-product-name {
        font-family: 'Barlow', sans-serif !important;
        font-weight: 700 !important;
        font-size: 16px !important;
    }

    .wpcsb-product-action {
        display: flex !important;
        align-items: center !important;
        gap: 20px !important;
        flex-shrink: 0 !important;
    }
}

/* 4. LAYOUT MOBILE (Visualizzazione Compatta, Fix Tocco e Larghezza Doppia Cifra) */
@media (max-width: 768px) {
    /* Nasconde info prodotto per dare spazio all'azione */
    .wpcsb-product-info {
        display: none !important;
    }

    .wpcsb-product-action {
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 0 !important;
    }

    .wpcsb-add-to-cart {
        width: 100% !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        gap: 12px !important;
    }

    /* FIX INPUT QUANTITÀ: In primo piano e più largo per doppie cifre */
    .wpcsb-quantity {
        flex-shrink: 0 !important;
        position: relative !important;
        z-index: 99 !important;
        pointer-events: auto !important;
    }

    .wpcsb-quantity .quantity input.qty {
        height: 50px !important;
        width: 65px !important; /* Allargato per evitare tagli con numeri a due cifre */
        position: relative !important;
        z-index: 100 !important;
        pointer-events: auto !important;
        cursor: pointer !important;
        padding: 0 5px !important; /* Un po' di padding interno per centrare meglio */
        text-align: center !important;
    }

    /* PULSANTE FULL-WIDTH: Riempie lo spazio rimanente */
    .wpcsb-atc {
        flex-grow: 1 !important;
        position: relative !important;
        z-index: 1 !important;
    }

    .wpcsb-btn.button.alt {
        width: 100% !important;
        height: 50px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
    }
}
