.elementor-17679 .elementor-element.elementor-element-80454f1{--display:flex;}.elementor-17679 .elementor-element.elementor-element-80454f1.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-17679 .elementor-element.elementor-element-374b743 > .elementor-widget-container{margin:0px 0px 5px 0px;}.elementor-17679 .elementor-element.elementor-element-374b743 .wd-text-block{max-width:1000px;font-size:17px;}.elementor-17679 .elementor-element.elementor-element-1fbacb5{width:auto;max-width:auto;}.elementor-17679 .elementor-element.elementor-element-1fbacb5 > .elementor-widget-container{margin:-6px -6px -6px -6px;padding:10px 5px 10px 70px;border-style:double;border-width:10px 10px 10px 10px;border-color:#FAC5F8;border-radius:20px 20px 20px 20px;}.elementor-17679 .elementor-element.elementor-element-1fbacb5.elementor-element{--align-self:stretch;--flex-grow:1;--flex-shrink:0;}.elementor-17679 .elementor-element.elementor-element-b223b95 > .elementor-widget-container{padding:26px 26px 26px 26px;border-radius:10px 10px 10px 10px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-17679 .elementor-element.elementor-element-bf52a6c > .elementor-widget-container{padding:26px 26px 26px 26px;border-radius:10px 10px 10px 10px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-17679 .elementor-element.elementor-element-5baed50 > .elementor-widget-container{padding:26px 26px 26px 26px;border-radius:10px 10px 10px 10px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}@media(max-width:1024px){.elementor-17679 .elementor-element.elementor-element-374b743 .wd-text-block{font-size:16px;}}@media(min-width:769px){.elementor-17679 .elementor-element.elementor-element-80454f1{--width:100%;}}@media(max-width:768px){.elementor-17679 .elementor-element.elementor-element-80454f1{--width:315.097px;}.elementor-17679 .elementor-element.elementor-element-d7fcedb img{width:100%;max-width:100%;}.elementor-17679 .elementor-element.elementor-element-1fbacb5 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:10px 40px 10px 40px;}}/* Start custom CSS for html, class: .elementor-element-1fbacb5 */.kit-slot {
  width: 150px;
  height: 150px;
  border: 2px dashed #ccc;
  display: flex;
  align-items:center;
  justify-content:center;
  background:#f9f9f9;
  transition: all 0.3s;
}

.kit-slot.filled {
  border-color:#E91E63;
  background:#ffe6f0;
}

.kit-item img {
  max-width: 140px;
  max-height: 140px;
}

.kit-products .product-selectable img {
  max-width: 100%;
  border-radius:6px;
}

.kit-products .product-selectable p {
  text-align:center;
  margin:5px 0 0 0;
  font-size:14px;
}

@media (max-width: 600px) {
  .kit-slot {
    width: 100px;
    height: 100px;
  }
  .kit-item img {
    max-width: 90px;
    max-height: 90px;
  }
  .kit-products .product-selectable {
    width: 90px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b223b95 */.products-list {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr); /* sempre 4 colonne */
  gap: 10px;
  width: 100%;
  justify-items: center; /* centra i box nella colonna */
  box-sizing: border-box;
  margin: 0 auto;
}

/* Box prodotto */
.product-selectable {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  cursor: pointer;
  border: 3px solid #ddd;
  padding: 10px;
  background: #fafafa;
  width: 100%;       /* si adatta alla colonna */
  max-width: 120px;  /* limita la dimensione per non sforare */
  box-sizing: border-box;
  margin: 0 auto;    /* centra dentro la colonna */
  border-radius: 6px;
}

.product-selectable img {
  max-width: 100%;
  max-height: 90px;
  object-fit: contain;
  margin-bottom: 5px;
}

.product-selectable p {
  font-size: 14px;
  margin: 0;
  line-height: 1.2;
}

/* MOBILE */
@media (max-width: 600px) {
  .products-list {
    grid-template-columns: repeat(2, 1fr); /* 2 colonne su mobile per non disallineare */
    gap: 8px;
  }

  .product-selectable {
    max-width: 100px;  /* riduce la larghezza massima su mobile */
    padding: 5px;
  }

  .product-selectable img {
    max-height: 70px;
  }

  .product-selectable p {
    font-size: 12px;
  }
}/* End custom CSS */
/* Start custom CSS *//* Riduce le immagini dei prodotti */
.product img {
    width: 100px;
    height: 100px;
    object-fit: cover;
}
/* Limita il titolo a una riga con ellissi */
.product .woocommerce-loop-product__title {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100px;
    font-size: 14px;
}/* End custom CSS */