.oz-wc-products-theme,.oz-wc-products-theme .ozs__viewport{width:100%;max-width:100%;min-width:0;overflow:hidden;box-sizing:border-box}html body .oz-wc-products-theme .oz-wc-products-theme__track,html body .oz-wc-products-theme .ozs__track,html body .ozs.ozs--wc-products ul.products.ozs__track,html body .woocommerce-page .ozs--wc-products ul.products.ozs__track{display:flex;flex-wrap:nowrap;grid-template-columns:none;grid-auto-flow:row;align-items:stretch;width:100%;max-width:100%;min-width:0;margin:0;padding-left:0;list-style:none;box-sizing:border-box;overflow-x:clip;overflow-y:hidden}html body .oz-wc-products-theme .ozs__slide,html body .ozs.ozs--wc-products ul.products .ozs__slide,html body .woocommerce-page .ozs--wc-products ul.products .ozs__slide{flex:0 0 calc((100% - (var(--ozs-gap,var(--oz-gap,16px)) * (var(--ozs-cols,var(--oz-cols,1)) - 1)))/ var(--ozs-cols,var(--oz-cols,1)));flex-shrink:0;flex-grow:0;min-width:0;box-sizing:border-box;overflow:hidden;max-width:none;width:auto}html body .ozs.ozs--wc-products ul.products li.product,html body .woocommerce .oz-wc-products-theme ul.products li.product,html body .woocommerce-page .oz-wc-products-theme ul.products li.product,html body .woocommerce-page .ozs--wc-products ul.products li.product{float:none;clear:none;margin:0;flex:0 0 calc((100% - (var(--ozs-gap,var(--oz-gap,16px)) * (var(--ozs-cols,var(--oz-cols,1)) - 1)))/ var(--ozs-cols,var(--oz-cols,1)));flex-shrink:0;flex-grow:0;min-width:0;width:auto;max-width:none}.oz-wc-products-theme .ozs__slide>*,.ozs.ozs--wc-products ul.products .ozs__slide>*,.woocommerce-page .ozs--wc-products ul.products .ozs__slide>*{min-width:0;max-width:100%}.oz-wc-products-theme.ozs--equal-height .ozs__track,.ozs.ozs--wc-products.ozs--equal-height ul.products.ozs__track,.woocommerce-page .ozs--wc-products.ozs--equal-height ul.products.ozs__track{align-items:stretch}.oz-wc-products-theme.ozs--equal-height .ozs__slide,.ozs.ozs--wc-products.ozs--equal-height ul.products .ozs__slide,.woocommerce-page .ozs--wc-products.ozs--equal-height ul.products .ozs__slide{height:auto}.oz-wc-products-theme .ozs__slide .ozl-card,.ozs.ozs--wc-products ul.products .ozs__slide .ozl-card,.woocommerce-page .ozs--wc-products ul.products .ozs__slide .ozl-card{height:100%;box-sizing:border-box}

/* Cabecera (título / subtítulo): misma apariencia que carruseles de marcas y categorías */
.ozs--wc-products {
    --ozs-cat-border: #e2e5eb;
    --ozs-cat-title: #14527d;
    --ozs-cat-active-bg: #003a60;
    --ozs-cat-active-accent: #f99f00;
}

.ozs--wc-products .ozs__header {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0 0 20px;
    margin-bottom: 0;
    gap: 12px;
    flex-wrap: nowrap;
}

.oz-wc-products-grid.ozs--wc-products .ozs__header {
    margin-bottom: 1rem;
}

.ozs--wc-products .ozs__header-text {
    position: relative;
    padding-left: 20px;
    flex: 1 1 auto;
    min-width: 0;
}

.ozs--wc-products .ozs__header-text::before {
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    width: 6px;
    height: calc(100% - 8px);
    background: var(--ozs-cat-active-accent);
    box-shadow: 6px 0 0 var(--ozs-cat-title);
    border-radius: 0;
}

.ozs--wc-products .ozs__title {
    margin: 0;
    font-size: clamp(1.6rem, 1.8vw, 2.2rem);
    font-weight: 700;
    line-height: 1.1;
    color: var(--ozs-cat-title);
    letter-spacing: -0.01em;
}

.ozs--wc-products .ozs__title::after {
    display: none;
}

.ozs--wc-products .ozs__subtitle {
    margin: 4px 0 0;
    font-size: 1.05rem;
    line-height: 1.25;
    color: #202020;
    font-family: inherit;
}
/* =========================================================
   Plantilla custom para [oz_wc_products]:
   - oz-wc-products-custom--horizontal_2rows  → 2 filas, imagen izq (solo para el preset "Guantes de Seguridad" 759)
   ========================================================= */

.oz-wc-products-custom .ozs__header {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0 0 18px;
    margin-bottom: 18px;
    gap: 12px;
    flex-wrap: nowrap;
}
.oz-wc-products-custom .ozs__header-text {
    position: relative;
    padding-left: 20px;
    flex: 1 1 auto;
    min-width: 0;
}
.oz-wc-products-custom .ozs__header-text::before {
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    width: 6px;
    height: calc(100% - 8px);
    background: #F5A623;
    box-shadow: 6px 0 0 #14527d;
    border-radius: 0;
}

/* ---------- Horizontal 2 filas ---------- */
.oz-wc-products-custom--horizontal_2rows .ozs__track {
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    grid-auto-columns: calc((100% - (var(--ozs-gap, 22px) * (var(--ozs-cols, 3) - 1))) / var(--ozs-cols, 3));
    gap: var(--ozs-gap, 22px);
    align-items: stretch;
    padding: 0;
    list-style: none;
}
.oz-wc-products-custom--horizontal_2rows .ozs__slide {
    min-width: 0;
    scroll-snap-align: start;
    list-style: none;
}
.oz-wc-products-custom--horizontal_2rows .ozs__dots {
    display: none !important;
}

.oz-wcp-h2 {
    display: flex;
    align-items: stretch;
    gap: 16px;
    background: #ffffff;
    border-radius: 14px;
    padding: 14px;
    box-shadow: 0 10px 20px rgba(0, 24, 50, 0.08);
    height: 100%;
    box-sizing: border-box;
}
.oz-wcp-h2__media {
    flex: 0 0 42%;
    max-width: 42%;
    border-radius: 10px;
    overflow: hidden;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
}
.oz-wcp-h2__img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    background: #ffffff;
    padding: 6px;
    box-sizing: border-box;
}
.oz-wcp-h2__body {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 10px;
    min-width: 0;
}
.oz-wcp-h2__chip {
    display: inline-block;
    align-self: flex-start;
    padding: 4px 14px;
    font-size: 0.82rem;
    font-weight: 500;
    color: #1f2937;
    background: #f3f4f6;
    border-radius: 999px;
    border: 1px solid #e5e7eb;
}
.oz-wcp-h2__title {
    margin: 0;
    font-size: clamp(1rem, 1.1vw, 1.12rem);
    font-weight: 600;
    line-height: 1.2;
    color: #111827;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.oz-wcp-h2__btn {
    margin-top: 4px;
    padding: 9px 18px;
    font-size: 0.9rem;
    font-weight: 600;
    border-radius: 999px;
    background: #ffffff;
    color: #0b243d;
    border: 1.5px solid #d1d5db;
    text-decoration: none;
    text-align: center;
    align-self: flex-start;
    transition: background .2s, border-color .2s, color .2s;
}
.oz-wcp-h2__btn:hover {
    background: #0b243d;
    color: #ffffff;
    border-color: #0b243d;
}

/* ---------- Responsive (solo horizontal_2rows) ---------- */
@media (max-width: 1024px) {
    .oz-wc-products-custom--horizontal_2rows .ozs__track {
        grid-auto-columns: calc((100% - (var(--ozs-gap, 18px) * (var(--ozs-cols, 2) - 1))) / var(--ozs-cols, 2));
        gap: var(--ozs-gap, 18px);
    }
}
@media (max-width: 768px) {
    .oz-wc-products-custom--horizontal_2rows .ozs__track {
        grid-template-rows: repeat(1, minmax(0, 1fr));
        grid-auto-columns: calc(100% - 24px);
        gap: 12px;
    }
    .oz-wcp-h2 {
        gap: 12px;
        padding: 12px;
    }
    .oz-wcp-h2__media {
        flex-basis: 40%;
        max-width: 40%;
    }
    .oz-wcp-h2__btn {
        padding: 8px 14px;
        font-size: 0.85rem;
    }
}

/* Variante sobre fondo oscuro (feature con sectionBgColor #0B243D) */
.myg-home-feature--gloves .oz-wc-products-custom .ozs__title {
    color: #ffffff;
}
.myg-home-feature--gloves .oz-wc-products-custom .ozs__subtitle {
    color: rgba(255,255,255,0.82);
}

/* =========================================================
   Slider Woo products ID 735
   Diseño igual a referencia visual (cards blancas + botón verde)
   ========================================================= */
.ozs--wc-products[id^="oz-slider-735-"] ul.products li.product {
    overflow: visible;
}

.ozs--wc-products[id^="oz-slider-735-"] {
    padding-left: 54px !important;
    padding-right: 54px !important;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    height: 100%;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    box-shadow: none;
    padding: 12px 12px 10px;
    text-align: center;
    color: #111111;
    transition: border-color 0.2s ease, transform 0.2s ease;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg:hover,
.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg:focus-within {
    border-color: #d9dde3;
    box-shadow: none;
    transform: translateY(-1px);
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__media .ozc-product-card__badge,
.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__brand,
.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__wa {
    display: none !important;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__media {
    order: 1;
    margin: 0;
    padding: 0;
    min-height: 155px;
    align-items: center;
    justify-content: center;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__media img {
    width: 100%;
    max-width: 170px;
    max-height: 155px;
    object-fit: contain;
    margin: 0 auto;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__category {
    order: 2;
    margin-top: 8px;
    padding-top: 0;
    border-top: 0;
    font-size: 13px;
    line-height: 1.2;
    font-weight: 500;
    color: #777777;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__title {
    order: 3;
    margin-top: 4px;
    padding-bottom: 8px;
    font-size: 20px;
    line-height: 1.15;
    font-weight: 700;
    color: #0f1115;
    -webkit-line-clamp: 2;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__title::after {
    content: "";
    display: block;
    width: 56px;
    height: 3px;
    border-radius: 999px;
    background: #2dde5a;
    margin: 8px auto 0;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__title a {
    color: inherit;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__actions {
    order: 4;
    margin-top: auto;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    width: 100%;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__qty {
    order: 1;
    margin: 0;
    height: 30px;
    min-height: 30px;
    border: 1px solid #e2e6eb;
    border-radius: 999px;
    background: #ffffff;
    color: #111111;
    box-shadow: none;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__qty-btn {
    width: 24px;
    font-size: 15px;
    font-weight: 700;
    color: #171717;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__qty-input {
    width: 26px;
    min-width: 26px;
    padding: 0;
    font-size: 13px;
    font-weight: 600;
    color: #171717;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__btn--primary {
    order: 2;
    flex: 1 1 auto;
    min-height: 30px;
    padding: 0 14px;
    border: 0;
    border-radius: 999px;
    background: #04FE00;
    color: #0f1115;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    box-shadow: none;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__btn--primary:hover,
.ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__btn--primary:focus-visible {
    background: #04FE00;
    color: #0f1115;
    transform: none;
    box-shadow: none;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozs__nav-btn {
    background: #04FE00 !important;
    border-radius: 999px !important;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozs__nav-btn--prev {
    left: 8px !important;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozs__nav-btn--next {
    right: 8px !important;
}

.ozs--wc-products[id^="oz-slider-735-"] .ozs__nav-btn::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12h14M13 5l7 7-7 7' stroke='%2301111a' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

@media (max-width: 768px) {
    .ozs--wc-products[id^="oz-slider-735-"] {
        padding-left: 42px !important;
        padding-right: 42px !important;
    }

    .ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg {
        padding: 10px 10px 9px;
    }

    .ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__media {
        min-height: 130px;
    }

    .ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__media img {
        max-width: 140px;
        max-height: 130px;
    }

    .ozs--wc-products[id^="oz-slider-735-"] .ozc-product-card--pack-myg .ozc-product-card__title {
        font-size: 17px;
    }
}

/* =========================================================
   FIX altura uniforme de cards en carruseles de productos
   ---------------------------------------------------------
   El track flex usa `align-items:stretch`, pero la mecánica de
   páginas/clones del carrusel estira los slides a alturas
   inconsistentes (unas filas a la altura natural, otras a la del
   slide más alto de otra página), dejando los botones desalineados.

   Las cards del cotizador ya garantizan altura interna homogénea
   (imagen 1:1 fija + título con min-height de 2 líneas), así que
   alinear los slides al inicio (sin estirar) deja TODAS las cards a
   su altura de contenido —idéntica— con los botones alineados.
   ========================================================= */
html body .ozs.ozs--wc-products ul.products.ozs__track,
html body .woocommerce-page .ozs--wc-products ul.products.ozs__track,
html body .oz-wc-products-theme .ozs__track {
    align-items: flex-start;
}

/* =========================================================
   FIX sombra de las cards recortada en el carrusel de productos
   ---------------------------------------------------------
   El slide (li.product.ozs__slide) tenía overflow:hidden y el track
   no dejaba aire vertical (padding 0 + overflow-y:hidden), por lo que
   la box-shadow de las cards se cortaba en los bordes.

   1) Se permite el desbordamiento del slide para que la sombra salga
      de la card (el recorte de la imagen lo sigue haciendo .__media).
   2) Se da padding vertical al track para que la sombra tenga sitio
      antes del borde de recorte del propio track.
   ========================================================= */
html body .ozs.ozs--wc-products ul.products .ozs__slide,
html body .ozs.ozs--wc-products ul.products li.product,
html body .woocommerce-page .ozs--wc-products ul.products .ozs__slide,
html body .woocommerce-page .ozs--wc-products ul.products li.product {
    overflow: visible;
}
html body .ozs.ozs--wc-products ul.products.ozs__track,
html body .woocommerce-page .ozs--wc-products ul.products.ozs__track {
    padding-top: 16px;
    padding-bottom: 30px;
}

/* =========================================================
   Espacio lateral para las flechas de navegación
   ---------------------------------------------------------
   Sin gutter, las flechas (posición absoluta, left/right:8px) quedan
   ENCIMA de la primera y última tarjeta y las tapan ("no se ve completo").
   Se agrega padding lateral SOLO cuando el slider tiene flechas
   (data-nav="true"), para que las flechas caigan en el margen y no sobre
   las tarjetas. Los sliders sin flechas no reservan ese espacio.
   ========================================================= */
body .ozs--wc-products[data-nav="true"] {
    padding-left: 54px !important;
    padding-right: 54px !important;
    box-sizing: border-box !important;
}
@media (max-width: 768px) {
    body .ozs--wc-products[data-nav="true"] {
        padding-left: 44px !important;
        padding-right: 44px !important;
    }
}
