/* 
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 */


/* Menu */

.menu-home-voice a{
    display: none !important;
}

#main-menu-header .menu-item.menu-item-type-post_type.menu-item-object-page.current-page-ancestor a{
  color: var(--e-global-color-accent) !important;
}

#main-menu-header .menu-item.menu-item-type-post_type.menu-item-object-page.current-page-ancestor a:before{
  background-color: var(--e-global-color-ab430b2);
  inset: 0;
  z-index: -1;
  content: "";
  transition: .3s;
  transform: scale(1);
  display: block;
  position: absolute;
  opacity: 1;
}

.single-product .current_page_parent a{
  color: var(--e-global-color-accent) !important;
}

.single-product #main-menu-header .current_page_parent a:before{
  background-color: var(--e-global-color-ab430b2);
  inset: 0;
  z-index: -1;
  content: "";
  transition: .3s;
  transform: scale(1);
  display: block;
  position: absolute;
  opacity: 1;
}

/* Menu Mobile */

@media screen and (max-width: 1024px){
    .menu-menu-mobile-container ul#menu-menu-mobile, .menu-menu-mobile-container ul#menu-menu-mobile .sub-menu{
        list-style-type: none; /* Rimuove i pallini */
        padding-left: 0;       /* Rimuove lo spazio vuoto a sinistra */
        margin-left: 0;        /* Azzera eventuali margini del tema */
        display: flex;
        flex-direction: column;
        gap: 7px;
        padding-top: 10px;
    }

    .menu-menu-mobile-container ul#menu-menu-mobile>li>a{
        color: var(--e-global-color-primary);
        font-family: var(--e-global-typography-f61793b-font-family);
        font-size: var(--e-global-typography-f61793b-font-size);
        text-transform: var(--e-global-typography-f61793b-text-transform);
        line-height: var(--e-global-typography-f61793b-line-height);
        letter-spacing: var(--e-global-typography-f61793b-letter-spacing);
        padding-bottom: 5px;
    }

    .menu-menu-mobile-container ul#menu-menu-mobile>li:not(:first-child){
        border-top: 2px dotted var(--e-global-color-primary);
        padding-top: 5px;
    }
    .menu-menu-mobile-container ul#menu-menu-mobile>li{
        padding-bottom: 10px;
    }

    .menu-menu-mobile-container ul#menu-menu-mobile .sub-menu>li>a{
        color: var(--e-global-color-primary);
        font-size: var(--e-global-typography-text-font-size);
        line-height: var(--e-global-typography-text-line-height);
    }

    .menu-menu-mobile-container ul#menu-menu-mobile .sub-menu>li.menu-special-voice>a{
        color: var(--e-global-color-accent);
    }
}


/* Pulsante Aggiungi al carrello archivio prodotti*/

/* Seleziona il pulsante di aggiunta al carrello quando è vuoto */
.button.add_to_cart_button:empty::before {
    content: "";
    display: inline-block;
    width: 2em;
    height: 2em;
    /* Cambia il colore dell'icona sostituendo il codice %23ffffff (bianco) con quello che preferisci */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M11 9h2V6h3V4h-3V1h-2v3H8v2h3v3zm-4 9c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zm10 0c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2zm-9.83-3.25l.03-.12.9-1.63h7.45c.75 0 1.41-.41 1.75-1.03l3.86-7.01L19.42 4l-3.87 7H8.53L4.27 2H1v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96 0 1.1.9 2 2 2h12v-2H7.42c-.13 0-.25-.11-.25-.25z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
}

.button.add_to_cart_button:empty {
    padding: 10px 15px;
    min-width: 50px;
    text-align: center;
}

/* Nasconde la scritta "Visualizza il carrello" che compare dopo il click nei prodotti dell'archivio */
.elementor-add-to-cart.elementor-product-simple .added_to_cart.wc-forward {
    display: none !important;
}

div.elementor-add-to-cart.elementor-product-simple .button.product_type_simple.added{
    background-color: var(--e-global-color-cfca2b3);
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.added::after{
    vertical-align: middle;
}

/* Scroll Margin Top per ancore */
@media screen and (max-width: 1024px){
    .ancora-margin-top{
        scroll-margin-top: 6em;
    }
}

/* Form B2b */
.b2b-registration-form.elementor-form{
    max-width:760px;
    margin:0 0 2.5rem 0;
}
.b2b-registration-form .elementor-form-fields-wrapper{
    padding:0;
}
.b2b-registration-form .elementor-field-group{
    margin-bottom:18px;
}
.b2b-registration-form .elementor-field-label{
    display:block;
    margin-bottom:8px;
    color: var(--e-global-color-c499e27);
    font-size:18px;
}
.b2b-registration-form .elementor-field-label:after{
    content: ' *';
    color:#c92b2b;
    margin-left:6px;
}
.b2b-registration-form .elementor-field{
    width:100%;
    background:#f7f4f1;
    border:1px solid rgba(0,0,0,0.06);
    padding:12px 14px;
    border-radius:2px;
    box-sizing:border-box;
    color:#0a2b25;
    font-size:16px;
}
.b2b-registration-form .elementor-field:focus{
    outline:none;
    box-shadow:0 0 0 3px rgba(201,43,43,0.08);
}
.b2b-registration-form .e-form__buttons{
    text-align:right;
    justify-content: end;
}
.b2b-registration-form .elementor-button{
    background:#b71f1f;
    color:#ffffff;
    border:none;
    padding:12px 28px;
    border-radius:2px;
    text-transform:uppercase;
    letter-spacing:1px;

}
.b2b-form-errors, .b2b-form-success{
    margin-bottom:18px;
    padding:12px 14px;
    border-radius:4px;
}
.b2b-form-errors{
    background:#fff2f2;
    color:#8a1b1b;
    border:1px solid #f0c6c6;
}
.b2b-form-success{
    background:#eef7ee;
    color:#114d2b;
    border:1px solid #c6e6c6;
}
@media (max-width:480px){
    .b2b-registration-form .elementor-button{width:100%; display:block;}
    .b2b-registration-form{padding:0 10px}
}

/* PAGINA CHECKOUT WOOCOMMERCE */

.checkout.woocommerce-checkout{
  margin-top: 2em;
}

#form-pagamento-2 .col-1,
#form-pagamento-2 .col-2{
  background-color: #fff;
  padding: 16px 30px;
  border-radius: 1em;
}

#form-pagamento-2 .col-1 .woocommerce-billing-fields h3,
#form-pagamento-2 .col-2 #order_review_heading{
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-size: /*var(--e-global-typography-primary-font-size)*/28px;
  font-weight: var(--e-global-typography-primary-font-weight);
  color: var(--e-global-color-primary);
}

#form-pagamento-2 .col-1 label,
#form-pagamento-2 .col-1 #ship-to-different-address span{
  color: var(--e-global-color-cfca2b3);
  font-family: var(--e-global-typography-accent-font-family), Sans-serif;
  font-size: /*var(--e-global-typography-accent-font-size)*/ 14px;
  font-weight: var(--e-global-typography-accent-font-weight);
  text-transform: var(--e-global-typography-accent-text-transform);
  line-height: var(--e-global-typography-accent-line-height);
}

#form-pagamento-2 .col-1 input,
#form-pagamento-2 .col-1 select,
#form-pagamento-2 .col-1 textarea,
#form-pagamento-2 .col-2 input{
  border: 0 !important;
  background-color: #f9fafa;
  border-radius:0;
  color: #69727d;
}

#form-pagamento-2 .col-1 .select2-selection.select2-selection--single{
  border: 0 !important;
  background-color: #f9fafa;
  color: #69727d;
  border-radius:0;
  font-family: var(--e-global-typography-3e7f905-font-family) !important;
  font-size: 1rem !important;
}

.select2-results .select2-results__options{
  font-family: var(--e-global-typography-3e7f905-font-family) !important;
  font-size: 1rem !important;
}

.woocommerce-form-coupon-toggle .woocommerce-info,
.woocommerce-form-coupon-toggle .woocommerce-info #text{
  border:none;
  border-radius: 1em;
  background: white;
  color: var(--e-global-color-cfca2b3);
  font-family: var(--e-global-typography-accent-font-family), Sans-serif;
  font-size: var(--e-global-typography-accent-font-size);
  /* padding: 1em;*/
  margin:0;
}

.woocommerce-form-coupon-toggle .woocommerce-info:before{
  font-family: "Font Awesome 5 Free";
  content: '\f0a3';
  font-weight: 900;
  color: var(--e-global-color-primary);
}

.woocommerce-form-coupon-toggle .woocommerce-info a{
  color: var(--e-global-color-cfca2b3);
}

.woocommerce-form-coupon-toggle .woocommerce-info a:hover{
  color: var(--e-global-color-accent);
}

#woocommerce-checkout-form-coupon.checkout_coupon.woocommerce-form-coupon{
  margin: 0;
  background: #fff;
  border: 0;
  border-radius: 1em;
}

.checkout_coupon.woocommerce-form-coupon .form-row.form-row-last button{
  background: var(--e-global-color-primary);
  border: none;
  color: #fff;
  font-size: 14px;
  font-family: var(--e-global-typography-accent-font-family), Sans-serif;
  font-weight: var(--e-global-typography-text-font-weight);
  padding: 16px;
}

#form-pagamento-2 .col-2 .shop_table.woocommerce-checkout-review-order-table th,
#form-pagamento-2 .col-2 .shop_table.woocommerce-checkout-review-order-table td,
#form-pagamento-2 .col-2 .shop_table.woocommerce-checkout-review-order-table{
  border:none;
  background-color: #fff;
}

#form-pagamento-2 .col-2 .shop_table.woocommerce-checkout-review-order-table th,
#form-pagamento-2 .col-2 .shop_table.woocommerce-checkout-review-order-table .cart-subtotal td,
#form-pagamento-2 .col-2 .shop_table.woocommerce-checkout-review-order-table .order-total .woocommerce-Price-amount.amount{
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
  font-size: var(--e-global-typography-text-font-size);
  font-weight: var(--e-global-typography-text-font-weight) !important;
  line-height: var(--e-global-typography-text-line-height);
  color: var(--e-global-color-accent);
}

#form-pagamento-2 .col-2 .shop_table.woocommerce-checkout-review-order-table .cart_item{
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
  font-size: var(--e-global-typography-text-font-size);
  font-weight: var(--e-global-typography-text-font-weight);
  line-height: var(--e-global-typography-text-line-height);
  color: var(--e-global-color-primary);

}

#form-pagamento-2 .col-2 #shipping_method label{
  color: var(--e-global-color-cfca2b3);
  font-weight: var(--e-global-typography-text-font-weight) !important;
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
  text-transform: uppercase;
}

#form-pagamento-2 .col-2 .woocommerce-checkout-payment {
  background-color: #fff;
}

#form-pagamento-2 .col-2 .payment_box.payment_method_xpay,
#form-pagamento-2 .col-2 .payment_box.payment_method_bacs{
  background-color: #f9fafa;
  color: var(--e-global-color-cfca2b3);
}

#form-pagamento-2 .woocommerce-checkout #payment div.payment_box::before{
  border: #f9fafa; 
}

#form-pagamento-2 .col-2 .wc_payment_methods.payment_methods.methods label{
  text-transform: uppercase;
}

#form-pagamento-2 .col-2 .woocommerce-privacy-policy-text{
  color: var(--e-global-color-cfca2b3);
}

#form-pagamento-2 .col-2 .woocommerce-privacy-policy-text a:hover{
  color: var(--e-global-color-cfca2b3);
}

#form-pagamento-2 .col-2 #payment #place_order{
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
  font-size: var(--e-global-typography-text-font-size);
  font-weight: var(--e-global-typography-text-font-weight);
  line-height: var(--e-global-typography-text-line-height);
  background-color: var(--e-global-color-accent);
  width: 100%;
}

#form-pagamento-2 .woocommerce form .form-row:not(#billing_address_1_field){
  margin: 0 0 15px;
}

#form-pagamento-2 .woocommerce form .form-row label{
  margin-bottom:10px;
}

#form-pagamento-2 .woocommerce-checkout #payment ul.payment_methods li[class*="payment_method_xpay"] label img{
  width:25px;
}

@media screen and (max-width: 768px){
  #form-pagamento-2 .woocommerce form .form-row,
  #form-pagamento-2 .woocommerce form .form-row.form-row-last button{
    width: 100%;
  }

  /* 1. Allinea il pallino e la label sulla stessa riga */
  #form-pagamento-2 li.wc_payment_method.payment_method_xpay {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
  }

  /* 2. Gestisce lo spazio tra il pallino e il testo */
  #form-pagamento-2 li.wc_payment_method.payment_method_xpay input[type="radio"] {
    margin-right: 12px !important;
    margin-top: 0 !important; /* Rimuove disallineamenti verticali */
  }

  /* 3. Mantiene il testo e l'icona della carta uniti e centrati */
  #form-pagamento-2 li.wc_payment_method.payment_method_xpay label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px;
    flex: 1; /* Occupa lo spazio rimanente sulla riga */
  }

  /* 4. Forza il box di descrizione ad andare sotto */
  #form-pagamento-2 li.wc_payment_method.payment_method_xpay .payment_box {
    width: 100% !important;
    margin-left: 28px !important; /* Allinea il testo descrittivo sotto la label, non sotto il pallino */
    margin-top: 10px !important;
  }
}

/* Form Registrazione Cliente */

#user-registration-form .elementor-field-label{
  color: var(--e-global-color-primary);
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
  font-size: var(--e-global-typography-text-font-size);
  font-weight: var(--e-global-typography-text-font-weight);
  line-height: var(--e-global-typography-text-line-height);
}

#user-registration-form input:not([type='checkbox']){
  background-color: #fff;
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
  font-size: var(--e-global-typography-text-font-size);
  font-weight: var(--e-global-typography-text-font-weight);
  line-height: var(--e-global-typography-text-line-height);
  border-radius: 3px;
  padding: .5rem 1rem;
  transition: all .3s;
  flex-grow: 1;
  max-width: 100%;
  vertical-align: middle;
  width: 100%;
}

#user-registration-form .elementor-field-group{
  margin-bottom: 25px;
}

#user-registration-form button{
  background-color: var(--e-global-color-primary);
  color: #fff;
  border: none;
}

#registration-info-tips{
  background-color: #f9fafa;
  color: var(--e-global-color-cfca2b3);
  padding: 12px; 
  margin-bottom: 20px; 
  font-size: 0.8em;
  border-radius: 4px;
}

#registration-info-tips a{
  color: var(--e-global-color-accent);
}


/* Pagina Recap Ordine */

.woocommerce-order-received .woocommerce-thankyou-order-received{
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-size: 28px;
  font-weight: var(--e-global-typography-primary-font-weight);
  color: var(--e-global-color-primary);
}

.woocommerce-order-received .woocommerce-order-details__title{
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-size: 28px;
  font-weight: var(--e-global-typography-primary-font-weight);
  color: var(--e-global-color-primary);  
}

.woocommerce-order-received .woocommerce-table.woocommerce-table--custom-fields td{
  text-transform: capitalize;
}

.woocommerce-order-received .woocommerce-table td{
  width:50%;
}

/* Pagina Account */

/* Ordini */

.woocommerce .woocommerce-MyAccount-content .woocommerce-orders-table.woocommerce-MyAccount-orders .woocommerce-button.button.view{
  background-color: var(--e-global-color-primary);
  color: #fff;
  border: none;
  border-radius:0px;
}

.woocommerce .woocommerce-MyAccount-content .woocommerce-table.woocommerce-table--custom-fields.shop_table.custom-fields{
  background-color: #fff;
  background-color: #fff;
  border-color: #d5d8dc;
  border-radius: 3px;
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  padding: 16px 30px 3px 30px;
}

.woocommerce .woocommerce-MyAccount-content .woocommerce-table.woocommerce-table--custom-fields.shop_table.custom-fields td,
.woocommerce .woocommerce-MyAccount-content .woocommerce-table.woocommerce-table--custom-fields.shop_table.custom-fields th {
  font-family: var(--e-global-typography-1376c9f-font-family), Sans-serif;
  font-size: var(--e-global-typography-1376c9f-font-size);
  font-weight: var(--e-global-typography-1376c9f-font-weight);
  line-height: var(--e-global-typography-1376c9f-line-height);
  text-transform:capitalize;
}

.woocommerce .woocommerce-MyAccount-content .woocommerce-table.woocommerce-table--custom-fields.shop_table.custom-fields th{
  border:none;
}

.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-table--order-details.shop_table td,
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-table--order-details.shop_table th,
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-table--custom-fields.shop_table td,
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-table--custom-fields.shop_table th{
  width: 50%;
}

.e-my-account-tab.e-my-account-tab__orders .woocommerce-MyAccount-content-wrapper-no-data .woocommerce-info{
  background-color: #fff;
  border-radius: 1em;
  color: var(--e-global-color-cfca2b3);
  font-family: var(--e-global-typography-accent-font-family), Sans-serif;
  font-size: var(--e-global-typography-accent-font-size);
  border: none;
}

.e-my-account-tab.e-my-account-tab__orders .woocommerce-MyAccount-content-wrapper-no-data .woocommerce-info:before{
  font-family: "Font Awesome 5 Free";
  content: '\f07a';
  font-weight: 900;
  color: var(--e-global-color-primary);
}

.e-my-account-tab.e-my-account-tab__orders .woocommerce-MyAccount-content-wrapper-no-data .woocommerce-info a,
.e-my-account-tab.e-my-account-tab__orders .woocommerce-MyAccount-content-wrapper-no-data .woocommerce-info a:hover{
  background-color: var(--e-global-color-primary) !important;
  color: #fff;
  border: none;
  border-radius:0px;
  font-family: var(--e-global-typography-3e7f905-font-family), Sans-serif;
  font-size: var(--e-global-typography-3e7f905-font-size);
  font-weight: var(--e-global-typography-3e7f905-font-weight);
  text-transform: var(--e-global-typography-3e7f905-text-transform);
}

/* Pagina carrello */

.woocommerce-cart .cart-empty.woocommerce-info{
  background-color: #fff;
  border-radius: 1em;
  color: var(--e-global-color-cfca2b3);
  font-family: var(--e-global-typography-accent-font-family), Sans-serif;
  font-size: var(--e-global-typography-accent-font-size);
  border: none;
}

.woocommerce-cart .cart-empty.woocommerce-info:before{
  font-family: "Font Awesome 5 Free";
  content: '\f07a';
  font-weight: 900;
  color: var(--e-global-color-primary);
}

.woocommerce-cart .button.wc-backward{
  background-color: var(--e-global-color-c499e27);
  font-family: var(--e-global-typography-3e7f905-font-family), Sans-serif;
  font-size: var(--e-global-typography-3e7f905-font-size);
  font-weight: var(--e-global-typography-3e7f905-font-weight);
  text-transform: var(--e-global-typography-3e7f905-text-transform);
  line-height: var(--e-global-typography-3e7f905-line-height);
  fill: var(--e-global-color-secondary);
  color: var(--e-global-color-secondary);
  border-style: none;
  padding: 1em 1em 1em 1em;
}

.woocommerce-cart .button.wc-backward:hover{
  background-color: var(--e-global-color-c499e27);
  font-family: var(--e-global-typography-3e7f905-font-family), Sans-serif;
  font-size: var(--e-global-typography-3e7f905-font-size);
  font-weight: var(--e-global-typography-3e7f905-font-weight);
  text-transform: var(--e-global-typography-3e7f905-text-transform);
  line-height: var(--e-global-typography-3e7f905-line-height);
  fill: var(--e-global-color-secondary);
  color: var(--e-global-color-accent);
  border-style: none;
  padding: 1em 1em 1em 1em;
}