/** Shopify CDN: Minification failed

Line 414:9 Unexpected "and"

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:announcement (INDEX:3) */
.announcement-bar {
    width: 100%;
    padding: var(--padding-xxs) var(--padding-md);

    @media screen and (min-width: 768px) {
      padding: var(--padding-xs) var(--padding-md);
    }
  }

  .announcement-bar__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: var(--announcement-max-width);
    margin-inline: auto;
    text-align: center;
  }

  .announcement-bar__text {
    margin: 0;
    font-size: 0.875rem;
    line-height: 1.5;
    text-wrap: balance;
  }

  .announcement-bar__text svg {
    display: none;
  }

   .announcement-bar__text a + svg {
    display: inline-block;
    position: relative;
    left: 4px;
    top: 1px;
   }
  .announcement-bar__text a {
    color: inherit;
    text-underline-offset: 2px;
    font-weight: 400;
    text-decoration: none;
    display: contents;
    @media screen and (min-width: 768px) {
      display: inline-block;
      padding-left: 5px;
    }
  }

  .announcement-bar__text a + svg path {
    stroke: currentColor;
  }

  .announcement-bar__text a:hover {
    opacity: 0.75;
  }

  .announcement-bar__text a::before {
    content: "";
    display: block;
    margin-top: 7px;
    @media screen and (min-width: 768px) {
      display: none;
    }
  }
/* END_SECTION:announcement */

/* START_SECTION:footer-utilities (INDEX:20) */
.footer-utilities {
  width: 100%;
}

.shopify-section-group-footer-group .footer-utilities .language-wrapper {
    margin: 0;
    width: 100%;
    display: flex;
}

.footer-utilities__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  padding: 1.5rem 1rem;
  text-align: center;
  padding: 48px 0 40px 0;
}

@media screen and (min-width: 768px) {
  .footer-utilities__inner {
    justify-content: space-between;
    text-align: left;
    gap: 0;
    padding: var(--spacing-6xl) var(--spacing-3xl) var(--spacing-3xl);
  }
}
/* END_SECTION:footer-utilities */

/* START_SECTION:footer (INDEX:21) */
.footer-content {
    contain: content;
    content-visibility: auto;
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--footer-gap);
  }

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

    .footer-content[style*='--grid-columns: 4'] {
      grid-template-columns: repeat(2, 1fr);
    }

    .footer-content--isolated-grid-item-tablet > :last-child {
      grid-column: 1 / -1;
    }
  }

  @media screen and (min-width: 1440px) {
    .footer-content {
        grid-template-columns: 1fr;
      grid-auto-flow: row;
    }

    /* Single item centered */
    .footer-content[style*='--grid-columns: 1'] {
      justify-items: center;
    }

    .footer-content--isolated-grid-item-desktop > :last-child {
      grid-column: 1 / -1;
    }
  }
/* END_SECTION:footer */

/* START_SECTION:header_password (INDEX:24) */
.template-password .header__password .header__container,
.template-index .header__password .header__container {
    display:flex;
    margin:0 auto;
    width:100%;
    padding: 0 var(--spacing-m);
    max-width:1440px;
    @media screen and (min-width: 768px) {
      padding: 0 var(--spacing-3xl);
     }
  }
  .template-password .header__password,
  .template-index .header__password {
    pointer-events: none;
    padding-left: 0;
    padding-right: 0;
  }
  .template-password .header__password .header__sign-in,
  .template-index .header__password .header__sign-in {
    pointer-events: all;
  }
/* END_SECTION:header_password */

/* START_SECTION:main-collection (INDEX:30) */
.product-grid-container {
    max-width: var(--layout-width-1440);
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--padding-md);
    padding-right: var(--padding-md);
    display: block;
    @media (min-width: 768px) {
      padding-left: var(--padding-3xl);
      padding-right: var(--padding-3xl);
    }
  }
  .product-grid-container .product-grid {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: var(--spacing-xl);
    column-gap: var(--gap-xs);
    align-items: stretch;
    padding: 0 0 var(--padding-3xl) 0;
    margin: 0;
    @media (min-width: 768px) {
      grid-template-columns: repeat(2, 1fr);
      row-gap: var(--width-custom-36);
      padding: 0;
    }
    @media (min-width: 1280px) {
      grid-template-columns: repeat(4, 1fr);
    }
  }
/* END_SECTION:main-collection */

/* CSS from block stylesheet tags */
/* START_BLOCK:_card (INDEX:55) */
.card {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    width: 100%;
    height: 100%;
    border-radius: var(--border-radius, 0);
    border-width: var(--border-width, 0);
    border-style: var(--border-style, none);
    border-color: var(--border-color);
    container-type: inline-size;
  }

  .card__content {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: var(--layer-flat);
    display: flex;
    flex-direction: column;
    aspect-ratio: var(--card-ratio, 1);
  }

  .card__content.background-transparent {
    background-color: transparent;
  }

  /* When card has both image and content, use min-height from container query */
  .card__content--has-min-height {
    min-height: calc(100cqw / var(--card-ratio-numeric));
  }

  .card__inner {
    flex: 1;
  }

  .card__media-wrapper {
    display: flex;
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
  }

  .card__media-wrapper video {
    z-index: var(--layer-raised);
  }

  .card__link {
    position: absolute;
    inset: 0;
    z-index: var(--layer-raised);
  }

  .card__link ~ :is(.card__content, .card__media-wrapper) {
    pointer-events: none;

    :is(a, button, input, textarea, select) {
      pointer-events: auto;
    }
  }

  /* Needs the .card__link ~ to be specific enough to take effect. */
  .card__link ~ .card__content--design-mode {
    pointer-events: auto;
  }
/* END_BLOCK:_card */

/* START_BLOCK:_cart-summary (INDEX:57) */
.cart__total {
    align-items: baseline;
    font-weight: var(--font-weight-bold);
  }

  .cart__tax-note {
    color: rgb(var(--color-foreground-rgb) / var(--opacity-subdued-text));
  }

  .cart__summary-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--gap-md);
    container-type: inline-size;
    padding: var(--padding-md);
    position: sticky;
    top: 0;
    align-self: start;
    background: transparent;

    @media screen and (min-width: 768px) {
      padding: var(--padding-xl);
      grid-row: 1 / -1;
    }
  }

  .cart-page__summary .cart__summary-inner {
    gap: var(--gap-sm);
    padding: var(--padding-md) var(--padding-md) var(--padding-sm);

    @media screen and (min-width: 768px) {
      gap: var(--gap-md);
      padding: var(--padding-xl) var(--padding-xl) var(--padding-md);
      grid-row: 1 / -1;
    }
  }

  body:has(> #header-group .header[sticky]) .cart__summary-inner {
    top: var(--header-height, 0);
  }

  .cart__summary-container {
    border: none;
    background: var(--color-layer-floor-2);
    border-radius: var(--spacing-2xl);

    @media screen and (min-width: 768px) {
      display: grid;
      grid-template-rows: subgrid;
      grid-row: 1 / -1;
      border-radius: var(--spacing-xl);
    }
  }
/* END_BLOCK:_cart-summary */

/* START_BLOCK:_cart-title (INDEX:58) */
.cart-title h1 {
    margin-block-end: 0;
    display: inline-flex;
    align-items: center;
    gap: var(--gap-2xs);
    @media screen and (min-width: 768px){
      font-size: var(--font-size-h5-desktop);
      line-height: var(--line-height-h5-desktop);
    }
  }

  .cart-title .cart-bubble {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--style-border-radius-buttons-primary);
    aspect-ratio: auto;
    padding: var(--cart-padding);
  }

  .cart-title .cart-bubble__text {
    color: var(--color-foreground);
    font-family: var(--font-paragraph--family);
    font-weight: var(--font-paragraph--weight);
  }
/* END_BLOCK:_cart-title */

/* START_BLOCK:_horizontal-slider-content (INDEX:61) */
.horizontal-swipper .swiper {
  overflow: hidden;
}

.horizontal-swipper .swiper-wrapper {
  display: flex;
}

.horizontal-swipper .swiper-slide {
  flex: 0 0 auto;
  width: calc(
    (100% - (var(--carousel-gap, 8px) * (var(--carousel-mobile-columns, 2) - 1))) /
      var(--carousel-mobile-columns, 2)
  );
}

@media screen and (min-width: 768px) {
  .horizontal-swipper .swiper-slide {
    width: calc(
      (100% - (var(--carousel-gap, 8px) * (var(--carousel-columns, 4) - 1))) /
        var(--carousel-columns, 4)
    );
  }
}

.swiper-button-prev,
.swiper-button-next {
  cursor: pointer;
}
/* END_BLOCK:_horizontal-slider-content */

/* START_BLOCK:_promotion-content (INDEX:70) */
.product-grid__item--promo {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.promo-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  text-decoration: none;
  color: inherit;
}

.promo-card__media {
  position: relative;
  overflow: hidden;
  border-radius: var(--spacing-xl);
  width: 100%;
  background: var(--color-cream-100);
  isolation: isolate;
  @media and (min-width: 768px){
    border-radius: var(--radius-xl);
  }
}

.promo-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.promo-card__panel::before {
  content: '';
  position: absolute;
  inset: calc(var(--spacing-m) * -1);
  inset-block-start: -32px;
  z-index: -1;
  pointer-events: none;
  background:var(--color-espresso-a64);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
   @media screen and (min-width: 768px) {
    inset: calc(var(--spacing-xl) * -1);
  }
}

.promo-card__content {
  position: absolute;
  inset: 0;
  z-index: 2;

  display: flex;
  flex-direction: column;

  padding: var(--spacing-m);

  @media screen and (min-width: 768px) {
    padding: var(--spacing-xl);
  }
}

.promo-card__panel {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: inherit;

  padding: 0;
  isolation: isolate;
  width: 100%;
}

.promo-card__title {
  margin: 0;
  color: var(--color-text-on-accent);
  font-size: var(--font-size-h3-mobile);
  line-height: var(--line-height-h3-mobile);
}

.promo-card__description {
  margin-top: var(--spacing-xs);
  color: var(--color-text-on-accent);
  font-size: var(--font-size-body-base);
  line-height: var(--line-height-body-base);
  letter-spacing: var(--letter-spacing-body-base);
  max-width: var(--promo-text-max-width);
}

.promo-card__description p {
  margin: 0;
}

.promo-card__description p + p {
  margin-top: var(--spacing-2xs);
}

.promo-card__footer {
  padding-top: var(--spacing-xs);
  padding-left: var(--spacing-xs);
}

.promo-card__cta {
  color: var(--text-button-text-default);
  text-decoration: none;
}

.promo-card__cta .text-button__text {
  font-weight: var(--font-weight-regular);
}

.promo-card__cta .text-button__icon-button {
  padding: var(--spacing-xxs);
  border-radius: var(--radius-full);
  background: var(--icon-button-primary-bg-default);
  color: var(--icon-button-primary-icon-default);
}

@media (hover: hover) {
  .promo-card__cta:hover {
    color: var(--text-button-text-hover);
  }

  .promo-card__cta:hover .text-button__icon-button {
    background: var(--icon-button-primary-bg-hover);
    color: var(--icon-button-primary-icon-hover);
  }
}

@media (min-width: 768px) {
  .promo-card__title {
    font-size: var(--font-size-h4-desktop);
    line-height: var(--line-height-h4-desktop);
  }

  .promo-card__description {
    font-size: var(--font-size-body-large);
    line-height: var(--line-height-body-large);
    letter-spacing: var(--letter-spacing-body-large);
  }

  .promo-card__footer {
    padding-top: var(--spacing-m);
    padding-left: var(--spacing-m);
  }
}

@media (min-width: 1280px) {
  .product-grid__item--promo.product-grid__item--large {
    grid-column: span 2;
  }

  .product-grid__item--promo.product-grid__item--small {
    grid-column: span 1;
  }

  .product-grid__item--promo.product-grid__item--large .promo-card__media img {
    aspect-ratio: 1.4479;
  }

  .product-grid__item--promo.product-grid__item--small .promo-card__media img {
    aspect-ratio: 0.715;
  }
}

@media (min-width: 1440px) {
  .product-grid__item--promo.product-grid__item--large .promo-card__media img {
    aspect-ratio: 1.332;
  }

  .product-grid__item--promo.product-grid__item--small .promo-card__media img {
    aspect-ratio: 0.658;
  }
}

@media (min-width: 1920px) {
  .product-grid__item--promo.product-grid__item--large .promo-card__media img {
    aspect-ratio: 1.7559;
  }

  .product-grid__item--promo.product-grid__item--small .promo-card__media img {
    aspect-ratio: 0.87007;
  }
}
/* END_BLOCK:_promotion-content */

/* START_BLOCK:brand-feature-item (INDEX:77) */
/* Focus indicator for keyboard navigation */
.brand-feature-item:focus-visible {
  outline: 3px solid var(--color-focus, #005fcc);
  outline-offset: 2px;
}

.brand-feature-item__overlay .button-block {
    margin-block: var(--margin-2xl) 0;
}
.brand-feature-showcase-section .logo-block__image {
    height: auto;
    width: 100%;
}
.brand-feature-showcase > .group-block .button-block {
    margin-block: 0;
}

/* Focus management for interactive elements within overlay */
.brand-feature-item__overlay a:focus-visible,
.brand-feature-item__overlay button:focus-visible {
  outline: 3px solid var(--color-focus, #005fcc);
  outline-offset: 2px;
}

/* High contrast mode support */
@media (prefers-contrast: high) {
  .brand-feature-item:focus-visible {
    outline-width: 4px;
  }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
  .brand-feature-item,
  .brand-feature-item * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
@media screen and (min-width: 1024px) {
  .brand-feature-item__overlay .button-block {
      text-align: left;
      margin-block: var(--margin-2xl) 0;
  }
  .brand-feature-content .button {
    padding-inline: var(--padding-lg);
  }
}
@media screen and (min-width: 1280px) {
  .brand-feature-item__overlay .button-block {
    margin-block: var(--margin-3xl) 0;
  }
}
/* END_BLOCK:brand-feature-item */

/* START_BLOCK:collection-header (INDEX:85) */
.collection-header{
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 32px 0 30px;
    @media screen and (min-width: 768px){
      gap: 16px;
      margin: 80px 0 30px;
    }
  }
  .collection-header .text-block:not(.heading-block){
    font-size: var(--font-size-body-base);
    line-height: var(--line-height-body-base);
    letter-spacing: var(--letter-spacing-body-base);
    color: var(--color-espresso-700);
    @media screen and (min-width: 768px){
      font-size: var(--font-size-body-large);
      line-height: var(--line-height-body-large);
      letter-spacing: var(--letter-spacing-body-large);
    }
  }
/* END_BLOCK:collection-header */

/* START_BLOCK:filters (INDEX:90) */
.facets-block-wrapper {
    margin: var(--facets-margin);
    grid-column: var(--grid-column--desktop);
    margin-bottom: var(--margin-3xl);

    @media screen and (min-width: 768px) {
      margin-bottom: var(--spacing-custom-36);
    }
  }

  .facets--horizontal {
    padding-block: var(--padding-block-start) var(--padding-block-end);
    display: flex;
    align-items: center;
    position: relative;
    z-index: var(--facets-upper-z-index);
    border: none;
    height: auto;
    top: initial;
    bottom: initial;
    max-height: none;
    width: auto;
    overflow: visible;
  }

  .facets__form overflow-list::part(list) {
    padding: 0;
    margin: 0;
  }

  .facets__form overflow-list::part(overflow-list) {
    display: none;
  }

  .facets--horizontal .facets__form-wrapper,
  .facets--horizontal .facets__form {
    width: 100%;
  }

  .facets--horizontal .facets__form {
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 0;
    height: auto;
    display: flex;
    gap: var(--gap-2xs);
  }

  .facets--horizontal .facets__filters-wrapper {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    max-width: unset;
    margin-inline-end: 0;
    flex: 0 1 auto;
  }

  .facets--horizontal .sorting-filter {
    margin-inline-start: auto;
    flex-shrink: 0;
  }

  .facets {
    --facets-form-horizontal-gap: 20px;
    --facets-upper-z-index: var(--layer-raised);
    --facets-sticky-z-index: var(--layer-sticky);
    --facets-panel-min-width: 120px;
    --facets-panel-height: 300px;

    &:not(.facets--drawer) {
      @media screen and (min-width: 768px) {
        padding-inline: var(--padding-inline-start) var(--padding-inline-end);
        width: 100%;
        max-width: 100%;
      }
    }
  }

  .facets__form-wrapper {
    display: flex;
    flex-direction: row;
    color: var(--color-foreground-muted);
    width: 100%;
    height: auto;
  }

  .facets__form {
    display: flex;
    flex-flow: row nowrap;
    width: 100%;
    height: 100%;
  }

  .facets__label {
    color: var(--color-foreground);
    cursor: pointer;
    white-space: nowrap;

    @media screen and (min-width: 768px) {
      margin-inline-end: var(--margin-2xs);
    }
  }

  .facets__summary {
    --icon-opacity: 0.5;

    font-size: var(--font-paragraph--size);
    display: flex;
    justify-content: flex-start;
    height: var(--minimum-touch-target);

    &:hover {
      --icon-opacity: 1;
    }
  }

  .facets__summary .icon-caret {
    height: var(--icon-size-xs);
    width: var(--icon-size-xs);
    color: rgb(var(--color-foreground-rgb) / var(--icon-opacity));
    margin-block: var(--margin-2xs);
    transition: color var(--animation-speed) var(--animation-easing);
  }

  .facets__panel {
    padding: 0;
    position: relative;
  }

  .facets__panel-content {
    border-radius: var(--style-border-radius-popover);
    position: absolute;
    top: 100%;
    width: max-content;
    min-width: var(--facets-panel-min-width);
    max-height: var(--facets-panel-height);
    z-index: var(--facets-upper-z-index);
    box-shadow: var(--shadow-popover);
    border: var(--style-border-popover);
    background-color: var(--color-background);
    overflow-y: hidden;
    gap: 0;
  }

  .facets__item:not(:first-of-type)::before,
  .sorting-filter::before {
    content: none;
  }

  .facets__inputs-wrapper {
    margin-block: var(--padding-xs);
    max-height: 230px;
    scrollbar-width: none;
    -ms-overflow-style: none;
    overflow-x: auto;
    padding: var(--padding-md);
    margin-block: 0;
  }

  .facets__inputs-wrapper::-webkit-scrollbar {
    display: none;
  }

  .facets__inputs {
    display: flex;
    flex-direction: column;
    gap: var(--padding-lg);
    width: 100%;
  }

  .facets__bubble {
    display: inline-flex;
    font-family: var(--font-paragraph--family);
    font-weight: var(--font-paragraph--weight);
    aspect-ratio: 1 / 1;
  }

  .facets__status:not(:empty) {
    width: max-content;
    display: flex;
    margin-inline-start: auto;
    font-weight: 500;
    color: var(--color-foreground);
  }

  .facets__panel[open] .facets__status {
    display: none;
  }
/* END_BLOCK:filters */

/* START_BLOCK:footer-copyright (INDEX:91) */
.footer-utilities__group-copyright {
  display: inline-flex;
  gap: var(--gap-2xs);
}
/* END_BLOCK:footer-copyright */

/* START_BLOCK:footer-menu (INDEX:92) */
.footer-menu {
  display: flex;
  gap: var(--spacing-xxs);
  flex-wrap: wrap;
}

.footer-menu--row {
  flex-direction: row;
  align-items: center;
}

.footer-menu--column {
  flex-direction: column;
  align-items: flex-start;
}

.footer-menu__link {
  text-decoration: none;
}
/* END_BLOCK:footer-menu */

/* START_BLOCK:logo (INDEX:100) */
.logo-block {
    display: flex;
  }

  .logo-block--left {
    justify-content: flex-start;
  }

  .logo-block--center {
    justify-content: center;
  }

  .logo-block--right {
    justify-content: flex-end;
  }

  .logo-block__link {
    display: inline-flex;
    align-items: center;
  }

  .logo-block__image {
    width: auto;
    object-fit: contain;
    display: block;
    height: var(--logo-height-mobile);
    @media screen and (min-width: 768px) {
      height: var(--logo-height);
    }
  }

  .logo-block__text {
    font-size: var(--font-size-h6-desktop);
    font-weight: var(--font-weight-bold);
    color: var(--color-foreground);
    white-space: nowrap;
  }
/* END_BLOCK:logo */

/* START_BLOCK:product-title (INDEX:111) */
.product-card__info {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
    flex-wrap: wrap;
    flex-direction: column;
  }
  .product-card__info .product-card__stock-status {
    color: var(--color-espresso-500);
    font-family: var(--font-family-body);
    font-size: var(--font-size-body-base);
    font-style: normal;
    font-weight: 400;
    line-height: var(--line-height-body-base);
    letter-spacing: -0.28px;
    flex-shrink: 0;
    margin-top: -2px;
    @media screen and (min-width: 768px) {
      margin-top: -1px;
    }
  }
/* END_BLOCK:product-title */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:accordion-custom-component (INDEX:127) */
accordion-custom {
    details {
      &::details-content,
      .details-content {
        block-size: 0;
        overflow-y: clip;
        opacity: 0;
        interpolate-size: allow-keywords;
        transition: content-visibility var(--animation-speed-slow) allow-discrete,
          padding-block var(--animation-speed-slow) var(--animation-easing),
          opacity var(--animation-speed-slow) var(--animation-easing),
          block-size var(--animation-speed-slow) var(--animation-easing);
      }

      /* Disable transitions when the content toggle is not caused by the direct user interaction, e.g. opening the filters on mobile. */
      &:not(:focus-within)::details-content,
      &:not(:focus-within) .details-content {
        transition: none;
      }

      &:not([open]) {
        &::details-content,
        .details-content {
          padding-block: 0;
        }
      }

      &[open] {
        &::details-content,
        .details-content {
          opacity: 1;
          block-size: auto;

          @starting-style {
            block-size: 0;
            opacity: 0;
            overflow-y: clip;
          }

          &:focus-within {
            overflow-y: visible;
          }
        }
      }
    }
  }

  accordion-custom[data-disable-on-mobile='true'] summary {
    @media screen and (max-width: 749px) {
      cursor: auto;
    }
  }

  accordion-custom[data-disable-on-desktop='true'] summary {
    @media screen and (min-width: 750px) {
      cursor: auto;
    }
  }
/* END_SNIPPET:accordion-custom-component */

/* START_SNIPPET:account-actions (INDEX:128) */
.account-actions {
    background-color: var(--color-background);
    display: flex;
    flex-direction: column;
    position: relative;
    transition: height var(--animation-values);

    &:has([data-active]) .account-actions__main-menu {
      visibility: hidden;
    }
  }

  .account-actions__header {
    padding: var(--padding-xl);
    display: flex;
    flex-direction: column;
    gap: var(--gap-2xs);
  }

  .account-actions__title {
    /* Ideally we set the font-size here, but specificity issues make this necessary */
    --font-h5--size: var(--font-size--lg);

    margin: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .account-actions__email {
    display: flex;
    align-items: center;
    gap: var(--gap-2xs);
    color: rgb(var(--color-foreground-rgb) / var(--opacity-60));
    max-width: var(--account-actions-max-width);
    word-break: break-all;
  }

  .account-actions__sign-ins {
    padding: var(--padding-xl);
    padding-block-start: 0;
    padding-block-end: var(--padding-md);
    display: flex;
    flex-direction: column;
    gap: var(--gap-sm);
  }

  .account-actions__sign-in-text {
    display: inline;
  }

  .account-actions__fallback-text {
    display: none;
  }

  .account-actions__sign-ins:not(:has(shop-login-button)) {
    gap: 0;

    .account-actions__sign-in-text {
      display: none;
    }

    .account-actions__fallback-text {
      display: block;
    }
  }

  /* Makes the shop login button radius match the theme settings */
  .account-actions__shop-login {
    --buttons-radius: var(--style-border-radius-buttons-primary);
  }

  .account-actions__nav {
    padding: var(--padding-xl);
    padding-block-start: 0;
  }

  .account-actions__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--gap-sm);
    width: 100%;
    list-style: none;
    margin: 0;
    padding: 0;

    @media screen and (max-width: 300px) {
      grid-template-columns: 1fr;
    }
  }

  .account-actions__link {
    width: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: var(--gap-2xs);
  }

  .account-actions__icon {
    display: flex;
    width: var(--icon-size-sm);
    height: var(--icon-size-sm);
    margin-block: -4px;
  }

  /* This triggers iOS < 16.4. The outline bug is not recognized as a lack of @supports */

  @supports not (background-color: rgb(from red 150 g b / alpha)) {
    /**
    There is a bug in safari < 16.4 that causes the outline to not follow the elements border radius. This is a workaround.
    Using element selector to increase specificity.
  **/

    .account-actions :is(a.button, a.button--secondary):focus-visible {
      outline: none;
      overflow: visible;
      position: relative;

      &::after {
        content: '';
        position: absolute;
        inset: calc(-1 * var(--focus-outline-offset));
        border: var(--focus-outline-width) solid currentColor;
        border-radius: var(--style-border-radius-buttons-secondary);
        display: inherit;
      }
    }

    .account-actions a.button:focus-visible::after {
      border-color: var(--button-background-color);
      border-radius: var(--style-border-radius-buttons-primary);
    }
  }
/* END_SNIPPET:account-actions */

/* START_SNIPPET:account-button (INDEX:129) */
.account-button {
    color: var(--color-foreground);
    appearance: none;
    border: none;
    background: none;
    height: var(--button-size);
    width: var(--button-size);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    transition: color var(--animation-speed) var(--animation-easing);
    anchor-name: --account-button-trigger;
  }

  .account-button__avatar {
    --account-button-size: 1.3rem;

    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--account-button-size);
    height: var(--account-button-size);
    border-radius: var(--style-border-radius-50);
    background-color: var(--color-primary-button-background);
    font-size: var(--font-size--xs);
    font-weight: 500;
    color: var(--color-primary-button-text);
    text-transform: uppercase;
    line-height: 1;
  }

  .account-button__icon {
    color: currentColor;
    display: inline-flex;
    justify-content: center;
    align-items: center;
  }

  .account-button__icon > svg{
    width: 25px;
    height: 25px;
  }

  /* The shop avatar doesn't bubble the click event up to our button, so we need to prevent that or the button doesn't work */
  .account-button shop-user-avatar {
    pointer-events: none;
  }
/* END_SNIPPET:account-button */

/* START_SNIPPET:add-to-cart-button (INDEX:130) */
.add-to-cart-button {
    --text-speed: 0.26;
    --base-delay: calc(var(--text-speed) * 0.25);
    --tick-speed: 0.1;
    --ring-speed: 0.2;
    --check-speed: 0.2;
    --burst-speed: 0.32;
    --step-delay: 3;
    --speed: 1;

    user-select: none;
    transition-property: color, box-shadow, background-color, scale, translate;
    transition-duration: var(--animation-speed);
    transition-timing-function: var(--ease-out-cubic);

    &:active {
      scale: 0.99;
      translate: 0 1px;
    }
  }

  .product-details .add-to-cart-button,
  .buy-buttons-block .add-to-cart-button {
    flex: 1 0 0;
    width: 100%;
  }

  .add-to-cart-button .svg-wrapper .checkmark-burst {
    width: var(--spacing-custom-30);
    height: var(--spacing-custom-30);
  }

  .add-to-cart-text {
    --atc-opacity: 0;
    --atc-destination: -1em;
    display: flex;
    gap: var(--gap-xs);
    align-items: center;
    justify-content: center;
    animation-duration: var(--animation-speed);
    animation-timing-function: var(--animation-easing);
    animation-fill-mode: forwards;
    transition:
      width var(--animation-speed) var(--animation-easing),
      opacity var(--animation-speed) var(--animation-easing);
  }

  .product-card .quick-add__button .add-to-cart-text {
    gap: 6px;
  }

  /*.product-card .quick-add__button.add-to-cart-button {
    display: none;
  }*/

  .add-to-cart__added {
    --atc-opacity: 1;
    --atc-destination: 0px;
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.3rem;
  }

  .add-to-cart__added-icon {
    width: 32px;
    height: 32px;
  }

  [data-added='true'] .add-to-cart-text,
  [data-added='true'] .add-to-cart__added {
    animation-name: atc-slide;
  }

  .checkmark-burst {
    opacity: 0;
    overflow: visible;

    .burst {
      rotate: 20deg;
    }

    .check {
      opacity: 0.2;
      scale: 0.8;
      filter: blur(2px);
      transform: translateZ(0);
    }

    :is(.ring, .line, .check, .burst, .tick) {
      transform-box: fill-box;
      transform-origin: center;
    }

    :is(.line) {
      stroke-dasharray: 1.5 1.5;
      stroke-dashoffset: -1.5;
      translate: 0 -180%;
    }

    g {
      transform-origin: center;
      rotate: calc(var(--index) * (360 / 8) * 1deg);
    }
  }

  .add-to-cart-button[data-added='true'] .checkmark-burst {
    opacity: 1;
  }

  .add-to-cart-button[data-added='true'] {
    .check {
      opacity: 1;
      scale: 1;
      filter: blur(0);
    }

    .tick {
      scale: 1.75;
    }

    .ring {
      opacity: 0;
      scale: 1;
    }

    .line {
      stroke-dashoffset: 1.5;
    }

    .add-to-cart-text {
      /* stylelint-disable-next-line plugin/no-unsupported-browser-features */
      clip-path: circle(0% at 50% 50%);
      filter: blur(2px);
      opacity: 0;
      translate: 0 4px;
    }
  }

  @media (prefers-reduced-motion: no-preference) {
    .add-to-cart-button[data-added='true'] {
      .check {
        transition-property: opacity, scale, filter;
        transition-duration: calc(calc(var(--check-speed) * 1s));
        transition-delay: calc((var(--base-delay) * 1s));
        transition-timing-function: var(--ease-out-quad);
      }

      .tick {
        transition-property: scale;
        transition-duration: calc((calc(var(--tick-speed) * 1s)));
        transition-delay: calc(((var(--base-delay) + (var(--check-speed) * (var(--step-delay) * 1.1))) * 1s));
        transition-timing-function: ease-out;
      }

      .ring {
        transition-property: opacity, scale;
        transition-duration: calc((calc(var(--ring-speed) * 1s)));
        transition-delay: calc(((var(--base-delay) + (var(--check-speed) * var(--step-delay))) * 1s));
        transition-timing-function: var(--ease-out-quad);
      }

      .line {
        transition-property: stroke-dashoffset;
        transition-duration: calc((calc(var(--burst-speed) * 1s)));
        transition-delay: calc(((var(--base-delay) + (var(--check-speed) * var(--step-delay))) * 1s));
        transition-timing-function: var(--ease-out-cubic);
      }
    }
    .add-to-cart-text {
      transition-property: clip-path, opacity, filter, translate;
      transition-duration: calc((var(--text-speed) * 0.6s)), calc((var(--text-speed) * 1s));
      transition-timing-function: ease-out;
    }
  }

  .add-to-cart-text {
    /* stylelint-disable-next-line plugin/no-unsupported-browser-features */
    clip-path: circle(100% at 50% 50%);
  }

  @keyframes atc-slide {
    to {
      opacity: var(--atc-opacity, 1);
      translate: 0px var(--atc-destination, 0px);
    }
  }
/* END_SNIPPET:add-to-cart-button */

/* START_SNIPPET:background-video (INDEX:135) */
@media (prefers-reduced-motion: reduce) {
    video-background-component video {
      display: none;
    }
  }
/* END_SNIPPET:background-video */

/* START_SNIPPET:cart-icon (INDEX:142) */
.header-actions__cart-icon {
    --cart-bubble-size: 20px;
    --cart-bubble-top: -24.5px;
    --cart-bubble-right: 2.5px;

    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* Cart bubble */
  .cart-bubble {
    --cart-padding: 0.2em;

    position: relative;
    width: 20px;
    aspect-ratio: 1;
    border-radius: 50%;
    border-width: 0;
    display: flex;
    line-height: normal;
    align-items: center;
    justify-content: center;
    color: var(--color-primary-button-text);
    padding-inline: var(--cart-padding);
  }

  .cart-bubble[data-maintain-ratio] {
    aspect-ratio: 1;
  }

  .cart-bubble[data-maintain-ratio] .cart-bubble__background {
    border-radius: var(--radius-full);
  }

  .cart-bubble__background {
    position: absolute;
    inset: 0;
    background-color: var(--color-primary-button-background);
    border-radius: var(--radius-full);
  }

  .cart-bubble__text {
    z-index: var(--layer-flat);
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .header-actions__cart-icon .cart-bubble {
    position: absolute;
    width: var(--cart-bubble-size, 20px);
    top: var(--cart-bubble-top);
    right: var(--cart-bubble-right);
    background-color: var(--color-espresso-900);
    color: var(--color-glow-yellow-900);
    border-radius: var(--radius-full);
  }

  .header-actions__cart-icon.header-actions__cart-icon--has-cart .svg-wrapper svg {
    mask: radial-gradient(
      calc(var(--cart-bubble-size) + 2px) at calc(100% - var(--cart-bubble-right)) var(--cart-bubble-top),
      transparent 45.45%,
      #fff 45.45%,
      #fff 100%
    );
  }

  cart-icon:has(.cart-bubble__text-count:empty) {
    --cart-bubble-size: 10px;
    --cart-bubble-top: 9px;
    --cart-bubble-right: 9px;
  }

  cart-icon:has(.cart-bubble__text-count:empty) .svg-wrapper {
    --cart-bubble-top: 4px;
    --cart-bubble-right: 4px;
  }
/* END_SNIPPET:cart-icon */

/* START_SNIPPET:cart-quantity-selector (INDEX:144) */
.quantity-selector-wrapper {

    @media screen and (min-width: 768px) {
      gap: var(--gap-sm);
    }
  }

  .price-per-item {
    display: block;
    color: var(--color-foreground);
    font-weight: normal;
  }
/* END_SNIPPET:cart-quantity-selector */

/* START_SNIPPET:divider (INDEX:151) */
.divider {
    align-self: stretch;
    display: flex;
    align-items: center;
    justify-content: var(--divider-justify-content);
  }

  .divider__line {
    border-bottom: var(--divider-border-thickness) solid var(--color-border);
    border-right: var(--divider-border-thickness) solid var(--color-border);
    border-radius: calc(var(--style-border-radius-sm) * var(--divider-border-rounded));
    flex-basis: var(--divider-flex-basis);
    min-height: var(--divider-flex-basis);
  }
/* END_SNIPPET:divider */

/* START_SNIPPET:filter-remove-buttons (INDEX:154) */
/* Facets - Remove buttons */
  .facets-remove {
    --variant-picker-swatch-width: 20px;
    --variant-picker-swatch-height: 20px;

    display: none;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--gap-xs);
    padding: 0 var(--drawer-padding);
    margin: 0;

    @media screen and (min-width: 768px) {
      --variant-picker-swatch-width: 16px;
      --variant-picker-swatch-height: 16px;

      gap: var(--gap-2xs);
    }
  }

  .facets-remove:has(facet-remove-component) {
    display: flex;
    margin-block-start: var(--margin-2xs);
    margin-block-end: var(--margin-md);
  }

  .facets:not(.facets--drawer) .facets-remove--mobile-and-vertical {
    @media screen and (min-width: 768px) {
      padding: 0;
    }
  }

  .facets--horizontal .facets-remove--mobile-and-vertical {
    @media screen and (min-width: 768px) {
      display: none;
    }
  }

  .facets-remove__pill {
    .svg-wrapper,
    .swatch {
      flex-shrink: 0;
    }
  }

  .facets--horizontal .facets-remove {
    @media screen and (min-width: 768px) {
      display: none;
    }
  }
/* END_SNIPPET:filter-remove-buttons */

/* START_SNIPPET:grid-density-controls (INDEX:157) */
.column-options-wrapper {
    --icon-offset: -3px;

    display: flex;
    gap: var(--gap-sm);
    min-width: fit-content;
    justify-content: flex-end;
    height: var(--minimum-touch-target);
    align-items: center;
    margin-right: var(--icon-offset);
  }

  .column-options-wrapper:only-child {
    margin-left: auto;
  }

  .facets__form-wrapper > .column-options-wrapper:first-child {
    margin-left: auto;
  }

  .facets .column-options-wrapper {
    display: none;

    @media screen and (min-width: 768px) {
      display: flex;
    }
  }

  .column-options {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap-xs);
    margin: 0;
    padding: 0;
    border: none;

    @media screen and (min-width: 768px) {
      gap: var(--gap-2xs);
    }
  }

  .column-options__option {
    display: none;
    position: relative;
  }

  .column-options__option:has(.column-picker-mobile--single),
  .column-options__option:has(.column-picker-mobile--double) {
    @media screen and (max-width: 749px) {
      display: flex;
    }
  }

  .column-options__option:has(.column-picker--default),
  .column-options__option:has(.column-picker--zoom-out) {
    @media screen and (min-width: 768px) {
      display: flex;
    }
  }

  /* Override base rule for grid density controls - only when visible */
  .column-options-wrapper .column-options__option:has(input[type="radio"]):has(.column-picker-mobile--single),
  .column-options-wrapper .column-options__option:has(input[type="radio"]):has(.column-picker-mobile--double) {
    @media screen and (max-width: 749px) {
      display: flex;
    }
  }

  .column-options-wrapper .column-options__option:has(input[type="radio"]):has(.column-picker--default),
  .column-options-wrapper .column-options__option:has(input[type="radio"]):has(.column-picker--zoom-out) {
    @media screen and (min-width: 768px) {
      display: flex;
    }
  }

  .column-options__legend {
    padding: 0;
    margin: 0;
  }

  .column-options__option-input {
    /* this is a repeating pattern a bit with the variant picker buttons */

    /* remove the checkbox from the page flow */
    position: absolute;

    /* set the dimensions to match those of the label */
    inset: 0;

    /* hide it */
    opacity: 0;
    margin: 0;
    padding: 0;
    width: auto;
    height: auto;
    aspect-ratio: unset;
    border: none;
    border-radius: 0;
    background: transparent;
    appearance: auto;
    display: block;
    cursor: pointer;
  }

  .column-picker {
    color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
    padding: var(--padding-2xs);
    border-radius: var(--style-border-radius-xs);
    transition: background-color var(--animation-speed) ease, color var(--animation-speed) ease;
  }

  .column-options__option:hover .column-picker {
    background-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
  }

  .column-options__option-input:checked ~ .column-picker {
    color: rgb(var(--color-foreground-rgb));
    background-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
  }
/* END_SNIPPET:grid-density-controls */

/* START_SNIPPET:group (INDEX:158) */
.group-block__link {
    position: absolute;
    inset: 0;
  }

  .group-block__link ~ :is(.group-block-content, .group-block__media-wrapper) {
    pointer-events: none;

    :is(a, button, input, textarea, select) {
      pointer-events: auto;
    }
  }

  /* Needs the .group-block__link ~ to be specific enough to take effect. */
  .group-block__link ~ .group-block-content--design-mode {
    pointer-events: auto;
  }
/* END_SNIPPET:group */

/* START_SNIPPET:header-actions (INDEX:161) */
/* ─── Base pill ─── */
  .header-actions__action {
    width: auto;
    padding: 14px 3px;
    height: 48px;

    @media screen and (min-width: 768px) {
      padding: 18px 3px;
      height: var(--icon-button-size-xlarge);
    }
  }


  .header-actions__action {
    background: var(--color-espresso-a64);
    border-color: var(--color-espresso-a8);
  }

  .header-actions__action > cart-drawer-component > .cart-drawer--button .cart-bubble .cart-bubble__text {
    color: var(--color-espresso-900);
  }

  .header-actions__action > cart-drawer-component > .cart-drawer--button .cart-bubble .cart-bubble__background {
    background: #FCFCF8;
  }

  .header-actions__action cart-drawer-component > .icon-button--ghost,.header-actions__action .account-drawer >.icon-button--ghost, .header-actions__action .account-popover >.icon-button--ghost { 
    color: #FCFCF8; 
  }

  [data-header-theme="light"] .header-actions__action {
    background: var(--color-cream-a72);
    border-color: var(--color-cream-a48);
  }

  [data-header-theme="light"] .header-actions__action > cart-drawer-component > .cart-drawer--button .cart-bubble .cart-bubble__background {
    background-color: var(--color-primary-button-background);
  }

  [data-header-theme="light"] .header-actions__action > cart-drawer-component > .cart-drawer--button .cart-bubble .cart-bubble__text {
    color: #FCFCF8;
  }

  [data-header-theme="light"] .header-actions__action cart-drawer-component >.icon-button--ghost, [data-header-theme="light"] .header-actions__action .account-drawer >.icon-button--ghost,[data-header-theme="light"] .header-actions__action .account-popover >.icon-button--ghost{ 
    color: var(--color-espresso-900);
  }

  .cart-drawer {
    --cart-drawer-padding: var(--padding-sm);
    --cart-drawer-padding-desktop: var(--padding-md);
  }

  .cart-drawer__dialog {
    position: fixed;
    overflow: hidden;
    border-radius: 32px;
    width: calc(100% - 24px);
    max-width: 508px;
    height: 100%;
    margin: 12px 12px 12px auto;
    padding: 0;
    box-shadow: var(--shadow-drawer);
    @media screen and (min-width: 768px){
      width: 508px;
      margin: 16px 16px 16px auto;
      border-radius: var(--radius-2xl);
    }
  }

  .header-actions--button{
    padding: 7.5px;
    @media screen and (min-width: 768px){
      padding: 11.5px;
    }
  }

  .cart-drawer--icon{
    padding: 4px;
    @media screen and (min-width: 768px){
      padding: 8px;
    }
  }
  .cart-drawer__dialog:modal {
    max-height: calc(100dvh - 24px); 
    overflow-y: hidden;
    @media screen and (min-width: 768px){
      max-height: calc(100dvh - 32px);
    }
  }

  .cart-drawer__inner {
    height: 100%;
    overflow: hidden;
  }

  .cart-drawer__content {
    height: calc(100% - 120px);
    display: flex;
    flex-direction: column;
    padding: 0;
    flex-grow: 1;
    overflow-y: auto;
    @media screen and (min-width: 768px){
      height: calc(100% - 155px);
    }
  }

  .cart-drawer__heading {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 0;
    font-size: var(--font-size-h4-mobile);
    line-height: var(--line-height-h4-mobile);
    @media screen and (min-width: 768px){
      font-size:var(--font-size-h5-desktop);
      line-height: var(--line-height-h5-desktop);
      gap: 10px;
    }
  }

  .cart-drawer__close-button {
    width: 40px;
    height: 40px;
    margin: 0;
    padding: 0;
    color: var(--color-espresso-900);
    background: transparent;
    border: 1px solid var(--color-espresso-a16);
    @media screen and (min-width: 768px){
      width: 47px;
      height: 47px;
    }
  }

.cart-items__table-row {
    padding-bottom: var(--gap-xl);
    border-bottom: var(--style-border-width) solid var(--color-border);
    margin-bottom: var(--gap-xs);
    background: var(--color-cream-200_b);
    border-radius: var(--spacing-m);
    padding: var(--padding-2xs) var(--padding-2xs) 2px var(--padding-2xs);
    @media screen and (min-width: 768px){
      border-radius: var(--spacing-xl);
      padding: var(--padding-xs) var(--padding-xs) 7px var(--padding-xs);
    }
  }

  .cart-drawer__items .cart-items__table-row:has(+ .cart-items__nested-line) {
    border-bottom: none;
    margin-bottom: 0;
  }

  .cart-drawer__items .cart-items__table-row:last-child {
    border-bottom: none;
  }

  .cart-drawer__summary {
    --cart-drawer-summary-padding: var(--padding-xs) var(--padding-sm) 0 11px;
    bottom: var(--cart-drawer-padding);
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--gap-sm);
    margin-top: auto;
    position: static;
    padding-bottom: 20px;
    @media screen and (min-width: 768px) {
      position: sticky;
       gap: var(--gap-md);
       padding: var(--cart-drawer-summary-padding);
      --cart-drawer-summary-padding: var(--padding-sm) var(--padding-md) 0 var(--padding-md);
      bottom: var(--cart-drawer-padding-desktop);
    }
  }

  .cart-drawer__dialog[cart-summary-sticky='false'] .cart-drawer__summary {
    position: static;
  }

  .cart-drawer__dialog[cart-summary-sticky='false'] .cart-drawer__items {
    overflow: unset;
  }

  .cart-drawer__heading--empty,.empty-cart__icon {
    display: flex;
    justify-content: center;
  }
  .empty-cart__icon {
    .icon-circle svg {
      width: 18px;
      height: 18px;
    }
  }
  .cart-drawer__heading--empty {
    font-size: var(--font-size-h4-mobile);
    line-height: var(--line-height-h4-mobile);
    @media screen and (min-width: 768px){
      font-size:var(--font-size-h4-desktop);
      line-height: var(--line-height-h4-desktop);
      gap: 10px;
    }
  }

  .cart-drawer__items {
    display: flex;
    flex-direction: column;
    padding-inline: var(--cart-drawer-padding);
    overflow-y: auto;
    scrollbar-color: rgba(42, 18, 10, 0.24) transparent;
    min-height: 180px;
    @media screen and (min-width: 768px) {
      padding-inline: 15px;
      min-height: unset;
    }
  }
  .cart-drawer__items::-webkit-scrollbar {
    width: 6px;
  }

  .cart-drawer__items::-webkit-scrollbar-track {
    background: transparent;
  }

  .cart-drawer__items::-webkit-scrollbar-thumb {
    background-color: rgba(42, 18, 10, 0.24);
    border-radius: 40px;
  }
  .cart-drawer--empty .cart-drawer__items {
    overflow-y: visible;
  }

  .cart-drawer:not(:has(.cart-form)) .cart-drawer__content {
    justify-content: center;
    gap: var(--gap-xs);
    @media screen and (min-width: 768px) {
      gap: var(--gap-xl);
    }
  }

  .cart-drawer__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 12px 11px 8px;
    border-bottom: var(--style-border-width) solid var(--color-border);
    position: sticky;
    top: 0;
    z-index: 1;

    @media screen and (min-width: 768px) {
      padding: var(--cart-drawer-padding-desktop) var(--cart-drawer-padding-desktop) var(--spacing-s);
    }
  }

  @media screen and (min-width: 768px) {
    .account-drawer {
      display: none;
    }
  }

  .cart-bubble__background {
    position: absolute;
    inset: 0;
    border-radius: var(--style-border-radius-lg);
  }
  .cart-drawer__title-box{
    display: flex;
    gap: 8px;
    @media screen and (min-width: 768px){
      gap: 12px;
    }
  }
  .cart-drawer__close-button {
    .svg-wrapper {
      width: 20px;
      height: 20px;
    }
  }
  .cart-drawer__header .cart-bubble__background{
    background: transparent;
  }
  .cart-drawer__header .cart-bubble__text-count::before{
    content: "(";
    position: absolute;
    left: -9px;
  }
  .cart-drawer__header .cart-bubble__text-count::after{
    content: ")";
    position: absolute;
    right: -8px;
  }
  @media screen and (min-width: 768px) {
    .cart-drawer__header .cart-bubble__text-count::before{
      left: -11px;
    }
    .cart-drawer__header .cart-bubble__text-count::after{
      right: -11px;
    }
  }

  .cart-drawer__header .cart-bubble {
    width: auto;
  }
  
  .cart-drawer__header .cart-bubble__text-count{
    position: relative;
    color: var(--color-espresso-700);
    font-family: var(--font-family-header);
    font-size: var(--font-size-h4-mobile);
    line-height: var(--line-height-h4-mobile);
    font-weight: var(--font-weight-heading);
    right: -4px;
    @media screen and (min-width: 768px) {
      font-size: var(--font-size-h5-desktop);
      line-height: var(--line-height-h5-desktop);
      right: -2px;
    }
  }
  .view-cart {
    font-weight: var(--font-weight-book);
    letter-spacing: -0.32px;
    right: 8px;
    position: relative;
    text-transform: capitalize;
    gap: 9px;
    @media screen and (min-width: 768px) {
      top: -1px;
      right: 11px;
    }
  }
/* END_SNIPPET:header-actions */

/* START_SNIPPET:header-drawer (INDEX:163) */
.header__icon--menu {
    position: initial;
  }

  .menu-drawer-container .header__icon--summary {
    color: var(--color-foreground);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: var(--padding-lg);
  }

  .header__icon--summary .header-drawer-icon {
    margin: auto;
    width: var(--icon-size-xs);
    height: var(--icon-size-xs);
  }

  .menu-drawer__featured-content {
    z-index: var(--layer-base);
    container-type: inline-size;
  }

  .menu-drawer__featured-content--childlist {
    z-index: var(--layer-flat);
  }

  .menu-drawer__featured-content-list {
    display: flex;
    gap: 1em;
    overflow-x: auto;
    padding-block-end: var(--padding-lg);
  }

  .menu-drawer__featured-content-list-item {
    flex: 0 0 auto;
  }

  .menu-drawer__featured-content-list-item--product {
    width: 35cqi;
  }

  .menu-drawer__featured-content-list-item--collection img.resource-card__image {
    width: 80cqi;
  }

  .menu-drawer__featured-content-list-item:first-child {
    margin-inline-start: var(--margin-xl);
  }

  .menu-drawer__featured-content-list-item:last-child {
    margin-inline-end: var(--margin-xl);
  }

  .menu-drawer__navigation {
    padding: 0;

    @media screen and (min-width: 750px) {
      margin-top: var(--drawer-header-desktop-top);
    }
  }

  details:not(.menu-open) .header__icon--menu .header-drawer-icon--close {
    display: none;
  }

  details.menu-open .header__icon--menu .header-drawer-icon--close {
    @media screen and (min-width: 750px) {
      display: none;
    }
  }

  details.menu-open .header__icon--menu .header-drawer-icon--open {
    display: none;

    @media screen and (min-width: 750px) {
      display: flex;
    }
  }

  .menu-drawer {
    position: fixed;
    transform: translateX(-100%);
    visibility: hidden;
    height: var(--drawer-height);
    width: var(--drawer-width);
    max-width: var(--drawer-max-width);
    z-index: var(--layer-menu-drawer);
    left: 0;
    top: 0;
    padding: 0;
    background-color: var(--color-background);
    overflow: auto;
    display: flex;
    border-right: var(--style-border-drawer);
    box-shadow: var(--shadow-drawer);
    flex-direction: column;

    @media screen and (min-width: 750px) {
      width: 25rem;
    }
  }

  /* When opening a submenu we don't want the first-level menu to be scrollable, so we reset the overflow  */
  .menu-drawer.menu-drawer--has-submenu-opened {
    overflow: initial;
  }

  .menu-drawer__backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100dvh;
    backdrop-filter: brightness(0.75);
    z-index: var(--layer-heightened);
    opacity: 0;
    transition: opacity var(--drawer-animation-speed) ease;

    .menu-open & {
      opacity: 1;
    }
  }

  .menu-drawer,
  details[open] > .menu-drawer__submenu {
    transition: transform var(--drawer-animation-speed) ease, visibility var(--drawer-animation-speed) ease,
      opacity var(--drawer-animation-speed) ease;
  }

  .menu-open > .menu-drawer,
  .menu-open > .menu-drawer__submenu:not(.menu-drawer__menu--childlist) {
    transform: translateX(0);
    visibility: visible;
    opacity: 1;
    display: flex;
    flex-direction: column;
  }

  .menu-drawer__inner-container {
    position: relative;
    height: 100%;
  }

  .menu-drawer__navigation-container {
    display: grid;
    grid-template-rows: 1fr auto;
    align-content: space-between;
    overflow-y: auto;
    height: 100%;
  }

  .menu-drawer__inner-submenu {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow-y: auto;

    @media screen and (min-width: 750px) {
      margin-top: var(--drawer-header-desktop-top);
    }
  }

  .menu-drawer__nav-buttons {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .menu-drawer__menu {
    --menu-drawer-inline-padding: calc(var(--padding-sm) + 7px);

    list-style: none;
    padding-inline: var(--drawer-padding);
    margin-inline: 0;
    margin-block-start: 0;
  }

  .menu-drawer__menu--grid {
    display: grid;
    width: 100%;
    grid-template-columns: 1fr 1fr;
    gap: var(--padding-sm);
    padding-inline-end: var(--menu-drawer-inline-padding);
    padding-block-start: var(--padding-xs);
  }

  .menu-drawer__menu--childlist:not(.menu-drawer__menu--grid) {
    flex-grow: 1;
  }

  .menu-drawer__menu.has-submenu,
  .menu-drawer__menu--childlist:not(:has(.menu-drawer__animated-element)) {
    margin-block-end: var(--margin-xs);

    @media screen and (min-width: 750px) {
      margin-block-end: 2.5rem;
    }
  }

  .menu-drawer__list-item--divider {
    border-block-end: 1px solid var(--color-border);
  }

  .menu-drawer__list-item--deep:not(.menu-drawer__list-item--divider) .menu-drawer__menu {
    margin-block-start: -0.3rem;
  }

  .menu-drawer__list-item--flat.menu-drawer__list-item--divider .menu-drawer__menu {
    margin-block-start: -0.4rem;
  }

  .menu-drawer__menu-container--divider {
    border-block-end: 1px solid var(--color-border);
  }

  .menu-drawer__menu > .menu-drawer__list-item {
    display: flex;
    min-height: calc(2 * var(--padding-lg) + var(--icon-size-xs));
  }

  .menu-drawer__list-item--deep .menu-drawer__list-item,
  .menu-drawer__list-item--flat .menu-drawer__list-item {
    min-height: auto;
  }

  .menu-drawer__menu .menu-drawer__list-item--flat {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-block-end: var(--margin-md);
  }

  .menu-drawer__menu--childlist .menu-drawer__list-item--flat {
    margin-block-end: var(--margin-sm);

    @media screen and (min-width: 750px) {
      margin-block-end: var(--margin-lg);
    }
  }

  .menu-drawer__menu--childlist .menu-drawer__list-item--flat.menu-drawer__list-item--divider {
    margin-block-end: 0;
  }

  .menu-drawer__list-item--flat .menu-drawer__menu--childlist {
    width: 100%;
    padding-inline: 0;
  }

  .menu-drawer-container[open] .menu-drawer__animated-element {
    animation: menu-drawer-nav-open var(--drawer-animation-speed) ease-in-out;
    animation-delay: calc(var(--drawer-animation-speed) + (var(--menu-drawer-animation-index) - 1) * 0.1s);
    animation-fill-mode: backwards;
  }

  .menu-drawer__menu accordion-custom .details-content--no-animation {
    animation: none;
    visibility: visible;
    opacity: 1;
    transform: translateX(0);
    transition: none;
  }

  .menu-drawer__menu details,
  .menu-drawer__menu-item,
  .menu-drawer__menu accordion-custom {
    width: 100%;
  }

  .menu-drawer__list-item--divider .menu-drawer__menu-item:not(.menu-drawer__menu-item--child) {
    min-height: calc(2 * var(--padding-lg) + var(--icon-size-xs));
  }

  .menu-drawer__menu-item--mainlist {
    min-height: calc(2 * var(--padding-lg) + var(--icon-size-xs));
    font-family: var(--menu-top-level-font-family);
    font-style: var(--menu-top-level-font-style);
    font-weight: var(--menu-top-level-font-weight);
    font-size: var(--menu-top-level-font-size);
    line-height: var(--menu-top-level-font-line-height);
    text-transform: var(--menu-top-level-font-case);
    color: var(--menu-top-level-font-color);
    justify-content: space-between;

    &:hover {
      color: var(--menu-top-level-font-color);
    }
  }

  .menu-drawer__menu-item--parent {
    font-family: var(--menu-parent-font-family);
    font-style: var(--menu-parent-font-style);
    font-weight: var(--menu-parent-font-weight);
    font-size: var(--menu-parent-font-size);
    line-height: var(--menu-parent-font-line-height);
    text-transform: var(--menu-parent-font-case);
    color: var(--menu-parent-font-color);

    &:hover {
      color: var(--menu-parent-font-color);
    }
  }

  .menu-drawer__menu-item--child {
    font-family: var(--menu-child-font-family);
    font-style: var(--menu-child-font-style);
    font-weight: var(--menu-child-font-weight);
    font-size: var(--menu-child-font-size);
    line-height: var(--menu-child-font-line-height);
    text-transform: var(--menu-child-font-case);
    color: var(--menu-child-font-color);

    &:hover {
      color: var(--menu-child-font-color);
    }
  }

  .menu-drawer__menu--childlist summary.menu-drawer__menu-item {
    display: flex;
    width: 100%;
    padding-inline-end: 0;
  }

  .menu-drawer__list-item--deep .menu-drawer__menu,
  .menu-drawer__menu--grandchildlist {
    padding-inline: 0;
  }

  .menu-drawer__list-item--deep .menu-drawer__menu {
    padding-block-end: 0.5rem;
  }

  .menu-drawer__list-item--deep.menu-drawer__list-item--divider .menu-drawer__menu {
    padding-block-end: 0.3rem;
  }

  .menu-drawer__list-item--flat.menu-drawer__list-item--divider .menu-drawer__menu--grandchildlist {
    padding-block-end: 0.5rem;
  }

  .menu-drawer__menu-item {
    display: flex;
    padding: var(--padding-2xs) 0;
    position: relative;
    text-decoration: none;
    justify-content: space-between;
    align-items: center;
  }

  .menu-drawer__menu-item:has(> .menu-drawer__link-image) {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    row-gap: var(--padding-3xs);
    padding: 0;
  }

  .menu-drawer__link-image {
    width: 100%;
    position: relative;
    aspect-ratio: 16 / 9;
    object-fit: cover;
  }

  /* Fix alignment for collection image mode links without images in drawer */

  /* Target menu items in grids that have images */
  .menu-drawer__menu--grid:has(.menu-drawer__link-image) .menu-drawer__menu-item:not(:has(> .menu-drawer__link-image)) {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    row-gap: var(--padding-3xs);
    padding: 0;
  }

  .menu-drawer__menu--grid:has(.menu-drawer__link-image)
    .menu-drawer__menu-item:not(:has(> .menu-drawer__link-image))::before {
    content: '';
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    background-color: var(--color-foreground-muted);
    opacity: 0.1;
    border-radius: var(--menu-image-border-radius);
  }

  .menu-drawer__close-button {
    position: relative;
    right: auto;
    top: auto;
    width: fit-content;
    height: fit-content;
    color: inherit;
    padding: var(--padding-lg);
  }

  .menu-drawer__back-button {
    display: flex;
    width: 100%;
    padding: var(--padding-md) var(--padding-xl);
    border: none;
    align-items: center;
    color: var(--color-foreground);
    background-color: transparent;
    text-align: left;
    text-decoration: none;
    white-space: nowrap;
    overflow-x: hidden;
    line-height: 1.2;
    box-shadow: none;
  }

  .menu-drawer__menu-item-text {
    overflow: hidden;
    text-overflow: ellipsis;
  }

  /** Styles when the country selector is hidden */
  .menu-drawer .language-selector:not(.menu-drawer__submenu *) {
    width: fit-content;
    padding-inline-start: 0;

    .localization-form__select {
      text-align: left;
    }
  }

  .menu-drawer__menu-item > .svg-wrapper {
    width: fit-content;
    height: fit-content;
    margin: 0;
    padding-block: var(--padding-lg);
    padding-inline-start: var(--padding-xl);
    flex-shrink: 0;
  }

  .menu-drawer__list-item--divider .menu-drawer__menu-item > .svg-wrapper {
    padding-block: var(--padding-md);
  }

  .menu-drawer svg {
    width: var(--icon-size-xs);
    height: var(--icon-size-xs);
  }

  .menu-drawer__submenu {
    position: absolute;
    width: 100%;
    top: 0;
    height: 100dvh;
    left: 0;
    background-color: var(--color-background);
    z-index: var(--layer-flat);
    transform: translateX(-5%);
    visibility: hidden;
    overflow-y: auto;
    opacity: 0;
  }

  .menu-drawer__back-button > .svg-wrapper {
    margin-right: var(--padding-md);
    width: var(--icon-size-xs);
    height: var(--icon-size-xs);
  }

  .menu-drawer__utility-links {
    display: flex;
    flex-direction: column;
    padding: 0;
    margin-block: auto var(--padding-sm);
    margin-inline-start: var(--padding-xl);
    background-color: rgb(var(--color-foreground) 0.03);
  }

  .menu-drawer__account {
    display: inline-flex;
    align-items: center;
    gap: var(--gap-xs);
    text-decoration: none;
    height: 44px;
    font-size: 1.4rem;
    color: rgb(var(--color-foreground));
  }

  .menu-drawer__account svg {
    height: var(--icon-size-sm);
    width: var(--icon-size-sm);
  }

  .menu-drawer__account shop-user-avatar {
    --shop-avatar-size: 2.4rem;

    margin-right: 0.55rem;
    margin-left: -0.45rem;
  }

  .menu-drawer__link-image,
  .menu-drawer__featured-product-image,
  .menu-drawer__featured-collection-image,
  .menu-drawer__featured-collection-link::before {
    border-radius: var(--menu-image-border-radius);
  }

  @keyframes menu-drawer-nav-open {
    0% {
      visibility: hidden;
      opacity: 0;
      transform: translateX(-0.5rem);
    }

    100% {
      visibility: visible;
      opacity: 1;
      transform: translateX(0);
    }
  }

  @keyframes menu-drawer-subnav-open {
    0% {
      visibility: visible;
      opacity: 1;
      transform: translateX(0);
    }

    100% {
      visibility: hidden;
      opacity: 0;
      transform: translateX(-1rem);
    }
  }

  /* Drawer Localization Styles */
  .drawer-localization__button .icon-flag {
    width: var(--menu-localization-font-size, var(--icon-size-sm));
    height: var(--menu-localization-font-size, var(--icon-size-sm));
    clip-path: circle(50%); /* stylelint-disable-line */
    background-position: center;
    background-size: cover;
    margin-inline-end: 4px;
    position: relative;
  }

  .drawer-localization__button .icon-flag::after {
    content: '';
    position: absolute;
    inset: 0;
    box-shadow: inset 0 0 var(--size-shadow) var(--color-shadow);
    border-radius: 50%;
  }

  .drawer-localization .country-filter {
    padding-block: 8px;
  }

  .drawer-localization .drawer-localization__button {
    display: flex;
    padding: 0;
    position: relative;
    text-decoration: none;
    height: 44px;

    &:hover {
      color: var(--color-foreground);
    }
  }

  .drawer-localization .drawer-localization__button .icon-caret {
    width: fit-content;
    height: fit-content;
    margin: 0;
    padding: var(--padding-xl) var(--padding-xl) var(--padding-xl) var(--padding-xs);
  }

  .menu-drawer__localization:not(drawer-localization-component) .language-selector {
    font-family: var(--menu-localization-font);
    font-size: var(--menu-localization-font-size);
  }

  .menu-drawer__localization .language-selector.h5 {
    padding-inline-start: 0;
  }

  .drawer-localization {
    display: contents;
    color: var(--color-foreground);
  }

  .drawer-localization localization-form-component {
    position: relative;
    height: 100%;
  }

  .drawer-localization .mobile-localization,
  .drawer-localization .drawer-localization__button--label {
    display: flex;
    gap: var(--gap-xs);
    margin-block: 0;
    align-items: center;
  }

  .drawer-localization__button--label.h6 {
    font-family: var(--menu-localization-font);
  }

  .drawer-localization img {
    width: var(--icon-size-sm);
  }

  .drawer-localization .localization-button__icon,
  .drawer-localization .localization-button__icon svg {
    width: var(--icon-size-xs);
    height: var(--icon-size-xs);
  }

  .drawer-localization summary.is-disabled {
    pointer-events: none;
  }

  .drawer-localization .localization-wrapper {
    width: 100%;
  }

  .drawer-localization .localization-form {
    display: flex;
    flex-direction: column;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  .drawer-localization .localization-form > * {
    padding-inline: var(--padding-xl);
  }

  .drawer-localization .language-selector .svg-wrapper.icon-caret {
    transform: translateY(-50%) rotate(0deg);
  }

  .drawer-localization .language-selector .svg-wrapper.icon-caret svg {
    transform: none;
  }
/* END_SNIPPET:header-drawer */

/* START_SNIPPET:language-switcher (INDEX:172) */
.language-wrapper {
    margin-top: -8px;
    margin-bottom: 16px;
    width: auto;
  }

  @media screen and (min-width: 768px) {
    .language-wrapper {
      margin-top: -96px;
      margin-bottom: 0;
      width: 100%;
    }
  }

  @media screen and (min-width: 1280px) {
    .language-wrapper {
      margin-top: -93px;
    }
  }

  .footer-utilities .language-wrapper {
    margin: 0;
  }

  .language-wrapper .localization-wrapper {
    top: auto;
    bottom: calc(100% + var(--spacing-xs));
    left: auto;
    right: 0;
  }

  .language-wrapper .localization-wrapper[hidden] {
    display: none !important;
  }

  .language-wrapper .dropdown-localization__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--color-espresso-a8);
    border-radius: var(--radius-full);
    background: transparent;
    color: var(--color-text-primary, var(--color-primary));
    gap: var(--gap-xs);
    padding-left: var(--padding-sm);
    padding-right: var(--padding-md);
    min-height: var(--button-height-medium);
    box-shadow: none;
    backdrop-filter: none;
  }

  @media screen and (min-width: 768px) {
    .language-wrapper .dropdown-localization__button {
      min-height: var(--button-height-large);
      padding-left: var(--padding-md);
      padding-right: var(--padding-md);
    }
  }

  .language-wrapper .dropdown-localization__button:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
  }

  .language-wrapper .localization-selector .icon-caret {
    width: 12px;
    height: 12px;
    margin-right: 0;
    display: inline-flex;
  }

  .language-wrapper .dropdown-localization__button svg {
    margin-right: 0;
  }

  .language-wrapper .dropdown-localization__button .icon-flag {
    width: 20px;
    height: 20px;
    border-radius: var(--radius-full);
    overflow: hidden;
    flex-shrink: 0;
  }

  .language-wrapper .dropdown-localization__button .icon-flag svg {
    width: 100%;
    height: 100%;
    display: block;
  }

  .language-wrapper .dropdown-localization__button .country-text {
    margin-right: 0;
    flex: 0 1 auto;
    text-align: left;
    text-transform: capitalize;
  }

  .language-consentmo-wrapper .language-wrapper .dropdown-localization__button {
    padding: var(--spacing-s) var(--spacing-m);
    gap: var(--spacing-xs);
    height: auto;
    min-height: var(--input-height-m, var(--button-height-medium));
  }

  .language-consentmo-wrapper .icon-flag svg {
    width: 20px;
    height: 20px;
  }

  .language-consentmo-wrapper .localization-selector .icon-caret {
    width: 12px;
    margin-right: 0;
  }

  .language__content-wrapper {
    display: flex;
    justify-content: end;
  }

  .language-wrapper .dropdown-localization {
    position: relative;
    z-index: 9;
    display: inline-flex;
  }

  @media (prefers-reduced-motion: reduce) {
    .language-wrapper .localization-selector .icon-caret {
      transition: none;
    }
  }
/* END_SNIPPET:language-switcher */

/* START_SNIPPET:list-filter-pills (INDEX:174) */
.list-filter-pills {
    display: flex;
    align-items: center;
  }

  .list-filter-pills__list {
    display: flex;
    flex-direction: row;
    align-items: center;
    list-style: none;
    flex-wrap: wrap;
    margin: 0;
    padding: 3px 5px 3px 3px;
    background-color: var(--color-background);
    width: fit-content;
    border: 1px solid var(--color-espresso-a16);
    gap: 0;
    border-radius: var(--radius-xl);
    @media screen and (min-width: 768px) {
      padding: 4px;
    }
  }

  .list-filter-pills__item {
    position: relative;
  }

  /* facet-remove-component must not collapse or block the button */
  .list-filter-pills__item--all facet-remove-component {
    display: flex;
    align-items: center;
  }

  .list-filter-pills__input {
    position: absolute;
    inset: 0;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    aspect-ratio: unset;
    border: none;
    border-radius: 0;
    background: transparent;
    appearance: auto;
    display: block;
  }

  .list-filter-pills__label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: var(--padding-xs) var(--padding-2sm);
    border-radius: var(--radius-xl);
    color: var(--color-espresso-700);
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    background: transparent;
    border: none;
    transition:
      background-color 0.2s ease,
      color 0.2s ease,
      font-weight 0.2s ease,
      box-shadow 0.2s ease;
  }
  @media screen and (min-width: 768px) {
    .list-filter-pills__label {
      padding: var(--padding-xs) var(--padding-sm);
    }
  }

  .list-filter-pills__item:not(.list-filter-pills__item--disabled) .list-filter-pills__label:hover {
    color: rgb(var(--color-foreground-rgb));
    background-color: rgb(var(--color-foreground-rgb) / 0.06);
  }

  /* Active state — radio:checked + label and All button via active-class toggle */
  .list-filter-pills__input:checked + .list-filter-pills__label,
  .list-filter-pills__label--active {
    background-color: var(--color-espresso-a8);
    color: rgb(var(--color-espresso-900));
  }

  .list-filter-pills__input:checked + .list-filter-pills__label:hover,
  .list-filter-pills__label--active:hover {
    background-color: var(--color-background);
  }

  .list-filter-pills__item--disabled .list-filter-pills__label {
    opacity: var(--disabled-opacity);
    cursor: not-allowed;
  }

  .list-filter-pills__input:focus-visible + .list-filter-pills__label,
  .list-filter-pills__label--all:focus-visible {
    outline: var(--focus-outline-width) solid currentcolor;
    outline-offset: var(--focus-outline-offset);
  }
/* END_SNIPPET:list-filter-pills */

/* START_SNIPPET:list-filter (INDEX:175) */
.facets .checkbox .icon-checkmark {
    transition: border-color 0.2s ease, background-color 0.2s ease;
  }

  .facets .checkbox:not(.checkbox--disabled):hover .icon-checkmark {
    border-color: rgb(var(--color-foreground-rgb) / var(--opacity-40-60));
    background-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
  }

  /* Hover state for checked checkboxes - targeting via adjacent sibling */
  .facets .checkbox:not(.checkbox--disabled):hover .checkbox__input:checked + .checkbox__label .icon-checkmark {
    background-color: rgb(var(--color-foreground-rgb) / var(--opacity-85));
  }

  .facets .checkbox:not(.checkbox--disabled):hover .checkbox__label-text {
    color: rgb(var(--color-foreground-rgb) / var(--opacity-90));
  }

  .facets .checkbox .checkbox__label-text {
    transition: color 0.2s ease, font-weight 0.2s ease;
  }

  /* Pill style */
  .facets__pill-label {
    --pill-label-padding-inline: var(--padding-xs);
    --pill-label-border-radius: var(--style-border-radius-md);
    --pill-label-border-width: var(--variant-picker-button-border-width);
    --pill-label-height: var(--button-size-md);
    --pill-label-focus-outline-color: var(--color-foreground);
    --pill-label-color: var(--color-foreground);
    --pill-label-color-rgb: var(--color-foreground-rgb);
    --pill-label-background-color: var(--color-background);
    --pill-label-background-color-rgb: var(--color-background-rgb);
    --pill-label-border-opacity: var(--facets-low-opacity);

    display: inline-flex;
    position: relative;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 0 0 var(--pill-label-border-width) rgb(var(--pill-label-color-rgb) / var(--opacity-10-25));
    border-radius: var(--pill-label-border-radius);
    height: var(--pill-label-height);
    width: 100%;
    padding-inline: var(--pill-label-padding-inline);
    color: rgb(var(--pill-label-color-rgb));
    background-color: rgb(var(--pill-label-background-color-rgb));
    cursor: pointer;
    transition: color var(--animation-speed) var(--animation-easing),
      background-color var(--animation-speed) var(--animation-easing);
    outline-color: var(--pill-label-focus-outline-color);

    &:hover {
      --pill-label-border-opacity: 100%;
    }
  }

  .facets__pill-input {
    &:checked + .facets__pill-label {
      --pill-label-color-rgb: var(--color-background-rgb);
      --pill-label-background-color-rgb: var(--color-foreground-rgb);
      --pill-label-border-opacity: 0;
    }

    &:disabled + .facets__pill-label {
      opacity: var(--disabled-opacity);
      cursor: not-allowed;

      &:hover {
        --pill-label-border-opacity: var(--facets-low-opacity);
      }
    }
  }

  .facets__status-wrapper {
    display: flex;
    align-items: center;
  }

  .facets--drawer .facets__status-wrapper {
    @media screen and (max-width: 749px) {
      gap: var(--gap-3xs);
    }
  }

  .facets--vertical .facets__status-wrapper {
    gap: var(--gap-xs);
  }

  .facets--horizontal .facets__status-wrapper {
    gap: 0;
  }

  .facets__pill-input:disabled + .facets__pill-label svg {
    position: absolute;
    top: 0;
    left: 0;
    border-radius: var(--style-border-radius-md);
  }

  .facets__pill-label svg line {
    stroke-width: 1.5px;
    stroke: rgb(var(--color-foreground-rgb) / var(--facets-low-opacity));
  }

  .facets__pill-wrapper {
    position: relative;
  }

  .facets__pill-input {
    position: absolute;
    inset: 0;
    margin: 0;
    padding: 0;
    width: auto;
    height: auto;
    aspect-ratio: unset;
    border: none;
    border-radius: 0;
    background: transparent;
    appearance: auto;
    display: block;
    opacity: 0;
    cursor: pointer;
  }

  /* Swatches */
  .facets__status--swatches {
    display: none;
  }

  .facets__swatch-wrapper {
    display: flex;
  }

  .variant-option__swatch-wrapper {
    position: relative;
    overflow: visible;
    border-radius: var(--options-border-radius);
  }

  .variant-option--swatches-disabled {
    pointer-events: none;
    cursor: not-allowed;
  }

  .variant-option--swatches-disabled .variant-option__swatch-wrapper {
    overflow: hidden;
  }

  .facets--horizontal .facets__status--swatches {
    @media screen and (min-width: 768px) {
      display: flex;
    }
  }

  .facets__status--swatches .swatch {
    width: calc(var(--variant-picker-swatch-width) / 1.5);
    height: calc(var(--variant-picker-swatch-height) / 1.5);
  }

  .facets__status--swatches .swatch + .swatch {
    margin-left: calc(var(--variant-picker-swatch-width) / -3);
    outline: 1px solid rgb(var(--color-background-rgb));
  }

  .facets__inputs-wrapper .facets__inputs-list--images {
    display: grid;
    grid-template-columns: repeat(var(--image-columns), 125px);
    gap: var(--gap-sm);
  }

  .facets--drawer .facets__inputs-wrapper .facets__inputs-list--images {
    grid-template-columns: repeat(3, 1fr);

    @media screen and (min-width: 768px) {
      grid-template-columns: repeat(4, 1fr);
    }
  }

  .facets--vertical .facets__inputs-wrapper .facets__inputs-list--images {
    grid-template-columns: repeat(2, 1fr);
  }

  .facets--drawer .facets__inputs-list--images {
    padding-top: var(--padding-xs);
  }

  .facets__image-wrapper {
    aspect-ratio: 1/1;
    width: 100%;
    padding: var(--padding-xs);
    position: relative;
    overflow: hidden;
  }

  .facets__image-wrapper img {
    height: 100%;
    width: 100%;
    object-fit: contain;
    border-radius: calc(var(--border-radius) / 2);
  }

  .facets__image-label {
    width: 100%;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-block-end: var(--padding-xs);
    cursor: pointer;
  }

  .facets__inputs-list-item--disabled .facets__image-label {
    cursor: not-allowed;
  }

  /* Filter-specific variant-option styles */
  .facets__inputs-list--swatches-grid .variant-option__button-label--has-swatch:hover .swatch {
    --focus-outline: var(--focus-outline-width) solid rgb(var(--color-foreground-rgb) / var(--opacity-35-55));

    outline: var(--focus-outline);
    outline-offset: var(--focus-outline-offset);
  }

  .facets__inputs-list--swatches-grid .variant-option__button-label:has(:focus-visible) .swatch {
    --focus-outline: var(--focus-outline-width) solid currentcolor;

    outline: var(--focus-outline);
    outline-offset: var(--focus-outline-offset);
  }

  .facets__inputs-list--swatches-grid .variant-option__button-label:has(:focus-visible) {
    outline: none;
  }

  .facets__inputs-list--swatches-grid .variant-option__button-label--has-swatch:hover {
    outline: none;
  }

  .facets__inputs-list--swatches-grid .variant-option__button-label--has-swatch:has(:checked) {
    --focus-outline: none;
  }

  .facets__inputs-list--swatches-grid .variant-option__button-label--has-swatch:has(:checked) .swatch {
    outline: var(--focus-outline);
    outline-offset: var(--focus-outline-offset);
  }

  .facets__inputs-list--swatches .variant-option__button-label {
    --color-variant-text: var(--color-foreground);
  }

  .facets__inputs-list--swatches {
    --variant-picker-swatch-width: 32px;
    --variant-picker-swatch-height: 32px;

    @media screen and (min-width: 768px) {
      --variant-picker-swatch-width: 26px;
      --variant-picker-swatch-height: 26px;
    }
  }

  .facets--vertical .facets__inputs-wrapper .facets__inputs-list--swatches-grid {
    gap: var(--gap-sm);
  }

  .facets--vertical .facets__inputs-list--swatches .facets__inputs-list-item {
    display: flex;
  }

  .facets__inputs-wrapper .facets__inputs-list--swatches-grid {
    --columns: 2;

    display: grid;
    grid-template-columns: repeat(var(--columns), 1fr);
  }

  .facets__inputs-wrapper .facets__inputs-list--swatches-grid .variant-option--swatches {
    cursor: pointer;
    overflow: visible;
  }

  .facets__inputs-list-item--disabled .variant-option--swatches {
    cursor: not-allowed;
  }

  .facets__inputs-wrapper .facets__inputs-list--swatches-grid label {
    cursor: pointer;
    word-break: break-word;
    white-space: normal;
  }

  .facets__inputs-list--swatches-grid .facets__inputs-list-item--disabled label {
    cursor: not-allowed;
  }

  .facets__inputs-list-item--disabled .variant-option__button-label {
    cursor: not-allowed;
  }

  .facets__inputs-wrapper
    .facets__inputs-list--swatches-grid
    .variant-option__button-label--has-swatch:has(input[type='checkbox']) {
    align-items: center;
    overflow: visible;
    justify-content: flex-start;
    display: flex;
    width: 100%;
    flex-basis: unset;
    gap: var(--gap-sm);
  }

  .facets__inputs-wrapper .facets__inputs-list--swatches-grid .variant-option__button-label:has(:checked) {
    color: rgb(var(--color-foreground-rgb));
    background-color: rgb(var(--color-background-rgb));
    transition: font-weight 0.2s ease;
  }

  .facets .variant-option--swatches {
    --options-border-radius: var(--variant-picker-swatch-radius);

    width: auto;
  }

  /* Variant option images (filters) */
  .variant-option--images {
    --image-facet-border-width: var(--variant-picker-button-border-width);
    --image-facet-border-opacity: var(--facets-low-opacity);
    --image-facet-border-radius: var(--style-border-radius-xs);

    position: relative;
    border-radius: var(--image-facet-border-radius);
    box-shadow: inset 0 0 0 var(--image-facet-border-width)
      rgb(var(--color-foreground-rgb) / var(--image-facet-border-opacity));

    &:hover {
      --image-facet-border-opacity: 100%;
    }

    &:has(input:checked) {
      transition: font-weight 0.2s ease;
    }

    &:has(input:checked):hover {
      --image-facet-border-width: calc(var(--variant-picker-button-border-width) + 0.5px);
    }

    &:has(input:focus-visible) {
      outline: var(--focus-outline-width) solid currentcolor;
      outline-offset: var(--focus-outline-offset);
    }
  }

  .variant-option--images input {
    /* remove the checkbox from the page flow */
    position: absolute;

    /* set the dimensions to match those of the label */
    inset: 0;

    /* hide it */
    opacity: 0;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: unset;
    border: none;
    border-radius: 0;
    background: transparent;
    appearance: auto;
    display: block;
    cursor: pointer;
  }

  .facets__inputs-list-item--disabled .variant-option--images {
    --image-facet-border-opacity: 0;

    opacity: var(--disabled-opacity);
    cursor: not-allowed;

    &:hover {
      --image-facet-border-opacity: 0;
    }

    img {
      opacity: var(--disabled-opacity);
    }

    input,
    label,
    .facets__image-label {
      cursor: not-allowed;
    }

    .facets__image-wrapper {
      border: var(--style-border-width) solid rgb(var(--color-foreground-rgb) / var(--opacity-30));
      border-radius: var(--image-facet-border-radius);
    }
  }

  /* Position disabled-svg */
  .variant-option--images svg {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    stroke-width: var(--border-width);
    stroke: rgb(var(--color-foreground-rgb) / var(--opacity-5));
  }

  /* Position label text and handle overflow */
  .facets__inputs-list-item,
  .variant-option--images {
    min-width: 0;
  }

  /* Safari < 16.4 outline border-radius workaround - filter-specific */
  @supports not (background-color: rgb(from red 150 g b / alpha)) {
    .facets__inputs-list--swatches-grid .variant-option__button-label--has-swatch:hover .swatch {
      outline: none;
      position: relative;
      overflow: visible;
    }

    .facets__inputs-list--swatches-grid .variant-option__button-label--has-swatch:hover .swatch::after {
      content: '';
      position: absolute;
      inset: calc(-1 * var(--focus-outline-offset));
      border: var(--focus-outline);
      border-radius: var(--focus-outline-radius, 50%);
      background-color: transparent;
      display: inherit;
    }
  }
/* END_SNIPPET:list-filter */

/* START_SNIPPET:overlay (INDEX:186) */
.overlay {
    position: absolute;
    inset: 0;
    z-index: var(--overlay-layer);
    pointer-events: none;
    border-radius: var(--overlay-border-radius, 0);
  }

  .overlay--solid {
    background: var(--overlay-color);
  }

  .overlay--gradient {
    background: linear-gradient(var(--overlay-direction), var(--overlay-color), var(--overlay-color--end));
  }
/* END_SNIPPET:overlay */

/* START_SNIPPET:price-filter (INDEX:188) */
/* Price filter */
  .price-facet {
    container-type: inline-size;
    display: flex;
    flex-direction: column;
  }
  .price-facet--horizontal {
    min-width: 360px;
  }

  .price-facet__inputs-wrapper {
    display: flex;
    flex-direction: row;
    padding: var(--style-border-width-inputs);
    gap: calc(var(--gap-sm) + (var(--style-border-width-inputs) * 2));
  }

  @container (max-width: 199px) {
    .price-facet__inputs-wrapper {
      flex-wrap: wrap;
    }
  }

  .price-facet__input {
    width: 100%;
    text-align: right;
    padding-left: calc(2.5 * var(--input-padding-x));
  }

  .price-facet__input::placeholder {
    color: var(--facets-input-label-color);
  }

  .price-facet__separator {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--font-paragraph--size);
  }

  .price-facet__highest-price {
    padding: var(--padding-xs) 0 var(--padding-sm);
  }

  .price-facet__highest-price--horizontal {
    padding: 0 var(--padding-md) var(--padding-xs);
  }

  .price-facet__label {
    top: 0;
    left: 0;
    color: var(--facets-input-label-color);
    padding: var(--input-padding-y) var(--input-padding-x);
    transform: none;
  }
/* END_SNIPPET:price-filter */

/* START_SNIPPET:product-card (INDEX:192) */
product-card-link,
  :not(product-card-link) product-card {
    width: 100%;
  }

  .product-card__placeholder-image svg {
    height: 100%;
  }

  .product-card slideshow-arrows .slideshow-control {
    display: none;

    @media screen and (min-width: 768px) {
      display: grid;
    }
  }
/* END_SNIPPET:product-card */

/* START_SNIPPET:product-grid (INDEX:194) */
.product-grid {
    transition: opacity 0.2s ease;
  }

  .product-grid.is-loading {
    opacity: 0.5;
    pointer-events: none;
    filter: grayscale(0.5); 
  }

  .product-grid {
    --product-grid-gap: var(--product-grid-gap-mobile);
    --mobile-columns: 2; /* Default value */

    isolation: isolate;

    @media screen and (min-width: 768px) {
      --product-grid-gap: var(--product-grid-gap-desktop);
    }
  }

  .product-grid slideshow-arrows .slideshow-control {
    display: none;

    @media screen and (min-width: 768px) {
      display: grid;
    }
  }

  /* This triggers iOS < 16.4 */
  @supports not (background-color: rgb(from red 150 g b / alpha)) {
    /* Force aspect ratio to auto for iOS < 16.4 since it's not compatible with the infinite pagination */
    .product-grid .product-media,
    .product-grid .product-media-container {
      aspect-ratio: auto;
    }
  }

  .main-collection-grid {
   

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

  .main-collection-grid__empty {
    padding-block: var(--padding-6xl);
    padding-inline: var(--page-margin);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: var(--padding-sm);
  }

  .main-collection-grid__empty-title {
    margin: 0;
  }
/* END_SNIPPET:product-grid */

/* START_SNIPPET:product-media-gallery-content (INDEX:196) */
.dialog-zoomed-gallery__dialog {
    background-color: var(--color-background);
  }

  .dialog-zoomed-gallery {
    cursor: zoom-out;
  }

  .dialog--preloading {
    opacity: 0;
  }

  .product-media__drag-zoom-wrapper {
    aspect-ratio: inherit;
    min-height: inherit;
    min-width: inherit;
    display: inherit;
    flex: inherit;
  }

  .dialog-zoomed-gallery {
    /* Prevent scroll wheel or swipe scrolling */
    overscroll-behavior: none;
    scrollbar-width: none;
    display: flex;
    scroll-snap-type: x mandatory;
    overflow-x: hidden;
    scroll-behavior: smooth;
    height: 100%;
  }

  .dialog-zoomed-gallery::-webkit-scrollbar {
    display: none;
  }

  .dialog-zoomed-gallery .product-media-container {
    flex: 0 0 100%;
    scroll-snap-align: start;
    position: relative;
  }

  .dialog-zoomed-gallery .product-media-container--image .product-media {
    aspect-ratio: auto;
    height: 100%;
    width: 100%;
    overflow: hidden;
  }

  .dialog-zoomed-gallery .product-media-container--video,
  .dialog-zoomed-gallery .product-media-container--external_video {
    align-content: center;
  }

  .dialog-zoomed-gallery
    :is(.product-media-container--video, .product-media-container--external_video, .product-media-container--model)
    .product-media {
    aspect-ratio: auto;
    align-items: center;
    height: 100%;
  }

  .dialog-zoomed-gallery
    :is(.product-media-container--video, .product-media-container--external_video, .product-media-container--model)
    .product-media
    .product-media__image {
    height: 100%;
  }

  .product-media__drag-zoom-wrapper {
    display: flex;
    aspect-ratio: auto;
    height: 100%;
    width: 100%;
    overflow: scroll;
    scrollbar-width: none;
    justify-content: center;
  }

  .product-media__drag-zoom-wrapper::-webkit-scrollbar {
    display: none;
  }

  .product-media__drag-zoom-wrapper .product-media__image {
    --product-media-fit: contain;

    object-fit: var(--product-media-fit);
    overflow: hidden;
    transform: scale(var(--drag-zoom-scale))
      translate(var(--drag-zoom-translate-x, 0), var(--drag-zoom-translate-y, 0));
  }

  .media-gallery--hint {
    --slideshow-gap: var(--gap-2xs);
  }

  .media-gallery--hint :not(.dialog-zoomed-gallery) > .product-media-container:not(:only-child) {
    width: 90%;
  }

  .media-gallery--hint :not(.dialog-zoomed-gallery) > .product-media-container:not(:only-child) .product-media img {
    object-fit: cover;
  }

  .dialog-zoomed-gallery__close-button {
    color: #fff;
    mix-blend-mode: difference;
    z-index: var(--layer-raised);
  }

  .media-gallery__mobile-controls {
    grid-area: auto;
  }

  /* Mobile thumbnails styling */
  .media-gallery__mobile-controls[thumbnails] {
    --thumbnail-width: 44px;
  }

  .media-gallery__mobile-controls[thumbnails] .slideshow-controls__thumbnail {
    width: var(--thumbnail-width);
    height: auto;
  }


  .dialog-zoomed-gallery .product-media-container--zoomable.product-media-container--image {
    cursor: zoom-out;
  }

  .product-media-container--zoomable.product-media-container--image {
    cursor: zoom-in;
  }

  .dialog-zoomed-gallery .product-media-container--video deferred-media,
  .dialog-zoomed-gallery .product-media-container--external_video deferred-media {
    height: auto;
    aspect-ratio: var(--ratio);
  }

  .dialog-zoomed-gallery .product-media-container--model .product-media__image {
    /* Make the height match the height of the model-viewer */
    height: 100vh;
  }

  .dialog-zoomed-gallery__dialog {
    view-transition-name: zoom-dialog-ui;
  }

  :root:active-view-transition .dialog-zoomed-gallery__dialog {
    background-color: transparent;
  }

  ::view-transition-group(zoom-dialog-ui) {
    z-index: calc(var(--layer-overlay) + 1);
  }

  ::view-transition-old(gallery-item-open),
  ::view-transition-new(gallery-item-open) {
    animation-timing-function: step-start;
  }

  ::view-transition-old(gallery-item-close),
  ::view-transition-new(gallery-item-close) {
    animation-timing-function: step-end;
  }

  :root:active-view-transition .product-media__image {
    background-color: transparent;
  }

  ::view-transition-group(gallery-item-open),
  ::view-transition-group(gallery-item-close) {
    z-index: var(--layer-overlay);
    border-radius: var(--gallery-media-border-radius);
    overflow: clip;
  }

  ::view-transition-group(gallery-item-open) {
    animation-timing-function: var(--spring-d300-b0-easing);
    animation-duration: var(--spring-d300-b0-duration);
  }

  ::view-transition-group(gallery-item-close) {
    animation-timing-function: var(--spring-d220-b0-easing);
    animation-duration: var(--spring-d220-b0-duration);
  }

  ::view-transition-group(gallery-item-open),
  ::view-transition-group(gallery-item-close) {
    animation-timing-function: step-start;
    animation-duration: 0.1s;
  }

  ::view-transition-new(gallery-item-open) {
    animation: fade-in var(--spring-d180-b0-duration) var(--spring-d180-b0-easing) forwards;
    animation-timing-function: var(--spring-d180-b0-easing);
    animation-duration: var(--spring-d180-b0-duration);
  }

  ::view-transition-old(gallery-item-close) {
    animation: fade-out 0.08s linear forwards;
  }


  @keyframes fade-in {
    from {
      scale: 0.98;
      opacity: 0.8;
    }
  }

  @keyframes fade-out {
    to {
      opacity: 0;
    }
  }
/* END_SNIPPET:product-media-gallery-content */

/* START_SNIPPET:quick-add-modal (INDEX:200) */
#quick-add-dialog {
    display: contents;
  }

  .quick-add-modal {
    padding: 0;
    border: var(--style-border-popover);
    overflow: hidden;
    box-shadow: 0 5px 30px rgb(0 0 0 / var(--opacity-15));
    border-radius: 0;
    border: 1px solid rgba(247, 242, 238, 0.64);
    background: rgba(247, 242, 238, 0.72);
    backdrop-filter: blur(40px);
    position: fixed;
    min-height: unset;
    max-width: 100%;
    overflow: clip;
    height: fit-content;
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal {
      width: 100%;
      max-width: 688px;
      border-radius: var(--radius-xl);
    }
    .quick-add-modal .layout-panel-flex {
      flex-direction: var(--flex-direction, column);
    }
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal {
      width: 92%;
      max-width: 1120px;
      max-height: 98vh;
    }
  }

  @media screen and (min-width: 1440px) {
    .quick-add-modal {
      max-width: var(--max-width-1200);
    }
  }

  @media screen and (min-width: 1920px) {
    .quick-add-modal {
      max-width: var(--max-width-1400);
    }
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal {
      border-radius: 40px;
    }
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal[open] {
      display: flex;
    }
  }

  .quick-add-modal[open] {
    animation: modalSlideInTop var(--animation-speed) var(--animation-easing) forwards;
  }

  .quick-add-modal.dialog-closing {
    animation: modalSlideOutTop var(--animation-speed) var(--animation-easing) forwards;
  }

  .quick-add-modal__close {
    position: absolute;
    top: var(--icon-button-size-xsmall);
    right: var(--icon-button-size-xsmall);
    transition: transform 0.15s var(--animation-timing-bounce);
    z-index: var(--layer-raised);
    overflow: visible;
    transform-origin: center;
    background: rgba(247, 240, 227, 0.72);
    border-radius: 9999px;
    color: var(--color-primary);
    border: 1px solid rgba(42, 18, 10, 0.16);
    padding: 9px;
    width: auto;
    height: auto;
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal__close {
      padding: 0;
      width: var(--icon-button-size-large);
      height: var(--icon-button-size-large);
    }
  }

  .quick-add-modal__close:active {
    transform: scale(0.99) translateY(1px);
  }

  .quick-add-modal__close:focus-visible {
    outline: none;
  }

  .quick-add-modal__close:focus-visible::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: calc(var(--style-border-radius-popover) - var(--margin-2xs));
    outline: var(--focus-outline-width) solid currentColor;
  }

  .quick-add-modal__content {
    grid-template-columns: repeat(7, 1fr);
    grid-template-rows: 100% 1fr;
    position: relative;
    overflow-y: auto;
    max-height: 100dvh;
    flex-grow: 1;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: auto;
    padding-inline: 0;
    padding-block: var(--padding-xs) 0;
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    height: auto;
    display: flex;
    flex-direction: column;
  }

  .quick-add-modal__content .restock-rocket-payment-widget {
    margin-top: var(--padding-2xs);
    margin-bottom: var(--margin-2sm);
  }
  .quick-add-modal__content .restock-rocket-payment-option {
    padding: var(--padding-xs) var(--padding-md);
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal__content {
      padding-inline: var(--padding-md);
      padding-block: var(--padding-md);
      display: grid;
      grid-template-columns: 51.31fr 48.68fr;
      grid-template-rows: 1fr;
    }
  }

  @media screen and (min-width: 1440px) {
    .quick-add-modal__content {
      grid-template-columns: 56.84fr 43.15fr;
    }
  }

  @media screen and (min-width: 1920px) {
    .quick-add-modal__content {
      grid-template-columns: 63.15fr 36.84fr;
    }
  }

  .quick-add-modal__content > div {
    padding-inline: var(--padding-xs);
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal__content > div {
      padding-inline: 0;
    }
  }

  .quick-add-modal__content .media-gallery--grid .media-gallery__grid {
    grid-template-columns: 1fr;
  }

  .quick-add-modal__content .media-gallery--grid.media-gallery--two-column .product-media-container:first-child {
    grid-column: auto;
  }

  .quick-add-modal__content .view-more-details__wrapper {
    display: flex;
    justify-content: flex-start;
    width: 100%;
  }

  .view-more-details__wrapper .view-more-details {
    display: flex;
    align-items: center;
    width: fit-content;
  }

  .quick-add-modal__content variant-picker {
    padding-inline: var(--padding-xs);
    margin-top: var(--margin-md);
    margin-left: calc(-1 * var(--margin-xs));
    margin-right: calc(-1 * var(--margin-xs));
    width: calc(100% + var(--margin-md));
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal__content variant-picker {
      padding-inline: var(--padding-md);
      margin-top: var(--margin-md);
      margin-left: calc(-1 * var(--margin-md));
      margin-right: calc(-1 * var(--margin-md));
      width: calc(100% + var(--margin-md));
    }
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal__content variant-picker {
      margin-left: 0;
      margin-right: 0;
      width: 100%;
      padding-inline: 0;
    }
  }

  @media screen and (min-width: 1280px) {
    .quick-add-modal__content variant-picker {
      margin-top: var(--margin-xl);
    }
  }

  .quick-add-modal__content variant-picker,
  .quick-add-modal__content product-form-component {
    grid-column: 1 / -1;
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal__content variant-picker,
    .quick-add-modal__content product-form-component {
      grid-column: unset;
    }
  }

  .quick-add-modal__content .product-media-container__zoom-button {
    cursor: default;
  }

  .quick-add-modal__content .product-details {
    grid-column: 2 / span 2;
    grid-row: span 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    position: relative;
    grid-column: unset;
    grid-row: unset;
  }

  dialog[open] .quick-add-modal__content .product-details {
    animation: fadeSlideIn 0.3s var(--animation-timing-fade-in) both;
    animation-delay: 0.1s;
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal__content .product-details {
      grid-column: 4 / -1;
      grid-row: 1 / span 2;
      height: auto;
      grid-column: 2 / 3;
      grid-row: 1;
    }
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal__content .product-details {
      height: 100%;
      padding-left: var(--spacing-m);
      height: 64.1vw;
      overflow-y: auto;
    }
  }

  @media screen and (min-width: 1280px) {
    .quick-add-modal__content .product-details {
      padding-right: var(--spacing-xs);
      padding-left: var(--spacing-xl);
      height: 633px;
    }
  }

  @media screen and (min-width: 1440px) {
    .quick-add-modal__content .product-details {
      height: 777px;
    }
  }

  @media screen and (min-width: 1920px) {
    .quick-add-modal__content .product-details {
      height: 753px;
    }
  }

  @property --quick-add-modal-mask-start {
    syntax: '<length>';
    initial-value: 0px;
    inherits: false;
  }

  @property --quick-add-modal-mask-end {
    syntax: '<length>';
    initial-value: 0px;
    inherits: true;
  }

  @keyframes detect-scroll {
    from,
    to {
      --can-scroll: ;
    }
  }

  @supports (animation-timeline: scroll(self)) {
    dialog[open] .quick-add-modal__content .product-details {
      animation:
        0.3s var(--animation-timing-fade-in) 0.1s both fadeSlideIn,
        scrollStart 1s linear both,
        scrollEnd 1s linear both,
        detect-scroll 1ms linear none;
      animation-timeline: auto, scroll(self), scroll(self), scroll(self);
      animation-range:
        normal,
        0px 48px,
        calc(100% - 48px) 100%,
        0% 100%;
    }
  }

  @keyframes scrollStart {
    from {
      --quick-add-modal-mask-start: 0px;
    }
    to {
      --quick-add-modal-mask-start: 48px;
    }
  }

  @keyframes scrollEnd {
    from {
      --quick-add-modal-mask-end: 0px;
    }
    to {
      --quick-add-modal-mask-end: 48px;
    }
  }

  .quick-add-modal__content .product-details > .group-block {
    flex-grow: 1;
    width: auto;
  }

  .quick-add-modal__content > * {
    min-height: 0;
  }

  .quick-add-modal__content .product-details :is(.view-product-title, .buy-buttons-block) {
    flex: 0 0 auto;
  }

  .quick-add-modal__content .product-details :is(.buy-buttons-block) {
    margin-top: auto;
    position: sticky;
    bottom: 0;
    padding-bottom: var(--padding-3xl);
    z-index: var(--layer-raised);
    background: var(--color-background);
    border-top: 1px solid var(--color-espresso-a16);
    padding-block: var(--padding-md);
    padding-inline: var(--padding-md);
  }
  .quick-add-modal__content .buy-buttons-block:has(.product-form-buttons--has-restock-rocket) {
    padding-block: var(--padding-2sm);
  }

  .quick-add-modal__content .product-details :is(.buy-buttons-block)::before {
    --quick-add-modal-mask-end-progressive-enhanced: 0px;
    position: absolute;
    content: '';
    display: block;
    inset: auto 0 100% 0;
    pointer-events: none;
    height: min(var(--gap-2xl), var(--gap));
    background-color: inherit;
    mask-image: linear-gradient(
      to top,
      #000 0%,
      #000 calc(var(--gap-2xs)),
      transparent calc(100% - var(--quick-add-modal-mask-end-progressive-enhanced)),
      transparent
    );
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal__content .product-details :is(.buy-buttons-block) {
      padding-bottom: 0;
      padding-inline: 0;
    }
  }

  .quick-add-modal__content .product-details .variant-picker {
    flex: 0 0 auto;
  }

  .quick-add-modal__content .variant-option--swatches {
    padding: 0 var(--spacing-xs);
    margin: 0;
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal__content .variant-option--swatches {
      padding: 0;
    }
  }

  .quick-add-modal__content .variant-option--swatches legend {
    color: var(--color-text-secondary);
    margin-bottom: var(--gap-sm);
  }

  .quick-add-modal__content:not(:has(.product-information__media)) .product-details {
    grid-column: 1 / -1;
  }

  .quick-add-modal__content .view-product-title {
    display: flex;
    padding-block: 0;
    margin-block-end: 12px;
    padding-inline-end: calc(var(--padding-2xl) + calc(var(--minimum-touch-target) / 2));
  }

  .quick-add-modal__content .view-product-title a {
    color: inherit;
    text-decoration: none;
    text-align: left;
    font-size: var(--font-size--2xl);
    font-weight: 600;
    line-height: 1.2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color 0.2s var(--animation-easing);
  }

  .quick-add-modal__content .product-details .heading-block {
    margin-bottom: var(--spacing-xs);
  }

  .quick-add-modal__content .product-details product-price {
    --text-align: left;
    margin-top: var(--spacing-m);
  }

  .quick-add-modal__content .product-details .compare-at-price {
    text-decoration: line-through;
  }

  .quick-add-modal__content .product-details product-price.text-block--align-center {
    margin-inline: 0;
  }

  .quick-add-modal__content .product-details product-price.text-center {
    --text-align: left;
  }

  .quick-add-modal__content .product-details product-price > * {
    text-align: left;
  }

  .quick-add-modal__content .product-details .product-form-buttons--has-restock-rocket {
    gap: var(--gap-xxs);
  }
  .quick-add-modal__content .product-details .restock-rocket-form-updated {
    min-height: var(--quick-add-preorder-form-min-height);
    display: flex;
    flex-direction: column-reverse;
  }

  .quick-add-modal__content .restock-rocket-form-updated .quantity-selector-wrapper {
    display: none;
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal__content .restock-rocket-form-updated .quantity-selector-wrapper {
      display: flex;
    }
    .quick-add-modal__content .group-block-content {
      gap: 0;
    }
    .quick-add-modal__content .media-gallery__grid {
      gap: min(var(--gap-2xs), var(--image-gap));
      border-radius: var(--style-border-radius-popover, 0);
    }

    .quick-add-modal__content .media-gallery--grid .product-media img {
      border-radius: 0;
    }
    .quick-add-modal__content .product-details .restock-rocket-form-updated {
      min-height: auto;
      display: block;
      padding-bottom: var(--padding-sm);
    }
  }

  .quick-add-modal__content .product-details > .group-block {
    padding-block: var(--padding-xl) 0;
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal__content .product-details > .group-block {
      padding-block: var(--padding-xs) 0;
    }
    .quick-add-modal__content .product-details .restock-rocket-form-updated {
      padding-bottom: 0;
    }
  }

  @media screen and (min-width: 1280px) {
    .quick-add-modal__content .product-details > .group-block {
      padding-block: var(--padding-md) 0;
    }
  }

  .quick-add-modal__content :where(.product-details > .group-block > .group-block-content > *) {
    padding-inline: var(--padding-xs);
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal__content :where(.product-details > .group-block > .group-block-content > *) {
      padding-inline: 0;
    }
  }

  .quick-add-modal__content slideshow-slide:not([aria-hidden='false']) {
    content-visibility: auto;
  }

  .quick-add-modal__content .product-information__media {
    width: 100%;
    grid-column: 1 / 2;
    grid-row: 1;
    min-height: auto;
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal__content .product-information__media {
      top: 0;
      width: 100%;
      scrollbar-width: none;
      -ms-overflow-style: none;
    }

    .quick-add-modal__content .product-information__media media-gallery {
      position: relative;
      inset: 0;
    }
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal__content .product-information__media {
      overflow-y: auto;
    }
  }

  .quick-add-modal__content .product-information__media::-webkit-scrollbar {
    display: none;
  }

  .quick-add-modal__content .svg-wrapper > svg {
    width: auto;
    height: auto;
  }

  .quick-add-modal__content .slideshow-control--next {
    padding-left: var(--spacing-2xs);
  }

  .quick-add-modal__content .slideshow-control--previous {
    padding-right: var(--spacing-2xs);
  }

  .quick-add-modal__content .slideshow-controls__dots {
    margin-top: var(--spacing-2xs);
    margin-bottom: var(--spacing-2xs);
  }

  .quick-add-modal__content .slideshow-controls__thumbnails .slideshow-controls__thumbnail {
    width: 88px;
    height: 88px;
  }

  .quick-add-modal__content .slideshow-controls__thumbnails {
    padding-inline: var(--gap-xs);
    padding-block: var(--gap-xs);
    gap: var(--gap-2xs);
  }

  @media screen and (min-width: 1280px) {
    .quick-add-modal__content .slideshow-controls__thumbnails {
      padding-inline: var(--gap-sm);
      padding-block: var(--gap-sm);
    }
  }
  .quick-add-modal__content .product-information__media {
    width: 100%;
    grid-column: 1 / 2;
    grid-row: 1;
    min-height: auto;
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal__content .product-information__media {
      top: 0;
      width: 100%;
      scrollbar-width: none;
      -ms-overflow-style: none;
    }
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal__content .product-information__media {
      overflow-y: auto;
      border-radius: var(--radius-2lg);
      position: sticky;
    }
  }

  .quick-add-modal__content .product-information__media::-webkit-scrollbar {
    display: none;
  }

  .quick-add-modal__content .svg-wrapper > svg {
    width: auto;
    height: auto;
  }
  .quick-add-modal__content .slideshow-control--next {
    padding-left: var(--spacing-2xs);
  }
  .quick-add-modal__content .slideshow-control--previous {
    padding-right: var(--spacing-2xs);
  }
  .quick-add-modal__content .slideshow-controls__dots {
    margin-top: var(--spacing-2xs);
    margin-bottom: var(--spacing-2xs);
  }

  @media screen and (min-width: 1440px) {
    .quick-add-modal__content .slideshow-controls__thumbnails {
      padding-inline: var(--gap-md);
      padding-block: var(--gap-md);
    }
  }

  .quick-add-modal media-gallery {
    padding: 0;
  }

  .quick-add-modal__content .product-information__media slideshow-container {
    display: block;
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal__content .product-information__media slideshow-container {
      border-radius: var(--radius-xl);
    }
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal__content .product-information__media slideshow-container {
      border-radius: var(--radius-2lg);
    }
  }

  .quick-add-modal__content product-price,
  .quick-add-modal__content product-price .compare-at-price {
    font-family: var(--font-family-header);
    font-size: var(--font-size-h6-desktop);
    line-height: var(--line-height-h6-desktop);
    font-weight: var(--font-weight-heading);
  }

  .quick-add-modal__content .product-information__media slideshow-slide {
    width: 100%;
    flex: none;
    scroll-snap-align: center;
    position: relative;
    transform: none;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.3s var(--animation-easing);
  }

  .quick-add-modal__content .product-information__media slideshow-slide:nth-child(1) {
    animation: fadeSlideIn 0.3s var(--animation-timing-fade-in) both;
  }

  .quick-add-modal__content .product-information__media slideshow-slide:nth-child(2) {
    animation: fadeSlideIn 0.3s var(--animation-timing-fade-in) both;
    animation-delay: 0.05s;
  }

  .quick-add-modal__content .product-information__media slideshow-slide:nth-child(3) {
    animation: fadeSlideIn 0.3s var(--animation-timing-fade-in) both;
    animation-delay: 0.1s;
  }

  .quick-add-modal__content .sticky-content,
  .quick-add-modal__content .sticky-content--desktop {
    top: 0;
  }

  @keyframes fadeSlideIn {
    from {
      opacity: 0;
      transform: translateY(10px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .quick-add-modal .product-information__media .product-media {
    aspect-ratio: auto;
  }

  .quick-add-modal .media-fit-cover :is(img, video, iframe, .deferred-media__poster-image) {
    height: auto !important;
    aspect-ratio: 1 / 0.724;
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal .media-fit-cover :is(img, video, iframe, .deferred-media__poster-image) {
      aspect-ratio: 1 / 0.524;
    }
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal .media-fit-cover :is(img, video, iframe, .deferred-media__poster-image) {
      aspect-ratio: 1 / 1.403;
    }
  }

  @media screen and (min-width: 1280px) {
    .quick-add-modal .media-fit-cover :is(img, video, iframe, .deferred-media__poster-image) {
      aspect-ratio: 1 / 1.086;
    }
  }

  @media screen and (min-width: 1440px) {
    .quick-add-modal .media-fit-cover :is(img, video, iframe, .deferred-media__poster-image) {
      aspect-ratio: 1 / 1.173;
    }
  }

  @media screen and (min-width: 1920px) {
    .quick-add-modal .media-fit-cover :is(img, video, iframe, .deferred-media__poster-image) {
      aspect-ratio: 1 / 0.873;
    }
  }

  .quick-add-modal__content .product-details .text-block {
    color: var(--color-text-primary);
  }

  .quick-add-modal__content .product-details .heading-block,
  .quick-add-modal__content .product-details .heading-block + div {
    width: auto;
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal__content .product-details .heading-block,
    .quick-add-modal__content .product-details .heading-block + div {
      width: 72%;
    }
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal__content .product-details .heading-block,
    .quick-add-modal__content .product-details .heading-block + div {
      width: 85%;
    }
  }

  .quick-add-modal__content .product-details product-price {
    position: static;
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal__content .product-details product-price {
      position: relative;
      right: 0;
      margin-top: var(--margin-md);
    }
  }

  .quick-add-modal__content .buy-buttons-block {
    margin-left: calc(-1 * var(--margin-xs));
    margin-right: calc(-1 * var(--margin-xs));
  }

  @media screen and (min-width: 1024px) {
    .quick-add-modal__content .buy-buttons-block {
      margin-left: 0;
      margin-right: 0;
    }
  }

  .quick-add-modal__content .buy-buttons-block .back-button {
    border-radius: var(--button-border-radius, 0.375rem);
    border: 1px solid var(--color-espresso-a16);
    background: var(--color-background);
    color: var(--color-text-primary);
    order: 2;
    font-weight: var(--font-weight-regular);
    padding-inline: var(--padding-lg);
  }

  @media screen and (min-width: 768px) {
    .quick-add-modal__content .buy-buttons-block .back-button {
      display: none;
    }
  }

  #quick-add-dialog .restock-rocket-preorder-description {
    width: 100%;
    border-radius: var(--button-border-radius, 0.375rem);
    border: 1px solid var(--color-espresso-a16);
    background: var(--color-background) !important;
    color: var(--color-foreground);
    margin-top: 0;
    padding: 7px 8px;
    order: 1;
  }

  .quick-add-modal__content .product-form-buttons--has-restock-rocket .add-to-cart-button {
    height: var(--button-height-medium);
  }

  @media screen and (min-width: 768px) {
    #quick-add-dialog .restock-rocket-preorder-description {
      width: 186px;
      float: left;
      margin-right: var(--spacing-s);
      margin-bottom: 0;
    }
  }

  #quick-add-dialog add-to-cart-component .add-to-cart-button {
    order: 3;
    font-weight: var(--font-weight-regular);
  }

  @media screen and (min-width: 768px) {
    #quick-add-dialog add-to-cart-component .add-to-cart-button {
      width: 100%;
      height: var(--button-height-large);
    }
  }
  @media screen and (max-width: 1023px) and (orientation: landscape) {
    .quick-add-modal {
      height: 100dvh;
      max-height: 100dvh;
    }

    .quick-add-modal__content {
      height: 100%;
      min-height: 100%;
      overflow-y: auto;
      display: flex;
      flex-direction: column;
    }

    .quick-add-modal__content .product-information__media {
      flex: 0 0 auto;
      position: relative !important;
      overflow: visible !important;
    }

    .quick-add-modal__content .product-details {
      flex: 1 1 auto;
      min-height: auto;
      height: auto;
      max-height: max-content;
      overflow-y: visible;
    }
  }
/* END_SNIPPET:quick-add-modal */

/* START_SNIPPET:quick-add (INDEX:201) */
/* Quick Add */

  .quick-add .variant-option__button-label input[data-option-available='false'] {
    cursor: not-allowed;
  }

  .quick-add[class*='color-scheme-'] {
    background-color: #0000;
  }
  @media screen and (min-width: 1024px) {
    @media (hover: hover) {
      .quick-add__button {
        opacity: 0;
      }
      product-card:is(:hover, :focus-within) .quick-add__button {
        opacity: 1;
      }
    }
    .quick-add__button--choose {
      display: block;
      width: auto;
      height: auto;
    }
  }
  .quick-add__button {
    align-items: center;
    cursor: pointer;
    overflow: hidden;
    pointer-events: all;
    position: absolute;
    right: var(--padding-xl);
    bottom: var(--padding-xl);
    z-index: 3;
    font-weight: 400;
    width: auto;
    height: auto;
    padding: var(--padding-xs) var(--padding-md);
    &:hover {
      &::before {
        content: '';
        position: absolute;
        inset: -10px;
        z-index: -1;
      }
    }

    .quick-add[stay-visible] & {
      display: grid;
    }
    @media screen and (min-width: 768px) {
      left: var(--spacing-m);
      bottom: var(--spacing-m);
      width: fit-content;
    }
  }

  .quick-add__button .svg-wrapper .checkmark-burst {
    width: 22px;
    height: 22px;
  }

  .quick-add__button .add-to-cart-icon,
  .quick-add__button .add-to-cart-icon svg {
    width: var(--icon-size-sm);
    height: var(--icon-size-sm);
    flex-shrink: 0;
    aspect-ratio: auto;
  }

  .quick-add__button .add-to-cart-text__content {
    display: none;
  }
  @media screen and (min-width: 768px) {
    .quick-add__button .add-to-cart-text__content {
      display: block;
    }
  }
  .quick-add__button .add-to-cart-text {
    display: flex;
    align-items: center;
    gap: var(--gap-xs);
    clip-path: none;
  }
  .quick-add__product-form-component {
    height: 100%;
  }

  .quick-add__product-form-component .shopify-product-form {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    container-type: inline-size;
  }

  .quick-add .product-form-text__error {
    position: absolute;
    z-index: 4;
    left: var(--padding-xl);
    right: var(--padding-xl);
    bottom: calc(var(--padding-xl) + var(--button-size-md) + var(--spacing-xs));
    color: var(--input-error-text);
  }

  .quick-add-modal .product-media {
    position: relative;
    width: 100%;
    height: 100%;
  }

  .quick-add-modal deferred-media {
    position: absolute;
    inset: 0;
    z-index: 1;
  }

  .quick-add-modal .media-gallery--carousel slideshow-component {
    --cursor: default;
  }
/* END_SNIPPET:quick-add */

/* START_SNIPPET:slideshow-swiper (INDEX:211) */
.swiper {
  width: 100%;
}

.swiper-wrapper {
  display: flex;
}

.swiper-slide {
  height: auto;
}
/* END_SNIPPET:slideshow-swiper */

/* START_SNIPPET:slideshow (INDEX:212) */
slideshow-slides {
    align-items: var(--slideshow-align-items, normal);
  }

  .slideshow--stretch-content slideshow-slides > * {
    height: auto;
  }
/* END_SNIPPET:slideshow */

/* START_SNIPPET:sorting (INDEX:213) */
.sorting-filter {
    z-index: var(--facets-upper-z-index);
    position: relative;
  }

  .sorting-filter__details {
    position: relative;
  }

  /* Pill trigger button */
  .sorting-filter__summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    
    border: 1px solid var(--color-espresso-a16);
    border-radius: 999px;
    cursor: pointer;
    white-space: nowrap;
    background-color: var(--color-background);
    
    list-style: none;
    user-select: none;

    min-width: auto;
    padding: 14.5px;

    &::-webkit-details-marker {
      display: none;
    }

    &:hover {
      border-color: rgb(var(--color-foreground-rgb) / 0.4);
    }

    @media screen and (min-width: 768px){
      min-width: 240px;
      padding: 12px 16px;
    }
  }

  .sorting-filter__summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    @media screen and (min-width: 768px){
      display: none;
    }
  }

  .sorting-filter__details[open] .sorting-filter__summary {
    border:none;
    background-color: var(--color-espresso-a8);
    padding: 15.5px;
    @media screen and (min-width: 768px){
      background-color: unset;
      border: 1px solid var(--color-espresso-a16);
      padding: 12px 16px;
    }
  }

  .sorting-filter__summary-text {
    color: var(--color-espresso-900);
  }

  .sorting-filter__caret {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform var(--animation-speed) var(--animation-easing);

    svg {
      width: 100%;
      height: 100%;
    }
  }

  .sorting-filter__details[open] .sorting-filter__caret {
    transform: rotate(180deg);
  }

  /* Popover */
  .sorting-filter__options {
    display: grid;
    grid-template-rows: 0fr;
    opacity: 0;
    position: absolute;
    top: 55px !important;
    right: 0;
    z-index: var(--facets-upper-z-index);
    border: 1px solid var(--color-cream-a72);
    background-color: var(--color-cream-100);
    backdrop-filter: var(--blur-glass);
    border-radius: var(--radius-lg);
    min-width: 240px;
    min-height: 0;
    transition: grid-template-rows var(--animation-speed-slow) var(--animation-easing),
      opacity var(--animation-speed-slow) var(--animation-easing);
    @media screen and (min-width: 768px){
      top: 57px !important;
    }
  }

  .sorting-filter__details[open] .sorting-filter__options {
    opacity: 1;
    grid-template-rows: 1fr;
  }

  .sorting-filter__options-inner {
    display: flex;
    flex-direction: column;
    grid-row: 1 / span 2;
    padding: 4px;
    gap: 4px;
    overflow: clip;
  }

  /* Option row */
  .sorting-filter__option {
    display: grid;
    grid-template-columns: 1fr 20px;
    gap: 8px;
    align-items: center;
    padding: 8px 12px 8px 8px;
    border-radius: calc(var(--style-border-radius-popover) / 2);
    cursor: pointer;

    &:hover, &:active, &:focus-visible {
      background: var(--color-espresso-a8);
      border-radius: 16px;
    }
    @media screen and (min-width: 768px){
      padding: 8px 12px 8px 10px;
    }
  }

  .sorting-filter__option--disabled {
    cursor: not-allowed;
    opacity: 0.4;

    &:hover {
      background-color: transparent;
    }
  }

  .sorting-filter__input {
    display: none;
  }

  .sorting-filter__option[aria-selected="true"] {
    background: var(--color-espresso-a8);
    border-radius: 16px;
  }

  .sorting-filter__checkmark {
    visibility: hidden;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;

    svg {
      width: 100%;
      height: 100%;
      stroke-width: 1.5;
    }
  }

  .sorting-filter__input:checked ~ .sorting-filter__checkmark {
    visibility: visible;
  }

  .sorting-filter__label {
    color: var(--color-espresso-900);
    pointer-events: none;
  }

  .facets--drawer .sorting-filter {
    @media screen and (min-width: 768px) {
      display: none;
    }
  }
  
    .sorting-filter__summary-text,
    .sorting-filter__caret {
      display: none;
      @media screen and (min-width: 768px){
        display: block;
      }
    }
/* END_SNIPPET:sorting */

/* START_SNIPPET:swatch (INDEX:221) */
variant-picker .swatch {
    display: block;
    border: 1px solid var(--color-layer-overlay-dark-1);
    width: var(--swatch-width);
    height: var(--swatch-height);
    border-radius: var(--radius-full);
    padding: var(--spacing-2xs);
    cursor: pointer;
    background: var(--swatch-background);
}
variant-picker .swatch img {
    width: var(--swatch-width);
    height: var(--swatch-height);
    object-fit: cover;
    border-radius: 50%;
}
.variant-option--swatches {
    display: flex;
    gap: var(--gap-xs);
    border: none;
    padding: 0;
    flex-wrap: wrap;
}
.variant-option--swatches legend {
    margin-bottom: var(--gap-xs);
    color: var(--color-secondary);
}
.variant-option__button-label,
.variant-option__button-label * {
  -webkit-tap-highlight-color: transparent;
}

.variant-option__button-label {
  user-select: none;
  -webkit-user-select: none;
}
.variant-option__button-label--has-swatch{
    display: flex;
    flex-direction: column;
    align-items:center;
    justify-content: flex-start;
    text-align: center;
    max-width: var(--swatch-max-width);
    gap: var(--gap-xs);
    min-width: 96px;
}
.variant-option__button-label:active,
.variant-option__button-label:focus,
.variant-option__button-label:focus-visible {
  background: transparent;
  outline: none;
}
.variant-option__button-label .swatch {
  -webkit-touch-callout: none;
}
.variant-option__button-label--has-swatch {
    color: var(--color-espresso-500);
}
.variant-option__button-label--has-swatch input[type="radio"][data-current-checked="true"] ~ span{
    color: var(--color-espresso-900);
}
.variant-option__button-label--has-swatch input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
variant-picker input[type="radio"][data-current-checked="true"] + .swatch {
    box-shadow: 0px 0px 0px 3px var(--color-layer-overlay-dark-1);
    border: 1px solid var(--color-fill-secondary);
}
/* END_SNIPPET:swatch */

/* START_SNIPPET:variant-swatches (INDEX:236) */
swatches-variant-picker-component {
    display: flex;
    width: 100%;
    flex-direction: row;
    justify-content: var(--product-swatches-alignment-mobile);

    @media screen and (min-width: 768px) {
      justify-content: var(--product-swatches-alignment);
    }

    --overflow-list-padding-block: calc(
        var(--product-swatches-padding-block-start) + var(--focus-outline-offset) + var(--focus-outline-width)
      )
      calc(var(--product-swatches-padding-block-end) + var(--focus-outline-offset) + var(--focus-outline-width));
    --overflow-list-padding-inline: calc(
        var(--product-swatches-padding-inline-start) + var(--focus-outline-offset) + (1.5 * var(--focus-outline-width))
      )
      calc(var(--product-swatches-padding-inline-end) + var(--focus-outline-offset) + var(--focus-outline-width));

    overflow-list::part(list) {
      gap: var(--gap-sm);
    }
  }

  swatches-variant-picker-component overflow-list[disabled='true'] {
    --overflow-list-padding-block: 0px;
    margin-block-start: calc(
      var(--product-swatches-padding-block-start) + var(--focus-outline-offset) + var(--focus-outline-width)
    );
    margin-block-end: calc(
      var(--product-swatches-padding-block-end) + var(--focus-outline-offset) + var(--focus-outline-width)
    );
  }

  .hidden-swatches__count {
    display: flex;
    align-self: center;
    align-items: center;
    justify-content: center;
    color: rgb(var(--color-foreground-rgb) / var(--opacity-40-60));
    background-color: transparent;
    padding: 0;
    border: 0;
    border-radius: 0;

    &::before {
      /* This doesn't work in Safari without the counter-reset. https://stackoverflow.com/a/40179718 */
      counter-reset: overflow-count var(--overflow-count);
      content: '+' counter(overflow-count);
      line-height: 1;
      cursor: pointer;
    }
  }

  .hidden-swatches__count:hover {
    color: var(--color-foreground-rgb);
  }
/* END_SNIPPET:variant-swatches */

/* START_SNIPPET:video (INDEX:237) */
.video-interaction-hint {
    opacity: 0;
    transition: opacity var(--animation-speed, 0.3s) var(--animation-easing, ease);
    z-index: var(--layer-flat);
  }

  .video-interaction-hint:hover,
  .video-interaction-hint:focus-visible {
    opacity: 1;
  }

  .video-play-control {
    position: absolute;
    top: 50%;
    left: 50%;
    right: auto;
    bottom: auto;
    z-index: var(--layer-raised);
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--icon-button-size-medium);
    height: var(--icon-button-size-medium);
    padding: 0;
    border: 0;
    cursor: pointer;
    background: var(--icon-button-primary-bg-hover);
    border-radius: var(--icon-button-border-radius);
    color: var(--icon-button-primary-icon-hover);
    opacity: 1;
    transform: translate(-50%, -50%);
  }

  /* Product gallery + quick view: corner control (unlayered so it beats the default). */
  .product-media .video-play-control,
  .product-media .deferred-media__poster-button {
    top: auto;
    left: auto;
    right: var(--spacing-s);
    bottom: var(--spacing-s);
    transform: none;
  }

  .video-play-control .deferred-media__poster-icon {
    position: static;
    top: auto;
    left: auto;
    transform: none;
    background: none;
  }

  .video-play-control .deferred-media__poster-icon svg {
    width: var(--icon-size-sm);
    height: var(--icon-size-sm);
    filter: none;
  }

  .video-play-control:focus-visible {
    outline: var(--icon-button-primary-border-focus-width, 2px) solid
      var(--icon-button-primary-border-focus, currentColor);
    outline-offset: var(--spacing-2xs);
  }

  @media screen and (min-width: 768px) {
    .video-play-control {
      width: var(--icon-button-size-large);
      height: var(--icon-button-size-large);
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .video-interaction-hint {
      transition: none;
    }
  }
/* END_SNIPPET:video */