.elementor-545 .elementor-element.elementor-element-fc69fc0{--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;}.elementor-545 .elementor-element.elementor-element-56015c4{text-align:center;}.elementor-545 .elementor-element.elementor-element-56015c4 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-545 .elementor-element.elementor-element-8b686f6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:-24px;--margin-bottom:-15px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-545 .elementor-element.elementor-element-545c87e{--display:flex;}.elementor-545 .elementor-element.elementor-element-545c87e.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-545 .elementor-element.elementor-element-4b57fc8{width:var( --container-widget-width, 87.658% );max-width:87.658%;--container-widget-width:87.658%;--container-widget-flex-grow:0;}.elementor-545 .elementor-element.elementor-element-4b57fc8.elementor-element{--flex-grow:0;--flex-shrink:0;}.woocommerce .elementor-545 .elementor-element.elementor-element-4b57fc8 .flex-control-thumbs li{padding-right:calc(0px / 2);padding-left:calc(0px / 2);padding-bottom:0px;}.woocommerce .elementor-545 .elementor-element.elementor-element-4b57fc8 .flex-control-thumbs{margin-right:calc(-0px / 2);margin-left:calc(-0px / 2);}.elementor-545 .elementor-element.elementor-element-1138819{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-545 .elementor-element.elementor-element-1138819.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-545 .elementor-element.elementor-element-f047c36{--display:flex;}.elementor-545 .elementor-element.elementor-element-c338200{padding:0px 0px -19px 0px;}.elementor-545 .elementor-element.elementor-element-c9ceb65{--display:flex;--min-height:0px;--justify-content:center;--margin-top:0px;--margin-bottom:-12px;--margin-left:0px;--margin-right:0px;}.elementor-545 .elementor-element.elementor-element-89f58ff{padding:0px 0px -10px 0px;}.elementor-545 .elementor-element.elementor-element-c68d652{--display:flex;}.elementor-545 .elementor-element.elementor-element-6ab6476{padding:0px 0px -2px 0px;}.elementor-545 .elementor-element.elementor-element-6ab6476 .cart button, .elementor-545 .elementor-element.elementor-element-6ab6476 .cart .button{transition:all 0.2s;}.elementor-545 .elementor-element.elementor-element-6ab6476 .quantity .qty{transition:all 0.2s;}.elementor-545 .elementor-element.elementor-element-c826300{--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;}.elementor-545 .elementor-element.elementor-element-3a37f99.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-545 .elementor-element.elementor-element-3a37f99.elementor-wc-products ul.products li.product span.onsale{display:block;}.elementor-545 .elementor-element.elementor-element-cb6ac3e{--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:center;}.elementor-545 .elementor-element.elementor-element-7024fbc.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-545 .elementor-element.elementor-element-7024fbc.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-545 .elementor-element.elementor-element-7024fbc.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-545 .elementor-element.elementor-element-7024fbc.elementor-wc-products .products > h2{font-family:var( --e-global-typography-solace_h6_font_family_general-font-family ), Sans-serif;font-size:var( --e-global-typography-solace_h6_font_family_general-font-size );font-weight:var( --e-global-typography-solace_h6_font_family_general-font-weight );line-height:var( --e-global-typography-solace_h6_font_family_general-line-height );letter-spacing:var( --e-global-typography-solace_h6_font_family_general-letter-spacing );text-align:center;}@media(min-width:768px){.elementor-545 .elementor-element.elementor-element-8b686f6{--content-width:1217px;}.elementor-545 .elementor-element.elementor-element-545c87e{--width:35.336%;}.elementor-545 .elementor-element.elementor-element-1138819{--width:64.956%;}.elementor-545 .elementor-element.elementor-element-c9ceb65{--content-width:500px;}}@media(max-width:1024px){.elementor-545 .elementor-element.elementor-element-56015c4 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-545 .elementor-element.elementor-element-3a37f99.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-545 .elementor-element.elementor-element-7024fbc.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-545 .elementor-element.elementor-element-7024fbc.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-545 .elementor-element.elementor-element-7024fbc.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-545 .elementor-element.elementor-element-7024fbc.elementor-wc-products .products > h2{font-size:var( --e-global-typography-solace_h6_font_family_general-font-size );line-height:var( --e-global-typography-solace_h6_font_family_general-line-height );letter-spacing:var( --e-global-typography-solace_h6_font_family_general-letter-spacing );}}@media(max-width:767px){.elementor-545 .elementor-element.elementor-element-56015c4 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-545 .elementor-element.elementor-element-3a37f99.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-545 .elementor-element.elementor-element-7024fbc.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-545 .elementor-element.elementor-element-7024fbc.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-545 .elementor-element.elementor-element-7024fbc.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-545 .elementor-element.elementor-element-7024fbc.elementor-wc-products .products > h2{font-size:var( --e-global-typography-solace_h6_font_family_general-font-size );line-height:var( --e-global-typography-solace_h6_font_family_general-line-height );letter-spacing:var( --e-global-typography-solace_h6_font_family_general-letter-spacing );}}/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-6ab6476 *//* ==== Botón Agregar al carrito — compacto, centrado y elegante ==== */
.woocommerce div.product form.cart .button,
.single-product .single_add_to_cart_button {
  background: linear-gradient(135deg, #1E88E5, #1565C0);
  color: #fff;
  font-weight: 600;
  font-size: 15px;
  padding: 10px 25px;
  border: none;
  border-radius: 25px;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  display: inline-block;
  width: auto;
  min-width: 180px;
  text-align: center;
  box-shadow: 0 4px 10px rgba(30, 136, 229, 0.25);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin: 10px auto;
}

/* Centrar el botón */
.single-product form.cart {
  text-align: center;
}

/* Efecto hover animado */
.woocommerce div.product form.cart .button:hover,
.single-product .single_add_to_cart_button:hover {
  background: linear-gradient(135deg, #1565C0, #0D47A1);
  transform: translateY(-2px) scale(1.05);
  box-shadow: 0 8px 20px rgba(21, 101, 192, 0.35);
  animation: buttonPulse 0.6s ease-in-out;
}

/* Animación breve */
@keyframes buttonPulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.07); }
  100% { transform: scale(1.05); }
}

/* Adaptación móvil */
@media (max-width: 768px) {
  .woocommerce div.product form.cart .button {
    font-size: 14px;
    padding: 8px 20px;
    min-width: 150px;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8b686f6 *//* 🌟 Fondo general del producto */
.single-product .site-main {
  background-color: #f7fbff; /* fondo celeste muy claro */
  padding: 40px 0;
}

/* 🖼️ Imagen del producto */
.woocommerce div.product div.images img {
  border-radius: 20px;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.woocommerce div.product div.images img:hover {
  transform: scale(1.03);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

/* 📦 Contenedor de información */
.woocommerce div.product .summary {
  background: #ffffff;
  border-radius: 15px;
  padding: 30px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}

/* 🏷️ Título del producto */
.woocommerce div.product .product_title {
  font-size: 28px;
  font-weight: 700;
  color: #002855;
  margin-bottom: 15px;
  text-align: center;
}

/* 📝 Descripción */
.woocommerce div.product .woocommerce-product-details__short-description {
  font-size: 16px;
  color: #444;
  line-height: 1.6;
  margin-bottom: 20px;
  text-align: justify;
}

/* 💰 Precio */
.woocommerce div.product p.price,
.woocommerce div.product span.price {/* End custom CSS */
/* Start custom CSS for woocommerce-product-related, class: .elementor-element-3a37f99 *//* ==== Estilo general de productos relacionados y upsells ==== */
.related ul.products,
.upsells ul.products {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 15px;
}

.related ul.products li.product,
.upsells ul.products li.product {
  flex: 1 1 18%;
  max-width: 18%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  text-align: center;
  background: #fff;
  border-radius: 12px;
  padding: 15px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease-in-out;
  min-height: 330px; /* Ajusta si quieres más o menos altura */
}

/* Efecto hover */
.related ul.products li.product:hover,
.upsells ul.products li.product:hover {
  transform: translateY(-5px);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

/* ==== Imagen cuadrada centrada ==== */
.related ul.products li.product img,
.upsells ul.products li.product img {
  width: 200px;
  height: 200px;
  object-fit: cover; /* Ajusta la imagen dentro del cuadrado sin deformarse */
  border-radius: 8px;
  margin-bottom: 10px;
  display: block;
}

/* ==== Título del producto ==== */
.related ul.products .woocommerce-loop-product__title,
.upsells ul.products .woocommerce-loop-product__title {
  font-size: 14px;
  font-weight: 600;
  margin: 10px 0 5px;
  min-height: 36px; /* Igual altura en los títulos */
  line-height: 1.2em;
  color: #333;
}

/* ==== Precio ==== */
.related ul.products .price,
.upsells ul.products .price {
  font-size: 13px;
  color: #444;
  margin-bottom: 10px;
}

/* ==== Botón de agregar al carrito ==== */
.related ul.products .button,
.upsells ul.products .button {
  background: linear-gradient(135deg, #1E88E5, #1565C0);
  color: #fff;
  font-weight: 600;
  font-size: 13px;
  border-radius: 20px;
  padding: 8px 20px;
  margin-top: auto;
  transition: all 0.3s ease-in-out;
  width: auto;
  align-self: center;
}

.related ul.products .button:hover,
.upsells ul.products .button:hover {
  background: linear-gradient(135deg, #1565C0, #0D47A1);
  transform: scale(1.05);
}

/* ==== Responsive design ==== */
@media (max-width: 1024px) {
  .related ul.products li.product,
  .upsells ul.products li.product {
    flex: 1 1 30%;
    max-width: 30%;
  }

  .related ul.products li.product img,
  .upsells ul.products li.product img {
    width: 160px;
    height: 160px;
  }
}

@media (max-width: 768px) {
  .related ul.products li.product,
  .upsells ul.products li.product {
    flex: 1 1 45%;
    max-width: 45%;
  }

  .related ul.products li.product img,
  .upsells ul.products li.product img {
    width: 140px;
    height: 140px;
  }
}

@media (max-width: 480px) {
  .related ul.products li.product,
  .upsells ul.products li.product {
    flex: 1 1 100%;
    max-width: 100%;
  }

  .related ul.products li.product img,
  .upsells ul.products li.product img {
    width: 130px;
    height: 130px;
  }
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-upsell, class: .elementor-element-7024fbc *//* === Cuadro de productos Upsell (WooCommerce + Elementor) === */
.elementor-widget-woocommerce-upsells ul.products {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 15px;
}

.elementor-widget-woocommerce-upsells ul.products li.product {
  flex: 1 1 18%;
  max-width: 18%;
  text-align: center;
  background: #fff;
  border-radius: 12px;
  padding: 15px;
  transition: all 0.3s ease-in-out;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.elementor-widget-woocommerce-upsells ul.products li.product:hover {
  transform: translateY(-5px);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

/* Imágenes cuadradas */
.elementor-widget-woocommerce-upsells ul.products li.product img {
  border-radius: 10px;
  object-fit: cover;
  width: 100%;
  height: 160px;
}

/* Nombre y precio */
.elementor-widget-woocommerce-upsells .woocommerce-loop-product__title {
  font-size: 14px;
  font-weight: 600;
  margin: 8px 0;
}

.elementor-widget-woocommerce-upsells .price {
  font-size: 13px;
  color: #555;
}

/* Botón “Añadir al carrito” */
.elementor-widget-woocommerce-upsells .button {
  background: linear-gradient(135deg, #1E88E5, #1565C0);
  color: #fff;
  font-weight: 600;
  font-size: 13px;
  padding: 8px 20px;
  border-radius: 20px;
  transition: all 0.3s ease-in-out;
}

.elementor-widget-woocommerce-upsells .button:hover {
  background: linear-gradient(135deg, #1565C0, #0D47A1);
  transform: scale(1.05);
}

/* Responsive */
@media (max-width: 1024px) {
  .elementor-widget-woocommerce-upsells ul.products li.product {
    flex: 1 1 30%;
    max-width: 30%;
  }
}

@media (max-width: 768px) {
  .elementor-widget-woocommerce-upsells ul.products li.product {
    flex: 1 1 45%;
    max-width: 45%;
  }
}

@media (max-width: 480px) {
  .elementor-widget-woocommerce-upsells ul.products li.product {
    flex: 1 1 100%;
    max-width: 100%;
  }
}/* End custom CSS */