/*
Theme Name: Barbarià Child
Theme URI: https://www.barbaria.it/
Description: Tema figlio personalizzato per il sito Barbarià.
Author: Giulia Sapino
Author URI: https://www.giuliasapino.it/
Template: hello-elementor
Version: 1.0.0
Text Domain: barbaria-child
*/

/*
 * Gli stili personalizzati del sito possono essere inseriti qui.
 */

html,
body,
#page,
.elementor-location-header,
.elementor-location-footer,
.elementor {
  background-color: #f7f5f0;
}

/* Contenitore principale hero */
.hero-video-barbaria {
  --hero-video-height: 600px;

  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;

  height: var(--hero-video-height) !important;
  min-height: var(--hero-video-height) !important;

  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden;

  align-items: stretch !important;
}

/* Widget HTML */
.hero-video-barbaria .elementor-widget-html,
.hero-video-barbaria .elementor-widget-container {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;

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

/* Wrapper video */
.barbaria-responsive-video {
  position: relative;
  display: block;

  width: 100%;
  height: 100%;
  min-height: 100%;

  margin: 0;
  overflow: hidden;
}

/* Video */
.barbaria-responsive-video__media {
  position: absolute;
  inset: 0;

  display: block;
  width: 100% !important;
  height: 100% !important;

  min-width: 100% !important;
  min-height: 100% !important;

  max-width: none !important;
  max-height: none !important;

  object-fit: cover;
  object-position: center;
}

/* Da 768px a 1199px */
@media screen and (max-width: 1199px) {
  .hero-video-barbaria {
    --hero-video-height: 500px;
  }
}

/* Mobile */
@media screen and (max-width: 767px) {
  .hero-video-barbaria {
    --hero-video-height: 350px;
  }
}

/* Correzione layout tablet Elementor */
@media screen and (min-width: 768px) and (max-width: 1119px) {
  .tablet-full-width {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    flex-basis: 100% !important;
    flex-grow: 0 !important;
    flex-shrink: 0 !important;

    --width: 100% !important;
    --content-width: 100% !important;
    --container-widget-width: 100% !important;
    --container-widget-flex-grow: 0 !important;
  }

  .tablet-full-width > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    flex-wrap: wrap !important;
  }

  .tablet-full-width > .e-con-inner > .e-con {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex-basis: 100% !important;
  }
}

/* shop e categorie pagine style */

.barbaria-shop-intro {
  text-align: center;
}

.barbaria-shop-intro__title {
  margin: 0 0 0.6rem;

  font-family: "Bebas Neue", sans-serif;
  font-size: 2.8rem;
  font-weight: 400;
  line-height: 1;

  color: #ed1c24;
  text-align: center;
}

.barbaria-shop-intro__description {
  --container-widget-width: 85%;

  width: var(--container-widget-width);
  max-width: var(--container-widget-width);

  margin: 0 auto;

  font-family: "Roboto", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;

  color: #5b3827;
  text-align: center;
}

.barbaria-shop-intro__description p {
  margin: 0;
}

@media screen and (max-width: 767px) {
  .barbaria-shop-intro__title {
    font-size: 2.3rem;
  }

  .barbaria-shop-intro__description {
    display: none;
  }
}
/* is active menu shop filter color */

/* Stato normale */
#shop-link-all .e-n-menu-title-text,
#shop-link-farine .e-n-menu-title-text,
#shop-link-frollini .e-n-menu-title-text,
#shop-link-grissini .e-n-menu-title-text,
#shop-link-focacce .e-n-menu-title-text {
  color: #5b3827 !important;
}

/* Hover */
#shop-link-all:hover .e-n-menu-title-text,
#shop-link-farine:hover .e-n-menu-title-text,
#shop-link-frollini:hover .e-n-menu-title-text,
#shop-link-grissini:hover .e-n-menu-title-text,
#shop-link-focacce:hover .e-n-menu-title-text {
  color: #ed1c24 !important;
}

/* SHOP - Tutti */
body.woocommerce-shop #shop-link-all .e-n-menu-title-text {
  color: #ed1c24 !important;
}

/* FARINE */
body.tax-product_cat.term-farine #shop-link-farine .e-n-menu-title-text {
  color: #ed1c24 !important;
}

/* FROLLINI */
body.tax-product_cat.term-frollini #shop-link-frollini .e-n-menu-title-text {
  color: #ed1c24 !important;
}

/* GRISSINI */
body.tax-product_cat.term-grissini #shop-link-grissini .e-n-menu-title-text {
  color: #ed1c24 !important;
}

/* FOCACCE - categoria attiva */
body.tax-product_cat.term-focacce #shop-link-focacce .e-n-menu-title-text {
  color: #ed1c24 !important;
}

:root {
  --barbaria-header-height: 70px;
}

body.single-product {
  background: #f7f5f0;
}

.woocommerce-notices-wrapper:not(:empty) {
  position: relative;
  z-index: 5;

  margin-top: var(--barbaria-header-height);

  padding: 10px 40px 0;

  background: #f7f5f0;
}

@media screen and (max-width: 767px) {
  :root {
    --barbaria-header-height: 110px;
  }

  .woocommerce-notices-wrapper:not(:empty) {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/* WooCommerce notice - successo */
.woocommerce-message {
  position: relative;

  display: flex;
  align-items: center;
  gap: 15px;

  margin: 0 !important;
  padding: 16px 20px 16px 52px !important;

  background: #fff !important;

  border: 1px solid #7bae2b !important;
  border-radius: 14px;

  outline: none !important;
  box-shadow: none !important;

  color: #5b3827 !important;

  font-family: "Roboto", sans-serif;
  font-size: 0.95rem;
}

/* Icona successo */
.woocommerce-message::before {
  position: absolute !important;

  top: 50% !important;
  left: 20px !important;

  transform: translateY(-50%);

  margin: 0 !important;

  color: #7bae2b !important;
}

/* Bottone carrello */
.woocommerce-message .button.wc-forward {
  float: none !important;
  flex-shrink: 0;

  margin: 0 0 0 auto !important;

  padding: 9px 22px !important;

  background: #7bae2b !important;
  color: #fff !important;

  border: 1px solid #7bae2b !important;
  border-radius: 22px !important;

  font-family: "Roboto", sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
}

.woocommerce-message .button.wc-forward:hover {
  background: transparent !important;
  color: #7bae2b !important;
}

@media screen and (max-width: 767px) {
  .woocommerce-message {
    flex-direction: column;
    align-items: flex-start;

    padding: 16px 15px 16px 48px !important;
  }

  .woocommerce-message::before {
    left: 17px !important;
    top: 25px !important;

    transform: none;
  }

  .woocommerce-message .button.wc-forward {
    width: 100%;
    margin: 5px 0 0 -33px !important;
    width: calc(100% + 33px);

    text-align: center;
  }
}

/* nascondere lente su scheda prodotto */

body.single-product .woocommerce-product-gallery__trigger {
  display: none !important;
}

/* tolgo il margine utile normalmente con il menu: quando c'è il messaggio se no tanto spazio */

body.single-product:has(.woocommerce-notices-wrapper:not(:empty))
  .elementor-location-single
  > .e-con:first-child {
  margin-top: -10px;
}

a.elementor-button.is-adding {
  opacity: 0.65;
  pointer-events: none;
}

a.elementor-button.is-added {
  background-color: #5b3827 !important;
  border-color: #5b3827 !important;
  color: #fff !important;
}

a.elementor-button.is-added svg {
  fill: #fff !important;
}

/* Widget del pulsante Acquista */
.elementor-element-0d7006e {
  position: relative;
}

/* Dopo aggiunta: il pulsante Acquista resta come riferimento
   ma non occupiamo nuovo spazio */
.elementor-element-0d7006e > a.elementor-button.added {
  visibility: hidden;
}

/* Visualizza carrello occupa esattamente il posto di Acquista */
.elementor-element-0d7006e > a.added_to_cart.wc-forward {
  position: absolute;
  inset: 0;

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

  width: 100%;
  height: 100%;

  margin: 0 !important;
  padding: 10px 15px !important;

  background-color: #5b3827 !important;
  color: #ffffff !important;

  border: 1px solid #5b3827 !important;
  border-radius: 22px !important;

  font-family: "Roboto", sans-serif !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 1.2px;

  text-align: center;
  text-decoration: none !important;

  box-sizing: border-box;
}

.elementor-element-0d7006e > a.added_to_cart.wc-forward:hover,
.elementor-element-0d7006e > a.added_to_cart.wc-forward:focus {
  background-color: transparent !important;
  color: #5b3827 !important;
  border-color: #5b3827 !important;
}

.elementor-menu-cart--cart-type-side-cart .elementor-menu-cart__main {
  top: 20px !important;
  right: 20px !important;
  bottom: 20px !important;

  border-radius: 22px;
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .elementor-menu-cart--cart-type-side-cart .elementor-menu-cart__main {
    top: 10px !important;
    right: 10px !important;
    bottom: 10px !important;
  }
}

/* ========================================
   Ombra immagine principale prodotto
   ======================================== */

/* =========================================
   OMBRA IMMAGINE PRINCIPALE PRODOTTO
   ========================================= */

/* -----------------------------------------
   PRODOTTI CON GALLERY / THUMBNAILS
   WooCommerce crea .flex-viewport
   ----------------------------------------- */

body.single-product
  .elementor-widget-woocommerce-product-images
  .flex-viewport {
  box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.15) !important;
  border-radius: 22px !important;
}

/* -----------------------------------------
   PRODOTTI CON UNA SOLA IMMAGINE
   Nessun .flex-viewport
   ----------------------------------------- */

body.single-product
  .elementor-widget-woocommerce-product-images
  .woocommerce-product-gallery:not(:has(.flex-viewport)) {
  overflow: visible !important;
}

body.single-product
  .elementor-widget-woocommerce-product-images
  .woocommerce-product-gallery:not(:has(.flex-viewport))
  .woocommerce-product-gallery__wrapper {
  overflow: visible !important;
}

body.single-product
  .elementor-widget-woocommerce-product-images
  .woocommerce-product-gallery:not(:has(.flex-viewport))
  .woocommerce-product-gallery__image {
  position: relative !important;
  overflow: visible !important;

  box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.15) !important;
  border-radius: 22px !important;
}

body.single-product
  .elementor-widget-woocommerce-product-images
  .woocommerce-product-gallery:not(:has(.flex-viewport))
  .woocommerce-product-gallery__image
  > a {
  display: block !important;
  overflow: visible !important;
  border-radius: 22px !important;
}

/* Immagine: arrotondamento grafico */
body.single-product
  .elementor-widget-woocommerce-product-images
  .woocommerce-product-gallery__image
  img {
  display: block !important;
  border-radius: 22px !important;
}

body.woocommerce-cart #coupon_code {
  border-radius: 22px !important;
  padding: 12px 18px !important;
  border: 1px solid #5b3827 !important;
  box-shadow: none !important;
}

body.woocommerce-cart .product-quantity input.qty {
  padding-left: 8px !important;
  padding-right: 8px !important;
  border-radius: 22px !important;
}

@media (max-width: 991.98px) {
  body.woocommerce-cart
    .woocommerce-cart-form
    tr.woocommerce-cart-form__cart-item {
    padding-bottom: 18px !important;
  }

  body.woocommerce-cart
    .woocommerce-cart-form
    tr.woocommerce-cart-form__cart-item
    + tr.woocommerce-cart-form__cart-item {
    padding-top: 18px !important;
  }
}

body.woocommerce-cart .woocommerce-notices-wrapper:not(:empty) {
  margin-top: 0 !important;
  margin-bottom: 15px;
  padding-top: 0 !important;
}

body.woocommerce-cart .coupon-error-notice {
  color: #5b3827 !important;
  font-size: 0.85rem;
  line-height: 1.35;
  margin: 8px 0 0 !important;
  padding: 0 !important;
}

@media (max-width: 767px) {
  body.woocommerce-cart .coupon-error-notice {
    text-align: center;
  }
}

/* =========================
   Carrello vuoto
   ========================= */

body.woocommerce-cart .cart-empty.woocommerce-info {
  background: transparent !important;
  border: 0 !important;
  color: #5b3827 !important;

  font-family: "Roboto", sans-serif !important;
  font-size: 1rem;
  font-weight: 400;

  padding: 0 !important;
  margin: 20px 0 25px !important;

  text-align: center;
}

/* Rimuove eventuale icona / decorazione WooCommerce */
body.woocommerce-cart .cart-empty.woocommerce-info::before {
  display: none !important;
}

/* Contenitore bottone */
body.woocommerce-cart .return-to-shop {
  margin: 0 !important;
  text-align: center;
}

/* Bottone ritorno shop */
body.woocommerce-cart .return-to-shop .button.wc-backward {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  background: #ed1c24 !important;
  color: #f7f5f0 !important;

  font-family: "Roboto", sans-serif !important;
  font-size: 1rem !important;
  font-weight: 600 !important;

  padding: 10px 25px !important;
  border: solid 1px #f7f5f0 !important;
  border-radius: 22px !important;
  letter-spacing: 1.2px;

  text-decoration: none !important;
  box-shadow: none !important;
}

/* Hover */
body.woocommerce-cart .return-to-shop .button.wc-backward:hover {
  background: #f7f5f0 !important;
  color: #ed1c24 !important;
  border: solid 1px #ed1c24 !important;
}

/* =========================================
   MY ACCOUNT - WooCommerce info
   ========================================= */

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info {
  display: flex !important;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: space-between;
  gap: 25px;

  margin: 0 0 25px !important;
  padding: 18px 20px !important;

  background: #ffffff !important;
  color: #5b3827 !important;

  border: 1px solid #5b3827 !important;
  border-radius: 14px !important;

  box-shadow: none !important;

  font-family: "Roboto", sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 400;
  line-height: 1.5;
}

/* Rimuove l'icona e il bordo blu WooCommerce */
body.woocommerce-account
  .woocommerce-MyAccount-content
  .woocommerce-info::before {
  display: none !important;
}

/* =========================================
   MY ACCOUNT - WooCommerce info
   ========================================= */

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info {
  display: flex !important;
  flex-direction: row;
  align-items: center;
  gap: 25px;

  margin: 0 0 25px !important;
  padding: 18px 20px !important;

  background: #ffffff !important;
  color: #5b3827 !important;

  border: 1px solid #5b3827 !important;
  border-radius: 14px !important;

  box-shadow: none !important;

  font-family: "Roboto", sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 400;
  line-height: 1.5;
}

/* Rimuove stile / icona WooCommerce */
body.woocommerce-account
  .woocommerce-MyAccount-content
  .woocommerce-info::before {
  display: none !important;
}

/* Il bottone va SEMPRE dopo il testo */
body.woocommerce-account
  .woocommerce-MyAccount-content
  .woocommerce-info
  .button {
  order: 2;

  float: none !important;
  flex-shrink: 0;

  margin: 0 0 0 auto !important;
  padding: 10px 24px !important;

  background: #ed1c24 !important;
  color: #f7f5f0 !important;

  border: 1px solid #ed1c24 !important;
  border-radius: 22px !important;

  box-shadow: none !important;

  font-family: "Roboto", sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 1.2px;

  text-align: center;
  text-decoration: none !important;
}

body.woocommerce-account
  .woocommerce-MyAccount-content
  .woocommerce-info
  .button:hover,
body.woocommerce-account
  .woocommerce-MyAccount-content
  .woocommerce-info
  .button:focus {
  background: #f7f5f0 !important;
  color: #ed1c24 !important;
  border-color: #ed1c24 !important;
}

/* =========================================
   MOBILE
   ========================================= */

@media screen and (max-width: 767px) {
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info {
    flex-direction: column;
    align-items: stretch;
    gap: 15px;

    padding: 18px 15px !important;

    text-align: center;
  }

  body.woocommerce-account
    .woocommerce-MyAccount-content
    .woocommerce-info
    .button {
    order: 2;

    width: 100% !important;
    margin: 0 !important;
  }
}

/* =========================================
   MY ACCOUNT - Dettagli account mobile
   Nome / Cognome uno sotto l'altro
   ========================================= */

@media screen and (max-width: 767px) {
  body.woocommerce-account .woocommerce-EditAccountForm .form-row-first,
  body.woocommerce-account .woocommerce-EditAccountForm .form-row-last {
    float: none !important;

    width: 100% !important;
    max-width: 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.woocommerce-account .woocommerce-EditAccountForm .form-row-first {
    margin-bottom: 18px !important;
  }
}

/* =========================================
   SHORTCODE [barbaria_acquisto id="1021"]
   Stili isolati: nessuna modifica a shop e schede prodotto.
   ========================================= */

.barbaria-acquisto.woocommerce {
  --barbaria-acquisto-red: #ed1c24;
  --barbaria-acquisto-brown: #5b3827;
  --barbaria-acquisto-cream: #f7f5f0;
  --barbaria-acquisto-form-width: 310px;

  width: 100%;
  min-width: 0;
  color: var(--barbaria-acquisto-brown);
  font-family: "Roboto", sans-serif;
  text-align: left;
  scroll-margin-top: calc(var(--barbaria-header-height, 70px) + 24px);
}

.barbaria-acquisto.woocommerce,
.barbaria-acquisto.woocommerce * {
  box-sizing: border-box;
}

.barbaria-acquisto.woocommerce .barbaria-acquisto__price {
  margin: 0 0 24px;
  padding: 0;
  color: var(--barbaria-acquisto-red);
  font-family: inherit;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
}

.barbaria-acquisto.woocommerce .barbaria-acquisto__price del {
  display: inline-block;
  margin-right: 8px;
  color: var(--barbaria-acquisto-brown);
  font-size: 0.8em;
  font-weight: 400;
  opacity: 0.65;
}

.barbaria-acquisto.woocommerce .barbaria-acquisto__price ins {
  color: inherit;
  background: transparent;
  font-weight: inherit;
  text-decoration: none;
}

.barbaria-acquisto.woocommerce
  .barbaria-acquisto__price
  .woocommerce-price-suffix {
  font-size: 0.65em;
  font-weight: 400;
}

.barbaria-acquisto.woocommerce form.cart {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 26px;
  width: 100%;
  max-width: var(--barbaria-acquisto-form-width);
  margin: 0;
  padding: 0;
}

.barbaria-acquisto.woocommerce form.cart::before,
.barbaria-acquisto.woocommerce form.cart::after {
  display: none;
}

.barbaria-acquisto.woocommerce form.cart .quantity {
  flex: 0 0 58px;
  float: none;
  width: 58px;
  margin: 0;
  padding: 0;
}

/* Quando WooCommerce impone un solo pezzo, il campo è nascosto nativamente. */
.barbaria-acquisto.woocommerce form.cart .quantity:has(> input[type="hidden"]) {
  display: none;
}

.barbaria-acquisto.woocommerce form.cart .quantity .qty {
  width: 58px;
  max-width: 100%;
  height: 38px;
  min-height: 38px;
  margin: 0;
  padding: 6px 8px;
  border: 1px solid var(--barbaria-acquisto-brown);
  border-radius: 999px;
  background: #ffffff;
  color: var(--barbaria-acquisto-brown);
  box-shadow: none;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25;
  text-align: center;
  appearance: textfield;
  -moz-appearance: textfield;
}

.barbaria-acquisto.woocommerce .qty::-webkit-inner-spin-button,
.barbaria-acquisto.woocommerce .qty::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.barbaria-acquisto.woocommerce form.cart .single_add_to_cart_button,
.barbaria-acquisto.woocommerce .barbaria-acquisto__product-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 200px;
  float: none;
  min-width: 0;
  max-width: 100%;
  min-height: 38px;
  margin: 0;
  padding: 8px 18px;
  border: 1px solid var(--barbaria-acquisto-red);
  border-radius: 999px;
  background: var(--barbaria-acquisto-red);
  color: var(--barbaria-acquisto-cream);
  box-shadow: none;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 1.2px;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  white-space: normal;
  cursor: pointer;
  transition:
    color 0.2s ease,
    background-color 0.2s ease;
}

.barbaria-acquisto.woocommerce form.cart .single_add_to_cart_button:hover,
.barbaria-acquisto.woocommerce .barbaria-acquisto__product-link:hover {
  background: var(--barbaria-acquisto-cream);
  color: var(--barbaria-acquisto-red);
}

.barbaria-acquisto.woocommerce .qty:focus-visible,
.barbaria-acquisto.woocommerce .single_add_to_cart_button:focus-visible,
.barbaria-acquisto.woocommerce .barbaria-acquisto__product-link:focus-visible {
  outline: 2px solid var(--barbaria-acquisto-brown);
  outline-offset: 3px;
}

.barbaria-acquisto.woocommerce .stock,
.barbaria-acquisto.woocommerce .barbaria-acquisto__status {
  margin: 0 0 14px;
  color: var(--barbaria-acquisto-brown);
  font-size: 0.95rem;
  line-height: 1.5;
}

.barbaria-acquisto.woocommerce .out-of-stock {
  color: var(--barbaria-acquisto-red);
}

.barbaria-acquisto.woocommerce .woocommerce-notices-wrapper:not(:empty) {
  margin: 0 0 20px;
  padding: 0;
  background: transparent;
}

.barbaria-acquisto.woocommerce .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  white-space: nowrap !important;
}

@media screen and (max-width: 767px) {
  .barbaria-acquisto.woocommerce form.cart {
    column-gap: 12px;
    flex-wrap: nowrap;
  }

  .barbaria-acquisto.woocommerce form.cart .single_add_to_cart_button {
    padding-right: 14px;
    padding-left: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .barbaria-acquisto.woocommerce .single_add_to_cart_button,
  .barbaria-acquisto.woocommerce .barbaria-acquisto__product-link {
    transition: none;
  }
}

/* Blocco acquisto: elimina lo spazio inferiore su mobile */
@media screen and (max-width: 767px) {
  /* Widget Elementor che contiene il nostro shortcode */
  .elementor-widget-shortcode:has(.barbaria-acquisto) {
    flex-grow: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Contenitori interni e form di acquisto */
  .elementor-widget-shortcode:has(.barbaria-acquisto)
    > .elementor-widget-container,
  .elementor-shortcode:has(> .barbaria-acquisto),
  .barbaria-acquisto.woocommerce,
  .barbaria-acquisto.woocommerce form.cart {
    height: auto !important;
    min-height: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
}


/* =========================
   FREE SHIPPING NOTICE
   Stile Barbarià
========================= */

.woocommerce-info .fs-free-shipping-notice-and-button-wrapper {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px 40px;
    align-items: end;

    padding: 34px 40px;
    border: 2px solid #6B432E;
    border-radius: 28px;
    background: #F7F5F0;
    box-sizing: border-box;
}

.woocommerce-info .fs-free-shipping-notice-text-and-progress-bar-wrapper {
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-width: 0;
}

.woocommerce-info .fs-free-shipping-notice-contents {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.woocommerce-info .fs-free-shipping-notice-text {
    font-family: "Roboto", sans-serif;
    font-size: 1.05rem;
    line-height: 1.4;
    color: #5B3827;
    margin: 0;
}

.woocommerce-info .fs-free-shipping-notice-text .amount,
.woocommerce-info .fs-free-shipping-notice-text .woocommerce-Price-amount {
    color: #ED1C24;
    font-weight: 700;
}

.woocommerce-info .fs-free-shipping-notice-progress-bar-wrapper {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 14px;
    width: 100%;
}

.woocommerce-info .fs-free-shipping-notice-opening-value,
.woocommerce-info .fs-free-shipping-notice-closing-value {
    font-family: "Roboto", sans-serif;
    font-size: 0.95rem;
    font-weight: 700;
    color: #ED1C24;
    white-space: nowrap;
}

.woocommerce-info .fs-free-shipping-notice-progress-bar {
    height: 14px;
    background: #E8DDD3;
    border-radius: 999px;
    overflow: hidden;
    position: relative;
}

.woocommerce-info .fs-free-shipping-notice-progress-bar span {
    display: block;
    height: 100%;
    background: #ED1C24;
    border-radius: 999px;
}

.woocommerce-info .fs-free-shipping-notice-continue-shopping-button-wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.woocommerce-info .fs-free-shipping-notice-continue-shopping-button-wrapper .button,
.woocommerce-info .fs-free-shipping-notice-continue-shopping-button-wrapper a.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 230px;
    min-height: 40px;
    padding: 0 28px;

    background: #ED1C24 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    text-decoration: none !important;

    font-family: "Roboto", sans-serif;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1;
    text-align: center;

    transition: all 0.2s ease;
}

.woocommerce-info .fs-free-shipping-notice-continue-shopping-button-wrapper .button:hover,
.woocommerce-info .fs-free-shipping-notice-continue-shopping-button-wrapper a.button:hover {
    background: #D41414 !important;
    color: #fff !important;
}

/* Rimuove bordo e icona blu WooCommerce */
body.woocommerce-cart .woocommerce-info:has(.fs-free-shipping-notice-and-button-wrapper) {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
}

body.woocommerce-cart .woocommerce-info:has(.fs-free-shipping-notice-and-button-wrapper)::before {
    display: none !important;
    content: none !important;
}

/* MOBILE */
@media (max-width: 767px) {
    .woocommerce-info .fs-free-shipping-notice-and-button-wrapper {
        grid-template-columns: 1fr;
        gap: 22px;
        padding: 24px 20px;
    }

    .woocommerce-info .fs-free-shipping-notice-progress-bar-wrapper {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .woocommerce-info .fs-free-shipping-notice-opening-value,
    .woocommerce-info .fs-free-shipping-notice-closing-value {
        text-align: center;
    }

    .woocommerce-info .fs-free-shipping-notice-continue-shopping-button-wrapper {
        justify-content: center;
    }

    .woocommerce-info .fs-free-shipping-notice-continue-shopping-button-wrapper .button,
    .woocommerce-info .fs-free-shipping-notice-continue-shopping-button-wrapper a.button {
        width: 100%;
        max-width: 320px;
    }

    .woocommerce-info .fs-free-shipping-notice-text {
        text-align: center;
    }

        /* Nasconde barra e importi */
    body.woocommerce-cart
    .fs-free-shipping-notice-progress-bar-wrapper {
        display: none !important;
    }

    /* Compatta il contenitore */
    body.woocommerce-cart
    .fs-free-shipping-notice-and-button-wrapper {
        gap: 18px !important;
    }

    /* Elimina spazi inutili */
    body.woocommerce-cart
    .fs-free-shipping-notice-text-and-progress-bar-wrapper,
    body.woocommerce-cart
    .fs-free-shipping-notice-contents {
        gap: 0 !important;
    }
}

