/* Keep the highlighted word on the same text baseline, including in WebKit. */
@media (max-width: 767px) {
    .elementor-widget-ld_jkit_animated_text.elementor-element-cfca317 .animated-text .normal-text,
    .elementor-widget-ld_jkit_animated_text.elementor-element-cfca317 .animated-text .dynamic-wrapper,
    .elementor-widget-ld_jkit_animated_text.elementor-element-cfca317 .animated-text .dynamic-text {
        vertical-align: baseline !important;
        line-height: 1.2em !important;
    }

    /* In-flow sizing avoids percentage-image flex bases cached before image layout. */
    .ld-hang-wrap,
    .ld-hang-wrap > .e-con-inner,
    .ld-hang-wrap .ld-hang-card {
        height: auto !important;
        max-height: none !important;
    }
    .elementor-273 .ld-hang-wrap .elementor-element-889a6b0,
    .elementor-273 .ld-hang-wrap .elementor-element-889a6b0 > .e-con-inner {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr);
        grid-auto-rows: max-content;
        align-content: start;
        min-height: 0 !important;
        flex: 0 0 auto !important;
        align-self: flex-start;
    }
    .ld-hang-wrap .elementor-widget-ld_ea_product_grid,
    .ld-hang-wrap .elementor-widget-ld_ea_product_grid > .elementor-widget-container {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        flex: none !important;
        --container-widget-height: auto;
    }
    .ld-hang-wrap .elementor-widget-ld_ea_product_grid .eael-product-grid.grid .woocommerce > ul.products {
        display: flow-root;
        height: auto !important;
        min-height: 0;
    }
    .ld-hang-wrap .elementor-widget-ld_ea_product_grid .eael-product-grid.grid .woocommerce > ul.products > li.product {
        position: relative !important;
        left: auto !important;
        top: auto !important;
        float: none;
        width: 100%;
        height: auto;
        margin: 0 0 24px;
        transform: none !important;
    }
    .ld-hang-wrap .elementor-widget-ld_ea_product_grid .eael-product-grid.grid .woocommerce > ul.products > li.product:last-child {
        margin-bottom: 0;
    }
    .ld-hang-wrap .eael-load-more-button-wrap {
        position: relative;
        clear: both;
    }

    /* Elementor's inline grid spacing can wrap the last icon on Safari. */
    .elementor-148 .elementor-element.elementor-element-d73e2f7 {
        width: 100%;
        max-width: 100%;
        --container-widget-width: 100%;
    }
    .elementor-148 .elementor-element.elementor-element-d73e2f7.elementor-widget-social-icons .elementor-social-icons-wrapper.elementor-grid {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: center;
        gap: var(--grid-column-gap, 15px);
        width: 100%;
        margin-inline: 0;
        font-size: 0;
    }
    .elementor-148 .elementor-element-d73e2f7 .elementor-social-icons-wrapper > .elementor-grid-item {
        display: flex;
        flex: 0 0 auto;
        margin: 0 !important;
        padding: 0;
    }
}

/* The class follows each menu's configured breakpoint in the native runtime. */
.jeg-elementor-kit.jkit-nav-menu.ldes-menu-collapsed .jkit-hamburger-menu {
    touch-action: manipulation;
    min-width: 44px;
    min-height: 44px;
}
.jeg-elementor-kit.jkit-nav-menu.ldes-menu-collapsed .jkit-menu-wrapper {
    height: 100vh !important;
    height: 100dvh !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    padding-bottom: env(safe-area-inset-bottom, 0px);
}
.jeg-elementor-kit.jkit-nav-menu.ldes-menu-collapsed .jkit-menu-wrapper[aria-hidden="true"] {
    visibility: hidden;
    pointer-events: none;
}
.jeg-elementor-kit.jkit-nav-menu.ldes-menu-collapsed .jkit-menu-wrapper[aria-hidden="false"] {
    visibility: visible;
    pointer-events: auto;
}

.ldes-menu-portal {
    position: fixed;
    inset: 0;
    z-index: 2147483000;
    pointer-events: none;
}
.ldes-menu-portal .ldes-menu-context {
    display: contents !important;
}
.ldes-menu-portal .ldes-menu-context::before,
.ldes-menu-portal .ldes-menu-context::after {
    display: none !important;
}
.ldes-menu-portal .jkit-menu-wrapper,
.ldes-menu-portal .jkit-overlay.active {
    pointer-events: auto;
}

/* Keep the actual toggle above the decorative hero stacking contexts. */
.elementor-location-header.ldes-navigation-layer {
    position: relative;
    z-index: 10001;
}

/* The home bestseller selection is a fixed showcase, without pagination. */
.elementor-273 .elementor-element.elementor-element-559d306 .eael-load-more-button-wrap {
    display: none !important;
}

/* Mobile navigation: light brick in the site palette, with hanging plaques. */
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper {
    left: 0 !important;
    width: 82vw !important;
    max-width: 320px !important;
    box-sizing: border-box;
    padding: max(26px, env(safe-area-inset-top)) 18px max(28px, env(safe-area-inset-bottom)) !important;
    background-color: #e4d7c5 !important;
    background-image: linear-gradient(115deg, rgba(255,255,255,.23), rgba(96,68,37,.06)), url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27168%27%20height%3D%2788%27%20viewBox%3D%270%200%20168%2088%27%3E%3Crect%20width%3D%27168%27%20height%3D%2788%27%20fill%3D%27%23f1e7da%27%2F%3E%3Cpath%20d%3D%27M2%202h80v39H2z%27%20fill%3D%27%23ddd0bf%27%2F%3E%3Cpath%20d%3D%27M86%202h80v39H86z%27%20fill%3D%27%23e7dbca%27%2F%3E%3Cpath%20d%3D%27M2%2046h38v40H2zM128%2046h38v40H128z%27%20fill%3D%27%23dfd2c0%27%2F%3E%3Cpath%20d%3D%27M44%2046h80v40H44z%27%20fill%3D%27%23e4d7c5%27%2F%3E%3Cpath%20d%3D%27M3%204h77M87%204h77M45%2048h77%27%20stroke%3D%27%23faf4e9%27%20stroke-opacity%3D%27.65%27%2F%3E%3Cpath%20d%3D%27M3%2039h77M87%2039h77M45%2084h77%27%20stroke%3D%27%23bda991%27%20stroke-opacity%3D%27.3%27%2F%3E%3Cpath%20d%3D%27M12%2014h21M53%2029h17M101%2017h24M61%2061h29M25%2072h9M139%2064h14%27%20stroke%3D%27%23f7eee2%27%20stroke-opacity%3D%27.23%27%2F%3E%3C%2Fsvg%3E") !important;
    background-size: auto, 168px 88px !important;
    border: 0 !important;
    border-right: 1px solid rgba(98, 77, 49, .18) !important;
    box-shadow: 16px 0 64px rgba(0, 0, 0, .22) !important;
    transform: translateX(-104%);
    transition: transform .32s cubic-bezier(.22, .8, .25, 1) !important;
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper.active {
    transform: translateX(0);
}
.ldes-menu-portal .jkit-menu-wrapper.ldes-menu-closing {
    visibility: visible !important;
    pointer-events: none !important;
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-nav-identity-panel {
    display: flex !important;
    flex: 0 0 auto;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 0 0 24px !important;
    margin: 0 !important;
    border-bottom: 1px solid rgba(98, 77, 49, .18);
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-nav-site-title {
    display: block !important;
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-nav-logo {
    margin: 0 !important;
    padding: 0 !important;
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-nav-logo img {
    display: block;
    width: 82px !important;
    height: 82px !important;
    object-fit: contain;
    border-radius: 50%;
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-close-menu {
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    width: 44px !important;
    height: 44px;
    margin: 0 !important;
    padding: 12px !important;
    border: 1px solid rgba(66, 57, 43, .25) !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, .25) !important;
    color: #292a27 !important;
    transition: background .2s ease, transform .2s ease;
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-close-menu svg {
    width: 18px !important;
    height: 18px !important;
    fill: currentColor !important;
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-close-menu:hover {
    background: rgba(255, 255, 255, .55) !important;
    transform: rotate(90deg);
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu-container {
    margin-top: 42px;
    overflow: visible !important;
    flex: 0 0 auto;
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu {
    display: flex !important;
    flex-direction: column;
    gap: 34px !important;
    height: auto !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li {
    display: block !important;
    width: max-content !important;
    max-width: 100%;
    position: relative;
    margin: 0 !important;
    padding: 0 !important;
    transform-origin: 50% -24px;
    transform: rotate(var(--ldes-plaque-angle, 0deg));
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li:nth-child(odd) { align-self: flex-start; }
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li:nth-child(even) { align-self: flex-end; }
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li:nth-child(1) { margin-left: 7% !important; --ldes-plaque-angle: -2deg; }
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li:nth-child(2) { margin-right: 1% !important; --ldes-plaque-angle: 1.5deg; }
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li:nth-child(3) { margin-left: 24% !important; --ldes-plaque-angle: -1deg; }
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li:nth-child(4) { margin-right: 0 !important; --ldes-plaque-angle: 1deg; }
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li:nth-child(5) { margin-left: 3% !important; --ldes-plaque-angle: -1.5deg; }
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li:nth-child(6) { margin-right: 13% !important; --ldes-plaque-angle: 1.8deg; }
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li::before {
    content: '';
    position: absolute;
    left: 18px;
    right: 18px;
    top: -27px;
    height: 28px;
    background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27200%27%20height%3D%2728%27%20viewBox%3D%270%200%20200%2028%27%20preserveAspectRatio%3D%27none%27%3E%3Cpath%20d%3D%27M1%2027L100%202L199%2027%27%20fill%3D%27none%27%20stroke%3D%27%23584d3e%27%20stroke-opacity%3D%27.28%27%20stroke-width%3D%273%27%2F%3E%3Cpath%20d%3D%27M1%2026L100%201L199%2026%27%20fill%3D%27none%27%20stroke%3D%27%23b79b6d%27%20stroke-width%3D%271.5%27%2F%3E%3C%2Fsvg%3E") center / 100% 100% no-repeat;
    pointer-events: none;
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li::after {
    content: '';
    position: absolute;
    left: calc(50% - 3px);
    top: -29px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 25%, #e2d1ad, #827052 70%);
    box-shadow: 0 1px 2px rgba(0,0,0,.35);
    pointer-events: none;
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center;
    gap: 16px;
    box-sizing: border-box;
    width: 100% !important;
    position: relative !important;
    min-height: 48px;
    padding: 12px 21px !important;
    border: 1px solid rgba(218, 193, 144, .3) !important;
    border-radius: 7px !important;
    background: linear-gradient(180deg, #2a241c 0%, #1f1a14 55%, #15120e 100%) !important;
    box-shadow: 0 5px 10px rgba(0, 0, 0, .3), inset 0 1px rgba(255, 255, 255, .08) !important;
    color: #f4eee3 !important;
    text-align: center !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    letter-spacing: .1px !important;
    filter: none !important;
    transform: none !important;
    transition: background .2s ease, color .2s ease !important;
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li > a::before,
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li > a::after {
    content: '';
    position: absolute;
    display: block !important;
    top: 5px;
    width: 5px;
    height: 5px;
    margin: 0;
    border: 0;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 30%, #d4bf90, #766241 70%);
    box-shadow: 0 1px 2px rgba(0, 0, 0, .7);
    opacity: .8;
    transform: translateY(-50%);
}
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li > a::before { left: 18px; }
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li > a::after { right: 18px; }
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li.current-menu-item > a,
.ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li > a:hover {
    background: linear-gradient(180deg, #ffffff 0%, #f1f1f1 55%, #e6e6e6 100%) !important;
    color: #111111 !important;
}
.ldes-menu-portal .jkit-menu-wrapper.active .jkit-menu > li {
    animation: ldes-menu-link-in .36s ease both;
    animation-delay: calc(var(--ldes-menu-order, 0) * 35ms + 60ms);
}
.ldes-menu-portal .jkit-menu-wrapper a:focus-visible,
.ldes-menu-portal .jkit-close-menu:focus-visible {
    outline: 2px solid #e3c38e;
    outline-offset: 3px;
}
@keyframes ldes-menu-link-in {
    from { opacity: 0; transform: translateY(8px) rotate(var(--ldes-plaque-angle, 0deg)); }
    to { opacity: 1; transform: translateY(0) rotate(var(--ldes-plaque-angle, 0deg)); }
}
@media (prefers-reduced-motion: reduce) {
    .ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper,
    .ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-close-menu,
    .ldes-menu-portal .jeg-elementor-kit.jkit-nav-menu .jkit-menu > li > a {
        transition: none !important;
    }
    .ldes-menu-portal .jkit-menu-wrapper.active .jkit-menu > li {
        animation: none !important;
    }
}
