/* ============================================================
   H2-T1 · Coherencia visual BASE de fichas single-product — Makuyen Web V2.

   Qué resuelve: el CSS inline del Customizer de Kadence pisa a theme.json
   por orden de cascada (DECISIONES.md S140-6), así que las fichas de
   producto renderizan sus encabezados fuera del lenguaje Web V2 y el botón
   de compra fuera del sistema Makuyen. Esta capa repone la identidad usando
   los tokens canónicos.

   Jerarquía single-product aprobada visualmente por Marleth (S140, mockup
   jerarquia-v2): NO copia literal de la escala editorial de página. Es una
   jerarquía propia de ficha comercial:
     · Título del producto  → serif, tamaño hero, VINO #954C78 (integra a la
       marca y deja de percibirse negro; §3: «#423C4C no es color universal
       de títulos; los de ficha son funcionales»).
     · Encabezados de sección → serif 20px VINO (presencia sin bloques
       pesados; §3: «Vino = H3 de tarjetas y acentos»).
     · «Descripción» → marcador funcional: el tab nav restyleado como
       versalita 14px vino + línea fina que lo conecta. Se oculta el
       <h2>Descripción</h2> redundante que el tema inyecta en el panel.
     · Cuerpo → intacto.

   Multi-tab-safe: NO se oculta el tab nav (10/40 productos del catálogo
   tienen 2 pestañas — «Información adicional»); se restylea, conservando la
   navegación. Verificado S140.

   Alcance (S140-5): sistémico, acotado a `.single-product`; no toca copy ni
   configuración de las fichas, no cambia el layout de 2 columnas, no
   interviene carrito/checkout. Capa visual AVANZADA → V1.1.

   Cómo gana sin !important: dependencia de `kadence-global` (functions.php)
   + especificidad por sobre los `h1{}`/`h2{}` de Kadence (0-0-1).

   Tokens usados (canónicos, verificados en staging S140):
     --wp--preset--font-family--dm-serif-display / --dm-sans
     --wp--preset--font-size--hero  (clamp 30→56px; 52,7px @1440)
     --wp--preset--color--makuyen-vino (#954C78) / --makuyen-vino-oscuro (#6F385A)
     --wp--preset--color--makuyen-verde (#3AAE91) / --makuyen-verde-oscuro (#2C8C74)
     --wp--preset--color--makuyen-blanco / --makuyen-niebla
     --global-content-narrow-width (842px)
   Tamaños 20px/14px = valores de ficha aprobados visualmente (S140), no por
   token (decisión de Marleth: «no fijar por token, sino por lo que produce la
   jerarquía»). Interlíneas (1,15/1,3) son valores de theme.json. Cero hex
   hardcodeado en reglas.
   ============================================================ */

/* --- Título del producto → serif, VINO, tope 44px en desktop.
   Misma curva fluida del token `hero` del sitio, con el TOPE bajado de 56px a
   44px (aprobado S140 sobre comparación 44 vs 38): en desktop rinde 44px en
   vez de ~52px (dejaba de ser dominante frente a los encabezados de 20px);
   en mobile el mid queda por debajo del tope y rinde ~31px, idéntico a antes.
   Valor de ficha aprobado visualmente, no por token (decisión de Marleth). --- */
.single-product .product_title.entry-title {
    font-family: var(--wp--preset--font-family--dm-serif-display);
    font-size: clamp(30px, 1.875rem + ((1vw - 3.2px) * 2.031), 44px);
    line-height: 1.15;
    font-weight: 400;
    color: var(--wp--preset--color--makuyen-vino);
}

/* --- Encabezados de CONTENIDO de la descripción → 20px serif VINO.
   Excluye el <h2>Descripción</h2> inyectado (primer h2 del panel). --- */
.single-product .woocommerce-Tabs-panel--description > h2:not(:first-of-type) {
    font-family: var(--wp--preset--font-family--dm-serif-display);
    font-weight: 400;
    font-size: 20px;
    line-height: 1.3;
    color: var(--wp--preset--color--makuyen-vino);
    margin-top: 34px;
}
.single-product .woocommerce-Tabs-panel--description h3 {
    font-family: var(--wp--preset--font-family--dm-serif-display);
    font-weight: 400;
    font-size: 17px;
    line-height: 1.3;
    color: var(--wp--preset--color--makuyen-vino);
}

/* --- «Descripción» inyectado en el panel → oculto (redundante con el
   marcador del tab nav). --- */
.single-product .woocommerce-Tabs-panel--description > h2:first-of-type {
    display: none;
}

/* --- Marcador «Descripción»: el tab nav restyleado (versalita vino + línea
   fina que lo conecta). Conserva la navegación en productos multi-pestaña.
   Prefijo de alta especificidad que refleja el selector de Kadence
   (`.woocommerce div.product .woocommerce-tabs ul.tabs li a` = 0-4-4, y 0-5-4
   en la pestaña activa que fija el color) y lo supera, para ganar sin
   !important. Verificado S140. --- */
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 0 0 6px;
    padding: 0;
    border: 0;
    list-style: none;
}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs::before {
    display: none;             /* quita la línea inferior full-width de WooCommerce */
}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs::after {
    content: "";
    flex: 1 1 auto;
    height: 1px;
    background: var(--wp--preset--color--makuyen-niebla);
}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs li {
    margin: 0;
    padding: 0;
    background: none;
    border: 0;
    border-radius: 0;
}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs li::before,
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs li::after {
    display: none;             /* quita las esquinas/decoraciones de pestaña de Kadence */
}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs li a {
    font-family: var(--wp--preset--font-family--dm-sans);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--wp--preset--color--makuyen-vino);
    text-decoration: none;
    padding: 0;
}

/* --- Ancho de lectura de la descripción = medida editorial del sitio. --- */
.single-product .woocommerce-tabs.wc-tabs-wrapper {
    max-width: var(--global-content-narrow-width);
    margin-left: auto;
    margin-right: auto;
}

/* --- Botón «Añadir al carrito» → sistema de botón Makuyen (peso, borde,
   tracking). El radio pill (100px) lo da Kadence y se conserva. --- */
.single-product.woocommerce .single_add_to_cart_button.button {
    font-family: var(--wp--preset--font-family--dm-sans);
    font-weight: 600;
    letter-spacing: 0.01em;
    background-color: var(--wp--preset--color--makuyen-verde);
    border: 1px solid var(--wp--preset--color--makuyen-verde);
    color: var(--wp--preset--color--makuyen-blanco);
    transition: background-color 0.2s ease,
                border-color 0.2s ease,
                transform 0.15s ease;
}
.single-product.woocommerce .single_add_to_cart_button.button:hover {
    background-color: var(--wp--preset--color--makuyen-verde-oscuro);
    border-color: var(--wp--preset--color--makuyen-verde-oscuro);
    color: var(--wp--preset--color--makuyen-blanco);
    transform: translateY(-1px);
}
.single-product.woocommerce .single_add_to_cart_button.button:active {
    background-color: var(--wp--preset--color--makuyen-verde-oscuro);
    border-color: var(--wp--preset--color--makuyen-verde-oscuro);
    transform: translateY(0);
}
.single-product.woocommerce .single_add_to_cart_button.button:focus-visible {
    outline: 2px solid var(--wp--preset--color--makuyen-verde-oscuro);
    outline-offset: 3px;
}
