/** Shopify CDN: Minification failed

Line 320:55 Unexpected "{"
Line 384:43 Unexpected "{"

**/
@media screen and (max-width: 500px) {
.price > *{
    font-size: 1rem !important;
  }
.full-unstyled-link{
    font-size: 1.1rem;
  }
    .section + .section {
  margin-top: 5px !important;
  }

}
.customer .field input,
.customer select,
.field__input,
.select__select{
  border: none;
}

  .card--standard > .card__content .card__information {
  padding-left: 0;
  padding-right: 0;
  text-align: center;
  padding-top:8px;
  padding-bottom:8px;
}
   .collection-title, .collection-title2 {
    color: rgba(var(--color-foreground), 0.75);
    margin: 0;
    text-align: center;
     padding-top: 0.6rem;
  }

  @media (max-width: 480px) {
  .collection-title, .collection-title2 {
    color: rgba(var(--color-foreground), 0.75);
    margin: 0;
    text-align: center;
    padding-top: 1.8rem !important;
  }
}

@media (min-width:481px) and (max-width: 768px) {
  .collection-title, .collection-title2 {
    color: rgba(var(--color-foreground), 0.75);
    margin: 0;
    text-align: center;
    padding-top: 0.6rem;
  }
}

@media (min-width:769px) and (max-width: 1024px) {
 .collection-title, .collection-title2 {
    color: rgba(var(--color-foreground), 0.75);
    margin: 0;
    text-align: center;
   padding-top: 0.6rem;
 }
}
  
  .product-count {
    font-size: 1rem;
    text-decoration: none !important;
    vertical-align: text-top;}
  .hide-count2 {
    display:none;
    font-size: 1rem;
    text-decoration: none !important;
    vertical-align: text-top;}
 @media screen and (min-width: 750px){
  .collection-title{ 
  padding-bottom: 2.5rem;
  padding-top: 2.5rem;
  }
    .section + .section {
  margin-top: 12px !important;
  }

}

  @media screen and (max-width: 749px){
  .collection-title { 
    padding-top: 2.2rem;
    padding-bottom:2.2rem
  }
}
    @media screen and (max-width: 768px) {
  .custom-back-icon {
    width: 24px;
    height: 24px;
    margin-left: -8px;
}}

   @media screen and (max-width: 760px){
  .custom-back-link {
     left: 16px;}
  }
  @media screen and (min-width: 761px){
  .custom-back-link {
     left: 10px;}
  }
  .custom-back-link {
  position: absolute;
  text-decoration: none;
  color: #b595ce;
  display: flex;
  align-items: center;
}

.custom-back-icon {
  /* Personalizza le proprietà dell'icona qui */
  width: 24px;
  height: 24px;
  stroke: #b595ce;
}
.banner-container {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  margin: 0;
  padding-top: 16px;
  padding-bottom: 16px;
}

  @media screen and (min-width: 750px) {
  .banner-container {
    gap: 1.5rem; /*0.3*/
    padding-bottom:50px;
    padding: 1.5rem;
  }
}
  
.banner-column {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.banner-image {
  width: 100%;
  height: auto;
  object-fit: cover;
  max-height: 100%;
  border-radius:8px;
}

.banner-container > .banner-column:only-child {
  justify-content: center; 
  width: auto; 
}

@media (max-width: 989px) {
  .banner-container {
    flex-direction: row;
    gap: 1rem;
    padding: 1.1rem;
  }

  .banner-image {
    object-fit: cover;
  }
  .card--standard>.card__content .card__information {
padding-bottom: 1.5rem !important;
  }
  .grid--2-col-tablet-down .grid__item {
        padding-bottom: 0rem !important;
    }
    .banner-image{
      padding-bottom: 0px !important;
    }
}
  @media screen and (min-width: 750px) {
  .grid__item {
    width: calc(25% - var(--grid-desktop-horizontal-spacing) * 3 / 4) !important;
    max-width: calc(25% - var(--grid-desktop-horizontal-spacing) / 2) !important;
  }
}
  #product-grid {
    display: grid;
    gap: var(--grid-desktop-horizontal-spacing);
    grid-template-columns: repeat(4, 1fr);
    opacity: 0;
  }

  /* Layout desktop con banner */
  @media (min-width: 1024px) {
   #product-grid {
    line-height: 0px !important;
}
    .product-grid-container{
    padding-bottom: 4rem;
    }

    
    #product-grid.has-banner {
      grid-template-rows: auto auto;
    }
    
    #product-grid.has-banner .product-item:nth-child(1) { 
      grid-column: 1 / 2;
      grid-row: 1 / 2;
    }
    
    #product-grid.has-banner .product-item:nth-child(2) { 
      grid-column: 2 / 3;
      grid-row: 1 / 2;
    }
    
    #product-grid.has-banner .banner-item {
      grid-column: 3 / 5;
      grid-row: 1 / 3;
      height: calc(100% + var(--grid-desktop-horizontal-spacing));
    }
    
    #product-grid.has-banner .product-item:nth-child(3) { 
      grid-column: 1 / 2;
      grid-row: 2 / 3;
    }
    
    #product-grid.has-banner .product-item:nth-child(4) { 
      grid-column: 0 / 3;
      grid-row: 2 / 3;
    }
    .grid__item,
  .banner-item { 
    width: calc(100% - var(--grid-desktop-horizontal-spacing)* 3 / 4) !important;
    max-width: calc(100% - var(--grid-desktop-horizontal-spacing) / 2) !important;
  }
      .banner-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

  /* Mobile layout */
@media (max-width: 1023px) {
  #product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-flow: row dense;
    gap: 0rem;
    padding-bottom: 1rem;
  }

  /* CASO 1 PRODOTTO */
  #product-grid:has(.product-item:nth-child(1):last-child) {
    grid-template-areas: "prod1 banner";
    
    .product-item:nth-child(1) { 
      grid-area: prod1;
      width: calc(50% - var(--grid-mobile-horizontal-spacing)/2) !important;
    }
    
    .banner-item {
      grid-area: banner;
      width: calc(50% - var(--grid-mobile-horizontal-spacing)/2) !important;
    }
  }

  /* CASO 3 PRODOTTI */
  #product-grid:has(.product-item:nth-child(3):last-child) {
    grid-template-areas: 
      "prod1 prod2"
      "prod3 banner";
    
    .product-item:nth-child(3) {
      grid-area: prod3;
      width: calc(50% - var(--grid-mobile-horizontal-spacing)/2) !important;
    }
    
    .banner-item {
      grid-area: banner;
      width: calc(50% - var(--grid-mobile-horizontal-spacing)/2) !important;
    }

  .grid--2-col-tablet-down {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }

  .grid--2-col-tablet-down .grid__item {
    width: calc(100% - var(--grid-mobile-horizontal-spacing)/2) !important;
    max-width: unset !important;
  }
  
  /* Neutralizza la regola generale */
  .grid--2-col-tablet-down .grid__item {
    width: calc(100% - var(--grid-mobile-horizontal-spacing)/2) !important;
    max-width: initial !important;
  }
}

  .banner-item {
    order: 3 !important;
  }

  .product-item:nth-child(n+4) {
    order: 4 !important;
  }
}
@media screen and (max-width:1023px) {
  .product-item {
    width: 100% !important;
    max-width: 100% !important;
  }
      .banner-image {
        padding-bottom: 3px !important;
    }
    #ProductGridContainer #product-grid .card__content,{
          margin-bottom: 0.5rem !important;
    }
}
  .banner-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  @media (min-width: 768px) and (max-width: 1023px) {
  /* forza 3 colonne */
  #product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  /* override delle regole del tema che impongono 2 colonne */
  #product-grid.grid--2-col-tablet-down,
  .grid--2-col-tablet-down#product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  /* annulla le width “calc(..)” sui <li> */
  #product-grid > .grid__item {
    width: auto !important;
    max-width: none !important;
  }
}
  @media screen and (min-width:1024px) {
  .product-item {
    width: 100% !important;
    max-width: 100% !important;
  }
      .banner-image {
        padding-bottom: 4px !important;
    }
} 

  #product-grid {
  --grid-desktop-horizontal-spacing: 2px !important;
  --grid-desktop-vertical-spacing:  2px !important;
  gap: 0 !important;
}
#product-grid { 
  gap: var(--grid-desktop-vertical-spacing) var(--grid-desktop-horizontal-spacing) !important;
}


/* Azzera il gap verticale della grid (se vuoi zero spazio tra righe) */
#ProductGridContainer #product-grid {
  row-gap: 0 !important;
  /* se vuoi proprio nessun bordo neanche laterale: */
  column-gap: 2px !important;
      margin-right: -2px !important;
}

/* Elimina qualsiasi padding/margin verticale dai LI del tema */
#ProductGridContainer #product-grid > li.grid__item {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Niente spazi extra dai componenti card */
#ProductGridContainer #product-grid .card-wrapper,
#ProductGridContainer #product-grid .card, {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Toglie il micro-spazio sotto le immagini (baseline gap) */
#ProductGridContainer #product-grid .card__media,
#ProductGridContainer #product-grid .media {
  line-height: 0 !important;
  font-size: 0 !important;
}
#ProductGridContainer #product-grid .card__media img,
#ProductGridContainer #product-grid .media img {
  display: block !important;
}


  body {
    overflow-x: hidden;
    position: relative;
    width: 100%;
  }
  
  body {
    overscroll-behavior-x: contain;
  }

  /* EMPTY STATE: reset grid e centra il messaggio */
#ProductGridContainer #product-grid.collection--empty {
  display: block !important;            /* niente grid a 4 colonne */
  grid-template-columns: none !important;
  gap: 0 !important;
  padding: 0 !important;
}

#ProductGridContainer #product-grid.collection--empty .title-wrapper {
  width: 100% !important;
  max-width: none !important;
  margin: 10rem auto 10rem !important;  /* come vuoi tu */
  text-align: center !important;
  display: flex;                         /* per centrare meglio il contenuto */
  align-items: center;
  justify-content: center;
}

#ProductGridContainer #product-grid.collection--empty .title-wrapper .title {
  margin: 0;
}

#ProductGridContainer .textunderline {
  font-size:1.3rem
}


#ProductGridContainer #product-grid {
    opacity: 1 !important;
}
#ProductGridContainer #product-grid > li.grid__item {
    opacity: 1 !important;
}
    .card-wrapper {
          opacity: 1 !important;
}

      .card:not(.ratio) {
            opacity: 1 !important;
}

        .card__inner.color-scheme-1 {
              opacity: 1 !important;
}

          #ProductGridContainer #product-grid .card__media, #ProductGridContainer #product-grid .media {
                opacity: 1 !important;
}

            #ProductGridContainer #product-grid .card__media, #ProductGridContainer #product-grid .media {
                  opacity: 1 !important;
}

              #ProductGridContainer #product-grid .card__media img, #ProductGridContainer #product-grid .media img {
                    opacity: 1 !important;
}

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

.grid--4-col-desktop .grid__item {
    width: calc(100% - var(--grid-desktop-horizontal-spacing) * !important);
    max-width: calc(100% - var(--grid-desktop-horizontal-spacing) * 3 / 4) !important;;
  }

}

@media screen and (max-width: 749px) {
    .grid--2-col-tablet-down .grid__item {
        width: calc(100% - var(--grid-mobile-horizontal-spacing) / 2);
        max-width: 100%;
    }
}

@media (max-width: 749px){
  #product-grid .banner-item{
    grid-column: 1 / -1;   
    margin-bottom: .5rem;  
  }
  #product-grid .banner-link{ display:block; }
  #product-grid .banner-image{
    width: 100%;
    height: auto !important;   
    max-height: none;
    object-fit: cover;
    border-radius: 0;          
    display: block;
  }

  #ProductGridContainer #product-grid{
    grid-auto-flow: row !important; 
  }

  #ProductGridContainer #product-grid .banner-item{
    order: -9999 !important;       
    grid-column: 1 / -1 !important;
    margin-bottom: .5rem;
  }

  #ProductGridContainer #product-grid .product-item{
    order: 0 !important;
  }

  #product-grid .banner-image{
    aspect-ratio: 1 / 1;   
    object-fit: cover;
  }
}


@media (min-width:750px) and (max-width: 1023px){
  #product-grid .banner-item{
    grid-column: 1 / -1;   
    margin-bottom: .5rem;  
  }
  #product-grid .banner-link{ display:block; }
  #product-grid .banner-image{
    width: 100%;
    height: auto !important;   
    max-height: none;
    object-fit: cover;
    border-radius: 0;          
    display: block;
  }

  #ProductGridContainer #product-grid{
    grid-auto-flow: row !important; 
  }

  #ProductGridContainer #product-grid .banner-item{
    order: -9999 !important;       
    grid-column: 1 / -1 !important;
    margin-bottom: .5rem;
  }

  #ProductGridContainer #product-grid .product-item{
    order: 0 !important;
  }
  
  #product-grid .banner-image{
    aspect-ratio: 16 / 9;   
    object-fit: cover;
  }
}
