.elementor-kit-3363{--e-global-color-primary:#0C1A2A;--e-global-color-secondary:#071019;--e-global-color-text:#F2F2F0;--e-global-color-accent:#C5E544;--e-global-color-a5ccf9e:#C8A97E;--e-global-color-1c747f6:#122131;--e-global-color-2b2f60b:#8A99A8;--e-global-typography-primary-font-family:"Barlow Condensed";--e-global-typography-primary-font-weight:800;--e-global-typography-secondary-font-family:"Barlow Condensed";--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"Roboto Mono";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto Mono";--e-global-typography-accent-font-weight:600;}.elementor-kit-3363 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --wk-carbon:#0C1A2A; --wk-ink:#071019; --wk-cream:#F2F2F0; --wk-gold:#C8A97E; --wk-display:Barlow Condensed; --wk-mono:Roboto; }
/* Start custom CSS *//* CORRECCIÓN DEL CARRITO WOOCOMMERCE */
body.woocommerce-cart .wp-block-woocommerce-cart.alignwide {
    width: 100% !important;
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: clamp(16px, 3vw, 32px) !important;
    padding-right: clamp(16px, 3vw, 32px) !important;
    box-sizing: border-box !important;
}

/* Evitar desbordamientos dentro del carrito */
body.woocommerce-cart .wc-block-components-sidebar-layout,
body.woocommerce-cart .wc-block-components-main,
body.woocommerce-cart .wc-block-components-sidebar,
body.woocommerce-cart .wc-block-cart__sidebar {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

/* Ajustar el pago rápido de Stripe/Link */
body.woocommerce-cart
.wc-block-components-express-payment__content,
body.woocommerce-cart
.wc-block-components-express-payment__content iframe {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}


<style>
/* =========================================================
   WOODKIT.PRO — MENÚ DESPLEGABLE / MEGA MENÚ
   Widget Elementor: 36a37ad
   Pegar en CSS adicional o en el CSS global de Elementor
   ========================================================= */

:root {
    --wk-ink: #071825;
    --wk-ink-2: #102735;
    --wk-lime: #C5E544;
    --wk-paper: #F3F1EA;
    --wk-white: #F7F7F2;
    --wk-muted: #91A1AA;
    --wk-line: rgba(255, 255, 255, 0.15);

    /* Aliases legacy: evitan romper bloques existentes */
    --wk-menu-ink: var(--wk-ink);
    --wk-menu-ink-2: var(--wk-ink-2);
    --wk-menu-lime: var(--wk-lime);
    --wk-menu-white: var(--wk-white);
    --wk-menu-muted: var(--wk-muted);
    --wk-menu-line: var(--wk-line);
}

/* Header sticky con ocultación al bajar y aparición al subir */
.elementor-location-header {
    position: sticky !important;
    top: 0;
    z-index: 9999 !important;
    transform: translate3d(0, 0, 0);
    transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 220ms ease;
    will-change: transform;
}

.elementor-location-header.wk-header-hidden {
    transform: translate3d(0, -101%, 0) !important;
    pointer-events: none;
}

html.wk-menu-open .elementor-location-header {
    transform: translate3d(0, 0, 0) !important;
    pointer-events: auto;
}

body.admin-bar .elementor-location-header {
    top: 32px;
}

/* =========================================================
   MENÚ COMPACTO: COMPRAR / EXPERIENCIAS / RED
   La cápsula móvil se posiciona desde el script.
   ========================================================= */
.elementor-element-b998aa3 .elementor-nav-menu--main > .elementor-nav-menu {
    --wk-pill-x: 0px;
    --wk-pill-width: 90px;
    --wk-pill-opacity: 0;
    position: relative;
    isolation: isolate;
    display: flex;
    align-items: center;
    padding: 4px !important;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 999px;
    background: #14263d;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

.elementor-element-b998aa3 .elementor-nav-menu--main > .elementor-nav-menu::before {
    position: absolute;
    top: 4px;
    bottom: 4px;
    left: 0;
    z-index: -1;
    width: var(--wk-pill-width);
    border-radius: 999px;
    background: var(--wk-menu-lime);
    box-shadow: 0 8px 24px rgba(198, 255, 0, 0.15);
    content: "";
    opacity: var(--wk-pill-opacity);
    transform: translate3d(var(--wk-pill-x), 0, 0);
    transition: width 420ms cubic-bezier(0.22, 1, 0.36, 1), transform 420ms cubic-bezier(0.22, 1, 0.36, 1), opacity 180ms ease;
}

.elementor-element-b998aa3 .elementor-nav-menu--main .elementor-nav-menu > li {
    position: relative;
    z-index: 1;
}

.elementor-element-b998aa3 .elementor-nav-menu--main .elementor-item {
    padding: 12px 22px !important;
    border: 0 !important;
    border-radius: 999px;
    color: var(--wk-menu-white) !important;
    background: transparent !important;
    transition: color 240ms ease, transform 320ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

.elementor-element-b998aa3 .elementor-nav-menu--main .elementor-item.wk-pill-current {
    color: var(--wk-menu-ink) !important;
    transform: translateY(-1px);
}

.elementor-element-b998aa3 .elementor-nav-menu--main .elementor-item:focus-visible {
    outline: 2px solid var(--wk-menu-white);
    outline-offset: -3px;
}

@media (max-width: 782px) {
    body.admin-bar .elementor-location-header {
        top: 46px;
    }
}

/* El menú se mantiene por encima del contenido */
.elementor-element-6790622,
.elementor-element-632ca75 {
    position: relative;
    z-index: 9999;
}

/* Botón hamburguesa */
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle {
    display: grid;
    width: 44px;
    height: 44px;
    padding: 0 !important;
    border: 1px solid rgba(198, 255, 0, 0.35);
    border-radius: 50%;
    color: var(--wk-menu-lime) !important;
    background: transparent !important;
    place-items: center;
    transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, transform 180ms ease;
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle:hover,
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle:focus-visible,
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active {
    border-color: var(--wk-menu-lime);
    background: var(--wk-menu-lime) !important;
    color: var(--wk-menu-ink) !important;
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle:focus-visible {
    outline: 2px solid var(--wk-menu-white);
    outline-offset: 4px;
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle svg {
    width: 22px;
    height: 22px;
    fill: currentColor !important;
}

/* Panel principal: los !important sustituyen el blanco de Elementor */
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown,
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > nav.elementor-nav-menu--dropdown {
    border: 0 !important;
    border-top: 1px solid var(--wk-menu-line) !important;
    border-radius: 0 !important;
    background: var(--wk-menu-ink) !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.32) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    scrollbar-color: var(--wk-menu-lime) var(--wk-menu-ink-2);
    opacity: 0;
    clip-path: inset(0 0 100% 0);
    transform-origin: top center !important;
    transition: max-height 420ms cubic-bezier(0.22, 1, 0.36, 1), transform 420ms cubic-bezier(0.22, 1, 0.36, 1), opacity 180ms ease, clip-path 480ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown {
    height: calc(100dvh - 150px) !important;
    max-height: calc(100dvh - 150px) !important;
    transform: scaleY(1) !important;
    opacity: 1;
    clip-path: inset(0 0 0 0);
}

/* Elementor puede abrir por aria-expanded antes de aplicar su clase.
   Ambas señales deben abrir el panel; aria-expanded es la fuente fiable. */
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle[aria-expanded="true"] + .elementor-nav-menu--dropdown {
    display: block !important;
    height: calc(100dvh - var(--wk-mobile-menu-top, 132px)) !important;
    min-height: calc(100dvh - var(--wk-mobile-menu-top, 132px)) !important;
    max-height: calc(100dvh - var(--wk-mobile-menu-top, 132px)) !important;
    opacity: 1 !important;
    visibility: visible !important;
    clip-path: inset(0 0 0 0) !important;
    transform: scaleY(1) !important;
}

/* Entrada escalonada: el panel abre primero y después aparecen sus secciones. */
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown > .elementor-nav-menu > li {
    opacity: 0;
    transform: translate3d(0, 24px, 0);
    transition: opacity 180ms ease, transform 180ms ease;
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown > .elementor-nav-menu > li {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition-duration: 520ms;
    transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown > .elementor-nav-menu > li:nth-child(1) { transition-delay: 90ms; }
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown > .elementor-nav-menu > li:nth-child(2) { transition-delay: 140ms; }
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown > .elementor-nav-menu > li:nth-child(3) { transition-delay: 190ms; }
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown > .elementor-nav-menu > li:nth-child(4) { transition-delay: 240ms; }
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown > .elementor-nav-menu > li:nth-child(5) { transition-delay: 290ms; }
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown > .elementor-nav-menu > li:nth-child(6) { transition-delay: 340ms; }
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown > .elementor-nav-menu > li:nth-child(7) { transition-delay: 390ms; }
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown > .elementor-nav-menu > li:nth-child(8) { transition-delay: 440ms; }

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown::before {
    opacity: 0;
    transform: translate3d(42px, 0, 0);
    transition: opacity 650ms ease 180ms, transform 850ms cubic-bezier(0.22, 1, 0.36, 1) 120ms;
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown::before {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle svg {
    transition: transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--close {
    transform: rotate(90deg);
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown::before {
    position: absolute;
    top: 0;
    right: 0;
    width: min(36vw, 520px);
    height: 100%;
    background:
        linear-gradient(135deg, transparent 48%, rgba(198, 255, 0, 0.08) 48.2%, rgba(198, 255, 0, 0.08) 48.8%, transparent 49%),
        repeating-linear-gradient(90deg, transparent 0 59px, rgba(255, 255, 255, 0.035) 60px);
    content: "";
    pointer-events: none;
}

/* Neutraliza los fondos blancos heredados */
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-nav-menu,
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-nav-menu--dropdown,
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .sub-menu {
    background: transparent !important;
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-item,
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-sub-item {
    font-family: inherit;
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-item:focus-visible,
:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-sub-item:focus-visible {
    outline: 2px solid var(--wk-menu-lime);
    outline-offset: -2px;
}

/* Bloqueo del fondo, activado por el script complementario */
html.wk-menu-open,
html.wk-menu-open body {
    overflow: hidden !important;
}

@media (min-width: 1025px) {
    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown::after {
        position: absolute;
        right: max(32px, calc((100vw - 1200px) / 2));
        bottom: 24px;
        z-index: 1;
        color: rgba(255, 255, 255, 0.38);
        content: "WOODKIT.PRO  /  PRECISI\00D3N DENTRO. LIBERTAD FUERA.";
        font: 700 10px/1 monospace;
        letter-spacing: 0.14em;
        pointer-events: none;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown {
        padding: clamp(38px, 4.5vw, 72px) max(32px, calc((100vw - 1200px) / 2)) 38px !important;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown > .elementor-nav-menu {
        position: relative;
        z-index: 1;
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 40px 28px;
        width: 100%;
        max-width: 1200px;
        margin: 0 auto;
        padding: 0;
        counter-reset: wk-menu-section;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown > .elementor-nav-menu > li {
        position: relative;
        width: auto !important;
        min-width: 0;
        border-top: 1px solid var(--wk-menu-line);
        counter-increment: wk-menu-section;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown > .elementor-nav-menu > li::before {
        display: block;
        padding-top: 14px;
        color: var(--wk-menu-lime);
        content: "0" counter(wk-menu-section);
        font: 700 11px/1 monospace;
        letter-spacing: 0.12em;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown > .elementor-nav-menu > li > .elementor-item {
        min-height: 0;
        padding: 12px 0 22px !important;
        border: 0 !important;
        color: var(--wk-menu-white) !important;
        background: transparent !important;
        font-size: clamp(24px, 2.4vw, 39px) !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        letter-spacing: -0.045em;
        text-transform: uppercase;
        white-space: normal;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown > .elementor-nav-menu > li > .elementor-item::after {
        display: none !important;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown > .elementor-nav-menu > li > .elementor-item .sub-arrow {
        display: none;
    }

    /* Los submenús forman las columnas del mega menú */
    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .sub-menu {
        position: static !important;
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        opacity: 1 !important;
        transform: none !important;
        visibility: visible !important;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .sub-menu > li {
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .elementor-sub-item {
        display: flex;
        justify-content: space-between;
        gap: 12px;
        padding: 11px 0 !important;
        border: 0 !important;
        color: var(--wk-menu-muted) !important;
        background: transparent !important;
        font-size: 13px !important;
        line-height: 1.35;
        white-space: normal;
        transition: color 160ms ease, padding-left 160ms ease;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .elementor-sub-item::after {
        color: var(--wk-menu-lime);
        content: "\2192";
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .elementor-sub-item:hover,
    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .elementor-sub-item:focus-visible {
        padding-left: 8px !important;
        color: var(--wk-menu-white) !important;
    }

    /* ======================================================
       CTAs DEL MEGA MENÚ
       Asignar la clase CSS "wk-menu-cta" a cada CTA en
       Apariencia > Menús > Opciones de pantalla > Clases CSS.
       ====================================================== */
    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
    > .elementor-nav-menu--dropdown > .elementor-nav-menu > li.wk-menu-cta {
        grid-column: span 2;
        margin-top: 8px;
        counter-increment: none;
        border-top: 0;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
    > .elementor-nav-menu--dropdown > .elementor-nav-menu > li.wk-menu-cta::before {
        display: none;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
    > .elementor-nav-menu--dropdown > .elementor-nav-menu > li.wk-menu-cta > .elementor-item {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 74px;
        padding: 18px 22px !important;
        border: 1px solid var(--wk-menu-line) !important;
        font-size: clamp(18px, 1.8vw, 27px) !important;
        transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
    > .elementor-nav-menu--dropdown > .elementor-nav-menu > li.wk-menu-cta > .elementor-item::before {
        order: 2;
        color: var(--wk-menu-lime);
        content: "\2192";
        font-size: 24px;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
    > .elementor-nav-menu--dropdown > .elementor-nav-menu > li.wk-menu-cta > .elementor-item:hover {
        border-color: var(--wk-menu-lime) !important;
        background: var(--wk-menu-lime) !important;
        color: var(--wk-menu-ink) !important;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
    > .elementor-nav-menu--dropdown > .elementor-nav-menu > li.wk-menu-cta > .elementor-item:hover::before {
        color: var(--wk-menu-ink);
    }
/* =========================================================
   SOCIAL — NIVEL SECUNDARIO DEL MEGA MENÚ
   ========================================================= */

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
> .elementor-nav-menu--dropdown
> .elementor-nav-menu
> li.wk-menu-social{
    grid-column:1 / -1 !important;
    width:100% !important;
    margin:8px 0 0 !important;
    padding:0 !important;
    border:0 !important;
    border-top:1px solid var(--wk-menu-line) !important;
    background:transparent !important;
    counter-increment:none;
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
> .elementor-nav-menu--dropdown
> .elementor-nav-menu
> li.wk-menu-social::before{
    display:none;
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
> .elementor-nav-menu--dropdown
> .elementor-nav-menu
> li.wk-menu-social > .elementor-item{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:10px;

    min-height:0;
 padding:16px 0 !important;

    border:0 !important;
    background:transparent !important;

    color:var(--wk-menu-muted) !important;

    font-family:ui-monospace,SFMono-Regular,Consolas,monospace !important;
    font-size:12px !important;
    font-weight:700 !important;
    line-height:1;
    letter-spacing:.12em;
    text-transform:uppercase;
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
> .elementor-nav-menu--dropdown
> .elementor-nav-menu
> li.wk-menu-social > .elementor-item::before{
    content:"FOLLOW WOODKIT.PRO /";
    color:var(--wk-menu-muted);
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
> .elementor-nav-menu--dropdown
> .elementor-nav-menu
> li.wk-menu-social > .elementor-item::after{
    display:inline !important;
    content:"↗";
    color:var(--wk-menu-lime);
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
> .elementor-nav-menu--dropdown
> .elementor-nav-menu
> li.wk-menu-social > .elementor-item:hover{
    color:var(--wk-menu-white) !important;
}

:is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
> .elementor-nav-menu--dropdown
> .elementor-nav-menu
> li.wk-menu-social > .elementor-item:hover::after{
    transform:translate3d(2px,-2px,0);
}
}

@media (max-width: 1024px) {
    html.wk-menu-open .elementor-location-header {
        z-index: 2147483000 !important;
    }

    /* Panel ligado al viewport: ningún contenedor de Elementor puede
       recortarlo, oscurecerlo o colocarlo detrás del contenido. */
    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown {
        position: fixed !important;
        top: var(--wk-mobile-menu-top, 132px) !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        z-index: 2147482999 !important;
        width: 100vw !important;
        padding: 18px clamp(18px, 4vw, 36px) 36px !important;
        background: var(--wk-menu-ink) !important;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown {
        height: calc(100dvh - 132px) !important;
        min-height: calc(100dvh - 132px) !important;
        max-height: calc(100dvh - 132px) !important;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown > .elementor-nav-menu {
        display: block !important;
        position: relative;
        z-index: 1;
        width: 100% !important;
        margin: 0;
        padding: 0;
        opacity: 1 !important;
        visibility: visible !important;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown > .elementor-nav-menu > li {
        border-bottom: 1px solid var(--wk-menu-line);
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .elementor-item {
        min-height: 64px;
        padding: 15px 0 !important;
        border: 0 !important;
        color: var(--wk-menu-white) !important;
        background: transparent !important;
        font-size: clamp(23px, 5vw, 38px) !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        letter-spacing: -0.035em;
        text-transform: uppercase;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .elementor-item .sub-arrow {
        margin-left: auto;
        color: var(--wk-menu-lime);
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .elementor-item .sub-arrow svg {
        width: 13px;
        fill: currentColor;
        transition: transform 180ms ease;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .elementor-item.highlighted .sub-arrow svg,
    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .elementor-item[aria-expanded="true"] .sub-arrow svg {
        transform: rotate(180deg);
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .sub-menu {
        margin: 0 !important;
        padding: 0 0 14px 16px !important;
        border: 0 !important;
        border-left: 1px solid var(--wk-menu-lime) !important;
        background: transparent !important;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .elementor-sub-item {
        padding: 10px 14px !important;
        border: 0 !important;
        color: var(--wk-menu-muted) !important;
        background: transparent !important;
        font-size: 14px !important;
        line-height: 1.35;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .elementor-sub-item:hover,
    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) > .elementor-nav-menu--dropdown .elementor-sub-item:focus-visible {
        color: var(--wk-menu-white) !important;
    }

    /* CTAs y RRSS conservan jerarquía propia en tablet/móvil */
    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
    > .elementor-nav-menu--dropdown > .elementor-nav-menu > li.wk-menu-cta > .elementor-item {
        min-height: 58px;
        padding: 14px 0 !important;
        font-size: clamp(20px, 5vw, 30px) !important;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
    > .elementor-nav-menu--dropdown > .elementor-nav-menu > li.wk-menu-social {
        border-bottom: 0;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0)
    > .elementor-nav-menu--dropdown > .elementor-nav-menu > li.wk-menu-social > .elementor-item {
        min-height: 44px;
        padding: 11px 0 !important;
        color: var(--wk-menu-muted) !important;
        font-family: ui-monospace, SFMono-Regular, Consolas, monospace !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        letter-spacing: .12em;
    }
}


@media (max-width: 767px) {
    /* ======================================================
       HEADER MÓVIL COMPACTO — 30px promo + 68px navegación
       La plantilla 5086 apila estos contenedores por defecto.
       Aquí se convierten en una sola fila real.
       ====================================================== */
    .elementor-location-header > .elementor-element-7da8b80 {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .elementor-location-header .elementor-element-6790622 {
        display: flex !important;
        width: 100% !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        flex-direction: column !important;
    }

    .elementor-location-header .elementor-element-6790622 > .wk-promo {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    .elementor-location-header .elementor-element-632ca75 {
        display: grid !important;
        grid-template-columns: minmax(105px,130px) 1fr 44px !important;
        grid-template-rows: 68px !important;
        align-items: center !important;
        width: 100% !important;
        min-height: 68px !important;
        height: 68px !important;
        gap: 6px !important;
        margin: 0 !important;
        padding: 0 14px !important;
        overflow: visible !important;
    }

    /* Logo */
    .elementor-location-header .elementor-element-ee70071 {
        display: flex !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-items: center !important;
        width: auto !important;
        min-height: 0 !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .elementor-location-header .elementor-element-7e1c476,
    .elementor-location-header .elementor-element-7e1c476 a {
        display: flex !important;
        width: 100% !important;
        align-items: center !important;
    }

    .elementor-location-header .elementor-element-7e1c476 img {
        display: block !important;
        width: min(100%,130px) !important;
        height: auto !important;
        margin: 0 !important;
    }

    /* La cápsula compacta es solo desktop y su contenedor no debe reservar 20px. */
    .elementor-location-header .elementor-element-74cf5b7 {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Idioma + cuenta. El carrito visual se omite en esta fila para no colisionar. */
    .elementor-location-header .elementor-element-518974a {
        display: flex !important;
        grid-column: 2 !important;
        grid-row: 1 !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-end !important;
        width: auto !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: 44px !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .elementor-location-header .elementor-element-cb739ca {
        display: none !important;
    }

    .elementor-location-header .elementor-element-c87f41a,
    .elementor-location-header .elementor-element-c05106d {
        margin: 0 !important;
    }

    .elementor-location-header .woodkit-header-login {
        margin: 0 4px !important;
    }

    /* Hamburguesa al final de la misma fila, nunca ocupando todo el ancho. */
    .elementor-location-header .elementor-element-36a37ad,
    .elementor-location-header .elementor-element-3f6ea6e0 {
        position: static !important;
        display: flex !important;
        grid-column: 3 !important;
        grid-row: 1 !important;
        align-items: center !important;
        justify-content: center !important;
        width: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Promo móvil: se elimina el slide vacío y se reduce la altura total. */
    .wk-promo,
    .wk-promo .elementor-heading-title,
    .wk-promo .elementor-heading-title > a {
        min-height: 30px !important;
        height: 30px !important;
    }

    .wk-promo .elementor-heading-title > a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: hidden !important;
    }

    .wk-promo .wk-promo__msg {
        display: none !important;
        position: static !important;
        width: auto !important;
        height: auto !important;
        opacity: 1 !important;
        transform: none !important;
        animation: none !important;
    }

    .wk-promo .wk-promo__msg:first-child {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        color: var(--wk-menu-ink) !important;
        font: 700 9px/1 var(--wk-menu-mono, monospace) !important;
        letter-spacing: .03em;
        white-space: nowrap;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown {
        height: calc(100dvh - var(--wk-mobile-menu-top, 112px)) !important;
        min-height: calc(100dvh - var(--wk-mobile-menu-top, 112px)) !important;
        max-height: calc(100dvh - var(--wk-mobile-menu-top, 112px)) !important;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) .elementor-menu-toggle[aria-expanded="true"] + .elementor-nav-menu--dropdown {
        display: block !important;
        height: calc(100dvh - var(--wk-mobile-menu-top, 112px)) !important;
        min-height: calc(100dvh - var(--wk-mobile-menu-top, 112px)) !important;
        max-height: calc(100dvh - var(--wk-mobile-menu-top, 112px)) !important;
        opacity: 1 !important;
        visibility: visible !important;
        clip-path: inset(0 0 0 0) !important;
        transform: scaleY(1) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .elementor-location-header {
        transition: none !important;
    }

    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) *,
    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) *::before,
    :is(.elementor-element-36a37ad, .elementor-element-3f6ea6e0) *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }
}

</style>

<script>
(function () {
    'use strict';

    function initWoodkitHeader() {

    const menuWidgets = document.querySelectorAll(
        '.elementor-element-36a37ad, .elementor-element-3f6ea6e0'
    );
    const siteHeader = document.querySelector('.elementor-location-header');
    if (!menuWidgets.length && !siteHeader) return;

    /* El texto promocional móvil nunca debe caer en el span vacío. */
    const promoFirst = document.querySelector('.wk-promo .wk-promo__msg:first-child');
    if (promoFirst) promoFirst.textContent = 'ENVÍOS A EUROPA DESDE 39 €';

    const menus = Array.from(menuWidgets)
        .map(function (menuWidget) {
            return {
                toggle: menuWidget.querySelector('.elementor-menu-toggle'),
                dropdown: menuWidget.querySelector(':scope > .elementor-nav-menu--dropdown')
            };
        })
        .filter(function (menu) {
            return menu.toggle && menu.dropdown;
        });

    /* Indicador deslizante del menú compacto de escritorio. */
    const compactMenu = document.querySelector(
        '.elementor-element-b998aa3 .elementor-nav-menu--main > .elementor-nav-menu'
    );

    if (compactMenu) {
        const compactLinks = Array.from(
            compactMenu.querySelectorAll(':scope > li > a.elementor-item')
        );
        const path = window.location.pathname.toLowerCase();
        let routeLink = null;

        if (path.indexOf('/tienda/') === 0 || path.indexOf('/categoria-producto/') === 0 || path.indexOf('/en/shop/') === 0 || path.indexOf('/en/product-category/') === 0 || document.body.classList.contains('single-product')) {
            routeLink = compactLinks[0] || null;
        } else if (path.indexOf('/workshops/') === 0 || path.indexOf('/en/workshops/') === 0) {
            routeLink = compactLinks[1] || null;
        } else if (path.indexOf('/instructor/') === 0 || path.indexOf('/nodo/') === 0 || path.indexOf('/red/') === 0 || path.indexOf('/b2b/') === 0 || path.indexOf('/en/instructor/') === 0 || path.indexOf('/en/node/') === 0 || path.indexOf('/en/network/') === 0 || path.indexOf('/en/b2b/') === 0) {
            routeLink = compactLinks[2] || null;
        }

        function moveCompactPill(link) {
            compactLinks.forEach(function (item) {
                item.classList.toggle('wk-pill-current', item === link);
            });

            if (!link) {
                compactMenu.style.setProperty('--wk-pill-opacity', '0');
                return;
            }

            const item = link.parentElement;
            compactMenu.style.setProperty('--wk-pill-x', item.offsetLeft + 'px');
            compactMenu.style.setProperty('--wk-pill-width', item.offsetWidth + 'px');
            compactMenu.style.setProperty('--wk-pill-opacity', '1');
        }

        compactLinks.forEach(function (link) {
            link.addEventListener('mouseenter', function () { moveCompactPill(link); });
            link.addEventListener('focus', function () { moveCompactPill(link); });
        });

        compactMenu.addEventListener('mouseleave', function () { moveCompactPill(routeLink); });
        compactMenu.addEventListener('focusout', function (event) {
            if (!compactMenu.contains(event.relatedTarget)) moveCompactPill(routeLink);
        });
        window.addEventListener('resize', function () { moveCompactPill(routeLink); }, { passive: true });
        window.requestAnimationFrame(function () { moveCompactPill(routeLink); });
    }

    function syncMenuState() {
        const anyMenuIsOpen = menus.some(function (menu) {
            const isOpen = menu.toggle.getAttribute('aria-expanded') === 'true' ||
                menu.toggle.classList.contains('elementor-active');
            menu.dropdown.setAttribute('aria-hidden', String(!isOpen));
            return isOpen;
        });

        document.documentElement.classList.toggle('wk-menu-open', anyMenuIsOpen);

        if (anyMenuIsOpen && siteHeader) {
            siteHeader.classList.remove('wk-header-hidden');

            /* La coordenada se calcula con el header real, no con una cifra fija. */
            const headerBottom = Math.max(0, Math.round(siteHeader.getBoundingClientRect().bottom));
            document.documentElement.style.setProperty('--wk-mobile-menu-top', headerBottom + 'px');
        }
    }

    menus.forEach(function (menu) {
        const observer = new MutationObserver(syncMenuState);
        observer.observe(menu.toggle, {
            attributes: true,
            attributeFilter: ['aria-expanded', 'class']
        });

        menu.dropdown.addEventListener('click', function (event) {
            const link = event.target.closest('a');
            if (!link || !link.href || link.getAttribute('href') === '#') return;

            document.documentElement.classList.remove('wk-menu-open');
        });
    });

    document.addEventListener('keydown', function (event) {
        if (event.key !== 'Escape') return;
        const openMenu = menus.find(function (menu) {
            return menu.toggle.getAttribute('aria-expanded') === 'true';
        });
        if (!openMenu) return;

        openMenu.toggle.click();
        openMenu.toggle.focus();
    });

    window.addEventListener('pagehide', function () {
        document.documentElement.classList.remove('wk-menu-open');
        if (siteHeader) siteHeader.classList.remove('wk-header-hidden');
    });

    /* Ocultar al bajar y mostrar al subir, con tolerancia al micro-scroll. */
    if (siteHeader) {
        let anchorScrollY = Math.max(window.scrollY, 0);
        let ticking = false;
        const movementThreshold = 8;

        function updateHeaderVisibility() {
            const currentScrollY = Math.max(window.scrollY, 0);
            const movement = currentScrollY - anchorScrollY;
            const menuIsOpen = document.documentElement.classList.contains('wk-menu-open');
            const hideAfter = Math.max(siteHeader.offsetHeight, 120);

            if (menuIsOpen || currentScrollY <= 8) {
                siteHeader.classList.remove('wk-header-hidden');
                anchorScrollY = currentScrollY;
            } else if (Math.abs(movement) >= movementThreshold) {
                if (movement > 0 && currentScrollY > hideAfter) {
                    siteHeader.classList.add('wk-header-hidden');
                } else if (movement < 0) {
                    siteHeader.classList.remove('wk-header-hidden');
                }

                anchorScrollY = currentScrollY;
            }

            ticking = false;
        }

        window.addEventListener('scroll', function () {
            if (ticking) return;
            ticking = true;
            window.requestAnimationFrame(updateHeaderVisibility);
        }, { passive: true });

        window.addEventListener('resize', function () {
            anchorScrollY = Math.max(window.scrollY, 0);
            siteHeader.classList.remove('wk-header-hidden');
            syncMenuState();
        }, { passive: true });
    }

    syncMenuState();

    }

    /* El bloque suele cargarse en <head>; esperar al DOM evita que el script
       salga antes de que Elementor haya creado el header y el menú. */
    if (document.readyState === 'loading') {
        document.addEventListener('DOMContentLoaded', initWoodkitHeader, { once: true });
    } else {
        initWoodkitHeader();
    }
})();
</script>


<!--
WOODKIT.PRO · FIX GLOBAL DE GALERÍAS / BUY BOX

PROBLEMA CONFIRMADO:
El CSS global migrado desde Code Snippets ID 34 aplica display:none!important
a todas las slides salvo la primera. WooCommerce cambia la clase activa, pero
la fotografía seleccionada continúa oculta.

DÓNDE VA:
Pegar UNA sola vez en el mismo código global donde colocaste el header,
justo después del bloque del header. No pegarlo producto por producto.

Este fix solo actúa en body.single-product.
-->

<style>
body.single-product .woocommerce-product-gallery{
  --wk-gallery-ink:#071827;
  --wk-gallery-acid:#c6f52b;
  --wk-gallery-paper:#f2f2f0;
}

/* Desactiva el movimiento roto de FlexSlider y deja una única slide controlada. */
body.single-product .woocommerce-product-gallery .flex-viewport{
  height:auto!important;
  min-height:0!important;
  overflow:hidden!important;
}
body.single-product .woocommerce-product-gallery__wrapper{
  display:block!important;
  width:100%!important;
  height:auto!important;
  transform:none!important;
  transition:none!important;
}
body.single-product .woocommerce-product-gallery__image,
body.single-product .woocommerce-product-gallery__image:first-child:not(.wk-gallery-current){
  display:none!important;
  float:none!important;
  width:100%!important;
  margin:0!important;
}
body.single-product .woocommerce-product-gallery__image.wk-gallery-current,
body.single-product .woocommerce-product-gallery__image:first-child.wk-gallery-current{
  position:relative!important;
  display:block!important;
  width:100%!important;
  opacity:1!important;
  visibility:visible!important;
}
body.single-product .woocommerce-product-gallery__image.wk-gallery-current>a{
  display:flex!important;
  width:100%!important;
  aspect-ratio:4/3!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:var(--wk-gallery-paper)!important;
}
body.single-product .woocommerce-product-gallery__image.wk-gallery-current img:not(.zoomImg){
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  opacity:1!important;
  visibility:visible!important;
}

/* Miniaturas legibles, tocables y sin desbordamiento. */
body.single-product .woocommerce-product-gallery .flex-control-thumbs{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(58px,1fr))!important;
  gap:7px!important;
  width:100%!important;
  margin:10px 0 0!important;
  padding:0!important;
  overflow:visible!important;
  list-style:none!important;
}
body.single-product .woocommerce-product-gallery .flex-control-thumbs li{
  position:relative!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  border:1px solid rgba(7,24,39,.18)!important;
  background:#e8e6e0!important;
  cursor:pointer!important;
  overflow:hidden!important;
}
body.single-product .woocommerce-product-gallery .flex-control-thumbs li:focus-visible{
  outline:2px solid var(--wk-gallery-acid)!important;
  outline-offset:2px!important;
}
body.single-product .woocommerce-product-gallery .flex-control-thumbs li.wk-gallery-thumb-current{
  border-color:var(--wk-gallery-ink)!important;
  box-shadow:inset 0 -3px 0 var(--wk-gallery-acid)!important;
}
body.single-product .woocommerce-product-gallery .flex-control-thumbs img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  object-fit:contain!important;
  opacity:.68!important;
  filter:none!important;
  transition:opacity .18s ease,transform .18s ease!important;
}
body.single-product .woocommerce-product-gallery .flex-control-thumbs li:hover img,
body.single-product .woocommerce-product-gallery .flex-control-thumbs li.wk-gallery-thumb-current img{
  opacity:1!important;
  transform:scale(1.025)!important;
}

@media(max-width:767px){
  body.single-product .woocommerce-product-gallery .flex-control-thumbs{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  body.single-product .woocommerce-product-gallery__image.wk-gallery-current>a{
    min-height:280px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  body.single-product .woocommerce-product-gallery *{transition:none!important}
}
</style>

<script>
(function(){
  'use strict';

  function initGallery(gallery){
    if(!gallery || gallery.dataset.wkGalleryReady==='1') return;

    var wrapper=gallery.querySelector('.woocommerce-product-gallery__wrapper');
    var thumbs=gallery.querySelector('.flex-control-thumbs');
    if(!wrapper || !thumbs) return;

    gallery.dataset.wkGalleryReady='1';

    function getSlides(){
      return Array.prototype.slice.call(wrapper.querySelectorAll(':scope > .woocommerce-product-gallery__image'));
    }

    function getThumbs(){
      return Array.prototype.slice.call(thumbs.querySelectorAll(':scope > li'));
    }

    function show(index,moveFocus){
      var slides=getSlides();
      var items=getThumbs();
      if(!slides.length) return;
      index=Math.max(0,Math.min(index,slides.length-1));

      slides.forEach(function(slide,i){
        var active=i===index;
        slide.classList.toggle('wk-gallery-current',active);
        slide.setAttribute('aria-hidden',String(!active));

        var image=slide.querySelector('img:not(.zoomImg)');
        if(image && active){
          image.loading='eager';
          image.decoding='async';
        }
      });

      items.forEach(function(item,i){
        var active=i===index;
        item.classList.toggle('wk-gallery-thumb-current',active);
        item.setAttribute('role','button');
        item.setAttribute('tabindex',active?'0':'-1');
        item.setAttribute('aria-label','Mostrar imagen '+(i+1)+' de '+slides.length);
        item.setAttribute('aria-pressed',String(active));
      });

      if(moveFocus && items[index]) items[index].focus({preventScroll:true});
    }

    thumbs.addEventListener('click',function(event){
      var item=event.target.closest('li');
      if(!item || !thumbs.contains(item)) return;
      event.preventDefault();
      event.stopImmediatePropagation();
      show(getThumbs().indexOf(item),false);
    },true);

    thumbs.addEventListener('keydown',function(event){
      var item=event.target.closest('li');
      if(!item) return;
      var items=getThumbs();
      var index=items.indexOf(item);
      if(event.key==='Enter' || event.key===' '){event.preventDefault();show(index,false);}
      else if(event.key==='ArrowRight' || event.key==='ArrowDown'){event.preventDefault();show((index+1)%items.length,true);}
      else if(event.key==='ArrowLeft' || event.key==='ArrowUp'){event.preventDefault();show((index-1+items.length)%items.length,true);}
    });

    var variationForm=document.querySelector('form.variations_form');
    if(variationForm){
      variationForm.addEventListener('change',function(){window.setTimeout(function(){show(0,false);},80);});
    }

    show(0,false);
  }

  function boot(){
    document.querySelectorAll('.woocommerce-product-gallery').forEach(initGallery);
    new MutationObserver(function(){
      document.querySelectorAll('.woocommerce-product-gallery:not([data-wk-gallery-ready="1"])').forEach(initGallery);
    }).observe(document.body,{childList:true,subtree:true});
  }

  if(document.readyState==='loading') document.addEventListener('DOMContentLoaded',boot,{once:true});
  else boot();
})();
</script>


/* =========================================================
   WOODKIT.PRO — CARRITO
   Pegar en CSS adicional o en el CSS global de Elementor
   ========================================================= */

:root {
    --wk-ink: #071825;
    --wk-ink-soft: #102735;
    --wk-lime: #c6ff00;
    --wk-paper: #f4f3ee;
    --wk-white: #ffffff;
    --wk-line: rgba(7, 24, 37, 0.16);
    --wk-muted: #61707a;
}

body.woocommerce-cart {
    background: var(--wk-paper);
}

/* Cabecera editorial */
.wk-cart-intro {
    max-width: 1200px;
    margin: 0 auto;
    padding: clamp(56px, 8vw, 112px) clamp(16px, 3vw, 32px) clamp(32px, 5vw, 64px);
}

.wk-cart-intro__eyebrow,
.wk-secure-payment__eyebrow {
    margin: 0 0 16px;
    color: #78909c;
    font: 700 12px/1.2 monospace;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.wk-cart-intro h1 {
    max-width: 900px;
    margin: 0;
    color: var(--wk-ink);
    font-size: clamp(40px, 7vw, 88px);
    font-weight: 700;
    line-height: 0.94;
    letter-spacing: -0.055em;
    text-transform: uppercase;
}

.wk-cart-intro__copy {
    max-width: 560px;
    margin: 28px 0 0;
    color: var(--wk-muted);
    font-size: clamp(16px, 2vw, 19px);
    line-height: 1.6;
}

/* Corrige el desplazamiento de -80 px detectado en .alignwide */
body.woocommerce-cart .wp-block-woocommerce-cart.alignwide {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto clamp(64px, 8vw, 112px) !important;
    padding: 0 clamp(16px, 3vw, 32px) !important;
    box-sizing: border-box !important;
}

body.woocommerce-cart .wc-block-components-sidebar-layout,
body.woocommerce-cart .wc-block-components-main,
body.woocommerce-cart .wc-block-components-sidebar,
body.woocommerce-cart .wc-block-cart__sidebar {
    min-width: 0 !important;
    box-sizing: border-box !important;
}

/* Productos */
body.woocommerce-cart .wc-block-cart-items {
    border-collapse: separate;
    border-spacing: 0 12px;
}

body.woocommerce-cart .wc-block-cart-items__row {
    background: var(--wk-white);
    box-shadow: 0 16px 45px rgba(7, 24, 37, 0.07);
}

body.woocommerce-cart .wc-block-cart-item__image {
    padding: 20px 0 20px 20px !important;
}

body.woocommerce-cart .wc-block-cart-item__image img {
    aspect-ratio: 1;
    object-fit: cover;
    background: #e8e8e2;
}

body.woocommerce-cart .wc-block-components-product-name {
    color: var(--wk-ink) !important;
    font-size: clamp(18px, 2vw, 24px) !important;
    font-weight: 700 !important;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}

body.woocommerce-cart .wc-block-components-product-metadata {
    color: var(--wk-muted);
    font-size: 13px;
}

body.woocommerce-cart .wc-block-components-quantity-.elementor-kit-3363 {
    border: 1px solid var(--wk-line) !important;
    border-radius: 0 !important;
}

/* Panel de totales */
body.woocommerce-cart .wc-block-cart__sidebar {
    align-self: flex-start;
    padding: clamp(24px, 3vw, 40px) !important;
    background: var(--wk-ink);
    color: var(--wk-white);
    box-shadow: 0 24px 60px rgba(7, 24, 37, 0.18);
}

body.woocommerce-cart .wc-block-cart__sidebar h2,
body.woocommerce-cart .wc-block-cart__sidebar button,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__value,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__description,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item-shipping {
    color: var(--wk-white);
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-wrapper {
    border-color: rgba(255, 255, 255, 0.18) !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item {
    font-size: 22px;
}

body.woocommerce-cart .wc-block-cart__submit-button {
    min-height: 58px;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--wk-lime) !important;
    color: var(--wk-ink) !important;
    font-weight: 800 !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    transition: background-color 180ms ease, transform 180ms ease;
}

body.woocommerce-cart .wc-block-cart__submit-button:hover {
    background: var(--wk-white) !important;
    transform: translateY(-2px);
}

body.woocommerce-cart .wc-block-components-express-payment__content,
body.woocommerce-cart .wc-block-components-express-payment__content iframe {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Productos sugeridos */
body.woocommerce-cart .wp-block-woocommerce-product-collection {
    margin-top: clamp(48px, 7vw, 88px);
    padding-top: 28px;
    border-top: 1px solid var(--wk-line);
}

body.woocommerce-cart .wp-block-woocommerce-product-collection h2 {
    color: var(--wk-ink);
    font-size: clamp(26px, 3vw, 42px);
    letter-spacing: -0.035em;
    text-transform: uppercase;
}

/* Bloque de confianza */
.wk-secure-payment {
    display: grid;
    grid-template-columns: minmax(260px, 0.8fr) minmax(320px, 1.2fr);
    max-width: 1200px;
    margin: 0 auto clamp(64px, 10vw, 144px);
    background: var(--wk-ink);
    color: var(--wk-white);
    overflow: hidden;
}

.wk-secure-payment__visual {
    display: grid;
    min-height: 420px;
    place-items: center;
    background: var(--wk-lime);
}

.wk-secure-payment__visual svg {
    width: min(82%, 340px);
    height: auto;
}

.wk-secure-payment__grid {
    fill: none;
    stroke: rgba(7, 24, 37, 0.14);
    stroke-width: 1;
}

.wk-secure-payment__shield,
.wk-secure-payment__check,
.wk-secure-payment__ring {
    fill: none;
    stroke: var(--wk-ink);
    stroke-linecap: square;
    stroke-linejoin: miter;
}

.wk-secure-payment__shield { stroke-width: 6; }
.wk-secure-payment__check { stroke-width: 9; }
.wk-secure-payment__ring { stroke-width: 2; stroke-dasharray: 5 9; }

.wk-secure-payment__content {
    align-self: center;
    padding: clamp(40px, 6vw, 80px);
}

.wk-secure-payment__content h2 {
    max-width: 620px;
    margin: 0 0 24px;
    color: var(--wk-white);
    font-size: clamp(36px, 5vw, 68px);
    line-height: 0.98;
    letter-spacing: -0.05em;
    text-transform: uppercase;
}

.wk-secure-payment__content > p:not(.wk-secure-payment__eyebrow) {
    max-width: 590px;
    color: #c4ced4;
    font-size: 17px;
    line-height: 1.65;
}

.wk-secure-payment__features {
    display: grid;
    gap: 0;
    margin: 36px 0 0;
    padding: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.18);
    list-style: none;
}

.wk-secure-payment__features li {
    display: flex;
    gap: 18px;
    align-items: center;
    padding: 16px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
    font-size: 14px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.wk-secure-payment__features span {
    color: var(--wk-lime);
    font: 700 12px/1 monospace;
}

/* Carrito vacío */
body.woocommerce-cart .wc-block-cart__empty-cart__title {
    color: var(--wk-ink);
    font-size: clamp(30px, 5vw, 60px);
    letter-spacing: -0.045em;
    text-transform: uppercase;
}

@media (min-width: 900px) {
    body.woocommerce-cart .wc-block-cart__sidebar {
        position: sticky;
        top: 24px;
    }
}

@media (max-width: 899px) {
    body.woocommerce-cart .wc-block-components-sidebar-layout,
    body.woocommerce-cart .wc-block-components-main,
    body.woocommerce-cart .wc-block-components-sidebar,
    body.woocommerce-cart .wc-block-cart__sidebar {
        width: 100% !important;
        max-width: 100% !important;
    }

    .wk-secure-payment {
        grid-template-columns: 1fr;
        margin-right: 16px;
        margin-left: 16px;
    }

    .wk-secure-payment__visual {
        min-height: 300px;
    }
}

@media (max-width: 600px) {
    .wk-cart-intro h1 br {
        display: none;
    }

    body.woocommerce-cart .wc-block-cart-item__image {
        padding: 16px 0 16px 16px !important;
    }

    body.woocommerce-cart .wc-block-cart__sidebar {
        padding: 24px 18px !important;
    }

    .wk-secure-payment__content {
        padding: 36px 24px 42px;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.woocommerce-cart .wc-block-cart__submit-button {
        transition: none;
    }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Roboto';
	font-display: auto;
	src: url('https://woodkit.pro/wp-content/uploads/Roboto-VariableFont_wdthwght.ttf') format('truetype');
}
/* End Custom Fonts CSS */