/* ==========================================================================
   1. CATÁLOGO GENERAL (Grilla de Tienda)
   ========================================================================== */

/* Redondeo de 40px para fotos de catálogo */
.woocommerce ul.products li.product a img,
.woocommerce-loop-product__link img,
.ct-media-container,
.ct-media-container img,
[data-products] figure,
[data-products] .ct-media-container,
.wc-block-grid__product-image img,
.wc-block-grid__product-image,
.wc-block-layout__product-image img,
.woocommerce-loop-product__thumbnail,
.woocommerce-loop-product__thumbnail img {
    border-radius: 40px !important;
    overflow: hidden !important;
}

/* Sombra sutil en el catálogo */
[data-products] figure,
.wc-block-grid__product-image,
.woocommerce-loop-product__thumbnail {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04),
        0 1px 3px rgba(0, 0, 0, 0.02) !important;
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1),
        box-shadow 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

/* Hover en catálogo */
.woocommerce ul.products li.product:hover figure,
.wc-block-grid__product:hover .wc-block-grid__product-image,
.woocommerce-loop-product__thumbnail:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.08),
        0 2px 8px rgba(0, 0, 0, 0.03) !important;
}

/* ==========================================================================
   2. DETALLE DE PRODUCTO INDIVIDUAL (Galería grande)
   ========================================================================== */

/* Fondos limpios para evitar picos en las esquinas */
.woocommerce-product-gallery,
.woocommerce-product-gallery__wrapper,
.woocommerce-product-gallery__image,
.flexy,
.flex-viewport,
.flex-active-slide {
    background: transparent !important;
}

/* Redondeo más marcado de 32px en la foto grande individual */
.woocommerce-product-gallery .ct-media-container,
.woocommerce-product-gallery .ct-media-container img {
    border-radius: 32px !important;
    overflow: hidden !important;
    background: transparent !important;
}

/* Sombra corta y difuminada sutilmente (evita recortes y despegado limpio) */
.woocommerce-product-gallery .ct-media-container {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.07),
        0 1px 3px rgba(0, 0, 0, 0.03) !important;
    transition: box-shadow 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

/* Hover: sombra un poco más profunda pero muy contenida */
.woocommerce-product-gallery:hover .ct-media-container {
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12),
        0 2px 6px rgba(0, 0, 0, 0.04) !important;
}

/* ==========================================================================
   2.1 OCULTAR AUTOR / METADATOS EN BÚSQUEDAS Y TARJETAS
   ========================================================================== */

.search-results .entry-card .entry-meta,
.search-results .meta-author,
.search-results .meta-date,
.entry-card.type-product .entry-meta,
.entry-card.type-product .meta-author,
.entry-card.type-product .meta-date,
[data-products] .entry-meta,
.ct-meta-element-author,
.meta-author {
    display: none !important;
}

/* ==========================================================================
   4.0 PÓKE HERO CONTEMPORÁNEO 16:9 (Paleta Oficial Póke, Right-Aligned & Scrim)
   ========================================================================== */

.poke-hero-2026 {
    position: relative !important;
    max-width: var(--wp--style--global--wide-size, 1200px) !important;
    width: calc(100% - 32px) !important;
    aspect-ratio: 16 / 7.2 !important;
    min-height: 480px !important;
    max-height: 600px !important;
    display: flex !important;
    align-items: center !important;
    overflow: hidden !important;
    border-radius: 36px !important;
    margin: 24px auto 56px auto !important;
    /* Sombra atmosférica ultra-despegada con tinte carbón (#293241) */
    border: 1px solid rgba(41, 50, 65, 0.09) !important;
    box-shadow: 
        0 10px 28px -4px rgba(41, 50, 65, 0.08),
        0 34px 72px -10px rgba(41, 50, 65, 0.22),
        inset 0 0 0 1px rgba(255, 255, 255, 0.35) !important;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.poke-hero-2026:hover {
    transform: translateY(-3px) !important;
    box-shadow: 
        0 14px 34px -4px rgba(41, 50, 65, 0.10),
        0 42px 88px -12px rgba(41, 50, 65, 0.26),
        inset 0 0 0 1px rgba(255, 255, 255, 0.5) !important;
}

.poke-hero-bg-layer {
    position: absolute !important;
    inset: 0 !important;
    background-size: cover !important;
    background-position: center !important;
    opacity: 0 !important;
    transform: none !important;
    z-index: 1 !important;
    pointer-events: none !important;
    transition: opacity 1.0s ease-in-out !important;
}

.poke-hero-bg-layer.slide-bg-0 {
    background-position: -5% center !important;
}

.poke-hero-bg-layer.slide-bg-1 {
    background-position: -8% center !important;
}

.poke-hero-bg-layer.slide-bg-2 {
    background-position: -6% center !important;
}

.poke-hero-bg-layer.slide-bg-3 {
    background-position: -4% center !important;
}

.poke-hero-bg-layer.slide-bg-4 {
    background-position: -5% center !important;
}

/* Diapositiva Activa: se vuelve 100% visible de forma limpia y estática */
.poke-hero-bg-layer.active {
    opacity: 1 !important;
    z-index: 2 !important;
    transform: none !important;
    animation: none !important;
}

/* Diapositiva Previa: se mantiene debajo hasta que termine el fundido */
.poke-hero-bg-layer.previous {
    opacity: 1 !important;
    z-index: 1 !important;
    transform: none !important;
    animation: none !important;
}

/* Scrim orgánico original extendido a 3/4: difuminado suave y preservación de saturación */
.poke-hero-backdrop-scrim {
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0) 38%,
        rgba(251, 251, 252, 0.45) 54%,
        rgba(251, 251, 252, 0.85) 70%,
        rgba(251, 251, 252, 0.96) 85%,
        #ffffff 100%
    ) !important;
    z-index: 2 !important;
    pointer-events: none !important;
}

@media (max-width: 850px) {
    .poke-hero-backdrop-scrim {
        background: linear-gradient(
            180deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0) 25%,
            rgba(251, 251, 252, 0.55) 45%,
            rgba(251, 251, 252, 0.92) 70%,
            #ffffff 100%
        ) !important;
    }
}

.poke-hero-main-container {
    position: relative !important;
    z-index: 3 !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important; /* 1. Centrado vertical exacto respecto a la altura del hero */
    padding: 0 32px 0 0 !important; /* Margen derecho */
}

.poke-hero-content-block {
    width: 320px !important; /* 2. Ancho fijo inmutable: recorta el espacio sobrante de la izquierda */
    max-width: 320px !important;
    padding: 20px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    text-align: right !important;
    /* Caja difuminada flotante: Ultra-Glass limpio con esquinas 36px idénticas al card externo */
    background: rgba(255, 255, 255, 0.08) !important;
    backdrop-filter: blur(18px) saturate(140%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(140%) !important;
    border-radius: 36px !important; /* Misma curvatura en las 4 esquinas */
    border: none !important;
    box-shadow: none !important;
}

/* Logo del Oso en la cabecera derecha */
.poke-hero-bear-emblem {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin-bottom: 8px !important;
    width: 100% !important;
}

.poke-hero-bear-symbol {
    width: 26px !important;
    height: 26px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 2px 5px rgba(41, 50, 65, 0.08)) !important;
}

/* Rotador de Textos Cinéticos */
.poke-hero-rotator {
    position: relative !important;
    min-height: 125px !important;
    width: 100% !important;
    text-align: right !important;
}

.poke-hero-item {
    position: absolute !important;
    inset: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    text-align: right !important;
    width: 100% !important;
    transition: opacity 0.4s ease, visibility 0.4s ease !important;
}

.poke-hero-item.active {
    position: relative !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

/* 1. Tag Superior: Entrada sutil y limpia */
.poke-hero-item .poke-hero-tag {
    display: block !important;
    width: 100% !important;
    font-size: 9.5px !important;
    font-weight: 800 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: var(--theme-palette-color-3, #475671) !important;
    margin-bottom: 4px !important;
    text-align: right !important;
    transform: translateY(8px);
    opacity: 0;
    text-shadow: none !important;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.6s ease;
}

.poke-hero-item.active .poke-hero-tag {
    transform: translateY(0);
    opacity: 1;
    transition-delay: 0.05s;
}

/* 2. Titular: Efecto Cinético "Blur & Rise" (Tendencia 2026) */
.poke-hero-item .poke-hero-heading,
.poke-hero-heading {
    width: 100% !important;
    font-size: 25px !important;
    line-height: 1.12 !important;
    font-weight: 800 !important;
    color: var(--theme-palette-color-4, #293241) !important;
    margin: 0 0 6px 0 !important;
    letter-spacing: -0.5px !important;
    text-align: right !important;
    transform: translateY(14px);
    filter: blur(5px);
    opacity: 0;
    text-shadow: none !important;
    transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1), filter 0.7s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.6s ease;
}

.poke-hero-item.active .poke-hero-heading {
    transform: translateY(0);
    filter: blur(0);
    opacity: 1;
    transition-delay: 0.15s;
}

/* Acento: Azul Marino Profundo & Elegante (100% Sólido y Nítido) */
.poke-hero-accent {
    color: #2A6F97 !important;
    background: none !important;
    -webkit-background-clip: initial !important;
    -webkit-text-fill-color: initial !important;
    display: inline !important;
    text-align: right !important;
    text-shadow: none !important;
}

/* 3. Bajada Sofisticada: Fina, aireada y proporcional */
.poke-hero-item .poke-hero-lead,
.poke-hero-lead {
    font-size: 11.5px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
    letter-spacing: 0.15px !important;
    color: var(--theme-palette-color-4, #293241) !important;
    opacity: 0.90 !important;
    margin: 0 0 10px auto !important;
    max-width: 270px !important;
    width: 100% !important;
    text-align: right !important;
    transform: translateY(10px);
    opacity: 0;
    text-shadow: none !important;
    transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.6s ease;
}

.poke-hero-item.active .poke-hero-lead {
    transform: translateY(0);
    opacity: 0.88;
    transition-delay: 0.25s;
}

/* Fila de Acción (Barras a la izquierda, Botón anclado a la derecha) */
.poke-hero-action-row {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    margin-top: 10px !important;
    width: 100% !important;
}

.poke-hero-primary-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    background: var(--theme-palette-color-4, #293241) !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 800 !important; /* 3. Negrita fuerte */
    text-transform: uppercase !important; /* 3. Mayúsculas */
    letter-spacing: 0.9px !important;
    white-space: nowrap !important; /* Nunca se quiebra en 2 líneas */
    padding: 10px 18px !important;
    border-radius: 30px !important;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(41, 50, 65, 0.22) !important;
    transition: all 0.25s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

.poke-hero-primary-btn:hover {
    background: #1e2530 !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 22px rgba(41, 50, 65, 0.3) !important;
}

/* 4. Líneas de Progreso Minimalistas (Centradas permanentemente en la zona baja del card principal) */
.poke-hero-progress-nav {
    position: absolute !important;
    bottom: 20px !important; /* Permanentemente anclado en la zona baja */
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 10 !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.poke-hero-line {
    background: transparent !important;
    border: none !important;
    padding: 6px 2px !important;
    cursor: pointer !important;
}

.poke-line-bar {
    display: block !important;
    width: 14px !important;
    height: 3px !important;
    border-radius: 2px !important;
    background: rgba(41, 50, 65, 0.22) !important;
    transition: all 0.3s ease !important;
}

.poke-hero-line.active .poke-line-bar {
    width: 24px !important;
    background: var(--theme-palette-color-4, #293241) !important;
}

@media (max-width: 580px) {
    .poke-hero-2026 {
        aspect-ratio: auto !important;
        min-height: 520px !important;
        height: auto !important;
    }
    .poke-hero-bg-layer {
        background-position: center top !important;
    }
    /* Degradé en mobile que respeta el 60% superior de la foto con colores vivos */
    .poke-hero-backdrop-scrim {
        background: linear-gradient(
            180deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0) 40%,
            rgba(251, 251, 252, 0.45) 58%,
            rgba(251, 251, 252, 0.88) 75%,
            #ffffff 100%
        ) !important;
    }
    .poke-hero-main-container {
        padding: 24px 20px 32px 20px !important;
        justify-content: flex-end !important;
    }
}

/* ==========================================================================
   2.1 HEADER MAIN MENU EQUIDISTANT COLUMNS (Opción 1: Centrado por Columna)
   ========================================================================== */

#header-menu-1 > ul {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
}

#header-menu-1 > ul > li {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 100px !important; /* Ancho idéntico de columna para cada ítem */
    text-align: center !important;
}

#header-menu-1 > ul > li > a.ct-menu-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    width: 100% !important;
    letter-spacing: 0.8px !important;
    padding: 0 !important;
}

#header-menu-1 > ul > li > a.ct-menu-link .ct-toggle-dropdown-desktop {
    display: inline-flex !important;
    align-items: center !important;
    margin-left: 2px !important;
}

/* Grupo de iconos más separado del menú pero ultra juntos entre ellos */
#header [data-column="end"] [data-items="primary"] {
    display: inline-flex !important;
    align-items: center !important;
    gap: 2px !important;
}

#header [data-column="end"] [data-items="primary"] > .header-menu-1,
#header [data-column="end"] [data-items="primary"] > nav {
    margin-right: 24px !important;
}

#header [data-column="end"] [data-items="primary"] > *:not(nav):not(.header-menu-1) {
    margin: 0 !important;
    padding: 0 !important;
}

.ct-header-search,
.ct-header-cta,
.ct-header-cart {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--theme-palette-color-4, #293241) !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 32px !important;
    height: 32px !important;
    transition: color 0.2s ease, transform 0.2s ease !important;
    cursor: pointer !important;
    vertical-align: middle !important;
}

.ct-header-search button,
.ct-header-cta a,
.ct-header-cart a.ct-cart-item {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    margin: 0 !important;
    color: inherit !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 50% !important;
    line-height: 1 !important;
    transition: color 0.2s ease, background-color 0.2s ease, transform 0.2s ease !important;
}

/* Iconos SVG con trazo Feather outline unificado */
.ct-header-search svg.ct-icon,
.ct-header-cta svg.ct-icon,
.ct-header-cart svg.ct-icon,
.ct-header-trigger svg.ct-icon {
    width: 17px !important;
    height: 17px !important;
    stroke: currentColor !important;
    fill: none !important;
    stroke-width: 1.8px !important;
}

.ct-header-trigger {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    margin: 0 !important;
    color: var(--theme-palette-color-4, #293241) !important;
    background: transparent !important;
    border: none !important;
    border-radius: 50% !important;
    transition: color 0.2s ease, background-color 0.2s ease !important;
}

.ct-header-trigger:hover {
    color: var(--theme-palette-color-1, #98c1d9) !important;
    background: rgba(152, 193, 217, 0.08) !important;
}

.ct-header-search:hover,
.ct-header-cta:hover,
.ct-header-cart:hover,
.ct-header-cart:focus-within {
    color: var(--theme-palette-color-1, #98c1d9) !important;
}

.ct-header-search:hover button,
.ct-header-cta:hover a,
.ct-header-cart:hover a.ct-cart-item {
    color: var(--theme-palette-color-1, #98c1d9) !important;
    background: rgba(152, 193, 217, 0.08) !important;
}

/* Insignia del Carrito (burbuja celeste bien alineada) */
.ct-header-cart {
    position: relative !important;
}

.ct-header-cart .ct-icon-container {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.ct-header-cart .ct-cart-badge,
.ct-header-cart [data-count],
.ct-header-cart .ct-dynamic-count-cart {
    position: absolute !important;
    top: -6px !important;
    right: -8px !important;
    background-color: var(--theme-palette-color-1, #98c1d9) !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 10px !important;
    width: 16px !important;
    height: 16px !important;
    line-height: 16px !important;
    border-radius: 50% !important;
    text-align: center !important;
    z-index: 2 !important;
    pointer-events: none !important;
}

/* Asegurar que ninguna capa de la cabecera recorte ni filtre el desplegable */
#header,
#header [data-row],
#header [data-row] > div,
#header [data-column],
#header [data-items],
.ct-header-cart {
    overflow: visible !important;
}

/* ==========================================================================
   2.3 DESPLEGABLE MINI-CART (Fondo Blanco 100% Opaco Sólido & Layout Limpio)
   ========================================================================== */

/* Posicionamiento y visibilidad del desplegable sin cortes */
.ct-header-cart {
    position: relative !important;
    overflow: visible !important;
}

.ct-header-cart .ct-cart-content,
div.ct-cart-content[data-count] {
    position: absolute !important;
    top: calc(100% + 5px) !important;
    right: 0 !important;
    left: auto !important;
    margin-top: 0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: var(--theme-palette-color-4, #293241) !important;
    border: 1px solid var(--theme-palette-color-5, #E7E9EF) !important;
    border-radius: 16px !important;
    box-shadow: 0 15px 35px rgba(41, 50, 65, 0.18), 0 5px 12px rgba(0, 0, 0, 0.08) !important;
    padding: 18px 20px !important;
    width: 320px !important;
    min-width: 320px !important;
    z-index: 999999 !important;
    box-sizing: border-box !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(6px) !important;
    transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease !important;
}

/* Puente invisible para mantener el hover al desplazar el mouse hacia el desplegable */
.ct-header-cart .ct-cart-content:before {
    content: '' !important;
    position: absolute !important;
    top: -15px !important;
    left: 0 !important;
    right: 0 !important;
    height: 15px !important;
    background: transparent !important;
}

/* Visibilidad ÚNICAMENTE al hacer hover o mantener el foco dentro del icono o del desplegable */
.ct-header-cart:hover .ct-cart-content,
.ct-header-cart:focus-within .ct-cart-content {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
}

/* Forzar fondo blanco y visibilidad completa en la lista interior */
.ct-cart-content .woocommerce-mini-cart {
    max-height: 350px !important;
    overflow-y: auto !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    margin-inline: -20px !important;
    padding-inline: 20px !important;
}

.ct-cart-content,
.ct-cart-content * {
    box-sizing: border-box !important;
}

.ct-cart-content .widget_shopping_cart,
.ct-cart-content .widget_shopping_cart_content,
.ct-cart-content form,
.ct-cart-content div {
    background: #ffffff !important;
    background-color: #ffffff !important;
    width: 100% !important;
}

/* Lista de productos */
.ct-cart-content ul.woocommerce-mini-cart {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    width: 100% !important;
}

.ct-cart-content li.woocommerce-mini-cart-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 12px 0 !important;
    border-bottom: 1px solid #f0f2f5 !important;
    margin: 0 !important;
    position: relative !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    width: 100% !important;
}

.ct-cart-content li.woocommerce-mini-cart-item:last-child {
    border-bottom: none !important;
}

/* Miniatura de producto */
.ct-cart-content li.woocommerce-mini-cart-item .ct-media-container,
.ct-cart-content li.woocommerce-mini-cart-item img {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    border-radius: 8px !important;
    border: 1px solid #E7E9EF !important;
    object-fit: cover !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
    background: #ffffff !important;
}

/* Contenedor de datos del producto */
.ct-cart-content li.woocommerce-mini-cart-item .product-data {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* Nombre del producto */
.ct-cart-content li.woocommerce-mini-cart-item .product-title {
    color: var(--theme-palette-color-4, #293241) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    margin: 0 0 3px 0 !important;
    padding: 0 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
    background: transparent !important;
    transition: color 0.2s ease !important;
}

.ct-cart-content li.woocommerce-mini-cart-item .product-title:hover {
    color: var(--theme-palette-color-1, #98c1d9) !important;
}

/* Cantidad y Precio */
.ct-cart-content li.woocommerce-mini-cart-item .quantity {
    display: block !important;
    color: var(--theme-palette-color-3, #475671) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
    background: transparent !important;
}

.ct-cart-content li.woocommerce-mini-cart-item .quantity .amount {
    color: var(--theme-palette-color-4, #293241) !important;
    font-weight: 700 !important;
}

/* Botón Eliminar */
.ct-cart-content li.woocommerce-mini-cart-item a.remove {
    position: relative !important;
    margin-left: auto !important;
    color: #a0aec0 !important;
    width: 26px !important;
    height: 26px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    transition: all 0.2s ease !important;
    flex-shrink: 0 !important;
}

.ct-cart-content li.woocommerce-mini-cart-item a.remove svg {
    fill: currentColor !important;
    stroke: none !important;
}

.ct-cart-content li.woocommerce-mini-cart-item a.remove:hover {
    color: #e53e3e !important;
    background-color: #fff5f5 !important;
}

/* Subtotal */
.ct-cart-content p.woocommerce-mini-cart__total,
.ct-cart-content .woocommerce-mini-cart__total {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 14px 0 16px !important;
    margin: 6px 0 0 0 !important;
    border-top: 1px solid var(--theme-palette-color-5, #E7E9EF) !important;
    color: var(--theme-palette-color-4, #293241) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    width: 100% !important;
}

.ct-cart-content p.woocommerce-mini-cart__total .amount,
.ct-cart-content .woocommerce-mini-cart__total .amount {
    font-size: 15px !important;
    color: var(--theme-palette-color-4, #293241) !important;
    font-weight: 700 !important;
}

/* Botones de acción inferiores */
.ct-cart-content p.woocommerce-mini-cart__buttons,
.ct-cart-content .woocommerce-mini-cart__buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    width: 100% !important;
}

.ct-cart-content p.woocommerce-mini-cart__buttons a.button,
.ct-cart-content .woocommerce-mini-cart__buttons a.button {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 12px 18px !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    text-align: center !important;
    border-radius: 4px !important; /* Estándar unificado de 4px */
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

/* Botón 1: Ver carrito */
.ct-cart-content p.woocommerce-mini-cart__buttons a.button:not(.checkout),
.ct-cart-content .woocommerce-mini-cart__buttons a.button:not(.checkout) {
    background-color: #f3f4f7 !important;
    color: var(--theme-palette-color-4, #293241) !important;
    border: 1px solid var(--theme-palette-color-5, #E7E9EF) !important;
}

.ct-cart-content p.woocommerce-mini-cart__buttons a.button:not(.checkout):hover,
.ct-cart-content .woocommerce-mini-cart__buttons a.button:not(.checkout):hover {
    background-color: var(--theme-palette-color-2, #c9c5a6) !important;
    color: #ffffff !important;
    border-color: var(--theme-palette-color-2, #c9c5a6) !important;
}

/* Botón 2: Finalizar compra */
.ct-cart-content p.woocommerce-mini-cart__buttons a.button.checkout,
.ct-cart-content .woocommerce-mini-cart__buttons a.button.checkout {
    background-color: var(--theme-palette-color-1, #98c1d9) !important;
    color: #ffffff !important;
    border: 1px solid var(--theme-palette-color-1, #98c1d9) !important;
}

.ct-cart-content p.woocommerce-mini-cart__buttons a.button.checkout:hover,
.ct-cart-content .woocommerce-mini-cart__buttons a.button.checkout:hover {
    background-color: var(--theme-palette-color-2, #c9c5a6) !important;
    border-color: var(--theme-palette-color-2, #c9c5a6) !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(201, 197, 166, 0.35) !important;
}

/* ==========================================================================
   3. LISTA SÁBANA / CATÁLOGO COMPLETO (UX de Alta Densidad & Paleta Nativa)
   ========================================================================== */

.amber-sabana-wrapper {
    max-width: 1200px;
    margin: 0 auto 50px;
    padding: 20px 15px;
    font-family: inherit;
    color: var(--theme-text-color, var(--theme-palette-color-4, #293241));
}

/* Encabezado */
.amber-sabana-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 25px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.amber-sabana-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #e8f5e9;
    color: #2e7d32;
    font-size: 13px;
    font-weight: 600;
    padding: 4px 12px;
    border-radius: 20px;
    margin-bottom: 8px;
}

.amber-pulse-dot {
    width: 8px;
    height: 8px;
    background-color: #2e7d32;
    border-radius: 50%;
    animation: amberPulse 2s infinite;
}

@keyframes amberPulse {
    0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(46, 125, 50, 0.7); }
    70% { transform: scale(1); box-shadow: 0 0 0 6px rgba(46, 125, 50, 0); }
    100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(46, 125, 50, 0); }
}

.amber-sabana-title {
    font-size: 28px;
    font-weight: 700;
    margin: 0 0 5px;
    color: var(--theme-headings-color, var(--theme-palette-color-4, #293241));
}

.amber-sabana-subtitle {
    font-size: 14px;
    color: var(--theme-text-color, #666);
    margin: 0;
    opacity: 0.85;
}

.amber-sabana-actions {
    display: flex;
    gap: 10px;
    align-items: center;
}

.amber-btn-share,
.amber-btn-wa {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.25s ease;
    border: none;
}

.amber-btn-share {
    background: var(--theme-palette-color-6, #f3f4f7);
    color: var(--theme-palette-color-4, #293241);
    border: 1px solid var(--theme-palette-color-5, #E7E9EF);
}

.amber-btn-share:hover {
    background: var(--theme-palette-color-5, #E7E9EF);
    color: var(--theme-palette-color-4, #293241);
}

.amber-btn-wa {
    background: #25d366;
    color: #fff;
}

.amber-btn-wa:hover {
    background: #1eb954;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.25);
}

/* Barra de Controles y Búsqueda */
.amber-sabana-controls {
    margin-bottom: 30px;
}

.amber-search-box {
    position: relative;
    margin-bottom: 16px;
}

.amber-search-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--theme-palette-color-3, #475671);
    pointer-events: none;
    opacity: 0.7;
}

#amber-sabana-search {
    width: 100%;
    padding: 14px 44px 14px 48px;
    border: 2px solid var(--theme-palette-color-5, #E7E9EF);
    border-radius: 14px;
    font-size: 15px;
    background: #fff;
    color: var(--theme-palette-color-4, #293241);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    box-sizing: border-box;
}

#amber-sabana-search:focus {
    outline: none;
    border-color: var(--theme-palette-color-1, #98c1d9);
    box-shadow: 0 0 0 4px rgba(152, 193, 217, 0.25);
}

#amber-search-clear {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    background: var(--theme-palette-color-6, #f3f4f7);
    border: none;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    font-size: 16px;
    cursor: pointer;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--theme-palette-color-3, #475671);
}

/* Chips de Categorías (Wrap fluido para mostrar TODAS sin cortar) */
.amber-category-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding-bottom: 4px;
}

.amber-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: var(--theme-palette-color-6, #f3f4f7);
    border: 1px solid var(--theme-palette-color-5, #E7E9EF);
    border-radius: 24px;
    font-size: 13px;
    font-weight: 500;
    color: var(--theme-palette-color-3, #475671);
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.2s ease;
}

.amber-chip:hover {
    background: var(--theme-palette-color-5, #E7E9EF);
    color: var(--theme-palette-color-4, #293241);
    border-color: var(--theme-palette-color-1, #98c1d9);
}

.amber-chip.active {
    background: var(--theme-button-background-initial-color, var(--theme-palette-color-1, #98c1d9));
    border-color: var(--theme-button-background-initial-color, var(--theme-palette-color-1, #98c1d9));
    color: #ffffff;
}

.chip-count {
    font-size: 11px;
    opacity: 0.85;
    background: rgba(0, 0, 0, 0.08);
    padding: 2px 7px;
    border-radius: 10px;
}

.amber-chip.active .chip-count {
    background: rgba(255, 255, 255, 0.3);
    color: #fff;
}

/* Secciones de Categorías */
.amber-category-section {
    margin-bottom: 40px;
    scroll-margin-top: 100px;
}

.amber-category-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
    padding: 10px 16px;
    background: var(--theme-palette-color-7, #FBFBFC);
    border-left: 4px solid var(--theme-palette-color-1, #98c1d9);
    border-radius: 0 10px 10px 0;
    border-top: 1px solid var(--theme-palette-color-6, #f3f4f7);
    border-right: 1px solid var(--theme-palette-color-6, #f3f4f7);
    border-bottom: 1px solid var(--theme-palette-color-6, #f3f4f7);
}

.amber-category-title {
    font-size: 19px;
    font-weight: 700;
    margin: 0;
    color: var(--theme-headings-color, var(--theme-palette-color-4, #293241));
}

.amber-category-count {
    font-size: 12px;
    font-weight: 600;
    color: var(--theme-palette-color-3, #475671);
    opacity: 0.8;
}

/* Tabla Sábana */
.amber-table-responsive {
    overflow-x: auto;
    border-radius: 14px;
    border: 1px solid var(--theme-palette-color-5, #E7E9EF);
    background: #ffffff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02);
}

.amber-sabana-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
    font-size: 14px;
}

.amber-sabana-table th {
    background: var(--theme-palette-color-7, #FBFBFC);
    padding: 12px 16px;
    font-weight: 600;
    color: var(--theme-palette-color-3, #475671);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 1px solid var(--theme-palette-color-5, #E7E9EF);
}

.amber-sabana-table td {
    padding: 12px 16px;
    vertical-align: middle;
    border-bottom: 1px solid var(--theme-palette-color-6, #f3f4f7);
}

.amber-product-row {
    transition: background-color 0.2s ease;
}

.amber-product-row:hover {
    background: var(--theme-palette-color-7, #FBFBFC);
}

.col-img { width: 60px; text-align: center; }
.col-sku { width: 140px; }
.col-stock { width: 110px; }
.col-price { width: 130px; text-align: right; }
.col-actions { width: 150px; text-align: right; }

.amber-img-thumb img {
    width: 46px;
    height: 46px;
    object-fit: cover;
    border-radius: 10px;
    display: block;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
    transition: transform 0.2s ease;
}

.amber-img-thumb:hover img {
    transform: scale(1.08);
}

.amber-product-link {
    text-decoration: none;
    color: var(--theme-palette-color-4, #293241);
    display: inline-block;
    line-height: 1.4;
    transition: color 0.2s ease;
}

.amber-product-link:hover .amber-product-title {
    color: var(--theme-link-initial-color, var(--theme-palette-color-1, #98c1d9));
}

.amber-product-title {
    font-size: 14px;
    font-weight: 600;
    color: inherit;
}

.amber-sku-tag {
    font-family: inherit;
    font-size: 12px;
    color: var(--theme-palette-color-3, #475671);
    background: var(--theme-palette-color-6, #f3f4f7);
    border: 1px solid var(--theme-palette-color-5, #E7E9EF);
    padding: 3px 8px;
    border-radius: 6px;
}

.amber-stock-badge {
    display: inline-block;
    font-size: 11px;
    font-weight: 600;
    padding: 4px 9px;
    border-radius: 6px;
}

.amber-stock-badge.in-stock {
    background: #e8f5e9;
    color: #2e7d32;
}

.amber-price-tag {
    font-size: 15px;
    font-weight: 700;
    color: var(--theme-palette-color-4, #293241);
}

.amber-row-actions {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 6px;
}

/* Botón Añadir al Carrito con color idéntico al tema (#98c1d9 / hover #c9c5a6) */
.amber-btn-cart {
    background-color: var(--theme-button-background-initial-color, var(--theme-palette-color-1, #98c1d9));
    color: var(--theme-button-text-initial-color, #ffffff);
    border: none;
    padding: 8px 16px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.2s ease;
}

.amber-btn-cart:hover {
    background-color: var(--theme-button-background-hover-color, var(--theme-palette-color-2, #c9c5a6));
    color: var(--theme-button-text-hover-color, #ffffff);
    transform: translateY(-1px);
    box-shadow: 0 3px 8px rgba(152, 193, 217, 0.35);
}


.amber-btn-row-wa {
    background: #25d366;
    color: #fff;
    padding: 7px 10px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    transition: all 0.2s ease;
}

.amber-btn-row-wa:hover {
    background: #1eb954;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(37, 211, 102, 0.25);
}

/* Toast */
.amber-toast {
    position: fixed;
    bottom: 24px;
    right: 24px;
    background: var(--theme-palette-color-4, #293241);
    color: #fff;
    padding: 12px 20px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 500;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
    z-index: 99999;
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.3s ease;
}

.amber-toast.show {
    opacity: 1;
    transform: translateY(0);
}

.amber-no-results {
    text-align: center;
    padding: 40px 20px;
    background: var(--theme-palette-color-7, #FBFBFC);
    border: 1px dashed var(--theme-palette-color-5, #E7E9EF);
    border-radius: 12px;
    color: var(--theme-palette-color-3, #475671);
    font-size: 15px;
}

@media (max-width: 768px) {
    .amber-sabana-header {
        flex-direction: column;
        align-items: stretch;
    }
    .amber-sabana-actions {
        width: 100%;
    }
    .amber-btn-share,
    .amber-btn-wa {
        flex: 1;
        justify-content: center;
    }
    .col-sku { display: none; }
}

/* ==========================================================================
   5.0 BOTONES DE CARRITO Y MINI-CART (Estandarización Cuadrada 4px & Tipografía Fina)
   ========================================================================== */

/* 1. Botones Nativos del Mini-Cart Desplegable (Ver carrito & Finalizar compra) */
.woocommerce-mini-cart__buttons a,
.woocommerce-mini-cart__buttons a.button,
.ct-cart-content .woocommerce-mini-cart__buttons a {
    border-radius: 4px !important;
    text-transform: none !important;
    font-weight: 500 !important;
    font-size: 14.5px !important;
    letter-spacing: normal !important;
    padding: 12px 18px !important;
    box-shadow: none !important;
}

/* 2. Botón Nativo de Checkout en Página Principal (/carrito/) */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart a.checkout-button {
    border-radius: 4px !important;
    text-transform: none !important;
    font-weight: 500 !important;
    font-size: 15px !important;
    letter-spacing: normal !important;
    padding: 14px 20px !important;
}

/* 3. Botones de WhatsApp */
.poke-wa-cart-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #25D366 !important;
    color: #ffffff !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    text-decoration: none !important;
    border-radius: 4px !important;
    transition: all 0.25s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.22) !important;
    cursor: pointer !important;
    text-align: center !important;
}

.poke-wa-cart-btn:hover {
    background: #20ba5a !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(37, 211, 102, 0.32) !important;
}

/* Botón en Mini-Cart Desplegable */
.poke-wa-minicart {
    width: 100% !important;
    padding: 12px 18px !important;
    margin-top: 10px !important;
}

/* Botón en Página Principal de Carrito */
.poke-wa-maincart {
    width: 100% !important;
    padding: 14px 20px !important;
    margin-top: 12px !important;
    font-size: 15px !important;
}

/* ==========================================================================
   0. SOLID-GLASS FLOATING STICKY HEADER
   ========================================================================== */
#header {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
    background: transparent !important;
    padding: 10px 20px 8px 20px !important;
    pointer-events: none;
}

#header [data-row="middle"] {
    pointer-events: auto;
    background: rgba(255, 255, 255, 0.80) !important;
    backdrop-filter: blur(18px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(160%) !important;
    border-radius: 28px !important;
    max-width: 1260px !important;
    margin: 0 auto !important;
    min-height: 54px !important;
    box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.16), 
                0 10px 20px -6px rgba(0, 0, 0, 0.10) !important;
    border: 1px solid rgba(255, 255, 255, 0.75) !important;
}

#header [data-row="middle"] .ct-container {
    padding-left: 28px !important;
    padding-right: 28px !important;
    min-height: 54px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

#header [data-row="middle"] [data-column] {
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
}

#header [data-row="middle"] [data-items] {
    display: flex !important;
    align-items: center !important;
}

#header .site-branding {
    display: flex !important;
    align-items: center !important;
    line-height: 1 !important;
}

#header .site-logo-container {
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1 !important;
}

#header .site-logo-container img,
#header .site-branding img,
#header .default-logo {
    max-height: 36px !important;
    width: auto !important;
    display: block !important;
    margin: auto 0 !important;
    object-fit: contain !important;
}

/* ==========================================================================
   DESHABILITACIÓN ABSOLUTA DE FINALIZAR COMPRA CUANDO HAY RESERVA
   ========================================================================== */
.has-poke-reserva .checkout-button,
.has-poke-reserva .wc-proceed-to-checkout .checkout-button,
.has-poke-reserva a.checkout-button,
.has-poke-reserva .widget_shopping_cart .checkout,
.has-poke-reserva .ct-cart-content .checkout,
.has-poke-reserva [data-id="cart"] .checkout,
.has-poke-reserva a[href*="finalizar-compra"],
.has-poke-reserva .woocommerce-mini-cart__buttons a.checkout {
    opacity: 0.35 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
    background-color: #e2e8f0 !important;
    color: #94a3b8 !important;
    border: 1px solid #cbd5e1 !important;
    filter: grayscale(100%) !important;
    box-shadow: none !important;
    text-decoration: none !important;
}


/* ==========================================================================
   BOTÓN CALCULAR ENVÍO / CAMBIAR DIRECCIÓN (ESTILO IDÉNTICO A 'VER CARRITO')
   ========================================================================== */
.woocommerce-shipping-calculator .shipping-calculator-button,
a.shipping-calculator-button,
.poke-calc-shipping-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    background-color: var(--theme-palette-color-6, #f3f4f7) !important;
    color: var(--theme-palette-color-4, #293241) !important;
    border: 1px solid var(--theme-palette-color-5, #E7E9EF) !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    height: 38px !important;
    padding: 0 16px !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    margin-top: 12px !important;
    margin-bottom: 8px !important;
    transition: all 0.2s ease !important;
}

.woocommerce-shipping-calculator .shipping-calculator-button:hover,
a.shipping-calculator-button:hover,
.poke-calc-shipping-btn:hover {
    background-color: var(--theme-palette-color-5, #E7E9EF) !important;
    color: var(--theme-palette-color-4, #293241) !important;
    border-color: var(--theme-palette-color-4, #293241) !important;
}


/* ==========================================================================
   ALINEACIÓN DEL PRECIO DE ENVÍO A LA DERECHA EN TOTES DEL CARRITO
   ========================================================================== */
.cart_totals ul#shipping_method li {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 8px !important;
}

.cart_totals ul#shipping_method li label {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: calc(100% - 28px) !important;
    margin: 0 !important;
    cursor: pointer !important;
}

.cart_totals ul#shipping_method li label .amount {
    margin-left: auto !important;
    text-align: right !important;
    font-weight: 600 !important;
    color: var(--theme-palette-color-4, #293241) !important;
}


/* ==========================================================================
   ALINEACIÓN LIMPIA Y COHERENTE DE TOTALES Y ENVÍOS DEL CARRITO
   ========================================================================== */

/* 1. Encabezados de la tabla (Subtotal, Envío, Total) alineados estrictamente a la izquierda */
.cart_totals table.shop_table th {
    text-align: left !important;
    font-weight: 700 !important;
    color: var(--theme-palette-color-4, #293241) !important;
    vertical-align: top !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
}

/* 2. Celdas de valores numéricos alineadas a la derecha sin corte */
.cart_totals table.shop_table td {
    text-align: right !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
}

.cart_totals table.shop_table td .amount,
.cart_totals table.shop_table tr.order-total td strong {
    white-space: nowrap !important;
    font-weight: 700 !important;
    color: var(--theme-palette-color-4, #293241) !important;
}

/* 3. Fila de Envío: Título arriba/izquierda y métodos bien distribuidos */
.cart_totals tr.shipping th {
    text-align: left !important;
    display: table-cell !important;
}

.cart_totals tr.shipping td {
    text-align: left !important;
}

.cart_totals ul#shipping_method {
    list-style: none !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
}

.cart_totals ul#shipping_method li {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 8px !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}

.cart_totals ul#shipping_method li input[type="radio"] {
    margin: 0 8px 0 0 !important;
    flex-shrink: 0 !important;
}

.cart_totals ul#shipping_method li label {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    margin: 0 !important;
    cursor: pointer !important;
    color: var(--theme-palette-color-4, #293241) !important;
}

.cart_totals ul#shipping_method li label .amount {
    margin-left: auto !important;
    padding-left: 8px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    color: var(--theme-palette-color-4, #293241) !important;
}

/* Texto de destino del envío */
.cart_totals .woocommerce-shipping-destination {
    font-size: 12.5px !important;
    line-height: 1.4 !important;
    color: var(--theme-palette-color-4, #293241) !important;
    margin-top: 10px !important;
    margin-bottom: 6px !important;
    text-align: left !important;
}

/* ==========================================================================
   A11Y, OBJETIVOS TÁCTILES Y RADIOS (auditoría Impeccable 2026-10-02)
   Sin cambiar el aspecto: se amplía el área de toque con pseudo-elementos.
   ========================================================================== */

/* Foco visible y consistente */
:where(a, button, input, select, textarea, [role="button"]):focus-visible {
    outline: 2px solid #98C1D9;
    outline-offset: 2px;
}

/* "Saltar al contenido": legible al enfocarlo (antes celeste sobre blanco, 1,85:1) */
body a.skip-link.screen-reader-text:focus {
    background: #293241;
    color: #ffffff;
    border-radius: 4px;
    padding: 12px 16px;
}

/* Área de toque ≥ 44 px (iconos del header, redes del footer, enlaces legales, eliminar ítem) */
.ct-header-search.ct-toggle,
.ct-header-account-icon-btn,
.ct-header .ct-cart-item,
.ct-header-trigger.ct-toggle,
.woocommerce a.remove,
footer a[href*="wa.me"], footer a[href*="instagram"], footer a[href*="facebook"],
footer .menu a, footer .ct-footer-copyright a, footer nav a {
    position: relative;
}
.ct-header-search.ct-toggle::after,
.ct-header-account-icon-btn::after,
.ct-header .ct-cart-item::after,
.ct-header-trigger.ct-toggle::after,
.woocommerce a.remove::after,
footer a[href*="wa.me"]::after, footer a[href*="instagram"]::after, footer a[href*="facebook"]::after,
footer .menu a::after, footer nav a::after {
    content: "";
    position: absolute;
    inset: -8px;
}

/* Puntos del slider del hero: misma barra de 3 px, área de toque de 44 px de alto */
.poke-hero-line { position: relative; }
.poke-hero-line::after { content: ""; position: absolute; inset: -14px -4px; }

/* Pausa del carrusel */
.poke-hero-pause {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin-left: 8px;
    padding: 0;
    border: 1px solid rgba(41, 50, 65, 0.35);
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.7);
    color: #293241;
    cursor: pointer;
}
.poke-hero-pause::after { content: ""; position: absolute; inset: -10px; }

/* Texto legible: el eyebrow del hero no baja de 12 px (antes 9,5 px) */
.poke-hero-item .poke-hero-tag { font-size: 12px !important; }

/* Radio de interactivos: 4 px (antes 3 px en botones y select del tema) */
.woocommerce a.button, .woocommerce button.button, .woocommerce select.orderby,
.woocommerce ul.products li.product .button, a.button.wc-backward { border-radius: 4px; }

/* Botones de WooCommerce al alto mínimo recomendado */
.woocommerce ul.products li.product .button, a.button.wc-backward { min-height: 44px; }
.woocommerce-cart-form .button, .woocommerce-cart-form button, .woocommerce-cart-form input.qty,
.cart_totals .button, .woocommerce .button.alt { border-radius: 4px; }

/* ==========================================================================
   CONTRASTE AA EN CTA Y TEXTO (auditoría 2026-10-02, decisión del dueño)
   Fondos de marca intactos (#25D366 verde, #98C1D9 celeste); texto navy #293241.
   ========================================================================== */
.woocommerce a.button.add_to_cart_button, .woocommerce a.button.add_to_cart_button:hover,
.woocommerce button.single_add_to_cart_button, .woocommerce button.single_add_to_cart_button:hover,
.woocommerce-cart-form button.button, .woocommerce-cart-form button.button:hover,
a.button.wc-backward, a.button.wc-backward:hover,
.woocommerce a.checkout-button, .woocommerce a.checkout-button:hover,
.woocommerce-mini-cart__buttons a.checkout, .woocommerce-mini-cart__buttons a.checkout:hover,
.woocommerce a.button.checkout, .woocommerce a.button.checkout:hover {
    color: #293241 !important;
}

/* MENÚ — estados por superficie (corrección 2026-10-04: el activo se veía oscuro sobre oscuro en el desplegable)
   · Header claro (nivel superior): navy-soft sobre blanco (7,4:1); el activo además lleva subrayado celeste.
   · Superficies oscuras (desplegable y panel móvil): blanco por defecto; hover/activo en celeste #98C1D9 (≈9:1 sobre #121519). */
#header .menu > .menu-item > .ct-menu-link:hover,
#header .menu > .menu-item.current-menu-item > .ct-menu-link,
#header .menu > .menu-item.current-menu-ancestor > .ct-menu-link,
#header .menu > .menu-item.current_page_item > .ct-menu-link {
    color: #475671 !important;
}
#header .menu > .menu-item.current-menu-item > .ct-menu-link,
#header .menu > .menu-item.current-menu-ancestor > .ct-menu-link {
    text-decoration: underline;
    text-underline-offset: 8px;
    text-decoration-thickness: 2px;
    text-decoration-color: #98C1D9;
}
#header .sub-menu .ct-menu-link:hover,
#header .sub-menu .menu-item.current-menu-item > .ct-menu-link,
#header .sub-menu .menu-item.current-menu-ancestor > .ct-menu-link,
#offcanvas .ct-menu-link:hover,
#offcanvas .menu-item.current-menu-item > .ct-menu-link,
#offcanvas .menu-item.current-menu-item > .ct-sub-menu-parent > .ct-menu-link,
#offcanvas .menu-item.current-menu-ancestor > .ct-menu-link,
#offcanvas .menu-item.current-menu-ancestor > .ct-sub-menu-parent > .ct-menu-link {
    color: #98C1D9 !important;
}
#header .sub-menu .menu-item.current-menu-item > .ct-menu-link,
#header .sub-menu .menu-item.current-menu-ancestor > .ct-menu-link,
#offcanvas .menu-item.current-menu-item > .ct-menu-link,
#offcanvas .menu-item.current-menu-item > .ct-sub-menu-parent > .ct-menu-link,
#offcanvas .menu-item.current-menu-ancestor > .ct-menu-link,
#offcanvas .menu-item.current-menu-ancestor > .ct-sub-menu-parent > .ct-menu-link {
    text-decoration: underline;
    text-underline-offset: 6px;
    text-decoration-thickness: 2px;
    text-decoration-color: #98C1D9;
}
a.hologrowth-link, .woocommerce-tabs ul.tabs li.active a, .woocommerce-tabs ul.tabs li a:hover { color: #475671 !important; }
.ct-breadcrumbs span, .ct-breadcrumbs a { color: #475671; }
