.elementor-31743 .elementor-element.elementor-element-45828835{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31743 .elementor-element.elementor-element-6696e484{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31743 .elementor-element.elementor-element-76971d06{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-31743 .elementor-element.elementor-element-5eeee720{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-jet-smart-filters-checkboxes .jet-filter-items-moreless__toggle{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-jet-smart-filters-checkboxes .apply-filters__button, .elementor-widget-jet-smart-filters-checkboxes .jet-filter-items-dropdown__apply-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-31743 .elementor-element.elementor-element-3da2ffcc .jet-checkboxes-list__row{display:block;margin-right:calc(5px/2);margin-left:calc(5px/2);padding-top:calc(10px/2);margin-bottom:calc(10px/2);}.elementor-31743 .elementor-element.elementor-element-3da2ffcc .jet-list-tree__children{display:block;margin-right:calc(5px/2);margin-left:calc(5px/2);padding-left:10px;}.elementor-31743 .elementor-element.elementor-element-3da2ffcc .jet-checkboxes-list-wrapper{margin-left:calc(-5px/2);margin-right:calc(-5px/2);margin-top:calc(-10px/2);margin-bottom:calc(-10px/2);}.elementor-31743 .elementor-element.elementor-element-3da2ffcc .jet-checkboxes-list__decorator{width:16px;height:16px;min-width:16px;min-height:16px;margin-right:5px;}.rtl .elementor-31743 .elementor-element.elementor-element-3da2ffcc .jet-checkboxes-list__decorator{margin-left:5px;}.elementor-31743 .elementor-element.elementor-element-3da2ffcc .jet-checkboxes-list__checked-icon{font-size:12px;}.elementor-31743 .elementor-element.elementor-element-3da2ffcc .jet-collapse-icon{width:20px;height:20px;}.elementor-31743 .elementor-element.elementor-element-3da2ffcc .jet-collapse-none{width:20px;height:20px;}.elementor-31743 .elementor-element.elementor-element-3da2ffcc .jet-filters-counter{margin-left:initial;padding-left:5px;}.rtl .elementor-31743 .elementor-element.elementor-element-3da2ffcc .jet-filters-counter{margin-right:initial;padding-right:5px;}.elementor-31743 .elementor-element.elementor-element-3da2ffcc .jet-filter+.jet-filter{margin-top:10px;}.elementor-31743 .elementor-element.elementor-element-3da2ffcc .jet-select[data-hierarchical="1"] + .jet-select[data-hierarchical="1"]{margin-top:10px;}.elementor-widget-jet-smart-filters-range .apply-filters__button, .elementor-widget-jet-smart-filters-range .jet-filter-items-dropdown__apply-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-31743 .elementor-element.elementor-element-27ba1fc0 .jet-range__slider__track{height:4px;}.elementor-31743 .elementor-element.elementor-element-27ba1fc0 .jet-range__slider__input::-webkit-slider-thumb{width:16px;height:16px;}.elementor-31743 .elementor-element.elementor-element-27ba1fc0 .jet-range__slider__input::-moz-range-thumb{width:16px;height:16px;}.elementor-31743 .elementor-element.elementor-element-27ba1fc0 .jet-range__slider__input::-ms-thumb{width:16px;height:16px;}.elementor-31743 .elementor-element.elementor-element-27ba1fc0 .jet-range__slider__input{height:16px;}.elementor-31743 .elementor-element.elementor-element-27ba1fc0 .jet-range__values{text-align:center;}.elementor-31743 .elementor-element.elementor-element-27ba1fc0 .jet-range__inputs__container{margin-left:auto;margin-right:auto;}.elementor-31743 .elementor-element.elementor-element-27ba1fc0 .jet-filters-group .jet-filter{width:100%;max-width:100%;}.elementor-31743 .elementor-element.elementor-element-27ba1fc0 .jet-filters-group .jet-filter+.jet-filter{margin-top:10px;}.elementor-31743 .elementor-element.elementor-element-27ba1fc0 .jet-select[data-hierarchical="1"] + .jet-select[data-hierarchical="1"]{margin-top:10px;}.elementor-31743 .elementor-element.elementor-element-35367593{--display:flex;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.products-heading-show .related-products > h2, .elementor-widget-woocommerce-products.products-heading-show .upsells > h2, .elementor-widget-woocommerce-products.products-heading-show .cross-sells > h2{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price del {font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-31743 .elementor-element.elementor-element-3eda8f9.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-31743 .elementor-element.elementor-element-3eda8f9.elementor-wc-products ul.products li.product span.onsale{display:block;}.elementor-31743 .elementor-element.elementor-element-177bf54a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-31743 .elementor-element.elementor-element-76971d06{--content-width:1400px;}.elementor-31743 .elementor-element.elementor-element-5eeee720{--width:260px;}}@media(max-width:1024px){.elementor-31743 .elementor-element.elementor-element-3eda8f9.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}@media(max-width:767px){.elementor-31743 .elementor-element.elementor-element-3eda8f9.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}/* Start custom CSS *//* ═══════════════════════════════════════════════════
   EXCELSIOR — Archive Polish
   ═══════════════════════════════════════════════════ */


/* ────────────────────────────────────────────────
   1. TOOLBAR — result count + sort dropdown
   ──────────────────────────────────────────────── */
.woocommerce-result-count {
    margin: 0 0 24px !important;
    padding: 12px 0 !important;
    font-family: var(--exc-sans) !important;
    font-size: 13px !important;
    color: var(--exc-muted) !important;
}

.woocommerce-ordering {
    margin: 0 0 24px !important;
    float: right !important;
}
.woocommerce-ordering select,
.woocommerce-ordering .orderby,
form.woocommerce-ordering select {
    padding: 10px 36px 10px 16px !important;
    background: var(--exc-white) !important;
    border: 1px solid var(--exc-border) !important;
    border-radius: var(--exc-radius-md) !important;
    font-family: var(--exc-sans) !important;
    font-size: 13px !important;
    color: var(--exc-ink) !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238f2997' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 14px !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}
.woocommerce-ordering select:focus,
form.woocommerce-ordering select:focus {
    outline: none !important;
    border-color: var(--exc-purple) !important;
    box-shadow: 0 0 0 2px var(--exc-purple-soft) !important;
}


/* ────────────────────────────────────────────────
   2. PRODUCT CARD — base structure + border (matches search results)
   ──────────────────────────────────────────────── */
.woocommerce ul.products li.product,
ul.products li.product {
    padding-bottom: 0 !important;
    text-align: center !important;                 /* centres the inline-block add-to-basket button */
    background: var(--exc-white) !important;
    border: 1px solid var(--exc-border) !important;
    border-radius: var(--exc-radius-md) !important;
    box-shadow: var(--exc-shadow-sm) !important;
    overflow: hidden !important;
    transition: box-shadow 0.2s ease, transform 0.2s ease !important;
}
.woocommerce ul.products li.product:hover,
ul.products li.product:hover {
    box-shadow: var(--exc-shadow-md) !important;
    transform: translateY(-2px) !important;
}

.woocommerce ul.products li.product > a:first-child,
ul.products li.product > a.woocommerce-LoopProduct-link {
    display: block !important;
    padding: 16px 16px 0 !important;
}


/* ────────────────────────────────────────────────
   3. IMAGES — uniform square box, contain (no cropping)
   ──────────────────────────────────────────────── */
.woocommerce ul.products li.product img,
.woocommerce ul.products li.product a img,
ul.products li.product img,
ul.products li.product img.attachment-woocommerce_thumbnail,
ul.products li.product img.wp-post-image {
    display: block !important;
    width: 100% !important;
    height: 240px !important;
    max-height: 240px !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    object-position: center !important;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--exc-off-white) !important;
    border-radius: var(--exc-radius-sm) !important;
}


/* ────────────────────────────────────────────────
   4. TITLE — fixed height keeps everything below aligned
   ──────────────────────────────────────────────── */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3 {
    height: 60px !important;
    padding: 14px 16px 6px !important;
    margin: 0 !important;
    font-family: var(--exc-sans) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    color: var(--exc-ink) !important;
    text-align: center !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}


/* ────────────────────────────────────────────────
   5. STOCK PILL — centred, breathing room before price
   ──────────────────────────────────────────────── */
.woocommerce ul.products li.product .stock,
ul.products li.product .stock {
    display: block !important;
    width: fit-content !important;
    align-self: center !important;
    margin: 4px auto 14px !important;
    padding: 4px 12px !important;
    font-family: var(--exc-sans) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    line-height: 1.4 !important;
    border-radius: 999px !important;
    text-align: center !important;
}
.woocommerce ul.products li.product .stock.in-stock,
ul.products li.product .stock.in-stock {
    background: rgba(46, 139, 87, 0.10) !important;
    color: #2e8b57 !important;
}
.woocommerce ul.products li.product .stock.out-of-stock,
ul.products li.product .stock.out-of-stock {
    background: rgba(192, 57, 43, 0.10) !important;
    color: rgba(192, 57, 43, 0.95) !important;
}


/* ────────────────────────────────────────────────
   6. PRICE — centred, sits below stock with proper gap
   ──────────────────────────────────────────────── */
.woocommerce ul.products li.product .price,
ul.products li.product .price {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 16px 16px !important;
    font-family: var(--exc-sans) !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: var(--exc-purple) !important;
    text-align: center !important;
}
.woocommerce ul.products li.product .price del,
ul.products li.product .price del {
    color: var(--exc-muted) !important;
    opacity: 0.7 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    margin-right: 6px !important;
}
.woocommerce ul.products li.product .price ins,
ul.products li.product .price ins {
    background: transparent !important;
    color: var(--exc-purple) !important;
    text-decoration: none !important;
    font-weight: 700 !important;
}


/* ────────────────────────────────────────────────
   7. HIDE — SKU and quantity inputs on cards
   ──────────────────────────────────────────────── */
.woocommerce ul.products li.product .sku_wrapper,
.woocommerce ul.products li.product .sku,
.woocommerce ul.products li.product .product-sku,
ul.products li.product .sku_wrapper,
ul.products li.product .sku,
ul.products li.product .product-sku,
.woocommerce ul.products li.product form.cart .quantity {
    display: none !important;
}


/* ────────────────────────────────────────────────
   8. ADD TO CART — compact, centred, off the card border
   ──────────────────────────────────────────────── */
.woocommerce ul.products li.product form.cart {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    align-self: center !important;
    width: 100% !important;
    margin: auto 0 16px !important;
}

.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product a.add_to_cart_button,
.woocommerce ul.products li.product form.cart button.button {
    display: inline-block !important;
    width: auto !important;
    max-width: calc(100% - 32px) !important;   /* never reaches the side borders */
    margin: 0 0 16px !important;                /* 16px gap above the bottom border; centred via card text-align */
    padding: 10px 22px !important;
    background: var(--exc-white) !important;
    color: var(--exc-purple) !important;
    border: 1px solid var(--exc-purple) !important;
    border-radius: var(--exc-radius-md) !important;
    font-family: var(--exc-sans) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    text-align: center !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
    cursor: pointer !important;
    transition: background 0.2s ease, color 0.2s ease !important;
    box-shadow: none !important;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.button:hover,
.woocommerce ul.products li.product a.add_to_cart_button:hover,
.woocommerce ul.products li.product form.cart button.button:hover {
    background: var(--exc-purple) !important;
    color: var(--exc-white) !important;
}


/* ────────────────────────────────────────────────
   8b. GUEST "Sign in to purchase" button — centred, off the card edges
   ──────────────────────────────────────────────── */
body.exc-guest .woocommerce ul.products li.product a.exc-locked-btn,
body.exc-guest ul.products li.product a.exc-locked-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    max-width: calc(100% - 32px) !important;   /* keeps it off the left/right borders */
    margin: 0 auto 16px !important;            /* centred + 16px above the bottom border */
    align-self: center !important;
}


/* ────────────────────────────────────────────────
   9. PAGINATION — rounded buttons
   ──────────────────────────────────────────────── */
.woocommerce nav.woocommerce-pagination {
    margin-top: 48px !important;
    padding-top: 32px !important;
    border-top: 1px solid var(--exc-border) !important;
    text-align: center !important;
}
.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul.page-numbers {
    display: inline-flex !important;
    gap: 6px !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}
.woocommerce nav.woocommerce-pagination ul li {
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce nav.woocommerce-pagination ul li .page-numbers {
    min-width: 40px !important;
    height: 40px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: var(--exc-sans) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--exc-ink) !important;
    background: var(--exc-white) !important;
    border: 1px solid var(--exc-border) !important;
    border-radius: var(--exc-radius-md) !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus {
    border-color: var(--exc-purple) !important;
    color: var(--exc-purple) !important;
    background: var(--exc-white) !important;
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li .page-numbers.current {
    background: var(--exc-purple) !important;
    border-color: var(--exc-purple) !important;
    color: var(--exc-white) !important;
}
.woocommerce nav.woocommerce-pagination ul li span.dots,
.woocommerce nav.woocommerce-pagination ul li .page-numbers.dots {
    background: transparent !important;
    border-color: transparent !important;
    color: var(--exc-muted) !important;
}


/* ═══════════════════════════════════════════════════
   JETSMARTFILTERS — Sidebar
   ═══════════════════════════════════════════════════ */


/* ────────────────────────────────────────────────
   10. Filter widget wrappers — sidebar cards
   ──────────────────────────────────────────────── */
#exc-filter-sidebar .jet-smart-filters-checkboxes,
#exc-filter-sidebar .jet-smart-filters-range,
#exc-filter-sidebar .jet-filter-items-dropdown {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

#exc-filter-sidebar .elementor-widget-jet-smart-filters-checkboxes,
#exc-filter-sidebar .elementor-widget-jet-smart-filters-range {
    background: var(--exc-white) !important;
    border: 1px solid var(--exc-border) !important;
    border-radius: var(--exc-radius-md) !important;
    padding: 18px 20px !important;
    box-shadow: var(--exc-shadow-sm) !important;
}

#exc-filter-sidebar .jet-filter-label {
    display: block !important;
    margin: 0 0 14px !important;
    padding: 0 0 12px !important;
    border-bottom: 1px solid var(--exc-border) !important;
    font-family: var(--exc-sans) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: var(--exc-ink) !important;
    line-height: 1.3 !important;
}


/* ────────────────────────────────────────────────
   11. Checkboxes filter
   ──────────────────────────────────────────────── */
#exc-filter-sidebar .jet-filter-items-scroll,
#exc-filter-sidebar .jet-checkboxes-list-wrapper,
#exc-filter-sidebar .jet-checkboxes-list__wrapper {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    max-height: 280px !important;
    overflow-y: auto !important;
    padding-right: 4px !important;
    margin: 0 !important;
}
#exc-filter-sidebar .jet-checkboxes-list-wrapper::-webkit-scrollbar { width: 4px; }
#exc-filter-sidebar .jet-checkboxes-list-wrapper::-webkit-scrollbar-thumb {
    background: var(--exc-purple-line);
    border-radius: 2px;
}

#exc-filter-sidebar .jet-checkboxes-list__row {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

#exc-filter-sidebar .jet-checkboxes-list__item {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 4px 0 !important;
    cursor: pointer !important;
    background: transparent !important;
    border: none !important;
}

#exc-filter-sidebar .jet-checkboxes-list__input {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    pointer-events: none !important;
}

#exc-filter-sidebar .jet-checkboxes-list__button {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
}

#exc-filter-sidebar .jet-checkboxes-list__decorator {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--exc-white) !important;
    border: 1.5px solid #cfcfcf !important;
    border-radius: 3px !important;
    transition: background 0.15s ease, border-color 0.15s ease !important;
}
#exc-filter-sidebar .jet-checkboxes-list__item:hover .jet-checkboxes-list__decorator {
    border-color: var(--exc-purple) !important;
}

#exc-filter-sidebar .jet-checkboxes-list__checked-icon,
#exc-filter-sidebar .jet-checkboxes-list__checked-icon svg { display: none !important; }

#exc-filter-sidebar .jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__decorator {
    position: relative;
    background: var(--exc-purple) !important;
    border-color: var(--exc-purple) !important;
}
#exc-filter-sidebar .jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__decorator::after {
    content: '';
    position: absolute;
    top: 1px;
    left: 4px;
    width: 4px;
    height: 8px;
    border: solid var(--exc-white);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

#exc-filter-sidebar .jet-checkboxes-list__label {
    flex: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: var(--exc-sans) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: var(--exc-ink) !important;
}

#exc-filter-sidebar .jet-checkboxes-list__decorator-count {
    margin-left: 4px !important;
    font-family: var(--exc-sans) !important;
    font-size: 11px !important;
    color: var(--exc-muted) !important;
}


/* ────────────────────────────────────────────────
   12. Range slider (price filter)
   ──────────────────────────────────────────────── */
#exc-filter-sidebar .jet-range {
    margin: 8px 4px 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

#exc-filter-sidebar .jet-range__slider {
    position: relative !important;
    display: block !important;
    height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}
#exc-filter-sidebar .jet-range__slider legend { display: none !important; }

#exc-filter-sidebar .jet-range__slider::before,
#exc-filter-sidebar .jet-range__slider::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    width: 18px !important;
    height: 18px !important;
    background: var(--exc-purple) !important;
    border: 2px solid var(--exc-white) !important;
    border-radius: 50% !important;
    box-shadow: 0 2px 6px rgba(143, 41, 151, 0.3) !important;
    transform: translate(-50%, -50%) !important;
    pointer-events: none !important;
    z-index: 2 !important;
}
#exc-filter-sidebar .jet-range__slider::before { left: var(--exc-min-pct, 0%) !important; }
#exc-filter-sidebar .jet-range__slider::after  { left: var(--exc-max-pct, 100%) !important; }

#exc-filter-sidebar .jet-range__slider__track {
    position: absolute !important;
    top: 50% !important;
    left: 0 !important;
    right: 0 !important;
    height: 3px !important;
    margin-top: -1.5px !important;
    background: var(--exc-purple-line) !important;
    border-radius: 2px !important;
    overflow: visible !important;
}
#exc-filter-sidebar .jet-range__slider__track__range {
    position: relative !important;
    height: 100% !important;
    background: var(--exc-purple) !important;
    border-radius: 2px !important;
}

#exc-filter-sidebar .jet-range__slider__input[type="range"] {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    pointer-events: none !important;
    outline: none !important;
    border: 0 !important;
}

#exc-filter-sidebar .jet-range__slider__input[type="range"]::-webkit-slider-runnable-track {
    -webkit-appearance: none !important;
    height: 18px !important;
    background: transparent !important;
}
#exc-filter-sidebar .jet-range__slider__input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 20px !important;
    height: 20px !important;
    margin-top: -1px !important;
    background: transparent !important;
    border: none !important;
    border-radius: 50% !important;
    box-shadow: none !important;
    cursor: grab !important;
    pointer-events: auto !important;
}
#exc-filter-sidebar .jet-range__slider__input[type="range"]::-webkit-slider-thumb:active { cursor: grabbing !important; }

#exc-filter-sidebar .jet-range__slider__input[type="range"]::-moz-range-track {
    height: 18px !important;
    background: transparent !important;
    border: 0 !important;
}
#exc-filter-sidebar .jet-range__slider__input[type="range"]::-moz-range-thumb {
    -moz-appearance: none !important;
    appearance: none !important;
    width: 20px !important;
    height: 20px !important;
    background: transparent !important;
    border: none !important;
    border-radius: 50% !important;
    box-shadow: none !important;
    cursor: grab !important;
    pointer-events: auto !important;
}

#exc-filter-sidebar .jet-range__values {
    position: relative;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
    font-family: var(--exc-sans) !important;
}
#exc-filter-sidebar .jet-range__values-min,
#exc-filter-sidebar .jet-range__values-max {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 60px !important;
    padding: 6px 10px !important;
    background: var(--exc-purple-soft) !important;
    border: 1px solid var(--exc-purple-line) !important;
    border-radius: var(--exc-radius-sm) !important;
    font-family: var(--exc-sans) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: var(--exc-purple) !important;
}
#exc-filter-sidebar .jet-range__values::before {
    content: '—';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    color: var(--exc-muted);
    font-size: 12px;
}
#exc-filter-sidebar .jet-range__values > .jet-range__values-prefix,
#exc-filter-sidebar .jet-range__values > .jet-range__values-suffix { display: none !important; }


/* ────────────────────────────────────────────────
   13. Active filter chips + clear button
   ──────────────────────────────────────────────── */
#exc-filter-sidebar .jet-active-filters__items {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
}
#exc-filter-sidebar .jet-active-filters__item {
    padding: 4px 10px 4px 12px !important;
    background: var(--exc-white) !important;
    color: var(--exc-purple) !important;
    border: 1px solid var(--exc-purple-line) !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
}
#exc-filter-sidebar .jet-smart-filters-remove {
    width: 100% !important;
    margin-top: 10px !important;
    padding: 9px 14px !important;
    background: transparent !important;
    color: var(--exc-purple) !important;
    border: 1px solid var(--exc-purple) !important;
    border-radius: var(--exc-radius-md) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: background 0.15s ease, color 0.15s ease !important;
}
#exc-filter-sidebar .jet-smart-filters-remove:hover {
    background: var(--exc-purple) !important;
    color: var(--exc-white) !important;
}

/* ────────────────────────────────────────────────
   Spacing under hero divider
   ──────────────────────────────────────────────── */
.woocommerce.archive .site-main,
.archive.woocommerce .site-main,
.exc-archive-main {
    padding-top: 32px !important;
}

.woocommerce-result-count,
.woocommerce-ordering {
    margin-top: 8px !important;
}

/* ════════════════════════════════════════════════════
   LATEST PRODUCTS HERO
   Matches the existing archive hero styling
   ════════════════════════════════════════════════════ */

.exc-archive-hero--latest-products,
.exc-archive-hero--new-arrivals {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    max-width: 900px;
    margin: 40px auto 32px;
    padding: 0 24px;
}

/* Hide any inherited ::before / ::after underlines on the title
   so only our explicit divider renders (fixes duplicate underline) */
.exc-archive-hero--latest-products .exc-archive-hero__title::after,
.exc-archive-hero--latest-products .exc-archive-hero__title::before,
.exc-archive-hero--new-arrivals .exc-archive-hero__title::after,
.exc-archive-hero--new-arrivals .exc-archive-hero__title::before {
    display: none !important;
    content: none !important;
}

/* Breadcrumb */
.exc-archive-hero--latest-products .exc-archive-hero__breadcrumb,
.exc-archive-hero--new-arrivals .exc-archive-hero__breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0 0 18px;
    font-family: var(--exc-sans);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.exc-archive-hero--latest-products .exc-archive-hero__crumb,
.exc-archive-hero--new-arrivals .exc-archive-hero__crumb {
    color: var(--exc-purple);
    text-decoration: none;
    transition: color 0.15s ease;
}

.exc-archive-hero--latest-products .exc-archive-hero__crumb:hover,
.exc-archive-hero--new-arrivals .exc-archive-hero__crumb:hover {
    color: var(--exc-purple-dark);
}

.exc-archive-hero--latest-products .exc-archive-hero__crumb--current,
.exc-archive-hero--new-arrivals .exc-archive-hero__crumb--current {
    color: var(--exc-purple);
    pointer-events: none;
}

.exc-archive-hero--latest-products .exc-archive-hero__crumb-sep,
.exc-archive-hero--new-arrivals .exc-archive-hero__crumb-sep {
    color: var(--exc-muted);
    font-weight: 400;
}

/* Title — badge anchored to top of title for cleaner alignment */
.exc-archive-hero--latest-products .exc-archive-hero__title,
.exc-archive-hero--new-arrivals .exc-archive-hero__title {
    display: inline-flex;
    align-items: flex-start;
    gap: 14px;
    margin: 0;
    padding: 0;
    font-family: var(--exc-sans);
    font-size: clamp(36px, 5vw, 52px);
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--exc-ink);
    line-height: 1.1;
}

/* "NEW" badge — sits at cap-height of the title text */
.exc-archive-hero--latest-products .exc-archive-hero__badge,
.exc-archive-hero--new-arrivals .exc-archive-hero__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 14px;
    margin-top: 0.4em;
    background: var(--exc-purple);
    color: var(--exc-white);
    font-family: var(--exc-sans);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    border-radius: 999px;
    box-shadow: 0 4px 14px rgba(143, 41, 151, 0.28);
    line-height: 1;
    white-space: nowrap;
    animation: exc-new-badge-pulse 2.5s ease-in-out infinite;
}

@keyframes exc-new-badge-pulse {
    0%, 100% {
        box-shadow: 0 4px 14px rgba(143, 41, 151, 0.28);
    }
    50% {
        box-shadow: 0 4px 22px rgba(143, 41, 151, 0.48);
    }
}

/* Purple divider line under title */
.exc-archive-hero--latest-products .exc-archive-hero__divider,
.exc-archive-hero--new-arrivals .exc-archive-hero__divider {
    width: 60px;
    height: 3px;
    margin: 18px auto;
    background: var(--exc-purple);
    border-radius: 2px;
}

/* Product count */
.exc-archive-hero--latest-products .exc-archive-hero__count,
.exc-archive-hero--new-arrivals .exc-archive-hero__count {
    margin: 0;
    font-family: var(--exc-sans);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--exc-purple);
}

.exc-archive-hero--latest-products .exc-archive-hero__count strong,
.exc-archive-hero--new-arrivals .exc-archive-hero__count strong {
    font-weight: 700;
}

/* Mobile */
@media (max-width: 600px) {
    .exc-archive-hero--latest-products,
    .exc-archive-hero--new-arrivals {
        margin: 28px auto 24px;
        padding: 0 18px;
    }
    
    .exc-archive-hero--latest-products .exc-archive-hero__title,
    .exc-archive-hero--new-arrivals .exc-archive-hero__title {
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }
    
    .exc-archive-hero--latest-products .exc-archive-hero__badge,
    .exc-archive-hero--new-arrivals .exc-archive-hero__badge {
        margin-top: 0;
        padding: 5px 12px;
        font-size: 11px;
    }
    
    .exc-archive-hero--latest-products .exc-archive-hero__breadcrumb,
    .exc-archive-hero--new-arrivals .exc-archive-hero__breadcrumb {
        font-size: 10px;
        gap: 6px;
    }
    
    .exc-archive-hero--latest-products .exc-archive-hero__count,
    .exc-archive-hero--new-arrivals .exc-archive-hero__count {
        font-size: 11px;
    }
}

/* ════════════════════════════════════════════════════
   JETSMARTFILTERS — Hide empty filter widgets
   When "Hide if item is empty" is on, JetSmartFilters hides
   the items but leaves the outer Elementor widget wrapper
   with the label still visible. This hides the whole wrapper.
   ════════════════════════════════════════════════════ */

/* Hide checkbox filter widget if all items are hidden */
#exc-filter-sidebar .elementor-widget-jet-smart-filters-checkboxes:has(.jet-checkboxes-list-wrapper:empty),
#exc-filter-sidebar .elementor-widget-jet-smart-filters-checkboxes:has(.jet-checkboxes-list__wrapper:empty) {
    display: none !important;
}

/* Fallback: hide if all individual items have display:none */
#exc-filter-sidebar .elementor-widget-jet-smart-filters-checkboxes:not(:has(.jet-checkboxes-list__row:not([style*="display: none"]):not([style*="display:none"]))) {
    display: none !important;
}

/* Catch the case where the wrapper itself has the .jet-filter-hidden class */
#exc-filter-sidebar .elementor-widget-jet-smart-filters-checkboxes:has(.jet-smart-filters-checkboxes.jet-filter-hidden),
#exc-filter-sidebar .elementor-widget-jet-smart-filters-checkboxes:has(.jet-filter-hidden) {
    display: none !important;
}/* End custom CSS */