.bee1-ulg-wrap {
    direction: inherit;
    width: 100%;
    background: var(--bee1-commerce-surface-bg, transparent);
    font-family: var(--bee1-commerce-font-family, inherit);
}

.bee1-ulg-shell {
    position: relative;
    display: grid;
    gap: 24px;
    width: 100%;
}

.bee1-ulg-shell[data-filters-desktop="sidebar"] {
    grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
    align-items: start;
}

/* Some themes keep body computed LTR while html[dir=rtl]/body.rtl.
   Force the sidebar column to the inline-start side (right in RTL). */
html[dir="rtl"] .bee1-ulg-shell[data-filters-desktop="sidebar"],
body.rtl .bee1-ulg-shell[data-filters-desktop="sidebar"] {
    direction: rtl;
}

html[dir="rtl"] .bee1-ulg-shell[data-filters-desktop="sidebar"] .bee1-ulg-wrap,
body.rtl .bee1-ulg-shell[data-filters-desktop="sidebar"] .bee1-ulg-wrap {
    direction: rtl;
}

.bee1-ulg-shell[data-filters-desktop="sidebar"][data-filters-sticky="1"] .bee1-ulg-filters-panel {
    position: sticky;
    top: 92px;
    /* Sticky without max-height traps wheel events on a panel taller than the
       viewport — archive scrolls instead of the filter list. Keep the panel
       inside the viewport and scroll it independently. */
    max-height: calc(100vh - 108px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

/* Honor the explicit non-sticky setting even when a theme forces a sticky
   archive sidebar. Mobile drawers keep their own fixed, scrollable layout. */
@media (min-width: 641px) {
    .bee1-ulg-shell[data-filters-desktop="sidebar"][data-filters-sticky="0"] .bee1-ulg-filters-panel,
    html body:is(.archive, .post-type-archive-product, .page, .single) .bee1-ulg-shell[data-filters-desktop="sidebar"][data-filters-sticky="0"] .bee1-ulg-filters-panel {
        position: static !important;
        inset-block: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }
}

/* Sidebar-shell overflow guard: content-box padding on .bee1-ulg-wrap plus the
   shell's inline margin pushed the grid past its 1fr track and clipped the
   leftmost products off-screen (negative left) in the filters=sidebar layout.
   Force border-box + allow the tracks to shrink so the grid stays inside. */
.bee1-ulg-shell[data-filters-desktop="sidebar"],
.bee1-ulg-shell[data-filters-desktop="sidebar"] .bee1-ulg-wrap,
.bee1-ulg-shell[data-filters-desktop="sidebar"] .bee1-ulg-grid,
.bee1-ulg-shell[data-filters-desktop="sidebar"] .bee1-ulg-filters-panel {
    box-sizing: border-box !important;
    min-width: 0 !important;
}
.bee1-ulg-shell[data-filters-desktop="sidebar"] .bee1-ulg-wrap,
.bee1-ulg-shell[data-filters-desktop="sidebar"] .bee1-ulg-grid {
    max-width: 100% !important;
}

.bee1-ulg-toolbar {
    grid-column: 1 / -1;
    position: relative;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    min-width: 0;
    margin-block-end: 2px;
}

.bee1-ulg-filter-toggle,
.bee1-ulg-filter-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    border: 1px solid #111;
    background: #fff;
    color: #111;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.bee1-ulg-filter-toggle {
    flex: 0 0 auto;
    gap: 8px;
    width: max-content;
    padding: 5px 13px;
}

.bee1-ulg-sorting {
    display: inline-flex;
    align-items: center;
    margin-inline-start: auto;
    min-width: 0;
}

.bee1-ulg-sorting__label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    margin: 0;
    color: var(--b1f-text, #171f3b);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
}

.bee1-ulg-sorting__text {
    white-space: nowrap;
}

.bee1-ulg-sorting__select {
    box-sizing: border-box;
    min-height: 38px;
    max-width: min(230px, 48vw);
    padding: 5px 34px 5px 13px;
    border: 1px solid var(--b1f-border, #d4d4d8);
    border-radius: var(--bee1-commerce-radius, 6px);
    background-color: #fff;
    color: var(--b1f-text, #171f3b);
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    cursor: pointer;
}

[dir="rtl"] .bee1-ulg-sorting__select {
    padding-inline: 13px 34px;
}

.bee1-ulg-sorting__select:hover,
.bee1-ulg-sorting__select:focus-visible {
    border-color: var(--b1f-accent, #111);
    outline: 0;
}

.bee1-ulg-filter-toggle__icon {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 0;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='21' x2='14' y1='4' y2='4'/%3E%3Cline x1='10' x2='3' y1='4' y2='4'/%3E%3Cline x1='21' x2='12' y1='12' y2='12'/%3E%3Cline x1='8' x2='3' y1='12' y2='12'/%3E%3Cline x1='21' x2='16' y1='20' y2='20'/%3E%3Cline x1='12' x2='3' y1='20' y2='20'/%3E%3Cline x1='14' x2='14' y1='2' y2='6'/%3E%3Cline x1='8' x2='8' y1='10' y2='14'/%3E%3Cline x1='16' x2='16' y1='18' y2='22'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='21' x2='14' y1='4' y2='4'/%3E%3Cline x1='10' x2='3' y1='4' y2='4'/%3E%3Cline x1='21' x2='12' y1='12' y2='12'/%3E%3Cline x1='8' x2='3' y1='12' y2='12'/%3E%3Cline x1='21' x2='16' y1='20' y2='20'/%3E%3Cline x1='12' x2='3' y1='20' y2='20'/%3E%3Cline x1='14' x2='14' y1='2' y2='6'/%3E%3Cline x1='8' x2='8' y1='10' y2='14'/%3E%3Cline x1='16' x2='16' y1='18' y2='22'/%3E%3C/svg%3E") center / contain no-repeat;
}

.bee1-ulg-filter-toggle__icon::before,
.bee1-ulg-filter-toggle__icon::after {
    content: none;
    display: none;
}

.bee1-ulg-filter-toggle__icon::before {
    inset-block-start: 4px;
    inset-inline-start: 0;
    width: 18px;
}

.bee1-ulg-filter-toggle__icon::after {
    inset-block-start: -3px;
    inset-inline-start: 10px;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    box-shadow: -8px 7px 0 currentColor, 2px 14px 0 currentColor;
}

.bee1-ulg-filter-close {
    position: absolute;
    inset-block-start: 10px;
    inset-inline-end: 10px;
    width: 34px;
    min-height: 34px;
    padding: 0;
}

.bee1-ulg-filter-close__icon {
    line-height: 1;
}

.bee1-ulg-filter-close__text {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
}

.bee1-ulg-filters-panel {
    min-width: 0;
    background: #fff;
    /* Shared filter UI standard: no painted scrollbar in any layout.
       Overflow, touch, wheel and keyboard scrolling remain native. */
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.bee1-ulg-filters-panel::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}

.bee1-ulg-shell .bee1-active-filters {
    background: var(--b1f-accent-light, #f4f4f5);
    border-color: var(--b1f-border, #d4d4d8);
}

.bee1-ulg-shell .bee1-active-filter:not(.bee1-active-filter--clear-all),
.bee1-ulg-shell .bee1-filter__item.is-active a::before,
.bee1-ulg-shell .bee1-price-slider__fill {
    background-color: var(--b1f-accent, #111);
    border-color: var(--b1f-accent, #111);
}

.bee1-ulg-shell .bee1-filter__item a:hover,
.bee1-ulg-shell .bee1-collapse-toggle button,
.bee1-ulg-shell .bee1-filter__item--rating.is-active a {
    color: var(--b1f-accent, #111);
}

.bee1-ulg-shell .bee1-filter__item a:hover::before,
.bee1-ulg-shell .bee1-filter__item--color a:hover .bee1-swatch,
.bee1-ulg-shell .bee1-filter__item--color.is-active .bee1-swatch,
.bee1-ulg-shell .bee1-price-slider__handle {
    border-color: var(--b1f-accent, #111);
}

.bee1-ulg-shell .bee1-filter__item--color.is-active .bee1-swatch {
    box-shadow: 0 0 0 2px var(--b1f-accent-light, #f4f4f5);
}

.bee1-ulg-shell .bee1-active-filter:not(.bee1-active-filter--clear-all):hover {
    background: #000;
}

.bee1-ulg-shell .bee1-active-filter--clear-all {
    background: #fff;
    color: #111;
    border: 1px solid #111;
}

.bee1-ulg-shell .bee1-active-filter--clear-all:hover {
    background: #111;
    color: #fff;
    border-color: #111;
}

.bee1-ulg-shell[data-filters-desktop="sidebar"] .bee1-ulg-filter-toggle,
.bee1-ulg-shell[data-filters-desktop="sidebar"] .bee1-ulg-filter-close,
.bee1-ulg-shell[data-filters-desktop="none"] .bee1-ulg-filter-toggle,
.bee1-ulg-shell[data-filters-desktop="none"] .bee1-ulg-filters-panel {
    display: none;
}

.bee1-ulg-shell[data-filters-desktop="floating"] .bee1-ulg-filters-panel {
    position: fixed;
    inset-block: 0;
    inset-inline-start: 0;
    z-index: 100002;
    width: min(360px, calc(100vw - 38px));
    padding: 54px 18px 24px;
    overflow: auto;
    transform: translateX(-104%);
    transition: transform 180ms ease;
}

[dir="rtl"] .bee1-ulg-shell[data-filters-desktop="floating"] .bee1-ulg-filters-panel {
    transform: translateX(104%);
}

.bee1-ulg-shell.is-filters-open .bee1-ulg-filters-panel {
    transform: translateX(0) !important;
}

.bee1-ulg-filter-backdrop {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 100001;
    background: rgba(0, 0, 0, 0.38);
}

.bee1-ulg-shell.is-filters-open .bee1-ulg-filter-backdrop {
    display: block;
}

.bee1-ulg-page__inner {
    width: min(100% - 32px, 1500px);
    margin-inline: auto;
    padding-block: 24px 48px;
}

body.page-id-18949 #content.site-main,
body.page-id-18949 main.site-main.post-18949 {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    padding-inline: 0;
}

body.page-id-18949 .page-content,
body.page-id-18949 .bee1-new-collection-page {
    width: 100%;
    max-width: none;
}

body.page-id-18949 .bee1-new-collection-page > h1 {
    width: min(100% - 32px, 1500px);
    margin: 0 auto 18px;
    padding-block-start: 24px;
}

body.page-id-18949 .bee1-new-collection-page .bee1-ulg-shell {
    width: 100%;
}

.bee1-ulg-page__header {
    margin-block-end: 18px;
}

.bee1-ulg-page__title {
    margin: 0;
    color: #111;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.2;
}

.bee1-ulg-grid {
    display: grid;
    grid-template-columns: repeat(var(--bee1-ulg-cols, 4), minmax(0, 1fr));
    gap: var(--bee1-ulg-row-gap, 28px) var(--bee1-ulg-column-gap, 24px);
    align-items: start;
}

.bee1-ulg-card {
    position: relative;
    min-width: 0;
    background: #fff;
    color: #111;
    contain: layout paint;
    border-radius: var(--bee1-commerce-radius, 0);
}

.bee1-ulg-wrap .bee1-ulg-card__media,
.bee1-ulg-slider .bee1-ulg-card__media {
    position: relative;
    display: block;
    aspect-ratio: var(--bee1-ulg-image-ratio, 600 / 900) !important;
    height: auto;
    overflow: hidden;
    background: var(--bee1-ulg-card-media-bg, #f5f5f5);
}

.bee1-ulg-card__media-link {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    color: inherit;
    text-decoration: none;
}

.bee1-ulg-card__img,
.bee1-ulg-card__media img {
    box-sizing: border-box;
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100% !important;
    object-fit: var(--bee1-ulg-image-fit, cover);
    object-position: center center;
    transform-origin: center center;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-grid, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-grid {
    gap: 0;
    border-block-start: 1px solid #dce9e9;
    border-inline-start: 1px solid #dce9e9;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-card, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-card {
    display: grid;
    grid-template-rows: minmax(170px, auto) 1fr;
    min-height: 290px;
    padding: 14px 14px 12px;
    border-block-end: 1px solid #dce9e9;
    border-inline-end: 1px solid #dce9e9;
    color: #123f55;
    contain: layout paint;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-card__media, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-card__media {
    background: #fff;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-card__media img, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-card__media img {
    padding: 0;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-card__body, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-card__body {
    align-content: end;
    gap: 7px;
    min-height: 112px;
    padding-block-start: 8px;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-card__title, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-card__title {
    min-height: 42px;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-card__price, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-card__price {
    min-height: 20px;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-card__actions, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-card__actions {
    padding-block-start: 8px;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_qty_atc_wrap, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_wrap,
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_add_product, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_add_product,
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-market-cart, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-market-cart {
    display: grid;
    width: 100%;
    position: relative;
    z-index: 1;
}

/* Joined pill: qty LEFT + ATC RIGHT (LTR track). Matches Macolet coffee/tea archive. */
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_qty_atc_wrap, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_wrap,
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-market-cart, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-market-cart {
    grid-template-columns: minmax(96px, 1fr) minmax(100px, 1.2fr);
    align-items: stretch;
    gap: 0;
    min-height: 44px;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 2px 10px rgba(18, 63, 85, 0.08);
    border: 1px solid #d7ecea;
    direction: ltr;
    overflow: hidden;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_qty_atc_ctrl, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_ctrl {
    display: grid;
    grid-template-columns: 36px minmax(36px, 1fr) 36px;
    align-items: center;
    min-width: 0;
    order: 1;
    direction: ltr;
    background: #f7fbfb;
    border-inline-end: 1px solid #d7ecea;
    border-radius: 999px 0 0 999px;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_qty_atc_btn, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_btn {
    order: 2;
    border-radius: 0 999px 999px 0 !important;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-market-cart, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-market-cart {
    grid-template-columns: minmax(78px, 1.2fr) 32px minmax(38px, 0.6fr) 32px;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_qty_atc_minus, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_minus,
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_qty_atc_plus, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_plus,
.bee1-ulg-wrap[data-template-preset="supermarket"] .btn_action, .bee1-ulg-slider[data-template-preset="supermarket"] .btn_action,
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-market-cart__minus, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-market-cart__minus,
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-market-cart__plus, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-market-cart__plus {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    min-height: 42px;
    margin: 0;
    padding: 0;
    color: #43c6bd !important;
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none !important;
    border: 0;
    background: transparent;
    cursor: pointer;
    position: static !important;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_qty_atc_input, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_input,
.bee1-ulg-wrap[data-template-preset="supermarket"] .prouduct_qty, .bee1-ulg-slider[data-template-preset="supermarket"] .prouduct_qty,
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-market-cart__qty, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-market-cart__qty {
    width: 100%;
    min-width: 0;
    height: 42px;
    padding: 0 2px;
    border: 0 !important;
    border-radius: 0;
    background: transparent;
    color: #123f55;
    font-size: 14px;
    font-weight: 700;
    line-height: 42px;
    text-align: center;
    box-shadow: none !important;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_qty_atc_btn, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_btn,
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_product_add_cart, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_product_add_cart,
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-cart, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-cart,
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-market-cart__add, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-market-cart__add {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 44px;
    margin: 0;
    padding: 0 14px;
    border: 0 !important;
    border-radius: 0 999px 999px 0 !important;
    background: #43c6bd !important;
    color: #fff !important;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none !important;
    box-shadow: none !important;
    cursor: pointer;
    position: static !important;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_qty_atc_wrap .bee1_qty_atc_btn, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_wrap .bee1_qty_atc_btn {
    box-shadow: none !important;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_qty_atc_btn:hover, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_btn:hover,
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1-ulg-market-cart__add:hover, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1-ulg-market-cart__add:hover {
    background: #36b0a8 !important;
    color: #fff !important;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_qty_atc_btn.bee1_out_stock, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_btn.bee1_out_stock,
.bee1-ulg-wrap[data-template-preset="supermarket"] .bee1_qty_atc_btn.disabled, .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_btn.disabled {
    background: #c5d4d3 !important;
    color: #fff !important;
    cursor: not-allowed;
}

.bee1-ulg-wrap[data-template-preset="supermarket"] .btn--text, .bee1-ulg-slider[data-template-preset="supermarket"] .btn--text {
    display: inline-block;
}

.bee1-ulg-fly-ghost {
    position: fixed;
    z-index: 999999;
    pointer-events: none;
    object-fit: contain;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 34px rgba(18, 63, 85, 0.22);
}

.bee1-ulg-cart-pulse {
    animation: bee1-ulg-cart-pulse 420ms ease;
}

@keyframes bee1-ulg-cart-pulse {
    0% {
        transform: scale(1);
    }

    40% {
        transform: scale(1.08);
    }

    100% {
        transform: scale(1);
    }
}

.bee1-ulg-card:hover .bee1-ulg-card__img,
.bee1-ulg-card:hover .bee1-ulg-card__media img {
    transform: none;
}

.bee1-ulg-card.is-gallery-hovered .bee1-ulg-card__img,
.bee1-ulg-card.is-gallery-hovered .bee1-ulg-card__media img {
    transform: none;
}

.bee1-ulg-badges {
    position: absolute;
    inset-block-start: 8px;
    inset-inline-start: 8px;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: flex-start;
}

.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-badges,
body.wp-child-theme-yn10565 .bee1-ulg-badges {
    left: 8px;
    right: auto;
    inset-inline-start: auto;
    align-items: flex-start;
}

.bee1-ulg-badge {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 3px 7px;
    background: #000;
    color: #fff;
    /* Match ULG settings (sale badge size is the shared default for generic badges). */
    font-size: var(--bee1-ulg-sale-badge-size, 12px);
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
}

.bee1-ulg-badges .bee1-custom-badges-container {
    display: inline-flex !important;
    flex-direction: column;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 4px !important;
    width: auto !important;
    max-width: min(160px, calc(100vw - 48px));
}

.bee1-ulg-badges .bee1-custom-badges-container .bee1-badge,
.bee1-ulg-badges .bee1-custom-badges-container .custom-badge {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: auto !important;
    max-width: 100%;
    min-height: 24px !important;
    padding: 3px 7px !important;
    /* Settings win over Bee1 Custom Product Badges plugin defaults (incl. homepage sliders). */
    font-size: var(--bee1-ulg-sale-badge-size, 12px) !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    white-space: normal !important;
    text-align: start !important;
    word-break: normal;
    overflow-wrap: anywhere;
    text-transform: none !important;
}

.bee1-ulg-badges .bee1-custom-badges-container .bee1-ulg-badge--new,
.bee1-ulg-badges .bee1-custom-badges-container .bee1-badge.bee1-ulg-badge--new {
    font-size: var(--bee1-ulg-new-badge-size, 12px) !important;
}

.bee1-ulg-badges .bee1-custom-badges-container .bee1-ulg-badge--stock,
.bee1-ulg-badges .bee1-custom-badges-container .bee1-badge.bee1-ulg-badge--stock {
    font-size: var(--bee1-ulg-stock-badge-size, 12px) !important;
}

.bee1-ulg-badge--discount {
    /* Dedicated percent-badge colours; the plugin resolves these to the shared
       sale-badge colours when the settings are left empty. */
    background: var(--bee1-ulg-discount-badge-bg, var(--bee1-ulg-sale-badge-bg, #b5161b));
    color: var(--bee1-ulg-discount-badge-color, var(--bee1-ulg-sale-badge-color, #fff));
    font-size: var(--bee1-ulg-sale-badge-size, 12px);
    direction: ltr;
    unicode-bidi: isolate;
}

.bee1-ulg-badge--sale {
    background: var(--bee1-ulg-sale-badge-bg, #000);
    color: var(--bee1-ulg-sale-badge-color, #fff);
    font-size: var(--bee1-ulg-sale-badge-size, 12px);
}

.bee1-ulg-badge--rule {
    background: var(--bee1-wdr-badge-bg, var(--bee1-ulg-sale-badge-bg, #000));
    color: var(--bee1-wdr-badge-color, var(--bee1-ulg-sale-badge-color, #fff));
    font-size: var(--bee1-ulg-sale-badge-size, 12px);
    max-width: min(190px, calc(100vw - 40px));
    min-height: 0;
    white-space: normal;
    text-align: start;
}

.bee1-ulg-badge--stock {
    background: var(--bee1-ulg-stock-badge-bg, #5c6670);
    color: var(--bee1-ulg-stock-badge-color, #fff);
    font-size: var(--bee1-ulg-stock-badge-size, 12px);
}

.bee1-ulg-badge--new {
    background: var(--bee1-ulg-new-badge-bg, #d8150f);
    color: var(--bee1-ulg-new-badge-color, #fff);
    font-size: var(--bee1-ulg-new-badge-size, 12px);
}

.bee1-ulg-card__body {
    display: grid;
    gap: 6px;
    min-height: 77px;
    align-content: start;
    padding-block-start: 8px;
    text-align: center;
}

.bee1-ulg-wrap .bee1-ulg-card__title,
.bee1-ulg-slider .bee1-ulg-card__title {
    margin: 0;
    color: var(--bee1-ulg-title-color, #111) !important;
    font-size: var(--bee1-ulg-title-size, 13px) !important;
    font-weight: var(--bee1-ulg-title-weight, 600) !important;
    line-height: 1.3 !important;
    letter-spacing: 0;
}

.bee1-ulg-wrap .bee1-ulg-card__title a,
.bee1-ulg-slider .bee1-ulg-card__title a {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    text-decoration: none !important;
}

.bee1-ulg-wrap .bee1-ulg-card__price,
.bee1-ulg-slider .bee1-ulg-card__price {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: baseline !important;
    justify-content: center !important;
    gap: 0.35em !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    color: var(--bee1-ulg-price-color, #111) !important;
    font-size: var(--bee1-ulg-price-size, 16px) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    /* Currency + numbers stay LTR even on RTL archives so both prices fit predictably */
    direction: ltr !important;
    unicode-bidi: isolate !important;
    /* WDR/simple sale often injects <br> between <del> and <ins> — force one line */
}

.bee1-ulg-wrap .bee1-ulg-card__price br,
.bee1-ulg-slider .bee1-ulg-card__price br {
    display: none !important;
}

.bee1-ulg-wrap .bee1-ulg-card__price del,
.bee1-ulg-wrap .bee1-ulg-card__price ins,
.bee1-ulg-slider .bee1-ulg-card__price del,
.bee1-ulg-slider .bee1-ulg-card__price ins {
    display: inline-flex !important;
    align-items: baseline !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

.bee1-ulg-wrap .bee1-ulg-card__price .woocommerce-Price-amount,
.bee1-ulg-slider .bee1-ulg-card__price .woocommerce-Price-amount {
    font-size: inherit !important;
    white-space: nowrap !important;
}

/*
 * Mobile 2-col cards: nowrap + large price_font_size + card overflow:hidden
 * was clipping the sale amount. Scale dual prices down so BOTH always fit.
 */
@media (max-width: 640px) {
    .bee1-ulg-wrap .bee1-ulg-card__price:has(del),
    .bee1-ulg-slider .bee1-ulg-card__price:has(del) {
        font-size: max(12px, calc(var(--bee1-ulg-price-mobile-size, var(--bee1-ulg-price-size, 16px)) * var(--bee1-ulg-price-sale-scale, 0.78))) !important;
        gap: 0.22em !important;
        letter-spacing: -0.015em;
        justify-content: center !important;
    }

    .bee1-ulg-wrap .bee1-ulg-card__price:has(del) del,
    .bee1-ulg-slider .bee1-ulg-card__price:has(del) del,
    .bee1-ulg-wrap .bee1-ulg-card__price:has(del) del .woocommerce-Price-amount,
    .bee1-ulg-slider .bee1-ulg-card__price:has(del) del .woocommerce-Price-amount {
        font-size: max(14px, 0.9em) !important;
        font-weight: 500 !important;
    }

    .bee1-ulg-wrap .bee1-ulg-card__body,
    .bee1-ulg-slider .bee1-ulg-card__body {
        /* keep media overflow hidden for images; allow price row not to clip */
        overflow: visible;
    }
}

/*
 * Price roles (all settable in ULG admin):
 * - Regular (no sale): --bee1-ulg-price-color
 * - Struck before: --bee1-ulg-struck-price-color (solid grey — NOT opacity wash)
 * - Sale after: --bee1-ulg-sale-price-color
 */
.bee1-ulg-wrap .bee1-ulg-card__price del,
.bee1-ulg-slider .bee1-ulg-card__price del,
.bee1-ulg-wrap .bee1-ulg-card__price del .woocommerce-Price-amount,
.bee1-ulg-slider .bee1-ulg-card__price del .woocommerce-Price-amount {
    color: var(--bee1-ulg-struck-price-color, #525252) !important;
    opacity: 1 !important;
    font-weight: 500;
    text-decoration: line-through;
}

.bee1-ulg-wrap .bee1-ulg-card__price ins,
.bee1-ulg-slider .bee1-ulg-card__price ins,
.bee1-ulg-wrap .bee1-ulg-card__price ins .woocommerce-Price-amount,
.bee1-ulg-slider .bee1-ulg-card__price ins .woocommerce-Price-amount {
    color: var(--bee1-ulg-sale-price-color, #e53935) !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    opacity: 1 !important;
}

.bee1-ulg-variations {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
}

.bee1-ulg-variations--overlay {
    position: absolute;
    inset-inline: 10px;
    inset-block-end: 10px;
    z-index: 3;
    transition: opacity 160ms ease, transform 160ms ease;
}

.bee1-ulg-card[data-variation-visibility="hover"] .bee1-ulg-variations--overlay,
.bee1-ulg-card[data-variation-visibility="click"] .bee1-ulg-variations--overlay {
    opacity: 0;
    transform: translateY(8px);
    pointer-events: none;
}

@media (hover: hover) and (pointer: fine) {
    .bee1-ulg-card[data-variation-visibility="hover"]:hover .bee1-ulg-variations--overlay {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
    }
}

@media (max-width: 900px) {

    .bee1-ulg-card[data-variation-visibility="hover"].is-mobile-open .bee1-ulg-variations--overlay,
    .bee1-ulg-card[data-variation-visibility="click"].is-mobile-open .bee1-ulg-variations--overlay {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
    }
}

.bee1-ulg-card[data-variation-visibility="click"].is-mobile-open .bee1-ulg-variations--overlay {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.bee1-ulg-variations--below {
    padding-block-start: 2px;
}

.bee1-ulg-variation-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
    min-height: 24px;
}

.bee1-ulg-option {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--bee1-ulg-option-size, 25px);
    min-width: var(--bee1-ulg-option-size, 25px);
    height: var(--bee1-ulg-option-size, 25px);
    border: 1px solid var(--bee1-ulg-option-border, #111);
    border-radius: var(--bee1-commerce-radius, 0);
    background: var(--bee1-ulg-option-bg, rgba(255, 255, 255, 0.92));
    color: var(--bee1-ulg-option-color, #111) !important;
    font-size: var(--bee1-ulg-option-font-size, 11px);
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
}

.bee1-ulg-option--color {
    width: var(--bee1-ulg-option-size, 25px);
    min-width: var(--bee1-ulg-option-size, 25px);
    background: linear-gradient(135deg, #111 0 50%, #f6f6f0 50% 100%);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.45);
}

.bee1-ulg-embedded-swatches--circle .bee1-ulg-option--color {
    border-radius: 50%;
}

.bee1-ulg-option--color .screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.bee1-ulg-option--size {
    padding: 0;
}

.bee1-ulg-option:hover,
.bee1-ulg-option:focus-visible {
    outline: 0;
    color: var(--bee1-commerce-hover-color, var(--bee1-ulg-option-color, #111)) !important;
    border-color: #000;
    background-color: var(--bee1-ulg-option-hover-bg, var(--bee1-commerce-hover-bg, #fff));
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.15);
}

.bee1-ulg-option.is-current {
    box-shadow: 0 0 0 var(--bee1-ulg-option-ring-w, 2px) var(--bee1-ulg-option-bg, #fff), 0 0 0 calc(var(--bee1-ulg-option-ring-w, 2px) * 2) var(--bee1-ulg-option-current-ring, #111);
}

/* Always-visible colour row (colors="below"). The current-swatch ring is painted with box-shadow,
   which draws OUTSIDE the element box, so without this the ring is clipped by the card edge. */
.bee1-ulg-variations--always {
    padding-block: 4px calc(var(--bee1-ulg-option-ring-w, 2px) * 2 + 2px);
}

.bee1-ulg-option.is-unavailable {
    position: relative;
    overflow: hidden;
    color: #b6bdc8 !important;
    border-color: #e1e5eb;
    background: rgba(248, 250, 252, 0.82);
    opacity: 1;
}

.bee1-ulg-option.is-unavailable::after {
    content: '';
    position: absolute;
    inset-inline: 2px;
    top: 50%;
    height: 1px;
    background: rgba(156, 163, 175, 0.62);
    transform: rotate(-34deg);
    transform-origin: center;
    pointer-events: none;
}

.bee1-ulg-category-hero {
    width: 100%;
    margin: 0 auto 24px;
    overflow: hidden;
}

.bee1-ulg-category-hero__image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.bee1-ulg-archive-header {
    grid-column: 1 / -1;
    width: 100%;
    margin: 0;
}

.bee1-ulg-archive-title {
    margin: 0;
    line-height: 1.2;
}

.bee1-ulg-archive-description {
    width: 100%;
    margin-block-start: 32px;
    color: #333;
    font-size: 15px;
    line-height: 1.75;
    text-align: center;
}

.bee1-ulg-archive-description .term-description,
.bee1-ulg-archive-description .page-description {
    margin: 0 auto;
}

.bee1-ulg-archive-description p:last-child {
    margin-block-end: 0;
}

.bee1-ulg-archive-description--yn770 {
    width: min(100%, 860px);
    margin: 0 auto 32px;
    color: #171717;
    font-family: inherit;
    text-align: initial;
}

.bee1-ulg-lang-switch {
    display: flex;
    justify-content: center;
    gap: 0;
    margin: 0 0 18px;
}

.bee1-ulg-lang-switch__button {
    min-width: 48px;
    min-height: 34px;
    border: 0;
    background: #e9e5d7;
    color: #333;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
}

.bee1-ulg-lang-switch__button:first-child {
    border-radius: 12px 0 0 12px;
}

.bee1-ulg-lang-switch__button:last-child {
    border-radius: 0 12px 12px 0;
}

.bee1-ulg-lang-switch__button.is-active {
    background: #050505;
    color: #fff;
}

.bee1-ulg-yn770-card {
    padding: clamp(26px, 4vw, 42px) clamp(24px, 4vw, 46px);
    border-radius: 12px;
    background: #e9e5d7;
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.08);
}

.bee1-ulg-yn770-card p {
    margin: 0 0 16px;
    font-size: 15px;
    line-height: 1.7;
}

.bee1-ulg-yn770-card p:last-child {
    margin-bottom: 0;
}

.bee1-ulg-yn770-card strong {
    font-weight: 800;
}

.bee1-ulg-lang-panel[dir="ltr"] {
    text-align: left;
}

.bee1-ulg-lang-panel[dir="rtl"] {
    text-align: right;
}

.bee1-ulg-card__excerpt {
    font-size: 14px;
    line-height: 1.4;
    color: #555;
}

.bee1-ulg-card__promo:empty {
    display: none;
}

.bee1-ulg-card__actions {
    padding-block-start: 4px;
}

.bee1-ulg-card__actions .button,
.bee1-ulg-cart {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    min-width: 132px;
    padding: 8px 16px;
    border: 0;
    background: #000;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
}

.bee1-ulg-card.is-out-of-stock .bee1-ulg-card__media img {
    filter: grayscale(1);
    opacity: 0.72;
}

.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-card,
.bee1-ulg-slider--yn-icons .bee1-ulg-card {
    background: var(--bee1-ulg-card-bg, #e9e5d7);
}

.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-card__body,
.bee1-ulg-slider--yn-icons .bee1-ulg-card__body {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 44px;
    padding: 8px 10px;
    background: var(--bee1-ulg-card-body-bg, var(--bee1-ulg-card-bg, #e9e5d7));
    text-align: start;
}

.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-card__title,
.bee1-ulg-slider--yn-icons .bee1-ulg-card__title {
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    text-align: start;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-card__price,
.bee1-ulg-slider--yn-icons .bee1-ulg-card__price {
    flex: 0 1 auto;
    min-width: 0;
    max-width: 48%;
    font-size: var(--bee1-ulg-price-size, 16px) !important;
    font-weight: 700 !important;
    text-align: end;
    white-space: nowrap;
    justify-content: flex-end !important;
}

.bee1-ulg-promotions {
    margin-block-end: 24px;
}

.bee1-ulg-slider {
    position: relative;
    width: 100%;
    margin-block: 24px;
    color: #111;
}

.bee1-ulg-slider__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-block-end: 14px;
}

.bee1-ulg-slider__title {
    margin: 0;
    color: #111;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
}

.bee1-ulg-slider--title-center .bee1-ulg-slider__head {
    justify-content: center;
}

.bee1-ulg-slider--title-center .bee1-ulg-slider__title {
    text-align: center;
}

.bee1-ulg-slider--title-center .bee1-ulg-slider__controls {
    position: absolute;
    inset-inline-end: 0;
}

.bee1-ulg-slider--title-end .bee1-ulg-slider__head {
    flex-direction: row-reverse;
}

.bee1-ulg-slider--title-end .bee1-ulg-slider__title {
    text-align: end;
}

.bee1-ulg-wishlist {
    position: absolute;
    inset-block-start: 8px;
    inset-inline-end: 8px;
    z-index: 5;
    line-height: 1;
}

.bee1-ulg-wishlist .wlfmc-add-to-wishlist {
    margin: 0 !important;
}

.bee1-ulg-wishlist .wlfmc-add-button a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: #111 !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.14);
}

.bee1-ulg-wishlist .wlfmc-add-button a:hover,
.bee1-ulg-wishlist .wlfmc-add-button a:focus-visible {
    background: #111 !important;
    color: #fff !important;
    outline: 0;
}

.bee1-ulg-slider--yn-icons .bee1-ulg-card__actions {
    position: absolute;
    inset-block-start: 8px;
    left: 8px;
    right: auto;
    z-index: 6;
    padding: 0;
    line-height: 1;
}

.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist {
    inset-block-start: 8px;
    right: 8px;
    left: auto;
}

.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-wishlist,
body.wp-child-theme-yn10565 .bee1-ulg-wishlist {
    inset-block-start: 8px;
    right: 8px;
    left: auto;
    inset-inline-end: auto;
}

body.wp-child-theme-yn10565 .bee1-filter--color .bee1-filter__list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(48px, 1fr));
    gap: 8px;
    align-items: flex-start;
    text-align: start;
}

body.wp-child-theme-yn10565 .bee1-filter__item--color {
    min-width: 0;
}

body.wp-child-theme-yn10565 .bee1-filter__item--color a {
    align-items: center;
    width: 100%;
    min-width: 0;
    text-align: center;
}

body.wp-child-theme-yn10565 .bee1-swatch {
    border-radius: 4px !important;
}

body.wp-child-theme-yn10565 .bee1-swatch-label {
    width: 100%;
    max-width: 100%;
    overflow-wrap: anywhere;
    line-height: 1.15;
}

.bee1-ulg-slider--yn-icons .bee1-ulg-card__actions .button,
.bee1-ulg-slider--yn-icons .bee1-ulg-cart,
.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .woosw-btn,
.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .wlfmc-add-button a,
.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-wishlist .woosw-btn,
.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-wishlist .wlfmc-add-button a,
body.wp-child-theme-yn10565 .bee1-ulg-wishlist .woosw-btn,
body.wp-child-theme-yn10565 .bee1-ulg-wishlist .wlfmc-add-button a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: #111 !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.14);
    font-size: 0 !important;
    text-indent: 0;
}

.bee1-ulg-slider--yn-icons .bee1-ulg-card__actions .button::before,
.bee1-ulg-slider--yn-icons .bee1-ulg-cart::before {
    content: "";
    width: 20px;
    height: 20px;
    background: transparent url("data:image/svg+xml,%3Csvg xmlns='http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cg clip-path='url(%23clip0_251_589)'%3E%3Cpath d='M15 5C15 2.2425 12.7575 0 10 0C7.2425 0 5 2.2425 5 5H0V17.9167C0 19.0658 0.935 20 2.08333 20H14.1667V19.1667H2.08333C1.39417 19.1667 0.833333 18.6058 0.833333 17.9167V5.83333H5V9.16667H5.83333V5.83333H14.1667V9.16667H15V5.83333H19.1667V14.1667H20V5H15ZM5.83333 5C5.83333 2.7025 7.7025 0.833333 10 0.833333C12.2975 0.833333 14.1667 2.7025 14.1667 5H5.83333ZM16.6667 15.8333H20V16.6667H16.6667V20H15.8333V16.6667H12.5V15.8333H15.8333V12.5H16.6667V15.8333Z' fill='%230D0D0D'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_251_589'%3E%3Crect width='20' height='20' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E") center / contain no-repeat;
}

.bee1-ulg-slider--yn-icons .bee1-ulg-card__actions .button:hover::before,
.bee1-ulg-slider--yn-icons .bee1-ulg-card__actions .button:focus-visible::before,
.bee1-ulg-slider--yn-icons .bee1-ulg-cart:hover::before,
.bee1-ulg-slider--yn-icons .bee1-ulg-cart:focus-visible::before {
    filter: brightness(0) invert(1);
}

.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .woosw-btn::before,
.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-wishlist .woosw-btn::before,
body.wp-child-theme-yn10565 .bee1-ulg-wishlist .woosw-btn::before {
    content: "";
    width: 21px;
    height: 21px;
    background: transparent url("data:image/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 35 35' fill='none' xmlns='http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath d='M25.3571 1.42857C21.78 1.42857 18.5329 4.07286 17.1429 7.64857C15.7529 4.07143 12.5057 1.42857 8.92857 1.42857C4.00571 1.42857 0 5.43428 0 10.3571C0 20.0143 13.9343 30.4571 16.7271 32.4514L17.1429 32.7486L17.5586 32.4514C20.3529 30.4571 34.2857 20.0129 34.2857 10.3571C34.2857 5.43428 30.28 1.42857 25.3571 1.42857ZM17.1429 30.99C9.79857 25.6543 1.42857 17.1743 1.42857 10.3571C1.42857 6.22143 4.79286 2.85714 8.92857 2.85714C12.8543 2.85714 16.4286 6.94286 16.4286 11.4286H17.8571C17.8571 6.94286 21.4314 2.85714 25.3571 2.85714C29.4929 2.85714 32.8571 6.22143 32.8571 10.3571C32.8571 17.1743 24.4871 25.6543 17.1429 30.99Z' fill='%230D0D0D'/%3E%3C/svg%3E") center / contain no-repeat;
}

.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .woosw-btn>*,
.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-wishlist .woosw-btn>*,
body.wp-child-theme-yn10565 .bee1-ulg-wishlist .woosw-btn>* {
    display: none !important;
}

.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .wlfmc-add-button a span,
.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .wlfmc-add-button a .button-label,
.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .wlfmc-add-button a .wlfmc-add-to-wishlist-label {
    font-size: 0 !important;
}

.bee1-ulg-slider--yn-icons .bee1-ulg-card__actions .button:hover,
.bee1-ulg-slider--yn-icons .bee1-ulg-card__actions .button:focus-visible,
.bee1-ulg-slider--yn-icons .bee1-ulg-cart:hover,
.bee1-ulg-slider--yn-icons .bee1-ulg-cart:focus-visible,
.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .woosw-btn:hover,
.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .woosw-btn:focus-visible,
.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-wishlist .woosw-btn:hover,
.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-wishlist .woosw-btn:focus-visible,
body.wp-child-theme-yn10565 .bee1-ulg-wishlist .woosw-btn:hover,
body.wp-child-theme-yn10565 .bee1-ulg-wishlist .woosw-btn:focus-visible,
.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .wlfmc-add-button a:hover,
.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .wlfmc-add-button a:focus-visible {
    background: #111 !important;
    color: #fff !important;
    outline: 0;
}

.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .woosw-btn:hover::before,
.bee1-ulg-slider--yn-icons .bee1-ulg-wishlist .woosw-btn:focus-visible::before,
.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-wishlist .woosw-btn:hover::before,
.bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-wishlist .woosw-btn:focus-visible::before,
body.wp-child-theme-yn10565 .bee1-ulg-wishlist .woosw-btn:hover::before,
body.wp-child-theme-yn10565 .bee1-ulg-wishlist .woosw-btn:focus-visible::before {
    filter: brightness(0) invert(1);
}

.bee1-ulg-slider__controls {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: flex-end;
    direction: ltr;
}

.bee1-ulg-slider__controls--floating {
    position: absolute;
    inset-block-start: -44px;
    inset-inline: auto auto;
    left: 0;
    z-index: 4;
    justify-content: flex-start;
    pointer-events: none;
    transform: none;
}

.bee1-ulg-slider__nav {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid #111;
    border-radius: 0;
    background: #fff;
    color: #111;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    touch-action: manipulation;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
}

.bee1-ulg-slider__controls--floating .bee1-ulg-slider__nav {
    pointer-events: auto;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16);
}

.bee1-ulg-slider__nav:hover,
.bee1-ulg-slider__nav:focus-visible {
    background: #111;
    color: #fff;
    outline: 0;
}

.bee1-ulg-slider__nav[disabled] {
    opacity: 0.32;
    cursor: default;
    pointer-events: none;
}

.bee1-ulg-slider__nav.is-disabled {
    opacity: 0.32;
    cursor: default;
}

.bee1-ulg-slider__viewport {
    overflow: hidden;
}

.bee1-ulg-slider__track {
    display: flex;
    gap: var(--bee1-ulg-column-gap, 24px);
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.bee1-ulg-slider__track::-webkit-scrollbar {
    display: none;
}

.bee1-ulg-slider__track .bee1-ulg-card {
    flex: 0 0 calc((100% - var(--bee1-ulg-slider-gap-total, 72px)) / var(--bee1-ulg-cols, 4));
    scroll-snap-align: start;
}

.bee1-ulg-sentinel {
    height: 1px;
}

.bee1-ulg-page-status {
    min-height: 22px;
    margin-block-start: 18px;
    text-align: center;
    font-size: 14px;
    color: #555;
}

.bee1-ulg-pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
    margin-block-start: 12px;
}

.bee1-ulg-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    min-height: 34px;
    padding: 5px 9px;
    border: 1px solid #d4d4d8;
    background: #fff;
    color: #111;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}

.bee1-ulg-pagination .page-numbers.current {
    border-color: #111;
    background: #111;
    color: #fff;
}

.bee1-ulg-load {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    min-width: 148px;
    margin: 18px auto 0;
    padding: 10px 18px;
    border: 1px solid #111;
    border-radius: 999px;
    background: #111;
    color: #fff;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.14);
    transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.bee1-ulg-load:hover,
.bee1-ulg-load:focus-visible {
    background: #000;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.18);
    transform: translateY(-1px);
    outline: 0;
}

.bee1-ulg-loader {
    display: none;
    justify-content: center;
    min-height: 96px;
    margin-block-start: 18px;
}

.bee1-ulg-loader__orbit {
    position: relative;
    display: block;
    width: 86px;
    height: 72px;
}

.bee1-ulg-loader__bee {
    position: absolute;
    top: 8px;
    left: 8px;
    font-size: 44px;
    line-height: 1;
    filter: drop-shadow(0 8px 14px rgba(0, 0, 0, 0.18));
    animation: bee1-ulg-bee-corners 2600ms ease-in-out infinite;
}

.bee1-ulg-loader__spinner {
    display: block;
    width: 44px;
    height: 44px;
    margin-block-start: 12px;
    border: 4px solid rgba(17, 17, 17, 0.16);
    border-block-start-color: var(--b1f-accent, #111);
    border-radius: 50%;
    animation: bee1-ulg-loader-spin 720ms linear infinite;
}

.bee1-ulg-loader__dots {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 68px;
}

.bee1-ulg-loader__dots span {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--b1f-accent, #111);
    animation: bee1-ulg-loader-dot 900ms ease-in-out infinite;
}

.bee1-ulg-loader__dots span:nth-child(2) {
    animation-delay: 120ms;
}

.bee1-ulg-loader__dots span:nth-child(3) {
    animation-delay: 240ms;
}

.bee1-ulg-wrap.is-loading .bee1-ulg-loader {
    display: flex;
}

@keyframes bee1-ulg-bee-corners {

    0%,
    100% {
        transform: translate(0, 0) rotate(-8deg) scale(1);
    }

    25% {
        transform: translate(36px, -4px) rotate(10deg) scale(1.08);
    }

    50% {
        transform: translate(32px, 30px) rotate(4deg) scale(1.03);
    }

    75% {
        transform: translate(-4px, 28px) rotate(-12deg) scale(1.08);
    }
}

@keyframes bee1-ulg-loader-spin {
    to {
        transform: rotate(1turn);
    }
}

@keyframes bee1-ulg-loader-dot {
    0%,
    100% {
        opacity: 0.35;
        transform: translateY(0);
    }

    50% {
        opacity: 1;
        transform: translateY(-7px);
    }
}

@media (prefers-reduced-motion: reduce) {
    .bee1-ulg-loader__bee,
    .bee1-ulg-loader__spinner,
    .bee1-ulg-loader__dots span {
        animation-duration: 1ms !important;
        animation-iteration-count: 1 !important;
    }
}

/*
 * `load_button: 0` hides a leftover Load-more button in infinite/pagination modes.
 * It must NEVER hide it in `button` mode, where the button is the only way to reach
 * page 2 — that combination silently stranded 51 of 71 products on ioy archives.
 * The :not() keeps the original intent while making the dead end impossible.
 */
.bee1-ulg-wrap[data-load-button="0"]:not([data-loading-mode="button"]) .bee1-ulg-load,
.bee1-ulg-wrap.is-complete .bee1-ulg-load {
    display: none;
}

.bee1-ulg-wrap.is-loading .bee1-ulg-load {
    pointer-events: none;
    opacity: 0.38;
}

.bee1-ulg-mobile-toolbar {
    display: none;
}

.bee1-ulg-mobile-toolbar svg,
.bee1-ulg-mobile-share svg,
.bee1-ulg-mobile-search svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.bee1-ulg-mobile-share[hidden],
.bee1-ulg-mobile-search[hidden],
.bee1-ulg-mobile-toolbar[hidden] {
    display: none !important;
}

@media (max-width: 1024px) {
    .bee1-ulg-grid {
        grid-template-columns: repeat(var(--bee1-ulg-cols-tablet, 3), minmax(0, 1fr));
        gap: var(--bee1-ulg-row-gap-tablet, 24px) var(--bee1-ulg-column-gap-tablet, 18px);
    }

    .bee1-ulg-slider__track {
        gap: var(--bee1-ulg-column-gap-tablet, 18px);
    }

    .bee1-ulg-slider__track .bee1-ulg-card {
        flex-basis: calc((100% - var(--bee1-ulg-slider-tablet-gap-total, 36px)) / var(--bee1-ulg-cols-tablet, 3));
    }
}

@media (max-width: 900px) {
    html.bee1-ulg-has-mobile-toolbar body {
        padding-bottom: calc(78px + env(safe-area-inset-bottom));
    }

    .bee1-ulg-mobile-toolbar {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 100010;
        display: block;
        padding: 6px 8px calc(6px + env(safe-area-inset-bottom));
        border-top: 1px solid #e5e7eb;
        background: #fff;
        box-shadow: 0 -6px 20px rgba(15, 23, 42, 0.08);
        direction: ltr;
    }

    .bee1-ulg-mobile-toolbar__row {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 58px;
        max-width: 620px;
        margin: 0 auto;
    }

    .bee1-ulg-mobile-toolbar__row--shortcuts {
        border-bottom: 0;
    }

    .bee1-ulg-mobile-toolbar__item {
        box-sizing: border-box;
        display: inline-flex;
        flex: 1 1 0;
        min-width: 0;
        min-height: 58px;
        padding: 5px 4px 4px;
        border: 0;
        border-radius: 0;
        background: transparent;
        color: #111827 !important;
        font: inherit;
        text-decoration: none !important;
        cursor: pointer;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        -webkit-tap-highlight-color: transparent;
    }

    .bee1-ulg-mobile-toolbar .bee1-ulg-mobile-toolbar__item,
    .bee1-ulg-mobile-toolbar button.bee1-ulg-mobile-toolbar__item,
    .bee1-ulg-mobile-toolbar [type="button"].bee1-ulg-mobile-toolbar__item {
        -webkit-appearance: none;
        appearance: none;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: #111827 !important;
        outline-color: transparent;
    }

    .bee1-ulg-mobile-toolbar__item svg {
        width: 23px;
        height: 23px;
    }

    .bee1-ulg-mobile-toolbar__label {
        max-width: 100%;
        overflow: hidden;
        color: inherit;
        font-size: 14px;
        font-weight: 650;
        line-height: 1.1;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .bee1-ulg-mobile-toolbar__item:active,
    .bee1-ulg-mobile-toolbar__item:focus-visible {
        background: var(--bee1-ulg-toolbar-active-bg, rgba(0, 0, 0, 0.06));
        color: var(--bee1-ulg-toolbar-active-color, #111827) !important;
        outline: 0;
    }

    .bee1-ulg-mobile-toolbar.bee1-ulg-mobile-toolbar .bee1-ulg-mobile-toolbar__item--search:hover,
    .bee1-ulg-mobile-toolbar.bee1-ulg-mobile-toolbar .bee1-ulg-mobile-toolbar__item--search:focus,
    .bee1-ulg-mobile-toolbar.bee1-ulg-mobile-toolbar .bee1-ulg-mobile-toolbar__item--search:active,
    .bee1-ulg-mobile-toolbar.bee1-ulg-mobile-toolbar.is-search-open .bee1-ulg-mobile-toolbar__item--search {
        background: var(--bee1-ulg-toolbar-active-bg, rgba(0, 0, 0, 0.06)) !important;
        background-color: var(--bee1-ulg-toolbar-active-bg, rgba(0, 0, 0, 0.06)) !important;
        color: var(--bee1-ulg-toolbar-active-color, #111827) !important;
        outline: 0;
    }

    .bee1-ulg-mobile-share {
        position: fixed;
        inset: 0;
        z-index: 100011;
        display: block;
    }

    .bee1-ulg-mobile-share__backdrop {
        position: absolute;
        inset: 0;
        border: 0;
        background: rgba(0, 0, 0, 0.35);
    }

    .bee1-ulg-mobile-share__panel {
        position: absolute;
        right: 10px;
        bottom: calc(82px + env(safe-area-inset-bottom));
        left: 10px;
        padding: 16px;
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        background: #fff;
        color: #111;
        box-shadow: 0 18px 42px rgba(15, 23, 42, 0.18);
        direction: inherit;
    }

    .bee1-ulg-mobile-share__close {
        position: absolute;
        top: 10px;
        right: 10px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 32px;
        height: 32px;
        border: 0;
        border-radius: 999px;
        background: #f1f1f1;
        color: #111;
        font-size: 20px;
        line-height: 1;
        cursor: pointer;
    }

    .bee1-ulg-mobile-share__title {
        padding-inline-end: 36px;
        font-size: 16px;
        font-weight: 800;
        line-height: 1.2;
    }

    .bee1-ulg-mobile-share__options {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px;
        margin-top: 14px;
    }

    .bee1-ulg-mobile-share__option {
        display: inline-flex;
        min-width: 0;
        min-height: 76px;
        padding: 8px;
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        background: #fff;
        color: #111;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 6px;
        font-size: 14px;
        font-weight: 700;
        cursor: pointer;
    }

    .bee1-ulg-mobile-share__option:active,
    .bee1-ulg-mobile-share__option:focus-visible {
        border-color: #111;
        background: #f7f7f7;
        outline: 0;
    }

    .bee1-ulg-mobile-share__status {
        min-height: 18px;
        margin-top: 10px;
        color: #555;
        font-size: 14px;
        text-align: center;
    }

    .bee1-ulg-mobile-search {
        position: fixed !important;
        right: 0 !important;
        bottom: calc(70px + env(safe-area-inset-bottom, 0px)) !important;
        left: 0 !important;
        z-index: 100009 !important;
        display: block !important;
        box-sizing: border-box !important;
        padding: 10px 14px !important;
        border-top: 1px solid #e8e2e5 !important;
        background: #fff !important;
        box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.1) !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateY(150%) !important;
        transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.22s ease, visibility 0s linear 0.28s !important;
        visibility: hidden !important;
    }

    .bee1-ulg-mobile-search.is-open {
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateY(0) !important;
        transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.22s ease, visibility 0s linear 0s !important;
        visibility: visible !important;
    }

    .bee1-ulg-mobile-search__bar {
        box-sizing: border-box !important;
        display: flex !important;
        width: 100% !important;
        align-items: center !important;
        gap: 10px !important;
        direction: rtl !important;
    }

    .bee1-ulg-mobile-search__back {
        all: unset !important;
        display: inline-flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        gap: 3px !important;
        padding: 8px 2px !important;
        color: #444 !important;
        cursor: pointer !important;
        font-family: inherit !important;
        font-size: 14px !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    .bee1-ulg-mobile-search__back svg {
        display: block !important;
        width: 15px !important;
        height: 15px !important;
        fill: none !important;
        stroke: currentColor !important;
        stroke-linecap: round !important;
        stroke-linejoin: round !important;
        stroke-width: 2.5 !important;
    }

    .bee1-ulg-mobile-search__form,
    .bee1-ulg-mobile-search__provider {
        all: unset !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex: 1 1 0% !important;
        min-width: 0 !important;
        align-items: center !important;
        direction: rtl !important;
    }

    .bee1-ulg-mobile-search__form {
        height: 46px !important;
        overflow: hidden !important;
        border-radius: 30px !important;
        background: #f2ecee !important;
    }

    .bee1-ulg-mobile-search__input {
        all: unset !important;
        box-sizing: border-box !important;
        display: block !important;
        flex: 1 1 0% !important;
        min-width: 0 !important;
        height: 100% !important;
        padding: 0 14px 0 4px !important;
        background: transparent !important;
        color: #1a1a1a !important;
        direction: rtl !important;
        font-family: inherit !important;
        font-size: 15px !important;
        -webkit-appearance: none !important;
    }

    .bee1-ulg-mobile-search__input::placeholder {
        color: #8b7a81 !important;
        opacity: 1 !important;
    }

    .bee1-ulg-mobile-search__submit {
        all: unset !important;
        box-sizing: border-box !important;
        display: inline-flex !important;
        width: 46px !important;
        height: 46px !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 30px !important;
        background: #1a1a1a !important;
        color: #fff !important;
        cursor: pointer !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    .bee1-ulg-mobile-search__submit svg {
        display: block !important;
        width: 19px !important;
        height: 19px !important;
        fill: none !important;
        stroke: currentColor !important;
        stroke-linecap: round !important;
        stroke-linejoin: round !important;
        stroke-width: 2.2 !important;
    }

    .bee1-ulg-mobile-search__provider .dgwt-wcas-search-wrapp {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    .bee1-ulg-mobile-search__provider .dgwt-wcas-search-form {
        margin: 0 !important;
    }

    .bee1-ulg-mobile-search__provider .dgwt-wcas-search-input,
    .bee1-ulg-mobile-search__provider input[type="search"] {
        box-sizing: border-box !important;
        min-height: 46px !important;
        border: 0 !important;
        border-radius: 30px !important;
        background: #f2ecee !important;
        box-shadow: none !important;
        color: #1a1a1a !important;
        font-family: inherit !important;
    }

    .bee1-ulg-mobile-search__provider .dgwt-wcas-search-submit,
    .bee1-ulg-mobile-search__provider button[type="submit"] {
        background-color: #1a1a1a !important;
        color: #fff !important;
    }

    .dgwt-wcas-suggestions-wrapp {
        z-index: 100012 !important;
    }
}

@media (min-width: 901px) {

    .bee1-ulg-mobile-share,
    .bee1-ulg-mobile-toolbar {
        display: none !important;
    }
}

@media (max-width: 900px) {

    .bee1-ulg-toolbar {
        flex-wrap: nowrap;
        gap: 8px;
        align-items: center;
    }

    .bee1-ulg-sorting {
        flex: 1 1 auto;
        justify-content: flex-end;
        min-width: 0;
    }

    .bee1-ulg-sorting__label {
        flex: 1 1 auto;
        justify-content: flex-end;
        min-width: 0;
    }

    .bee1-ulg-sorting__text {
        display: none;
    }

    .bee1-ulg-sorting__select {
        width: 100%;
        max-width: 190px;
        min-width: 116px;
        min-height: 38px;
    }

    .bee1-ulg-shell,
    .bee1-ulg-shell[data-filters-desktop="sidebar"] {
        display: block;
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filter-toggle {
        display: inline-flex;
        margin-block-end: 14px;
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filters-panel {
        display: block;
        position: fixed;
        inset-block: 0;
        inset-inline-start: 0;
        z-index: 100002;
        width: min(88vw, 360px);
        padding: 54px 18px 24px;
        overflow: auto;
        transform: translateX(-104%);
        transition: transform 180ms ease;
    }

    [dir="rtl"] .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filters-panel {
        transform: translateX(104%);
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filter-close {
        display: inline-flex;
    }

    .bee1-ulg-shell[data-filters-mobile="none"] .bee1-ulg-filter-toggle,
    .bee1-ulg-shell[data-filters-mobile="none"] .bee1-ulg-filters-panel {
        display: none;
    }
}

@media (max-width: 640px) {

    .bee1-ulg-shell,
    .bee1-ulg-shell[data-filters-desktop="sidebar"] {
        display: block;
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filter-toggle {
        display: inline-flex;
        margin-block-end: 14px;
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filters-panel {
        display: block;
        position: fixed;
        inset-block: 0;
        inset-inline-start: 0;
        z-index: 100002;
        width: min(88vw, 360px);
        padding: 54px 18px 24px;
        overflow: auto;
        transform: translateX(-104%);
        transition: transform 180ms ease;
    }

    [dir="rtl"] .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filters-panel {
        transform: translateX(104%);
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filter-close {
        display: inline-flex;
    }

    .bee1-ulg-shell[data-filters-mobile="none"] .bee1-ulg-filter-toggle,
    .bee1-ulg-shell[data-filters-mobile="none"] .bee1-ulg-filters-panel {
        display: none;
    }

    .bee1-ulg-grid {
        grid-template-columns: repeat(var(--bee1-ulg-cols-mobile, 2), minmax(0, 1fr));
        gap: var(--bee1-ulg-row-gap-mobile, 22px) var(--bee1-ulg-column-gap-mobile, 12px);
    }

    .bee1-ulg-slider {
        margin-block: 18px;
    }

    .bee1-ulg-slider__title {
        font-size: 18px;
    }

    .bee1-ulg-slider__nav {
        width: 32px;
        height: 32px;
        font-size: 21px;
    }

    .bee1-ulg-slider__track {
        gap: var(--bee1-ulg-column-gap-mobile, 12px);
        padding-inline-end: 18px;
    }

    .bee1-ulg-slider__track .bee1-ulg-card {
        flex-basis: calc((100% - var(--bee1-ulg-slider-mobile-gap-total, 12px)) / var(--bee1-ulg-cols-mobile, 2));
    }

    .bee1-ulg-wrap .bee1-ulg-card__title,
    .bee1-ulg-slider .bee1-ulg-card__title {
        font-size: var(--bee1-ulg-title-mobile-size, 12px) !important;
    }

    /* Mobile price size. The plugin resolves this to the desktop size when unset. */
    .bee1-ulg-wrap .bee1-ulg-card__price,
    .bee1-ulg-slider .bee1-ulg-card__price {
        font-size: var(--bee1-ulg-price-mobile-size, var(--bee1-ulg-price-size, 16px)) !important;
    }

    .bee1-ulg-card__body {
        gap: 5px;
        min-height: 58px;
        padding-block-start: 7px;
    }

    .bee1-ulg-card__actions .button,
    .bee1-ulg-cart {
        width: 100%;
        min-width: 0;
    }

    .bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-card__body,
    .bee1-ulg-slider--yn-icons .bee1-ulg-card__body {
        min-height: 36px;
        padding: 6px 8px;
        gap: 6px;
    }

    .bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-card__price,
    .bee1-ulg-slider--yn-icons .bee1-ulg-card__price {
        font-size: max(11px, calc(var(--bee1-ulg-price-size, 16px) * 0.75)) !important;
        max-width: 52%;
    }

    .bee1-ulg-wrap[data-template-preset="comax-fashion"] .bee1-ulg-card__price:has(del),
    .bee1-ulg-slider--yn-icons .bee1-ulg-card__price:has(del) {
        font-size: max(11px, calc(var(--bee1-ulg-price-size, 16px) * 0.72)) !important;
    }
}

@media (hover: none),
(pointer: coarse) {
    .bee1-ulg-variations--overlay {
        inset-inline: 6px;
        inset-block-end: 6px;
    }

    .bee1-ulg-variation-row {
        gap: 4px;
    }
}

@media (max-width: 1100px) {

    .bee1-ulg-shell,
    .bee1-ulg-shell[data-filters-desktop="sidebar"] {
        display: block;
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filter-toggle {
        display: inline-flex !important;
        width: 36px;
        height: 36px;
        min-height: 36px;
        padding: 0;
        border-radius: 999px;
        margin-block-end: 14px;
        background: #111;
        color: #fff;
        box-shadow: 0 8px 22px rgba(0, 0, 0, 0.16);
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filter-toggle__text {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }

    .bee1-ulg-slider__controls--floating {
        display: flex;
        inset-block-start: -42px;
        inset-inline: auto auto;
        left: 0;
        z-index: 8;
    }

    .bee1-ulg-slider__controls--floating .bee1-ulg-slider__nav {
        width: 34px;
        height: 34px;
        background: rgba(255, 255, 255, 0.94);
        box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18);
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filter-close {
        z-index: 2;
        display: inline-flex !important;
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filters-panel {
        display: block !important;
        position: fixed !important;
        inset-block: 0;
        inset-inline-start: 0;
        z-index: 100002;
        width: min(88vw, 360px);
        max-width: calc(100vw - 32px);
        padding: 54px 18px 24px;
        overflow: auto;
        transform: translateX(-104%);
        transition: transform 180ms ease;
    }

    [dir="rtl"] .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filters-panel {
        transform: translateX(104%);
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"].is-filters-open .bee1-ulg-filters-panel {
        transform: translateX(0) !important;
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"].is-filters-open .bee1-ulg-filter-backdrop {
        display: block;
    }

    .bee1-ulg-shell[data-filters-mobile="none"] .bee1-ulg-filter-toggle,
    .bee1-ulg-shell[data-filters-mobile="none"] .bee1-ulg-filters-panel {
        display: none !important;
    }
}

@media (min-width: 641px) and (max-width: 1100px) {
    .bee1-ulg-grid {
        grid-template-columns: repeat(var(--bee1-ulg-cols-tablet, 3), minmax(0, 1fr));
        gap: var(--bee1-ulg-row-gap-tablet, 24px) var(--bee1-ulg-column-gap-tablet, 18px);
    }

    .bee1-ulg-slider__track {
        gap: var(--bee1-ulg-column-gap-tablet, 18px);
    }

    .bee1-ulg-slider__track .bee1-ulg-card {
        flex-basis: calc((100% - var(--bee1-ulg-slider-tablet-gap-total, 36px)) / var(--bee1-ulg-cols-tablet, 3));
    }
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] {
    width: min(100%, 1880px);
    margin-inline: auto;
    color: #24134d;
}

@supports selector(.woocommerce:has(.bee1-ulg-wrap)) {
    .woocommerce:has(.bee1-ulg-wrap[data-template-preset="cosmetics"]) {
        width: min(100% - 28px, 1880px);
        max-width: none;
        margin-inline: auto;
    }
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell {
    gap: 18px;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell[data-filters-desktop="sidebar"] {
    grid-template-columns: minmax(300px, 360px) minmax(0, 1fr);
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-filters-panel {
    border: 1px solid #ded7ef;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(36, 19, 77, 0.08);
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-filters-inner {
    padding: 16px 18px;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-filter {
    margin-bottom: 18px;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-filter:last-child {
    margin-bottom: 0;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-filter__title {
    color: #24134d;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-filter__item a {
    min-height: 30px;
    color: #24134d;
    font-size: 14px;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-count,
.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-swatch-label {
    color: #746b8f;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card {
    overflow: hidden;
    border: 1px solid #e7e1f2;
    border-radius: 8px;
    background: var(--bee1-ulg-card-bg, #fff);
    box-shadow: 0 8px 22px rgba(36, 19, 77, 0.06);
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__media {
    aspect-ratio: var(--bee1-ulg-image-ratio, 5 / 4) !important;
    margin: 0;
    min-height: 0;
    background: var(--bee1-ulg-card-media-bg, #fff);
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__media img {
    padding: 10px 12px 6px;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__body {
    gap: 5px;
    min-height: 112px;
    padding: 8px 12px 12px;
    background: var(--bee1-ulg-card-body-bg, #fff);
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__title {
    min-height: 36px;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__price {
    min-height: 24px;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__price del {
    margin-inline-start: 6px;
    color: #746b8f;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__actions {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    padding-block-start: 2px;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__actions .button,
.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-cart {
    box-sizing: border-box !important;
    display: flex !important;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 36px;
    height: auto;
    margin: 0 !important;
    padding: 7px 8px;
    border-radius: 6px;
    background: #5f1db2;
    color: #fff !important;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.12;
    gap: 7px;
    text-indent: 0 !important;
    white-space: normal;
    overflow-wrap: anywhere;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__actions .button::before,
.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-cart::before {
    content: "";
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    background: transparent url("data:image/svg+xml,%3Csvg xmlns='http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3Cpath d='M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57L21.9 7H5.12'/%3E%3C/svg%3E") center / contain no-repeat;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__actions .button:hover,
.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__actions .button:focus-visible,
.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-cart:hover,
.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-cart:focus-visible {
    background: #4b148f;
    outline: 0;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-badges {
    inset-block-start: 10px;
    inset-inline-start: 10px;
    gap: 5px;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-badge {
    min-height: 24px;
    border-radius: 6px;
    padding: 4px 8px;
    box-shadow: 0 5px 12px rgba(36, 19, 77, 0.12);
    text-transform: none;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-badges .bee1-custom-badges-container {
    max-width: min(138px, calc(100vw - 54px));
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-badges .bee1-custom-badges-container .bee1-badge,
.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-badges .bee1-custom-badges-container .custom-badge {
    min-height: 24px !important;
    border-radius: 6px !important;
    padding: 4px 8px !important;
    box-shadow: 0 5px 12px rgba(36, 19, 77, 0.12);
}

@media (max-width: 640px) {
    .bee1-ulg-badges {
        inset-block-start: 8px;
        inset-inline-start: 8px;
        gap: 4px;
        max-width: calc(100% - 50px);
    }

    .bee1-ulg-badge,
    .bee1-ulg-badges .bee1-custom-badges-container .bee1-badge,
    .bee1-ulg-badges .bee1-custom-badges-container .custom-badge {
        min-height: 21px !important;
        padding: 3px 6px !important;
        /* Keep mobile badges on the same settings scale (slight compress only). */
        font-size: max(10px, calc(var(--bee1-ulg-sale-badge-size, 12px) * 0.92)) !important;
        line-height: 1.12 !important;
    }

    .bee1-ulg-badge--new,
    .bee1-ulg-badges .bee1-custom-badges-container .bee1-ulg-badge--new {
        font-size: max(10px, calc(var(--bee1-ulg-new-badge-size, 12px) * 0.92)) !important;
    }

    .bee1-ulg-badge--stock,
    .bee1-ulg-badges .bee1-custom-badges-container .bee1-ulg-badge--stock {
        font-size: max(10px, calc(var(--bee1-ulg-stock-badge-size, 12px) * 0.92)) !important;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-badges {
        inset-block-start: 8px;
        inset-inline-start: 8px;
        max-width: calc(100% - 50px);
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-badges .bee1-custom-badges-container {
        max-width: min(112px, calc(100% - 4px));
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-grid {
        gap: 12px 10px;
        padding-inline: 0;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__media img {
        padding: 8px 8px 4px;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__body {
        padding: 7px 8px 10px;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__actions .button,
    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-cart {
        min-height: 36px;
        padding-inline: 6px;
        font-size: 14px;
        line-height: 1.1;
    }
}

@media (max-width: 767px) {
    .bee1-ulg-wrap[data-template-preset="cosmetics"] {
        box-sizing: border-box;
        width: 100%;
        max-width: 100%;
        margin-inline: 0;
        padding-inline: 10px;
        overflow-x: clip;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell,
    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-grid {
        box-sizing: border-box;
        width: 100%;
        max-width: 100%;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-grid {
        grid-template-columns: repeat(var(--bee1-ulg-cols-mobile, 2), minmax(0, 1fr));
        padding-inline: 0;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filter-toggle {
        width: 52px;
        min-width: 52px;
        height: 52px;
        min-height: 52px;
        margin-block: 0 18px;
        margin-inline-start: 0;
        padding: 0;
        gap: 0;
        border: 1px solid rgba(76, 7, 136, 0.18);
        border-radius: 14px;
        background: linear-gradient(180deg, #fff 0%, #fbf8ff 100%);
        color: #4c0788;
        box-shadow: 0 10px 24px rgba(31, 18, 70, 0.12);
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filter-toggle:hover,
    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filter-toggle:focus-visible,
    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filter-toggle[aria-expanded="true"] {
        border-color: transparent;
        background: linear-gradient(180deg, #8f44e8 0%, #5f1db2 100%);
        color: #fff;
        outline: 0;
        box-shadow: 0 12px 28px rgba(95, 29, 178, 0.22);
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell[data-filters-mobile="drawer"] .bee1-ulg-filter-toggle__icon {
        width: 24px;
        height: 24px;
    }
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__price {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
    direction: rtl;
    unicode-bidi: isolate;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__price del,
.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__price ins {
    display: inline-flex;
    align-items: baseline;
    margin: 0;
    line-height: 1;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__price ins {
    text-decoration: none;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-badge--discount,
.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-badges .bee1-custom-badges-container .bee1-badge,
.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-badges .bee1-custom-badges-container .custom-badge {
    white-space: nowrap !important;
    word-break: keep-all;
    overflow-wrap: normal;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-badge--discount {
    min-width: 42px;
    justify-content: center;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-wishlist {
    top: 10px !important;
    left: 10px !important;
    right: auto !important;
    z-index: 7;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-wishlist .woosw-btn,
.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-wishlist .bee1-wl-btn,
.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-wishlist .wlfmc-add-button a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    padding: 0 !important;
    border: 1px solid #e7e1f2 !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.94) !important;
    color: #5f1db2 !important;
    box-shadow: 0 6px 16px rgba(36, 19, 77, 0.13);
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-wishlist .bee1-wl-text {
    display: none !important;
}

.bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-wishlist .bee1-wl-icon {
    width: 18px;
    height: 18px;
}

@media (min-width: 1025px) {
    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell,
    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell[data-filters-desktop="sidebar"] {
        display: grid;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell[data-filters-desktop="sidebar"] .bee1-ulg-filter-toggle,
    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell[data-filters-desktop="sidebar"] .bee1-ulg-filter-close {
        display: none !important;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell[data-filters-desktop="sidebar"] .bee1-ulg-filters-panel {
        display: block !important;
        position: sticky !important;
        top: 92px;
        width: auto;
        max-width: none;
        padding: 0;
        /* Sticky here too, so the same bound as the generic sticky rule: a panel taller
           than the viewport otherwise traps scrolling (cosmetixe, 354 brands). */
        max-height: calc(100vh - 108px);
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
        scrollbar-width: none;
        transform: none !important;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
}

@media (min-width: 1025px) and (max-width: 1366px) {
    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-shell[data-filters-desktop="sidebar"] {
        grid-template-columns: minmax(270px, 320px) minmax(0, 1fr);
        gap: 14px;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-grid {
        gap: 14px 12px;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__media img {
        padding: 12px 12px 6px;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__body {
        min-height: 106px;
        padding: 7px 9px 10px;
    }

    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-card__actions .button,
    .bee1-ulg-wrap[data-template-preset="cosmetics"] .bee1-ulg-cart {
        min-height: 32px;
        padding-inline: 8px;
        font-size: 14px;
    }
}

/* Bee1 2026-07-05 (0.2.81): inline quick-add error notice — never fail an add silently
   (Cart Integrity Playbook rule #5). Mirrors bee1-spe-cart-error. */
.bee1-ulg-market-cart .bee1-ulg-cart-error {
    margin-top: 8px;
    padding: 8px 12px;
    background: #fdecea;
    border: 1px solid #e53935;
    border-inline-start: 4px solid #e53935;
    color: #7f1d1d;
    border-radius: 6px;
    font-size: 14px;
    line-height: 1.45;
    direction: rtl;
    text-align: right;
    font-weight: 600;
}

/* ------------------------------------------------------------------
   Mosaic (featured 2x2) grid mode
   [bee1_loop_grid mosaic="1" mosaic_every="5"]
   Every Nth card spans 2 columns x 2 rows on desktop widths (>1024px).
   Tablet and mobile grids stay uniform (reference: bilbischool short-
   shirts archive, where the 2x2 card exists only on desktop).
   REST infinite-scroll fragments append into the same .bee1-ulg-grid,
   so the nth-child rhythm continues across loaded pages untouched.
------------------------------------------------------------------- */
@media (min-width: 1025px) {
    .bee1-ulg-grid--mosaic {
        grid-auto-flow: dense;
        align-items: stretch;
    }

    .bee1-ulg-grid--mosaic > .bee1-ulg-card {
        display: flex;
        flex-direction: column;
        height: 100%;
    }

    .bee1-ulg-grid--mosaic > .bee1-ulg-card > .bee1-ulg-card__body {
        flex: 0 0 auto;
    }

    /* הפריט המודגש מתחלף צד: מחזור כפול (2N) — הראשון בקצה אחד של הגריד,
       השני בקצה השני. קווים שליליים (-3 = שתי העמודות האחרונות) עובדים בכל
       מספר עמודות וגם ב-RTL. תואם למקור: "3 / span 2" ואז "1 / span 2". */
    .bee1-ulg-grid--mosaic-3 > .bee1-ulg-card:nth-child(6n+3),
    .bee1-ulg-grid--mosaic-4 > .bee1-ulg-card:nth-child(8n+4),
    .bee1-ulg-grid--mosaic-5 > .bee1-ulg-card:nth-child(10n+5),
    .bee1-ulg-grid--mosaic-6 > .bee1-ulg-card:nth-child(12n+6),
    .bee1-ulg-grid--mosaic-7 > .bee1-ulg-card:nth-child(14n+7),
    .bee1-ulg-grid--mosaic-8 > .bee1-ulg-card:nth-child(16n+8),
    .bee1-ulg-grid--mosaic-9 > .bee1-ulg-card:nth-child(18n+9),
    .bee1-ulg-grid--mosaic-10 > .bee1-ulg-card:nth-child(20n+10) {
        grid-column: -3 / span 2;
        grid-row: span 2;
    }

    .bee1-ulg-grid--mosaic-3 > .bee1-ulg-card:nth-child(6n),
    .bee1-ulg-grid--mosaic-4 > .bee1-ulg-card:nth-child(8n),
    .bee1-ulg-grid--mosaic-5 > .bee1-ulg-card:nth-child(10n),
    .bee1-ulg-grid--mosaic-6 > .bee1-ulg-card:nth-child(12n),
    .bee1-ulg-grid--mosaic-7 > .bee1-ulg-card:nth-child(14n),
    .bee1-ulg-grid--mosaic-8 > .bee1-ulg-card:nth-child(16n),
    .bee1-ulg-grid--mosaic-9 > .bee1-ulg-card:nth-child(18n),
    .bee1-ulg-grid--mosaic-10 > .bee1-ulg-card:nth-child(20n) {
        grid-column: 1 / span 2;
        grid-row: span 2;
    }

    .bee1-ulg-grid--mosaic-3 > .bee1-ulg-card:nth-child(3n) .bee1-ulg-card__media,
    .bee1-ulg-grid--mosaic-4 > .bee1-ulg-card:nth-child(4n) .bee1-ulg-card__media,
    .bee1-ulg-grid--mosaic-5 > .bee1-ulg-card:nth-child(5n) .bee1-ulg-card__media,
    .bee1-ulg-grid--mosaic-6 > .bee1-ulg-card:nth-child(6n) .bee1-ulg-card__media,
    .bee1-ulg-grid--mosaic-7 > .bee1-ulg-card:nth-child(7n) .bee1-ulg-card__media,
    .bee1-ulg-grid--mosaic-8 > .bee1-ulg-card:nth-child(8n) .bee1-ulg-card__media,
    .bee1-ulg-grid--mosaic-9 > .bee1-ulg-card:nth-child(9n) .bee1-ulg-card__media,
    .bee1-ulg-grid--mosaic-10 > .bee1-ulg-card:nth-child(10n) .bee1-ulg-card__media {
        aspect-ratio: auto !important;
        flex: 1 1 auto;
        min-height: 0;
    }

    .bee1-ulg-grid--mosaic-3 > .bee1-ulg-card:nth-child(3n) .bee1-ulg-card__media img,
    .bee1-ulg-grid--mosaic-4 > .bee1-ulg-card:nth-child(4n) .bee1-ulg-card__media img,
    .bee1-ulg-grid--mosaic-5 > .bee1-ulg-card:nth-child(5n) .bee1-ulg-card__media img,
    .bee1-ulg-grid--mosaic-6 > .bee1-ulg-card:nth-child(6n) .bee1-ulg-card__media img,
    .bee1-ulg-grid--mosaic-7 > .bee1-ulg-card:nth-child(7n) .bee1-ulg-card__media img,
    .bee1-ulg-grid--mosaic-8 > .bee1-ulg-card:nth-child(8n) .bee1-ulg-card__media img,
    .bee1-ulg-grid--mosaic-9 > .bee1-ulg-card:nth-child(9n) .bee1-ulg-card__media img,
    .bee1-ulg-grid--mosaic-10 > .bee1-ulg-card:nth-child(10n) .bee1-ulg-card__media img {
        object-fit: cover;
    }
}

/* ------------------------------------------------------------------
   Term circles strip — [bee1_loop_term_circles taxonomy="vibe" ...]
   Round taxonomy-term images with labels, horizontal scroll-snap,
   vanilla (no JS), RTL-safe. Generic: any taxonomy with an image
   term-meta (vide-img / filter-img / thumbnail_id / _thumbnail_id).
------------------------------------------------------------------- */
.bee1-ulg-term-circles {
    display: flex;
    gap: 22px;
    justify-content: center;
    overflow-x: auto;
    padding: 6px 4px 12px;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.bee1-ulg-term-circles::-webkit-scrollbar {
    display: none;
}

.bee1-ulg-term-circle {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    max-width: 170px;
    text-decoration: none;
    color: inherit;
    scroll-snap-align: center;
}

.bee1-ulg-term-circle__img {
    display: block;
    width: var(--bee1-ulg-term-circle-size, 150px);
    height: var(--bee1-ulg-term-circle-size, 150px);
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    background-color: #f3f3f3;
    transition: transform 0.25s ease;
}

.bee1-ulg-term-circle:hover .bee1-ulg-term-circle__img {
    transform: scale(1.05);
}

.bee1-ulg-term-circle__label {
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    line-height: 1.25;
}

@media (max-width: 640px) {
    .bee1-ulg-term-circles {
        justify-content: flex-start;
        gap: 14px;
    }

    .bee1-ulg-term-circle__img {
        width: var(--bee1-ulg-term-circle-size-mobile, 104px);
        height: var(--bee1-ulg-term-circle-size-mobile, 104px);
    }

    .bee1-ulg-term-circle__label {
        font-size: 14px;
    }
}

/* YITH wishlist heart inside the card (0.2.88) — same round-button look as wlfmc */
.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist {
    margin: 0 !important;
}

.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: #111 !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.14);
    font-size: 16px;
    text-decoration: none !important;
}

.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist a span {
    display: none !important;
}

.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist a:hover,
.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist a:focus-visible {
    background: var(--b1f-accent, #E42D7E) !important;
    color: #fff !important;
    outline: 0;
}

.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist .feedback {
    display: none !important;
}

/* YITH moves the selected heart SVG into .feedback and leaves the browse link
   empty. Keep the text visually hidden, but preserve the filled heart over the
   clickable circle so active/hover states can never become white on white. */
.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist.exists .yith-wcwl-wishlistaddedbrowse {
    position: relative;
    display: grid !important;
    place-items: center !important;
    width: 34px !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
}

.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist.exists .yith-wcwl-wishlistaddedbrowse > a {
    position: absolute;
    inset: 0;
    display: grid !important;
    place-items: center !important;
    margin: 0 !important;
    background: var(--b1f-accent, #E42D7E) !important;
    color: #fff !important;
}

.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist.exists .feedback {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: 0 !important;
    line-height: 0 !important;
    transform: none !important;
    pointer-events: none;
}

.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist.exists .feedback .yith-wcwl-icon-svg {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    transform: translate(-50%, -50%) !important;
    color: #fff !important;
    fill: #fff !important;
}

.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist.exists .feedback .yith-wcwl-icon-svg path {
    color: #fff !important;
    fill: #fff !important;
}

.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist.exists .yith-wcwl-wishlistaddedbrowse:hover > a,
.bee1-ulg-wishlist .yith-wcwl-add-to-wishlist.exists .yith-wcwl-wishlistaddedbrowse:focus-within > a {
    background: #111 !important;
    color: #fff !important;
}

/* 0.2.95 — Bee1 Ultra Theme owns archive width by default. ULG releases the
   theme wrappers only when an explicit plugin-level container/full override is
   selected, so exactly one source controls layout at a time. */
body.bee1-ulg-page:is(.bee1-ulg-layout-container, .bee1-ulg-layout-full) #page,
body.bee1-ulg-page:is(.bee1-ulg-layout-container, .bee1-ulg-layout-full) .content-area,
body.bee1-ulg-page:is(.bee1-ulg-layout-container, .bee1-ulg-layout-full) .site-main,
body.bee1-ulg-page:is(.bee1-ulg-layout-container, .bee1-ulg-layout-full) .inside-article,
body.bee1-ulg-page:is(.bee1-ulg-layout-container, .bee1-ulg-layout-full) .entry-content,
body.bee1-ulg-page:is(.bee1-ulg-layout-container, .bee1-ulg-layout-full) .woocommerce-archive-wrapper {
    max-width: 100% !important;
    width: 100% !important;
    margin-inline: 0 !important;
}

body.bee1-ulg-page:is(.bee1-ulg-layout-container, .bee1-ulg-layout-full) .site-content {
    display: block;
    max-width: 100% !important;
    width: 100% !important;
    margin-inline: 0 !important;
}

/* Full archive mode owns the complete archive canvas. GeneratePress keeps
   block-start and inline content padding after its width wrapper is released;
   that produced a white strip above the hero and made 100vw bands overflow by
   the scrollbar width. ULG's own shell supplies the safe content gutters. */
body.bee1-ulg-page.bee1-ulg-layout-full .site-content {
    padding-block-start: 0 !important;
    padding-inline: 0 !important;
}

body.bee1-ulg-page #right-sidebar,
body.bee1-ulg-page #left-sidebar {
    display: none;
}

/* GeneratePress/Bee1 Ultra keeps the content column at the sidebar layout
   percentage even after the sidebar is hidden. Reclaim that reserved space on
   every ULG-owned archive without changing the theme's outer max-width. */
body.bee1-ulg-page .content-area,
body.bee1-ulg-page .site-main {
    width: 100% !important;
    margin-inline: 0 !important;
}

body.bee1-ulg-page .bee1-ulg-shell.bee1-ulg-layout-theme,
body.bee1-ulg-page .bee1-ulg-wrap.bee1-ulg-layout-theme {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
}

body.bee1-ulg-page.bee1-ulg-layout-full .inside-article {
    padding-inline: 0 !important;
}

/* Side gutter is the `layout_side_padding` setting (default 16px), not a constant. */
body.bee1-ulg-page .bee1-ulg-shell.bee1-ulg-layout-container,
body.bee1-ulg-page .bee1-ulg-wrap.bee1-ulg-layout-container {
    width: min(var(--bee1-ulg-container, 1460px), calc(100% - (var(--bee1-ulg-side-padding, 16px) * 2)));
    margin-inline: auto;
}

body.bee1-ulg-page .bee1-ulg-shell.bee1-ulg-layout-full,
body.bee1-ulg-page .bee1-ulg-wrap.bee1-ulg-layout-full {
    width: calc(100% - (var(--bee1-ulg-side-padding, 16px) * 2));
    max-width: none;
    margin-inline: auto;
}

/*
 * Supermarket slider, small screens: slider cards are narrower than grid cards
 * (~110px pill vs ~142px), so the single-row qty+ATC track squeezed the button
 * to ~24px and clipped its label. Stack the pill inside sliders only: full-width
 * qty row above, full-width ATC button below. Grid cards keep the single row.
 */
@media (max-width: 640px) {
    .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_wrap {
        grid-template-columns: 1fr !important;
        border-radius: 14px !important;
        box-sizing: border-box !important;
    }

    .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_ctrl {
        grid-template-columns: 28px minmax(0, 1fr) 28px !important;
        border-inline-end: 0 !important;
        border-block-end: 1px solid #d7ecea !important;
        border-radius: 14px 14px 0 0 !important;
        min-height: 36px !important;
        box-sizing: border-box !important;
    }

    .bee1-ulg-slider[data-template-preset="supermarket"] .bee1_qty_atc_btn {
        border-radius: 0 0 14px 14px !important;
        min-height: 36px !important;
        padding: 0 8px !important;
        box-sizing: border-box !important;
    }
}

/*
 * Mobile image proportions — settings-driven, no hardcoded ratio.
 *
 * Historic ULG builds forced `aspect-ratio: 2 / 3.15 !important` here, which silently
 * overrode the site's own "Image proportions" setting on phones. The ratio now always
 * comes from --bee1-ulg-image-ratio-mobile, which the plugin resolves server-side from
 * the "Mobile aspect ratio" setting (defaults to the desktop value when left on
 * "Same as desktop"). The [data-template-preset] variants keep this override winning
 * over the preset-scoped ratio rules declared earlier in this stylesheet.
 */
@media (max-width: 640px) {

    .bee1-ulg-wrap .bee1-ulg-card__media,
    .bee1-ulg-slider .bee1-ulg-card__media,
    .bee1-ulg-wrap[data-template-preset] .bee1-ulg-card__media,
    .bee1-ulg-slider[data-template-preset] .bee1-ulg-card__media {
        aspect-ratio: var(--bee1-ulg-image-ratio-mobile, var(--bee1-ulg-image-ratio, 600 / 900)) !important;
    }
}

/*
 * Card hover presentation — settings-driven ("Card hover effect").
 *
 * Every value comes from a custom property emitted by the plugin, so this stylesheet
 * holds no per-effect magic numbers. The defaults below reproduce the "None" preset,
 * which is what cards rendered before this setting existed (and what any cached markup
 * without the new variables still gets). The image is never scaled DOWN on hover.
 */
.bee1-ulg-card {
    transition: transform 220ms cubic-bezier(0.22, 0.61, 0.36, 1),
                box-shadow 220ms cubic-bezier(0.22, 0.61, 0.36, 1);
}

.bee1-ulg-card__img,
.bee1-ulg-card__media img {
    transition: transform 320ms cubic-bezier(0.22, 0.61, 0.36, 1),
                filter 220ms ease;
}

@media (hover: hover) and (pointer: fine) {

    .bee1-ulg-card:hover {
        transform: translateY(var(--bee1-ulg-card-hover-lift, 0));
        box-shadow: var(--bee1-ulg-card-hover-shadow, none);
    }

    .bee1-ulg-card:hover .bee1-ulg-card__img,
    .bee1-ulg-card:hover .bee1-ulg-card__media img,
    .bee1-ulg-card.is-gallery-hovered .bee1-ulg-card__img,
    .bee1-ulg-card.is-gallery-hovered .bee1-ulg-card__media img {
        transform: scale(var(--bee1-ulg-card-hover-scale, 1));
    }

    /* Brightness is skipped on out-of-stock cards so their grayscale treatment survives hover. */
    .bee1-ulg-card:hover:not(.is-out-of-stock) .bee1-ulg-card__img,
    .bee1-ulg-card:hover:not(.is-out-of-stock) .bee1-ulg-card__media img,
    .bee1-ulg-card.is-gallery-hovered:not(.is-out-of-stock) .bee1-ulg-card__img,
    .bee1-ulg-card.is-gallery-hovered:not(.is-out-of-stock) .bee1-ulg-card__media img {
        filter: brightness(var(--bee1-ulg-card-hover-brightness, 1));
    }
}

@media (prefers-reduced-motion: reduce) {

    .bee1-ulg-card,
    .bee1-ulg-card__img,
    .bee1-ulg-card__media img {
        transition: none;
    }

    .bee1-ulg-card:hover {
        transform: none;
    }

    .bee1-ulg-card:hover .bee1-ulg-card__img,
    .bee1-ulg-card:hover .bee1-ulg-card__media img,
    .bee1-ulg-card.is-gallery-hovered .bee1-ulg-card__img,
    .bee1-ulg-card.is-gallery-hovered .bee1-ulg-card__media img {
        transform: none;
    }
}

/*
 * Inline discount chip inside the price row ("Discount next to the price" setting).
 * Sized in `em` so it follows whatever price size is configured — including the
 * mobile price size — instead of carrying its own hardcoded px value.
 */
.bee1-ulg-card__discount {
    /* `order: -1` puts the chip BEFORE the prices in the flex row. The row is forced
       `direction: ltr` so both prices align, which would otherwise push the chip to
       the right — on a Hebrew storefront it belongs on the left of the prices. */
    /* DEFAULT ("inline" placement): the chip stays in the flex flow and `order: -1`
       puts it before the prices — the row is forced `direction: ltr` so both prices
       align, which makes that the left side, where it belongs on a Hebrew storefront.
       Staying in flow is what guarantees it can never sit on top of the prices: an
       absolutely positioned chip reserves no width, so on narrow multi-column cards
       the centred prices ran underneath it. */
    order: -1;
    flex: 0 0 auto;
    margin-inline-end: var(--bee1-ulg-inline-discount-gap, 6px);
    display: inline-flex;
    align-items: baseline;
    /* Required for the narrow-card `flex-basis: 100%` below: without it the chip's own
       padding is added ON TOP of the full row width and the row overflows. */
    box-sizing: border-box;
    /* Real spacing between the percent and the amount, instead of a separator glyph
       that read badly next to the minus signs. */
    gap: 0.55em;
    font-size: max(14px, 0.72em);
    font-weight: 700;
    line-height: 1;
    padding: 0.24em 0.5em;
    border-radius: 999px;
    white-space: nowrap;
    /* Dedicated chip colours; the plugin resolves them to the sale-price colour with a
       soft matching tint when the settings are left empty. */
    color: var(--bee1-ulg-inline-discount-color, var(--bee1-ulg-sale-price-color, #e53935));
    background: rgba(229, 57, 53, 0.1);
    background: var(--bee1-ulg-inline-discount-bg, color-mix(in srgb, var(--bee1-ulg-sale-price-color, #e53935) 12%, transparent));
}

.bee1-ulg-card__discount-part {
    white-space: nowrap;
}

/*
 * Optional attention pulse ("Attention pulse" setting): a slow wink every few
 * seconds rather than a constant animation, so it catches the eye without turning
 * the grid into a flashing wall. Off unless the setting is enabled.
 */
.bee1-ulg-card__discount--pulse {
    animation: bee1-ulg-discount-wink 4.5s ease-in-out infinite;
    will-change: transform;
}

/* In-flow chip: plain scale. The glow is mixed from the chip's own colour, so it
   follows the Chip color setting instead of staying red. */
@keyframes bee1-ulg-discount-wink {

    0%,
    82%,
    100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 transparent;
    }

    87% {
        transform: scale(1.11);
        box-shadow: 0 0 0 0.28em color-mix(in srgb, currentColor 20%, transparent);
    }

    93% {
        transform: scale(0.985);
        box-shadow: 0 0 0 0.45em transparent;
    }
}

/* Corner placement is vertically centred with translateY(-50%), so every frame has to
   carry it — a bare scale() would drop the chip to the baseline mid-animation. */
.bee1-ulg-card__price--chip-corner .bee1-ulg-card__discount--pulse {
    animation-name: bee1-ulg-discount-wink-corner;
}

@keyframes bee1-ulg-discount-wink-corner {

    0%,
    82%,
    100% {
        transform: translateY(-50%) scale(1);
        box-shadow: 0 0 0 0 transparent;
    }

    87% {
        transform: translateY(-50%) scale(1.11);
        box-shadow: 0 0 0 0.28em color-mix(in srgb, currentColor 20%, transparent);
    }

    93% {
        transform: translateY(-50%) scale(0.985);
        box-shadow: 0 0 0 0.45em transparent;
    }
}

@media (prefers-reduced-motion: reduce) {

    .bee1-ulg-card__discount--pulse {
        animation: none;
    }
}

/*
 * The gap between the struck and the sale price is settings-driven ("Space between
 * the two prices"). The default `0.35em` is what the row used before the setting.
 */
.bee1-ulg-wrap .bee1-ulg-card__price,
.bee1-ulg-slider .bee1-ulg-card__price {
    position: relative !important;
    gap: var(--bee1-ulg-price-gap, 0.35em) !important;
    /* Allow the chip to drop to its own line instead of forcing the row to overflow
       and clip. The two prices still sit together — see the container query below. */
    flex-wrap: wrap !important;
    row-gap: 3px !important;
}

/*
 * "corner" placement: the chip is pinned to the card edge so the two prices centre
 * against the full card width. The row reserves that width as SYMMETRIC padding —
 * symmetric so the prices stay centred on the card, and reserved so they can never
 * run underneath the chip. The narrow-card container query BELOW undoes this, so
 * these rules must stay ABOVE it: both have the same specificity and importance, so
 * source order decides the winner.
 */
.bee1-ulg-wrap .bee1-ulg-card__price--chip-corner,
.bee1-ulg-slider .bee1-ulg-card__price--chip-corner {
    padding-inline: var(--bee1-ulg-inline-discount-reserve, 90px) !important;
}

.bee1-ulg-card__price--chip-corner .bee1-ulg-card__discount {
    position: absolute;
    inset-inline-start: var(--bee1-ulg-inline-discount-gap, 6px);
    top: 50%;
    transform: translateY(-50%);
    margin-inline-end: 0;
}

/*
 * Narrow cards (multi-column desktop archives, ~209px) cannot fit the chip and both
 * prices on one line. The card body is a size container, so the chip takes a full
 * line of its own once the card gets tight — the struck and sale prices stay
 * together, which is what matters. Wider cards keep everything on one row.
 */
.bee1-ulg-card__body {
    container-type: inline-size;
}

@container (max-width: 280px) {

    /* Must repeat the wrap/slider ancestor: the base rule above is `.bee1-ulg-wrap
       .bee1-ulg-card__price { gap: … !important }`, and a bare `.bee1-ulg-card__price`
       here loses the specificity contest even inside the container query. */
    .bee1-ulg-wrap .bee1-ulg-card__price,
    .bee1-ulg-slider .bee1-ulg-card__price {
        gap: 0.28em !important;
    }

    .bee1-ulg-card__discount {
        flex-basis: 100% !important;
        justify-content: center !important;
        margin-inline-end: 0 !important;
    }

    /* Corner placement cannot survive here: its reserved padding is wider than the
       whole row on a narrow card, which would leave the prices no space at all. Fall
       back to the in-flow line, and restore the non-translated wink keyframes. */
    .bee1-ulg-wrap .bee1-ulg-card__price--chip-corner,
    .bee1-ulg-slider .bee1-ulg-card__price--chip-corner {
        padding-inline: 0 !important;
    }

    .bee1-ulg-card__price--chip-corner .bee1-ulg-card__discount {
        position: static;
        inset-inline-start: auto;
        top: auto;
        transform: none;
    }

    .bee1-ulg-card__price--chip-corner .bee1-ulg-card__discount--pulse {
        animation-name: bee1-ulg-discount-wink;
    }
}

/*
 * Keep the floating filter button tappable while the drawer is open, so the same
 * button that opens the filters also closes them.
 *
 * Raising z-index on the button alone does NOT work: its parent `.bee1-ulg-toolbar`
 * is `position: relative; z-index: 3`, which creates a stacking context — the
 * button's z-index is then resolved inside that context, which as a whole sits far
 * below the drawer panel (100002). The toolbar itself has to be lifted.
 *
 * The rest of the toolbar is hidden (visibility, so layout is unchanged) because the
 * drawer is modal: without this, the sorting control would float over the backdrop.
 */
@media (max-width: 640px) {
    .bee1-ulg-shell[data-filters-mobile="drawer"].is-filters-open .bee1-ulg-toolbar {
        z-index: 100003;
        /* 0.2.181: the lifted toolbar box itself swallowed taps on drawer rows beneath it
           (its other children are only visibility:hidden). Only the toggle takes pointer input. */
        pointer-events: none;
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"].is-filters-open .bee1-ulg-toolbar .bee1-ulg-filter-toggle {
        pointer-events: auto;
    }

    .bee1-ulg-shell[data-filters-mobile="drawer"].is-filters-open .bee1-ulg-toolbar > *:not(.bee1-ulg-filter-toggle) {
        visibility: hidden;
    }

    /* 0.2.180: the button would land inside the drawer (in-flow toolbar low on the page) and cover
       filter rows; the × and backdrop close it. Set by markToggleOverlap() in the JS. */
    .bee1-ulg-shell[data-filters-mobile="drawer"].is-filters-open.is-toggle-over-panel .bee1-ulg-toolbar .bee1-ulg-filter-toggle {
        visibility: hidden;
    }
}

/* 0.2.175 — setting "Phones: name above price". The comax-fashion / yn-icons card puts name and price on one
   row and cuts the name to one line ("אוברול ער..."); on a 2-column phone grid that hides what the product is. */
@media (max-width: 767px) {
    .bee1-ulg-meta-stack .bee1-ulg-card__body {
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        gap: 3px !important;
    }
    .bee1-ulg-meta-stack .bee1-ulg-card__title {
        width: 100%;
        white-space: normal !important;
        text-overflow: clip !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
    }
    /* the price box is LTR (numbers); size it to its content and pin it to the row's start (right in RTL)
       in both card bodies: the preset's flex column and the default grid */
    .bee1-ulg-meta-stack .bee1-ulg-card__price {
        width: auto !important;
        justify-self: start !important;
        align-self: flex-start !important;
    }
}

/* 0.2.175 — full-width mode on a WordPress page (the sale page override): release GeneratePress' page padding
   on <main> too, so the grid gets the same gutters as a category page. */
body.bee1-ulg-page.bee1-ulg-layout-full .site-main {
    padding-inline: 0 !important;
}
