/** Shopify CDN: Minification failed

Line 1197:22 Expected ":"

**/
.facets-container {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  padding-top: 1rem;
}

.active-facets-mobile {
  margin-bottom: 0.5rem;
}

.mobile-facets__list {
  overflow-y: auto;
}

@media screen and (min-width: 750px) {


  
  .facets-container > * + * {
    margin-top: 0;
  }

  .facets__form .product-count {
    grid-column-start: 3;
    align-self: flex-start;
  }
}

@media screen and (max-width: 989px) {
  .facets-container {
    grid-template-columns: auto minmax(0, max-content);
    column-gap: 2rem;
  }
}

.facet-filters {
  align-items: flex-start;
  display: flex;
  grid-column: 2;
  grid-row: 1;
  padding-left: 2.5rem;
}

@media screen and (min-width: 990px) {
  .facet-filters {
    padding-left: 3rem;
  }
}

.facet-filters__label {
  display: block;
  color: var(--color-foreground-85);
  font-size: 1.4rem;
  margin: 0 2rem 0 0;
}

.facet-filters__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.4rem;
  cursor: pointer;
  height: 4.5rem;
  padding: 0 1.5rem;
  min-width: 25rem;
  margin-top: 2.4rem;
  border: 0.1rem solid rgba(var(--color-foreground), 0.55);
}

.facet-filters__summary::after {
  position: static;
}

.facet-filters__field {
  align-items: center;
  display: flex;
  flex-grow: 1;
  justify-content: flex-end;
}

.facet-filters__field .select {
  width: auto;
}

.facet-filters__field .select:after,
.facet-filters__field .select:before,
.mobile-facets__sort .select:after,
.mobile-facets__sort .select:before {
  content: none;
}

.facet-filters__field .select__select,
.mobile-facets__sort .select__select {
  border-radius: 0;
  min-width: auto;
  min-height: auto;
  transition: none;
}

.facet-filters button {
  margin-left: 2.5rem;
}

.facet-filters__sort {
  background-color: transparent;
  border: 0;
  border-radius: 0;
  font-size: 1.4rem;
  height: auto;
  line-height: calc(1 + 0.5 / var(--font-body-scale));
  margin: 0;
  padding-left: 0;
  padding-right: 1.75rem;
}

.facet-filters__sort + .icon-caret {
  right: 0;
}

@media screen and (forced-colors: active) {
  .facet-filters__sort {
    border: none;
  }
}

.facet-filters__sort,
.facet-filters__sort:hover {
  box-shadow: none;
  filter: none;
  transition: none;
}

.mobile-facets__sort .select__select:focus-visible {
  outline: 0.2rem solid rgba(var(--color-foreground), 0.5);
  outline-offset: 0.3rem;
  box-shadow: 0 0 0 0.3rem rgb(var(--color-background)),
    0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3);
}

.mobile-facets__sort .select__select.focused,
.no-js .mobile-facets__sort .select__select:focus {
  outline: 0.2rem solid rgba(var(--color-foreground), 0.5);
  outline-offset: 0.3rem;
  box-shadow: 0 0 0 0.3rem rgb(var(--color-background)),
    0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3);
}

.facet-filters__sort:focus-visible {
  outline: 0.2rem solid rgba(var(--color-foreground), 0.5);
  outline-offset: 1rem;
  box-shadow: 0 0 0 1rem rgb(var(--color-background)),
    0 0 0.2rem 1.2rem rgba(var(--color-foreground), 0.3);
}

.facet-filters__sort.focused,
.no-js .facet-filters__sort:focus {
  outline: 0.2rem solid rgba(var(--color-foreground), 0.5);
  outline-offset: 1rem;
  box-shadow: 0 0 0 1rem rgb(var(--color-background)),
    0 0 0.2rem 1.2rem rgba(var(--color-foreground), 0.3);
}

.no-js .facet-filters__sort:focus:not(:focus-visible),
.no-js .mobile-facets__sort .select__select:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none;
}

.facets {
  display: block;
  grid-column-start: span 2;
}

.facets__form {
  display: grid;
  gap: 0 3.5rem;
  grid-template-columns: 1fr max-content max-content;
  margin-bottom: 0.5rem;
}

.facets__wrapper {
  align-items: center;
  align-self: flex-start;
  grid-column: 1;
  grid-row: 1;
  display: flex;
  flex-wrap: wrap;
}

.facets__heading {
  display: block;
  color: rgba(var(--color-foreground), 0.85);
  font-size: 1.4rem;
  margin: -1.5rem 2rem 0 0;
}

.facets__reset {
  margin-left: auto;
}

.facets__disclosure {
  margin-right: 3.5rem;
}

.facets__summary {
  color: rgba(var(--color-foreground), 0.75);
  font-size: 1.4rem;
  padding: 0 1.75rem 0 0;
  margin-bottom: 1.5rem;
}

.facets__disclosure fieldset {
  padding: 0;
  margin: 0;
  border: 0;
}

.facets__disclosure[open] .facets__summary,
.facets__summary:hover {
  color: rgb(var(--color-foreground));
}

.facets__disclosure[open] .facets__display,
.facets__disclosure-vertical[open] .facets__display-vertical  {
  animation: animateMenuOpen var(--duration-default) ease;
}

.facets__summary span {
  transition: text-decoration var(--duration-short) ease;
}

.facets__summary:hover span {
  text-decoration: underline;
  text-underline-offset: 0.3rem;
}

.disclosure-has-popup[open] > .facets__summary::before {
  z-index: 2;
}

.facets__summary > span {
  line-height: calc(1 + 0.3 / var(--font-body-scale));
}

.facets__summary .icon-caret {
  right: 0;
}

.facets__display {
  border-width: var(--popup-border-width);
  border-style: solid;
  border-color: rgba(var(--color-foreground), var(--popup-border-opacity));
  border-radius: var(--popup-corner-radius);
  box-shadow: var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity));
  background-color: rgb(var(--color-background));
  position: absolute;
  top: calc(100% + 0.5rem);
  left: -1.2rem;
  width: 35rem;
  max-height: 55rem;
  overflow-y: auto;
}

.facets__header {
  border-bottom: 1px solid rgba(var(--color-foreground), 0.2);
  padding: 1.5rem 2rem;
  display: flex;
  justify-content: space-between;
  font-size: 1.4rem;
  position: sticky;
  top: 0;
  background-color: rgb(var(--color-background));
  z-index: 1;
}

.facets__list {
  padding: 0.5rem 2rem;
}

.facets__item {
  display: flex;
  align-items: center;
}

.facets__item label,
.facets__item input[type='checkbox'] {
  cursor: pointer;
}

.facet-checkbox {
  padding: 1rem 2rem 1rem 0;
  flex-grow: 1;
  position: relative;
  font-size: 1.4rem;
  display: flex;
  word-break: break-word;
}

.facet-checkbox input[type='checkbox'] {
  position: absolute;
  opacity: 1;
  width: 1.6rem;
  height: 1.6rem;
  top: 0.7rem;
  left: -0.4rem;
  z-index: -1;
  appearance: none;
  -webkit-appearance: none;
}

.no-js .facet-checkbox input[type='checkbox'] {
  z-index: 0;
}

.facet-checkbox > svg {
  background-color: rgb(var(--color-background));
  margin-right: 1.2rem;
  flex-shrink: 0;
}

.facet-checkbox .icon-checkmark {
  visibility: hidden;
  position: absolute;
  left: 0.3rem;
  z-index: 5;
  top: 1.4rem;
}

.facet-checkbox > input[type='checkbox']:checked ~ .icon-checkmark {
  visibility: visible;
}

@media screen and (forced-colors: active) {
  .facet-checkbox > svg {
    background-color: inherit;
    border: 0.1rem solid rgb(var(--color-background));
  }

  .facet-checkbox > input[type='checkbox']:checked ~ .icon-checkmark {
    border: none;
  }
}

.facet-checkbox--disabled {
  color: rgba(var(--color-foreground), 0.4);
  display: none;
}
.price-range .price-range-label .field__label[for="From"] {
    position: initial;
    font-size: 1rem;
    padding: 0 8px;
}
.price-range .price-range-label .field__label[for="To"] {
    position: initial;
    font-size: 1rem;
}
.price-range .price-range-label {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 8px;
}
.facets__price {
  display: none;
  padding: 2rem;
}

.facets__price .field + .field-currency {
  margin-left: 2rem;
}

.facets__price .field {
  align-items: center;
}

.facets__price .field-currency {
  align-self: center;
  margin-right: 0.6rem;
}

.facets__price .field__label {
  left: 1.5rem;
}

button.facets__button {
  min-height: 0;
  margin: 0 0 0 0.5rem;
  box-shadow: none;
  padding-top: 1.4rem;
  padding-bottom: 1.4rem;
}

.facets__button-no-js {
  transform: translateY(-0.6rem);
}

.active-facets {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  grid-column: 1 / -1;
  grid-row: 2;
  margin-top: -0.5rem;
}

.active-facets__button {
  display: block;
  margin-right: 1.5rem;
  margin-top: 1.5rem;
  padding-left: 0.2rem;
  padding-right: 0.2rem;
  text-decoration: none;
}

span.active-facets__button-inner {
  color: rgb(var(--color-foreground));
  box-shadow: 0 0 0 0.1rem rgb(var(--color-foreground));
  border-radius: 2.6rem;
  font-size: 1rem;
  min-height: 0;
  min-width: 0;
  padding: 0.5rem 1rem;
  display: flex;
  align-items: stretch;
}

span.active-facets__button-inner:before,
span.active-facets__button-inner:after {
  display: none;
}

.active-facets__button-wrapper {
  align-items: center;
  display: flex;
  justify-content: center;
  padding-top: 1.5rem;
}

.active-facets__button-wrapper * {
  font-size: 1rem;
}

@media screen and (min-width: 990px) {
  .active-facets__button {
    margin-right: 1.5rem;
  }

  .active-facets__button-wrapper *,
  span.active-facets__button-inner {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 989px) {
  .active-facets {
    margin: 0 -1.2rem -1.2rem;
  }

  .active-facets__button,
  .active-facets__button-remove {
    margin: 0;
    padding: 1.2rem;
  }

  span.active-facets__button-inner {
    padding-bottom: 0.3rem;
    padding-top: 0.3rem;
  }

  .active-facets__button-wrapper {
    padding-top: 0;
    margin-left: 1.2rem;
  }
}

.active-facets__button:hover .active-facets__button-inner {
  box-shadow: 0 0 0 0.2rem rgb(var(--color-foreground));
}

.active-facets__button--light .active-facets__button-inner {
  box-shadow: 0 0 0 0.1rem rgba(var(--color-foreground), 0.2);
}

.active-facets__button--light:hover .active-facets__button-inner {
  box-shadow: 0 0 0 0.2rem rgba(var(--color-foreground), 0.4);
}

a.active-facets__button:focus-visible {
  outline: none;
  box-shadow: none;
}

/* outline styling for Windows High Contrast Mode */
@media (forced-colors: active) {
  a.active-facets__button:focus-visible {
    outline: transparent solid 1px;
  }
}
a.active-facets__button.focused,
.no-js a.active-facets__button:focus {
  outline: none;
  box-shadow: none;
}

a.active-facets__button:focus-visible .active-facets__button-inner {
  box-shadow: 0 0 0 0.1rem rgba(var(--color-foreground), 0.2),
    0 0 0 0.2rem rgb(var(--color-background)),
    0 0 0 0.4rem rgb(var(--color-foreground));
  outline: none;
}

a.active-facets__button.focused .active-facets__button-inner,
.no-js a.active-facets__button:focus .active-facets__button-inner {
  box-shadow: 0 0 0 0.1rem rgba(var(--color-foreground), 0.2),
    0 0 0 0.2rem rgb(var(--color-background)),
    0 0 0 0.4rem rgb(var(--color-foreground));
  outline: none;
}

.active-facets__button svg {
  align-self: center;
  flex-shrink: 0;
  margin-left: 0.6rem;
  margin-right: -0.2rem;
  pointer-events: none;
  width: 1.2rem;
}

@media all and (min-width: 990px) {
  .active-facets__button svg {
    margin-right: -0.4rem;
    margin-top: 0.1rem;
    width: 1.4rem;
  }
}

.active-facets facet-remove:only-child {
  display: none;
}

.facets-vertical .active-facets .active-facets-vertical-filter:only-child > facet-remove {
  display: none;
}

.facets-vertical .active-facets-vertical-filter {
  display: flex;
  width: 100%;
  justify-content: space-between;
}

.facets-vertical .active-facets-vertical-filter .active-facets__button-wrapper {
  padding-top: 0;
  display: flex;
  align-items: flex-start;
}

.facets-vertical .active-facets__button {
  margin-top: 0;
}

.active-facets__button.disabled,
.mobile-facets__clear.disabled {
  pointer-events: none;
}

.mobile-facets__clear-wrapper {
  align-items: center;
  display: flex;
  justify-content: center;
}

.mobile-facets {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 100;
  background-color: rgba(var(--color-foreground), 0.5);
  pointer-events: none;
}

.mobile-facets__disclosure {
  display: flex;
}

.mobile-facets__wrapper {
  margin-left: 0;
  display: flex;
}

.mobile-facets__wrapper .disclosure-has-popup[open] > summary::before {
  height: 100vh;
  z-index: 3;
}

.mobile-facets__inner {
  background-color: rgb(var(--color-background));
  width: calc(100% - 5rem);
  margin-left: auto;
  height: 100%;
  overflow-y: auto;
  pointer-events: all;
  transition: transform var(--duration-short) ease;
  max-width: 37.5rem;
  display: flex;
  flex-direction: column;
  border-color: rgba(var(--color-foreground), var(--drawer-border-opacity));
  border-style: solid;
  border-width: 0 0 0 var(--drawer-border-width);
  filter: drop-shadow(
    var(--drawer-shadow-horizontal-offset)
    var(--drawer-shadow-vertical-offset)
    var(--drawer-shadow-blur-radius)
    rgba(var(--color-shadow), var(--drawer-shadow-opacity))
  );
}

.menu-opening .mobile-facets__inner {
  transform: translateX(0);
}

.js .disclosure-has-popup:not(.menu-opening) .mobile-facets__inner {
  transform: translateX(105vw);
}

.mobile-facets__header {
  border-bottom: 0.1rem solid rgba(var(--color-foreground), 0.08);
  padding: 1rem 2.5rem;
  text-align: center;
  display: flex;
  position: sticky;
  top: 0;
  z-index: 2;
}

.mobile-facets__header-inner {
  flex-grow: 1;
  position: relative;
}

.mobile-facets__info {
  padding: 0 2.6rem;
}

.mobile-facets__heading {
  font-size: calc(var(--font-heading-scale) * 1.4rem);
  margin: 0;
}

.mobile-facets__count {
  color: rgba(var(--color-foreground), 0.7);
  font-size: 1.3rem;
  margin: 0;
  flex-grow: 1;
}

.mobile-facets__open-wrapper {
  display: inline-block;
}

.mobile-facets__open {
  text-align: left;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  display: flex;
  align-items: center;
  color: rgba(var(--color-link), var(--alpha-link));
}

.mobile-facets__open:hover {
  color: rgb(var(--color-link));
}

.mobile-facets__open:hover line,
.mobile-facets__open:hover circle {
  stroke: rgb(var(--color-link));
}

.mobile-facets__open-label {
  transition: text-decoration var(--duration-short) ease;
}

.mobile-facets__open:hover .mobile-facets__open-label {
  text-decoration: underline;
  text-underline-offset: 0.3rem;
}

.mobile-facets__open > * + * {
  margin-left: 1rem;
}

.mobile-facets__open svg {
  width: 2rem;
}

.mobile-facets__open line,
.mobile-facets__open circle {
  stroke: rgba(var(--color-link), var(--alpha-link));
}

.mobile-facets__close {
  display: none;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0.7rem;
  right: 1rem;
  width: 4.4rem;
  height: 4.4rem;
  z-index: 101;
  opacity: 0;
  transition: opacity var(--duration-short) ease;
}

.mobile-facets__close svg {
  width: 2.2rem;
}

details.menu-opening .mobile-facets__close {
  display: flex;
  opacity: 1;
}

details.menu-opening .mobile-facets__close svg {
  margin: 0;
}

.mobile-facets__close-button {
  align-items: center;
  background-color: transparent;
  display: flex;
  font-size: 1.4rem;
  font: inherit;
  letter-spacing: inherit;
  margin-top: 1.5rem;
  padding: 1.2rem 2.6rem;
  text-decoration: none;
  width: calc(100% - 5.2rem);
}

.no-js .mobile-facets__close-button {
  display: none;
}

.mobile-facets__close-button .icon-arrow {
  transform: rotate(180deg);
  margin-right: 1rem;
}

.mobile-facets__main {
  padding: 2.7rem 0 0;
  position: relative;
  z-index: 1;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
}

.mobile-facets__details[open] .icon-caret {
  transform: rotate(180deg);
}

.no-js .mobile-facets__details {
  border-bottom: 1px solid rgba(var(--color-foreground), 0.04);
}

.mobile-facets__highlight {
  opacity: 0;
  visibility: hidden;
}

.mobile-facets__checkbox:checked + .mobile-facets__highlight {
  visibility: visible;
  opacity: 1;
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  display: block;
  background-color: rgba(var(--color-foreground), 0.04);
}

.mobile-facets__summary {
  padding: 1.3rem 2.5rem;
}

.mobile-facets__summary svg {
  margin-left: auto;
}

.mobile-facets__summary > div,
.facets__summary > div {
  display: flex;
  align-items: center;
}

.js .mobile-facets__submenu {
  position: absolute;
  top: 0;
  width: 100%;
  bottom: 0;
  left: 0;
  z-index: 3;
  transform: translateX(100%);
  visibility: hidden;
  display: flex;
  flex-direction: column;
}

.js details[open] > .mobile-facets__submenu {
  transition: transform 0.4s cubic-bezier(0.29, 0.63, 0.44, 1),
    visibility 0.4s cubic-bezier(0.29, 0.63, 0.44, 1);
}

.js details[open].menu-opening > .mobile-facets__submenu {
  transform: translateX(0);
  visibility: visible;
}

.js .menu-drawer__submenu .mobile-facets__submenu {
  overflow-y: auto;
}

.js .mobile-facets .submenu-open {
  visibility: hidden; /* hide menus from screen readers when hidden by submenu */
}

.mobile-facets__item {
  position: relative;
}

input.mobile-facets__checkbox {
  border: 0;
  position: absolute;
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  left: 2.1rem;
  top: 1.2rem;
  z-index: 0;
  appearance: none;
  -webkit-appearance: none;
}

.mobile-facets__label {
  padding: 1.5rem 2rem 1.5rem 2.5rem;
  width: 100%;
  transition: background-color 0.2s ease;
  word-break: break-word;
  display: flex;
}

.mobile-facets__label > svg {
  background-color: rgb(var(--color-background));
  position: relative;
  z-index: 2;
  margin-right: 1.2rem;
  flex-shrink: 0;
}

.mobile-facets__label .icon-checkmark {
  position: absolute;
  top: 1.9rem;
  left: 2.8rem;
  visibility: hidden;
}

.mobile-facets__label > input[type='checkbox']:checked ~ .icon-checkmark {
  visibility: visible;
}

.mobile-facets__arrow,
.mobile-facets__summary .icon-caret {
  margin-left: auto;
  display: block;
}

.mobile-facets__label--disabled {
  opacity: 0.5;
}

.mobile-facets__footer {
  border-top: 0.1rem solid rgba(var(--color-foreground), 0.08);
  padding: 2rem;
  bottom: 0;
  position: sticky;
  display: flex;
  z-index: 2;
  margin-top: auto;
  background-color:rgb(var(--color-background));
  background: var(--gradient-background);
}

.mobile-facets__footer > * + * {
  margin-left: 1rem;
}

.mobile-facets__footer > * {
  width: 50%;
}

.mobile-facets__footer noscript .button {
  width: 100%;
}

.mobile-facets__sort {
  display: flex;
  justify-content: space-between;
}

.mobile-facets__sort label {
  flex-shrink: 0;
}

.mobile-facets__sort .select {
  width: auto;
}

.no-js .mobile-facets__sort .select {
  position: relative;
  right: -1rem;
}

.mobile-facets__sort .select .icon-caret {
  right: 0;
}

.mobile-facets__sort .select__select {
  background-color: transparent;
  border-radius: 0;
  box-shadow: none;
  filter: none;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  padding-left: 0.5rem;
  padding-right: 1.5rem;
}

.product-count {
  align-self: center;
  position: relative;
  text-align: right;
}

.product-count__text {
  font-size: 1.4rem;
  line-height: calc(1 + 0.5 / var(--font-body-scale));
  margin: 0;
}

.product-count__text.loading {
  visibility: hidden;
}

.product-count .loading-overlay__spinner,
.product-count-vertical .loading-overlay__spinner  {
  display: none;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1.8rem;
}

.product-count__text.loading + .loading-overlay__spinner {
  display: block;
}
.price-filter-section {
  padding: 20px;
  background-color: #f4f4f4;
  border-radius: 8px;
  margin: 20px;
}

.price-range-slider {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}

input[type="range"] {
  -webkit-appearance: none;
  width: calc(100% - -1px);
  margin: 2px 0px 0;
  height: 8px;
  border-radius: 5px;
  outline: none;
}

input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 20px;
  height: 20px;
  background: #fff;
  cursor: pointer;
  border-radius: 50%;
  border: 1px solid #0d0d0d;
    box-shadow: 1px 1px 1px rgba(0,0,0,0.35);

}

input[type="range"]::-moz-range-thumb {
  width: 20px;
  height: 20px;
  background: #333;
  cursor: pointer;
  border-radius: 50%;
}

output {
  padding: 0.5rem 1rem;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 5px;
  font-size: 14px;
}

.price-range-submit {
  padding: 10px 20px;
  background-color: #0d0d0d;
  color: white;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 16px;
  margin-top: 10px;
}

.price-range-submit:hover {
  background-color: #2a2a2a;
}

@media screen and (min-width: 750px) {
  .facets-vertical {
    display: flex;
  }
  .facets-vertical.page-width{
    padding-inline:0px;
  }

  .facets-wrap-vertical {
    border: none;
    padding-left: 0;
  }
    
  .facets__form-vertical {
    display: flex;
    flex-direction: column;
    width: auto;
  }

  .facets__disclosure-vertical {
    border-top: 0.1rem solid rgba(var(--color-foreground), 0.1);
    margin-right: 0;
  }
  
  .facets-vertical .facets__summary {
    padding-top: 1.5rem;
    margin-bottom: 0;
    padding-bottom: 1.5rem;
  }
  
  .facets__heading--vertical {
    margin: 0 0 1.5rem 0;
    font-size: 1.5rem;
  }

  .facets__header-vertical {
    padding: 1.5rem 2rem 1.5rem 0;
    font-size: 1.4rem;
  }
  
  .facets__display-vertical {
    padding-bottom: 1.5rem;
  }
 
  .facets-vertical .facets-wrapper {
    padding-right: 3rem;
  }

  .facets-vertical .facets-wrapper--no-filters {
    display: none;
  }

  .no-js .facets-vertical .facets-wrapper--no-filters {
    display: block;
  }

  .facets-vertical .product-grid-container {
    width: 100%;
  }

  .facets-vertical-form {
    display: flex;
    justify-content: flex-end;
  }

  .product-count-vertical {
    margin-left: 3.5rem;
  }

  .facets-vertical .active-facets__button-wrapper {
    margin-bottom: 2rem;
  }

  .facets-vertical .no-js .facets__button-no-js {
    transform: none;
    margin-left: 0;
  }

  .facets-vertical .no-js .facet-filters__field {
    justify-content: flex-start;
    padding-bottom: 1rem;
    padding-top: 2rem;
  }

  .facets-vertical .facets__price {
    padding: 0.5rem 0.5rem 0.5rem 0;
  }

  .facets-vertical .facets__price .field:last-of-type {
    margin-left: 1rem;
  }

  .facets-vertical .active-facets__button {
    margin-bottom: 1.5rem;
  }

  .no-js .facets-vertical .facet-filters.sorting {
    padding-left: 0;
    flex-direction: column;
  }

  .facets-vertical .facet-checkbox input[type='checkbox'] {
    z-index: 0;
  }

  .no-js .facets-vertical .facets-container {
    display: flex;
    flex-direction: column;
  }

  .facets-vertical .active-facets facet-remove:last-of-type {
    margin-bottom: 1rem;
  }

  .facets-vertical .active-facets {
    margin: 0;
    align-items: flex-start;
  }

  .facets__disclosure-vertical[open] .facets__summary .icon-caret {
    transform: rotate(180deg);
  }
  
  .facets-container-drawer {
    display: flex;;
    flex-flow: row wrap;
    align-items: center;
    column-gap: 0;
  }

  .facets-container-drawer .mobile-facets__wrapper  {
    margin-right: 2rem;
    flex-grow: 1;
  }

  .facets-container-drawer .product-count {
    margin: 0 0 0.5rem 3.5rem;
  }

  .facets-container-drawer .facets-pill {
    width: 100%;
  }


  .facets-container-drawer .facets__form {
    display: block;
  }
}

@media screen and (min-width: 750px) and (max-width: 989px) {
  .facets-vertical .active-facets__button {
    padding: 1rem;
    margin-bottom: 0;f
    margin-left: -0.5rem;
  }

  .facets-vertical .active-facets__button-remove {
    padding: 0 1rem 1rem;
  }
}

details.Availability {
    display: none;
}

.facets__summary , .facets__item  , .label-show-more , .label-show-less{
    font-weight: 500;
}
/* ── Quick-win 2026-06-10: sidebar legibility + price preset buckets ── */
.facets__heading,
.facets__heading--vertical,
.facets__summary,
.facets__selected,
.facet-checkbox,
.facet-filters__label,
.label-show-more,
.label-show-less,
.mobile-facets__heading,
.mobile-facets__summary,
.mobile-facets__label {
  color: rgb(var(--color-foreground));
}
.facets__summary { font-weight: 600; }
.facet-checkbox { font-weight: 500; }
/* keep sold-out values visibly muted */
.facet-checkbox--disabled { color: rgba(var(--color-foreground), 0.45); }
.mobile-facets__label--disabled { opacity: 0.5; }
.mobile-facets__count { color: rgba(var(--color-foreground), 0.85); }

/* price slider thumb: neutral instead of blue */
.price-range input[type="range"]::-webkit-slider-thumb {
  border-color: rgb(var(--color-foreground));
  box-shadow: 1px 1px 1px rgba(var(--color-foreground), 0.45);
}
.price-range input[type="range"]::-moz-range-thumb {
  border: 1px solid rgb(var(--color-foreground));
  background: #fff;
}

/* price preset buckets (Under $1,000 / $1,000–$2,000 / $2,000+) */
.facets__price-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  padding: 0.2rem 0 1.4rem;
  margin: 0;
}
.facets__price-presets--mobile { padding: 1.2rem 2.6rem 0.4rem; }
.facets__price-preset {
  display: inline-block;
  padding: 0.7rem 1.3rem;
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1;
  color: rgb(var(--color-foreground));
  border: 0.1rem solid rgba(var(--color-foreground), 0.35);
  border-radius: 999px;
  text-decoration: none;
  transition: border-color var(--duration-short) ease, background-color var(--duration-short) ease;
}
.facets__price-preset:hover { border-color: rgb(var(--color-foreground)); }
.facets__price-preset.is-active {
  background-color: rgb(var(--color-foreground));
  color: rgb(var(--color-background));
  border-color: rgb(var(--color-foreground));
}
.facets__price-preset.disabled { opacity: 0.5; pointer-events: none; }

/* FF clean filter v3 */
/* === FF collection facets: color swatches (appended by _redesign2) === */
.ff-swatch{
  display:inline-block;
  width:22px;
  height:22px;
  border-radius:50%;
  vertical-align:middle;
  margin-right:8px;
  flex:0 0 auto;
  position:relative;
  box-sizing:border-box;
  line-height:0;
}
.ff-swatch--white{
  border:1px solid #d8d8d8;
}
/* selected: thin champagne-gold ring */
.ff-swatch--selected{
  box-shadow:0 0 0 2px #C9A96E;
}
.ff-swatch--white.ff-swatch--selected{
  box-shadow:0 0 0 2px #C9A96E;
}
/* centered checkmark on selected swatch */
.ff-swatch__check{
  position:absolute;
  top:50%;
  left:50%;
  width:11px;
  height:7px;
  transform:translate(-50%,-50%);
  color:#ffffff;
}
.ff-swatch--white .ff-swatch__check{
  color:#333333;
}
/* keep the checkbox row aligned with the swatch */
.facet-checkbox,
.mobile-facets__label{
  display:flex;
  align-items:center;
}

/* FF polish v4 */

/* === FF clean filter rail v4 (appended by _redesign4) === */

/* Item 1: price preset pills on ONE line, shrink to fit */
.facets__price-presets{
  flex-wrap:nowrap;
}
.facets__price-presets .facets__price-preset{
  white-space:nowrap;
  flex:0 1 auto;
  min-width:0;
  text-align:center;
}

/* Item 3: keep each filter value label on one line */
.facets__item .facet-checkbox > span[aria-hidden="true"],
.mobile-facets__label > span[aria-hidden="true"]{
  white-space:nowrap;
}
/* the swatch span is also aria-hidden but is fixed-size: keep it normal */
.facets__item .facet-checkbox > span.ff-swatch[aria-hidden="true"],
.mobile-facets__label > span.ff-swatch[aria-hidden="true"]{
  white-space:normal;
}

/* Item 2: color circle IS the control. Hide native box + native tick on swatch rows. */
.facet-checkbox:has(.ff-swatch) > svg,
.mobile-facets__label:has(.ff-swatch) > svg{
  display:none !important;
}
.facet-checkbox:has(.ff-swatch),
.mobile-facets__label:has(.ff-swatch){
  cursor:pointer;
}
.ff-swatch{ cursor:pointer; }
/* check hidden by default, shown when the row checkbox is checked */
.ff-swatch__check{ opacity:0; transition:opacity .12s ease; }
.facet-checkbox > input[type="checkbox"]:checked ~ .ff-swatch .ff-swatch__check,
.mobile-facets__label > input[type="checkbox"]:checked ~ .ff-swatch .ff-swatch__check{
  opacity:1;
}
/* gold ring on the selected circle, live via :checked */
.facet-checkbox > input[type="checkbox"]:checked ~ .ff-swatch,
.mobile-facets__label > input[type="checkbox"]:checked ~ .ff-swatch{
  box-shadow:0 0 0 2px #C9A96E;
}
/* white swatch: keep hairline border + gold ring together */
.facet-checkbox > input[type="checkbox"]:checked ~ .ff-swatch--white,
.mobile-facets__label > input[type="checkbox"]:checked ~ .ff-swatch--white{
  box-shadow:0 0 0 1px #d8d8d8, 0 0 0 3px #C9A96E;
}



/* FF filter rail v5 */

/* === FF clean filter rail v5 (appended by _redesign5) === */

/* Task 1: Color filter value list as a horizontal wrap grid (~5-6 per row).
   Scoped to the Color filter's value <ul> only; other filters unchanged. */
details.Color .facets__list,
details.Color ul.facets__list,
details.Color .facets-wrap-vertical > ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  align-content: flex-start;
}
details.Color .facets__list > .facets__item {
  flex: 0 0 auto;
  width: auto;
  margin: 0;
}
details.Color .facets__list .facet-checkbox {
  padding: 0;
  flex-grow: 0;
}

/* Task 2: push the horizontal Sort-by control fully to the right edge */
.facets__form .facet-filters.sorting {
  margin-left: auto;
}
.facets__form .facet-filters.sorting .facet-filters__field {
  justify-content: flex-end;
}

/* Task 4: robust swatch checkmark WITHOUT :has().
   .ff-color-row marker class is added in Liquid on color-filter rows. */
.facet-checkbox.ff-color-row > svg,
.mobile-facets__label.ff-color-row > svg {
  display: none !important;
}
.facet-checkbox.ff-color-row,
.mobile-facets__label.ff-color-row {
  cursor: pointer;
}
.ff-color-row .ff-swatch { cursor: pointer; }

/* unselected = plain circle, no check */
.ff-swatch__check {
  opacity: 0;
  transition: opacity .12s ease;
}

/* selected: input:checked adjacent-sibling (input precedes .ff-swatch) + server-rendered active fallback */
.ff-color-row > input[type="checkbox"]:checked ~ .ff-swatch .ff-swatch__check,
.ff-swatch--selected .ff-swatch__check {
  opacity: 1;
}
.ff-color-row > input[type="checkbox"]:checked ~ .ff-swatch,
.ff-swatch--selected {
  box-shadow: 0 0 0 2px #C9A96E;
}
.ff-color-row > input[type="checkbox"]:checked ~ .ff-swatch--white,
.ff-swatch--white.ff-swatch--selected {
  box-shadow: 0 0 0 1px #d8d8d8, 0 0 0 3px #C9A96E;
}
.ff-swatch--white .ff-swatch__check { color: #333; }


/* FF color grid tighten v6 */
details.Color .facets__list{ gap:4px 6px; }
details.Color .facets__list .facet-checkbox.ff-color-row{ margin:0; padding:0; }
.mobile-facets__list .mobile-facets__label.ff-color-row{ margin:0; padding:2px; }


/* FF color grid 3-per-row v7 */
details.Color .facets__list{ display:flex; flex-wrap:wrap; gap:6px; }
details.Color .facets__list .facet-checkbox.ff-color-row{ flex:0 0 calc(33.333% - 4px); max-width:calc(33.333% - 4px); margin:0; padding:0; }


/* FF color grid 3-per-row v8 (correct vertical selector) */
details.Color .facets-wrap-vertical > ul{ display:flex; flex-wrap:wrap; gap:6px; align-content:flex-start; }
details.Color .facets-wrap-vertical > ul > li{ flex:0 0 calc(33.333% - 4px); max-width:calc(33.333% - 4px); margin:0; padding:0; }


/* FF mobile color grid v8m */
.mobile-facets__list.ff-color-grid{ display:flex; flex-wrap:wrap; gap:6px; }
.mobile-facets__list.ff-color-grid > li{ flex:0 0 calc(33.333% - 4px); max-width:calc(33.333% - 4px); margin:0; }


/* FF v10: colors 4-per-row tighter + sort right & noticeable */
details.Color .facets-wrap-vertical > ul{ gap:4px; }
details.Color .facets-wrap-vertical > ul > li{ flex:0 0 calc(25% - 3px); max-width:calc(25% - 3px); }
.mobile-facets__list.ff-color-grid{ gap:4px; }
.mobile-facets__list.ff-color-grid > li{ flex:0 0 calc(25% - 3px); max-width:calc(25% - 3px); }
.facets-vertical-sort, .facets-vertical-form{ display:flex; justify-content:flex-end; width:100%; }
.facets-vertical-form .facet-filters.sorting{ margin-left:auto; }
.facets-vertical-sort .select{ border:1px solid rgba(var(--color-foreground),0.28); border-radius:6px; background:rgb(var(--color-background)); }
.facets-vertical-sort .facet-filters__sort{ padding:0.5rem 3rem 0.5rem 1.1rem; font-weight:600; }


/* FF v11: clear gold checked-state for regular filter checkboxes (Material/Shape/etc.) */
.facet-checkbox > input[type="checkbox"]:checked ~ svg:not(.icon-checkmark) rect{ fill:#C9A96E; stroke:#C9A96E; }
.facet-checkbox .icon-checkmark{ color:#fff; }


/* FF v12: cleaner, grounded collection H1 (was floating with 2.5rem margins + gradient box) */
.collection-hero__inner{ padding-top:1.4rem; }
.collection-hero__title{ margin:0 0 1.2rem; padding-bottom:1.2rem; border-bottom:1px solid rgba(var(--color-foreground),0.12); }


/* FF v13: round-3 — solid checkbox, no H1 underline+left, sort right/no-box, colors circles-only 2 rows */
.facet-checkbox > input[type="checkbox"]:checked ~ svg:not(.icon-checkmark){ background-color:#C9A96E; }
.facet-checkbox > input[type="checkbox"]:checked ~ svg:not(.icon-checkmark) rect{ fill:#C9A96E; stroke:#C9A96E; }
.collection-hero__title{ border-bottom:none; padding-bottom:0; margin-left:0; padding-left:0; }
.collection-hero__inner{ padding-left:0; }
.facets-vertical-sort .facet-filters.sorting{ padding-right:0; margin-right:0; }
.facets-vertical-sort .facet-filters__sort:focus, .facets-vertical-sort .select:focus-within, .facets-vertical-sort select:focus{ outline:none; box-shadow:none; }
details.Color .facets-wrap-vertical > ul{ display:grid; grid-template-columns:repeat(4, max-content); gap:8px 14px; justify-content:start; align-content:flex-start; }
details.Color .facets-wrap-vertical > ul > li{ width:auto; max-width:none; }
details.Color .facet-checkbox.ff-color-row{ font-size:0; padding:0; }
details.Color .ff-swatch{ font-size:1rem; }
.mobile-facets__list.ff-color-grid{ display:grid; grid-template-columns:repeat(4, max-content); gap:8px 14px; justify-content:start; }
.mobile-facets__label.ff-color-row{ font-size:0; padding:0; }


/* FF v14: pin sort hard-right (it was in a grid col w/ dead space) + restore H1 clean edge */
.facets-vertical-sort .facet-filters.sorting{ grid-column:1 / -1; justify-self:end; margin-left:auto; padding-left:0; }
.collection-hero__inner{ padding-left:1.5rem; }


/* FF v15: sort flush to the right edge */
.facets-vertical-sort{ width:100%; }
.facets-vertical-form{ width:100%; display:flex; justify-content:flex-end; }
.facets-vertical-form .facet-filters.sorting{ margin-left:auto; margin-right:0; padding-right:0; padding-left:0; }
.facets-vertical-form .facet-filters__field{ flex-grow:0; }


/* FF v16: flex the whole page-width sort container so the control hugs the right edge */
.facets-vertical-sort.page-width{ display:flex; justify-content:flex-end; }
.facets-vertical-sort .facets-vertical-form{ width:auto; max-width:100%; display:flex; justify-content:flex-end; }
.facets-vertical-sort .facet-filters.sorting{ margin:0 0 0 auto; padding:0; grid-column:auto; }
.facets-vertical-sort .facet-filters__field{ flex-grow:0; }


/* FF v17 sort-right */
/* ROOT CAUSE: products area .facets-vertical.page-width has padding-inline:0 (line ~1044),
   but the sort container .facets-vertical-sort.page-width keeps default .page-width desktop
   padding of 0 5rem (~80px each side). Same 120rem max-width box + margin:0 auto, so the
   sort right edge = box-right - 5rem while the grid right edge = box-right - 0. Every prior
   flex-end/margin-auto only hugged the sort to its OWN padded edge, still 5rem (~80px) short.
   FIX: zero the sort container's inline padding to match the products container, then the
   existing flex-end lands the dropdown flush with the rightmost product card. */
@media screen and (min-width: 750px) {
  .facets-vertical-sort.page-width{ padding-inline:0; padding-left:0; padding-right:0; }
  .facets-vertical-sort .facet-filters.sorting{ margin-right:0; padding-right:0; }
}

/* FF v17 h1-drop */
.collection-hero__inner{ padding-top:4rem; }
.collection-hero__title{ margin-top:1.6rem; }

/* FF sale was-price + chip */
.ff-was{text-decoration:line-through;color:#111;font-weight:400;margin-right:.4rem;}
.ff-save-chip{font-weight:700;}

/* FF view-in-store link */
.ff-view-store{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.2rem;font-size:1.4rem;font-weight:600;line-height:1;color:rgb(var(--color-foreground));border:1.5px solid rgb(var(--color-foreground));border-radius:4px;padding:.7rem 1.2rem;text-decoration:none;transition:background .15s,color .15s;}
.ff-view-store:hover{background:rgb(var(--color-foreground));color:rgb(var(--color-background));}
.ff-view-store svg{flex:0 0 auto;}
[id*="ff_store_block"]{scroll-margin-top:90px;}

/* FF mobile polish (<=749px): tighter top spacing + show card financing */
@media screen and (max-width:749px){
  .collection-hero__inner{padding-top:1.4rem!important;padding-bottom:.4rem!important;}
  .collection-hero__title{margin-top:.4rem!important;margin-bottom:.6rem!important;}
  .ff-view-store{margin-top:.8rem;font-size:1.3rem;padding:.6rem 1rem;}
  #product-grid,.product-grid{margin-top:.8rem!important;}
  .card .inst-text.mob{display:block!important;font-size:12px!important;margin-top:2px!important;color:rgba(var(--color-foreground),0.72);}
  .card .inst-text.desk{display:none!important;}
}

/* FF mobile filter button (<=749px): prominent Filter & Sort tap target */
@media screen and (max-width:749px){
  .mobile-facets__open{display:flex!important;align-items:center;justify-content:center;gap:.6rem;width:100%;box-sizing:border-box;border:1.5px solid rgb(var(--color-foreground))!important;border-radius:8px;padding:1.1rem 1.4rem!important;font-weight:600;font-size:1.5rem;}
  .mobile-facets__open svg{width:1.8rem;height:1.8rem;}
  .mobile-facets__disclosure{width:100%;}
}

/* FF bestseller + scarcity chips */
.ff-bestseller-chip{display:inline-block;background:#1a1a1a;color:#fff;font-size:1.1rem;font-weight:700;padding:.3rem .7rem;border-radius:3px;text-transform:uppercase;letter-spacing:.03em;}
.ff-scarcity{display:inline-block;color:#c0392b;font-size:1.2rem;font-weight:600;margin-top:.2rem;}

/* FF mobile filter expand (<=749px): show all values inline like desktop */
@media screen and (max-width:749px){
  .mobile-facets__submenu{position:static!important;transform:none!important;visibility:visible!important;height:auto!important;opacity:1!important;box-shadow:none!important;padding-top:.4rem;}
  .mobile-facets__details > .mobile-facets__submenu > .mobile-facets__close-button{display:none!important;}
  .mobile-facets__summary .mobile-facets__arrow{display:none!important;}
  .mobile-facets__details{border-bottom:1px solid rgba(var(--color-foreground),.1);}
}

/* FF popular chip (lighter than bestseller) */
.ff-popular-chip{display:inline-block;background:#fff;color:#1a1a1a;border:1px solid #1a1a1a;font-size:1.05rem;font-weight:600;padding:.25rem .6rem;border-radius:3px;text-transform:uppercase;letter-spacing:.03em;}

/* FF single filter footer + view-store beside filter (<=749px) */
@media screen and (max-width:749px){.mobile-facets__submenu .mobile-facets__footer{display:none!important;} .ff-filter-row{display:flex;align-items:center;gap:8px;} .ff-filter-row .mobile-facets__wrapper{flex:1 1 auto;} .ff-filter-row .mobile-facets__open{width:auto!important;} .ff-filter-row .ff-view-store{flex:0 0 auto;white-space:nowrap;}}

/* FF top-right sale callout (desktop dead-space) */

.ff-promo-callout{flex:0 0 auto;text-align:right;line-height:1.05;}
.ff-promo-callout__top{display:block;font-size:1.2rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#C9A96E;}
.ff-promo-callout__big{display:block;font-size:2.4rem;font-weight:700;color:rgb(var(--color-foreground));}
@media screen and (max-width:749px){.collection-hero__inner{display:block;} .ff-promo-callout{display:none;}}

/* FF v2: scarce chip + center colors + chat-hide + promo redesign */
.ff-scarce-chip{display:inline-block;background:#c0392b;color:#fff;font-size:1.05rem;font-weight:700;padding:.25rem .6rem;border-radius:3px;text-transform:uppercase;letter-spacing:.03em;}
.ff-scarcity{display:none!important;}
details.Color .facets-wrap-vertical > ul,.mobile-facets__list.ff-color-grid{justify-content:center;}
body:has(.mobile-facets__disclosure[open]) [id*="gorgias" i],body:has(.mobile-facets__disclosure[open]) [class*="gorgias" i],body:has(.mobile-facets__disclosure[open]) [id*="chat-" i]{display:none!important;}
.ff-promo-callout{align-self:flex-start;text-align:center;padding:1.1rem 1.8rem;border:1.5px solid #C9A96E;border-radius:10px;background:linear-gradient(180deg,rgba(201,169,110,.09),rgba(201,169,110,.02));}
.ff-promo-callout__top{display:block;font-size:1.15rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#C9A96E;}
.ff-promo-callout__big{display:block;font-size:2.6rem;font-weight:800;line-height:1.1;margin:.2rem 0;color:rgb(var(--color-foreground));}
.ff-promo-callout__sub{display:block;font-size:1.05rem;letter-spacing:.05em;color:rgba(var(--color-foreground),.55);}

/* FF scarce green + price color (black default, red only on sale) */
.ff-scarce-chip{background:#1e8449!important;}
.card .price:not(.ff-price-sale) .price-item--regular,.card .price:not(.ff-price-sale) .price__regular .price-item--regular{color:rgb(var(--color-foreground))!important;}
.card .price.ff-price-sale .price-item--regular{color:#c0392b!important;}

/* FF Ashley card box: gray outline + hover shadow, bolder titles, smaller mobile filter */
.card-wrapper{border:1px solid #e3e3e3;border-radius:10px;overflow:hidden;background:#fff;transition:box-shadow .18s ease,border-color .18s ease;}
.card-wrapper:hover{border-color:#cdcdcd;box-shadow:0 6px 18px rgba(0,0,0,.09);}
.card__content{padding:0 1.3rem 1.3rem;}
.card__media_thumbnails{padding:.7rem 1.3rem 0;}
.card__heading,.card__heading a,.card__heading .full-unstyled-link{color:#1a1a1a!important;font-weight:400!important;}
@media screen and (max-width:749px){.mobile-facets__open{padding:.7rem .9rem!important;font-size:1.3rem!important;}}

/* FF swatch "+N" overflow tile */
.ff-swatch-more{display:flex!important;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;color:#555;background:#f2f2f2;border:1px solid #e3e3e3;}
.ff-swatch-more img{display:none;}

/* FF mobile toolbar: filter + find-a-store on one line */
.ff-mobile-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:1rem;}
.ff-mobile-toolbar .mobile-facets__wrapper{flex:1 1 auto;margin-bottom:0;}
.ff-mobile-toolbar .mobile-facets__open{width:auto!important;}
.ff-vs-mobile{flex:0 0 auto;white-space:nowrap;margin-top:0;}
@media screen and (min-width:750px){.ff-mobile-toolbar{display:none!important;}}
@media screen and (max-width:749px){.collection-hero__text-wrapper .ff-view-store{display:none!important;}}

/* FF Ashley spacing v2 + stronger sale red + one-line swatches + gray +N */
.card .price.ff-price-sale .price-item--regular{color:#e30613!important;}
.card__content{padding:1rem 1.3rem 1.5rem!important;}
.card .ff-prodrev--card{margin-bottom:.5rem;}
.card__heading{margin:0 0 .7rem!important;line-height:1.35;}
.card .price{margin-bottom:.6rem!important;}
.card .inst-text{margin-top:.3rem!important;}
.card__media_thumbnails .color-options{display:flex;flex-wrap:nowrap!important;gap:.4rem;overflow:hidden;}
.card__media_thumbnails .color-option{flex:0 1 auto;min-width:0;}
.card__media_thumbnails .color-option img{width:100%;height:auto;}
.ff-swatch-more{background:#ededed!important;color:#444!important;}

/* FF spacing tighten + financing one line (override v2) */
.card__content{padding:.5rem 1rem 1.1rem!important;}
.card__heading{margin:0 0 .35rem!important;}
.card .price{margin-bottom:.25rem!important;}
.card .ff-prodrev--card{margin-bottom:.25rem!important;}
.card .inst-text{margin-top:.1rem!important;white-space:nowrap!important;font-size:11px!important;}

/* ============================================================
   FF v18 (2026-08-09): compressed, premium desktop sidebar
   Scope: desktop vertical facets sidebar only (>=990px). Mobile
   drawer (.mobile-facets__*) intentionally left alone except the
   shared .ff-zero-count hide rule, which is safe everywhere.
   ============================================================ */

/* --- 1. Compression: tighter groups, rows, dividers --- */
@media screen and (min-width: 990px) {
  .facets-vertical .facets__disclosure-vertical{
    border-top-color:#e6e3dd;
    margin-right:0;
  }
  .facets-vertical .facets__summary{
    padding-top:0.9rem;
    padding-bottom:0.9rem;
    margin-bottom:0;
    font-size:1.3rem;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:#3a3733;
  }
  .facets-vertical .facets__selected{
    text-transform:none;
    letter-spacing:normal;
    font-weight:500;
    color:#6d6a64;
  }
  .facets-vertical .facets__display-vertical{
    padding-bottom:0.9rem;
  }
  .facets-vertical .facets-wrap-vertical{
    padding-left:0;
  }
  .facets-vertical .facet-checkbox{
    padding:0.45rem 1rem 0.45rem 0;
    font-size:1.3rem;
    min-height:28px;
    font-weight:400;
  }
  .facets-vertical .facets__item{
    align-items:center;
  }
}

/* ============================================================
   FF v21 (2026-08-10/11, wip60): REVERT of v19/v20's narrowed sidebar.
   QA_SWEEP defect flagged the card-size tradeoffs (clipped price pills
   at 175px, stacked pills + wrapped labels needed even at the 195px
   fallback) as an unfair cost for a ~1.3-10% card-size gain. Owner
   decision 2026-08-10/11: go back to slightly smaller images — restore
   the sidebar to its pre-wip51 auto-sized width and let the cards take
   whatever grid space is left, rather than pinning the sidebar to force
   cards bigger.

   Original (pre-wip51) rule was simply `.facets-vertical .facets-wrapper
   { padding-right: 3rem; }` — no explicit width/flex-basis, so the
   sidebar sized itself to its own content (landed at ~235px content-box,
   ~265px+ once the 3rem/48px padding is included, per the wip51 commit
   note). Restoring that literally (no explicit width pin) rather than
   guessing a fixed px figure, so it's exactly back to what it was.

   The min-width:0 blowout fix (wip59) is KEPT — that's a genuine
   overflow-hardening fix independent of the width value (without it,
   flex/grid descendants can refuse to shrink below their own intrinsic
   width and overflow their box regardless of how wide the sidebar is).
   Same for the facets-container grid-template-columns:minmax(0,1fr)
   fix, which is part of the same hardening.

   The stacked-price-pills, wrapped-checkbox-labels, and wrapped
   price-range-inputs workarounds from v19/v20 (needed only because the
   sidebar was squeezed to 175-195px) are REMOVED here — verified live
   at 1280/1600/1920/2560 that both price pills fit side by side again
   and the longest checkbox label ("5 Piece Living Room Sets (1)") sits
   on one line at the restored width, so none of those workarounds are
   still required. */
@media screen and (min-width: 990px) {
  .facets-vertical .facets-wrapper {
    padding-right: 3rem;
  }
  /* Grid/flex blowout fix (wip59) — KEPT per owner instruction, unrelated
     to the width value itself: lets every descendant shrink to the
     sidebar's actual width instead of forcing it wide enough for its own
     content and overflowing the box. */
  .facets-vertical .facets-wrapper * {
    min-width: 0;
  }
  .facets-vertical .facets-container {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* --- 2. Checkboxes: 16px, 3px radius, subtle border, brand-green checked state --- */
.facet-checkbox > svg:not(.icon-checkmark){
  width:16px;
  height:16px;
}
.facet-checkbox > svg:not(.icon-checkmark) rect{
  stroke:#c9c5be;
  rx:3;
  ry:3;
}
.facet-checkbox > input[type="checkbox"]:checked ~ svg:not(.icon-checkmark) rect{
  fill:#1f7a4d;
  stroke:#1f7a4d;
}
.facet-checkbox .icon-checkmark{
  color:#ffffff;
}

/* --- 3. "Show more" restyle: quieter link, count in the label --- */
.ff-show-more{
  font-size:1.2rem;
  color:#6d6a64;
  text-decoration:none;
  box-shadow:none;
  min-height:0;
  padding:0.4rem 0 0;
  margin:0;
  background:transparent;
  border:0;
}
.ff-show-more:hover,
.ff-show-more:hover .label-show-more,
.ff-show-more:hover .label-show-less{
  text-decoration:underline;
  text-underline-offset:0.2rem;
}
.ff-show-more .label-show-more,
.ff-show-more .label-show-less{
  font-size:1.2rem;
  font-weight:500;
  color:#6d6a64;
}

/* --- 4. Zero-count facet values: hidden unless currently active (liquid guards that) --- */
.ff-zero-count{
  display:none !important;
}

/* --- 5. Results count: quiet, server-rendered, near the top of the sidebar ---
   (The theme's own #ProductCount / #ProductCountDesktop spans are dead JS-only
   placeholders that never get populated with text even after filtering, so we
   render this ourselves in facets.liquid instead of relying on them.) */
.ff-product-count-vertical{
  margin:0 0 1.2rem;
  text-align:left;
}
.ff-product-count-vertical .ff-product-count-text{
  font-size:1.2rem;
  color:#6d6a64;
  font-weight:400;
  margin:0;
}
/* left empty by liquid once a filter is active (see facets.liquid comment); hide the
   wrapper entirely rather than show a blank line */
.ff-product-count-vertical .ff-product-count-text:empty{
  display:none;
}
.ff-product-count-vertical:has(.ff-product-count-text:empty){
  display:none;
}

/* --- 6. Active filter chips: quiet neutral pill, green "Clear all" --- */
.facets-vertical span.active-facets__button-inner{
  background-color:#f4f2ee;
  border:1px solid #d8d4cd;
  box-shadow:none;
  color:#3a3733;
  font-size:1.2rem;
  border-radius:4px;
  font-weight:400;
}
.facets-vertical .active-facets__button:hover .active-facets__button-inner{
  box-shadow:none;
  border-color:#c9c5be;
}
.facets-vertical .active-facets__button svg{
  color:#6d6a64;
}
.facets-vertical .active-facets-vertical-filter .active-facets__button-remove,
.facets-vertical .active-facets__button-wrapper .active-facets__button-remove{
  color:#1f7a4d;
  font-size:1.2rem;
  font-weight:600;
  text-decoration:underline;
  text-underline-offset:0.2rem;
}

/* --- 7. Colour facet: 14px swatch dot before the (still-visible) name --- */
/* Undo the earlier circles-only grid (font-size:0 hid the label text); restore
   a normal, compressed row list matching every other facet group. */
.facets-vertical details.Color .facets-wrap-vertical > ul{
  display:block;
}
.facets-vertical details.Color .facets-wrap-vertical > ul > li{
  width:100%;
  max-width:none;
  display:block;
  margin:0;
}
.facets-vertical details.Color .facet-checkbox.ff-color-row{
  font-size:1.3rem;
  padding:0.45rem 1rem 0.45rem 0;
  display:flex;
  align-items:center;
}
.ff-swatch{
  width:14px;
  height:14px;
  margin-right:9px;
}
.ff-swatch--selected,
.facet-checkbox > input[type="checkbox"]:checked ~ .ff-swatch{
  box-shadow:0 0 0 2px #1f7a4d;
}
.ff-swatch--white.ff-swatch--selected,
.facet-checkbox > input[type="checkbox"]:checked ~ .ff-swatch--white{
  box-shadow:0 0 0 1px #d8d8d8, 0 0 0 3px #1f7a4d;
}
.ff-swatch__check{
  width:8px;
  height:5px;
}

/* --- 8. Sort by: compact, quiet select to match the redesign --- */
.facets-vertical-sort .select{
  border:1px solid #c9c5be;
  border-radius:4px;
  background:#ffffff;
  height:34px;
  display:flex;
  align-items:center;
}
.facets-vertical-sort .facet-filters__sort{
  font-size:1.3rem;
  height:32px;
  line-height:32px;
  padding:0 2.6rem 0 1rem;
  color:#3a3733;
}

/* --- 9. Sticky sidebar: SKIPPED (tested, does not work in this layout) ---
   Tried position:sticky on #FacetsWrapperDesktop, top:90px. Two problems surfaced
   in-browser: (1) the immediate ancestor chain (.facets-container is a CSS grid
   sized to auto/content, so it and everything below it is only ~700px tall even
   though the <aside id="main-collection-filters"> around it is stretched via flex
   to the full ~3000px product-grid height) — fixable by forcing height:100% down
   the chain, which was tried and did stretch the containers correctly, BUT (2) even
   after that fix the element still scrolled away instead of sticking, traced to
   `body.gradient { overflow: hidden; }`, a site-wide rule outside this file's scope.
   Any ancestor with overflow != visible changes how position:sticky resolves its
   containing/clipping context, and with overflow:hidden on <body> itself (not a
   dedicated scroll container) the sticky positioning never engages relative to the
   viewport. This is exactly the "container has overflow issues" case the spec asked
   to skip on — fixing it would mean changing global <body> overflow behavior, which
   is out of scope (not one of the two owned files) and too high-risk to touch
   speculatively (that rule likely exists on purpose, e.g. to prevent horizontal
   scroll from an animation/parallax element elsewhere on the page). */

/* FF 2026-08-09 EVE (Tyson): result counts beside every facet value */
.ff-facet-count { color: #9a968e; font-size: 11.5px; margin-left: 5px; }
.mobile-facets__label .ff-facet-count { font-size: 12px; }

/* ============================================================
   WIP458 (2026-08-19): mobile "Filter and sort" drawer fixes
   (owner report: rows overlapped/uncoverable, swatches unlabeled,
   drawer glitchy on open, lists always fully expanded, footer
   covers the last row). Additive-only, scoped to the mobile
   breakpoint used elsewhere in this theme (max-width: 989px).
   ============================================================ */
@media screen and (max-width: 989px) {

  /* --- Task 1 + 3: overlap / "glitches when I click it" ---------------
     Root cause confirmed live (not guessed): assets/ff-header-ext.css
     sets `#shopify-section-header{position:relative;z-index:999999}`
     at max-width:749px. That header is a DOM sibling of this drawer,
     not an ancestor, so both establish their own top-level stacking
     context and paint order is decided purely by z-index. The drawer
     (.mobile-facets, position:fixed) was z-index:100 -> the sticky
     site header (999999) painted OVER the drawer's own header and the
     first ~1-2 facet rows underneath it, so taps there landed on
     header chrome instead of the filter controls (the "glitch").
     Fix: push the drawer's stacking context above the header's,
     without touching ff-header-ext.css (out of scope for this pass). */
  .mobile-facets {
    z-index: 1000001;
  }
  .mobile-facets__close {
    z-index: 1000002;
  }

  /* --- Task 2: swatches need a visible colour name, not just a dot
     + count. The name span was already in the markup
     (`<span aria-hidden="true">{{ value.label }}</span>`) but a prior
     "circles-only" pass (v13, see `.mobile-facets__label.ff-color-row`
     above) zeroed the whole label's font-size for a dot-only desktop
     look; on mobile that also silently killed the name text (the count
     stayed visible because `.ff-facet-count` restores its own
     font-size two rules above). Restore it for the name span only —
     desktop's circles-only design is untouched. */
  .mobile-facets__label.ff-color-row > span[aria-hidden="true"]:not(.ff-swatch):not(.ff-facet-count) {
    font-size: 1.3rem;
    line-height: 1.3;
    margin-left: 0.2rem;
  }

  /* Give the name room: the 4-per-row dot grid was sized for
     circles-only. With a name + count on each row, one row per
     colour reads far more clearly on a 390px-wide screen. */
  .mobile-facets__list.ff-color-grid {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
  .mobile-facets__list.ff-color-grid > li {
    width: 100%;
  }
  .mobile-facets__label.ff-color-row {
    width: 100%;
    min-height: 4.4rem;
    padding: 0.6rem 0.4rem;
  }

  /* --- Task 5: sticky Remove all / Apply footer covers the last row ---
     `.mobile-facets__footer` is `position: sticky; bottom: 0;` inside
     `.mobile-facets__main`, which is the scrolling container
     (overflow-y: auto). A sticky element doesn't reserve space for
     itself in that container's scrollable content, so the last facet
     row scrolls to sit exactly behind it. Reserve that space with
     padding-bottom on the scroll container (roughly the footer's own
     rendered height: 2 x 2rem padding + ~4.4rem button row + border). */
  .mobile-facets__main {
    padding-bottom: 9rem;
  }
}
