.elementor-57 .elementor-element.elementor-element-894e8ba{--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:0px 0px;--row-gap:0px;--column-gap:0px;--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-57 .elementor-element.elementor-element-39c3473{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-57 .elementor-element.elementor-element-39c3473 img{width:100%;}.elementor-57 .elementor-element.elementor-element-efcaf07{padding:80px 0px 20px 0px;text-align:center;}.elementor-57 .elementor-element.elementor-element-efcaf07 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:50px;font-weight:300;}.elementor-57 .elementor-element.elementor-element-1a77ce3{text-align:center;font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:400;}.elementor-57 .elementor-element.elementor-element-77248cb{--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:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-57 .elementor-element.elementor-element-9b5b371{--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;}.elementor-57 .elementor-element.elementor-element-016c829{padding:15px 15px 15px 15px;top:0px;border-style:solid;border-width:1px 1px 1px 1px;border-color:#161514;border-radius:50px 50px 50px 50px;}body:not(.rtl) .elementor-57 .elementor-element.elementor-element-016c829{left:0px;}body.rtl .elementor-57 .elementor-element.elementor-element-016c829{right:0px;}.elementor-57 .elementor-element.elementor-element-51ed386{padding:15px 15px 15px 15px;top:0px;border-style:solid;border-width:1px 1px 1px 1px;border-color:#161514;border-radius:50px 50px 50px 50px;}body:not(.rtl) .elementor-57 .elementor-element.elementor-element-51ed386{right:0px;}body.rtl .elementor-57 .elementor-element.elementor-element-51ed386{left:0px;}.elementor-57 .elementor-element.elementor-element-addec76{--display:flex;border-style:none;--border-style:none;}.elementor-57 .elementor-element.elementor-element-9ee2eb3{--display:flex;border-style:none;--border-style:none;}.elementor-57 .elementor-element.elementor-element-c955b40{padding:15px 15px 15px 15px;top:0px;border-style:none;border-radius:50px 50px 50px 50px;}body:not(.rtl) .elementor-57 .elementor-element.elementor-element-c955b40{left:0px;}body.rtl .elementor-57 .elementor-element.elementor-element-c955b40{right:0px;}.elementor-57 .elementor-element.elementor-element-6803d6c{--display:flex;}.elementor-57 .elementor-element.elementor-element-18fce37{padding:15px 15px 15px 15px;top:0px;border-style:none;border-radius:50px 50px 50px 50px;}body:not(.rtl) .elementor-57 .elementor-element.elementor-element-18fce37{right:0px;}body.rtl .elementor-57 .elementor-element.elementor-element-18fce37{left:0px;}.elementor-57 .elementor-element.elementor-element-69ee771{--spacer-size:50px;}.elementor-57 .elementor-element.elementor-element-fb0f3bf{--grid-columns:4;}.elementor-57 .elementor-element.elementor-element-fb0f3bf .elementor-loop-container{grid-auto-rows:1fr;}.elementor-57 .elementor-element.elementor-element-fb0f3bf .e-loop-item > .elementor-section, .elementor-57 .elementor-element.elementor-element-fb0f3bf .e-loop-item > .elementor-section > .elementor-container, .elementor-57 .elementor-element.elementor-element-fb0f3bf .e-loop-item > .e-con, .elementor-57 .elementor-element.elementor-element-fb0f3bf .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-57 .elementor-element.elementor-element-e23c58d{--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:200px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-57 .elementor-element.elementor-element-6cefd27{text-align:center;}.elementor-57 .elementor-element.elementor-element-6cefd27 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:40px;font-weight:300;color:#000000;}.elementor-57 .elementor-element.elementor-element-41d8479{text-align:center;font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:300;color:#000000;}.elementor-57 .elementor-element.elementor-element-8f1228b{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-57 .elementor-element.elementor-element-8f1228b.e-con{--align-self:center;}.elementor-57 .elementor-element.elementor-element-70774fe{--display:flex;}.elementor-57 .elementor-element.elementor-element-33fc4cc{font-family:var( --e-global-typography-1a411b0-font-family ), Sans-serif;font-size:var( --e-global-typography-1a411b0-font-size );font-weight:var( --e-global-typography-1a411b0-font-weight );color:#000000;}.elementor-57 .elementor-element.elementor-element-d34e989{--display:flex;}.elementor-57 .elementor-element.elementor-element-2e1a3c5{font-family:var( --e-global-typography-1a411b0-font-family ), Sans-serif;font-size:var( --e-global-typography-1a411b0-font-size );font-weight:var( --e-global-typography-1a411b0-font-weight );color:#000000;}.elementor-57 .elementor-element.elementor-element-e81842d{--display:flex;}.elementor-57 .elementor-element.elementor-element-d72440f{font-family:var( --e-global-typography-1a411b0-font-family ), Sans-serif;font-size:var( --e-global-typography-1a411b0-font-size );font-weight:var( --e-global-typography-1a411b0-font-weight );color:#000000;}.elementor-57 .elementor-element.elementor-element-a5c1a57 .elementor-button{background-color:#E77826;fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-radius:50px 50px 50px 50px;}.elementor-57 .elementor-element.elementor-element-a5c1a57 .elementor-button:hover, .elementor-57 .elementor-element.elementor-element-a5c1a57 .elementor-button:focus{background-color:#D63B2D;}@media(min-width:768px){.elementor-57 .elementor-element.elementor-element-8f1228b{--width:75%;}}@media(max-width:1024px){.elementor-57 .elementor-element.elementor-element-fb0f3bf{--grid-columns:2;}.elementor-57 .elementor-element.elementor-element-8f1228b{--grid-auto-flow:row;}.elementor-57 .elementor-element.elementor-element-33fc4cc{font-size:var( --e-global-typography-1a411b0-font-size );}.elementor-57 .elementor-element.elementor-element-2e1a3c5{font-size:var( --e-global-typography-1a411b0-font-size );}.elementor-57 .elementor-element.elementor-element-d72440f{font-size:var( --e-global-typography-1a411b0-font-size );}}@media(max-width:767px){.elementor-57 .elementor-element.elementor-element-addec76{--width:100%;--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;--justify-content:space-between;--border-radius:100px 100px 100px 100px;--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-57 .elementor-element.elementor-element-9ee2eb3{--width:35%;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--border-radius:0px 0px 0px 0px;--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-57 .elementor-element.elementor-element-c955b40{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:-1px -1px -1px -1px;border-radius:-2px -2px -2px -2px;}.elementor-57 .elementor-element.elementor-element-6803d6c{--width:55%;--align-items:flex-end;--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-57 .elementor-element.elementor-element-6803d6c.e-con{--order:99999 /* order end hack */;}.elementor-57 .elementor-element.elementor-element-18fce37{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:-1px -1px -1px -1px;}.elementor-57 .elementor-element.elementor-element-69ee771{--spacer-size:90px;}.elementor-57 .elementor-element.elementor-element-fb0f3bf{--grid-columns:1;}.elementor-57 .elementor-element.elementor-element-8f1228b{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--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-57 .elementor-element.elementor-element-70774fe{--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-57 .elementor-element.elementor-element-0b71006{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -10px) 0px;padding:0px 0px 0px 0px;}.elementor-57 .elementor-element.elementor-element-33fc4cc{font-size:var( --e-global-typography-1a411b0-font-size );}.elementor-57 .elementor-element.elementor-element-d34e989{--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-57 .elementor-element.elementor-element-d073be2{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -10px) 0px;}.elementor-57 .elementor-element.elementor-element-2e1a3c5{font-size:var( --e-global-typography-1a411b0-font-size );}.elementor-57 .elementor-element.elementor-element-e81842d{--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-57 .elementor-element.elementor-element-3f9b6af{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -10px) 0px;}.elementor-57 .elementor-element.elementor-element-d72440f{font-size:var( --e-global-typography-1a411b0-font-size );}}/* Start custom CSS for shortcode, class: .elementor-element-18fce37 *//* ----- DESKTOP / DEFAULT: label + select en una línea ----- */

.ws-wc-sort-wrapper .ws-wc-sort-form {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-end;   /* derecha en escritorio, cambia a flex-start si prefieres izquierda */
    gap: 0.5rem;
    margin: 0;
}

.ws-wc-sort-wrapper .ws-wc-filter-label,
.ws-wc-sort-wrapper .ws-wc-filter-control {
    margin: 0;
}

/* ----- MÓVIL: SIEMPRE 2 LÍNEAS, TODO A LA DERECHA ----- */

@media (max-width: 767px) {
  .ws-wc-sort-wrapper .ws-wc-sort-form {
      flex-direction: column;     /* una cosa sobre la otra */
      align-items: flex-end;      /* alinear todo hacia la derecha */
      justify-content: flex-start;
  }

  .ws-wc-sort-wrapper .ws-wc-filter-label {
      width: 100%;
      text-align: right;          /* “Ordenar” alineado a la derecha */
  }

  .ws-wc-sort-wrapper .ws-wc-filter-control {
      width: 100%;
      display: flex;
      justify-content: flex-end;  /* el select también a la derecha */
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-77248cb *//* ======================================================
WS WooCommerce Filter Builder — Global Skin
========================================================= */

/* 1. Root variables for the whole filter skin (GLOBAL) */
:root {
    /* Typography */
    --ws-filter-font-family: "Poppins", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --ws-filter-font-size: 16px;
    --ws-filter-text-color: #161514;
    --ws-filter-text-weight: 300;

    /* Label */
    --ws-filter-label-color: #161514;
    /*--ws-filter-label-bg: #f4f4f4; /* transparent */
    --ws-filter-label-weight: 500;
    --ws-filter-label-font-size: 16px;
    --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: 0px;
    --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: #E77826;
    --ws-filter-pill-bg-active: #E77826;
    --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: 16px;

    /* Dropdown (custom select) */
    --ws-filter-dropdown-bg: #fff;
    --ws-filter-dropdown-border: 1px solid #e2e8f0;
    --ws-filter-dropdown-radius: 5px;
    --ws-filter-dropdown-padding: 5px 15px 5px 15px;
    --ws-filter-dropdown-font-size: 16px;
    --ws-filter-dropdown-text-color: #1e1e1e;
    --ws-filter-dropdown-text-hover: #ffffff;
    --ws-filter-dropdown-text-active: #ffffff;
    --ws-filter-dropdown-hover-bg: #ff0050;
    --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: 16px;
    --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: #ff0050;
    --ws-filter-slider-track-height: 4px;
    --ws-filter-slider-thumb-color: #ff0050;
    --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: 600;

    /* 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;
}


/* ======================================================
Additional Refinement ONLY IF NEEDED
========================================================= */
/* 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 system focus/active colours on the reset button */
.ws-wc-filters-skin .ws-wc-filter-reset:focus,
.ws-wc-filters-skin .ws-wc-filter-reset:active {
    outline: none;
    box-shadow: none;
    background: var(--ws-filter-reset-btn-bg);
}

.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;
}

/* 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;
}

/* 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 */