.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}

/* ==========================================================================
   ozs--wc-products — diseño limpio "imagen + franja verde con texto"
   - Header centrado sans-serif (mismo patrón que wc-categories)
   - Cada card: imagen del producto arriba + franja verde abajo con
     short_description en blanco (emitida via PHP hook).
   - Oculta título, precio, badge "Sale!", botón add_to_cart, delivery info.
   ========================================================================== */

.ozs--wc-products {
    --ozsp-title: #006837;
    --ozsp-subtitle: #444444;
    --ozsp-strip-bg: #006837;
    --ozsp-strip-color: #ffffff;
    --ozsp-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}

/* ─── HEADER (título + descripción) ─────────────────────────────────── */
html body .ozs--wc-products .ozs__header {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 0;
    margin-bottom: 36px;
    gap: 14px;
    flex-wrap: nowrap;
}

html body .ozs--wc-products .ozs__header-text {
    position: relative;
    padding-left: 0;
    flex: 0 1 auto;
    min-width: 0;
    text-align: center;
    max-width: 1100px;
}

html body .ozs--wc-products .ozs__header-text::before {
    content: none !important;
    display: none !important;
}

html body .ozs--wc-products .ozs__title {
    margin: 0 0 8px 0;
    font-family: var(--ozsp-font) !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    color: var(--ozsp-title) !important;
    text-align: center !important;
    text-transform: none !important;
}

html body .ozs--wc-products .ozs__title::before,
html body .ozs--wc-products .ozs__title::after {
    content: none !important;
    display: none !important;
}

html body .ozs--wc-products .ozs__subtitle {
    margin: 0 auto;
    font-family: var(--ozsp-font) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 1.6 !important;
    letter-spacing: 0 !important;
    color: var(--ozsp-subtitle) !important;
    text-align: center !important;
    max-width: 1000px;
}

html body .ozs--wc-products .ozs__subtitle strong,
html body .ozs--wc-products .ozs__subtitle b {
    color: #222 !important;
    font-weight: 700 !important;
}

/* ─── CARD del producto: imagen arriba + franja verde abajo ────────── */
/* Hacer el <li class="product"> un flex column, sin separadores ni padding */
html body .ozs--wc-products ul.products li.product,
html body .ozs--wc-products .ozs__slide li.product,
html body .ozs--wc-products .ozs__slide.product {
    display: flex !important;
    flex-direction: column !important;
    background: transparent !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    height: 100% !important;
    text-align: left !important;
}

/* Link wrapper que envuelve la imagen: que crezca para ocupar el espacio */
html body .ozs--wc-products ul.products li.product > a:not(.button):not(.added_to_cart) {
    flex: 1 1 auto !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    text-decoration: none !important;
    overflow: hidden !important;
}

/* Imagen del producto: ocupa todo el ancho de la card, esquinas arriba redondeadas. */
html body .ozs--wc-products ul.products li.product img,
html body .ozs--wc-products ul.products li.product .attachment-woocommerce_thumbnail {
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    object-fit: cover !important;
    border-radius: 0 !important;
    transition: none !important;
    transform: none !important;
    filter: none !important;
}

/* ─── OCULTAR: título, precio, "Sale!" badge, botón añadir,
   category label del tema (.product_category_title),
   estimate delivery date (.pi-edd*) ─ */
html body .ozs--wc-products ul.products li.product .woocommerce-loop-product__title,
html body .ozs--wc-products ul.products li.product h2.woocommerce-loop-product__title,
html body .ozs--wc-products ul.products li.product h3.woocommerce-loop-product__title,
html body .ozs--wc-products ul.products li.product .woocommerce-loop-category__title,
html body .ozs--wc-products ul.products li.product .price,
html body .ozs--wc-products ul.products li.product .star-rating,
html body .ozs--wc-products ul.products li.product .onsale,
html body .ozs--wc-products ul.products li.product span.onsale,
html body .ozs--wc-products ul.products li.product .button.add_to_cart_button,
html body .ozs--wc-products ul.products li.product .button.product_type_simple,
html body .ozs--wc-products ul.products li.product .button.product_type_variable,
html body .ozs--wc-products ul.products li.product .button.product_type_grouped,
html body .ozs--wc-products ul.products li.product .button.product_type_external,
html body .ozs--wc-products ul.products li.product .added_to_cart,
html body .ozs--wc-products ul.products li.product .add_to_cart_inline,
/* Category label inyectado por el tema (xtralife_category_single_product) */
html body .ozs--wc-products ul.products li.product .product_category_title,
html body .ozs--wc-products ul.products li.product p.product_category_title,
/* Estimate delivery date plugin (pi-edd) en sus distintos formatos */
html body .ozs--wc-products ul.products li.product .pi-edd,
html body .ozs--wc-products ul.products li.product .pi-edd-loop-ajax,
html body .ozs--wc-products ul.products li.product .pi-edd-product,
html body .ozs--wc-products ul.products li.product .pi-edd-ajax,
html body .ozs--wc-products ul.products li.product .pi-edd-method-estimate,
html body .ozs--wc-products ul.products li.product .pi-shortcode,
html body .ozs--wc-products ul.products li.product .pi-overall-estimate,
html body .ozs--wc-products ul.products li.product [class^="pi-edd"],
html body .ozs--wc-products ul.products li.product [class*=" pi-edd"] {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ─── Hover: SIN efectos visuales ──────────────────────────────────── */
html body .ozs--wc-products ul.products li.product:hover,
html body .ozs--wc-products ul.products li.product:hover img {
    transform: none !important;
    box-shadow: none !important;
    filter: none !important;
    opacity: 1 !important;
}

/* ─── Track: fuerza alturas iguales entre cards ────────────────── */
/* Sin esto, cada card se ajusta a su propio contenido y los green strips
   quedan a distintas alturas verticales. */
html body .ozs--wc-products ul.products.ozs__track,
html body .ozs--wc-products .ozs__track {
    align-items: stretch !important;
}
html body .ozs--wc-products ul.products .ozs__slide,
html body .ozs--wc-products .ozs__slide {
    display: flex !important;
    align-items: stretch !important;
    height: auto !important;
}
html body .ozs--wc-products .ozs__slide > li.product,
html body .ozs--wc-products ul.products li.product {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
}

/* ─── Cerrar todo whitespace ARRIBA y ABAJO del card ─────────────── */
/* El tema agrega padding a wrappers internos (<a>, #img-hover-product,
   <img>) y el rendering inline crea gaps por line-height/baseline.
   Resetamos todo para que image pegue al borde superior y la franja
   al borde inferior, sin huecos blancos. */
html body .ozs--wc-products ul.products li.product > a,
html body .ozs--wc-products ul.products li.product .woocommerce-LoopProduct-link,
html body .ozs--wc-products ul.products li.product #img-hover-product,
html body .ozs--wc-products ul.products li.product [id="img-hover-product"] {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    font-size: 0 !important;
    border: none !important;
    text-decoration: none !important;
}
html body .ozs--wc-products ul.products li.product img,
html body .ozs--wc-products ul.products li.product .attachment-woocommerce_thumbnail {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    vertical-align: top !important;
}

/* ─── FRANJA VERDE INFERIOR (texto por producto, altura FIJA) ────── */
html body .ozs--wc-products .ozs-product-strip {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    margin-top: auto !important; /* empuja la franja al fondo del card flex */
    padding: 14px 20px !important;
    background: var(--ozsp-strip-bg, #006837) !important;
    color: var(--ozsp-strip-color, #ffffff) !important;
    font-family: var(--ozsp-font, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    font-style: normal !important;
    line-height: 1.4 !important;
    text-align: center !important;
    box-sizing: border-box !important;
    /* Altura FIJA (no min) para que TODAS las franjas sean idénticas
       sin importar la longitud del texto. Cabe ~3 líneas. */
    height: 86px !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    border: none !important;
}
/* Hover de la franja: sin cambios */
html body .ozs--wc-products ul.products li.product:hover .ozs-product-strip {
    transform: none !important;
    box-shadow: none !important;
    filter: none !important;
    opacity: 1 !important;
}

/* Hover de la franja: sin cambios */
html body .ozs--wc-products ul.products li.product:hover .ozs-product-strip {
    transform: none !important;
    box-shadow: none !important;
    filter: none !important;
    opacity: 1 !important;
}
/* =========================================================
   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);
}
