.elementor-1280 .elementor-element.elementor-element-c805da1{--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-1280 .elementor-element.elementor-element-c66d83e .woocommerce-breadcrumb > a{color:var( --e-global-color-primary );}.elementor-1280 .elementor-element.elementor-element-c66d83e .woocommerce-breadcrumb{font-size:17px;}.elementor-1280 .elementor-element.elementor-element-142f428{--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;}.elementor-1280 .elementor-element.elementor-element-9d58c78{--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-1280 .elementor-element.elementor-element-77c1668 > .elementor-widget-container{margin:-38px 0px 0px 0px;}.elementor-1280 .elementor-element.elementor-element-35a5857{--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-widget-woocommerce-product-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1280 .elementor-element.elementor-element-3089a03 .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-size:29px;font-weight:600;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1280 .elementor-element.elementor-element-8d22f14{font-family:"Roboto", Sans-serif;font-size:14px;font-weight:400;color:var( --e-global-color-secondary );}.woocommerce .elementor-1280 .elementor-element.elementor-element-b173013 h2{font-size:15px;}.elementor-1280 .elementor-element.elementor-element-758ef3b{--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-1280 .elementor-element.elementor-element-686a290{--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-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1280 .elementor-element.elementor-element-b593216 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-1280 .elementor-element.elementor-element-b593216{text-align:center;}.elementor-1280 .elementor-element.elementor-element-b593216 .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-size:24px;font-weight:600;}.elementor-1280 .elementor-element.elementor-element-7e4ea9e{--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-1280 .elementor-element.elementor-element-50dd023{text-align:center;}.elementor-1280 .elementor-element.elementor-element-50dd023 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:23px;font-weight:500;color:#003D7B;}.elementor-1280 .elementor-element.elementor-element-bbd3fab{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--justify-items:center;--align-items:center;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1280 .elementor-element.elementor-element-742a64f img{transition-duration:0.7s;}.elementor-1280 .elementor-element.elementor-element-f3820c7 img{transition-duration:0.7s;}.elementor-1280 .elementor-element.elementor-element-f6ed72e img{transition-duration:0.7s;}.elementor-1280 .elementor-element.elementor-element-0551fa0 img{transition-duration:0.7s;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1280 .elementor-element.elementor-element-be96242 .elementor-button{background-color:transparent;fill:#525151;color:#525151;background-image:linear-gradient(180deg, #F5F5F5 0%, #D6D6D6 100%);}@media(max-width:1024px){.elementor-1280 .elementor-element.elementor-element-bbd3fab{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-1280 .elementor-element.elementor-element-9d58c78{--width:48%;}.elementor-1280 .elementor-element.elementor-element-35a5857{--width:34%;}.elementor-1280 .elementor-element.elementor-element-758ef3b{--width:18%;}}@media(max-width:767px){.elementor-1280 .elementor-element.elementor-element-bbd3fab{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for woocommerce-product-images, class: .elementor-element-13dd5a8 *//* ---------- GALERÍA MEJORADA (conserva miniaturas) ---------- */
/* 1. Contenedor principal: cuadrado + sombra */
.single-product .woocommerce-product-gallery {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,.08);
}

/* 2. Imagen activa: cover + zoom */
.single-product .flex-viewport img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .4s ease;
}
.single-product .flex-viewport:hover img {
    transform: scale(1.05);
}

/* 3. Miniaturas limpias */
.single-product .flex-control-thumbs {
    margin-top: 12px;
    display: flex;
    gap: 8px;
}
.single-product .flex-control-thumbs li {
    flex: 1 1 0;
    aspect-ratio: 1 / 1;
}
.single-product .flex-control-thumbs img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 6px;
    opacity: .7;
    transition: opacity .3s, box-shadow .3s;
}
.single-product .flex-control-thumbs img:hover,
.single-product .flex-control-thumbs img.flex-active {
    opacity: 1;
    box-shadow: 0 0 0 2px #2371e6;
}

/* 4. Flechas de navegación más suaves */
.single-product .woocommerce-product-gallery .flex-direction-nav a {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(255,255,255,.9);
    color: #333;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity .3s, background .3s;
}
.single-product .woocommerce-product-gallery:hover .flex-direction-nav a {
    opacity: 1;
}
.single-product .woocommerce-product-gallery .flex-direction-nav a:hover {
    background: #2371e6;
    color: #fff;
}

/* 5. Responsive: miniaturas más grandes en móvil */
@media (max-width: 768px) {
    .single-product .flex-control-thumbs {
        gap: 6px;
    }
    .single-product .flex-control-thumbs li {
        flex-basis: 70px;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d58c78 *//* galería limpia */
.elementor-widget-woocommerce-product-images .woocommerce-product-gallery {
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    overflow: hidden;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8d22f14 */.elementor-widget-woocommerce-product-sku .sku_wrapper {
    font-size: 14px;
    font-weight: 600;
    color: #555;
    letter-spacing: .5px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-03ef6ab */.botones-sociales{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:12px;
  flex-wrap:nowrap;
}
.share-label{
  font-size:14px;
  font-weight:600;
  color:#555;
  white-space:nowrap;
  margin-right:6px;
}
.botones-sociales a,
.botones-sociales button{
  width:38px;
  height:38px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:18px;
  border:none;
  cursor:pointer;
  transition:background .3s, transform .2s, box-shadow .2s;
  box-shadow:0 2px 4px rgba(0,0,0,.15);
}
.botones-sociales a:hover,
.botones-sociales button:hover{
  transform:translateY(-2px);
  box-shadow:0 4px 8px rgba(0,0,0,.2);
}
#share-fb  {background:#1877f2;}
#share-x   {background:#000;}
#share-wa  {background:#25d366;}
#copy-link {background:#7b7b7b;}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f8bc921 *//* ---------- CANTIDADES ---------- */
.cantidades {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 15px;
}

.qty-btn {
  padding: 6px 7px;
  border: 1px solid #ccc;
  background: #f5f5f5;
  border-radius: 4px;
  font-size: 14px;
  cursor: pointer;
  transition: background 0.2s;
}
.qty-btn:hover {
  background: #e0e0e0;
}

.qty-input {
  width: 100%;
  max-width: 200px;
  padding: 8px;
  margin-bottom: 15px;
  font-size: 14px;
}

/* ---------- MÉTODOS DE PAGO (2 filas máx.) ---------- */
.metodos-pago {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 15px 0;
  font-size: 14px;
}

.metodos-pago span {
  width: 100%;          /* título siempre arriba */
  font-weight: 600;
  color: #555;
}

.metodos-pago img {
  width: 40px;          /* ajusta según tu PNG */
  height: 21px;
  object-fit: contain;
}

/* ---------- COTIZAR ---------- */
.btn-cotizar {
  width: 100%;
  background: #25d366;
  color: #fff;
  border: none;
  padding: 12px 20px;
  font-size: 16px;
  border-radius: 6px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: background 0.3s;
}
.btn-cotizar:hover {
  background: #1ebe5a;
}

/* ---------- IMAGEN PROMO ---------- */
.promo-img {
  margin-top: 20px;
  text-align: center;
}
.promo-img img {
  width: 250px;
  height: 250px;
  object-fit: cover;
  border-radius: 8px;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-1e7ca22 *//* ========== CONTENEDOR PADRE ========== */
.custom-related-products {
    display: flex !important;          /* fuerza flexbox */
    flex-direction: row !important;
    flex-wrap: wrap !important;        /* permite bajada de línea */
    gap: 20px;
    padding: 20px 0;
}

/* ========== CADA TARJETA ========== */
.related-product-item {
    display: flex !important;          /* <<< clave que faltaba */
    flex-direction: column !important;
    flex: 0 0 calc(25% - 15px) !important;
    max-width: calc(25% - 15px) !important;
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    padding: 15px;
    text-align: center;
    transition: transform 0.3s ease;
    box-sizing: border-box;
}

.related-product-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* imagen más pequeña y centrada */
.related-product-item img {
    width: 30%;
    height: auto;
    margin: 0 auto 10px;
}

.related-product-item h3 {
    font-size: 16px;
    margin: 10px 0;
    color: #333;
}

.related-product-item .price {
    font-size: 14px;
    color: #777;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 768px) {
    .related-product-item {
        flex: 0 0 calc(50% - 10px) !important;
        max-width: calc(50% - 10px) !important;
    }
}

@media (max-width: 480px) {
    .related-product-item {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}

/* Contenedor padre: fuerza fila horizontal */
.custom-related-products {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
    width: 100% !important;
}

/* Cada tarjeta: asegura que use el 25 % */
.related-product-item {
    display: flex !important;
    flex-direction: column !important;
    flex: 0 0 calc(25% - 15px) !important;
    max-width: calc(25% - 15px) !important;
    box-sizing: border-box !important;
}

/* Tablets: 2 columnas */
@media (max-width: 768px) {
    .related-product-item {
        flex: 0 0 calc(50% - 10px) !important;
        max-width: calc(50% - 10px) !important;
    }
}

/* Móviles: 1 columna */
@media (max-width: 480px) {
    .related-product-item {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}

/* ========= TÍTULO ========= */
.titulo-relacionados {
    text-align: center;
    font-size: 28px;
    margin: 40px 0 20px;
    color: #333;
    font-weight: 600;
    letter-spacing: 1px;
}

/* ========= CONTENEDOR CARRUSEL ========= */
.carousel-relacionados {
    overflow-x: auto;            /* barra de desplazamiento horizontal */
    scroll-behavior: smooth;     /* deslizamiento suave */
    -webkit-overflow-scrolling: touch; /* swipe en iOS/Android */
    padding-bottom: 10px;        /* espacio para la barrita */
}

.carousel-relacionados .custom-related-products {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important; /* importante: NO deja bajar línea */
    gap: 20px;
    width: max-content;          /* ancho = suma de todos los items */
    padding: 0 10px;
}

.carousel-relacionados .related-product-item {
    flex: 0 0 260px !important;  /* ancho fijo por tarjeta (ajusta si quieres) */
    max-width: 260px !important;
    scroll-snap-align: start;    /* snap al inicio de cada tarjeta */
}

/* Oculta la barra de scroll visual (opcional) */
.carousel-relacionados::-webkit-scrollbar {
    height: 6px;
}
.carousel-relacionados::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 3px;
}

/* Responsivo: en móvil mostramos 1.5 tarjetas para indicar que hay más */
@media (max-width: 480px) {
    .carousel-relacionados .related-product-item {
        flex: 0 0 160px !important;
        max-width: 160px !important;
    }
}/* End custom CSS */