
important/*
Theme Name:   xstore-child
Theme URI:    https://xstore.8theme.com
Description:  XStore is a multi-purpose theme that offers the ultimate WordPress and WooCommerce synergy, providing a comprehensive, all-in-one solution.
Author:       8theme
Author URI:   https://www.8theme.com
Template:     xstore
Version:      1.0
Text Domain:  xstore-child
Tags: e-commerce, two-columns, left-sidebar, right-sidebar, custom-background, custom-colors, custom-header, custom-menu, custom-logo, featured-images, full-width-template, threaded-comments, accessibility-ready, rtl-language-support, footer-widgets, sticky-post, theme-options, translation-ready, ecommerce, woocommerce, shop, elementor, business, corporate, blog, news, light, dark
*/

/* =========================================================
   CASO 1: CARD CON QUANTITA'
   Struttura finale desiderata:
   [ quantity ] [ add to cart + quick view ]
   ========================================================= */

/* =========================================================
   QUICK VIEW INLINE - XSTORE / WOOCOMMERCE
   Obiettivo:
   - NON rompere il layout della quantità
   - avere i pulsanti a destra
   - dare al quick view un vero aspetto da bottone
   ========================================================= */


/* =========================
   CASO 1: con quantità
   ========================= */



/* Il wrapper principale diventa una riga */
.etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  width: 100% !important;
  flex-wrap: nowrap !important;
}

/* NON alteriamo troppo la quantity: la lasciamo quasi nativa */
.etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline > .quantity {
  flex: 0 0 auto !important;
  margin: 0 !important;
}

/* Il gruppo di destra contiene cart + quickview */
.etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline > .x-qv-actions {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-left: auto !important;
  flex: 0 0 auto !important;
}



/* Quick view con vero aspetto button */
.etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline > .x-qv-actions > .x-qv-inline {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  min-width: 38px  !important;
  height: 38px  !important;
  min-height: 38px  !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
  flex: 0 0 38px !important;
  cursor: pointer !important;

  /* Reset comportamento overlay */
  position: static !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;

  /* Aspetto bottone */
  background-color: #243F2F !important;
  border: 1px solid #d9d9d9 !important;
  border-radius: 4px !important;
  color: white !important;
  box-shadow: none !important;
}

/* Hover quickview */
.etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline > .x-qv-actions > .x-qv-inline:hover {
  background-color: #e8e8e8 !important;
}

/* SVG interne */
.etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline > .x-qv-actions > .etheme-product-grid-button svg,
.etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline > .x-qv-actions > .x-qv-inline svg {
  width: 18px !important;
  height: 18px !important;
}

/* Il testo screen-reader non deve influenzare il layout */
.etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline > .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}


/* =========================
   FIX quantity: bordi e allineamento
   Tocchiamo solo il necessario
   ========================= */

.etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline .quantity .minus,
.etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline .quantity .plus,
.etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline .quantity .qty {
  margin: 0 !important;
}

/* Se XStore introduce micro-spaziature strane */
.etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline .quantity {
  white-space: nowrap !important;
}


/* =========================
   CASO 2: senza quantità
   ========================= */



.etheme-product-grid-content .x-qv-actions-row > .x-qv-inline {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
  cursor: pointer !important;

  /* Reset overlay */
  position: static !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;

  /* Stile bottone */
  background-color: #f1f1f1 !important;
  border: 1px solid #d9d9d9 !important;
  border-radius: 4px !important;
  color: inherit !important;
  box-shadow: none !important;
}

.etheme-product-grid-content .x-qv-actions-row > .x-qv-inline:hover {
  background-color: #e8e8e8 !important;
}

.etheme-product-grid-content .x-qv-actions-row > .x-qv-inline svg {
  width: 18px !important;
  height: 18px !important;
}


.etheme-product-grid-content{
	padding-bottom:20px !important;
}

.etheme-product-grid-content div.quantity > span{
	border-top:none !important;
}

.etheme-product-grid-item .quantity-wrapper.x-qv-qty-inline > .quantity input.qty {
	width:100% !important;
}


/* =========================
   Mobile piccolo
   ========================= */
@media (max-width: 767px) {
  .etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline {
    gap: 30px !important;
  }

  .etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline > .x-qv-actions {
    gap: 6px !important;
  }

  .etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline > .x-qv-actions > .etheme-product-grid-button,
  .etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline > .x-qv-actions > .x-qv-inline,
  .etheme-product-grid-content .x-qv-actions-row > .x-qv-inline {
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
  }
}

@media (max-width: 767px) {
    .etheme-product-grid-item .quantity-wrapper.x-qv-qty-inline > .quantity {
        width: 95px !important;
    }
}

/*CARD PRODOTTO*/

.etheme-product-grid-image img{
    margin: auto !important;
    width: 100% !important;
}


/** HOME **/
#cliv-category-section .banner, .elementor-5 .elementor-element.elementor-element-298c5a27 .banner , .elementor-5 .elementor-element.elementor-element-433471e8 .banner , .elementor-5 .elementor-element.elementor-element-6b62a6f .banner, .elementor-5 .elementor-element.elementor-element-ce0040d .banner{
   border-radius: 3px !important;
}

#cliv-banner-home .elementor-container {
  align-items: normal !important;
}


/**BLOG **/

.comment-respond{display:none;}

/*Single post*/
.single-blog-page {
    padding: 48px 20px 72px;
    background: #f8f5f0;
}

.single-blog-container {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
}

.blog-breadcrumbs {
    margin-bottom: 22px;
    font-size: 16px;
    color: #6f7f7b;
}

.blog-breadcrumbs ol {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    padding: 0;
    margin: 0;
}

.blog-breadcrumbs li {
    display: flex;
    align-items: center;
}

.blog-breadcrumbs li:not(:last-child)::after {
    content: "/";
    margin-left: 8px;
    color: rgba(30, 72, 68, 0.35);
}

.blog-breadcrumbs a {
    color: inherit;
    text-decoration: none;
}

.blog-breadcrumbs a:hover {
    color: #1E4844;
    text-decoration: underline;
}

.blog-breadcrumbs li[aria-current="page"] {
    color: #1E4844;
    font-weight: 600;
}

.single-blog-card {
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 18px 50px rgba(30, 72, 68, 0.10);
}

.blog-hero-image {
    width: 100%;
    aspect-ratio: 16 / 7;
    overflow: hidden;
    background: #eee;
}

.blog-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.blog-header-wrap {
    padding: 46px 56px 22px;
}

.blog-meta-top {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-bottom: 18px;
}

.blog-eyebrow,
.blog-category,
.blog-prodotti-eyebrow {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 7px 13px;
    border-radius: 999px;
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.blog-eyebrow,
.blog-prodotti-eyebrow {
    color: #1E4844;
    background: #FDCC4C;
}

.blog-category {
    color: #1E4844;
    background: rgba(30, 72, 68, 0.08);
}

.blog-header h1 {
    max-width: 920px;
    margin: 0;
    color: #1E4844;
    font-size: clamp(34px, 5vw, 62px);
    line-height: 1.04;
    letter-spacing: -0.04em;
}

.blog-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-top: 18px;
    color: #657875;
    font-size: 15px;
}

.blog-meta span:not(:last-child)::after {
    content: "•";
    margin-left: 18px;
    color: rgba(30, 72, 68, 0.35);
}

.blog-excerpt {
    max-width: 780px;
    margin: 24px 0 0;
    color: #435b58;
    font-size: 20px;
    line-height: 1.55;
}

.blog-body {
    padding: 18px 56px 56px;
}

.blog-content {
    max-width: 820px;
    color: #2f3f3d;
    font-size: 18px;
    line-height: 1.8;
}

.blog-content p {
    margin: 0 0 1.35em;
}

.blog-content h2,
.blog-content h3,
.blog-content h4 {
    color: #1E4844;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.blog-content h2 {
    margin-top: 2em;
    font-size: 34px;
}

.blog-content h3 {
    margin-top: 1.8em;
    font-size: 26px;
}

.blog-content a {
    color: #1E4844;
    font-weight: 700;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}

.blog-content a:hover {
    color: #143330;
}

.blog-content img {
    max-width: 100%;
    height: auto;
    border-radius: 20px;
}

.blog-content blockquote {
    margin: 36px 0;
    padding: 26px 30px;
    border-left: 4px solid #FDCC4C;
    background: rgba(253, 204, 76, 0.16);
    border-radius: 0 18px 18px 0;
    color: #1E4844;
    font-size: 21px;
    line-height: 1.6;
}

.blog-prodotti-correlati {
    margin-top: 64px;
    padding-top: 46px;
    border-top: 1px solid rgba(30, 72, 68, 0.14);
}

.blog-prodotti-header {
    max-width: 760px;
    margin-bottom: 28px;
}

.blog-prodotti-eyebrow {
    margin-bottom: 12px;
}

.blog-prodotti-header h2 {
    margin: 0;
    color: #1E4844;
    font-size: clamp(28px, 4vw, 44px);
    line-height: 1.1;
    letter-spacing: -0.03em;
}

.blog-prodotti-header p {
    margin: 12px 0 0;
    color: #435b58;
    font-size: 17px;
    line-height: 1.6;
}

.blog-prodotti-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.blog-prodotto-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid rgba(30, 72, 68, 0.14);
    border-radius: 4px;
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.blog-prodotto-card:hover {
    transform: translateY(-4px);
    border-color: rgba(253, 204, 76, 0.95);
    box-shadow: 0 18px 35px rgba(30, 72, 68, 0.14);
}

.blog-prodotto-card__media {
    display: block;
    text-decoration: none;
}

.blog-prodotto-card__image {
    aspect-ratio: 1 / 0.82;
    overflow: hidden;
    background: rgba(30, 72, 68, 0.06);
}

.blog-prodotto-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.35s ease;
}

.blog-prodotto-card:hover .blog-prodotto-card__image img {
    transform: scale(1.04);
}

.blog-prodotto-card__body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 22px;
}

.blog-prodotto-card__body h3 {
    margin: 0 0 10px;
    font-size: 20px;
    line-height: 1.25;
    letter-spacing: -0.02em;
}

.blog-prodotto-card__body h3 a {
    color: #1E4844;
    text-decoration: none;
}

.blog-prodotto-card__body h3 a:hover {
    color: #143330;
}

.blog-prodotto-card__price {
    margin-bottom: 18px;
    color: #1E4844;
    font-size: 18px;
    font-weight: 800;
}

.prodotto-card__cart {
    margin-top: auto;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 48px;
    padding: 13px 20px;
    border-radius: 4px;
    background: #FDCC4C;
    color: #1E4844 !important;
    font-size: 15px;
    font-weight: 800;
    line-height: 1;
    text-align: center;
    text-decoration: none !important;
    border: 1px solid #FDCC4C;
    cursor: pointer;
    transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
}

.prodotto-card__cart:hover {
    transform: translateY(-2px);
    background: #1E4844;
    border-color: #1E4844;
    color: #fff !important;
    box-shadow: 0 10px 22px rgba(30, 72, 68, 0.24);
}

.prodotto-card__cart--secondary {
    background: transparent;
    color: #1E4844 !important;
    border-color: #1E4844;
}

.prodotto-card__cart--secondary:hover {
    background: #1E4844;
    border-color: #1E4844;
    color: #fff !important;
}

@media (max-width: 980px) {
    .blog-header-wrap,
    .blog-body {
        padding-left: 32px;
        padding-right: 32px;
    }

    .blog-prodotti-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .single-blog-page {
        padding: 28px 14px 48px;
    }

    .single-blog-card {
 	   border-radius: 4px;
    }

    .blog-hero-image {
        aspect-ratio: 4 / 3;
    }

    .blog-header-wrap,
    .blog-body {
        padding-left: 22px;
        padding-right: 22px;
    }

    .blog-header-wrap {
        padding-top: 32px;
    }

    .blog-body {
        padding-bottom: 34px;
    }

    .blog-excerpt {
        font-size: 18px;
    }

    .blog-content {
        font-size: 17px;
    }

    .blog-content h2 {
        font-size: 28px;
    }

    .blog-prodotti-grid {
        grid-template-columns: 1fr;
    }

    .blog-meta span:not(:last-child)::after {
        margin-left: 10px;
    }
}


/** MEGAMENU /**

/*Salumeria */
.cliv-megamenu-salumeria .badge-spedizione {display:none;}

/** generic **/
.page-heading{
	background-image: none !important;
}


.elementor-40377 .elementor-element.elementor-element-147ba495 .etheme-product-list-title a, .elementor-40941 .elementor-element.elementor-element-a839eec .etheme-product-list-title a {
    display: block;
    height: auto !important;
    line-height: 3ex;
    overflow: auto !important;
    color: #243F2F;
}


.woocommerce-form-login-toggle .woocommerce-info:before, .woocommerce-form-coupon-toggle .woocommerce-info:before {
    font-family: "xstore-icons" !important;
}

body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info:before,body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before {
    font-size: 17px !important;
    transform: none !important;
}

/*Whatsapp badge*/
#ht-ctc-chat { 
   bottom: 70px !important;
}

/*Rimuovo text-trasform nei pulsanti dei banner*/
.banner-button, .elementor-button{
    text-transform: none !important;
}

/*Bottone aggiungi al carrello quickview*/
.single_add_to_cart_button{
	background-color: #fdcc4c !important;
}

/** PRODUCT PAGE **/
.single-product .woocommerce-variation-price bdi{
	font-size: 25px !important;
}

.single-product .variations{
	margin-bottom:0 !important;
}

.single-product .variations .label,.single-product .variations .value{
	padding-bottom:0 !important;
}

.single-product p.price{
	font-size:28px !important;
}

@media (max-width: 767px) {
  [data-elementor-device-mode="mobile"] .etheme-product-hover-mask3 .footer-inner .show-quickly {
    display: inline-flex !important; /* oppure block / inline-block */
  }
}


/*.single-product .cwginstock-subscribe-form .panel-heading {
    background-color: #243F2F !important;
    border-color: #243F2F !important;
}

.single-product .cwginstock-subscribe-form .panel-primary{
    border-color: #243F2F !important;
}
*/

.select2-container {
    z-index: 5 !important;
}

/* Waitlist in product page */
.single-product .cwginstock-subscribe-form .panel-heading {
    background-color: #243F2F; !important;
    border-color: #243F2F; !important;
}

.single-product .cwgstock_submit :hover{
	background-color:#fdcc4c !important;
}

/**LOADER**/
/** LOADER PREZZI **/

/* Prezzo alto */
.elementor-widget-woocommerce-product-etheme_price p.price {
  position: relative;
  transition: opacity .2s ease;
}

/* Prezzo basso: wrapper stabile + prezzo interno */
.woocommerce-variation-price {
  transition: opacity .2s ease;
}

.woocommerce-variation-price .price {
  position: relative;
  display: inline-block; /* importante: ancora lo spinner vicino al prezzo */
}

/* Stato loading */
.elementor-widget-woocommerce-product-etheme_price p.price.is-price-loading,
.woocommerce-variation-price.is-price-loading {
  opacity: .45;
  pointer-events: none;
}

/* Spinner PREZZO ALTO */
.elementor-widget-woocommerce-product-etheme_price p.price.is-price-loading::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 8px;
  vertical-align: -2px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: etPriceSpin .7s linear infinite;
  opacity: .9;
}

/* Spinner PREZZO BASSO:
   la classe è sul wrapper, ma il pseudo-elemento è sul .price interno */
.woocommerce-variation-price.is-price-loading .price::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -22px; /* distanza dal prezzo, NON dal wrapper */
  width: 14px;
  height: 14px;
  margin-top: -7px; /* centra verticalmente senza usare transform */
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: etPriceSpin .7s linear infinite;
  opacity: .9;
}

/* Un po’ di spazio per evitare tagli/layout stretti */
.woocommerce-variation-price.is-price-loading .price {
  padding-right: 24px;
}

@keyframes etPriceSpin {
  to { transform: rotate(360deg); }
}


/* Nascondo secondo prezzo */
/* Nascondi SEMPRE il secondo prezzo dentro il blocco variazione (single product) */
.single-product .single_variation_wrap .woocommerce-variation-price,
.single-product form.variations_form .woocommerce-variation-price,
.single-product .woocommerce-variation.single_variation .woocommerce-variation-price {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Nascondi eventuale prezzo storico dentro il blocco variazione */
.single-product .single_variation_wrap .woocommerce-variation .pph-lowest-price {
  display: none !important;
}


/** QUICKVIEW **/

/** Ajax quick-view **/
.et-mini-content .add_to_cart_button{
	background-color: #FDCC4C !important;
}

.et-mini-content .product-name a, .et-mini-content .price{
	color: #243F2F !important;
}

/* Quickview i*/
/* Waitlist in product page */
.et-mini-content .cwginstock-subscribe-form .panel-heading {
    background-color: #243F2F; !important;
}

.et-mini-content .cwgstock_submit :hover{
	background-color:#fdcc4c !important;
}

.cwginstock-subscribe-form .panel-primary {
	    border-color: #243F2F; !important;
}





/*
body[data-elementor-device-mode=mobile] .etheme-product-hover-mask3 footer {
    right: auto;
    bottom: 50%;
    width: 100%;
    transform: translateY(50%);
}

body[data-elementor-device-mode=mobile] .etheme-product-hover-mask3 .footer-inner {
    width: 100%;
    grid-auto-flow: dense;
    --items-gap: 10px;
    --hover-item-border-radius: 50%;
}
*/


/** SELECT QUICKVIEW **/
/* THWEPO select in off-canvas */
.etheme-off-canvas .thwepo-select-field,
.etheme-elementor-off-canvas .thwepo-select-field {
  width: 100%;
}

.etheme-off-canvas select.thwepo-enhanced-multi-select,
.etheme-elementor-off-canvas select.thwepo-enhanced-multi-select {
  width: 100% !important;
  min-height: 46px !important;
  box-sizing: border-box;
}



/*SELECT 2*/

/* Quickview: Select2 MULTI più alta e full-width */
.et-mini-content.et-popup-content .select2-container{
  min-width: 220px; !important;
  width: 100% !important;
}

.et-mini-content.et-popup-content .select2-container--default .select2-selection--multiple{
  min-width: 220px; !important;
  min-height: 44px !important;      /* aumenta qui se vuoi */
  padding: 6px 10px !important;
  border-radius: 6px !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
}

/* Centra e rende “visibile” l’input di ricerca */
.et-mini-content.et-popup-content .select2-container--default .select2-selection--multiple .select2-search--inline{
  margin: 0 !important;
}

.et-mini-content.et-popup-content .select2-container--default .select2-selection--multiple .select2-search__field{
  width: 8em !important;            /* evita il "quadratino" piccolo */
  min-width: 8em !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
}

/* Tag selezionati (chips) */
.et-mini-content.et-popup-content .select2-container--default .select2-selection--multiple .select2-selection__choice{
  margin: 3px 6px 3px 0 !important;
  padding: 2px 8px !important;
  border-radius: 999px !important;
}

/* Dropdown sopra tutto nel popup */
.select2-container--open{
  z-index: 999999 !important;
}




/* SHOP  */

.bapf_term_a2i0s8deliveryi1s10spedizione {
 display:none !important;
}

/*Filtri*/
.bapf_body{
	font-size: 18px !important;
}
.archive .bapf_body input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
}
.archive .etheme_product_status_filter{
	font-size: 18px !important;
}

.archive .etheme-product-status-filter a:before {
    content: '';
    width: var(--widget-checkbox-size, 18px);
    height: var(--widget-checkbox-size, 18px);
	border: 1px solid #8c8c8c !important;
	background-color: white !important;
}

/* Posizionamento base: in basso a sinistra e angoli arrotondati */
.badge-spedizione {
    position: absolute;
    bottom: 10px;
    left: 10px;
    z-index: 9999 !important; 
    pointer-events: none; 
    display: inline-block;
    border-radius: 12px; /* Angoli stile X-Store */
    font-family: inherit;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.3);
}

/* Dimensioni per la GRIGLIA (Piccole) */
.badge-piccolo {
    padding: 4px 8px;
    font-size: 10px; 
}

/* Dimensioni per il SINGOLO PRODOTTO (Grandi) */
.badge-grande {
    padding: 6px 12px;
    font-size: 12px;
}

/* Colore: Palermo (Giallo richiesto con testo nero) */
.badge-palermo {
    background-color: #fdcc4c !important; 
    color: #000000 !important; 
}

/* Colore: Italia (Blu con testo bianco) */
.badge-italia {
    background-color: #1E4844 !important; 
    color: #ffffff !important; 
}
.badge-italia svg, .badge-italia svg path {
    fill: currentColor;
}

/* Base per mantenere i badge dentro i bordi dell'immagine in X-Store */
.etheme-product-grid-image a, 
.woocommerce-product-gallery__image {
    position: relative;
    display: block;
}

/* Nasconde i badge in tutte le miniature piccole, widget, carrello e liste */
.widget_shopping_cart .badge-spedizione,
.widget_products .badge-spedizione,
.product_list_widget .badge-spedizione,
.etheme-mini-cart .badge-spedizione,
.cart-widget-products .badge-spedizione,
.woocommerce-mini-cart .badge-spedizione,
.product-thumbnails .badge-spedizione,
.flex-control-nav .badge-spedizione,
.flex-control-thumbs .badge-spedizione,
.woocommerce-product-gallery .flex-control-thumbs .badge-spedizione,
.etheme-product-list-item .badge-spedizione {
    display: none !important;
}

/* Badge in linea per il carrello e checkout (si posiziona come un testo normale) */
.badge-spedizione-inline {
    display: inline-block;
    margin-top: 6px; /* Dà un po' di respiro dal titolo del prodotto */
    border-radius: 12px;
    font-family: inherit;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
}

/* Fix per X-Store: impedisce che i link nel carrello colorino di blu il testo dei badge */
.product-details a + .badge-spedizione-inline {
    pointer-events: none;
}

/* =========================
   SHOP CARD – CTA + QTY + QUICKVIEW (MOBILE FIX)
   ========================= */

/* 1) Variante con quantity-wrapper (prodotti semplici) */
.etheme-product-grid-item .etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline{
  display: grid !important;
  grid-template-columns: 92px minmax(0, 1fr) 44px; /* qty | CTA | quickview */
  align-items: center;
  gap: 30px;
  width: 100%;
}

/* qty (minus/input/plus) */
.etheme-product-grid-item .quantity-wrapper.x-qv-qty-inline > .quantity{
  grid-column: 1;
  margin: 0 !important;
  width: 110px;
  display: grid;
  grid-template-columns: 28px 1fr 28px;
  height: 44px;
  border-top: 1px solid rgba(0,0,0,.15);
  border-bottom: 1px solid rgba(0,0,0,.15);
  border-radius: 0;
  overflow: hidden;
}

/* fix click area */
.etheme-product-grid-item .quantity-wrapper.x-qv-qty-inline > .quantity .minus,
.etheme-product-grid-item .quantity-wrapper.x-qv-qty-inline > .quantity .plus{
  display: flex;
  align-items: center;
  justify-content: center;
  height: 44px;
}

/* input */
.etheme-product-grid-item .quantity-wrapper.x-qv-qty-inline > .quantity input.qty{
  height: 44px !important;
  line-height: 44px !important;
  padding: 0 !important;
  text-align: center;
  border: 0 !important;
  background: transparent !important;
  font-size: 17px;
  margin-left:5px;
  min-width: 100%;
  width:100% !important;
}

/* CTA (carrello) */
.etheme-product-grid-item .quantity-wrapper.x-qv-qty-inline > .etheme-product-grid-button{
  grid-column: 2;
  height: 35px !important;
  min-height: 35px !important;
  width: 100% !important;
  margin: 0 !important;

  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  border-radius: 10px !important;
  padding: 0 12px !important;
  white-space: nowrap;
}

/* icona dentro CTA */
.etheme-product-grid-item .quantity-wrapper.x-qv-qty-inline > .etheme-product-grid-button svg{
  margin-left: 0;
}

/* Quickview (pulsante verde a destra) */
.etheme-product-grid-item .quantity-wrapper.x-qv-qty-inline > .show-quickly.x-qv-inline{
  grid-column: 3;
  width: 37px !important;
  height: 37px !important;
  min-width: 37px !important;
  min-height: 37px !important;

  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  background: #243F2F !important;
  border-radius: 3px !important;
  color: #fff !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* icona quickview */
.etheme-product-grid-item .quantity-wrapper.x-qv-qty-inline > .show-quickly.x-qv-inline svg{
  width: 18px;
  height: 18px;
  display: block;
  fill: currentColor;
  opacity: 1;
}

/* 2) Variante senza quantity (SCEGLI) */
.etheme-product-grid-item .etheme-product-grid-content .x-qv-actions-row{
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 44px; /* CTA | quickview */
  align-items: center;
  gap: 10px;
  width: 100%;
}

/* CTA scegli */
.etheme-product-grid-item .etheme-product-grid-content .x-qv-actions-row .etheme-product-grid-button{
  grid-column: 1;
  height: 37px !important;
  min-height: 37px !important;
  width: 100% !important;
  margin: 0 !important;
  font-size: 14px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  border-radius: 3px !important;
  padding: 0 10px !important;
  white-space: nowrap;
}

/* Quickview verde nella riga azioni */
.etheme-product-grid-item .etheme-product-grid-content .x-qv-actions-row .show-quickly.x-qv-inline{
  grid-column: 2;
  width: 37px !important;
  height: 37px !important;
  min-width: 37px !important;
  min-height: 37px !important;

  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  background: #243F2F !important;
  border-radius: 3px !important;
  color: #fff !important;

  margin: 0 !important;
  padding: 0 !important;
}

.etheme-product-grid-item .etheme-product-grid-content .x-qv-actions-row .show-quickly.x-qv-inline svg{
  width: 18px;
  height: 18px;
  display: block;
  fill: currentColor;
}

/* 3) Micro-fix mobile: riduci gap e larghezze */
@media (max-width: 767px){
  .etheme-product-grid-item .etheme-product-grid-content .quantity-wrapper.x-qv-qty-inline{
    grid-template-columns: 86px minmax(0, 1fr) 44px;
    gap: 30px;
  }
  .etheme-product-grid-item .quantity-wrapper.x-qv-qty-inline > .quantity{
    width: 60px;
  }
}

/* 4) Assicura che non ci siano stili “overlay” residui sul quickview */
.etheme-product-grid-item .show-quickly.x-qv-inline{
  position: static !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  box-shadow: none !important;
}


/*** CHECKOUT ***/

/*Alert minimo d'ordine*/
/* Avviso minimo ordine - WooCommerce cart/checkout */
.woocommerce .clivup-min-order-notice,
.clivup-min-order-notice {
	display: grid !important;
	grid-template-columns: 28px 1fr !important;
	gap: 10px !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 8px 0 0 !important;
	padding: 14px !important;
	border: 1px solid rgba(217, 130, 0, 0.22) !important;
	border-radius: 14px !important;
	background: #fff9ef !important;
	color: #2b2b2b !important;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.04) !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

/* Reset allineamenti ereditati dalla tabella checkout */
.woocommerce table.shop_table .clivup-min-order-notice,
.woocommerce-checkout-review-order-table .clivup-min-order-notice,
#order_review .clivup-min-order-notice {
	text-align: left !important;
	float: none !important;
	clear: both !important;
}

/* Icona */
.woocommerce .clivup-min-order-notice__icon,
.clivup-min-order-notice__icon {
	width: 28px !important;
	height: 28px !important;
	border-radius: 999px !important;
	background: #d98200 !important;
	color: #ffffff !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	box-shadow: 0 6px 14px rgba(217, 130, 0, 0.22) !important;
}

/* Contenuto */
.woocommerce .clivup-min-order-notice__content,
.clivup-min-order-notice__content {
	display: block !important;
	min-width: 0 !important;
	text-align: left !important;
}

/* Titolo */
.woocommerce .clivup-min-order-notice__title,
.clivup-min-order-notice__title {
	display: block !important;
	margin: 1px 0 5px !important;
	padding: 0 !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	color: #1f1f1f !important;
	text-align: left !important;
}

/* Testo */
.woocommerce .clivup-min-order-notice__text,
.clivup-min-order-notice__text {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	color: #4a4a4a !important;
	text-align: left !important;
}

/* Importi */
.woocommerce .clivup-min-order-notice__text strong,
.clivup-min-order-notice__text strong {
	color: #111111 !important;
	font-weight: 700 !important;
	white-space: nowrap !important;
}

/* Checkout: evita che il box sembri schiacciato o centrato */
.woocommerce-checkout-review-order-table td .clivup-min-order-notice,
.woocommerce-checkout-review-order-table .shipping .clivup-min-order-notice {
	min-width: 190px !important;
}

/* Mobile */
@media (max-width: 768px) {

	/* La riga spedizione diventa verticale */
	.woocommerce-checkout-review-order-table tr.shipping {
		display: block !important;
		width: 100% !important;
	}

	.woocommerce-checkout-review-order-table tr.shipping th,
	.woocommerce-checkout-review-order-table tr.shipping td {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		text-align: left !important;
		box-sizing: border-box !important;
	}

	.woocommerce-checkout-review-order-table tr.shipping th {
		margin-bottom: 8px !important;
	}

	/* Il box avviso prende tutta la larghezza */
	.woocommerce-checkout-review-order-table tr.shipping .clivup-min-order-notice,
	#order_review .clivup-min-order-notice {
		width: 200% !important;
		min-width: 0 !important;
		max-width: 200% !important;
		margin: 0 0 0 !important;
		padding: 10px !important;
		box-sizing: border-box !important;
		margin-left:35px !important;
	}

	/* Layout più leggibile su mobile */
	.woocommerce .clivup-min-order-notice,
	.clivup-min-order-notice {
		display: grid !important;
		grid-template-columns: 28px 1fr !important;
		gap: 10px !important;
		align-items: flex-start !important;
	}

	.woocommerce .clivup-min-order-notice__title,
	.clivup-min-order-notice__title {
		font-size: 16px !important;
		line-height: 1.3 !important;
		margin-bottom: 5px !important;
	}

	.woocommerce .clivup-min-order-notice__text,
	.clivup-min-order-notice__text {
		font-size: 14px !important;
		line-height: 1.45 !important;
	}
}
/*checkout general*/

.cart-checkout-advanced-layout .content-page{
	padding-top:0 !important; 

}

.page-id-45579 .cart-checkout-nav{
	margin:0 !important; 
	padding-top:0 !important; 

}


.page-id-45579 .woocommerce-form-coupon-toggle,.page-id-45579 .woocommerce-form-login-toggle{
		margin:0 !important; 
}


/* ===== WooCommerce Notices restyle ===== */

.woocommerce-error,
.woocommerce-warning,
.woocommerce-info,
.woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-warning,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-message {
  position: relative;
  margin: 14px 0 18px !important;
  padding: 16px 18px 16px 52px !important;
  border-radius: 14px;
  border: 2px solid transparent;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.07);
  list-style: none !important;
  overflow: hidden;
  font-size: 14px;
  line-height: 1.5;
}

.woocommerce-error:focus-visible,
.woocommerce-warning:focus-visible,
.woocommerce-info:focus-visible,
.woocommerce-message:focus-visible {
    outline: none !important;
}

.woocommerce-error li,
.woocommerce-warning li,
.woocommerce-info li,
.woocommerce-message li {
  margin: 6px 0;
}

/* rimuove le linee/top border WooCommerce */
.woocommerce-error::before,
.woocommerce-warning::before,
.woocommerce-info::before,
.woocommerce-message::before {
  position: absolute;
  left: 16px;
  top: 15px !important;
  font-size: 25px !important;
  line-height: 1;
  margin: 0;
}

/* INFO */
.woocommerce-info {
  background: #f4f7f5 !important;
  border-color: #2f6658 !important;
  color: #28443b !important;
}

.woocommerce-info::before {
  content: "i";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  font-family: Arial, sans-serif;
  font-weight: 700;
  background: #2f6658;
  color: #fff;
}

/* SUCCESS */
.woocommerce-message {
  background: #eef8f1 !important;
  border-color: #2f7d57 !important;
  color: #1f5138 !important;
}

.woocommerce-message::before {
  content: "✓";
  color: #2f7d57 !important;
  font-weight: 800;
  font-size: 20px;
  top: 13px;
}

/* WARNING */
.woocommerce-warning {
  background: #fff7db !important;
  border-color: #e2a400 !important;
  color: #5b4713 !important;
}

.woocommerce-warning::before {
  content: "⚠";
  color: #5b4713 !important;
  font-size: 20px;
  top: 13px;
}


/* ERROR */
.woocommerce-error {
  background: #fff5f5 !important;
  border-color: #d20000 !important;
  color: #8a0303 !important;
}

.woocommerce-error::before {
  content: "⚠";
  color: #8a0303 !important;
  font-size: 20px;
  top: 13px;
}

/* link dentro gli avvisi */
.woocommerce-error a,
.woocommerce-warning a,
.woocommerce-info a,
.woocommerce-message a {
  color: inherit;
  font-weight: 700;
  text-decoration: underline;
}

.woocommerce-error a:hover,
.woocommerce-info a:hover,
.woocommerce-message a:hover {
  opacity: 0.85;
}

/* pulsante eventualmente presente nei notice */
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button,
.woocommerce-warning .button {
  float: none !important;
  margin: 10px 0 0;
  padding: 10px 14px;
  border-radius: 999px;
  border: 0;
  background: #1f4c42;
  color: #fff;
  font-weight: 700;
  line-height: 1;
}

.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover {
  background: #173a33;
  color: #fff;
}

/* checkout: più respiro */
.woocommerce-checkout .woocommerce-NoticeGroup,
.woocommerce-cart .woocommerce-notices-wrapper {
  margin-bottom: 18px;
}

/* il box info login/coupon */
.woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-form-coupon-toggle .woocommerce-info {
  background: #fff !important;
  border: 1px solid #d9ddd8 !important;
  color: #2c3d36 !important;
  box-shadow: none;
}

.woocommerce-form-login-toggle .woocommerce-info::before,
.woocommerce-form-coupon-toggle .woocommerce-info::before {
  background: #1f4c42;
  color: #fff;
}

/* notice nel riepilogo ordine laterale */
.woocommerce-checkout-review-order .woocommerce-error,
.woocommerce-checkout-review-order .woocommerce-info,
.woocommerce-checkout-review-order .woocommerce-message {
  font-size: 13px;
  padding: 14px 16px 14px 48px !important;
  border-radius: 12px;
}

/* mobile */
@media (max-width: 767px) {
  .woocommerce-error,
  .woocommerce-info,
  .woocommerce-message {
    padding: 14px 14px 14px 44px !important;
    border-radius: 12px;
    font-size: 13px;
  }

  .woocommerce-error::before,
  .woocommerce-info::before,
  .woocommerce-message::before {
    left: 14px;
    top: 14px;
  }
}


