/** Shopify CDN: Minification failed

Line 621:0 Unexpected "}"
Line 878:102 Unexpected ";"

**/
.btn{
    border-radius: 5px;
    padding: 4px 9px;
    font-size: 88%;
}

.btn_white{
  border: solid 1px grey;
  background: white;
}

.product-item__label {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}

  
.product-item__label > .product-label {
  display: block;
  margin-bottom: 5px;
  border-radius: 10px;
  font-size: 18px;
  padding: 7px 40px;
}

.product-meta-mobile-only {
  padding: 10px 14px 0px 14px;
  background: var(--secondary-background);
  margin: 0;
  border: 0px solid var(--border-color);
  border-bottom: none;
}

@media screen and (max-width: 999px) {
  .product-block-list__item--gallery .card {
    border-top: none;
  }
}

.product-form__add-button {
  font-size: 24px;
  line-height: 60px;
  margin-top: 15px;
}

.product-form__info-list-price {
  margin-bottom: 0;
  margin-top: 10px;
  border-spacing: 0 5px;
}

.product-form__info-content .price {
  font-size: 33px;
}

.price.price--compare {
  color: #888888;
  font-size: 26px;
}

.secure_payment_notice {
  font-size: 11px;
  text-align: center;
  align-content: baseline;
  margin-top:10px !important;
  margin-bottom:3px;
}

.secure_payment_notice .icon {
  vertical-align: baseline;
  height: 10px;
  width: 10px;
}

.secure_payment_notice span {
  font-weight: 600;
}

.payment-list-pdp {
  justify-content: center;
}

.product-extra-info-list {
  margin-top: 8px;
}

.product-extra-info-list .icon {
  margin-right: 10px;
}

.product-extra-info-list ul,
.card__product_info_faq ul {
  list-style: none;
}

.product-extra-info-list ul {
  font-size: 15px;
}

.card__product_info_faq {
  margin-top: 20px;
}

.card__product_info_faq .card__section {
  padding-top: 15px;
  padding-bottom: 15px;
}

.card-product-info.card {
  background: none;
  border: none;
}

.card-product-info .card__section {
  border: 1px solid var(--border-color);
  background: var(--secondary-background)
}

@media screen and (max-width: 999px) {
  .card-product-info .card__section {
    border: none;
  }
}

.anchor_link {
  text-decoration: underline;
}

.review_highlight {
  display: block;
  background-color: #F7F4F2;
  font-size: 15px;
  line-height: 1.3em;
  padding-left: 15px;
  padding-right: 3px;
  padding-top: 7px;
  padding-bottom: 7px;
  margin: 5px 0 15px 0;
  position: relative;
}

blockquote:before {
  content: "";
  border-left: 6px solid #f4bb40; /*#00A259;*/
  position: absolute;
  bottom: 0px;
  top: 0px;
  left: 0;
}

/*.review_highlight .review_highlight_name {
  color: #075641;
  font-weight: 600;
}*/

@media screen and (max-width: 640px) {

  .review_highlight {
    font-size: 13px;
  }

  .payment-list-pdp .payment-list__item {
    width: 34px;
    height: 20px;
  }
}

.stamped-product-reviews-badge.stamped-main-badge .stamped-fa-star {
  color: #FFB800;
}

.stamped-product-reviews-badge.stamped-main-badge .stamped-fa-star::before {
  font-size: 22px;
}

.stamped-product-reviews-badge.stamped-main-badge .stamped-badge-caption {
  text-decoration: underline;
}

 .spedizioneInRitardo{
   background: #ffffbc;
    padding: 10px 20px;
    border: solid 1px #d1d16d;
    text-align: center;     line-height: normal;
    margin-top: 10px;
}

.cart-wrapper  .spedizioneInRitardo{
    text-align: left;
    padding: 10px;
    font-size: 90%;
} 

@media screen and (max-width: 640px) {
  .sticky-add-to-cart {
    display: none;
  }

  /* CUSTOM ANDREA SALUGEA - 08/10/2026: tolte da questo file tutte le regole .sticky_cart_active (circa 40, in piu' punti).
     Erano il vecchio sticky add-to-cart: la classe non viene piu' assegnata da custom.js e la barra fissa oggi e' il
     blocco app "Barra fissa carrello". */
}



.ly-switcher-wrapper{

  display:none;
}

.product-meta__text{
  margin-bottom:0px!important;
}


.product-item__info-inner .stamped-product-reviews-badge{
  display:none!important;

  
}

.strikethrough {
  position: relative;
}
.strikethrough:before {
  position: absolute;
  content: "";
  left: -5px;
  top: 50%;
  right: -5px;
  border-top: 2px solid;
  border-color: inherit;
  color: #484848;
  
  -webkit-transform:rotate(-10deg);
  -moz-transform:rotate(-10deg);
  -ms-transform:rotate(-10deg);
  -o-transform:rotate(-10deg);
  transform:rotate(-10deg);
}


/* CSS FIX COUPON LUNGHI */
@media screen and (max-width: 400px) {
  .line-item__discount {
      padding: 0 6px;
    font-size: 80% !important;
  }
  .line-item__title {margin-bottom: 0px;}
  .line-item__price-list {line-height:13px;}
}




/* CSS PER RIGHE CARRELLO */
.vitals-discounts{ width:100vw; }
.vitals-discounts p{ margin:0 }
.vitals-discounts p:last-child { padding:10px 8px; }
.vitals-discounts p:first-child { padding:10px 8px 5px 8px;  }
.vitals-discounts p:nth-child(3){     background: #f4fff0; margin-bottom: 10px; padding: 0 10px; border-radius: 5px; border: solid 1px#c4e7ce; font-size: 80%;}
.vitals-discounts p:last-child{ border-top: solid; border-bottom: solid #dadada; }
.vt-new_price, .vt-original-cart{ float: right;}

.cart-recap__amount-saved{ color: var(--heading-color); background: #f4fff0; margin-bottom: 10px; padding: 0 10px; border-radius: 5px; border: solid 1px#c4e7ce;     width: 100%; text-align:center;
    display: block;}

.vt-discount {
  display: flex;
  justify-content:space-between;
}
.vt-discount .mdash {
 margin-left: auto; padding-right: 3px;
}

/* MARGINE TITOLO PAGINA */
.page__header { margin: 15px 0; }
.page__description { margin: 0px 0 0; }

.mini-cart__price-list .price.price--compare { font-size: 15px !important; }

/* META VIEWPORT SOLO MOBILE */
@media screen and (max-width: 640px) {

  .vitals-discounts p:nth-child(3){ font-size: 100%;}
  .vtl-ub-goal-main-widget { top: 26vh !important; }


  /* CLASSE STICKY VAI ALLA CASSA CHECKOUT AB TEST */

.cart-recap__checkout_sticky_container{
  position: fixed !important;
    bottom: 0vh;
    right: 0vw;
    background-color:white;
    z-index:9999999999;
    width:100%;
}

  .cart-recap__checkout_sticky{
    margin-bottom:1vh;
    margin-left:2vw;
    text-transform:uppercase;
    z-index:5;
    border-radius: 50px !important;
    width: 96vw;
    font-family: var(--heading-font-family);
    border-radius: 30px!important; 
    background: #3E3D3E!important; 
  }

  .cart-recap__notices{  line-height: 16px;  margin: 14px 0;  font-size: 80%;} 
  .cart-recap__checkout{ margin-top:8px; z-index: 9999999999; }

  .cart-recap__checkout_verde{ font-size: 180%; letter-spacing:1px!important;  padding: 0px 0px!important;
    border-radius: 30px!important; background: #00cb6f!important; border-style: solid!important;
    line-height: 8vh!important; border-width: 2px!important; border-color: #645b64!important;
  }

  .cart-recap__checkout:after{content: ' ➜';}
  
}

@media screen and (max-width: 380px) {
  
  .vtl-ub-goal-main-widget {
      top: 22vh !important;
  }
}

/* META VIEWPORT MOBILE MOLTO PICCOLO */
@media screen and (max-width: 367px) {

  .product-form__option .block-swatch{ 
    margin-right: 0.2%!important;
    font-size: 87%;
  }
  

}

/* META VIEWPORT FIX MINI DISPLAY CART 3 PRODOTTI - Altezza cart */
@media only screen and (max-height: 750px) and (min-width: 640px)  {
.mini-cart__line-item-list{max-height: 30vh !important;}
}



/* META VIEWPORT MOBILE FIX LOGO - MARGIN */
@media screen and (max-width: 336px) {
  .header>.container { padding-left: 10px !important; padding-right: !important10px; }
  .header__mobile-nav { display: inline-block; margin-right: 12px; }
  .header .icon--account, .header .icon--hamburger, .header .icon--hamburger-mobile, .header .icon--search, .header .icon--cart, .header .icon--close  {
    width: 19px; height: 19px; margin: 0 auto;
  }
}


/* CSS per nascondere quantità confezioni -- sconti compleanno
.block-swatch-list, .product-form__option-name {display: none;}  */


/* PROMO COMPLEANNO */
/* CSS per box sconto in mini cart -- MANCANO X per sconto  */
.adv_differenzaCarrello{display:none;} 
.adv_differenzaCarrello_up{ padding: 9px 12px; border: solid 1px #27a281; margin: 5px 20px; background-color: #f0fffa; line-height: normal;} 
.adv_differenzaCarrello_down{ background-color: #f0fffa;} 
.adv_differenzaCarrello .mini-cart__recap-price-line{ padding: 0px; } 
.bannerPrezzoProdottoSconto{  background: #f4fff0; margin-top: 10px; padding: 0 10px; border-radius: 5px; border: solid 1px#c4e7ce; font-size: 120%; line-height: 1.6;}
.ly-switcher-wrapper.fixed.bottom_right, .ly-switcher-wrapper.absolute.bottom_right{ display: none; } 


/* ICONS */
.icona_accept, .icona_goal { height: 1em;}
.icona_accept {
  &::after {
    content: url('/cdn/shop/files/CircleTickMajor.svg?v=1688026985');
    display: inline-block;
    height: 1em;
    width: 1em;
    filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(86deg) brightness(70%) contrast(119%);
  } 
}
.icona_goal {
  &::after {
    content: url('/cdn/shop/files/CartUpMajor.svg?v=1688049943');
    display: inline-block;
    height: 1em;
    width: 1em;
    align-self: center;
  } 
}

/* FIX spazio add to cart e BUY NOW BUTTON */
.shopify-payment-button{ display:none !important; }
.product-form__variants, .product-form__option { margin-bottom: 0px !important; }


@media screen and (max-width: 640px) {
.product-form__variants { margin-bottom: -10px !important; }
}

/* SWIPER ANNOUNCMENT BAR */
.swiper { width: 100%; height: 100%; }
.swiper-slide {
  text-align: center;
  font-size: 16px;
  font-family: var(--text-font-family);
  align-self: center;
  font-style: var(--text-font-style);
  display: flex !important;
  justify-content: center;
  align-items: center;
  line-height: 22px;
  padding:8px 15px;
}
.swiper-button-next, .swiper-button-prev{ color:#21444a!important; }
.swiper-button-next::after, .swiper-button-prev::after {font-size:16px !important; }
.swiper-button-next { right: var(--swiper-navigation-sides-offset,-9px) !important;  }
.swiper-button-prev { left: var(--swiper-navigation-sides-offset,-9px) !important;  }
@media screen and (max-width: 640px) {
.swiper .linea1, .swiper .linea2 {display:block;}
.swiper-slide { padding:5px 15px; line-height: 24px;}
}
@media screen and (min-width: 640px) {
.swiper .linea1::after {content:' - '}
}
.swiper .klaviyo-form div form{ padding: 0px !important; }
.swiper .go3176171171{line-height: 22px !important; font-family: var(--text-font-family) !important; font-size: 16px !important; color:#21444a!important; cursor:pointer!important; font-weight:700!important;}
.swiper .go3176171171 a{ color:#21444a!important; text-decoration:none!important;}
.swiper .go3176171171:hover, .swiper .go3176171171 a:hover, .swiper a:hover{ color:#497279!important; }

/* SWIPER ANNOUNCMENT BAR TIMER CSS */
.containerSlidePromo{
justify-content:center; display: inline-flex; width: fit-content; column-gap: 9px;
}
.itemSlidePromo{ align-self:center; }
.itemSlidePromo .pulsante{
padding: 4px 9px;
border: solid 1px;
border-radius: 10px;
margin-left: 10px;
}
.containerTimer {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width:165px;
}
.containerTimer .text{
font-size: 10px;
font-weight:600;
text-align: center;
}
.containerTimer .clock{
font-size: 23px; 
text-align: center;
}
.itemTimer {
text-align:center;
flex: 0 25%;
max-height:19px; 
}

@media screen and (max-width: 700px) {
.containerSlidePromo{  display:flex; flex-flow: row wrap; column-gap:5px; }
.itemSlidePromo{  align-self:center;  }
.mob1{order:1;} .mob2{order:2; /*text-transform:lowercase;*/} .mob3{order:3;} .mob4{order:4;}
.mob1:first-letter { text-transform: uppercase; } .itemSlidePromo .pulsante{font-size:13px;padding: 4px 7px;  margin-left: 6px;}
}
@media screen and (max-width: 355px) { .itemSlidePromo .pulsante{display:none;} }


/* RIDIMENSIONA TEASER KLAVIYO */
@media screen and (max-width: 640px) {
  .kl-teaser-Y6GcPQ .kl-private-reset-css-Xuajs1 .go681896951{  min-height:35px !important; }
  .kl-teaser-XwrQFv .kl-private-reset-css-Xuajs1 .go681896951{  min-height:35px !important; }
  .kl-teaser-QU6L7L .kl-private-reset-css-Xuajs1 .go681896951{  min-height:35px !important; }
  .kl-teaser-XZ9MjX .kl-private-reset-css-Xuajs1 .go681896951{  min-height:35px !important; }
  .kl-teaser-U7MyWC .kl-private-reset-css-Xuajs1 .go681896951{  min-height:35px !important; } 
  .kl-teaser-Tm3z9u .kl-private-reset-css-Xuajs1 .go681896951{  min-height:35px !important; } /* 12anni */
  
  .kl-teaser-XdS2GN .kl-private-reset-css-Xuajs1 .go681896951{  min-height:35px !important; } /* 13anni */
  
  /* .kl-teaser-TFp3VN .kl-private-reset-css-Xuajs1 .go681896951{  min-height:35px !important; } 
  .kl-teaser-RNtpVQ .kl-private-reset-css-Xuajs1 .go681896951{  min-height:35px !important; } autunno */
  button[class*="kl-teaser-"] .kl-private-reset-css-Xuajs1 .go681896951{  min-height:35px !important; } 
  .kl-teaser-U7MyWC .kl-private-reset-css-Xuajs1 p{  letter-spacing:normal !important; } /* arancione pagina prodotto */
}

.klaviyoFormBtn:hover{
  cursor:pointer;
}

 
.kl-private-reset-css-Xuajs1[role="dialog"]
{
z-index:9999999999999999999 !important;
  
}
.klaviyo-close-form svg{
z-index:9999999999999999999999999 !important; 
}




/* nascondi GOALS vitals */
.vtl-ub-goal-main-widget{ display:none !important; visibility:none!important; }



/* Bordo ultima voce menu verde FAI IL TEST*/
ul.nav-bar__linklist .nav-bar__item:last-child a{ 
    border: solid 1px green;
    padding: 0 10px;
    border-radius: 5px;
    font-weight: 600;
}

/* Pulsante upsell su 1 prodotto solo in carrello MOBILE */
.buttonContinuaShopping{display:none;}
@media screen and (max-width: 640px) {
  .buttonContinuaShopping{display:block;}
}


/* CSS SPENDING GOALS BAR*/
.container_progress {
  margin: 10px 0 20px 0;
  width: 100%;
  text-align: center;
}
.ltr_spending{
    width: 100%;
    display: flex;
    justify-content: space-between;
}
.collection__meta .ltr_spending, .marginiAvvisiCarrello .ltr_spending{
    justify-content: normal; column-gap:10px;
}

@media screen and (max-width: 640px) {
  .ltr_spending{
    display: block;
}
}

.cart-wrapper__inner-inner .goalWin .ltr_spending .mobilenewline{
  display:none;
}






.progress {
  padding: 6px;
  background: rgba(0, 0, 0, 0.25);
  border-radius: 6px;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.25), 0 1px rgba(255, 255, 255, 0.08);
}
.progress2 {
  padding: 6px;
  border-radius: 30px;
  background: rgba(0, 0, 0, 0.25);  
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.25), 0 1px rgba(255, 255, 255, 0.08);
}
.progress-bar2 {
  height: 23px;
  font-size:14px;
  color: white;
  border-radius: 30px;
  background-image:  linear-gradient(to bottom, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.05));
  transition: 0.4s linear;  
  transition-property: width, background-color;    
}
.marginiAvvisiCarrello{
  margin: 0px 40px;
}
@media screen and (max-width: 640px) {
 .mobilenewline{
  display:block;
}
  .marginiAvvisiCarrello{
  margin: 10px;
}
}

.line-item__quantity-remove{
  display:none;
}

.klaviyoTriggerPromoImmunogea{
  cursor:pointer !important;
}

@media screen and (max-width: 640px) {

  .completaOrdineUP{
   display: block !important;
        text-transform: uppercase;
        background: #3E3D3E;
        text-align: center;
        padding: 5px 16px;
        border-radius: 25px;
        color: white;
    }
  }
 
}

        
.bannerProdottoPromo{
    margin-bottom: -5px;
    margin-top: 20px;
    cursor:pointer;
}


@media screen and (min-width: 641px) {
.card__header--tight{
  padding-top: 4px;
}
}

/* FIX MOBILE Add to cart / icone carte / FAQ*/
@media screen and (max-width: 640px) {
 .secure_payment_notice{
  margin-top:10px;
}
.payment-list__item {
margin: 4px 0px !important;
}
.card__product_info_faq .card__section ul{
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
}
  .card__product_info_faq .card__section ul li{
   padding: 6px;
} 
  .bannerProdottoPromo{
    margin-top: 0px;
}
}



/* MODIFICA SELETTORE QUANTITA' CSS BOX */
/*  .product-form__variants{display:none!important;} */
 .product-form__info-item--quantity{
   display:none;
 }
.product-form__info-item--quantity .product-form__info-title{
    padding: 8px 27px;
    margin-top: 7px;
    display: block;
    height: 42px;     margin-right: 7px;
    border-radius: 2px; color: white;  background: #1c7d3c; font-size:14px;
}
  .product-form__info-content .quantity-selector {
    background-color:#f2f3f5; width: 100%;
    border: none; box-shadow: none;
  }
  .product-form__info-content .quantity-selector .quantity-selector__value {
    border-left: 2px solid white;  border-right: 2px solid white;
    color: var(--header-background); font-weight: 900;
    display: flex; font-size:120%; width: inherit;
  }
  



/* VITALS SUGGESTION */
.vitals-upsell-suggestions select{
  display: none !important;
}
.vitals-upsell-suggestions span:first-child{
  flex: 100% !important;
}
.vitals-upsell-suggestions .vt-suggestion-add{
  display: none !important;
}
.vitals-upsell-suggestions .product-options a, .vitals-upsell-suggestions .product-options, .vitals-upsell-suggestions .vtl-ub-suggestion__product{
  width: fit-content !important;
  max-width: fit-content !important;
}

@media screen and (min-width: 641px) {
.line-item__product-info-wrapper {
    align-items: top !important;
  }
}




/* UPSELL APP OCU */
.ocu-totals__has::before{ content:'Prezzo 1 Confezione: ';   }
.ocu-hero-content__totals{ align-content: end; }
h2.headline--timerless{ display:none;   }
.ocu-hero-content__description{ max-height: 38vh!important; }
.ocu-modal__content .wrapper{  height: 15vh!important; min-height: 78px!important; }
.ocu-modal__header[data-v-6ea46fef] { background-color: #eb9c4a !important; } 
.ocu-modal__header[data-v-6ea46fef] h1{ text-align:left; color:white!important;}
.ocu-modal__close .ocu-modal__cross-icon[data-v-6ea46fef], .ocu-modal__close[data-v-6ea46fef]:active, .ocu-modal__close:hover>.ocu-modal__cross-icon[data-v-6ea46fef] { fill: white !important; }
.ocu-cta__decline span{ padding: 16px 0!important; font-weight: bold!important; }
.ocu-cta__buy span{ font-weight: bold!important; }
.wrapper .ocu-cta__buy[data-v-3227e3af] { padding: 3px 10px!important; width: 115px !important; }
.wrapper .ocu-cta__decline{ padding: 10px!important; width: 105px!important; margin-left:70px;}
@media screen and (max-height: 740px) {
.ocu-hero-content__description{ max-height: 25vh!important; }
}



.cart-recap__secure-payment-list {
     max-width: none!important;
}


@media screen and (min-width: 641px){
.card__section {
    padding: 21px 30px !important;
    /* line-height:1.57!important; */
} 
  .cart-recap__notices {
    margin: 15px 0 4px 0;
}
}

.announcement-bar {
    /*background: #fff89c!important;*/
 
}

.bannerPromoInCollections{
    z-index: 999;
    position: absolute;
    right: 0;
    color: #215542;
    background-color: #c1e89d;
    font-weight: 700;
    padding: 2px 12px;
    font-size: 13px;
    border-radius: 7px; display:none;
}


/* GALLERY VIDEO PAGINE SHOPIFY */
.galleryVideo{
  padding-top: 70px;
}
@media screen and (min-width: 641px) {
.galleryVideo{
  padding-top: 110px
}
}
.galleryVideo .video-wrapper {
    margin: 1em 0 !important;
}

.noticeOverTimerProdotto{
   
    text-align: center;
    
    margin-bottom: 20px;
 
    
 
}

.noticeVaiAlCatalogo{
  margin: 13px 0;
    background-color: #ffffca;
    padding: 10px 20px;
    border: solid 1px #d9bf8f;
}




/* Nascondi pulsanti quantità nel carrello per prodotti omaggio o regali  */
.un-albero-piantato-nella-foresta-salugea-1 .line-item__quantity .quantity-selector{
  display:none;
}
.un-albero-piantato-nella-foresta-salugea-1 .line-item__quantity{
  margin:0!important;
}



li.line-item__property{
  display:none;
}


.klaviyoTriggerPromo{
   cursor: pointer; 
  text-align:center;
}


/* MODIFICA P, LI PAGINA PRODOTTO e COLLECTION DESCR*/
.product-block-list__wrapper p, .product-block-list__wrapper li, .collection__description p{
    font-size: 110%;
    line-height: 1.67;
}

#testsalugea {
  padding: 5px 20px !important;
}

.bannerProdottoPromo{cursor:pointer;}

 
/* PLAYER LIVERY */
.liveryPlayer {z-index:192392384823492394293492349; max-width:1400px; margin: 0 auto;}
@media screen and (max-width: 640px) {
 .liveryPlayer { height: 60vh; }
}


.customAnnouncementBar {display: none; }
@media screen and (max-width: 640px) {
 .customAnnouncementBarMobile {  display: block !important; }
}
@media screen and (min-width: 640px) {
 .customAnnouncementBarDesktop { max-height: 40px; display: block !important; }
}

/*PULSANTE DOWNLOAD EBOOK DIRETTO*/
.download_ebook{
display:block;
width:300px;
text-decoration:none!important;
color:#fff!important;
background-color:#009fe2;
font-size:140%;
text-align:center;
padding:15px;
 border-radius: 15px;  
margin:0 auto;
  margin-top:20px;
  
}

/* MODIFICHE CSS STORE LOCATOR*/
.template-page .container--narrow{
  max-width:1400px;
}

/* Modifiche CSS COOKIE BOT */
#CybotCookiebotDialog * { font-size:13px !important;  }
 #CybotCookiebotDialog {box-shadow: -1px -20px 20px 2000px rgba(0,0,0,0.6) !important; }
  @media screen and (max-width: 640px) {
  #CybotCookiebotDialog  {box-shadow: 0 0 20px 300px rgba(0,0,0,0.6) !important; }
  }
#CybotCookiebotDialogPoweredByText { display:none !important;}
#CybotCookiebotDialogBodyBottomWrapper, #CybotCookiebotDialogPoweredbyCybot, #CybotCookiebotDialogBodyEdgeMoreDetails { display:none !important; }
#CybotCookiebotDialogBody .CybotCookiebotScrollContainer { max-height: 13em !important; }
#CybotCookiebotDialogBodyContent { padding: 1.025em 0.625em !important;  }




.crwdcrtlShipAddress div:nth-child(6),.crwdcrtlShipAddress div:nth-child(4){ display:none!important  };



.shopify-section .section--text-centered .container h2.heading{
  display: none!important;
}


.spt-learn-more-link {text-decoration:none !important; }
.goodApiPage b{ font-size:120%;}
.gApiLink {text-decoration:underline !important;}


.block-swatch__item-text .product-label--on-sale{
  display: block;
  width: 100%;
}
.block-swatch__item-text{
  font-weight: 900;
}
.block-swatch__item{
  padding: 2px 7px 7px;
}
.block-swatch-list {
  display: flex;
  flex-wrap: wrap; /* Permette di andare a capo su mobile */
  gap: 5px;      /* Gestisce lo spazio tra i blocchi senza margini complicati */
  align-items: stretch; /* Questa è la proprietà chiave che li rende alti uguali */
}

.block-swatch {
  display: flex; /* Necessario affinché il figlio (label) occupi tutto lo spazio */
}

.block-swatch__item {
  height: 100%;  /* Forza la label a riempire tutta l'altezza del contenitore .block-swatch */
  display: flex;
  flex-direction: column;
  justify-content: center; /* Centra il contenuto verticalmente */
  align-items: center;     /* Centra il contenuto orizzontalmente */
  flex: 1;                 /* Occupa tutto lo spazio disponibile */
}




/* NEW THEME FIX */
.product-meta .product-meta__title {
  margin-bottom: 0;
}
.product-meta p {
  margin-bottom: 0;
  font-size: 90%;
}
.product-meta p.contenuto{
  font-size: 80%;
}
.product-form__info-list {
    margin-bottom: 0;
    margin-top: 10px;
    border-spacing: 0 5px;
}
@media screen and (min-width: 641px) {
    .product-form__payment-container>* {
        flex: none;
        width: calc(100% - 18px);
        margin: 9px;
    }
}
.card__section .card__separator {
    margin: 10px 0 !important;
}
.indicazione {
    margin-bottom:10px;
    margin-top:0px;
    font-size:14px;
    color:black;
    line-height:130%;
}
@media screen and (min-width: 1280px) {
 .product-block-list__wrapper {
        width: calc(55% - 15px);
    }
}
@media screen and (min-width: 1280px) {
    .product-block-list__item--info {
        width: calc(45% - 15px);
    }
}
.product-form__info-list .product-extra-info-list li{
  font-size:95%;
}
.product-item--vertical .product-item__info {
    justify-content: end;
}
@media screen and (min-width: 1000px) {
    .nav-bar__item {
        margin-right: 21px;
        padding: 17px 0;
        display: inline-block;
        /*position: relative;*/
    }
}
@media screen and (min-width: 1400px) {
    .nav-bar__item {
        margin-right: 35px;
        padding: 17px 0;
        display: inline-block;
        /*position: relative;*/
    }
}
.container--ebook .page__title {
    display: none;
}
.container--ebook {
    max-width: 1400px;
    background: #fff;
    padding: 0 30px 30px !important;
}
.container--ebook h2 {
    margin: .1em 0 .3em !important;
    font-size: 14px;
    line-height: 1.55;
}
.container--ebook h1.titolo-e {
    margin: -.7em 0 .1em !important;
    font-size: 20px;
    line-height: 1.3;
}
.announcement-bar {
            background: #d7e5d5; 
            color: #21444a; 
          }
.product-block-list__item--info h1.product-meta__title { font-weight:600; }
.custom_promo_containe_overtitle{ /* border: 1px solid var(--border-color); */  border: none; margin-bottom:20px; }
.container .page__sub-header { margin: 10px 0; }
.product-block-list__item--description .card__header { display:none; }
.product-item__reviews-badge .rating__caption{ font-size: 75%; }
.product-item__reviews-badge .rating { justify-self: center;}
.rte h3 { margin: 1em 0 .8em; }
.withTimer ul { list-style-type: none; } 
.collection__products-count, .collection__products-count-showing {display:none;}
.collection__description {margin-top:0;}
.collection__toolbar-item--layout {display:none}
@media screen and (min-width: 1440px) {
  .collection__toolbar-item--sort {
     margin-right: 0px;
  }
}
/* FIX MOBILE nuovo tema pagina prodotto, collection e grid lista prodotto */
@media screen and (max-width: 640px) {
    
  .product-gallery__carousel-wrapper {
    margin-bottom: 5px;
  }
  .product-gallery {
    margin-bottom:0px;
  }
  .custom_promo_containe_overtitle{
    margin-bottom: 22px; border:none;
  }
  .block-swatch-list {
    gap: 0px;      /* Gestisce lo spazio tra i blocchi senza margini complicati */
  }
  .block-swatch-list .block-swatch {
    flex: 1 1 0%;
  }

}






/* =========================================================
   Salugea — Service callout box (Percorsi Benessere)
   ========================================================= */
.rte .salugea-service-callout,
.salugea-service-callout {
  --sc-bg: #f0f7f1;
  --sc-border: #1ba84e;
  --sc-accent-dark: #0d5e3a;
  --sc-text: #2a2a2a;
  --sc-muted: #555555;
  --sc-radius: 4px;

  display: flex;
  gap: 16px;
  align-items: flex-start;
  background: var(--sc-bg);
  border-left: 4px solid var(--sc-border);
  border-radius: 0 var(--sc-radius) var(--sc-radius) 0;
  padding: 22px 24px;
  margin: 0 0 28px;
  font-family: inherit;
  color: var(--sc-text);
  box-sizing: border-box;
}

.salugea-service-callout *,
.salugea-service-callout *::before,
.salugea-service-callout *::after {
  box-sizing: border-box;
}

.salugea-service-callout__icon {
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  margin-top: 24px;
  color: var(--sc-accent-dark);
}

.salugea-service-callout__icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.salugea-service-callout__body {
  flex: 1 1 auto;
  min-width: 0;
}

.salugea-service-callout__eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--sc-border);
  margin: 0 0 6px;
  line-height: 1.2;
}

.rte .salugea-service-callout__title,
.salugea-service-callout__title {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 10px;
  padding: 0;
  color: var(--sc-accent-dark);
  text-transform: none;
  letter-spacing: normal;
  font-family: inherit;
}

.rte .salugea-service-callout__text,
.salugea-service-callout__text {
  font-size: 14.5px;
  line-height: 1.6;
  color: var(--sc-muted);
  margin: 0 0 10px;
  padding: 0;
  font-family: inherit;
}

.rte .salugea-service-callout__body > .salugea-service-callout__text:last-child,
.salugea-service-callout__body > .salugea-service-callout__text:last-child {
  margin-bottom: 0;
}

.salugea-service-callout__text strong {
  color: var(--sc-text);
  font-weight: 700;
}

.salugea-service-callout__text--accent {
  color: var(--sc-text);
  font-weight: 500;
}

/* Mobile */
@media (max-width: 600px) {
  .rte .salugea-service-callout,
  .salugea-service-callout {
    padding: 18px 20px;
    gap: 12px;
    margin: 0 0 22px;
  }
  .salugea-service-callout__icon {
    width: 19px;
    height: 19px;
    margin-top: 22px;
  }
  .rte .salugea-service-callout__title,
  .salugea-service-callout__title {
    font-size: 16.5px;
  }
  .rte .salugea-service-callout__text,
  .salugea-service-callout__text {
    font-size: 14px;
  }
}



/* Mobile */
@media (max-width: 380px) {
  .buttonContinuaShopping a{
    line-height: 20px;
    font-size: 90%;
    padding: 12px;
  }
  .page__header--stack h1{ font-size:22px;}
  .page__header--stack {align-items: center;}
  .product-block-list__item--description .text--pull h1{
    font-size: 145%;
    line-height: 1.4;
  }
}



.coupon-toast {
    position: fixed;
    left: 50%;
    bottom: 24px;
    z-index: 999999;
    transform: translateX(-50%) translateY(20px);
    opacity: 0;
    background: #1f1f1f;
    color: #ffffff;
    padding: 12px 18px;
    border-radius: 999px;
    font-size: 14px;
    line-height: 1.4;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.18);
    transition: opacity 0.25s ease, transform 0.25s ease;
    pointer-events: none;
  }

  .coupon-toast.is-visible {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
  }

  .coupon-toast--error {
    background: #9f1d1d;
  }


  .bulletInPromo a{
    cursor: pointer
  }
  

/* fix category product */

.product-item__price-list {
    text-align: center;
    width: 100%;
    display: block;   
    margin-bottom:10px;
}

.product-item--vertical .price:not(.price--compare), .product-item--list .price:not(.price--compare) {
  text-align:center;
  color:black;
}

.product-item__price-list .price.price--compare,
.product-item--vertical .price:not(.price--compare), .product-item--list .price:not(.price--compare) {
    font-size: 14px;
    font-weight:bold;
    color:var(--accent-color);
}

.product-item__price-list .price.price--compare{
  color:black;
}

@media screen and (max-width: 640px) {
   .product-item--vertical .product-item__action-list, .product-item--horizontal .product-item__action-list {
    margin-top: 10px;
  }
}

@media screen and (min-width: 1000px) {
    .product-item--vertical .product-item__action-list {
        margin: 5px -5px -5px;
    }
}


.expandable-content[aria-expanded] {
    max-height: 180px;
}


/* SYNESTHESIA - FIX TITLE COLLECTION */
@media screen and (min-width: 1000px) {
  .collection__meta {
      margin-top: 15px;
  }
}


/* Fix colonne per le categorie SENZA sidebar/filtri (usano classi diverse) */
@media screen and (min-width: 641px) and (max-width: 999px) {
  .product-item[class~="1/3--tablet"] {
    width: calc(33.3333% - 13.333px) !important;
  }
}

@media screen and (min-width: 1000px) {
  .product-item[class~="1/4--lap-and-up"] {
    width: calc(25% - 15px) !important;
  }
}

/* FIX MENU DESKTOP */

#desktop-menu-0-esigenze .mega-menu__inner {
  display: block;
  column-count: 4;
  column-gap: 28px;
  padding-top: 16px;
  overflow: visible;
}
#desktop-menu-0-esigenze .mega-menu__column,
#desktop-menu-0-esigenze .mega-menu__promo {
  break-inside: avoid;
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0 0 18px 0;
}

#desktop-menu-0-esigenze .mega-menu__inner {
  padding-bottom: 28px;
}

.mega-menu__title {
  font-weight: 600;
}


@media screen and (min-width: 1000px) {
  .mega-menu__title[href*="/collections/prodotti"],
  .nav-dropdown__link[href*="/collections/prodotti"],
  .mega-menu__link.link[href*="/collections/prodotti"]{
    display: inline-block;
    background-color: var(--secondary-button-background);
    color: var(--secondary-button-text-color) !important;
    padding: 8px 20px;
    font-size: 13px !important;
    letter-spacing: 0.5px;
    transition: background-color 0.2s ease;
    border-radius:50px;
  }

  .mega-menu__title[href*="/collections/prodotti"] u,
  .nav-dropdown__link[href*="/collections/prodotti"] u,
  .mega-menu__link.link[href*="/collections/prodotti"] u {
    text-decoration:none;
  }


  .mega-menu__title[href*="/collections/prodotti"]:hover,
  .nav-dropdown__link[href*="/collections/prodotti"]:hover,
  .mega-menu__link.link[href*="/collections/prodotti"]:hover {
    background-color: rgba(var(--secondary-button-background-rgb), .8);
  }

  #desktop-menu-0-ingredienti .mega-menu__link[href*="/collections/prodotti"] {
    margin-top:10px;
  }

}




#desktop-menu-0-ingredienti .mega-menu__inner {
  position: relative;
  display: block;
  overflow: visible;
  min-height: 460px;
}
#desktop-menu-0-ingredienti .mega-menu__column {
  width: 260px;
  margin: 0 0 3px 0;
}
#desktop-menu-0-ingredienti .mega-menu__title {
  margin-bottom: 0;
}
#desktop-menu-0-ingredienti .mega-menu__title:not([href="/collections/all-products"]) {
  font-weight: 400;
  color: rgb(58, 42, 47);
  font-size: 16px;
  text-transform: none;
  letter-spacing: normal;
}

#desktop-menu-0-ingredienti .mega-menu__title:not([href="/collections/all-products"]):hover, 
#desktop-menu-0-ingredienti .mega-menu__title:not([href="/collections/all-products"]):focus {
    color: var(--accent-color);
}

#desktop-menu-0-ingredienti a.mega-menu__promo {
  position: absolute;
  top: 25px;
  margin: 0;
}
#desktop-menu-0-ingredienti a.mega-menu__promo:nth-of-type(1) {
  left: 260px;
}
#desktop-menu-0-ingredienti a.mega-menu__promo:nth-of-type(2) {
  left: 570px;
}

#desktop-menu-0-ingredienti .mega-menu__inner {
  width: 860px;
  margin-left: auto;
  margin-right: auto;
}

/* SYNESTHESIA hide order by data */
.value-picker__choice-item[data-value="created-ascending"],
.value-picker__choice-item[data-value="created-descending"] {
  display: none !important;
}


/* SYNESTHESIA fix breadcrumbs */
@media screen and (max-width: 640px) {
  .breadcrumb__list {
    flex-wrap: nowrap;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    margin:0px 16px;
  }
  .breadcrumb__list::-webkit-scrollbar {
    display: none;
  }
  .breadcrumb__item {
    flex-shrink: 0;
  }
  .breadcrumb__link {
    font-size: 12px;
  }
}

/* SYNESTHESIA fix check privacy */
.newsletter__form .form__input-wrapper:has(input[type="checkbox"]) {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  text-align: left;
  width: auto;
  max-width: 440px;
  margin: 0px auto 0;
}

@media screen and (max-width: 1000px) {
  .newsletter__form .form__input-wrapper:has(input[type="checkbox"]) {
    margin: 10px auto 0;
  }
  .form__input-row.privacy-checkbox{
    margin-top:10px;
  }
}
 
.newsletter__form .form__input-wrapper:has(input[type="checkbox"]) input[type="checkbox"] {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  margin: 3px 0 0 0;
  cursor: pointer;
}
 
.newsletter__form .form__input-wrapper:has(input[type="checkbox"]) p {
  text-align: left;
  margin: 0;
  font-size:14px;
  line-height:18px;
}

.newsletter__form .form__input-wrapper a{
  text-decoration:underline;
}

/* SYNESTHESIA fix footer */
.footer {
    border-top: var(--footer-border);
    background-color: #005640;
    color: #ffffff;
    padding: 10px 0 30px;
}

.footer__aside-title,
.footer__title{
  color: #ffffff;
}

.footer__aside-item--localization .select-button {
    background-color: transparent;
    color: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.35);
    margin-bottom:10px;
  }

@media screen and (max-width: 640px) {
    .footer__block-item {
        margin-right: 0px;
        padding-right:0px;
    }
    .footer__aside-item--localization {
      margin-top: 20px;
    }
    .footer__aside-item--payment{
      margin-bottom:60px;
    }
}

.footer__aside-title{
    color: #ffffff;
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.95);
    font-weight:bold;
  }

@media screen and (min-width: 750px) {

  .footer__aside-title,
  .footer__title{
    color: #ffffff;
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.95);
    font-weight:bold;
  }

  .footer__aside-title{
    position:relative;
    top:-5px;
  }

  .footer .rte p,
  .footer__linklist{
    font-size: 15px;
      line-height: 1.6;
      color: rgba(255, 255, 255, 0.72);
      
  }

  .footer__link-item{
    padding:5px 0 0 0;
  }


  .footer__block-list {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    column-gap: 32px;
    row-gap: 4px;
  }

  .footer__block-item:has(#block-text_yrXQcW) {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: subgrid;
    align-items: start;
    margin-top: 28px;
    padding-top: 20px;
    padding-bottom: 20px;
    padding-left: 0;
    padding-right: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.15);
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
  }

  .footer__block-item:has(#block-text_yrXQcW) > #block-text_yrXQcW,
  .footer__block-item:has(#block-text_yrXQcW) .footer__collapsible-content,
  .footer__block-item:has(#block-text_yrXQcW) .rte {
    display: contents;
  }

  .footer__block-item:has(#block-text_yrXQcW)::before {
    content: "";
    grid-column: 1;
    grid-row: 1 / 5;
    align-self: center;
    margin-left: 35px;
    width: 117px;
    height: 90px;
    background-image: url('/cdn/shop/files/LOGO-SALUGEA-bianco.png?v=1786366892');
    background-repeat: no-repeat;
    background-position: left center;
    background-size: contain;
    align-self: start;
    margin-top:10px;
  }

  .footer__block-item:has(#block-text_yrXQcW) > .footer__title {
    grid-column: 2 / 4;
    grid-row: 1;
    padding: 0 35px;
    margin-bottom: 4px;
  }
  .footer__block-item:has(#block-text_yrXQcW) .rte > p:nth-child(1) {
    grid-column: 2 / 4;
    grid-row: 2 / 5;
    padding: 0 35px;
  }

  .footer__block-item:has(#block-text_yrXQcW) .rte > p:nth-child(2) {
    grid-column: 4;
    grid-row: 1;
    padding: 0 35px;
    margin-bottom: 4px;
  }
  .footer__block-item:has(#block-text_yrXQcW) .rte > p:nth-child(3) {
    grid-column: 4;
    grid-row: 2;
    padding: 0 35px;
    margin-bottom: 28px;
  }
  .footer__block-item:has(#block-text_yrXQcW) .rte > p:nth-child(4) {
    grid-column: 4;
    grid-row: 3;
    padding: 0 35px;
    margin-bottom: 4px;
  }
  .footer__block-item:has(#block-text_yrXQcW) .rte > p:nth-child(5) {
    grid-column: 4;
    grid-row: 4;
    padding: 0 35px;
  }

  .footer__block-item:has(#block-text_yrXQcW) .rte,
  .footer__block-item:has(#block-text_yrXQcW) .rte p {
    font-size: 13px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.72);
    margin: 0 0 14px;
  }

  .footer__block-item:has(#block-text_yrXQcW) .rte strong {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.95);
  }

  .footer__block-list > .footer__block-item:nth-child(6) {
    grid-column: 1 / -1;
  }

  .footer__aside {
    display: grid;
    grid-template-columns: 1fr 1fr auto auto;
    column-gap: 24px;
    row-gap: 12px;
    align-items: start;
  }

  .footer__aside-item--localization {
    grid-column: 1 / 3;
    grid-row: 1;
    line-height: 1.4;
  }
  .footer__aside-item--localization::after {
    content: "";
    display: table;
    clear: both;
  }
  .footer__aside-item--localization .footer__localization-form {
    float: left;
    margin: 0 16px 8px 0;
  }
  .footer__aside-item--localization p.hidden-pocket {
    line-height: 1.4;
    margin: 0;
  }

  

  .footer__aside-item--social {
    grid-column: 3;
    grid-row: 1;
  }
  .footer__aside-item--payment {
    grid-column: 4;
    grid-row: 1;
  }
  .footer__aside-item--payment .payment-list {
    flex-wrap: nowrap;
  }

 .footer__block-item:has(#block-text_yrXQcW)::after {
    content: "";
    grid-column: 5;
    grid-row: 1 / 5;
    align-self: start;
    margin-top: 4px;
    margin-left: 35px;
    width: 140px;
    height: 148px;
    background-image: url('/cdn/shop/files/haccp_controllato.webp?v=1786372193'), url('/cdn/shop/files/bioagricert.webp?v=1786372210');
    background-repeat: no-repeat, no-repeat;
    background-size: 140px 70px, 140px 70px;
    background-position: 0px 0px, 0px 78px;
  }

}

@media screen and (max-width: 749px) {
  .footer__block-list::after {
    content: "";
    display: block;
    width: 288px;
    height: 70px;
    margin: 20px auto 0;
    background-image: url('/cdn/shop/files/haccp_controllato.webp?v=1786372193'), url('/cdn/shop/files/bioagricert.webp?v=1786372210');
    background-repeat: no-repeat, no-repeat;
    background-size: 140px 70px, 140px 70px;
    background-position: 0px 0px, 148px 0px;
  }
}

.footer .rte a:not(.button){
    color:#b6d99a;
  }


/* =====================================================================
   Sezione icone
   ===================================================================== */

/* Sfondo della sezione: bianco */
#shopify-section-template--27387577926017__text_with_icons_GfH8TG .section {
  background-color: #ffffff;
}

/* Layout card: niente sfondo/bordo sulla card, solo icona + testo centrati */
.text-with-icons {
  gap: 20px;
  flex-wrap: wrap;
  justify-content: center;
}

.text-with-icons__item {
  flex: 1 1 260px;
  max-width: 320px;
  flex-direction: column;
  align-items: center;
  text-align: center;
  background: transparent !important;
  border: none;
  border-radius: 0;
  padding: 24px 0px;
  box-shadow: none;
}

/* Icona: tondo con sfondo grigiolino (come il resto della pagina) e un
   bordino sottile verde-brand */
.text-with-icons__icon-wrapper {
  width: 64px;
  height: 64px;
  min-height: 64px;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgb(247 244 242 / 1);
  /*border: 4px solid #b6d99a;*/
  border:0;
  border-radius: 50%;
  margin: 0 0 18px 0;
  box-shadow: none;
}

.text-with-icons__icon-wrapper svg {
  width: 28px;
  height: 28px;
}

.text-with-icons__content-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.text-with-icons__title {
  font-size: 17px;
  margin-bottom: 8px;
}

.text-with-icons__content {
  font-size: 14px;
  line-height: 1.6;
}

/* -----------------------------------------------------------------
   Mobile: scroll orizzontale invece della lista impilata.
   Ho reso le regole più "pesanti" (!important, position/transform
   azzerati) perché se il tema ha inizializzato un carosello JS
   (Flickity) sulla sezione, quello applica stili inline che possono
   vincere sulle regole normali — motivo per cui la prima versione
   probabilmente non si vedeva sul tuo telefono (icone tutte a
   sinistra e card sovrapposte è tipico di un carosello JS che è
   entrato in conflitto con le mie regole flex).

   Se anche questa versione non dovesse funzionare sul telefono reale,
   il modo più sicuro è disattivare il carosello direttamente dalle
   impostazioni della sezione nel Theme Customizer di Shopify
   (di solito una voce "Layout mobile" con opzioni "Carosello /
   Griglia impilata") invece di combattere via CSS con lo script.
   ----------------------------------------------------------------- */
@media screen and (max-width: 749px) {
  .text-with-icons.text-with-icons--stacked {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 16px;
    padding: 4px 24px 20px !important;
    justify-content: flex-start !important;
    text-align: center;
  }

  .text-with-icons--stacked .text-with-icons__item {
    display: flex !important;
    position: static !important;
    transform: none !important;
    left: auto !important;
    top: auto !important;
    flex: 0 0 78% !important;
    width: 78% !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    scroll-snap-align: center;
    margin-bottom: 0 !important;
  }
}


/* fix layout filters */
.collection__mobile-filters-recap{
  padding-top:0px;
  border-bottom:0px;
}

.collection__mobile-active-filters-results{
  margin-top:5px;
}

/* Filtri desktop: stesso stile del mobile — bordo separatore, freccina a destra, spaziature coerenti */

.layout .layout__section.layout__section--secondary.hidden-pocket .card{
  border-radius:16px;
  }

@media screen and (min-width: 1000px) {

  .card__section.card__section--tight{
    padding: 21px 20px !important;
  }

  /* Ogni gruppo di filtro: bordo separatore + padding come su mobile */
  .collection__filter-group {
    border-top: 1px solid var(--border-color);
    padding: 13px 20px 14px;
    margin: 0 -20px;
  }

  /* Titolo del gruppo: freccina allineata a destra */
  .collection__filter-group-name {
    justify-content: space-between;
  }

  /* Filtri "a link" (se presenti in altre collection) */
  .collection__filter-linklist {
    padding: 4px 0 8px;
  }
  .collection__filter-linklist .collection__filter-linklist {
    padding-left: 10px;
  }
  .collection__filter-link {
    padding: 3px 0 4px;
  }

  /* Filtri a swatch colore (se presenti) */
  .collection__filter-color-list {
    padding: 7px 0 5px 6px;
  }

  /* Lista con checkbox: stessa spaziatura del mobile */
  .collection__filter-collapsible .collection__filter-checkbox-list {
    padding:6px 0 0px 0px;
    font-size:14px;
  }
  .collection__filter-group:last-child .collection__filter-checkbox-list {
    padding-bottom: 7px;
  }
  .collection__filter-checkbox {
    padding: 2px 0 3px;
  }
 
  .collection__filter-checkbox .checkbox-wrapper {
      margin: 4px 0;
  }

}


/* fix scatto scroll bar quando apro filtra per */
html {
  scrollbar-gutter: stable;
}

/* fix border radius per tutti i bottoni */

.button{
  border-radius:50px;
}



/* ===== Card prodotto: via l'effetto griglia + contrasto sfondo immagine ===== */

.collection__toolbar {
  /*background-color:var(--background);*/
  background-color:white;
  
  margin-bottom:20px;
  box-shadow: none;
  border:1px solid var(--border-color);
  font-size:16px;
  @media screen and (min-width: 641px) {
    border-radius:16px;
  }

}



.collection__description .expandable-content__toggle{
 padding-left:0px;
 padding-right:0px;
}

.expandable-content__toggle{
  background-color:var(--background);
}

@media screen and (min-width: 641px) {
    .collection .card__header {
        padding: 0px 0px 0;
    }
} 

.expandable-content__toggle:before {
    background: linear-gradient(
        color-mix(in srgb, var(--background) 0%, transparent),
        color-mix(in srgb, var(--background) 40%, transparent) 15%,
        var(--background)
    );
}

/* 1) Rimuove le linee divisorie tra le card (l'effetto "tabella/griglia") */

.collection .card{
  border:0px;
  background-color:transparent;
}

.product-list {
  border-top: none !important;
  border-bottom: none !important;
  background-color:transparent;
}

.product-item::after,
.custom-content--product .product-item::after {
  box-shadow: none !important;
}

.product-item{
  background-color:transparent;
}

/* 2) Crea una "cornice" chiara dietro l'immagine, per dare contrasto con lo sfondo bianco della pagina */
.product-item__image-wrapper {
  border-radius: 16px !important;
  overflow: hidden !important;
  margin-bottom:10px;
  border:1px solid var(--border-color);
}

.product-item__label-list>.product-label {
    border-radius: 3px 3px 3px 3px;
    margin-left: 8%;
}

.product-label--on-sale {
    background: var(--header-background);
}

.product-item__info-inner{
  padding:0px 10px;
}

/* 3) Su schermi piccoli riduce il raggio per non "schiacciare" l'immagine */
@media (max-width: 749px) {
  .product-item__image-wrapper {
    border-radius: 12px !important;
  }
  .product-item__info-inner{
    padding:0px 5px;
  }
}

/* 4) Niente più padding sulla card: lo spazio tra i prodotti lo gestisce solo il gap.
      Così il 1° prodotto parte dal bordo esterno e il 4° finisce esattamente sul bordo destro. */
.product-item {
  padding: 0 !important;
}

.product-list--scrollable.flickity-enabled .product-item {
  padding: 0 5px !important;
}

.product-list {
  gap: 50px 20px !important;
}

/* Le colonne sono a larghezza fissa in percentuale: vanno ridotte esattamente
   della quota di gap che il gap stesso introduce, altrimenti la riga andrebbe in overflow */

/* Mobile: 2 colonne per riga → 1 gap da togliere */
@media screen and (max-width: 640px) {
  .product-list--collection .product-item--vertical {
    width: calc(50% - 10px) !important;
  }
}

/* Tablet: 3 colonne per riga → 2 gap da togliere */
@media screen and (min-width: 641px) {
  .product-item[class*="1/3--tablet-and-up"] {
    width: calc(33.3333% - 13.3333px) !important;
  }
}

/* Desktop: 4 colonne per riga → 3 gap da togliere */
@media screen and (min-width: 1280px) {
  .product-item[class*="1/4--desk"] {
    width: calc(25% - 15px) !important;
  }
}

/* 5) Testi dei prodotti allineati a sinistra */
.product-item__info,
.product-item__info-inner,
.product-item__title,
.product-item__price-list,
.indicazione,
.product-item__reviews-badge {
  text-align: left !important;
}

/* 6) Titolo (e prezzo/tag) ancorati in alto, bottone sempre allineato in basso a parità di riga */
.product-item__info {
  justify-content: flex-start !important;
}

.product-item__action-list {
  margin-top: auto !important;
}

@media screen and (max-width: 999px) {
    .product-list--collection {
        padding:0px 20px;
        gap:10px;
    }
}

.product-item__title {
    margin-bottom: 0px;
}

@media screen and (min-width: 1000px) {
    .product-list:before {
      border: 1px solid transparent; 
    }
}

@media screen and (max-width: 999px) {
    .product-list--scrollable .product-item {
        border: 1px solid transparent;
    }
}


.promo-block__image-clip{
  border-radius:16px;
}


.expandable-content__toggle {
    color: var(--heading-color);
}


/* PRODUCT PAGE */

.product-block-list__item .card.card--collapsed.card--sticky{
  background-color:transparent;
  border:0px;
}

/* Desktop: 4 colonne per riga → 3 gap da togliere (SOLO griglia normale, non i caroselli) */
@media screen and (min-width: 1280px) {
  .product-list:not(.product-list--scrollable) .product-item[class*="1/4--desk"] {
    width: calc(25% - 15px) !important;
  }
}

/* Nei caroselli Flickity lo spazio tra le card lo crea già il padding (0 5px):
   qui la larghezza deve restare al 25% pieno, altrimenti resta uno spazio vuoto
   a fine riga che fa "sbucare" il prodotto successivo. */
@media screen and (min-width: 1280px) {
  .product-list--scrollable.flickity-enabled .product-item[class*="1/4--desk"] {
    width: 25% !important;
  }
}

@media screen and (min-width: 641px) {
  .product-item[class*="1/3--tablet-and-up"] {
    width: calc(33.3333% - 13.3333px) !important;
  }
}

/* Freccine dei caroselli (Flickity) sempre visibili, non solo in hover */
.flickity-prev-next-button:not([disabled]) {
  opacity: 1 !important;
  transform: scale(1) !important;
}

@media screen and (max-width: 999px) {
    .product-block-list__item--info .card--collapsed {
        box-shadow: none;
        padding-top:20px;
    }

    .product-block-list__item.product-block-list__item--content,
    .product-block-list__item.product-block-list__item--description,
    .product-block-list__item.product-block-list__item--comparison-table{
      margin:0px 16px;
    }

    .product-block-list__item .card{
      border: 1px solid var(--border-color);
    }

    .text-with-icons--boxed .text-with-icons__item{
      max-width:100%;
    }

    .section__action-link.link{
      text-decoration:underline;
    }

}

/* checkbox privacy */
.invalid-feedback {
    color: red;
    margin-left:25px;
}
.checkBoxTerminiCondizioni{
 margin:20px 0 20px 0; 
 line-height:22px;
}

/* CUSTOM SYNESTHESIA START - layout checkbox termini e condizioni */
.checkBoxTerminiCondizioni .f-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  cursor: pointer;
}

.checkBoxTerminiCondizioni .f-checkbox input[type="checkbox"] {
  flex: 0 0 auto;
  margin: 6px 0 0 0; /* allinea la checkbox alla prima riga di testo */
}

.checkBoxTerminiCondizioni .f-checkbox .checkmark {
  flex: 0 0 auto;
}

.checkBoxTerminiCondizioni .f-checkbox > span:last-child {
  flex: 1 1 auto;
  text-align: left;
}


.synesthesia-highlight {
  animation: synesthesiaPulse 1.5s ease-out;
  border-radius: 6px;
}
@keyframes synesthesiaPulse {
  0% { box-shadow: 0 0 0 0 rgba(217, 83, 79, 0.55); }
  100% { box-shadow: 0 0 0 10px rgba(217, 83, 79, 0); }
}


/* CUSTOM SYNESTHESIA START - tasto sticky nascosto finché il tasto nel corpo è visibile */
@media screen and (max-width: 640px) {
  .cart-recap__checkout_sticky_container {
    transform: translateY(120%);
    transition: transform 0.35s ease-in-out;
    pointer-events: none;
    box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.15);
  }
  .cart-recap__checkout_sticky_container.is-visible {
    transform: translateY(0);
    pointer-events: auto;
  }

}


/* CUSTOM SYNESTHESIA END */



/* ============================================================
   "I nostri professionisti" — restyling card
   Pagina: /pages/chiedi-al-professionista
   Scoperto tramite ispezione del DOM live (tema "Warehouse").

   Lo scope è limitato all'id della sezione qui sotto, così la
   modifica NON tocca eventuali altre sezioni "offers" presenti
   altrove nel sito che usano la stessa componente di card.
   Se in futuro la sezione viene rimossa e ricreata l'id
   potrebbe cambiare: in quel caso basta aggiornare il selettore
   con il nuovo "data-section-id" (visibile ispezionando la
   sezione), oppure — se vuoi che lo stile si applichi a TUTTE
   le sezioni "offers" del sito — sostituisci ogni occorrenza di
   "#shopify-section-template--27577490604417__offers_WQ9nWm"
   con semplicemente ".offer-item".
   ============================================================ */

/* CUSTOM ANDREA SALUGEA - 08/10/2026: i selettori qui sotto non usano piu' l'id numerico della sezione (cambia a ogni copia
   del tema). #main :where(.template-page--professionista [id$="__offers_WQ9nWm"]) ha la stessa specificita' dell'id originale
   e vale solo per la pagina con template "professionista". */
#main :where(.template-page--professionista [id$="__offers_WQ9nWm"]) .offer-item {
  background: #ffffff;
  border: none;
  border-radius: 18px;
  box-shadow: 0 4px 18px rgba(0, 86, 64, 0.08);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  overflow: hidden;
}

#main :where(.template-page--professionista [id$="__offers_WQ9nWm"]) .offer-item:hover {
  box-shadow: 0 14px 30px rgba(0, 86, 64, 0.16);
}

#main :where(.template-page--professionista [id$="__offers_WQ9nWm"]) .offer-item__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

#main :where(.template-page--professionista [id$="__offers_WQ9nWm"]) .offer-item__image-wrapper {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto 20px;
  border: 4px solid #eef4f0;
  box-shadow: 0 0 0 1px rgba(0, 86, 64, 0.12);
}

#main :where(.template-page--professionista [id$="__offers_WQ9nWm"]) .offer-item__image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#main :where(.template-page--professionista [id$="__offers_WQ9nWm"]) .offer-item__title {
  margin-bottom: 6px;
  font-size: 19px;
  letter-spacing: 0.2px;
}

#main :where(.template-page--professionista [id$="__offers_WQ9nWm"]) .offer-item__content h5 {
  display: inline-block;
  margin: 0 0 16px;
  padding: 4px 14px;
  background: #eef4f0;
  color: #005640;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 999px;
}

#main :where(.template-page--professionista [id$="__offers_WQ9nWm"]) .offer-item__content p {
  color: #6b5d61;
  font-size: 15px;
  line-height: 1.6;
}



@media screen and (min-width: 641px) {
  .cart-wrapper__inner .section {
    margin: 0px 0;
  }
}

.collection-item__image-wrapper--product-fallback .aspect-ratio img {
  top: -5px;
}


/* FIX MINICART MOBILE */

@media screen and (max-width: 640px) {
  .mini-cart {
    width: 88vw !important;
    max-width: 380px !important;
    left: auto !important;
    right: 0px !important;
    border-radius: 3px;
    box-shadow: -2px 0 12px rgba(0, 0, 0, .15);

    height: auto !important;
    max-height: 66.666vh !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;   /* <-- prima era "hidden", ora lascia uscire il triangolino */
  }

  .mini-cart__inner {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    overflow: hidden !important;    /* <-- il taglio ora avviene qui, un livello più interno */
    border-radius: 3px;
  }

  .mini-cart__content {
    flex: 0 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  .mini-cart__line-item-list {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  .mini-cart__recap {
    flex: 0 0 auto !important;
  }
  .mini-cart .icon--nav-triangle-borderless {
    right: 67px !important;
  }
  body:has(.mini-cart[aria-hidden="false"]) {
    overflow: hidden; /* blocca lo scroll della pagina sotto mentre il carrello è aperto */
  }

  body:has(.mini-cart[aria-hidden="false"])::after {
    content: "";
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .45);
    z-index: 1;
  }

  html.is-locked .shopify-section-group-header-group.shopify-section__header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 5 !important;
  }

  body:has(.mini-cart[aria-hidden="false"]) #shopify-section-announcement-bar {
    position: relative;
    z-index: 5;
  }

}

.text-with-icons__icon-wrapper img{
  max-width:45px;
}



/* fix wishlist */
main:has(.wishlist-hero-page-header) {
  max-width: 1480px;
  box-sizing: border-box !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-top: 48px !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
  font-family: var(--heading-font-family, "optima-nova-lt-pro", sans-serif) !important;
}
@media screen and (max-width: 749px) {
  main:has(.wishlist-hero-page-header) {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

.wishlist-hero-page-header {
  text-align: center !important;
  color: #005640 !important;
}
.wishlist-hero-page-header svg {
  color: #005640 !important;
  fill: #005640 !important;
  width:0.7em !important;
}

.wishlist-hero-page-actions-bar {
  float: none !important;
  display: flex !important;
  justify-content: center !important;
}

.wishlist-hero-footer-share-btn {
  font-family: proxima-nova, sans-serif !important;
  text-transform: none !important;
  font-weight: 600 !important;
  border-radius: 50px !important;
  background-color: #005640 !important;
  color: #ffffff !important;
  padding: 10px 10px !important;
  margin-left:10px !important;
  top:-4px;
}
.wishlist-hero-footer-share-btn svg {
  fill: #ffffff !important;
}
.wishlist-hero-footer-share-btn:hover {
  background-color: #003d2d !important;
}

.wishlist-hero-list-card-footer-add-all-to-cart-dialog,
.wishlist-hero-list-card-footer-delete-all,
.wishlist-hero-footer-send-email-btn{
  color: #005640 !important;
}


.wishlist-hero-footer-send-email-btn svg{
  margin-right:4px;
}

.wishlist-hero-list-no-items-content,
.wishlist-hero-list-no-items-text {
  font-family: proxima-nova, sans-serif !important;
}

.wishlist-hero-items-count:not(:empty) {
  display: flex !important;
  position: absolute !important;
  top: 1px !important;
  right: 0px !important;
  min-width: 20px !important;
  height: 20px !important;
  padding: 0 4px !important;
  border-radius: 999px !important;
  background-color: rgb(65, 173, 73) !important;
  color: #ffffff !important;
  font-family: proxima-nova, sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  align-items: center !important;
  justify-content: center !important;
}
.wishlist-hero-items-count:empty {
  display: none !important;
}

@media screen and (min-width: 1920px) {
  .wishlist-hero-list-card {
    max-width: 25% !important;
    flex-basis: 25% !important;
  }
}

.wishlist-hero-list-card-product-image {
  height: 180px !important;
  padding-top: 180px !important;
  background-size: contain !important;
}

.wishlist-hero-shared-list-view {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

#wishlist-hero-shared-list-view{
  padding-left:0px !important;
  padding-right:0px !important;
}

@media screen and (max-width: 749px) {
  .wishlist-hero-list-card-footer .MuiButtonGroup-root {
    justify-content: center !important;
  }
  .wishlist-hero-list-card-footer-delete {
    margin-left: 8px !important;
  }
  .wishlist-hero-list-footer{
    text-align:center;
  }
}


.wishlist-hero-list-card-footer-add-to-cart{
  background: var(--primary-button-background) !important;
  color: var(--primary-button-text-color) !important;
      border-radius: 50px !important;
}

.wishlist-hero-header-icon {
    padding: 7px 6px 0px 6px;
  }

@media screen and (max-width: 749px) {
  .header__action-item{
    padding: 0 6px;
    
  }

  .header__action-item-link{
    transform: scale(0.8);
  }

  .wishlist-hero-header-icon {
    padding: 7px 6px 0px 6px;
    transform: scale(0.8);
  }
}

#wishlisthero-product-page-button-container{
  padding-top:0px !important;
  margin-top:-5px !important;
}

.product__form--add-to-cart{
  margin: 0 auto !important;
}


#desktop-menu-0-ingredienti .mega-menu__title[href="#"],
#desktop-menu-0-ingredienti .mega-menu__title[href="/en#"] {
  text-transform:uppercase;
  font-weight: 600;
  color: var(--heading-color);
  line-height:130%;
  margin-bottom:10px;
}

#desktop-menu-0-ingredienti .mega-menu__title[href="#"]:hover,
#desktop-menu-0-ingredienti .mega-menu__title[href="/en#"]:hover {
  color: var(--heading-color);
}

.mega-menu__title.heading[href="#"],
.mega-menu__title.heading[href="/en#"]{
  cursor: default;
}

.mobile-menu__nav-list-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  font-size: 15px;
}

.mobile-menu__nav-list-toggle svg {
  flex-shrink: 0;
}

.mobile-menu__nav-list-item {
  margin-bottom: 10px;
}

.mobile-menu__nav-list-toggle[href$="#"] {
  font-weight: 600;
  color: rgb(0, 86, 64);
  text-transform:uppercase;
  font-family:var(--heading-font-family);
}

/* CUSTOM SYNESTHESIA - Quantità allineata a destra, come la card di acquisto */
.product-form__info-list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
}

.product-form__info-list .product-form__info-item {
  display: flex;
  align-items: center;
  width: auto;
}

@media screen and (max-width: 1000px) {
  .product-form__info-list {
    flex-direction: column;
    align-items: flex-start;
  }
  .product-form__info-list .product-form__info-item {
    width:auto;
  }
}
.product-form__info-item--quantity {
  gap: 10px;
}

.product-form__info-item--quantity .product-form__info-title {
  background: transparent;
  color: rgb(58, 42, 47);
  padding: 8px 0 0 0 !important;
  margin: 0 !important;
  font-weight: 600;
}

.product-form__info-item--quantity .product-form__info-content {
  padding: 0 !important;
}

.quantity-selector.quantity-selector--product {
  background-color: rgb(255, 255, 255) !important;
  border: 1px solid rgb(231, 226, 222) !important;
  border-radius: 10px !important;
}

.quantity-selector__value {
  width: 48px !important;
  min-width: 48px !important;
  flex: none !important;
  text-align: center;
  font-size: 15px !important;
}

.quantity-selector__button {
  padding: 0 12px;
}

/* Su schermi stretti nasconde la scritta "Quantità:" per evitare che il box vada a capo */
@media (max-width: 400px) {
  
  .product-form__info-item--quantity {
    gap: 5px;
  }
  .product-form__info-list {
    flex-wrap: nowrap;
  }
}

.product-etichette{
  line-height:100%;
}

.product-etichetta{
  border-radius: 3px 3px 3px 3px;
  color: #fff;
  font-weight: var(--text-font-bolder-weight);
  font-size: 10px;
  vertical-align: top;
  border-radius: 3px;
  width: max-content;
  padding: 3px 5px;
  line-height: 1;
  display: inline-block;
  text-transform:uppercase;
  margin:0px 5px 5px 0px;
  font-weight:normal;
  @media screen and (max-width: 640px) {
    font-size:10px;
    padding: 2px 5px;
    margin:0px 5px 5px 0px;
  }
}


.product-meta__title.heading.h1{
  line-height: 100%;
  margin-bottom: 10px;
  font-size: 2.8em; /* CUSTOM ANDREA SALUGEA - 08/10/2026: titolo prodotto un po' piu' piccolo (era 3em) */
}

/* CUSTOM ANDREA SALUGEA - 08/10/2026: titolo prodotto a 2.7em sui telefoni da 360 px (fino a 374 px); da 375 px resta 2.8em */
@media screen and (max-width: 374px) {
  .product-meta__title.heading.h1 {
    font-size: 2.7em;
  }
}

.product-item__title{
  line-height:110%; 
  margin-bottom:5px;
  @media screen and (min-width: 641px) {
    font-size:17px;
    line-height:110%;     
  }
}

.template-product .product-item__label-list {
      
        left: auto;
        right: 24px;
    }





/* CUSTOM ANDREA SALUGEA - Widget abbonamenti: due riquadri, badge sconto e prezzi a destra - 08/10/2026 */
/* Aggiornato 08/10/2026: riga del prezzo sopra nascosta quando c'e' il widget, barrato anche su "Acquisto singolo", riquadro attivo evidenziato.
   I testi (titolo + badge, nome del piano senza prezzo, listino barrato) e il riquadro attivo li gestisce lo script con lo stesso titolo in assets/custom.js */

/* Con il widget visibile il prezzo sta nei riquadri: si nasconde la riga del prezzo sopra.
   Torna da sola dove il widget non c'e' (percorsi, confezioni multiple senza abbonamento). */
.product-form:has(.shopify_subscriptions_app_block:not(.shopify_subscriptions_app_block--hidden)) .product-form__info-list {
  display: none;
}

.shopify_subscriptions_fieldset .plan_card {
  border: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  margin-top: 12px !important;
}

.shopify_subscriptions_fieldset .plan_card .subscription_group,
.shopify_subscriptions_fieldset .plan_card .subscription_group:first-child {
  position: relative;
  background: #fff;
  border: 1px solid #ddd6cf !important;
  border-radius: 12px; /* come gli accordion della colonna sinistra (div.card) - agg. 08/10/2026 */
  padding: 18px !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.shopify_subscriptions_fieldset .plan_card .subscription_group:first-child {
  margin-bottom: 28px;
}

.shopify_subscriptions_fieldset .plan_card .subscription_group + .subscription_group {
  padding-top: 24px !important;
}

/* Riquadro attivo: quello che contiene l'opzione selezionata (classe sal-active messa dallo script).
   Bordo piu' leggero (agg. 08/10/2026): linea verde scuro di 1 px con alone verde chiaro di 1 px, invece di 2 px pieni */
.shopify_subscriptions_fieldset .plan_card .subscription_group.sal-active {
  border-color: #005640 !important;
  box-shadow: 0 0 0 1px rgba(0, 86, 64, 0.3);
  background-color: #f5faf7;
}

/* Etichetta di sconto ("25% di sconto") sul bordo del riquadro: arancione #d96e39, testo bianco (agg. 08/10/2026).
   Padding ridotto due volte (agg. 08/10/2026): ora 4/9 px, alta 24 px; top -13 px la tiene centrata sulla linea del bordo */
.shopify_subscriptions_fieldset .sal-sub-badge {
  position: absolute;
  top: -13px;
  right: 24px;
  background: #d96e39;
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  line-height: 1;
  padding: 4px 9px;
  border-radius: 10px;
}

/* Etichetta anche su "Acquisto singolo" quando il prezzo e' scontato a listino (classi messe dallo script):
   spazio sopra il riquadro per non toccare la descrizione.
   Agg. 08/10/2026: spazio interno uguale sopra e sotto (21 px, prima 24 e 18), cosi' la riga e' centrata nel riquadro;
   con l'etichetta piu' piccola i prezzi restano staccati */
.shopify_subscriptions_fieldset .plan_card.sal-has-top-badge {
  margin-top: 28px !important;
}

.shopify_subscriptions_fieldset .plan_card .subscription_group:first-child.sal-has-badge {
  padding-top: 21px !important;
  padding-bottom: 21px !important;
}

.shopify_subscriptions_fieldset .title_and_price_wrapper > .group_name {
  font-size: 20px !important;
  margin-bottom: 4px !important;
}

/* Acquisto singolo */
.shopify_subscriptions_fieldset .one_time_purchase_option_app_block.group_list_item {
  align-items: center;
}

.shopify_subscriptions_fieldset .one_time_purchase_option_app_block span {
  font-size: 17px !important;
}

/* Righe dei piani: nome a sinistra, listino barrato + prezzo a destra */
.shopify_subscriptions_fieldset .group_list li .group_list_item {
  align-items: center;
  margin: 0 !important;
  padding: 14px 0;
}

.shopify_subscriptions_fieldset .group_list li:last-child .group_list_item {
  padding-bottom: 2px;
}

.shopify_subscriptions_fieldset .group_list li + li .group_list_item {
  border-top: 1px solid var(--border-color);
}

.shopify_subscriptions_fieldset .group_list .title_and_price_wrapper {
  align-items: center !important;
}

.shopify_subscriptions_fieldset .group_list .title_and_price_wrapper > span {
  flex: 1 1 auto;
  font-size: 15px !important;
  line-height: 1.2 !important;
  color: var(--text-color);
}

/* Prezzi uguali in tutte le righe (Acquisto singolo e piani): listino barrato + prezzo.
   Da 641 px (tablet e desktop) barrato 18 px e prezzo 22 px (agg. 08/10/2026); 17 e 21 px tra 1000 e 1023 px, dove la colonna e' piu' stretta.
   Sui telefoni le misure sono nelle regole in fondo */
.shopify_subscriptions_fieldset .title_and_price_wrapper .sal-sub-full {
  align-self: center;
  margin-left: auto;
  padding-left: 8px;
  color: #8f8d8d;
  font-size: 18px;
  white-space: nowrap;
}

.shopify_subscriptions_fieldset .title_and_price_wrapper .in_widget_price {
  align-self: center !important;
  padding-left: 12px !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  color: var(--heading-color) !important;
}

/* Pallini di selezione */
.shopify_subscriptions_fieldset .custom_radio_button:before {
  width: 20px;
  height: 20px;
  margin-top: 0;
  margin-right: 12px;
  box-shadow: 0 0 0 1.5px #6d7175;
}

.shopify_subscriptions_fieldset .custom_radio_button:has(input[type="radio"]:checked):before {
  border: 4px solid #fff;
  box-shadow: 0 0 0 1.5px #6d7175;
}

/* Avviso di rinnovo automatico: testo piccolo sotto i riquadri */
.shopify_subscriptions_app_block .shopify_subscriptions_app_policy {
  border: 0 !important;
  background: transparent !important;
  padding: 10px 4px 0 !important;
  font-size: 13px !important;
  color: #8f8d8d;
}

/* Desktop stretto (1000-1023 px): la colonna destra e' larga 377-389 px, prezzi di un punto piu' piccoli per restare staccati dal nome */
@media screen and (min-width: 1000px) and (max-width: 1023.98px) {
  .shopify_subscriptions_fieldset .title_and_price_wrapper .sal-sub-full {
    font-size: 17px;
  }

  .shopify_subscriptions_fieldset .title_and_price_wrapper .in_widget_price {
    font-size: 21px !important;
  }
}

/* Telefoni: misure verificate perche' nessuna riga vada a capo.
   Barrato: 16 px tra 401 e 640 px (412 px: 22 px di margine), 15 px tra 375 e 400, 13 px tra 360 e 374 (360 px: massimo possibile), 12 px sotto i 350 */
@media screen and (max-width: 640px) {
  .shopify_subscriptions_fieldset .title_and_price_wrapper .sal-sub-full {
    font-size: 16px;
  }

  .shopify_subscriptions_fieldset .title_and_price_wrapper .in_widget_price {
    font-size: 17px !important;
  }
}

@media screen and (max-width: 400px) {
  .shopify_subscriptions_fieldset .plan_card .subscription_group,
  .shopify_subscriptions_fieldset .plan_card .subscription_group:first-child {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .shopify_subscriptions_fieldset .title_and_price_wrapper .sal-sub-full {
    padding-left: 6px;
    font-size: 15px;
  }

  .shopify_subscriptions_fieldset .title_and_price_wrapper .in_widget_price {
    font-size: 16px !important;
    padding-left: 8px !important;
  }

  .shopify_subscriptions_fieldset .custom_radio_button:before {
    width: 18px;
    height: 18px;
    margin-right: 9px;
  }

  .shopify_subscriptions_fieldset .sal-sub-badge {
    right: 14px;
  }
}

@media screen and (max-width: 374px) {
  .shopify_subscriptions_fieldset .title_and_price_wrapper .sal-sub-full {
    font-size: 13px;
  }
}

@media screen and (max-width: 350px) {
  .shopify_subscriptions_fieldset .plan_card .subscription_group,
  .shopify_subscriptions_fieldset .plan_card .subscription_group:first-child {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .shopify_subscriptions_fieldset .group_list .title_and_price_wrapper > span {
    font-size: 14px !important;
  }

  .shopify_subscriptions_fieldset .one_time_purchase_option_app_block span {
    font-size: 15px !important;
  }

  .shopify_subscriptions_fieldset .title_and_price_wrapper .sal-sub-full {
    font-size: 12px;
  }

  .shopify_subscriptions_fieldset .title_and_price_wrapper .in_widget_price {
    font-size: 15px !important;
  }
}


/* CUSTOM ANDREA SALUGEA - Quantità sulla riga di "Aggiungi al carrello", senza etichetta - 08/10/2026 */
/* Markup in snippets/product-buy-buttons.liquid (.product-form__buy-row). Il contenitore dei pulsanti diventa "trasparente"
   (display: contents): il pulsante va a destra del selettore, il resto (lista desideri, pagamento rapido) sotto a tutta larghezza. */
.product-form__buy-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: 12px;
  align-items: start;
  margin-top: 15px;
  container-type: inline-size;
}

.product-form__buy-row > .product-form__quantity-inline {
  grid-column: 1;
  grid-row: 1;
  display: flex;
}

.product-form__buy-row > .product-form__payment-container {
  display: contents;
}

.product-form__buy-row > .product-form__payment-container > buy-button,
.product-form__buy-row > .product-form__payment-container > .product-form__add-button {
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
}

.product-form__buy-row > .product-form__payment-container > :not(buy-button):not(.product-form__add-button) {
  grid-column: 1 / -1;
}

.product-form__buy-row .product-form__add-button {
  width: 100%;
  margin-top: 0;
  padding-left: 16px;
  padding-right: 16px;
  white-space: nowrap;
}

/* Selettore alto come il pulsante e con gli angoli arrotondati come il pulsante */
.product-form__quantity-inline .quantity-selector.quantity-selector--product {
  height: 60px;
  border-radius: 50px !important;
}

.product-form__quantity-inline .quantity-selector__value {
  height: 100%;
}

/* Numero della quantita' piu' grande (agg. 08/10/2026): da 15 a 20 px. Serve !important per prevalere su
   .quantity-selector__value { font-size: 15px !important } piu' in alto in questo file, che resta valida per il carrello.
   Sopra i 16 px iPhone non ingrandisce piu' la pagina quando si tocca il campo */
.product-form__quantity-inline .quantity-selector--product .quantity-selector__value {
  font-size: 20px !important;
}

/* Testo del pulsante: si riduce con la larghezza della riga (24 px su desktop e tablet, 18-23 px sui telefoni, 15 px sotto i 340 px).
   Agg. 08/10/2026: un po' piu' grande sui telefoni, da 5.1cqi a 5.8cqi (390 px: da 17 a 19,4 px; 412 px: da 19 a 21,6 px) */
@media screen and (max-width: 640px) {
  .product-form__buy-row .product-form__add-button {
    font-size: 18px;
  }
}

@supports (font-size: 1cqi) {
  .product-form__buy-row .product-form__add-button {
    font-size: clamp(15px, 5.8cqi, 24px);
  }
}

/* Telefoni fino a 430 px: selettore compatto (pulsanti e numero larghi 36 px) per lasciare spazio al testo del pulsante.
   Agg. 08/10/2026: prima valeva fino a 380 px; tra 381 e 430 px il selettore era largo 134 px invece di 110 */
@media screen and (max-width: 430px) {
  .product-form__buy-row {
    column-gap: 8px;
  }

  .product-form__buy-row .product-form__add-button {
    padding-left: 8px;
    padding-right: 8px;
  }

  .product-form__quantity-inline .quantity-selector__button {
    width: 36px;
    padding: 0;
    justify-content: center;
  }

  .product-form__quantity-inline .quantity-selector__value {
    width: 36px !important;
    min-width: 36px !important;
  }
}

/* Sotto i 340 px il testo resta a 15 px, per non avvicinarlo troppo alle curve del pulsante */
@media screen and (max-width: 340px) {
  .product-form__buy-row .product-form__add-button {
    font-size: 15px;
  }
}

/* Da 641 px il tema dà a ogni elemento del contenitore margini di 9 px e larghezza ridotta: nella riga non servono */
@media screen and (min-width: 641px) {
  .product-form__buy-row > .product-form__payment-container > * {
    width: auto;
    margin: 0;
  }

  .product-form__buy-row > .product-form__payment-container > :not(buy-button):not(.product-form__add-button) {
    margin-top: 4px;
  }
}


/* CUSTOM ANDREA SALUGEA - Lista desideri: link discreto staccato da "Aggiungi al carrello" (proposta A) - 08/10/2026 */
/* Linea sottile di separazione e link verde scuro centrato, con area di tocco di 44 px.
   Prevale sulla regola #wishlisthero-product-page-button-container { margin-top: -5px !important } più in alto in questo file. */
.product-form__buy-row #wishlisthero-product-page-button-container {
  margin-top: 22px !important;
  padding-top: 6px !important;
  border-top: 1px solid #e7e2de !important;
}

#wishlisthero-product-page-button-container > button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-height: 44px !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: 0 12px !important;
  color: #005640 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em;
  opacity: 1 !important;
}

#wishlisthero-product-page-button-container > button svg {
  color: #005640 !important;
  width: 15px !important;
  height: 15px !important;
  vertical-align: -2px;
}


/* CUSTOM ANDREA SALUGEA - Etichetta "Oggi sconto XX%" sull'immagine prodotto nascosta - 08/10/2026 */
/* Solo sulla foto della pagina prodotto: le etichette sulle schede prodotto (prodotti correlati, collezioni) restano.
   Il codice dell'etichetta resta in snippets/product-gallery.liquid: per riattivarla basta togliere questa regola. */
.product-block-list__item--gallery .product-item__label-list .product-label--on-sale {
  display: none;
}
