/** Shopify CDN: Minification failed

Line 2500:0 Unexpected "}"

**/
@media screen and (min-width: 750px) {
  .facet-drawer--open .shopify-section-header-sticky,
  .facet-drawer--opening .shopify-section-header-sticky,
  .facet-drawer--closing .shopify-section-header-sticky {
    z-index: 101;
  }

  .facet-drawer--open announcement-bar[data-compact=false].marquee .announcement-slider {
    animation-play-state: paused;
  }

  .no-js facet-drawer .disclosure-has-popup[open] > summary::before {
    height: 100vh;
    cursor: url(cross.svg),url(cross.png),zoom-out;
    background-color: rgba(var(--color-overlay), 0.5);
  }
}

.facet-drawer--open,
.facet-drawer--opening,
.facet-drawer--closing {
  overflow: hidden;
}

.facet-drawer--open .transition-content,
.facet-drawer--opening .transition-content,
.facet-drawer--closing .transition-content,
.facet-drawer--open .header-wrapper,
.facet-drawer--opening .header-wrapper,
.facet-drawer--closing .header-wrapper,
.facet-drawer--open .announcement-bar,
.facet-drawer--opening .announcement-bar,
.facet-drawer--closing .announcement-bar {
  padding-inline-end: var(--scrollbar-width);
}

.facet-drawer--open .transition-body::after,
.facet-drawer--opening .transition-body::after {
  opacity: 1;
  pointer-events: visible;
}

.facet-drawer--open .shopify-section-filters-sticky,
.facet-drawer--opening .shopify-section-filters-sticky,
.facet-drawer--closing .shopify-section-filters-sticky {
  transform: none !important;
}

.facet-drawer--open .shopify-section-header.shopify-section-header-sticky,
.facet-drawer--opening .shopify-section-header.shopify-section-header-sticky,
.facet-drawer--closing .shopify-section-header.shopify-section-header-sticky {
  transform: translateY(-100%);
}

.facet-drawer--open .facet-filters,
.facet-drawer--opening .facet-filters,
.facet-drawer--closing .facet-filters {
  position: static;
}

.product-count {
  position: relative;
  display: flex;
  align-items: center;
  white-space: nowrap;
}

.facets__form .product-count {
  justify-content: flex-end;
}

.mobile-facets .product-count {
  justify-content: center;
}

.product-count__text {
  margin: 0;
  font-size: 1.4rem;
  color: rgba(var(--color-foreground), 0.7);
}

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

.product-count .loading-overlay__spinner {
  display: none;
  position: absolute;
  width: 1.8rem;
  height: 1.8rem;
}

.product-count__text.loading + .loading-overlay__spinner {
  display: block;
}

.facet-filters {
  position: relative;
  top: 0;
  z-index: 15;
  display: flex;
  flex-direction: column;
  transition: transform var(--duration-default) ease;
}

@media screen and (min-width: 750px) {
  .facet-filters {
    display: block;
  }

  .facet-filters > * + * {
    margin-top: 0;
    margin-inline-start: 2rem;
  }
}

.facet-filters-sticky {
  position: sticky;
}

.facet-filters > .page-width {
  width: 100%;
  /* padding-top: 1.5rem;
  padding-bottom: 1.5rem; */
  background-color: rgb(var(--color-background));
}

.facet-filters__label {
  display: block;
  color: rgba(var(--color-foreground), 0.85);
  font-size: 1.4rem;
  line-height: 1;
  margin: 0 0 1rem;
  width: 100%;
}

.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: 24rem;
  margin-top: 2.4rem;
  border: 0.1rem solid rgb(var(--color-border));
}

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

.facets__wrapper {
  display: flex;
}

[data-button-round] .facets__wrapper {
  column-gap: 2rem;
}

.facet-filters__disclosure {
  min-width: 24rem;
}

.facet-filters__disclosure summary::after {
  top: 0;
}

.facet-filters__disclosure a {
  color: rgb(var(--color-foreground));
  cursor: pointer;
  display: block;
  padding: 1.2rem;
  text-transform: capitalize;
  text-decoration: none;
}

.facet-filters__sort {
  height: 4rem;
}

@media screen and (min-width: 750px) {
  .facet-filters__sort {
    /* width: 20rem; */
    max-width: 100%;
  }

  .facet-filters__sort .facets__display {
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
  }

  .facet-filters__sort .facets__display::-webkit-scrollbar {
    appearance: none;
    height: 0.3rem;
    border-radius: 1.6rem;
    background-color: rgba(var(--color-border), 0.3);
  }
  
  .facet-filters__sort .facets__display::-webkit-scrollbar-thumb {
    border-radius: 1.6rem;
    background-color: rgb(var(--color-border));
  }
}

.facets {
  display: block;
}

.facets__form {
  /* display: grid; */
 /*  grid-template-columns: 1fr auto;
  row-gap: 2rem; */
  /* column-gap: 2rem; */
 /*  align-items: center; */
}

.no-js .facets__form {
  grid-template-columns: 1fr;
}

facet-drawer .disclosure-has-popup {
  position: static;
}

facet-drawer .facets__display {
  width: 100%;
  max-width: min(90rem, calc(100vw - 10rem));
  max-height: 0;
  border: none;
  box-shadow: 0 0 4rem rgba(var(--color-foreground), 0.2);
}

.js facet-drawer details[open] > .facets__display {
  transition-property: max-height, visibility;
  transition-duration: var(--duration-long);
  transition-timing-function: ease;
}

.no-js facet-drawer details[open] > .facets__display,
.js facet-drawer details[open].menu-opening > .facets__display {
  max-height: 55rem;
  visibility: visible;
}

.facets__inner {
  max-height: 55rem;
  overflow-y: hidden;
  overflow-x: auto;
  scroll-snap-type: y mandatory;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: auto;
}

.facets__inner::-webkit-scrollbar {
  appearance: none;
  width: 0.9rem;
  background-clip: padding-box;
  border: 0.3rem solid transparent;
  border-radius: 1.6rem;
  background-color: rgba(var(--color-border), 0.3);
}

.facets__inner::-webkit-scrollbar-thumb {
  border: 0.3rem solid transparent;
  background-clip: padding-box;
  border-radius: 1.6rem;
  background-color: rgb(var(--color-border));
}

.facets__main {
  display: flex;
  flex-wrap: wrap;
}

/* .facets__main > .js-filter {
  flex: 1 0 25%;
  margin-bottom: 2rem;
} */

.facets__main > .facets__footer {
  flex: 0 0 100%;
  z-index: 1;
  position: sticky;
  bottom: 0;
}

.facets__footer {
  background-color: rgb(var(--color-background));
  /* border-top: 0.1rem solid rgb(var(--color-border)); */
  padding: 2rem;
}

.facets__footer button {
  margin-block-start: 0;
  margin-inline-end: 2rem;
  min-width: 16rem;
  max-width: 100%;
}

.facets__footer button + facet-remove {
  display: inline-block;
  font-size: 1.6rem;
}

.facets__footer noscript .button {
  margin-top: 2rem;
  width: 100%;
}

.facets__selected {
  display: flex;
  align-items: center;
  font-size: 1.6rem;
  line-height: calc(1 + 0.3 / var(--font-body-scale));
  color: rgb(var(--color-heading));
  min-width: max-content;
}

.facets__selected h4 {
  margin: 0;
}

.facets__heading {
  display: block;
  color: rgba(var(--color-foreground), 0.85);
  font-size: 1.4rem;
  line-height: 1;
  margin: 0 0 1rem 0.6rem;
  width: 100%;
}

.facets__reset {
  margin: 1rem 2rem 1.5rem;
  padding-bottom: 0.2rem;
}

.facets__summary > span {
  display: flex;
  justify-content: start;
  min-width: auto;
  padding-inline-end: 3.5rem;
  line-height: calc(1 + 0.3 / var(--font-body-scale));
}

.facets__summary .icon-plus {
  position: absolute;
  top: 50%;
  right: 1.5rem;
  margin-top: -0.5rem;
  height: 1rem;
}

.facets__count-bubble {
  position: relative;
  padding-inline-end: 1rem;
}

.facets__count-bubble .count-bubble {
  width: 0.6rem;
  height: 0.6rem;
  position: absolute;
  margin: 0;
  color: inherit;
  background-color: currentColor;
  transition-property: background-color;
}

.facets__count-bubble .count-bubble::before {
  content: none;
}

.facet-filters__sort[open] > summary + .facets__display {
  animation: appear-down var(--duration-default) ease;
}

.facets__display {
  background-color: rgb(var(--color-background));
  position: absolute;
  border: 0.1rem solid rgb(var(--color-border));
  width: 35rem;
  max-height: 55rem;
  overflow: hidden;
  z-index: 10000000000000;
}

.sorting .facets__display {
  z-index: 10000000000001 !important;
}

.facets__display .field__input {
  height: 4rem;
}

.facets__header {
  border-bottom: 0.1rem solid rgb(var(--color-border));
  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: 15;
}

.facets__list {
  padding: 0.8rem 2rem;
}

.facets__item {
  display: flex;
  align-items: center;
  padding: 1rem 0;
}

.facets__item label:not(.facet-checkbox--disabled),
.facets__item input[type=checkbox] {
  cursor: pointer;
}

.facet-checkbox {
  position: relative;
  font-size: 1.4rem;
  display: flex;
  align-items: center;
  word-break: break-word;
  line-height: 1.6rem;
}

.facet-checkbox .caption-with-letter-spacing {
  white-space: nowrap;
}

.facet-checkbox input[type=checkbox] {
  clip: rect(0, 0, 0, 0);
  overflow: hidden;
  position: absolute;
  height: 0.1rem;
  width: 0.1rem;
}

.facet-checkbox .icon {
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  margin-inline-end: 1rem;
  position: relative;
  border: 1px solid rgb(var(--color-border));
  border-radius: min(var(--button-radius), 0.2rem);
}

.facet-checkbox .icon::after {
  content: '';
  width: 0.6rem;
  height: 0.6rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: currentColor;
  border-radius: min(var(--button-radius), 0.15rem);
  opacity: 0;
  transition: opacity 0.15s ease;
}

.facet-checkbox > input[type=checkbox]:checked ~ .icon::after {
  opacity: 1;
}

.facet-checkbox--disabled {
  color: rgba(var(--color-foreground), 0.4);
}

.facet-checkbox .label {
  display: flex;
  align-items: center;
  position: relative;
  white-space: nowrap;
}

.facet-checkbox .label::before {
  content: '';
  height: 0.1rem;
  width: 0;
  display: block;
  transform: translateX(-0.5rem);
  background-color: currentColor;
  transition: width var(--duration-default) ease;
}

.facet-checkbox .label::after {
  content: '';
  position: absolute;
  height: 0.1rem;
  background-color: currentColor;
  width: 0;
  bottom: -0.2rem;
  left: auto;
  right: 0;
  transition: width var(--duration-default) ease;
}

.facet-checkbox input[type=radio]:checked ~ .label {
  cursor: default;
  color: rgba(var(--color-foreground), 0.55);
}

.facet-checkbox input[type=radio]:checked ~ .label::before {
  width: 1rem;
}

.facet-checkbox input[type=radio]:checked ~ .label::after {
  width: 0;
  right: 0;
  left: auto;
}

@media screen and (hover: hover) {
  .facet-checkbox:hover .label::after {
    width: 100%;
    right: auto;
    left: 0;
  }
}

.facets__price {
  display: flex;
  flex-wrap: wrap;
  padding: 1.2rem 2rem;
}

.facets__price .fields {
  display: none;
  width: 100%;
}

.no-js .facets__price .fields {
  display: table;
}

@media screen and (hover: none) {
  .facets__price .fields {
    display: table;
  }
}

.facets__price .field {
  display: table-row;
}

.facets__price .field + .field > * {
  border-top: 0.1rem solid rgb(var(--color-border));
}

.facets__price .field__label,
.facets__price .field__currency,
.facets__price .field__input {
  display: table-cell;
  font-size: 1.4rem;
}

.facets__price .field__currency {
  text-align: center;
  color: rgba(var(--color-foreground), 0.55);
}

.facets__price .field__input {
  box-shadow: none;
  padding: 0;
}

button.facets__button {
  font-size: 1.1rem;
  margin-inline-start: 0.6rem;
}

.active-facets-mobile .active-facets:not(.hidden) + .product-count {
  margin-top: 1rem;
}

@media screen and (min-width: 750px) {
  .active-facets-mobile {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 12px;
  }

  .active-facets-mobile .active-facets:not(.hidden) + .product-count {
    margin-top: 0;
    justify-content: flex-end;
  }
}

.active-facets {
  display: flex;
  flex-wrap: wrap;
  white-space: nowrap;
  overflow-x: auto;
  margin-inline-start: -2rem;;
}

a.active-facets__button {
  font-size: 1.4rem;
  line-height: 1;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  margin-inline-start: 2rem;
  display: flex;
  align-items: center;
  text-decoration: none;
  color: rgba(var(--color-foreground), 0.55);
}

a.active-facets__button--dark {
  color: rgb(var(--color-foreground));
  position: relative;
  margin-inline-end: 2rem;
}

a.active-facets__button--dark::after {
  content: '';
  border-left: 0.1rem solid currentColor;
  height: 100%;
  margin-inline-start: 2rem;
  position: absolute;
  left: 100%;
  pointer-events: none;
}

.active-facets__button .icon {
  width: 1rem;
  height: 1rem;
  margin-inline-end: .6rem;
  pointer-events: none;
  transition: transform var(--duration-default) ease;
}

@media screen and (hover: hover) {
  .active-facets__button:hover .icon {
    transform: scale(0.8) rotate(90deg);
  }
}

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

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

.count-bubble {
  font-weight: 400;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0;
  font-size: 1rem;
  line-height: 1;
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 50%;
  background-color: rgb(var(--color-button-border));
  color: rgb(var(--color-button-text));
  margin-inline-start: 0.6rem;
  transition-property: color, background-color;
  transition-timing-function: ease;
  transition-duration: var(--duration-long);
}

.count-bubble:empty {
  visibility: hidden;
}

.count-bubble--dot:empty {
  visibility: visible;
}

.count-bubble--dot::before {
  content: '';
  width: 0.2rem;
  height: 0.2rem;
  display: block;
  border-radius: 50%;
  background-color: currentColor;
  transition: background-color var(--duration-long) ease;
}

.mobile-facets {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000000000001; /* ensure above site-wide overlays/search */
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  background-color: transparent;
}

.mobile-facets.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}

.mobile-facets::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0);
  transition: background-color 0.3s ease;
}

.mobile-facets.is-open::before {
  background-color: rgba(0, 0, 0, 0.5);
}

.js details[open] > facet-filters-form .mobile-facets {
  transition-property: transform, visibility;
  transition-duration: var(--duration-long);
  transition-timing-function: ease;
}

.no-js details[open] > facet-filters-form .mobile-facets,
.js details[open].menu-opening > facet-filters-form .mobile-facets {
  transform: translateX(0);
  visibility: visible;
}

.mobile-facets__wrapper {
  display: block;
}

.no-js .mobile-facets__wrapper .disclosure-has-popup[open] > summary::before {
  height: 100vh;
  cursor: url(cross.svg),url(cross.png),zoom-out;
  background-color: rgba(var(--color-overlay), 0.5);
}

.js .mobile-facets__wrapper .disclosure-has-popup[open] > summary::before {
  content: none;
}

.mobile-facets__wrapper > details > summary {
  line-height: 0;
}

.mobile-facets__inner {
  background-color: rgb(var(--color-background));
  width: 100%;
  max-width: 90%;
  margin-inline-start: auto;
  height: 100%;
  pointer-events: all;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
  transform: translateX(100%);
  transition: transform 0.3s ease;
  position: relative;
}

.mobile-facets.is-open .mobile-facets__inner {
  transform: translateX(0);
}

.mobile-facets__header {
  background-color: rgb(var(--color-background));
  border-bottom: .1rem solid #EDEAE8;
  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__heading {
  font-size: 18px;
  text-transform: lowercase;
  margin: 0;
}

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

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

.mobile-facets__open .facets__count-bubble {
  margin-inline-start: 0;
  padding-inline-end: 0;
}

.mobile-facets__open .icon {
  width: 25px;
}

.mobile-facets__close {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0.7rem;
  right: 1rem;
  width: 4.4rem;
  height: 4.4rem;
  z-index: 102;
  opacity: 0;
  pointer-events: none;
}

.mobile-facets__close::after {
  content: '';
  position: absolute;
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
}

.mobile-facets__close .icon {
  margin-inline-start: 1rem;
  width: 1.4rem;
  height: 1.4rem;
}

@media screen and (hover: hover) {
  .js details[open] .mobile-facets__close:hover .icon {
    transform: scale(0.8) rotate(90deg);
  }
}

.facet-drawer--open details[open] .mobile-facets__close {
  opacity: 1;
  pointer-events: visible;
  transition: opacity var(--duration-default) ease;
}

.facet-drawer--open details[open] .mobile-facets__close .icon {
  transition: transform var(--duration-default) ease;
  margin: 0;
}

.no-js details[open] .mobile-facets__close {
  opacity: 1;
  pointer-events: visible;
}

/* Ensure top-right close button is visible when the inline mobile overlay is opened */
.mobile-facets.is-open .mobile-facets__close {
  opacity: 1;
  pointer-events: all;
  transition: opacity var(--duration-default) ease;
}

/* When mobile overlay is open, show only the active (open) filter block */
.mobile-facets.is-open .mobile-facets__details:not([open]) {
  display: none;
}

.mobile-facets__close-button {
  display: flex;
  align-items: center;
  background: none;
  border-bottom: .1rem solid #EDEAE8;
}

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

.mobile-facets__close-button .icon-arrow {
  transform: rotate(180deg);
  margin-inline-end: 1.5rem;
  margin-inline-start: 1.5rem;
  width: 1.5rem;
  height: 1.5rem;
}

.mobile-facets__close-button span {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  font-size: 16px;
  padding: 1.5rem 2.2rem;
  padding-inline-start: 0;
  text-transform: lowercase;
}

.mobile-facets__close-button span::before {
  content: '';
  height: 2rem;
  border-inline-start: .1rem solid #EDEAE8;
  padding-inline-end: 1.5rem;
}

.mobile-facets__main {
  /* padding-inline-start: 2rem; */
  position: relative;
  z-index: 1;
  padding: 10px 20px;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 750px) {
  .mobile-facets__main {
    padding: 10px 20px;
  }
}

.mobile-facets__main .facets__price .fields {
  display: table;
}

.mobile-facets__details[open] .icon-caret {
  transform: scaleY(-1);
}

/* .mobile-facets__details + .mobile-facets__details > .mobile-facets__summary {
  border-top: 0.1rem solid rgb(var(--color-border));
} */

.mobile-facets__summary {
  padding: 1.5rem 0;
  font-size: 16px;
  text-transform: lowercase;
}

.mobile-facets__summary .icon {
  width: 1.5rem;
  height: 1.5rem;
  margin-inline-start: auto;
}

.mobile-facets__summary .icon-caret {
  width: 1.1rem;
  height: 1.1rem;
}

.mobile-facets__summary > span {
  display: flex;
  align-items: center;
  width: 100%;
}

.mobile-facets__submenu .mobile-facets__footer {
  padding: 2rem;
}

.mobile-facets__submenu .facets__price {
  padding: 1rem 2rem;
}

.mobile-facets__submenu {
  display: flex;
  flex-direction: column;
}

.js .mobile-facets__submenu {
  position: absolute;
  top: 0;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: rgb(var(--color-background));
  border-top: none;
  border-bottom: none;
  z-index: 3;
  transform: translateX(100%);
  visibility: hidden;
}

.js details[open] > .mobile-facets__submenu {
  transition-property: visibility, transform;
  transition-timing-function: ease;
  transition-duration: var(--duration-long);
}

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

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

.mobile-facets__list {
  padding-inline-start: 2rem;
}

.no-js .mobile-facets__list {
  padding-inline-start: 2rem;
  padding-bottom: 2rem;
}

.mobile-facets__item {
  position: relative;
}

/* .mobile-facets__item + .mobile-facets__item {
  border-top: 0.1rem solid rgb(var(--color-border));
} */

input.mobile-facets__checkbox {
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  top: 50%;
  margin: 0;
  margin-top: -0.8rem;
  z-index: 0;
  appearance: none;
  -webkit-appearance: none;
  opacity: 0;
}

.mobile-facets__label {
  font-size: 16px;
  text-transform: lowercase;
  padding: 1rem 0 !important;
  width: 100%;
  word-break: break-word;
  display: flex;
  align-items: center;
}

.mobile-facets__label .icon {
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  margin-inline-end: 1.2rem;
  position: relative;
  border: 1px solid rgb(var(--color-border));
}

.mobile-facets__label .icon::after {
  content: '';
  width: 0.6rem;
  height: 0.6rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: currentColor;
  visibility: hidden;
  opacity: 0;
  transition-property: opacity, visibility;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}

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

.mobile-facets__arrow,
.mobile-facets__summary .icon-caret {
  margin-inline-start: auto;
  /* margin-inline-end: 2rem; */
  display: block;
}

@media screen and (min-width: 750px) {
  .mobile-facets__arrow,
  .mobile-facets__summary .icon-caret {
    /* margin-inline-end: 3rem; */
  }
}

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

.mobile-facets__footer {
  background-color: rgb(var(--color-background));
  margin-top: auto;
  padding-bottom: 10px;
  bottom: 0;
  position: sticky;
  z-index: 501; /* above product grid and images */
  display: flex;
  align-items: center;
}

.mobile-facets__footer button {
  margin-inline-end: 2rem;
  font-size: 14px;
  flex: 1 1 auto;
}

.mobile-facets__footer button + a {
  display: inline-block;
  font-size: 14px;
}

.mobile-facets__footer noscript .button {
  margin-top: 2rem;
  width: 100%;
}

.no-js .sorting {
  display: flex;
}

.no-js .sorting .button {
  min-width: auto;
}

.no-js .sorting .facet-filters__field ~ * {
  margin-inline-start: calc(0px - var(--button-border-width));
}

facet-drawer + .sorting {
  margin-inline-start: calc(0px - var(--button-border-width));
}

.no-js facet-drawer + .sorting {
  margin-inline-start: 3rem;
}

facet-drawer.loading > details[open] > summary .button {
  color: transparent;
  transition-duration: 0s;
}

facet-drawer.loading > details[open] > summary::after {
  content: '';
  display: block;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  margin-top: -1rem;
  margin-left: -1rem;
  animation: loading var(--duration-long) infinite linear;
  border: .2rem solid transparent;
  border-inline-start: 0.2rem solid rgb(var(--color-button-text));
  border-radius: 100%;
  height: 2rem;
  width: 2rem;
}

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

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

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

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

.mobile-facets__sort .select__select {
  box-shadow: none;
  font-size: 1.5rem;
  padding-inline-end: 6.5rem;
}

.mobile-facets .facets__price .field__label,
.mobile-facets .facets__price .field__currency,
.mobile-facets .facets__price .field__input {
  font-size: 1.6rem;
}

.price-range + div {
  font-size: 1.4rem;
  margin-top: 0.6rem;
  color: rgba(var(--color-foreground), 0.75);
}

.no-js .price-range + div {
  display: none;
}

@media screen and (hover: none) {
  .price-range + div {
    display: none;
  }
}

.price-range {
  position: relative;
  width: 100%;
  display: flex;
}

.price-range div:empty {
  display: block;
}

.price-range__prefix {
  flex: 0 0 auto;
  margin-inline-end: 1.2rem;
  font-size: 1.4rem;
}

.no-js .price-range__prefix {
  display: none;
}

@media screen and (hover: none) {
  .price-range__prefix {
    display: none;
  }
}

.price-range__track-wrapper {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  min-height: 2.8rem;
  margin-inline-start: -0.8rem;
  margin-inline-end: 0.8rem;
}

.no-js .price-range__track-wrapper {
  display: none;
}

@media screen and (hover: none) {
  .price-range__track-wrapper {
    display: none;
  }
}

.price-range__track {
  --gradient-colors: var(--unselected-range) 0%, var(--unselected-range) var(--progress-lower), var(--selected-range) var(--progress-lower), var(--selected-range) var(--progress-upper), var(--unselected-range) var(--progress-upper), var(--unselected-range) 100%;
  background-image: linear-gradient(90deg, var(--gradient-colors));
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 0.2rem;
  border-radius: 0.4rem;
  margin-inline-start: 0.8rem;
  --unselected-range: transparent;
  --selected-range: rgb(var(--color-foreground));
}

.price-range__track-dashed {
  position: absolute;
  height: 0.2rem;
  width: 100%;
  background-image: linear-gradient(90deg, rgb(var(--color-border)), rgb(var(--color-border)) 50%, transparent 0, transparent);
  background-size: 0.4rem 0.4rem;
  border-radius: 0.4rem;
  border-right: 0.4rem rgb(var(--color-border)) solid;
  margin-inline-start: 0.8rem;
}

.price-range__thumbs {
  position: absolute;
  z-index: 10;
  padding: 0;
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 50%;
  cursor: grab;
}

.price-range__thumbs.is-lower {
  left: var(--progress-lower);
}

.price-range__thumbs.is-upper {
  left: var(--progress-upper);
}

.price-range__thumbs:active {
  cursor: grabbing;
}

.price-range__thumbs:focus {
  outline: 0;
}

.price-range__thumbs::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  border-radius: 50%;
  background-color: rgb(var(--color-foreground));
  transition: transform var(--duration-short) ease;
}

.price-range__thumbs:active:before {
  transform: scale(1.3);
}

.price-range__thumbs::after {
  content: '';
  position: absolute;
  z-index: 1;
  top: -0.1rem;
  right: -0.1rem;
  bottom: -0.1rem;
  left: -0.1rem;
  display: block;
  pointer-events: none;
  border-radius: 50%;
  box-shadow: 0 0 0 -0.2rem rgb(var(--color-foreground));
  transition-property: box-shadow, transform;
  transition-timing-function: ease;
  transition-duration: var(--duration-short);
}

.price-range__thumbs:active:after {
  transform: scale(1.3);
}

.price-range__thumbs:focus:after {
  box-shadow: 0 0 0 0.2rem rgb(var(--color-foreground));
  outline: 0.1rem solid transparent;
}

.price-range__output {
  position: absolute;
  z-index: 20;
  bottom: 1rem;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition-property: opacity, visibility;
  transition-duration: var(--duration-default);
  transition-timing-function: ease;
  transform: translateX(calc(-50% + 0.8rem));
}

.price-range__thumbs.is-lower + .price-range__output {
  left: var(--progress-lower);
}

.price-range__thumbs.is-upper + .price-range__output {
  left: var(--progress-upper);
}

.price-range__thumbs:focus + .price-range__output,
.price-range__thumbs:hover + .price-range__output {
  opacity: 0;
}

.price-range__thumbs:active + .price-range__output {
  opacity: 1;
  visibility: visible;
}

.price-range__output-bubble {
  position: relative;
  display: flex;
  padding: 0 0.8rem;
  min-width: 3.4rem;
  height: 3.4rem;
  background-color: rgb(var(--color-background));
 /*  box-shadow: -0.1rem 0 2rem rgb(var(--color-border)); */
  border-radius: 0.3rem;
  transition-property: transform;
  transition-duration: var(--duration-default);
  transition-timing-function: ease;
}

.price-range__thumbs:active + .price-range__output .price-range__output-bubble {
  transform: translateY(-1.6rem);
}

.price-range__output-text {
  font-size: 1.3rem;
  font-weight: 600;
  line-height: calc(1 + 0.6 / var(--font-body-scale));
  text-transform: uppercase;
  display: block;
  flex: 1 1 auto;
  margin: auto;
  text-align: center;
  color: rgb(var(--color-foreground));
}

.no-js layout-switcher {
  display: none;
}

.list-view {
  display: flex;
  align-items: center;
  margin-inline-start: -1rem;
  margin-inline-end: -1rem;
  line-height: 0;
}

.list-view li {
  padding-inline-start: 1rem;
  padding-inline-end: 1rem;
}

.list-view__item {
  color: rgb(var(--color-foreground));
  border: none;
  background: none;
  padding: 0;
  line-height: 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  cursor: pointer;
  font-family: var(--font-button-family);
}

.list-view__item span {
  position: relative;
  pointer-events: none;
}

.list-view__item .icon {
  width: 2.5rem;
  height: 2rem;
  stroke: rgb(var(--color-border));
  transition: stroke var(--duration-default) ease;
}

.list-view__item .icon-grid-3 {
  width: 3.1rem;
}

.list-view__item .icon-grid-4 {
  width: 3.9rem;
}

.list-view__item .icon + i {
  font-size: 1.2rem;
  position: absolute;
  left: 100%;
  top: 0;
  font-style: normal;
  pointer-events: none;
}

.list-view__item--active {
  pointer-events: none;
}

.list-view__item--active .icon {
  stroke: currentColor;
}

@media screen and (hover: hover) {
  .list-view__item:hover .icon + i {
    animation: beat 0.6s infinite ease;
  }
}

@keyframes beat {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.2);
  }
}

.product-grid-container .facet-filters > .page-width {
  padding-inline-start: 0;
  padding-inline-end: 0;
}

.facet-filters show-more-button {
  display: none;
}

@media screen and (min-width: 750px) {
  .facets-container-drawer {
    display: flex;
    flex-direction: row-reverse;
  }

  [data-button-round] .facets-container-drawer {
    column-gap: 2rem;
  }
  
  .facets-container-drawer .facets {
    /* flex: 1 1 auto; */
    z-index: 2;
  }
  
  .facets-container-drawer .mobile-facets__wrapper {
    flex: 0 0 auto;
    margin-bottom: 0;
  }

  .facets-container-drawer .mobile-facets__open {
    min-width: auto;
    padding-inline-end: 3.5rem;
  }

  .facets-container-drawer .facets {
    /* margin-inline-start: calc(0px - var(--button-border-width)); */
  }

  .no-js .facets-container-drawer .facets {
    margin-inline-start: 3rem;
  }

  .facets-container-drawer .mobile-facets {
    width: 45rem;
    right: 0;
    /* left: auto; */
  }

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

  .facet-filters .js-filter[aria-expanded=false] .facets__item--alt {
    display: none;
  }

  .facet-filters .js-filter[aria-expanded=false] .facets__list--swatch .facets__item--alt {
    display: block;
  }

  .facet-filters .js-filter[aria-expanded=false] .facets__list--swatch-label .facets__item--alt {
    display: none;
  }

  .facet-filters show-more-button {
    display: block;
    margin-top: -2.8rem;
    margin-bottom: 2.8rem;
  }

  #main-facet-filters show-more-button {
    padding: 0 2rem;
    margin-top: -0.8rem;
    margin-bottom: 0.8rem;
  }

  .facet-filters .button-show-more {
    background: none;
    border: none;
    padding: 0;
    font-size: 0;
    display: flex;
    cursor: pointer;
  }

  .facet-filters .button-show-more .icon {
    pointer-events: none;
    width: 1.8rem;
    height: 1.8rem;
  }

  .facets-vertical {
    --grid-horizontal-spacing: 3rem;
    display: flex;
    align-items: flex-start;
    column-gap: var(--grid-horizontal-spacing);
  }

  .facets-vertical .product-grid-container {
    flex: 1 1 auto;
  }

  .facets-vertical .facet-filters {
    flex: 0 0 auto;
    opacity: 1 !important;
  }

  .facets-vertical > .facet-filters {
    width: calc(33.33% - var(--grid-horizontal-spacing) * 2 / 3);
    max-height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    scroll-snap-type: y mandatory;
    scroll-behavior: smooth;
    scrollbar-width: thin;
  }

  .facets-vertical .product-grid-container > .page-width {
    padding: 0;
  }

  .facets-vertical > .facet-filters::-webkit-scrollbar {
    appearance: none;
    width: 1rem;
    background-clip: padding-box;
    border: 0.3rem solid transparent;
    border-radius: 1.6rem;
    background-color: transparent;
  }
  
  .facets-vertical > .facet-filters::-webkit-scrollbar-thumb {
    border: 0.3rem solid transparent;
    background-clip: padding-box;
    border-radius: 1.6rem;
    background-color: transparent;
  }

  .facets-vertical > .facet-filters:hover::-webkit-scrollbar {
    background-color: rgba(var(--color-border), 0.3);
  }

  .facets-vertical > .facet-filters:hover::-webkit-scrollbar-thumb {
    background-color: rgb(var(--color-border));
  }

  .facets-vertical > .facet-filters .facets__wrapper {
    display: block;
  }

  .facets-vertical > .facet-filters .facets__inner {
    max-height: unset;
    overflow: visible;
  }

  .facets-vertical > .facet-filters .facets__form {
    display: block;
    padding-inline-end: 1.5rem;
  }

  .facets-vertical > .facet-filters .facets__main {
    flex-direction: column;
  }

  .facets-vertical > .facet-filters .facets__main > details {
    margin-bottom: 0;
  }

  .facets-vertical > .facet-filters .facets__main > details:first-child .facets__header {
    border-top: 0;
  }

  .facets-vertical > .facet-filters .facets__list,
  .facets-vertical > .facet-filters .facets__price,
  .facets-vertical > .facet-filters .facets__header {
    padding-inline-start: 0;
    padding-inline-end: 0;
  }

  .facets-vertical > .facet-filters .facets__reset {
    margin: 0;
  }

  .facets-vertical > .facet-filters .facets__header {
    position: relative;
    border-bottom: 0;
    border-top: 0.1rem solid rgb(var(--color-border));
  }

  .facets-vertical > .facet-filters .facets__header .icon {
    margin-inline-end: -1.5rem;
    transition-duration: var(--duration-short);
  }

  .facets-vertical > .facet-filters details[open] .facets__header .icon {
    transform: scaleY(-1);
  }

  .facets-vertical > .facet-filters .facets__selected {
    font-size: 1.8rem;
  }

  .facets-vertical > .facet-filters .facets__list,
  .facets-vertical > .facet-filters .facets__price {
    margin-bottom: 2rem;
  }

  .facets-vertical .facet-filters__sort[open] .facets__display {
    border-top: 0;
  }
}

@media screen and (min-width: 990px) {
  .facets-vertical > .facet-filters {
    width: calc(20% - var(--grid-horizontal-spacing) * 4 / 5);
  }
}

.facets__list .list-menu {
  margin-inline-start: 1.5rem;
}

.facets__list .list-menu__item.link {
  padding-bottom: 0.2rem;
}

.facets__list .list-menu__item--active {
  background-position: left bottom, left bottom;
  background-size: 100% 0.1rem, 100% 0.1rem;
}

.facets__list.block-image a {
  display: block;
}

.facets__list.block-image img {
  height: auto;
}

@media screen and (max-width: 749px) {
  .facets-vertical .product-grid-container > .page-width {
    padding: 0;
  }
}

.facets__list--swatch {
  display: flex;
  flex-wrap: wrap;
  column-gap: 0.8rem;
}

.facets__list--swatch .facets__item {
  padding-bottom: 0;
}

.facets__list--swatch .color__swatch {
  text-indent: -9999px;
  width: 2.6rem;
  height: 2.6rem;
  box-shadow: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.facets__list--swatch .color__swatch::before,
.facets__list--swatch .color__swatch::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  transform: scale(0.6);
  background-size: cover;
  background-color: var(--swatch-background-color);
  background-image: var(--swatch-background-image);
  transition: transform var(--duration-long) ease;
}

.facets__list--swatch .color__swatch::before {
  box-shadow: inset 0 0 0 0.1rem rgb(var(--color-border));
}

@media screen and (hover: hover) {
  .facets__list--swatch .color__swatch:hover::before,
  .facets__list--swatch .color__swatch:hover::after {
    transform: scale(0.8);
  }
}

.facets__list--swatch .color__swatch-dot {
  z-index: 1;
  position: absolute;
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 50%;
  background-color: rgb(var(--color-background));
  transform: scale(0);
  transition: transform var(--duration-long) ease;
}

.facets__list--swatch input:checked + .color__swatch::before,
.facets__list--swatch input:checked + .color__swatch::after,
.facets__list--swatch input:checked + .color__swatch .color__swatch-dot {
  transform: scale(1);
}

.facets__list--swatch input:checked + .color__swatch::before {
  box-shadow: inset 0 0 0 0.1rem rgb(var(--color-border)), 0 0 0 0.2rem rgb(var(--color-foreground));
}

.facets__list--swatch input:checked + .color__swatch .color__swatch-dot {
  width: 1rem;
  height: 1rem;
  background-color: rgb(var(--color-foreground));
  box-shadow: 0 0 0 0.2rem rgb(var(--color-background));
}

.facets__list--swatch.mobile-facets__list {
  padding: 1.5rem 2rem;
}

.facets__list--swatch .mobile-facets__label {
  padding-bottom: 0;
  cursor: pointer;
}

.facets__list--swatch .mobile-facets__item:first-child .mobile-facets__label {
  padding-top: 0;
}

.facets__list--swatch .mobile-facets__item + .mobile-facets__item {
  border-top: 0;
}

.facets__list .list-menu__item--top {
  font-size: inherit;
}

.facets__list .list-menu__item--top + .list-menu {
  margin-bottom: 1.5rem;
}

.color__swatch-label {
  display: none;
}

.facets__list--swatch-label .color__swatch-label {
  display: initial;
}

.facets__list--swatch-label {
  display: block;
}

.facets__list--swatch-label .facets__item {
  padding-bottom: 0.5rem;
}

.facets__list--swatch-label .color__swatch {
  width: 4.2rem;
  height: 2rem;
  margin-inline-end: 1.2rem;
}

.facets__list--swatch-label .color__swatch::before,
.facets__list--swatch-label .color__swatch::after {
  transform: scale(1);
  border-radius: 1rem;
}

@media screen and (hover: hover) {
  .facets__list--swatch-label .color__swatch:hover::before,
  .facets__list--swatch-label .color__swatch:hover::after {
    transform: scale(1);
  }
}

/* Two-column grid for color filter dropdowns with labels (color only) */
.facets__dropdown-panel .facets__list--swatch-label {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 1.2rem;
  row-gap: 0.8rem;
}
.facets__dropdown-panel .facets__list--swatch-label .facets__item {
  padding: 0.6rem 0;
}

@media screen and (min-width: 750px) {
  .facet-filters .facets__list--swatch-label + show-more-button {
    margin-top: -2.2rem;
  }

  #main-facet-filters .facets__list--swatch-label + show-more-button {
    margin-top: 0;
  }
}

@media screen and (min-width: 750px) and (max-width: 989px) {
  .facets-vertical .collection .product-grid.grid--3-col-tablet > .grid__item {
    width: calc(50% - var(--grid-horizontal-spacing) / 2);
    max-width: calc(50% - var(--grid-horizontal-spacing) / 2);
  }
}

.facets__and-helptext {
  color: rgba(var(--color-foreground), 0.5);
  font-size: calc(var(--font-heading-scale) * 1.2rem);
  line-height: calc(var(--font-heading-scale) * 1.2rem);
}

@media only screen and (min-width: 750px) {
  .facets__and-helptext {
    font-size: calc(var(--font-heading-scale) * 1.3rem);
    line-height: calc(var(--font-heading-scale) * 1.3rem);
  }
}

@media (min-width: 749px) {
  #FacetDrawer {
    order: 0 !important;
  }
  #FacetFiltersForm {
    order: 2 !important;
  }
}

@media (min-width: 750px) {
  #FacetDrawer {
    order: 1 !important;
  }
  #FacetFiltersForm {
    order: 0 !important;
  }
}

/* === Inline quick filter bar styling === */
.facet-filters .facets__wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.facet-filters .facets__quick {
  flex: 1 1 auto;
  overflow-x: auto;
  padding: 8px 0 12px 0;
  /* border-bottom: 1px solid #e8e0da; */
  position: relative;
  z-index: auto;
}

.facet-filters .facets__main {
  display: flex;
  gap: 12px;
  align-items: center;
  white-space: nowrap;
  overflow: visible !important; /* allow dropdowns to escape container */
}

.facet-filters .facets__dropdown {
  position: relative;
  overflow: visible !important; /* ensure panel isn't clipped by the trigger */
}
.facet-filters .facets__dropdown > summary.button {
  background-color: rgb(var(--color-product-card-background));
  color: #7f635a;
  border: 0px solid rgb(var(--color-product-card-background));
  border-radius: 0px;
  padding: 8px 12px;
  line-height: 1;
  text-transform: none;
  box-shadow: none;
}
.facet-filters .facets__dropdown > summary.button:hover {
  background-color: #f7efe9;
  border-color: #eadfd9;
}

.facet-filters .facets__dropdown > .facets__dropdown-panel {
  display: none;
}
.facet-filters .facets__dropdown[open] {
  position: relative;
  z-index: auto; /* rely on panel/fixed positioning */
}
.facet-filters .facets__dropdown[open] > .facets__dropdown-panel {
  display: block;
  position: absolute;
  bottom: calc(100% + 8px);
  top: auto;
  left: 0;
  z-index: 10;
  background: #ffffff;
  border: 1px solid #EDEAE8;
  border-radius: 8px;
  box-shadow: 0 12px 24px rgba(0,0,0,0.08);
  min-width: 240px;
  max-height: 420px;
  overflow: auto;
  padding: 12px;
}

/* Prevent initial flash when <details> opens before JS ports & positions.
   Hidden until JS adds .is-revealed (floating or inline). */
.facet-filters .facets__dropdown[open] > .facets__dropdown-panel:not(.is-revealed) {
  visibility: hidden;
  opacity: 0;
}

/* Inline (non-floating) panels reveal immediately when JS marks them */
.facet-filters .facets__dropdown[open] > .facets__dropdown-panel.is-revealed:not(.facets__dropdown-panel--floating) {
  visibility: visible;
  opacity: 1;
  transition: opacity .15s ease;
}

/* Desktop floating panel (portaled to body) */
.facets__dropdown-panel--floating {
  bottom: auto !important;
  z-index: 500 !important; /* raise above product grid & media */
  max-height: min(420px, calc(100vh - 24px)) !important;
  min-width: 240px !important;
  width: auto !important;
  background: #ffffff !important;
  border: 1px solid #EDEAE8 !important;
  border-radius: 8px !important;
  box-shadow: 0 12px 24px rgba(0,0,0,0.08) !important;
  padding: 12px 12px 0px !important;
  overflow: auto !important;
  opacity: 0;
  visibility: hidden;
  transform: translateY(0);
  will-change: opacity;
  pointer-events: none;
}

.facets__dropdown-panel--floating.is-revealed {
  opacity: 1;
  visibility: visible;
  transition: opacity .15s ease;
  pointer-events: auto;
}

/* Sort dropdown sizing */
.sorting .facets__dropdown-panel--floating {
  min-width: 21rem !important;
  width: 21rem !important;
  max-height: min(55rem, calc(100vh - 24px)) !important;

  overflow: auto !important;
  background: #ffffff !important;
  border: 1px solid #EDEAE8 !important;
  border-radius: 8px !important;
  box-shadow: 0 12px 24px rgba(0,0,0,0.08) !important;
  padding: 12px !important;
}

.facet-filters .facets__dropdown .facets__list {
  margin: 10px 0 0 0;
}
.facet-filters .facets__dropdown .facets__reset {
  margin-top: 4px;
  display: inline-block;
}

/* Apply button for filters */
.facets__apply-wrapper {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #EDEAE8;
}

.facets__apply-button {
  width: 100%;
  font-size: 13px;
  text-align: center;
}

.facet-filters .sorting {
  flex: 0 0 auto;
}
.facet-filters .sorting .facets__disclosure > summary {
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  color: #7f635a;
}

.facet-filters {
  z-index: auto;
  position: relative;
}

.active-facets-mobile {
  position: relative;
  z-index: 10;
}

#main-facet-filters,
#main-facet-filters .page-width,
#main-facet-filters .facets__quick {
  overflow: visible !important;
  position: relative;
  isolation: isolate; 
}

.collection .loading-overlay {
  z-index: 5000 !important;
}
.collection .loading-overlay__spinner {
  z-index: 5001 !important;
}

.facets__header svg {
  position: relative !important;
  right: 0 !important;
}

.facets__header .facets__selected {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0px;
  font-family: var(--font-body-family);
}

.facets__selected .count-bubble {
  background-color: rgb(var(--color-base-background));
  color: inherit;
  border-radius: 0;
}

.facets__mobile-header {
  display: none !important;
}

/* Mobile: inline filter bar becomes scrollable row, sorting above */
@media screen and (max-width: 749px) {
  .facet-filters .facets__wrapper {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .facet-filters .sorting {
    order: 0;
    align-self: stretch;
  }
  .facet-filters .facets__quick {
    order: 1;
    width: 100%;
  }
  .facet-filters .facets__main {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: visible;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
  .facet-filters .facets__dropdown {
    flex: 0 0 auto;
  }
  /* Hide desktop dropdown panels on mobile; JS opens full-screen mobile overlay */
  .facet-filters .facets__dropdown-panel {
    display: none !important;
  }
  
  /* Mobile backdrop for desktop filters */
  .mobile-filter-backdrop {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(0, 0, 0, 0.5) !important;
    z-index: 9999999999999 !important;
    opacity: 0;
    transition: opacity 0.25s ease;
    pointer-events: all !important;
    overflow: hidden !important;
  }
  
  .mobile-filter-backdrop.active {
    opacity: 1;
  }
  
  /* Make desktop filter dropdowns look like mobile modals */
  .facets details.js-filter.mobile-filter-active {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 10000000000000 !important;
    background: transparent !important;
    transform: none !important;
    isolation: isolate !important;
    pointer-events: all !important;
    overflow: hidden !important; 
  }
  
  .facets details.js-filter.mobile-filter-active > summary {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    z-index: 10000000000001 !important;
    background: rgb(var(--color-background)) !important;
    border-bottom: 1px solid #EDEAE8 !important;
    padding: 1.5rem 2rem !important;
    margin: 0 !important;
    font-size: 18px !important;
    border-radius: 0 !important;
    text-transform: lowercase !important;
    transform: translateY(0) !important;
    pointer-events: all !important;
    transition: transform 0.25s ease;
  }
  
  .facets details.js-filter.mobile-filter-active .facets__dropdown-panel {
    display: block !important;
    position: fixed !important;
    top: 60px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    background: rgb(var(--color-background)) !important;
    z-index: 10000000000001 !important;
    max-height: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    transform: translateY(0) !important;
    opacity: 1;
    transition: transform 0.25s ease, opacity 0.25s ease;
    pointer-events: all !important;
  }
  
  /* Mobile filter header */
  .facets__mobile-header {
    display: none;
  }
  
  .facets details.js-filter.mobile-filter-active .facets__mobile-header {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding: 1.5rem 2rem;
    background: rgb(var(--color-background));
    border-bottom: 1px solid #EDEAE8;
    position: sticky;
    top: 0;
    z-index: 10;
  }
  
  .facets__mobile-title {
    font-size: 18px;
    font-weight: 500;
    text-transform: lowercase;
  }
  
  .facets__mobile-close {
    background: none;
    border: none;
    padding: 0.5rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: -0.5rem -0.5rem -0.5rem 0;
    color: inherit;
  }
  
  .facets__mobile-close svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
  }
  
  .facets details.js-filter.mobile-filter-active .facets__dropdown-panel > *:not(.facets__mobile-header) {
    padding: 0 2rem;
  }
  
  .facets details.js-filter.mobile-filter-active .facets__dropdown-panel > *:last-child {
    padding-bottom: 2rem;
  }
  
  /* Mobile apply button at bottom */
  .facets details.js-filter.mobile-filter-active .facets__apply-wrapper {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgb(var(--color-background));
    border-top: 1px solid #EDEAE8;
    padding: 1.5rem 2rem !important;
    margin: 0 !important;
    z-index: 10000000000002;
  }
  
  .facets details.js-filter.mobile-filter-active .facets__apply-button {
    width: 100%;
  }
  
  /* Add padding to bottom of panel content so it doesn't hide behind fixed button */
  .facets details.js-filter.mobile-filter-active .facets__dropdown-panel {
    padding-bottom: 80px !important;
  }
  
  /* Mobile floating panel (when portaled) - same styles as active */
  .facets__dropdown-panel--floating {
    display: block !important;
    position: fixed !important;
    top: 0px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    background: rgb(var(--color-background)) !important;
    z-index: 10000000000001 !important;
    max-height: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    /* Disable desktop fade for full-screen mobile */
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    transition: none !important;
  }
  
  .facets__dropdown-panel--floating .facets__mobile-header {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding: 1.5rem 2rem;
    background: rgb(var(--color-background));
    /* border-bottom: 1px solid #EDEAE8; */
    position: sticky;
    top: 0;
    z-index: 10;
  }
  
  .facets__dropdown-panel--floating > *:not(.facets__mobile-header) {
    padding: 0 2rem;
  }
  
  .facets__dropdown-panel--floating > *:last-child {
    padding-bottom: 2rem;
  }
  
  .facets__dropdown-panel--floating .facets__apply-wrapper {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgb(var(--color-background));
    border-top: 1px solid #EDEAE8;
    padding: 1.5rem 2rem !important;
    margin: 0 !important;
    z-index: 10000000000002;
  }
  
  .facets__dropdown-panel--floating .facets__apply-button {
    width: 100%;
  }
  
  /* Add padding to bottom of panel content so it doesn't hide behind fixed button */
  .facets__dropdown-panel--floating {
    padding-bottom: 80px !important;
  }
  
  /* Closing animation */
  .facets details.js-filter.mobile-filter-closing {
    pointer-events: none !important;
  }
  
  .facets details.js-filter.mobile-filter-closing > summary {
    transform: translateY(-100%) !important;
  }
  
  .facets details.js-filter.mobile-filter-closing .facets__dropdown-panel {
    transform: translateY(100%) !important;
    opacity: 0 !important;
  }
    max-height: none;
    border: none;
    border-radius: 0;
    box-shadow: none;
    padding: 2rem;
    overflow-y: auto;
    animation: slideUp 0.3s ease;
  }
  
  @keyframes slideUp {
    from { transform: translateY(20px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
  }
  
  /* Style the checkboxes for mobile */
  .facets details.js-filter.mobile-filter-active .facets__list {
    margin: 0;
  }
  
  .facets details.js-filter.mobile-filter-active .facets__item {
    border-bottom: 1px solid rgb(var(--color-border));
    margin: 0;
  }
  
  .facets details.js-filter.mobile-filter-active .facet-checkbox {
    padding: 1.2rem 0;
    font-size: 16px;
    text-transform: lowercase;
  }

  
  /* Mobile overlay is open via .is-open class */
  .mobile-facets.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
  }
  
  /* Add loading state for mobile filter */
  .mobile-facets.is-open.filtering::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.6);
    z-index: 10;
    pointer-events: none;
  }
  
  .mobile-facets.is-open.filtering::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 24px;
    height: 24px;
    margin: -12px 0 0 -12px;
    border: 2px solid #f3f3f3;
    border-top: 2px solid #97776d;
    border-radius: 50%;
    animation: spin 0.6s linear infinite;
    z-index: 11;
  }
  
  @keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
  }
  /* When overlay is open, make the active submenu visible regardless of theme animation class */
  .mobile-facets.is-open details[open] > .mobile-facets__submenu {
    position: relative;
    transform: none;
    visibility: visible;
  }
  
  /* Disable interactions during filtering */
  .mobile-facets.is-open.filtering .mobile-facets__main {
    pointer-events: none;
    opacity: 0.6;
  }
  /* Hide the per-filter toggle row inside overlay; show only options */
  .mobile-facets.is-open .mobile-facets__summary {
    display: none;
  }
}