.elementor-3501 .elementor-element.elementor-element-de6ded0{--display:flex;}.elementor-3501 .elementor-element.elementor-element-893141e .elementor-heading-title{font-size:28px;font-weight:500;}.elementor-3501 .elementor-element.elementor-element-4442628 .elementor-button{background-color:#FFFFFF;fill:#000000;color:#000000;border-style:solid;border-width:1px 1px 1px 1px;}.elementor-3501 .elementor-element.elementor-element-4442628.elementor-element{--align-self:flex-start;}.elementor-3501 .elementor-element.elementor-element-7ef1f0d{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:08px;--padding-right:0px;}.elementor-3501 .elementor-element.elementor-element-7ef1f0d.e-con{--order:-99999 /* order start hack */;}.elementor-3501 .elementor-element.elementor-element-162c1db{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--gap:10px 0px;--row-gap:10px;--column-gap:0px;--margin-top:050px;--margin-bottom:0px;--margin-left:080px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3501 .elementor-element.elementor-element-162c1db.e-con{--align-self:flex-start;--flex-grow:0;--flex-shrink:0;}.elementor-3501 .elementor-element.elementor-element-0c11b4c{width:100%;max-width:100%;text-align:left;}.elementor-3501 .elementor-element.elementor-element-0c11b4c .elementor-heading-title{font-size:26px;font-weight:500;line-height:1.2em;color:#000000;}.elementor-3501 .elementor-element.elementor-element-99dbb90{--display:flex;}.elementor-3501 .elementor-element.elementor-element-726c03c{--swiper-slides-to-display:3;--swiper-slides-gap:10px;--arrow-prev-left-align:0%;--arrow-prev-translate-x:0px;--arrow-prev-left-position:0px;--arrow-prev-top-align:50%;--arrow-prev-translate-y:-50%;--arrow-prev-top-position:0px;--arrow-next-right-align:0%;--arrow-next-translate-x:0%;--arrow-next-right-position:0px;--arrow-next-top-align:50%;--arrow-next-translate-y:-50%;--arrow-next-top-position:0px;}.elementor-3501 .elementor-element.elementor-element-726c03c > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-3501 .elementor-element.elementor-element-726c03c .swiper-slide > .elementor-element{height:100%;}body.elementor-page-3501 .container{max-width:1290px;}body.elementor-page-3501 .elementor-section.elementor-section-boxed>.elementor-container{max-width:1290px;}@media(max-width:1024px){.elementor-3501 .elementor-element.elementor-element-726c03c{--swiper-slides-to-display:2;}}@media(max-width:767px){.elementor-3501 .elementor-element.elementor-element-7ef1f0d{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3501 .elementor-element.elementor-element-162c1db{--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-3501 .elementor-element.elementor-element-0c11b4c{text-align:center;}.elementor-3501 .elementor-element.elementor-element-99dbb90{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3501 .elementor-element.elementor-element-99dbb90.e-con{--align-self:center;}.elementor-3501 .elementor-element.elementor-element-726c03c{--swiper-slides-to-display:1;}.elementor-3501 .elementor-element.elementor-element-726c03c > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-3501 .elementor-element.elementor-element-726c03c.elementor-element{--align-self:center;}}@media(min-width:768px){.elementor-3501 .elementor-element.elementor-element-162c1db{--width:55%;}}/* Start custom CSS for button, class: .elementor-element-4442628 */#back-to-shop .elementor-button {
    position: relative;
    overflow: hidden;
    padding-right: 40px; /* Spazio per la freccia */
    transition: background 0.3s ease;
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

/* Animiamo solo il testo */
#back-to-shop .elementor-button-text {
    display: inline-block;
    transition: transform 0.3s ease;
}

/* Aggiungiamo la freccia */
#back-to-shop .elementor-button::after {
    content: '→';
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%) translateX(10px);
    opacity: 0;
    transition: all 0.3s ease;
}

/* Solo il testo si muove */
#back-to-shop .elementor-button:hover .elementor-button-text {
    transform: translateX(-8px);
}

/* Freccia in entrata */
#back-to-shop .elementor-button:hover::after {
    transform: translateY(-50%) translateX(0);
    opacity: 1;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-de6ded0 */#custom-cart .woocommerce-cart-form .cart-item-row {
    display: flex;
    flex-direction: row;
    align-items: stretch; /* forza stessa altezza */
    gap: 0.75rem;
  }
  
   #custom-cart .cart-item-content {
    flex: 1;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }

 #custom-cart .cart-item-price {
    font-size: 0.85rem;
    font-weight: 500;
    margin-top: 0.2rem;
    align-self: center
  }

  #custom-cart .cart-item-quantity {
    display: inline-flex;
    align-items: center;
    transform: scale(0.8);
    transform-origin: left center;
  }
  
  #custom-cart .cart-item-quantity .qty {
    width: 28px;
    font-size: 0.9rem;
    border: none;
    background: transparent;
  }

  #custom-cart .cart-item-quantity .quantity-button {
    font-size: 0.9rem;
    font-weight: bold;
    cursor: pointer;
    user-select: none;
  }

  #custom-cart .cart-item-remove a {
    font-size: 0.9rem;
    color: #888;
    margin-bottom: 0.5rem;
  }
  
    #custom-cart .cart-item-bottom {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0.75rem;
  }



#custom-cart .cross-sells{
    display:none;
}

#custom-cart .actions{
    display:none !important;
}
#custom-cart .woocommerce-cart-form{
    min-width: 100%;
}

#custom-cart .cart-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}

#custom-cart .woocommerce-cart-form {
  flex: 1 1 65%;
  max-width: 65%;
}

#custom-cart .cart-collaterals {
  flex: 1 1 30%;
  max-width: 30%;
  margin-left: auto; /* forza l'allineamento a destra */
}

#custom-cart .cart_totals {
  width: 100%;
  padding: 1rem;
  border: 1px solid #ddd;
  background-color: #fafafa;
}
#custom-cart .cart-item-image img {
  width: 180px !important;
  height: 150px !important;
  object-fit: contain; /* o contain se vuoi che si veda tutto */
}


#custom-cart .custom-remove-wrapper {
  position: absolute;
  right: 0;
  bottom: 8px; /* regola per non scendere troppo */
  text-align: right;
}

#custom-cart .custom-remove-from-cart-button {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: 200;
  color: #888;
  text-decoration: none;
  position: relative;
  padding-bottom: 2px;
  cursor: pointer;
  transition: color 0.3s ease;
}

#custom-cart .custom-remove-from-cart-button::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  height: 1px;
  width: 100%;
  background-color: #aaa;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
}

#custom-cart .custom-remove-from-cart-button:hover::after {
  transform: scaleX(1);
}

#custom-cart .quantity {
  display: flex;
  justify-content: center;
  border: 1px solid #ccc;
  border-radius: 6px;
  overflow: hidden;
  background: #f5f5f5;
  width: fit-content;
  height: 38px;
}

#custom-cart .quantity-button {
  width: 32px;
  height: 36px;
  background: #f2f2f2;
  color: #000;
  font-size: 20px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  user-select: none;
}

#custom-cart .quantity input.qty {
  /*margin-top: 25%;*/
  width: 50px;
  height: 38px;
  text-align: center;
  font-size: 16px;
  border: none;
  background: #f2f2f2;
}

/* Rimuove spinner */
#custom-cart .quantity input.qty::-webkit-outer-spin-button,
#custom-cart .quantity input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

#custom-cart .quantity input.qty[type=number] {
  -moz-appearance: textfield;
}

/* Nasconde intestazioni */
#custom-cart .woocommerce-cart-form .shop_table thead {
    display: none;
}


@media (max-width: 768px) {
  #custom-cart .woocommerce-cart-form .cart-item-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    gap: 0.75rem !important;
  }

  #custom-cart .cart-item-image {
    flex: 0 0 90px !important;
    max-width: 90px !important;
  }

  #custom-cart .cart-item-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    border-radius: 4px !important;
    display: block !important;
  }

  #custom-cart .cart-item-content {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
  }

  #custom-cart .cart-item-title a {
    font-weight: 600 !important;
    font-size: 14px !important;
    color: #000 !important;
    text-decoration: none !important;
    line-height: 1.3 !important;
  }

  #custom-cart .cart-item-attributes {
    font-size: 0.75rem !important;
    color: #555 !important;
    margin-top: 0.2rem !important;
  }

  #custom-cart .cart-item-attributes dl {
    display: inline-flex !important;
    max-height: 3px !important;
  }

  #custom-cart .cart-item-price {
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    margin-top: 0.2rem !important;
    align-self: flex-start;
  }

  #custom-cart .cart-item-quantity {
    display: inline-flex !important;
    align-items: center !important;
    transform: scale(0.8) !important;
    transform-origin: left center !important;
  }

  #custom-cart .cart-item-quantity .qty {
    width: 28px !important;
    font-size: 0.9rem !important;
    border: none !important;
    background: transparent !important;
  }

  #custom-cart .cart-item-quantity .quantity-button {
    font-size: 0.9rem !important;
    font-weight: bold !important;
    cursor: pointer !important;
    user-select: none !important;
  }

  #custom-cart .cart-item-remove a {
    font-size: 0.75rem !important;
    color: #888 !important;
    text-decoration: underline !important;
    margin-bottom: 0.5rem !important;
  }

  #custom-cart .woocommerce-cart-form .cart_item > td {
    padding: 0 !important;
  }

  #custom-cart .cart-item-bottom {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 0.75rem !important;
  }

  #custom-cart .cart-wrapper {
    flex-direction: column !important;
    gap: 1.5rem !important;
  }

  #custom-cart .woocommerce-cart-form,
  #custom-cart .cart-collaterals {
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }

  #custom-cart .cart-collaterals {
    margin-left: 0 !important;
    padding: 1rem !important;
    box-sizing: border-box !important;
  }

  #custom-cart .cart_totals {
    padding: 1.5rem !important;
    background: #fafafa !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
  }

  #custom-cart .woocommerce-Price-amount {
    text-align: left !important;
    margin-right: 0 !important;
  }

  #custom-cart .custom-remove-wrapper {
    position: static !important;
    margin-top: 0.5rem !important;
    text-align: left !important;
  }

  #custom-cart .woocommerce-cart-form .product-thumbnail img {
    width: 100px !important;
    height: auto !important;
    margin-right: 0.75rem !important;
  }
}/* End custom CSS */
/* Start custom CSS for loop-carousel, class: .elementor-element-726c03c *//* Slide: larghezza responsiva */
#carousel-cart .swiper-slide {
  width: 100%;
  max-width: 320px;
  box-sizing: border-box;
  flex-shrink: 0;
  margin: 0 auto; /* ✅ centratura slide */
}

/* Wrapper: no overflow + centratura */
#carousel-cart .swiper-wrapper {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center; /* ✅ centrato */
  align-items: stretch;
  padding: 0 10px; /* ✅ spazio laterale minimo */
  box-sizing: border-box;
}

/* Frecce */
#carousel-cart .elementor-swiper-button {
  opacity: 0;
  transform: translateX(0);
  transition: all 0.3s ease;
  border: 2px solid black;
  border-radius: 50%;
  padding: 10px;
  background: black;
  color: white;
  pointer-events: none;
}

/* Hover: mostra frecce */
#carousel-cart:hover .elementor-swiper-button-prev {
  opacity: 1;
  transform: translateX(30px);
  pointer-events: auto;
}
#carousel-cart:hover .elementor-swiper-button-next {
  opacity: 1;
  transform: translateX(-30px);
  pointer-events: auto;
}

/* Paginazione */
#carousel-cart .swiper-pagination-bullet {
  width: 10px;
  height: 3px;
  border-radius: 1px;
  background: #bbb;
  margin: 0 3px;
  transition: all 0.3s ease;
  opacity: 1;
}
#carousel-cart .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 60px;
  background: black;
  border-radius: 1px;
}

/* ─────────────── MEDIA QUERIES ─────────────── */

@media (max-width: 1024px) {
  #carousel-cart .swiper-slide {
    max-width: 45%;
  }
}

@media (max-width: 768px) {
  #carousel-cart .swiper-slide {
    max-width: 90%; /* ✅ evita overflow */
    margin: 0 auto;  /* ✅ forza centratura */
  }

  #carousel-cart .elementor-swiper-button {
    display: none;
  }
}/* End custom CSS */