.elementor-1542 .elementor-element.elementor-element-76826c01{--display:flex;--min-height:350px;--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:space-between;--align-items:center;--overlay-opacity:0.9;border-style:solid;--border-style:solid;border-width:1px 0px 0px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:var( --e-global-color-primary );--border-color:var( --e-global-color-primary );}.elementor-1542 .elementor-element.elementor-element-76826c01:not(.elementor-motion-effects-element-type-background), .elementor-1542 .elementor-element.elementor-element-76826c01 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-50191bb );background-image:url("https://test.arconsilium.fr/wp-content/uploads/2026/03/bg2-1.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-1542 .elementor-element.elementor-element-76826c01::before, .elementor-1542 .elementor-element.elementor-element-76826c01 > .elementor-background-video-container::before, .elementor-1542 .elementor-element.elementor-element-76826c01 > .e-con-inner > .elementor-background-video-container::before, .elementor-1542 .elementor-element.elementor-element-76826c01 > .elementor-background-slideshow::before, .elementor-1542 .elementor-element.elementor-element-76826c01 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1542 .elementor-element.elementor-element-76826c01 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-664c325 );--background-overlay:'';}.elementor-1542 .elementor-element.elementor-element-7c7e46f5{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1542 .elementor-element.elementor-element-441baef2 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:40px;font-weight:400;text-transform:none;color:var( --e-global-color-secondary );}.elementor-1542 .elementor-element.elementor-element-50b33fa2{--divider-border-style:dotted;--divider-color:var( --e-global-color-accent );--divider-border-width:5px;}.elementor-1542 .elementor-element.elementor-element-50b33fa2 .elementor-divider-separator{width:100px;margin:0 auto;margin-center:0;}.elementor-1542 .elementor-element.elementor-element-50b33fa2 .elementor-divider{text-align:center;padding-block-start:2px;padding-block-end:2px;}.elementor-1542 .elementor-element.elementor-element-4524a4e8 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1542 .elementor-element.elementor-element-4524a4e8 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1542 .elementor-element.elementor-element-4524a4e8{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1542 .elementor-element.elementor-element-4524a4e8 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-1542 .elementor-element.elementor-element-4524a4e8 .elementor-icon-list-item > a{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-1542 .elementor-element.elementor-element-4524a4e8 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1542 .elementor-element.elementor-element-4548c0dd{--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:100px;--padding-bottom:120px;--padding-left:20px;--padding-right:20px;}.elementor-1542 .elementor-element.elementor-element-1c5cc53{--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;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-1542 .elementor-element.elementor-element-5bb977c1{--grid-columns:3;}.elementor-1542 .elementor-element.elementor-element-5bb977c1 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-1542 .elementor-element.elementor-element-5bb977c1 .e-loop-item > .elementor-section, .elementor-1542 .elementor-element.elementor-element-5bb977c1 .e-loop-item > .elementor-section > .elementor-container, .elementor-1542 .elementor-element.elementor-element-5bb977c1 .e-loop-item > .e-con, .elementor-1542 .elementor-element.elementor-element-5bb977c1 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-1542 .elementor-element.elementor-element-1c2425a{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:120px;--padding-left:0px;--padding-right:0px;}.elementor-1542 .elementor-element.elementor-element-1c2425a:not(.elementor-motion-effects-element-type-background), .elementor-1542 .elementor-element.elementor-element-1c2425a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-50191bb );}.elementor-1542 .elementor-element.elementor-element-1c2425a > .elementor-shape-top .elementor-shape-fill, .elementor-1542 .elementor-element.elementor-element-1c2425a > .e-con-inner > .elementor-shape-top .elementor-shape-fill{fill:var( --e-global-color-664c325 );}.elementor-1542 .elementor-element.elementor-element-1c2425a > .elementor-shape-top svg, .elementor-1542 .elementor-element.elementor-element-1c2425a > .e-con-inner > .elementor-shape-top svg{width:calc(30% + 1.3px);height:150px;}.elementor-1542 .elementor-element.elementor-element-b7193e2{--spacer-size:100px;background-color:var( --e-global-color-accent );background-image:url("https://test.arconsilium.fr/wp-content/uploads/2026/03/favicon-1.png");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-1542 .elementor-element.elementor-element-b7193e2:not( .elementor-widget-image ), .elementor-1542 .elementor-element.elementor-element-b7193e2.elementor-widget-image img{-webkit-mask-image:url( https://test.arconsilium.fr/wp-content/plugins/elementor/assets/mask-shapes/circle.svg );-webkit-mask-size:contain;-webkit-mask-position:center center;-webkit-mask-repeat:no-repeat;}.elementor-1542 .elementor-element.elementor-element-b4b013f{width:100%;max-width:100%;text-align:center;}.elementor-1542 .elementor-element.elementor-element-b4b013f .elementor-heading-title{font-family:var( --e-global-typography-5c02d82-font-family ), Sans-serif;font-size:var( --e-global-typography-5c02d82-font-size );font-weight:var( --e-global-typography-5c02d82-font-weight );text-transform:var( --e-global-typography-5c02d82-text-transform );letter-spacing:var( --e-global-typography-5c02d82-letter-spacing );color:var( --e-global-color-secondary );}.elementor-1542 .elementor-element.elementor-element-0e3ad5e{width:100%;max-width:100%;text-align:center;}.elementor-1542 .elementor-element.elementor-element-0e3ad5e .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:40px;text-transform:none;}.elementor-1542 .elementor-element.elementor-element-d010d11{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1542 .elementor-element.elementor-element-49b0033 .elementor-button{background-color:var( --e-global-color-17049cc );font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:500;text-transform:none;letter-spacing:0.08em;fill:var( --e-global-color-b79a2c9 );color:var( --e-global-color-b79a2c9 );border-style:none;border-radius:8px 8px 8px 8px;padding:20px 30px 20px 30px;}.elementor-1542 .elementor-element.elementor-element-49b0033 .elementor-button:hover, .elementor-1542 .elementor-element.elementor-element-49b0033 .elementor-button:focus{background-color:var( --e-global-color-680bbc5 );color:var( --e-global-color-primary );border-color:var( --e-global-color-680bbc5 );}.elementor-1542 .elementor-element.elementor-element-49b0033 .elementor-button:hover svg, .elementor-1542 .elementor-element.elementor-element-49b0033 .elementor-button:focus svg{fill:var( --e-global-color-primary );}@media(min-width:768px){.elementor-1542 .elementor-element.elementor-element-1c2425a{--content-width:800px;}}@media(max-width:1024px){.elementor-1542 .elementor-element.elementor-element-76826c01{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--flex-wrap:wrap;}.elementor-1542 .elementor-element.elementor-element-4524a4e8 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-1542 .elementor-element.elementor-element-4524a4e8 .elementor-icon-list-item > a{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-1542 .elementor-element.elementor-element-5bb977c1{--grid-columns:2;}.elementor-1542 .elementor-element.elementor-element-b4b013f .elementor-heading-title{font-size:var( --e-global-typography-5c02d82-font-size );letter-spacing:var( --e-global-typography-5c02d82-letter-spacing );}.elementor-1542 .elementor-element.elementor-element-d010d11{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-1542 .elementor-element.elementor-element-50b33fa2 .elementor-divider{text-align:center;}.elementor-1542 .elementor-element.elementor-element-50b33fa2 .elementor-divider-separator{margin:0 auto;margin-center:0;}.elementor-1542 .elementor-element.elementor-element-4524a4e8 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-1542 .elementor-element.elementor-element-4524a4e8 .elementor-icon-list-item > a{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-1542 .elementor-element.elementor-element-1c5cc53{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:12px 12px;--row-gap:12px;--column-gap:12px;}.elementor-1542 .elementor-element.elementor-element-5bb977c1{--grid-columns:1;}.elementor-1542 .elementor-element.elementor-element-1c2425a{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.elementor-1542 .elementor-element.elementor-element-b4b013f .elementor-heading-title{font-size:var( --e-global-typography-5c02d82-font-size );letter-spacing:var( --e-global-typography-5c02d82-letter-spacing );}.elementor-1542 .elementor-element.elementor-element-0e3ad5e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1542 .elementor-element.elementor-element-0e3ad5e .elementor-heading-title{font-size:24px;}.elementor-1542 .elementor-element.elementor-element-d010d11{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1542 .elementor-element.elementor-element-49b0033.elementor-element{--align-self:stretch;}.elementor-1542 .elementor-element.elementor-element-49b0033 .elementor-button{font-size:12px;padding:20px 10px 20px 10px;}}/* Start custom CSS for container, class: .elementor-element-4548c0dd *//* ======================================================
WS WooCommerce Filter Builder — Global Skin
========================================================= */

/* 1. Root variables for the whole filter skin (GLOBAL) */
:root {
    /* Typography */
    --ws-filter-font-family: "Roboto", sans-serif;
    --ws-filter-font-size: clamp(0.94rem, 0.90517rem + 0.13793vw, 1.00rem);
    --ws-filter-text-color: #1e1e1e;
    --ws-filter-text-weight: 400;

    /* Label */
    --ws-filter-label-color: #1e1e1e;
    --ws-filter-label-bg: #f4f4f4; /* transparent */
    --ws-filter-label-weight: 500;
    --ws-filter-label-font-size: clamp(0.94rem, 0.90517rem + 0.13793vw, 1.00rem);
    --ws-filter-label-padding: 5px 10px 5px 10px;
    --ws-filter-label-radius: 5px;
    --ws-filter-label-hover-bg: #f4f4f4;
    /*--ws-filter-label-active-bg: transparent;*/

    /* Wrapper & spacing */
    --ws-filter-gap-between-filters-row: 5px;
    --ws-filter-gap-between-filters-col: 5px;
    --ws-filter-gap-between-pills: 8px;
    --ws-filter-checkbox-gap-row: 8px;
    --ws-filter-checkbox-gap-col: 8px;

    /* Dropdown field width */
    --ws-filter-input-min-width: auto; /* 150px */

    /* Pills */
    --ws-filter-pill-bg: #ffffff;
    --ws-filter-pill-bg-hover: #1e1e1e;
    --ws-filter-pill-bg-active: #1e1e1e;
    --ws-filter-pill-border: 1px solid #e2e8f0;
    --ws-filter-pill-border-active: #e2e8f0;
    --ws-filter-pill-text: #1e1e1e;
    --ws-filter-pill-text-hover: #ffffff;
    --ws-filter-pill-text-active: #ffffff;
    --ws-filter-pill-radius: 5px;
    --ws-filter-pill-padding: 5px 15px 5px 15px;
    --ws-filter-pill-font-size: clamp(0.94rem, 0.90517rem + 0.13793vw, 1.00rem);

    /* Dropdown (custom select) */
    --ws-filter-dropdown-bg: #fff;
    --ws-filter-dropdown-border: 1px solid #e2e8f0;
    --ws-filter-dropdown-radius: 5px;
    --ws-filter-dropdown-padding: 0px 15px 0px 15px;
    --ws-filter-dropdown-font-size: clamp(0.94rem, 0.90517rem + 0.13793vw, 1.00rem);
    --ws-filter-dropdown-text-color: #1e1e1e;
    --ws-filter-dropdown-text-hover: #ffffff;
    --ws-filter-dropdown-text-active: #ffffff;
    --ws-filter-dropdown-hover-bg: #1e1e1e;
    --ws-filter-dropdown-panel-bg: #ffffff;
    --ws-filter-dropdown-panel-border: #e2e8f0;
    --ws-filter-dropdown-caret-color: #0f172a;

    /* Price slider inputs (the little number fields) */
    --ws-filter-price-input-width: 70px;
    --ws-filter-price-input-padding: 4px 6px 4px 6px;
    --ws-filter-price-input-font-size: clamp(0.94rem, 0.90517rem + 0.13793vw, 1.00rem);
    --ws-filter-price-input-text-color: #1e1e1e;
    --ws-filter-input-border-radius: 5px;
    --ws-filter-input-border: 1px solid #e2e8f0;
    --ws-filter-input-bg: #ffffff;

    /* Price slider track & thumb */
    --ws-filter-slider-track-color: #007E9A;
    --ws-filter-slider-track-height: 4px;
    --ws-filter-slider-thumb-color: #007E9A;
    --ws-filter-slider-thumb-size: 16px;
    --ws-filter-slider-thumb-margin-top: -6px;
    --ws-filter-slider-wrapper-width: 100px;

    /* Reset icon / per-filter reset button */
    --ws-filter-reset-icon-size: 23px;
    --ws-filter-reset-icon-color: #aaaaaa;
    --ws-filter-reset-icon-color-hover: #000000;
    --ws-filter-reset-btn-bg: transparent;
    --ws-filter-reset-btn-bg-hover: transparent;
    --ws-filter-reset-btn-radius: 5px;
    --ws-filter-reset-btn-padding: 0px 0px 0px 0px;

    /* Reset All button (global reset shortcode) */
    --ws-filter-reset-all-bg: #D0D0CE;
    --ws-filter-reset-all-bg-hover: #1e1e1e;
    --ws-filter-reset-all-color: #1e1e1e;
    --ws-filter-reset-all-color-hover: #fff;
    --ws-filter-reset-all-border: 1px solid #e2e8f0;
    --ws-filter-reset-all-radius: 5px;
    --ws-filter-reset-all-padding: 0px 10px 0px 10px;
    --ws-filter-reset-all-weight: 500;

    /* Checkboxes */
    --ws-filter-checkbox-size: 20px;
    --ws-filter-checkbox-color: #ff0050;
    --ws-filter-checkbox-border-color: #d0d0ce;
    --ws-filter-checkbox-bg: #ffffff;
    --ws-filter-checkbox-hover-bg: #d0d0ce;
    --ws-filter-checkbox-check-color: #fff;

    /* Sort / filter shared label spacing */
    --ws-filter-header-gap: 5px;

    /* Colour swatch states */
    --ws-filter-swatch-bg-hover: #ffffff;
    --ws-filter-swatch-bg-active: #ffffff;
    --ws-filter-swatch-border-active: 2px solid #000000;
}

    /* Colour swatch */
    .ws-colour-swatch {
      width: 15px;
      height: 15px;
      border-radius: 50%;
      background: var(--ws-swatch);
      border: 1px solid rgba(0,0,0,.25);
      display: inline-block;
      margin-right: 6px;
      box-sizing: border-box;
    }

    .ws-wc-filters-skin .ws-wc-filter-multiselect-option:has(.ws-colour-swatch){font-size: clamp(0.94rem, 0.90517rem + 0.13793vw, 1.00rem);}

    .ws-wc-filters-skin .ws-wc-filter-multiselect-option:has(.ws-colour-swatch){padding: 5px 15px;}


    .ws-wc-filters-skin .ws-wc-filter-multiselect-option:has(.ws-colour-swatch){border: 1px solid #e2e8f0;}

    .ws-wc-filters-skin .ws-wc-filter-multiselect-option.is-active:has(.ws-colour-swatch){border: 2px solid #000;}

    /* Show Colour swatch dots only – hide label text
    .ws-wc-filter-multiselect-option span:not(.ws-colour-swatch) {display: none;}
    */

    /* Show Colour swatch text only – hide colour dot
    .ws-colour-swatch {display: none;}
    */




/* ========================================================
Additional Refinement ONLY IF NEEDED -Use ChatGPT if unsure
========================================================= */
/* 2. Base layout & typography (filters) */
.ws-wc-filters-skin.ws-wc-filter-wrapper {
    margin-bottom: var(--ws-filter-wrapper-margin-bottom);
    font-family: var(--ws-filter-font-family);
    font-size: var(--ws-filter-font-size);
    color: var(--ws-filter-text-color);
    font-weight: var(--ws-filter-text-weight); /* NEW: base text weight */
}


/* Sort wrapper should also inherit typography */
.ws-wc-sort-wrapper {
    font-family: var(--ws-filter-font-family);
    font-size: var(--ws-filter-font-size);
    color: var(--ws-filter-text-color);
    font-weight: var(--ws-filter-text-weight); /* NEW: match filter text weight */
}

.ws-wc-filters-skin .ws-wc-filter-form,
.ws-wc-sort-wrapper .ws-wc-sort-form.ws-wc-filter-form {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ws-filter-gap-between-filters-row) var(--ws-filter-gap-between-filters-col);
    align-items: center;
    justify-content: flex-start;
}

/* 3. Header (Label + Reset) */
.ws-wc-filters-skin .ws-wc-filter-header {
    display: inline-flex;
    align-items: center;
    gap: var(--ws-filter-header-gap);
}

/* Label for both filter + sort */
.ws-wc-filters-skin .ws-wc-filter-label,
.ws-wc-sort-wrapper .ws-wc-filter-label {
    font-weight: var(--ws-filter-label-weight);
    font-size: var(--ws-filter-label-font-size); /* NEW */
    color: var(--ws-filter-label-color);
    background: var(--ws-filter-label-bg);
    padding: var(--ws-filter-label-padding);
    border-radius: var(--ws-filter-label-radius);
    margin-right: 0;
}

.ws-wc-filters-skin .ws-wc-filter-label:hover,
.ws-wc-sort-wrapper .ws-wc-filter-label:hover {
    background: var(--ws-filter-label-hover-bg);
}

/* 4. Generic text input / basic field (e.g. price min/max) */
.ws-wc-filters-skin .ws-wc-filter-control input[type="text"],
.ws-wc-filters-skin .ws-wc-filter-control input[type="number"] {
    min-width: var(--ws-filter-input-min-width);
    padding: var(--ws-filter-price-input-padding);
    border-radius: var(--ws-filter-input-border-radius);
    border: var(--ws-filter-input-border) !important;
    background: var(--ws-filter-input-bg);
    color: var(--ws-filter-price-input-text-color);
    font-weight: var(--ws-filter-text-weight);
}

/* 5. Checkbox groups (non-pill) */
.ws-wc-filters-skin .ws-wc-filter-checkbox-group {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ws-filter-checkbox-gap-row) var(--ws-filter-checkbox-gap-col);
}

.ws-wc-filters-skin .ws-wc-filter-checkbox {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-weight: var(--ws-filter-text-weight);
}

/* Checkbox input itself — fully custom, no system UI */
.ws-wc-filters-skin .ws-wc-filter-checkbox input[type="checkbox"] {
    width: var(--ws-filter-checkbox-size);
    height: var(--ws-filter-checkbox-size);

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    background-color: var(--ws-filter-checkbox-bg);
    border-radius: 3px;
    border: 1px solid var(--ws-filter-checkbox-border-color) !important;
    cursor: pointer;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    transition:
        background-color 0.15s ease,
        border-color 0.15s ease;
}

/* The tick mark */
.ws-wc-filters-skin .ws-wc-filter-checkbox input[type="checkbox"]::before {
    content: "";
    position: absolute;
    /* size & position tuned for a 20px box */
    top: 3px;
    left: 6px;
    width: 6px;
    height: 10px;
    border-right: 2px solid transparent;
    border-bottom: 2px solid transparent;
    transform: rotate(45deg) scale(0);
    transform-origin: center;
    transition: border-color 0.15s ease, transform 0.15s ease;
}

/* Checked state */
.ws-wc-filters-skin .ws-wc-filter-checkbox input[type="checkbox"]:checked {
    background-color: var(--ws-filter-checkbox-color);
    border-color: var(--ws-filter-checkbox-border-color);
}

/* Tick visible when checked */
.ws-wc-filters-skin .ws-wc-filter-checkbox input[type="checkbox"]:checked::before {
    border-right-color: var(--ws-filter-checkbox-check-color);
    border-bottom-color: var(--ws-filter-checkbox-check-color);
    transform: rotate(45deg) scale(1);
}

/* Hover state for checkbox (unchecked OR checked) */
.ws-wc-filters-skin .ws-wc-filter-checkbox input[type="checkbox"]:hover {
    background-color: var(--ws-filter-checkbox-hover-bg);
    border-color: var(--ws-filter-checkbox-border-color);
}

/* 6. Reset button (icon button for each filter) */
.ws-wc-filters-skin .ws-wc-filter-reset {
    border: none;
    background: var(--ws-filter-reset-btn-bg);
    padding: var(--ws-filter-reset-btn-padding);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--ws-filter-reset-btn-radius);
}

/* Kill ONLY mouse focus ring, keep keyboard focus */
.ws-wc-filters-skin .ws-wc-filter-reset:focus {
  outline: none;
  box-shadow: none;
}

/* Visible keyboard focus for reset icon (STAYS) */
.ws-wc-filters-skin .ws-wc-filter-reset:focus-visible {
  outline: 2px solid #000;      /* or currentColor if you prefer */
  outline-offset: 3px;
  height: auto;
  border-radius: var(--ws-filter-reset-btn-radius);
}



.ws-wc-filters-skin .ws-wc-filter-reset span[aria-hidden="true"] {
    font-size: var(--ws-filter-reset-icon-size);
    color: var(--ws-filter-reset-icon-color);
}

.ws-wc-filters-skin .ws-wc-filter-reset:hover {
    background: var(--ws-filter-reset-btn-bg-hover);
}

.ws-wc-filters-skin .ws-wc-filter-reset:hover span[aria-hidden="true"] {
    color: var(--ws-filter-reset-icon-color-hover); /* NEW: icon colour on hover */
}

/* Screen-reader only helper */
.ws-wc-filters-skin .ws-wc-sr-only {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* 7. Custom single-select dropdown (filters + sort) */
.ws-wc-filters-skin .ws-custom-select,
.ws-wc-sort-wrapper .ws-custom-select {
    position: relative;
    min-width: var(--ws-filter-input-min-width);
}

.ws-wc-filters-skin .ws-custom-select-toggle,
.ws-wc-sort-wrapper .ws-custom-select-toggle {
    width: 100%;
    padding: var(--ws-filter-dropdown-padding);
    border-radius: var(--ws-filter-dropdown-radius);
    border: var(--ws-filter-dropdown-border);
    background: var(--ws-filter-dropdown-bg);
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    font-size: var(--ws-filter-dropdown-font-size);
    color: var(--ws-filter-dropdown-text-color);   /* text colour before open */
    font-weight: var(--ws-filter-text-weight);
}

.ws-wc-filters-skin .ws-custom-select-label,
.ws-wc-sort-wrapper .ws-custom-select-label {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ws-wc-filters-skin .ws-custom-select-caret,
.ws-wc-sort-wrapper .ws-custom-select-caret {
    margin-left: 0.5rem;
    color: var(--ws-filter-dropdown-caret-color);
}

.ws-wc-filters-skin .ws-custom-select-panel,
.ws-wc-sort-wrapper .ws-custom-select-panel {
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    z-index: 99;
    min-width: 100%;
    max-height: 220px;
    overflow: auto;
    background: var(--ws-filter-dropdown-panel-bg);
    border: 1px solid var(--ws-filter-dropdown-panel-border);
    border-radius: var(--ws-filter-dropdown-radius);
    padding: 0.25rem 0;
    display: none;
}

.ws-wc-filters-skin .ws-custom-select-option,
.ws-wc-sort-wrapper .ws-custom-select-option {
    width: 100%;
    padding: 0.3rem 0.6rem;
    border: none;
    background: transparent;
    text-align: left;
    cursor: pointer;
    font-size: var(--ws-filter-dropdown-font-size);
    color: var(--ws-filter-dropdown-text-color); /* option text colour */
    font-weight: var(--ws-filter-text-weight);
}

.ws-wc-filters-skin .ws-custom-select-option:hover,
.ws-wc-sort-wrapper .ws-custom-select-option:hover {
    background: var(--ws-filter-dropdown-hover-bg);
    color: var(--ws-filter-dropdown-text-hover); /* option text hover colour */
}

.ws-wc-filters-skin .ws-custom-select.is-open .ws-custom-select-panel,
.ws-wc-sort-wrapper .ws-custom-select.is-open .ws-custom-select-panel {
    display: block;
}

/* 8. Multiselect as inline chips (pills) */
.ws-wc-filters-skin .ws-wc-filter-multiselect-inline {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ws-filter-gap-between-pills);
    min-width: var(--ws-filter-input-min-width);
}

.ws-wc-filters-skin .ws-wc-filter-multiselect-option {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    border-radius: var(--ws-filter-pill-radius);
    border: var(--ws-filter-pill-border);
    background: var(--ws-filter-pill-bg);
    padding: var(--ws-filter-pill-padding);
    font-size: var(--ws-filter-pill-font-size);
    color: var(--ws-filter-pill-text);
    font-weight: var(--ws-filter-text-weight);
    transition:
        background 0.15s ease,
        color 0.15s ease,
        border-color 0.15s ease;
}

/* Hide the actual inputs inside pills */
.ws-wc-filters-skin .ws-wc-filter-multiselect-option input[type="checkbox"],
.ws-wc-filters-skin .ws-wc-filter-multiselect-option input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* ✅ Keyboard focus ring for pills (checkbox + radio) */
.ws-wc-filters-skin .ws-wc-filter-multiselect-option:focus-within {
  outline: 2px solid #000;
  outline-offset: 3px;
}

/* Text inside the chip */
.ws-wc-filters-skin .ws-wc-filter-multiselect-option span {
    white-space: nowrap;
    color: inherit; /* inherit from parent (normal/hover/active) */
}

/* Hover state (including text hover colour) */
.ws-wc-filters-skin .ws-wc-filter-multiselect-option:hover {
    background: var(--ws-filter-pill-bg-hover);
    border-color: var(--ws-filter-pill-border-active);
    color: var(--ws-filter-pill-text-hover);
}

.ws-wc-filters-skin .ws-wc-filter-multiselect-option:hover span {
    color: var(--ws-filter-pill-text-hover);
}

/* Selected chip */
.ws-wc-filters-skin .ws-wc-filter-multiselect-option.is-active {
    background: var(--ws-filter-pill-bg-active);
    border-color: var(--ws-filter-pill-border-active);
    color: var(--ws-filter-pill-text-active);
}

.ws-wc-filters-skin .ws-wc-filter-multiselect-option.is-active span {
    color: inherit;
}

/* ======================================================
Colour swatch pill overrides (FINAL, FINAL)
========================================================= */

/* Hover: swatch pills only */
.ws-wc-filters-skin
.ws-wc-filter-multiselect-option:hover:has(.ws-colour-swatch) {
    background: var(--ws-filter-swatch-bg-hover) !important;
    color: var(--ws-filter-pill-text) !important; /* keep text normal */
}

/* Hover: FORCE label text to stay normal (prevents 'invisible' white text) */
.ws-wc-filters-skin
.ws-wc-filter-multiselect-option:hover:has(.ws-colour-swatch) span:not(.ws-colour-swatch) {
    color: var(--ws-filter-pill-text) !important;
}

/* Hover: colour dot border */
.ws-wc-filters-skin
.ws-wc-filter-multiselect-option:hover .ws-colour-swatch {
    border: var(--ws-filter-swatch-border-active) !important;
}

/* Active: swatch pills only */
.ws-wc-filters-skin
.ws-wc-filter-multiselect-option.is-active:has(.ws-colour-swatch) {
    background: var(--ws-filter-swatch-bg-active) !important;
    color: var(--ws-filter-pill-text) !important; /* keep text normal */
}

/* Active: FORCE label text to stay normal */
.ws-wc-filters-skin
.ws-wc-filter-multiselect-option.is-active:has(.ws-colour-swatch) span:not(.ws-colour-swatch) {
    color: var(--ws-filter-pill-text) !important;
}

/* Active colour dot border */
.ws-wc-filters-skin
.ws-wc-filter-multiselect-option.is-active .ws-colour-swatch {
    border: var(--ws-filter-swatch-border-active) !important;
}

/* 9. Price range layout */
.ws-wc-filters-skin .ws-price-range-wrapper {
    display: inline-flex;
    flex-direction: column;
    gap: 0.35rem;
    min-width: 260px;
}

.ws-wc-filters-skin .ws-price-range-row {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: nowrap; /* all left-justified with consistent gaps */
}

/* Number inputs for min/max price */
.ws-wc-filters-skin .ws-price-range-input {
    width: var(--ws-filter-price-input-width) !important;
    min-width: var(--ws-filter-price-input-width) !important;
    max-width: var(--ws-filter-price-input-width) !important;
    flex: 0 0 var(--ws-filter-price-input-width) !important;

    padding: var(--ws-filter-price-input-padding) !important;
    border-radius: var(--ws-filter-input-border-radius);
    border: var(--ws-filter-input-border) !important;
    font-size: var(--ws-filter-price-input-font-size) !important;
    color: var(--ws-filter-price-input-text-color);
    text-align: center !important;

    display: inline-block !important;
    box-sizing: border-box !important;
}

.ws-wc-filters-skin .ws-price-range-separator {
    font-size: 1rem;
    display: none; /* never show the "-" separator */
}

/* Slider wrapper */
.ws-wc-filters-skin .ws-price-range-slider-wrapper {
    position: relative;
    flex: 0 0 var(--ws-filter-slider-wrapper-width);      /* track length control */
    width: var(--ws-filter-slider-wrapper-width);
    min-width: var(--ws-filter-slider-wrapper-width);     /* was 140px */
    height: 30px; /* slightly taller wrapper for true centering */
}

/* Both range inputs stacked */
.ws-wc-filters-skin .ws-price-range-slider-wrapper .ws-price-range {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;

    transform: translateY(-50%);
    width: 100%;
    margin: 0;
    background: transparent;
    pointer-events: none;

    -webkit-appearance: none;
    appearance: none;
    z-index: 1; /* track layer baseline */
}

/* Make the max handle sit above the min handle when they overlap */
.ws-wc-filters-skin .ws-price-range-slider-wrapper .ws-price-range.ws-price-range-max {
    z-index: 2; /* ensure topmost thumb */
}

/* WebKit track & thumb */
.ws-wc-filters-skin .ws-price-range-slider-wrapper .ws-price-range::-webkit-slider-runnable-track {
    height: var(--ws-filter-slider-track-height);
    background-color: var(--ws-filter-slider-track-color) !important;
}

.ws-wc-filters-skin .ws-price-range-slider-wrapper .ws-price-range::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: var(--ws-filter-slider-thumb-size);
    height: var(--ws-filter-slider-thumb-size);
    border-radius: 50%;
    background-color: var(--ws-filter-slider-thumb-color) !important;
    pointer-events: auto;
    margin-top: var(--ws-filter-slider-thumb-margin-top) !important;
    position: relative;
}

/* Firefox track & thumb */
.ws-wc-filters-skin .ws-price-range-slider-wrapper .ws-price-range::-moz-range-track {
    height: var(--ws-filter-slider-track-height);
    background-color: var(--ws-filter-slider-track-color) !important;
}

.ws-wc-filters-skin .ws-price-range-slider-wrapper .ws-price-range::-moz-range-thumb {
    width: var(--ws-filter-slider-thumb-size);
    height: var(--ws-filter-slider-thumb-size);
    border-radius: 50%;
    background-color: var(--ws-filter-slider-thumb-color) !important;
    margin-top: 0 !important;
    position: relative;
}

/* 10. Orientation handling (desktop) */
@media (min-width: 769px) {
    .ws-wc-filters-skin[data-desktop-orientation="horizontal"] .ws-wc-filter-form {
        flex-direction: row;
        align-items: center;
    }
    .ws-wc-filters-skin[data-desktop-orientation="horizontal"] .ws-wc-filter-control,
    .ws-wc-filters-skin[data-desktop-orientation="horizontal"] .ws-wc-filter-checkbox-group {
        flex-direction: row;
    }

    .ws-wc-filters-skin[data-desktop-orientation="vertical"] .ws-wc-filter-form {
        flex-direction: column;
        align-items: flex-start;
    }
    .ws-wc-filters-skin[data-desktop-orientation="vertical"] .ws-wc-filter-label {
        margin-right: 0;
        margin-bottom: 0.35rem;
    }
    .ws-wc-filters-skin[data-desktop-orientation="vertical"] .ws-wc-filter-control,
    .ws-wc-filters-skin[data-desktop-orientation="vertical"] .ws-wc-filter-checkbox-group {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* 11. Orientation handling (mobile) */
@media (max-width: 768px) {
    .ws-wc-filters-skin[data-mobile-orientation="horizontal"] .ws-wc-filter-form {
        flex-direction: row;
        align-items: center;
    }
    .ws-wc-filters-skin[data-mobile-orientation="horizontal"] .ws-wc-filter-control,
    .ws-wc-filters-skin[data-mobile-orientation="horizontal"] .ws-wc-filter-checkbox-group {
        flex-direction: row;
    }

    .ws-wc-filters-skin[data-mobile-orientation="vertical"] .ws-wc-filter-form {
        flex-direction: column;
        align-items: flex-start;
    }
    .ws-wc-filters-skin[data-mobile-orientation="vertical"] .ws-wc-filter-label {
        margin-right: 0;
        margin-bottom: 0.35rem;
    }
    .ws-wc-filters-skin[data-mobile-orientation="vertical"] .ws-wc-filter-control,
    .ws-wc-filters-skin[data-mobile-orientation="vertical"] .ws-wc-filter-checkbox-group {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* 12. Reset All button (from [wc_filter_reset_all]) */
.ws-wc-filter-reset-all {
    padding: var(--ws-filter-reset-all-padding);
    border-radius: var(--ws-filter-reset-all-radius);
    border: var(--ws-filter-reset-all-border);
    background: var(--ws-filter-reset-all-bg);
    color: var(--ws-filter-reset-all-color);
    font-family: var(--ws-filter-font-family);
    font-size: var(--ws-filter-font-size);
    font-weight: var(--ws-filter-reset-all-weight); /* NEW */
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;       /* kill tap highlight */
    transition:
        background 0.15s ease,
        color 0.15s ease,
        border-color 0.15s ease;
}

.ws-wc-filter-reset-all:hover {
    background: var(--ws-filter-reset-all-bg-hover);
    color: var(--ws-filter-reset-all-color-hover);
}

/* Kill system focus/active colours on Reset All */
.ws-wc-filter-reset-all:focus,
.ws-wc-filter-reset-all:active {
    outline: none;
    box-shadow: none;
    background: var(--ws-filter-reset-all-bg-hover);
    color: var(--ws-filter-reset-all-color-hover);
}/* End custom CSS */