/** Shopify CDN: Minification failed

Line 889:0 Unexpected "{"
Line 889:1 Expected identifier but found "%"
Line 927:0 Unexpected "{"
Line 927:1 Expected identifier but found "%"
Line 970:0 Unexpected "{"
Line 970:1 Expected identifier but found "%"
Line 973:0 Unexpected "{"
Line 973:1 Expected identifier but found "%"

**/
/* START_SECTION:mbco-header (INDEX:75) */
.mbco-header-section { position: sticky; top: 0; z-index: 1000; }
.mbco-cta-btn::before {
  pointer-events: none;
}
.mbco-cta-arrow {
  pointer-events: none;
}
.mbco-cta-btn { display: inline-flex; align-items: center; justify-content: center; gap: 4px; padding: 0.52rem 1.1rem; background-color: var(--cta-bg, #0a0a0a); color: var(--cta-fg, #fff) !important; font-family: var(--h-font-nav, inherit); font-size: 0.78rem; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; text-decoration: none !important; border: 1.5px solid var(--cta-bg, #0a0a0a); border-radius: var(--mbco-shop-radius, 999px); cursor: pointer; position: relative; overflow: hidden; z-index: 0; transition: color 0.4s ease-out; white-space: nowrap; line-height: 1; }
.mbco-cta-btn::before { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 0%; background-color: var(--cta-hover-bg, #fff); transition: height 0.4s ease-out; z-index: -1; }
.mbco-cta-btn:hover { color: var(--cta-hover-fg, #0a0a0a) !important; }
.mbco-cta-btn:hover::before { height: 100%; }
.mbco-cta-btn--full { width: 100%; }
.mbco-cta-btn--small { padding: 0.45rem 0.8rem; font-size: 0.72rem; gap: 3px; flex-shrink: 0; }
.mbco-cta-arrow { display: inline-flex; align-self: flex-start; margin-top: 1px; flex-shrink: 0; position: relative; z-index: 1; line-height: 1; }
.mbco-cta-svg { display: block; }

.mbco-header { display: grid; grid-template-columns: auto 1fr auto; align-items: center; position: relative; z-index: 100; transition: box-shadow 0.25s ease; }
.mbco-header.is-scrolled { box-shadow: 0 2px 20px rgba(0,0,0,0.09); }
.mbco-header__left { display: flex; align-items: center; gap: var(--h-logo-menu-gap-desktop, 16px); }
.mbco-logo { display: flex; align-items: center; text-decoration: none; flex-shrink: 0; }
.mbco-logo__img { width: var(--mbco-logo-width-desktop, 120px); height: auto; display: block; }
.mbco-logo__text { font-family: var(--font-heading--family, inherit); font-size: 1.2rem; font-weight: 700; letter-spacing: 0.02em; white-space: nowrap; }
.mbco-nav { display: flex; justify-content: flex-start; padding-inline: var(--h-logo-menu-gap-desktop, 16px); }
.mbco-nav__list { display: flex; align-items: center; gap: var(--h-gap-desktop, 24px); list-style: none; margin: 0; padding: 0; }
.mbco-nav__item { position: relative; }
.mbco-nav__link { position: relative; display: inline-flex; align-items: center; gap: 4px; font-family: var(--h-font-nav, inherit); font-size: var(--h-size-nav, 0.875rem); font-weight: var(--h-weight-nav, 400); text-transform: var(--h-case-nav, none); letter-spacing: 0.03em; text-decoration: none; background: none; border: none; cursor: pointer; padding: 0; line-height: 1; white-space: nowrap; opacity: var(--mbco-menu-opacity, 1); transition: opacity 0.18s ease; }
.mbco-nav__link:hover { opacity: var(--mbco-menu-hover-opacity, 1); }
.mbco-nav__link::after { content: ''; position: absolute; bottom: calc(-1 * var(--mbco-ul-offset, 4px)); left: 0; right: 0; height: var(--mbco-ul-h, 1.5px); background: currentColor; opacity: 0; transition: opacity 0.18s ease; pointer-events: none; }
.mbco-nav__link:not(.mbco-nav__link--active):hover::after { opacity: var(--mbco-inactive-hover-ul-opacity, 0.2); }
.mbco-nav__link--active::after { opacity: var(--mbco-active-ul-opacity, 1); }
.mbco-nav__link--active:hover::after { opacity: var(--mbco-hover-ul-opacity, 1); }
.mbco-nav__caret { display: inline-flex; align-items: center; transition: transform 0.18s ease; }
.mbco-nav__link--parent[aria-expanded='true'] .mbco-nav__caret { transform: rotate(180deg); }
.mbco-nav__dropdown { position: absolute; top: calc(100% + 14px); left: 0; min-width: 180px; border: 1px solid rgba(0,0,0,0.08); border-radius: 8px; box-shadow: 0 8px 32px rgba(0,0,0,0.1); padding: 0.5rem; list-style: none; margin: 0; opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s; z-index: 200; display: flex; flex-direction: column; }
.mbco-nav__item--dropdown:hover .mbco-nav__dropdown, .mbco-nav__link--parent[aria-expanded='true'] + .mbco-nav__dropdown { opacity: 1; visibility: visible; transform: translateY(0); }
.mbco-nav__dropdown-link { display: block; padding: 0.5rem 0.75rem; font-family: var(--h-font-nav, inherit); font-size: 0.85rem; text-decoration: none; border-radius: 5px; transition: background 0.14s; white-space: nowrap; }
.mbco-nav__dropdown-link:hover { background: rgba(0,0,0,0.05); }
.mbco-nav__dropdown-col { padding: 0.5rem 0.75rem; }
.mbco-nav__dropdown-heading { display: block; font-size: 0.68rem; letter-spacing: 0.1em; text-transform: uppercase; opacity: 0.45; margin-bottom: 0.4rem; }
.mbco-nav__dropdown-sub { list-style: none; margin: 0; padding: 0; }
.mbco-header__right { display: flex; align-items: center; gap: var(--h-icon-gap-desktop, 4px); justify-content: flex-end; }
.mbco-icon-btn { display: inline-flex; align-items: center; gap: 3px; background: none; border: none; cursor: pointer; padding: 0.4rem; border-radius: 6px; line-height: 1; text-decoration: none; }
/* R3 mobile product search icon/button 2026-07-20 */
.mbco-mobile-logo-search { display: none; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 999px; text-decoration: none !important; flex-shrink: 0; }
.mbco-mobile-logo-search svg, .mbco-drawer__search-link svg { display: block; stroke: currentColor !important; }
.mbco-drawer__search-left { display: inline-flex; align-items: center; gap: 10px; }
@media screen and (max-width: 749px) {
  .mbco-mobile-logo-search { display: inline-flex !important; }
  .mbco-mobile-logo-search:hover, .mbco-mobile-logo-search:focus { background: rgba(255,255,255,.10); }
  .mbco-mobile-logo-search, .mbco-mobile-logo-search svg, .mbco-mobile-logo-search svg * { color: currentColor !important; stroke: currentColor !important; -webkit-text-fill-color: currentColor !important; }
  body.template-search .mbco-mobile-logo-search { display: none !important; }
  .mbco-header__left { gap: 8px !important; }
}

.mbco-account-wrap { position: relative; }
.mbco-account-pill { display: inline-flex; align-items: center; gap: 5px; background: none; border: 1.5px solid currentColor; border-radius: 999px; padding: 0.3rem 0.55rem; cursor: pointer; line-height: 1; }
.mbco-account-caret { display: inline-flex; align-items: center; transition: transform 0.18s ease; }
.mbco-account-pill[aria-expanded='true'] .mbco-account-caret { transform: rotate(180deg); }
.mbco-account-dropdown { position: absolute; top: calc(100% + 10px); right: 0; min-width: 160px; border: 1px solid rgba(0,0,0,0.08); border-radius: 8px; box-shadow: 0 8px 32px rgba(0,0,0,0.1); padding: 0.5rem; z-index: 300; opacity: 0; transform: translateY(8px); transition: opacity 0.2s ease, transform 0.2s ease; }
.mbco-account-dropdown:not([hidden]) { opacity: 1; transform: translateY(0); }
.mbco-account-dropdown__link { display: block; padding: 0.5rem 0.75rem; font-family: var(--h-font-nav, inherit); font-size: 0.82rem; text-decoration: none; border-radius: 5px; transition: background 0.14s; white-space: nowrap; }
.mbco-account-dropdown__link:hover { background: rgba(0,0,0,0.05); }
.mbco-account-dropdown__link--logout { opacity: 0.5; margin-top: 0.25rem; border-top: 1px solid rgba(0,0,0,0.06); padding-top: 0.6rem; }
.mbco-loc-wrap { position: relative; }
.mbco-loc-btn { font-family: var(--h-font-nav, inherit); font-size: 0.78rem; letter-spacing: 0.04em; }
.mbco-flag { width: 16px; height: 16px; border-radius: 50%; background-size: cover; background-position: center; display: inline-block; flex-shrink: 0; box-shadow: inset 0 0 0 1px rgba(0,0,0,0.1); }
.mbco-loc-caret { display: inline-flex; align-items: center; transition: transform 0.18s ease; }
.mbco-loc-btn[aria-expanded='true'] .mbco-loc-caret { transform: rotate(180deg); }
.mbco-loc-dropdown { position: absolute; top: calc(100% + 10px); right: 0; min-width: 220px; border: 1px solid rgba(0,0,0,0.08); border-radius: 8px; box-shadow: 0 8px 32px rgba(0,0,0,0.1); padding: 1rem; z-index: 300; opacity: 0; transform: translateY(8px); transition: opacity 0.2s ease, transform 0.2s ease; }
.mbco-loc-dropdown:not([hidden]) { opacity: 1; transform: translateY(0); }
.mbco-loc-label { display: block; font-size: 0.68rem; letter-spacing: 0.08em; text-transform: uppercase; opacity: 0.5; margin-bottom: 0.3rem; }
.mbco-localization-select-wrap { margin-bottom: 0.75rem; }
.mbco-localization-select-wrap:last-child { margin-bottom: 0; }
.mbco-localization-select { width: 100%; padding: 0.5rem 0.75rem; border: 1px solid rgba(0,0,0,0.12); border-radius: 6px; font-family: var(--h-font-nav, inherit); font-size: 0.82rem; background: transparent; cursor: pointer; }
.mbco-shop-btn { margin-inline: 0.2rem; }
.mbco-cart-btn { display: inline-flex; align-items: center; background: none; border: none; cursor: pointer; font-family: var(--h-font-nav, inherit); font-size: 0.78rem; font-weight: 500; letter-spacing: 0.07em; text-transform: uppercase; padding: 0.4rem 0.25rem; white-space: nowrap; }
.mbco-hamburger { display: none; background: none; border: none; cursor: pointer; padding: 0.3rem; align-items: center; justify-content: center; flex-shrink: 0; }
.mbco-overlay, .mbco-cart-overlay { display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.4); z-index: 998; opacity: 0; transition: opacity 0.28s ease; }
.mbco-overlay.is-open, .mbco-cart-overlay.is-open { display: block; opacity: 1; }
.mbco-drawer, .mbco-cart-drawer { position: fixed; top: 0; bottom: 0; z-index: 999; display: flex; flex-direction: column; overflow: hidden; transition: transform 0.32s cubic-bezier(0.4,0,0.2,1); }
.mbco-drawer { left: 0; width: min(360px, 85vw); transform: translateX(-100%); }
.mbco-cart-drawer { right: 0; width: min(420px, 100vw); transform: translateX(100%); }
.mbco-drawer.is-open, .mbco-cart-drawer.is-open { transform: translateX(0); }
body.mbco-no-scroll { overflow: hidden; }
.mbco-drawer__header { display: flex; align-items: center; justify-content: space-between; padding: 1rem 1.5rem; border-bottom: 1px solid; flex-shrink: 0; }
.mbco-cart-drawer__header { display: flex; align-items: center; justify-content: space-between; padding: 1.25rem 1.5rem; border-bottom: 1px solid; flex-shrink: 0; }
.mbco-drawer__close, .mbco-cart-drawer__close { background: none; border: none; cursor: pointer; padding: 0.25rem; opacity: 0.55; transition: opacity 0.15s; display: flex; align-items: center; }
.mbco-drawer__close:hover, .mbco-cart-drawer__close:hover { opacity: 1; }
.mbco-drawer__logo { display: flex; align-items: center; text-decoration: none; }
.mbco-drawer__logo-text { font-family: var(--font-heading--family, inherit); font-size: 1.1rem; font-weight: 700; }
.mbco-drawer__nav { flex: 1; overflow-y: auto; padding: 0; }
.mbco-drawer__menu { list-style: none; margin: 0; padding: 0; }
.mbco-drawer__link { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 0.9rem 1.5rem; font-family: var(--h-font-nav, inherit); font-size: 0.95rem; font-weight: 500; letter-spacing: 0.02em; text-transform: var(--h-case-nav, none); text-decoration: none; background: none; border: none; border-bottom: 1px solid; cursor: pointer; text-align: left; transition: background 0.14s; }
.mbco-drawer__link-arrow { display: flex; align-items: center; opacity: 0.3; flex-shrink: 0;}
.mbco-drawer__caret { display: flex; align-items: center; transition: transform 0.2s ease; opacity: 0.3; flex-shrink: 0;}
.mbco-drawer__link--parent[aria-expanded='true'] .mbco-drawer__caret { transform: rotate(180deg); }
.mbco-drawer__submenu { list-style: none; margin: 0; padding: 0; }
.mbco-drawer__sublink { display: block; padding: 0.7rem 2rem; font-family: var(--h-font-nav, inherit); font-size: 0.88rem; text-decoration: none; border-bottom: 1px solid; }
.mbco-drawer__sublink[aria-current='page'] { font-weight: 600; }
.mbco-drawer__account { padding: 1rem 1.5rem; border-top: 1px solid; display: flex; flex-direction: column; gap: 0.5rem; flex-shrink: 0; }
.mbco-drawer__account-btn { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 0.85rem 1rem 0.85rem 1.25rem; border-radius: 999px; font-family: var(--h-font-nav, inherit); font-size: 0.82rem; letter-spacing: 0.06em; text-transform: uppercase; text-decoration: none; transition: opacity 0.15s; border: none; cursor: pointer; }
.mbco-drawer__account-btn:hover { opacity: 0.82; }
.mbco-drawer__account-btn-left { display: flex; align-items: center; gap: 0.5rem; }
.mbco-drawer__account-arrow { display: flex; align-items: center; opacity: 0.6; flex-shrink: 0; }
.mbco-drawer__account-secondary { display: block; text-align: center; font-size: 0.78rem; opacity: 0.5; text-decoration: none; padding: 0.3rem; transition: opacity 0.15s; }
.mbco-drawer__account-secondary:hover { opacity: 1; }
.mbco-drawer__localization { padding: 0.75rem 1.5rem 1rem; border-top: 1px solid; flex-shrink: 0; }
.mbco-cart-drawer__title { font-family: var(--h-font-nav, inherit); font-size: 0.78rem; letter-spacing: 0.08em; text-transform: uppercase; }
.mbco-cart-drawer__body { flex: 1; display: flex; flex-direction: column; overflow: hidden; min-height: 0; }
.mbco-cart-drawer__scroll { flex: 1; overflow-y: auto; -webkit-overflow-scrolling: touch; padding: 1.5rem 1.5rem 0; }
.mbco-popular { flex-shrink: 0; padding: 1rem 1.5rem 1.5rem; border-top: 1px solid rgba(0,0,0,0.07); }
.mbco-popular__heading { font-family: var(--font-heading--family, inherit); font-size: 1rem; font-weight: 500; margin: 0 0 0.75rem; }
.mbco-popular-item { display: grid; grid-template-columns: 72px 1fr auto; gap: 0.65rem; align-items: center; padding: 0.65rem; border-radius: 10px; margin-bottom: 0.5rem; }
.mbco-popular-item:last-child { margin-bottom: 0; }
.mbco-popular-item__img { border-radius: 6px; overflow: hidden; aspect-ratio: 1; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,0.06); }
.mbco-popular-item__img img { width: 100%; height: 100%; object-fit: cover; }
.mbco-popular-item__title { font-size: 0.68rem; letter-spacing: 0.04em; margin: 0 0 0.15rem; font-family: var(--h-font-nav, inherit); font-weight: 600; }
.mbco-popular-item__meta { display: flex; align-items: center; gap: 0.2rem; margin-bottom: 0.15rem; flex-wrap: wrap; }
.mbco-popular-item__price { font-size: 0.75rem; margin: 0; }
.mbco-stars { color: #f0a500; font-size: 0.65rem; letter-spacing: -0.05em; }
.mbco-review-count { font-size: 0.6rem; opacity: 0.55; }
.mbco-cart-empty { display: flex; flex-direction: column; gap: 1.5rem; padding-bottom: 1.5rem; }
.mbco-cart-empty__msg { font-size: 0.9rem; line-height: 1.55; }
.mbco-cart-item { display: grid; grid-template-columns: 64px 1fr auto; gap: 0.75rem; align-items: start; padding-bottom: 1rem; border-bottom: 1px solid; margin-bottom: 0.75rem; }
.mbco-cart-item__img { background: rgba(0,0,0,0.04); border-radius: 6px; overflow: hidden; aspect-ratio: 1; display: flex; align-items: center; justify-content: center; }
.mbco-cart-item__img img { width: 100%; height: 100%; object-fit: cover; }
.mbco-cart-item__title { font-size: 0.75rem; letter-spacing: 0.04em; margin: 0 0 0.15rem; font-family: var(--h-font-nav, inherit); font-weight: 600; }
.mbco-cart-item__variant { font-size: 0.72rem; opacity: 0.6; margin: 0 0 0.15rem; }
.mbco-cart-item__price { font-size: 0.82rem; margin: 0 0 0.4rem; }
.mbco-qty { display: flex; align-items: center; gap: 0.4rem; }
.mbco-qty__btn { background: none; border: 1px solid; border-radius: 50%; width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 0.9rem; line-height: 1; flex-shrink: 0; padding: 0; transition: background 0.14s; }
.mbco-qty__btn:hover { background: rgba(0,0,0,0.06); }
.mbco-qty__btn:disabled { opacity: 0.35; cursor: not-allowed; }
.mbco-qty__val { font-size: 0.82rem; min-width: 1.4em; text-align: center; font-weight: 500; }
.mbco-cart-item__remove { background: none; border: none; cursor: pointer; opacity: 0.3; transition: opacity 0.15s; padding: 0.15rem; margin-top: 2px; display: flex; align-items: center; }
.mbco-cart-item__remove:hover { opacity: 1; }
.mbco-cart-footer { display: flex; flex-direction: column; gap: 0.75rem; padding: 0.5rem 0 1.5rem; }
.mbco-cart-footer__row { display: flex; justify-content: space-between; align-items: center; font-size: 0.78rem; letter-spacing: 0.06em; text-transform: uppercase; font-family: var(--h-font-nav, inherit); padding-bottom: 0.75rem; border-bottom: 1px solid; }
.mbco-cart-continue { font-size: 0.75rem; letter-spacing: 0.06em; text-transform: uppercase; text-align: center; text-decoration: none; opacity: 0.5; transition: opacity 0.15s; }
.mbco-cart-continue:hover { opacity: 1; }


/* R3 static pages account dropdown text white 2026-07-09 */
/* Keep account dropdown links readable on Benefits, About, and Guides without needing hover. */
body:has(.r3-page-ingredients) #header-group .mbco-account-dropdown,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-account-dropdown,
body:has(.r3-media-page) #header-group .mbco-account-dropdown,
body:has(.r3-guides-page) #header-group .mbco-account-dropdown,
body.template-page #header-group .mbco-account-dropdown {
  color: #FFFFFF !important;
}
body:has(.r3-page-ingredients) #header-group .mbco-account-dropdown__link,
body:has(.r3-page-ingredients) #header-group .mbco-account-dropdown__link:visited,
body:has(.r3-page-ingredients) #header-group .mbco-account-dropdown__link:hover,
body:has(.r3-page-ingredients) #header-group .mbco-account-dropdown__link:focus,
body:has(.r3-page-ingredients) #header-group .mbco-account-dropdown__link:active,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-account-dropdown__link,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-account-dropdown__link:visited,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-account-dropdown__link:hover,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-account-dropdown__link:focus,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-account-dropdown__link:active,
body:has(.r3-media-page) #header-group .mbco-account-dropdown__link,
body:has(.r3-media-page) #header-group .mbco-account-dropdown__link:visited,
body:has(.r3-media-page) #header-group .mbco-account-dropdown__link:hover,
body:has(.r3-media-page) #header-group .mbco-account-dropdown__link:focus,
body:has(.r3-media-page) #header-group .mbco-account-dropdown__link:active,
body:has(.r3-guides-page) #header-group .mbco-account-dropdown__link,
body:has(.r3-guides-page) #header-group .mbco-account-dropdown__link:visited,
body:has(.r3-guides-page) #header-group .mbco-account-dropdown__link:hover,
body:has(.r3-guides-page) #header-group .mbco-account-dropdown__link:focus,
body:has(.r3-guides-page) #header-group .mbco-account-dropdown__link:active,
body.template-page #header-group .mbco-account-dropdown__link,
body.template-page #header-group .mbco-account-dropdown__link:visited,
body.template-page #header-group .mbco-account-dropdown__link:hover,
body.template-page #header-group .mbco-account-dropdown__link:focus,
body.template-page #header-group .mbco-account-dropdown__link:active {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}


/* R3 Guides blog account dropdown text white 2026-07-09 */
/* Guides nav currently points to /blogs/news, so force account dropdown links white there too. */
body:has(.blog-posts) #header-group .mbco-account-dropdown,
body:has(.blog-posts-container) #header-group .mbco-account-dropdown {
  color: #FFFFFF !important;
}
body:has(.blog-posts) #header-group .mbco-account-dropdown__link,
body:has(.blog-posts) #header-group .mbco-account-dropdown__link:visited,
body:has(.blog-posts) #header-group .mbco-account-dropdown__link:hover,
body:has(.blog-posts) #header-group .mbco-account-dropdown__link:focus,
body:has(.blog-posts) #header-group .mbco-account-dropdown__link:active,
body:has(.blog-posts-container) #header-group .mbco-account-dropdown__link,
body:has(.blog-posts-container) #header-group .mbco-account-dropdown__link:visited,
body:has(.blog-posts-container) #header-group .mbco-account-dropdown__link:hover,
body:has(.blog-posts-container) #header-group .mbco-account-dropdown__link:focus,
body:has(.blog-posts-container) #header-group .mbco-account-dropdown__link:active {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}


/* R3 Guides Members Only transparent header 2026-07-09 */
/* Match Shop/About/R3-CLUB transparent header treatment on the new Guides members-only page. */
body:has([data-r3-members-only]) #header-group,
body:has([data-r3-members-only]) .mbco-header-section,
body:has([data-r3-members-only]) #mbco-header,
body:has([data-r3-members-only]) .mbco-header {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  border-bottom-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body:has([data-r3-members-only]) #header-group::before,
body:has([data-r3-members-only]) #header-group::after,
body:has([data-r3-members-only]) .mbco-header-section::before,
body:has([data-r3-members-only]) .mbco-header-section::after,
body:has([data-r3-members-only]) #mbco-header::before,
body:has([data-r3-members-only]) #mbco-header::after,
body:has([data-r3-members-only]) .mbco-header::before,
body:has([data-r3-members-only]) .mbco-header::after {
  display: none !important;
  content: none !important;
  background: none !important;
  box-shadow: none !important;
  border: 0 !important;
}
body:has([data-r3-members-only]) #header-group a,
body:has([data-r3-members-only]) #header-group button,
body:has([data-r3-members-only]) #header-group svg,
body:has([data-r3-members-only]) #header-group svg * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  stroke: currentColor !important;
}
body:has([data-r3-members-only]) #header-group .custom-ticker,
body:has([data-r3-members-only]) #header-group [class*="ticker"],
body:has([data-r3-members-only]) #header-group [id^="mbco-ticker"] {
  background: #050505 !important;
  background-color: #050505 !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
}


/* R3 Club page transparent header 2026-07-09 */
/* Match the shop/About transparent header treatment on /pages/benefits (R3-CLUB). */
body:has(.r3-page-ingredients) #header-group,
body:has(.r3-page-ingredients) .mbco-header-section,
body:has(.r3-page-ingredients) #mbco-header,
body:has(.r3-page-ingredients) .mbco-header {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  border-bottom-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body:has(.r3-page-ingredients) #header-group::before,
body:has(.r3-page-ingredients) #header-group::after,
body:has(.r3-page-ingredients) .mbco-header-section::before,
body:has(.r3-page-ingredients) .mbco-header-section::after,
body:has(.r3-page-ingredients) #mbco-header::before,
body:has(.r3-page-ingredients) #mbco-header::after,
body:has(.r3-page-ingredients) .mbco-header::before,
body:has(.r3-page-ingredients) .mbco-header::after {
  display: none !important;
  content: none !important;
  background: none !important;
  box-shadow: none !important;
  border: 0 !important;
}
body:has(.r3-page-ingredients) #header-group a,
body:has(.r3-page-ingredients) #header-group button,
body:has(.r3-page-ingredients) #header-group svg,
body:has(.r3-page-ingredients) #header-group svg * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  stroke: currentColor !important;
}


/* R3 About page transparent header 2026-07-09 */
/* Match the shop page transparent header treatment on /pages/about-us. */
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group,
body:has(.shopify-section[id*="template--19355277295729__main"]) .mbco-header-section,
body:has(.shopify-section[id*="template--19355277295729__main"]) #mbco-header,
body:has(.shopify-section[id*="template--19355277295729__main"]) .mbco-header {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  border-bottom-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group::before,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group::after,
body:has(.shopify-section[id*="template--19355277295729__main"]) .mbco-header-section::before,
body:has(.shopify-section[id*="template--19355277295729__main"]) .mbco-header-section::after,
body:has(.shopify-section[id*="template--19355277295729__main"]) #mbco-header::before,
body:has(.shopify-section[id*="template--19355277295729__main"]) #mbco-header::after,
body:has(.shopify-section[id*="template--19355277295729__main"]) .mbco-header::before,
body:has(.shopify-section[id*="template--19355277295729__main"]) .mbco-header::after {
  display: none !important;
  content: none !important;
  background: none !important;
  box-shadow: none !important;
  border: 0 !important;
}
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group a,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group button,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group svg,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group svg * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  stroke: currentColor !important;
}


/* R3 transparent header SHOP button no arrow static pages 2026-07-09 */
/* Apply to Shop, R3-CLUB, About, Guides, and Contact pages. */
body:has(.r3-products-hero) #header-group .mbco-shop-btn,
body:has(.r3-page-ingredients) #header-group .mbco-shop-btn,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-shop-btn,
body:has(.r3-guides-page) #header-group .mbco-shop-btn,
body:has(.blog-posts) #header-group .mbco-shop-btn,
body:has(.blog-posts-container) #header-group .mbco-shop-btn,
body:has([data-r3-contact-sydney]) #header-group .mbco-shop-btn {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border-color: rgba(255,255,255,.52) !important;
  box-shadow: none !important;
}
body:has(.r3-products-hero) #header-group .mbco-shop-btn::before,
body:has(.r3-page-ingredients) #header-group .mbco-shop-btn::before,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-shop-btn::before,
body:has(.r3-guides-page) #header-group .mbco-shop-btn::before,
body:has(.blog-posts) #header-group .mbco-shop-btn::before,
body:has(.blog-posts-container) #header-group .mbco-shop-btn::before,
body:has([data-r3-contact-sydney]) #header-group .mbco-shop-btn::before {
  display: none !important;
  content: none !important;
}
body:has(.r3-products-hero) #header-group .mbco-shop-btn .mbco-cta-arrow,
body:has(.r3-page-ingredients) #header-group .mbco-shop-btn .mbco-cta-arrow,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-shop-btn .mbco-cta-arrow,
body:has(.r3-guides-page) #header-group .mbco-shop-btn .mbco-cta-arrow,
body:has(.blog-posts) #header-group .mbco-shop-btn .mbco-cta-arrow,
body:has(.blog-posts-container) #header-group .mbco-shop-btn .mbco-cta-arrow,
body:has([data-r3-contact-sydney]) #header-group .mbco-shop-btn .mbco-cta-arrow {
  display: none !important;
}
body:has(.r3-products-hero) #header-group .mbco-shop-btn:hover,
body:has(.r3-page-ingredients) #header-group .mbco-shop-btn:hover,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-shop-btn:hover,
body:has(.r3-guides-page) #header-group .mbco-shop-btn:hover,
body:has(.blog-posts) #header-group .mbco-shop-btn:hover,
body:has(.blog-posts-container) #header-group .mbco-shop-btn:hover,
body:has([data-r3-contact-sydney]) #header-group .mbco-shop-btn:hover {
  background: rgba(255,255,255,.08) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* R3 SHOP button pure white text all states 2026-07-09 */
/* Keep the header SHOP pill text plain white on Shop, R3-CLUB, About, Guides, and Contact. */
body:has(.r3-products-hero) #header-group .mbco-shop-btn,
body:has(.r3-products-hero) #header-group .mbco-shop-btn:visited,
body:has(.r3-products-hero) #header-group .mbco-shop-btn:hover,
body:has(.r3-products-hero) #header-group .mbco-shop-btn:focus,
body:has(.r3-products-hero) #header-group .mbco-shop-btn:active,
body:has(.r3-page-ingredients) #header-group .mbco-shop-btn,
body:has(.r3-page-ingredients) #header-group .mbco-shop-btn:visited,
body:has(.r3-page-ingredients) #header-group .mbco-shop-btn:hover,
body:has(.r3-page-ingredients) #header-group .mbco-shop-btn:focus,
body:has(.r3-page-ingredients) #header-group .mbco-shop-btn:active,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-shop-btn,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-shop-btn:visited,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-shop-btn:hover,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-shop-btn:focus,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-shop-btn:active,
body:has(.r3-guides-page) #header-group .mbco-shop-btn,
body:has(.r3-guides-page) #header-group .mbco-shop-btn:visited,
body:has(.r3-guides-page) #header-group .mbco-shop-btn:hover,
body:has(.r3-guides-page) #header-group .mbco-shop-btn:focus,
body:has(.r3-guides-page) #header-group .mbco-shop-btn:active,
body:has(.blog-posts) #header-group .mbco-shop-btn,
body:has(.blog-posts) #header-group .mbco-shop-btn:visited,
body:has(.blog-posts) #header-group .mbco-shop-btn:hover,
body:has(.blog-posts) #header-group .mbco-shop-btn:focus,
body:has(.blog-posts) #header-group .mbco-shop-btn:active,
body:has(.blog-posts-container) #header-group .mbco-shop-btn,
body:has(.blog-posts-container) #header-group .mbco-shop-btn:visited,
body:has(.blog-posts-container) #header-group .mbco-shop-btn:hover,
body:has(.blog-posts-container) #header-group .mbco-shop-btn:focus,
body:has(.blog-posts-container) #header-group .mbco-shop-btn:active,
body:has([data-r3-contact-sydney]) #header-group .mbco-shop-btn,
body:has([data-r3-contact-sydney]) #header-group .mbco-shop-btn:visited,
body:has([data-r3-contact-sydney]) #header-group .mbco-shop-btn:hover,
body:has([data-r3-contact-sydney]) #header-group .mbco-shop-btn:focus,
body:has([data-r3-contact-sydney]) #header-group .mbco-shop-btn:active {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  text-shadow: none !important;
}
body:has(.r3-products-hero) #header-group .mbco-shop-btn *,
body:has(.r3-page-ingredients) #header-group .mbco-shop-btn *,
body:has(.shopify-section[id*="template--19355277295729__main"]) #header-group .mbco-shop-btn *,
body:has(.r3-guides-page) #header-group .mbco-shop-btn *,
body:has(.blog-posts) #header-group .mbco-shop-btn *,
body:has(.blog-posts-container) #header-group .mbco-shop-btn *,
body:has([data-r3-contact-sydney]) #header-group .mbco-shop-btn * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  text-shadow: none !important;
}


/* R3 Guides Members Only SHOP button match other pages 2026-07-09 */
/* Make the header SHOP pill on Guides the same as Shop/R3-CLUB/About/Contact: transparent, white text, no arrow. */
body:has([data-r3-members-only]) #header-group .mbco-shop-btn,
body:has([data-r3-members-only]) #header-group .mbco-shop-btn:visited,
body:has([data-r3-members-only]) #header-group .mbco-shop-btn:hover,
body:has([data-r3-members-only]) #header-group .mbco-shop-btn:focus,
body:has([data-r3-members-only]) #header-group .mbco-shop-btn:active {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border-color: rgba(255,255,255,.52) !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
body:has([data-r3-members-only]) #header-group .mbco-shop-btn::before {
  display: none !important;
  content: none !important;
  background: none !important;
}
body:has([data-r3-members-only]) #header-group .mbco-shop-btn .mbco-cta-arrow {
  display: none !important;
}
body:has([data-r3-members-only]) #header-group .mbco-shop-btn *,
body:has([data-r3-members-only]) #header-group .mbco-shop-btn:hover * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  text-shadow: none !important;
}
body:has([data-r3-members-only]) #header-group .mbco-shop-btn:hover,
body:has([data-r3-members-only]) #header-group .mbco-shop-btn:focus {
  background: rgba(255,255,255,.08) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}


/* R3 hide duplicate header SHOP CTA on shop page 2026-07-09 */
/* On the Shop page itself, remove the utility SHOP button between account and cart. */
body:has(.r3-products-hero) #header-group .mbco-shop-btn {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}


/* R3 cart checkout/add persistent purple bubble 2026-07-09 */
/* Cart drawer CTA buttons: keep the purple pill/bubble visible before hover. */
.mbco-cart-drawer .mbco-checkout-btn,
.mbco-cart-drawer .mbco-popular-add,
.mbco-cart-drawer .mbco-cart-empty .mbco-cta-btn {
  background: linear-gradient(135deg,#8A7FD8 0%,#6E73E6 48%,#5A5FD6 100%) !important;
  background-color: #5A5FD6 !important;
  background-image: linear-gradient(135deg,#8A7FD8 0%,#6E73E6 48%,#5A5FD6 100%) !important;
  background-clip: border-box !important;
  -webkit-background-clip: border-box !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border-color: rgba(167,171,255,.62) !important;
  box-shadow: 0 10px 24px rgba(90,95,214,.28), inset 0 1px 0 rgba(255,255,255,.20) !important;
}
.mbco-cart-drawer .mbco-checkout-btn *,
.mbco-cart-drawer .mbco-popular-add *,
.mbco-cart-drawer .mbco-cart-empty .mbco-cta-btn * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
.mbco-cart-drawer .mbco-checkout-btn::before,
.mbco-cart-drawer .mbco-popular-add::before,
.mbco-cart-drawer .mbco-cart-empty .mbco-cta-btn::before {
  display: none !important;
  content: none !important;
}
.mbco-cart-drawer .mbco-checkout-btn:hover,
.mbco-cart-drawer .mbco-popular-add:hover,
.mbco-cart-drawer .mbco-cart-empty .mbco-cta-btn:hover,
.mbco-cart-drawer .mbco-checkout-btn:focus,
.mbco-cart-drawer .mbco-popular-add:focus,
.mbco-cart-drawer .mbco-cart-empty .mbco-cta-btn:focus {
  background: linear-gradient(135deg,#9A8CFF 0%,#7A80FF 48%,#6268E8 100%) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  transform: translateY(-1px);
}






/* R3 cart subtotal dark purple like Most Popular 2026-07-09 */
/* Match SUBTOTAL and total amount to the darker purple used by Most Popular in the cart side menu. */
.mbco-cart-drawer .mbco-cart-footer__row,
.mbco-cart-drawer .mbco-cart-footer__row span,
.mbco-cart-drawer .mbco-cart-footer__price {
  color: #5A5FD6 !important;
  -webkit-text-fill-color: #5A5FD6 !important;
}



/* R3 cart qty plus minus purple match quantity number 2026-07-09 */
/* Match the side-menu quantity minus/plus symbols to the purple quantity number between them. */
.mbco-cart-drawer .mbco-qty__btn,
.mbco-cart-drawer .mbco-qty__btn:visited,
.mbco-cart-drawer .mbco-qty__btn:hover,
.mbco-cart-drawer .mbco-qty__btn:focus,
.mbco-cart-drawer .mbco-qty__btn:active,
.mbco-cart-drawer .mbco-qty__decrease,
.mbco-cart-drawer .mbco-qty__increase {
  color: #A7ABFF !important;
  -webkit-text-fill-color: #A7ABFF !important;
  border-color: rgba(167,171,255,.46) !important;
  background: transparent !important;
}
.mbco-cart-drawer .mbco-qty__btn:hover,
.mbco-cart-drawer .mbco-qty__btn:focus {
  color: #A7ABFF !important;
  -webkit-text-fill-color: #A7ABFF !important;
  background: rgba(167,171,255,.10) !important;
  border-color: rgba(167,171,255,.62) !important;
}

/* R3 cart drawer smaller product images 2026-07-09 */
/* Tighten only the cart side-menu thumbnails so recommended products and cart lines fit better. */
.mbco-cart-drawer .mbco-popular-item {
  grid-template-columns: 54px 1fr auto !important;
  gap: 0.52rem !important;
  padding: 0.52rem !important;
  margin-bottom: 0.42rem !important;
}
.mbco-cart-drawer .mbco-popular-item__img {
  width: 54px !important;
  height: 54px !important;
  aspect-ratio: 1 / 1 !important;
}
.mbco-cart-drawer .mbco-popular-item__img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}
.mbco-cart-drawer .mbco-cart-item {
  grid-template-columns: 52px 1fr auto !important;
  gap: 0.58rem !important;
  padding-bottom: 0.78rem !important;
  margin-bottom: 0.62rem !important;
}
.mbco-cart-drawer .mbco-cart-item__img {
  width: 52px !important;
  height: 52px !important;
  aspect-ratio: 1 / 1 !important;
}
.mbco-cart-drawer .mbco-cart-item__img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}
@media (max-width: 480px) {
  .mbco-cart-drawer .mbco-popular-item {
    grid-template-columns: 48px 1fr auto !important;
    gap: 0.46rem !important;
    padding: 0.48rem !important;
  }
  .mbco-cart-drawer .mbco-popular-item__img {
    width: 48px !important;
    height: 48px !important;
  }
  .mbco-cart-drawer .mbco-cart-item {
    grid-template-columns: 48px 1fr auto !important;
    gap: 0.5rem !important;
  }
  .mbco-cart-drawer .mbco-cart-item__img {
    width: 48px !important;
    height: 48px !important;
  }
}

/* R3 cart drawer hover black text controls 2026-07-09 */
/* Keep the subtle cart text controls readable on hover/focus. */
.mbco-cart-drawer .mbco-cart-continue,
.mbco-cart-drawer .mbco-cart-continue:visited,
.mbco-cart-drawer .mbco-cart-continue:hover,
.mbco-cart-drawer .mbco-cart-continue:focus,
.mbco-cart-drawer .mbco-cart-continue:active,
.mbco-cart-drawer .mbco-qty__btn,
.mbco-cart-drawer .mbco-qty__btn:hover,
.mbco-cart-drawer .mbco-qty__btn:focus,
.mbco-cart-drawer .mbco-qty__btn:active {
  color: #0B0B0E !important;
  -webkit-text-fill-color: #0B0B0E !important;
}
.mbco-cart-drawer .mbco-cart-continue:hover,
.mbco-cart-drawer .mbco-cart-continue:focus {
  opacity: 1 !important;
  text-decoration-color: #0B0B0E !important;
}
.mbco-cart-drawer .mbco-qty__btn:hover,
.mbco-cart-drawer .mbco-qty__btn:focus {
  background: rgba(11,11,14,.06) !important;
  border-color: rgba(11,11,14,.34) !important;
}
.mbco-cart-drawer .mbco-qty__btn svg,
.mbco-cart-drawer .mbco-qty__btn svg * {
  color: currentColor !important;
  stroke: currentColor !important;
}



/* R3 cart qty plus minus purple final override 2026-07-09 */
/* Final override after the older black-hover controls block: make only -/+ match the purple quantity number. */
.mbco-cart-drawer .mbco-qty__btn,
.mbco-cart-drawer .mbco-qty__btn:visited,
.mbco-cart-drawer .mbco-qty__btn:hover,
.mbco-cart-drawer .mbco-qty__btn:focus,
.mbco-cart-drawer .mbco-qty__btn:active,
.mbco-cart-drawer .mbco-qty__decrease,
.mbco-cart-drawer .mbco-qty__increase {
  color: #A7ABFF !important;
  -webkit-text-fill-color: #A7ABFF !important;
  border-color: rgba(167,171,255,.46) !important;
}
.mbco-cart-drawer .mbco-qty__btn:hover,
.mbco-cart-drawer .mbco-qty__btn:focus {
  color: #A7ABFF !important;
  -webkit-text-fill-color: #A7ABFF !important;
  background: rgba(167,171,255,.10) !important;
  border-color: rgba(167,171,255,.62) !important;
}



/* R3 cart qty plus minus darker purple visible 2026-07-09 */
/* Darker purple for the cart side-menu quantity controls so - / number / + are easier to see. */
.mbco-cart-drawer .mbco-qty__val,
.mbco-cart-drawer .mbco-qty__btn,
.mbco-cart-drawer .mbco-qty__btn:visited,
.mbco-cart-drawer .mbco-qty__btn:hover,
.mbco-cart-drawer .mbco-qty__btn:focus,
.mbco-cart-drawer .mbco-qty__btn:active,
.mbco-cart-drawer .mbco-qty__decrease,
.mbco-cart-drawer .mbco-qty__increase {
  color: #5A5FD6 !important;
  -webkit-text-fill-color: #5A5FD6 !important;
}
.mbco-cart-drawer .mbco-qty__btn,
.mbco-cart-drawer .mbco-qty__btn:visited,
.mbco-cart-drawer .mbco-qty__btn:hover,
.mbco-cart-drawer .mbco-qty__btn:focus,
.mbco-cart-drawer .mbco-qty__btn:active {
  border-color: rgba(90,95,214,.58) !important;
  background: transparent !important;
}
.mbco-cart-drawer .mbco-qty__btn:hover,
.mbco-cart-drawer .mbco-qty__btn:focus {
  background: rgba(90,95,214,.10) !important;
  border-color: rgba(90,95,214,.78) !important;
}

@media screen and (max-width: 749px) {
  .mbco-header { grid-template-columns: auto 1fr auto; padding-inline: var(--h-padding-mobile, 12px) !important; }
  .mbco-header__left { gap: var(--h-logo-menu-gap-mobile, 8px); }
  .mbco-header__right { gap: var(--h-icon-gap-mobile, 4px); }
  .mbco-hamburger { display: flex; }
  .mbco-nav { display: none; }
  /* R3 2026-07-10: keep the human account icon visible on phone pages; only hide localization. */
  .mbco-header__right .mbco-account-wrap { display: inline-flex; }
  .mbco-header__right .mbco-loc-wrap { display: none; }
  .mbco-shop-btn { padding: 0.42rem 0.85rem; font-size: 0.72rem; }
  .mbco-cart-btn { font-size: 0.72rem; }
  .mbco-logo__img { width: var(--mbco-logo-width-mobile, 90px) !important; }
}

/* R3 cart free shipping progress bar 2026-07-10 */
.mbco-shipping-meter {
  flex-shrink:0;
  padding: 12px 24px 14px;
  border-bottom: 1px solid;
  background: linear-gradient(180deg, rgba(167,171,255,.07), rgba(5,5,8,.02));
}
.mbco-shipping-meter__copy {
  margin:0 0 9px;
  color:#A7ABFF;
  -webkit-text-fill-color:#A7ABFF;
  font-size:11px;
  line-height:1.25;
  font-weight:900;
  letter-spacing:.105em;
  text-transform:uppercase;
  text-align:center;
}
.mbco-shipping-meter__track {
  height:9px;
  width:100%;
  overflow:hidden;
  border-radius:999px;
  background: rgba(255,255,255,.10);
  border:1px solid rgba(167,171,255,.24);
  box-shadow: inset 0 1px 2px rgba(0,0,0,.28);
}
.mbco-shipping-meter__track span {
  display:block;
  height:100%;
  width:var(--mbco-ship-progress,0%);
  max-width:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#5A5FD6 0%,#8A7FD8 48%,#A7ABFF 100%);
  box-shadow:0 0 16px rgba(167,171,255,.46);
  transition:width .28s ease;
}
@media (max-width: 749px) {
  .mbco-shipping-meter { padding: 10px 18px 12px; }
  .mbco-shipping-meter__copy { font-size:10px; letter-spacing:.08em; }
}

/* R3 cart free shipping bar glow 2026-07-10 */
.mbco-shipping-meter {
  position: relative;
  box-shadow: 0 0 24px rgba(167,171,255,.16), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.mbco-shipping-meter::before {
  content: '';
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 7px;
  height: 22px;
  border-radius: 999px;
  background: radial-gradient(ellipse at center, rgba(167,171,255,.34) 0%, rgba(90,95,214,.18) 42%, transparent 72%);
  filter: blur(12px);
  opacity: .9;
  pointer-events: none;
}
.mbco-shipping-meter__track {
  position: relative;
  z-index: 1;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.28), 0 0 18px rgba(167,171,255,.22) !important;
}
.mbco-shipping-meter__track span {
  box-shadow: 0 0 22px rgba(167,171,255,.70), 0 0 9px rgba(90,95,214,.65) !important;
}
.mbco-shipping-meter__copy {
  position: relative;
  z-index: 1;
  text-shadow: 0 0 14px rgba(167,171,255,.38) !important;
}


/* R3 product pages account dropdown white text + phone account icon 2026-07-10 */
/* Product pages use a transparent white header, so the Log in/Create account dropdown text must stay white. */
body:has([data-r3-product-cinematic]) #header-group .mbco-account-dropdown,
body:has([data-r3-product-cinematic]) #header-group .mbco-account-dropdown__link,
body:has([data-r3-product-cinematic]) #header-group .mbco-account-dropdown__link:visited,
body:has([data-r3-product-cinematic]) #header-group .mbco-account-dropdown__link:hover,
body:has([data-r3-product-cinematic]) #header-group .mbco-account-dropdown__link:focus,
body:has([data-r3-product-cinematic]) #header-group .mbco-account-dropdown__link:active {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
body:has([data-r3-product-cinematic]) #header-group .mbco-account-dropdown__link:hover,
body:has([data-r3-product-cinematic]) #header-group .mbco-account-dropdown__link:focus {
  background: rgba(255,255,255,.10) !important;
}
@media screen and (max-width: 749px) {
  body:has([data-r3-product-cinematic]) #header-group .mbco-header__right .mbco-account-wrap,
  #header-group .mbco-header__right .mbco-account-wrap {
    display: inline-flex !important;
  }
  #header-group .mbco-account-pill {
    min-width: 40px;
    min-height: 30px;
    align-items: center;
    justify-content: center;
  }
}



/* R3 phone Guides/R3-CLUB ticker size match 2026-07-10 */
/* Phone only: make Guides and R3-CLUB announcement ticker exactly match the normal mobile ticker sizing. */
@media screen and (max-width: 749px) {
  body:has([data-r3-members-only]) #header-group [id^="mbco-ticker-"],
  body:has(.r3-page-ingredients) #header-group [id^="mbco-ticker-"],
  body:has(.r3-media-page) #header-group [id^="mbco-ticker-"],
  body:has(.r3-guides-page) #header-group [id^="mbco-ticker-"],
  body:has(.blog-posts) #header-group [id^="mbco-ticker-"],
  body:has(.blog-posts-container) #header-group [id^="mbco-ticker-"] {
    display: block !important;
    box-sizing: border-box !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    background: #050505 !important;
    background-color: #050505 !important;
    overflow: hidden !important;
  }
  body:has([data-r3-members-only]) #header-group .mbco-ticker-track,
  body:has([data-r3-members-only]) #header-group .mbco-ticker-group,
  body:has(.r3-page-ingredients) #header-group .mbco-ticker-track,
  body:has(.r3-page-ingredients) #header-group .mbco-ticker-group,
  body:has(.r3-media-page) #header-group .mbco-ticker-track,
  body:has(.r3-media-page) #header-group .mbco-ticker-group,
  body:has(.r3-guides-page) #header-group .mbco-ticker-track,
  body:has(.r3-guides-page) #header-group .mbco-ticker-group,
  body:has(.blog-posts) #header-group .mbco-ticker-track,
  body:has(.blog-posts) #header-group .mbco-ticker-group,
  body:has(.blog-posts-container) #header-group .mbco-ticker-track,
  body:has(.blog-posts-container) #header-group .mbco-ticker-group {
    display: flex !important;
    height: 16px !important;
    min-height: 16px !important;
    max-height: 16px !important;
    line-height: 16px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  body:has([data-r3-members-only]) #header-group .mbco-ticker-item,
  body:has(.r3-page-ingredients) #header-group .mbco-ticker-item,
  body:has(.r3-media-page) #header-group .mbco-ticker-item,
  body:has(.r3-guides-page) #header-group .mbco-ticker-item,
  body:has(.blog-posts) #header-group .mbco-ticker-item,
  body:has(.blog-posts-container) #header-group .mbco-ticker-item {
    display: flex !important;
    align-items: center !important;
    height: 16px !important;
    min-height: 16px !important;
    max-height: 16px !important;
    font-size: 10px !important;
    line-height: 16px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}



{% if request.path == '/pages/benefits' or request.path == '/pages/media' or request.path == '/blogs/news' %}
/* R3 real iPhone ticker size path fallback 2026-07-10 */
/* Phone only, path-rendered fallback for real iPhone/Safari: no body:has dependency. */
@media screen and (max-width: 749px) {
  #header-group [id^="mbco-ticker-"] {
    display: block !important;
    box-sizing: border-box !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    background: #050505 !important;
    background-color: #050505 !important;
    overflow: hidden !important;
  }
  #header-group .mbco-ticker-track,
  #header-group .mbco-ticker-group {
    display: flex !important;
    height: 16px !important;
    min-height: 16px !important;
    max-height: 16px !important;
    line-height: 16px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  #header-group .mbco-ticker-item {
    display: flex !important;
    align-items: center !important;
    height: 16px !important;
    min-height: 16px !important;
    max-height: 16px !important;
    font-size: 10px !important;
    line-height: 16px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}
{% endif %}



/* R3 real iPhone ticker class fallback 2026-07-10 */
/* Class-based fallback for actual iPhone Safari; does not depend on body:has or Shopify editor mode. */
@media screen and (max-width: 749px) {
  #mbco-header.r3-phone-ticker-match [id^="mbco-ticker-"] {
    display: block !important;
    box-sizing: border-box !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    background: #050505 !important;
    background-color: #050505 !important;
    overflow: hidden !important;
  }
  #mbco-header.r3-phone-ticker-match .mbco-ticker-track,
  #mbco-header.r3-phone-ticker-match .mbco-ticker-group {
    display: flex !important;
    height: 16px !important;
    min-height: 16px !important;
    max-height: 16px !important;
    line-height: 16px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  #mbco-header.r3-phone-ticker-match .mbco-ticker-item {
    display: flex !important;
    align-items: center !important;
    height: 16px !important;
    min-height: 16px !important;
    max-height: 16px !important;
    font-size: 10px !important;
    line-height: 16px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}


{% if request.path == '/search' %}
/* R3 search page hide duplicate header search icon 2026-07-20 */
@media screen and (max-width: 749px){#header-group .mbco-mobile-logo-search{display:none!important;}}
{% endif %}


/* R3 search page remove purple search bar/header 2026-07-20 */
main .shopify-section[id*="__search"] {
  display: none !important;
}
#header-group .mbco-mobile-logo-search,
#header-group .mbco-mobile-logo-search svg,
#header-group .mbco-mobile-logo-search svg * {
  color: currentColor !important;
  stroke: currentColor !important;
  -webkit-text-fill-color: currentColor !important;
}
/* END_SECTION:mbco-header */
/* START_SECTION:r3-cinematic-footer (INDEX:86) */
.r3ft,.r3ft *{box-sizing:border-box;}
.r3ft{position:relative;isolation:isolate;overflow:hidden;background:#05070D!important;color:#fff;border-top:1px solid rgba(255,255,255,.08);padding:clamp(56px,7vw,96px) clamp(20px,4vw,48px) clamp(36px,4vw,56px);}
.r3ft__bg{position:absolute;inset:0;z-index:-4;display:block;}
.r3ft__bg img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block;filter:saturate(1.04) contrast(1.05);}
.r3ft__bgshade{position:absolute;inset:0;z-index:-3;background:linear-gradient(180deg,rgba(3,4,10,.58) 0%,rgba(3,4,10,.68) 42%,rgba(3,4,10,.84) 100%),radial-gradient(70% 90% at 50% 10%,rgba(167,171,255,.06),transparent 58%);pointer-events:none;}
/* beat theme's light footer background on wrappers */
.r3-cinematic-footer-section,.shopify-section-group-footer-group.r3-cinematic-footer-section{background:#05070D!important;}
footer:has(> .shopify-section .r3ft),footer:has(.r3ft){background:#05070D!important;}
.r3ft__glow{position:absolute;z-index:-1;width:520px;height:520px;border-radius:999px;filter:blur(90px);pointer-events:none;}
.r3ft__glow--bl{left:-190px;bottom:-190px;background:radial-gradient(circle,rgba(90,95,214,.28),rgba(143,233,255,.10) 55%,transparent 75%);}
.r3ft__glow--tr{right:-210px;top:-210px;background:radial-gradient(circle,rgba(122,108,232,.16),transparent 70%);}
.r3ft__inner{max-width:1180px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;}

/* newsletter */
.r3ft__news{width:100%;}
.r3ft__badge{display:inline-flex;align-items:center;gap:9px;margin:0 0 18px;padding:9px 16px;border:1px solid rgba(167,171,255,.34);border-radius:999px;background:rgba(10,12,21,.46);backdrop-filter:blur(10px);color:rgba(235,236,255,.84);font-size:11px;font-weight:850;letter-spacing:.20em;text-transform:uppercase;box-shadow:0 0 24px rgba(122,108,232,.16);}
.r3ft__badge span{color:#A7ABFF;}
.r3ft__heading{margin:0;font-size:clamp(24px,3vw,38px);font-weight:850;letter-spacing:.14em;text-transform:uppercase;background:linear-gradient(90deg,#A7ABFF 0%,#C9BBFF 38%,#8FE9FF 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;}
.r3ft__sub{max-width:520px;margin:16px auto 0;color:rgba(255,255,255,.62);font-size:clamp(13.5px,1.05vw,15.5px);line-height:1.6;font-weight:430;}
.r3ft__form-wrap{display:block;width:100%;margin-top:30px;}
.r3ft__form{display:flex;align-items:stretch;justify-content:center;gap:14px;flex-wrap:wrap;}
.r3ft__input-wrap{position:relative;flex:0 1 360px;min-width:250px;border-radius:999px;padding:1px;background:linear-gradient(112deg,rgba(90,95,214,.75),rgba(167,171,255,.45) 50%,rgba(143,233,255,.65));}
.r3ft__input-wrap input{width:100%;height:54px;border:none;border-radius:999px;background:#0A0C15;color:#fff;padding:0 24px 0 66px;font-size:11.5px;font-weight:700;letter-spacing:.14em;outline:none;}
.r3ft__input-wrap input::placeholder{color:rgba(255,255,255,.42);letter-spacing:.16em;text-transform:uppercase;}
.r3ft__input-wrap input:focus{background:#0D101B;}
.r3ft__mail{position:absolute;left:22px;top:50%;transform:translateY(-50%);width:18px;height:18px;fill:none;stroke:#A7ABFF;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;}
.r3ft__submit{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:56px;padding:0 30px;border:none;border-radius:999px;background:linear-gradient(112deg,#5A5FD6 0%,#7A6CE8 48%,#4FB8E8 100%);color:#fff;font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;box-shadow:0 0 28px rgba(122,108,232,.42),0 14px 36px rgba(90,95,214,.30);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;}
.r3ft__submit svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.r3ft__submit:hover{transform:translateY(-2px);filter:brightness(1.07);box-shadow:0 0 36px rgba(122,108,232,.55),0 18px 42px rgba(90,95,214,.36);}
.r3ft__submit:active{transform:scale(.98);}
.r3ft__success{margin:8px 0 0;color:#A7ABFF;font-size:14px;font-weight:700;letter-spacing:.06em;}
.r3ft__error{margin:0 0 14px;color:#FF6B6B;font-size:13px;font-weight:600;}

/* dividers */
.r3ft__divider{width:100%;height:1px;margin:clamp(34px,4vw,48px) 0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.13) 18%,rgba(255,255,255,.13) 82%,transparent);}

/* brand + desktop columns */
.r3ft__desktop-grid{width:100%;display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:clamp(42px,6vw,96px);align-items:start;text-align:left;margin-top:2px;}
.r3ft__brand{display:flex;flex-direction:column;align-items:center;}
.r3ft__brand--desktop{align-items:flex-start;}
.r3ft__brand--mobile{display:none;}
.r3ft__desktop-col h3{margin:6px 0 20px;color:#A7ABFF!important;font-size:12px;font-weight:900;letter-spacing:.22em;text-transform:uppercase;-webkit-text-fill-color:#A7ABFF!important;}
.r3ft__desktop-col a{display:block;color:rgba(255,255,255,.66)!important;text-decoration:none;font-size:13px;font-weight:650;letter-spacing:.10em;text-transform:uppercase;padding:7px 0;transition:color .18s ease,transform .18s ease;-webkit-text-fill-color:rgba(255,255,255,.66)!important;}
.r3ft__desktop-col a:hover{color:#A7ABFF!important;transform:translateX(3px);-webkit-text-fill-color:#A7ABFF!important;}
.r3ft__logo{width:clamp(140px,15vw,190px);height:auto;filter:drop-shadow(0 0 34px rgba(143,233,255,.28)) drop-shadow(0 0 60px rgba(122,108,232,.22));}
.r3ft__tagline{margin:18px 0 0;color:rgba(255,255,255,.55);font-size:11px;font-weight:800;letter-spacing:.34em;text-transform:uppercase;}

/* accordions */
.r3ft__accordions{width:100%;max-width:640px;}
.r3ft__acc{border-top:1px solid rgba(255,255,255,.10);}
.r3ft__acc:last-child{border-bottom:1px solid rgba(255,255,255,.10);}
.r3ft__acc-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:19px 4px;border:none;background:none;color:rgba(255,255,255,.88);font-size:12.5px;font-weight:850;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;text-align:left;}
.r3ft__acc-icon{position:relative;width:14px;height:14px;flex:0 0 14px;}
.r3ft__acc-icon::before,.r3ft__acc-icon::after{content:"";position:absolute;background:#FFFFFF;transition:transform .25s ease,opacity .25s ease;}
.r3ft__acc-icon::before{left:0;top:6px;width:14px;height:1.6px;}
.r3ft__acc-icon::after{left:6.2px;top:0;width:1.6px;height:14px;}
.r3ft__acc-trigger[aria-expanded="true"] .r3ft__acc-icon::after{transform:rotate(90deg);opacity:0;}
.r3ft__acc-panel{max-height:0;overflow:hidden;transition:max-height .32s ease;}
.r3ft__acc-panel.is-open{max-height:420px;}
.r3ft__acc-links{display:flex;flex-direction:column;gap:2px;padding:2px 4px 20px;}
.r3ft__acc-links a{color:rgba(255,255,255,.60);text-decoration:none;font-size:12px;font-weight:650;letter-spacing:.14em;text-transform:uppercase;padding:8px 0;text-align:left;transition:color .18s ease;}
.r3ft__acc-links a:hover{color:#A7ABFF;}

/* instagram */
.r3ft__social{margin-top:clamp(30px,4vw,44px);}
.r3ft__ig{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:14px;border:1px solid rgba(167,171,255,.28);background:rgba(10,12,21,.6);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;}
.r3ft__ig svg{width:22px;height:22px;}
.r3ft__ig:hover{transform:translateY(-2px);border-color:rgba(167,171,255,.65);box-shadow:0 0 22px rgba(167,171,255,.25);}

/* copyright */
.r3ft__copy{margin:clamp(24px,3vw,34px) 0 0;color:rgba(255,255,255,.45);font-size:12px;font-weight:500;letter-spacing:.08em;}
.r3ft__disclaimer{margin:12px auto 0;max-width:560px;color:rgba(255,255,255,.30);font-size:11px;line-height:1.55;font-weight:450;}

.r3ft__accordions{display:none;}
.r3ft__divider--mobile{display:none;}

/* force-contrast against global light-section rules */
.r3ft .r3ft__heading{background:linear-gradient(90deg,#A7ABFF 0%,#C9BBFF 38%,#8FE9FF 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;}
.r3ft .r3ft__sub{color:rgba(255,255,255,.62)!important;-webkit-text-fill-color:rgba(255,255,255,.62)!important;}
.r3ft .r3ft__tagline{color:rgba(255,255,255,.55)!important;-webkit-text-fill-color:rgba(255,255,255,.55)!important;}
.r3ft .r3ft__acc-trigger{color:rgba(255,255,255,.88)!important;-webkit-text-fill-color:rgba(255,255,255,.88)!important;}
.r3ft .r3ft__acc-links a{color:rgba(255,255,255,.60)!important;-webkit-text-fill-color:rgba(255,255,255,.60)!important;}
.r3ft .r3ft__acc-links a:hover{color:#A7ABFF!important;-webkit-text-fill-color:#A7ABFF!important;}
.r3ft .r3ft__copy{color:rgba(255,255,255,.45)!important;-webkit-text-fill-color:rgba(255,255,255,.45)!important;}
.r3ft .r3ft__disclaimer{color:rgba(255,255,255,.30)!important;-webkit-text-fill-color:rgba(255,255,255,.30)!important;}
.r3ft .r3ft__submit{color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;}
.r3ft .r3ft__input-wrap input{color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;background:#0A0C15!important;border:none!important;box-shadow:none!important;padding-left:66px!important;padding-right:24px!important;}
.r3ft .r3ft__input-wrap input:focus{background:#0D101B!important;}
.r3ft .r3ft__input-wrap input::placeholder{color:rgba(255,255,255,.42)!important;}
.r3ft .r3ft__submit{box-shadow:0 0 28px rgba(122,108,232,.42),0 14px 36px rgba(90,95,214,.30)!important;background:linear-gradient(112deg,#5A5FD6 0%,#7A6CE8 48%,#4FB8E8 100%)!important;border:none!important;}
.r3ft .r3ft__submit:hover{box-shadow:0 0 36px rgba(122,108,232,.55),0 18px 42px rgba(90,95,214,.36)!important;}
.r3ft .r3ft__logo{filter:drop-shadow(0 0 34px rgba(143,233,255,.28)) drop-shadow(0 0 60px rgba(122,108,232,.22))!important;}

/* mobile reference social row (hidden on desktop) */
.r3ft__mobile-social-row{display:none;}

/* mobile */
@media (max-width: 749px){
  .r3ft{padding:48px 22px 30px;background:#000!important;border-top:0!important;}
  .r3ft__bg,.r3ft__bgshade,.r3ft__glow{display:none!important;}
  .r3ft__inner{max-width:390px;margin:0 auto;}
  .r3ft__desktop-grid{display:none;}
  .r3ft__news{display:flex;flex-direction:column;align-items:center;}
  .r3ft__brand--mobile{display:flex;align-items:center;margin-top:32px;}
  .r3ft__accordions{display:block;max-width:100%;}
  .r3ft__divider--mobile{display:block;}
  .r3ft__badge{margin:0 0 18px;padding:8px 15px;border-color:rgba(167,171,255,.58);background:rgba(0,0,0,.22);box-shadow:none;color:rgba(255,255,255,.86)!important;-webkit-text-fill-color:rgba(255,255,255,.86)!important;font-size:10px;letter-spacing:.18em;}
  .r3ft__badge span{color:#A7ABFF!important;-webkit-text-fill-color:#A7ABFF!important;}
  .r3ft__heading{font-size:28px!important;line-height:1.08;letter-spacing:.06em;text-align:center;background:linear-gradient(90deg,#B9A8FF 0%,#D8CCFF 47%,#8FE9FF 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;}
  .r3ft__sub{margin-top:16px;max-width:335px;color:rgba(255,255,255,.72)!important;-webkit-text-fill-color:rgba(255,255,255,.72)!important;font-size:14px;line-height:1.55;font-weight:450;text-align:center;}
  .r3ft__form-wrap{margin-top:28px;}
  .r3ft__form{flex-direction:column;align-items:stretch;gap:14px;width:100%;max-width:348px;margin:0 auto;}
  .r3ft__input-wrap{flex:1 1 auto;width:100%;min-width:0;border-radius:999px;background:linear-gradient(112deg,rgba(122,108,232,.9),rgba(167,171,255,.52) 52%,rgba(143,233,255,.72));padding:1px;box-shadow:0 0 20px rgba(122,108,232,.18);}
  .r3ft .r3ft__input-wrap input{height:54px!important;border-radius:999px!important;background:#06070B!important;padding-left:56px!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:12px!important;letter-spacing:.02em!important;text-transform:none!important;font-weight:500!important;}
  .r3ft .r3ft__input-wrap input::placeholder{color:rgba(255,255,255,.48)!important;text-transform:none!important;letter-spacing:.02em!important;}
  .r3ft__mail{left:22px;width:19px;height:19px;stroke:#A7ABFF;}
  .r3ft__submit{width:100%;height:56px;border-radius:999px;background:linear-gradient(100deg,#6F65E8 0%,#9A88FF 48%,#69CFFF 100%)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:12px;letter-spacing:.12em;box-shadow:0 0 32px rgba(122,108,232,.48),0 16px 42px rgba(79,184,232,.18)!important;}
  .r3ft__divider{margin:30px 0;background:rgba(255,255,255,.12);}
  .r3ft__divider:not(.r3ft__divider--mobile){display:none;}
  /* R3 mobile footer logo no highlight 2026-07-09
     Phone only: remove the temporary glow/highlight around the footer logo when it loads/scrolls into view. */
  .r3ft__brand--mobile .r3ft__logo,
  .r3ft .r3ft__brand--mobile .r3ft__logo{
    width:156px;
    filter:none!important;
    -webkit-filter:none!important;
    -webkit-tap-highlight-color:transparent!important;
    user-select:none;
    -webkit-user-select:none;
  }
  .r3ft__tagline{margin-top:16px;font-size:10px;letter-spacing:.27em;color:rgba(255,255,255,.62)!important;-webkit-text-fill-color:rgba(255,255,255,.62)!important;}
  .r3ft__acc{border-top:1px solid rgba(255,255,255,.14);}
  .r3ft__acc:last-child{border-bottom:1px solid rgba(255,255,255,.14);}
  .r3ft__acc-trigger{min-height:57px;padding:18px 0;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:12px;letter-spacing:.20em;font-weight:850;}
  .r3ft__acc-links{padding:0 0 18px;}
  .r3ft__acc-links a{font-size:12px;padding:9px 0;color:rgba(255,255,255,.66)!important;-webkit-text-fill-color:rgba(255,255,255,.66)!important;}
  .r3ft__social{display:none!important;}
  .r3ft__mobile-social-row{display:flex;align-items:center;justify-content:center;gap:25px;margin:28px 0 0;}
  .r3ft__mobile-social-link{display:inline-flex!important;align-items:center;justify-content:center;width:24px;height:24px;color:#fff!important;-webkit-text-fill-color:#fff!important;text-decoration:none;opacity:.92;}
  .r3ft__mobile-social-link svg{width:23px;height:23px;fill:none!important;stroke:#fff!important;color:#fff!important;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;}
  .r3ft__mobile-social-link:hover{opacity:1;color:#A7ABFF!important;-webkit-text-fill-color:#A7ABFF!important;}
  .r3ft__mobile-social-link:hover svg{stroke:#A7ABFF!important;}
  .r3ft__divider--mobile{background:rgba(255,255,255,.14)!important;}
  .r3ft__copy{margin:24px 0 0;color:rgba(255,255,255,.50)!important;-webkit-text-fill-color:rgba(255,255,255,.50)!important;font-size:12px;letter-spacing:.02em;text-transform:none;}
  .r3ft__disclaimer{display:none;}
}
/* END_SECTION:r3-cinematic-footer */
/* START_BLOCK:filters (INDEX:162) */
.facets-block-wrapper {
    @media screen and (min-width: 750px) {
      margin: var(--facets-margin);
      grid-column: var(--grid-column--desktop);
    }
  }

  .facets-block-wrapper--vertical {
    @media screen and (min-width: 750px) {
      grid-column: var(--grid-column--desktop);
    }
  }

  .facets-toggle {
    --icon-offset: -3px;

    display: flex;
    justify-content: space-between;
    align-items: center;
    height: var(--minimum-touch-target);
    margin: var(--facets-margin);
    padding-block: var(--facets-inner-padding-block);
    padding-inline: var(--facets-inner-padding-inline);

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

  .facets-toggle__wrapper {
    margin-left: var(--icon-offset);
  }

  .facets-toggle__button {
    box-shadow: none;

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

  .filter-count-bubble {
    position: relative;
    width: 20px;
    aspect-ratio: 1;
    border-radius: 50%;
    display: grid;
    line-height: normal;
    place-content: center;
    color: var(--color-foreground);
    border: var(--icon-stroke-width) solid var(--color-background);
  }

  .facets-mobile__title-wrapper .h3 {
    margin-block-end: 0;
    display: inline-flex;
    align-items: center;
    gap: var(--gap-xs);
  }

  .facets-mobile__title-wrapper .filter-count-bubble {
    width: 22px;
    height: 22px;
  }

  .facets-mobile__title-wrapper .filter-count-bubble__text {
    font-size: var(--font-size--xs);
  }

  .filter-count-bubble__background {
    position: absolute;
    inset: 0;
    background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10-25));
    border-radius: var(--style-border-radius-50);
  }

  .filter-count-bubble__text {
    font-size: 11px;
    font-weight: var(--font-paragraph--weight);
    aspect-ratio: 1 / 1;
  }

  .facets-toggle--no-filters {
    @media screen and (max-width: 749px) {
      /* stylelint-disable-next-line declaration-no-important */
      justify-content: unset !important;

      & > .facets-mobile-wrapper {
        width: 100%;
      }
    }
  }

  .facets-block-wrapper--vertical + .facets-toggle {
    @media screen and (max-width: 749px) {
      margin: 0;
    }
  }

  .facets-mobile-wrapper {
    display: flex;
    align-items: center;
    gap: var(--gap-sm);
    justify-content: flex-end;
  }

  .facets-mobile-wrapper--multiple-controls {
    justify-content: space-between;
  }

  @media screen and (min-width: 750px) {
    dialog-component.facets-block-wrapper {
      position: absolute;
      width: 0;
      height: 0;
    }
  }

  .facets {
    --facets-form-horizontal-gap: 20px;
    --facets-horizontal-max-input-wrapper-height: 230px;
    --facets-upper-z-index: var(--layer-raised);
    --facets-open-z-index: var(--layer-heightened);
    --facets-sticky-z-index: var(--layer-sticky);
    --facets-panel-min-width: 120px;
    --facets-panel-height: 300px;
    --facets-grid-panel-width: 300px;
    --facets-clear-padding: var(--padding-md);
    --facets-clear-shadow: 0 -4px 14px 0 rgb(var(--color-foreground-rgb) / var(--facets-low-opacity));
    --facets-input-label-color: rgb(var(--color-input-text-rgb) / var(--opacity-60));
    --facets-clear-all-min-width: 120px;
    --facets-see-results-min-width: 55%;
    --facets-mobile-gap: 22px;
    --facets-low-opacity: 10%;
    --facets-hover-opacity: 75%;

    top: auto;
    bottom: 0;
    height: var(--drawer-height);
    max-height: var(--drawer-height);
    width: var(--drawer-width);
    max-width: var(--drawer-max-width);
    box-shadow: none;
    padding-block: 0;

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

  .facets--horizontal {
    display: none;

    @media screen and (min-width: 750px) {
      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--vertical {
    display: none;

    @media screen and (min-width: 750px) {
      padding-block: 0 var(--padding-block-end);
      display: block;
      position: static;
      top: auto;
      bottom: auto;
      height: auto;
      max-height: none;
      width: auto;
      overflow: visible;
    }
  }

  .facets--drawer {
    border-radius: 0;
    border-right: var(--style-border-drawer);
    box-shadow: var(--shadow-drawer);
    padding-inline: 0;
  }

  .facets--drawer[open] {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
  }

  .facets-drawer__form-wrapper {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .facets-drawer__form-wrapper .facets__form {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .facets-drawer__filters {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    position: relative;
  }

  .facets-drawer__filters .facets__filters-wrapper,
  .facets-drawer__filters .filter-remove-buttons,
  .facets-drawer__filters .sorting-filter-component {
    overflow: visible;
  }

  .facets.facets-controls-wrapper {
    @media screen and (min-width: 750px) {
      grid-column: column-1 / column-12;
      color: rgb(var(--color-foreground-rgb) / var(--opacity-70));
      gap: 0 var(--facets-form-horizontal-gap);
      padding-bottom: var(--padding-xs);
    }
  }

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

  :is(.facets--drawer, .facets--vertical) .facets__inputs:not(:has(.show-more)) {
    padding-block-end: var(--padding-sm);
  }

  /* Facets - Form */
  .facets__form-wrapper {
    display: flex;
    flex-direction: column;
    color: var(--color-foreground-muted);
    width: 100%;
  }

  .facets--horizontal .facets__form-wrapper {
    @media screen and (min-width: 750px) {
      flex-direction: row;
      height: auto;
    }
  }

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

  .facets--horizontal .facets__form {
    @media screen and (min-width: 750px) {
      flex-flow: row nowrap;
      height: auto;
    }
  }

  .facets:not(.facets--drawer) .facets__filters-wrapper {
    @media screen and (min-width: 750px) {
      margin-inline-end: var(--margin-md);
    }
  }

  .facets--horizontal .facets__filters-wrapper {
    @media screen and (min-width: 750px) {
      max-width: 60%;
      display: flex;
      flex-wrap: wrap;
      column-gap: var(--gap-xl);
      margin-inline-end: 0;
    }
  }

  /* Facets - Summary */
  .facets__summary {
    --variant-picker-swatch-width: 32px;
    --variant-picker-swatch-height: 32px;
    --icon-opacity: 0.5;

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

    font-size: var(--font-h5--size);
    display: flex;
    justify-content: space-between;

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

  .facets__filters-wrapper:hover .facets__summary,
  .facets__filters-wrapper:has(.facets__panel[open]) .facets__summary {
    opacity: var(--facets-hover-opacity);
  }

  .facets__filters-wrapper .facets__summary:hover,
  .facets__filters-wrapper .facets__panel[open] .facets__summary {
    opacity: 1;
  }

  .facets--horizontal .facets__summary {
    @media screen and (min-width: 750px) {
      font-size: var(--font-paragraph--size);
      justify-content: flex-start;
      height: var(--minimum-touch-target);
    }
  }

  .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--drawer .facets__summary .icon-caret {
    margin-inline-start: var(--margin-2xs);
  }

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

  /* Facets - Inputs */
  .facets__inputs-wrapper {
    margin-block: var(--padding-xs) var(--padding-xs);
  }

  .facets__inputs .show-more {
    display: flex;
    flex-direction: column;
    gap: var(--gap-xl);
    margin-block-end: var(--padding-xl);
  }

  .facets:not(.facets--drawer) .facets__inputs-wrapper {
    @media screen and (min-width: 750px) {
      gap: var(--gap-sm);
    }
  }

  .facets--horizontal .facets__inputs .show-more {
    @media screen and (min-width: 750px) {
      display: contents;
    }
  }

  .facets--horizontal .facets__inputs-wrapper {
    @media screen and (min-width: 750px) {
      max-height: var(--facets-horizontal-max-input-wrapper-height);
      scrollbar-width: none;
      -ms-overflow-style: none;
      overflow-x: auto;
      padding: var(--padding-md);
      margin-block: 0;
    }
  }

  .facets--vertical .facets__inputs:has(.show-more) .facets__inputs-wrapper {
    padding-block: var(--padding-sm);
    padding-inline: var(--padding-sm);
    margin-block: calc(var(--padding-sm) * -1);
    margin-inline: calc(var(--padding-sm) * -1);
  }

  @media screen and (max-width: 749px) {
    .facets__inputs:has(.show-more) .facets__inputs-wrapper {
      padding-block: var(--padding-sm);
      padding-inline: var(--padding-sm);
      margin-block: calc(var(--padding-sm) * -1);
      margin-inline: calc(var(--padding-sm) * -1);
    }
  }

  .facets__inputs-wrapper:not(:has(.facets__inputs-list)),
  .facets__inputs-wrapper .facets__inputs-list {
    display: flex;
    gap: var(--facets-mobile-gap);
    flex-direction: column;

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

  @media screen and (min-width: 750px) {
    .facets--vertical .facets__inputs-wrapper .facets__inputs-list--swatches {
      gap: var(--gap-sm);
    }

    .facets--horizontal
      .facets__inputs-wrapper
      .facets__inputs-list--swatches:not(.facets__inputs-list--swatches-grid) {
      display: grid;
      grid-template-columns: repeat(var(--swatch-columns, 4), 1fr);
    }
  }

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

  .facets__inputs-wrapper .facets__inputs-list--grid {
    --min-column-width: 20%;

    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(var(--min-column-width), 1fr));
    gap: var(--gap-sm);

    @media screen and (min-width: 750px) {
      --min-column-width: 50px;
    }
  }

  .facets-block-wrapper:not(.facets-block-wrapper--vertical) .facets__inputs-list--grid {
    @media screen and (min-width: 750px) {
      width: var(--facets-grid-panel-width);
    }
  }

  .facets__inputs-wrapper--row:not(:has(.facets__inputs-list)),
  .facets__inputs-wrapper--row .facets__inputs-list {
    flex-wrap: wrap;
    flex-direction: row;
  }

  .facets__inputs .show-more__button {
    --show-more-icon-size: 22px;
    --show-more-gap: 8px;

    gap: var(--show-more-gap);

    @media screen and (min-width: 750px) {
      --show-more-icon-size: 16px;
      --show-more-gap: 6px;
    }
  }

  .facets__inputs .show-more__button .icon-plus {
    width: var(--show-more-icon-size);
    height: var(--show-more-icon-size);

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

  /* Facets - Panel */
  .facets__panel {
    padding: 0 var(--drawer-padding);
  }

  .facets:not(.facets--drawer) .facets__panel,
  .facets-controls-wrapper .facets__panel {
    @media screen and (min-width: 750px) {
      padding: 0;
    }
  }

  .facets--horizontal .facets__panel {
    @media screen and (min-width: 750px) {
      position: relative;
    }
  }

  .facets-mobile-wrapper .facets__panel-content {
    border-radius: var(--style-border-radius-popover);
  }

  .facets-mobile-wrapper {
    --facets-upper-z-index: var(--layer-raised);
    --facets-panel-min-width: 120px;
    --facets-panel-height: 300px;
  }

  .facets--horizontal .facets__panel-content {
    @media screen and (min-width: 750px) {
      border-radius: var(--style-border-radius-popover);
      position: absolute;
      top: 100%;
      width: max-content;
      min-width: var(--facets-panel-min-width);
      max-width: var(--facets-panel-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;
    }
  }

  :is(.facets--drawer, .facets--vertical) :is(.facets__item, .sorting-filter)::before {
    content: '';
    display: block;
    height: 0;
    width: calc(100% - var(--drawer-padding) * 2);
    border-top: var(--style-border-width) solid var(--color-border);
    margin: 0 auto;
  }

  @media screen and (min-width: 750px) {
    .facets:not(.facets--drawer) :is(.facets__item, .sorting-filter)::before {
      width: 100%;
    }

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

  @media screen and (min-width: 750px) {
    .facets--vertical .facets__item:not(:first-of-type)::before,
    .facets--vertical .sorting-filter::before {
      content: '';
    }
  }

  /* Facets - Text */
  .facets__label,
  .facets__clear-all-link,
  .clear-filter {
    text-decoration-color: transparent;
    text-decoration-thickness: 0.075em;
    text-underline-offset: 0.125em;
    transition: text-decoration-color var(--animation-speed) var(--animation-easing);
  }

  .facets__clear-all-link {
    display: none;
    cursor: pointer;
    padding: var(--padding-xs);
    color: var(--button-color);
    transition: text-decoration-color var(--animation-speed) var(--animation-easing),
      color var(--animation-speed) var(--animation-easing);
  }

  .facets__clear-all-link:hover {
    --button-color: var(--color-primary-hover);

    text-decoration: underline;
    text-decoration-color: var(--button-color);
  }

  .facets__clear-all-link--horizontal {
    height: var(--minimum-touch-target);
    padding-inline: var(--facets-form-horizontal-gap);
    min-width: var(--facets-clear-all-min-width);
  }

  .facets__clear-all-link--active {
    display: block;
  }

  .facets__label,
  .products-count-wrapper {
    text-transform: var(--facet-label-transform);
  }

  .clear-filter {
    background-color: transparent;
    box-shadow: none;
    padding: 0;
  }

  .clear-filter:hover {
    text-decoration: underline;
  }

  /* Clear button */
  .facets__clear {
    display: none;
  }

  .facets--horizontal .facets__clear {
    @media screen and (min-width: 750px) {
      width: 100%;
      justify-content: flex-end;
      padding: 0 var(--facets-clear-padding) var(--facets-clear-padding) 0;
      cursor: pointer;
    }
  }

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

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

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

  /* Products count */
  .products-count-wrapper {
    display: none;
  }

  .facets--horizontal .products-count-wrapper {
    @media screen and (min-width: 750px) {
      display: flex;
      margin-left: auto;
      flex-shrink: 0;
      align-items: center;
      height: var(--minimum-touch-target);
    }
  }

  /* Mobile specific components */
  .facets__title-wrapper {
    background-color: var(--color-background);
    color: var(--color-foreground);
    position: sticky;
    top: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-block: var(--padding-xs);
    padding-inline-start: var(--drawer-padding);
    padding-inline-end: var(--padding-2xs);
    z-index: var(--facets-sticky-z-index);
  }

  :is(.facets--horizontal, .facets--vertical) .facets__title-wrapper {
    @media screen and (min-width: 750px) {
      display: none;
    }
  }

  .facets-drawer__title {
    --variant-picker-swatch-width: 32px;
    --variant-picker-swatch-height: 32px;

    margin: 0;
    display: flex;
    align-items: center;
    gap: var(--gap-xs);

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

  .facets-drawer__close {
    position: relative;
    top: 0;
    right: 0;
    padding: 0;
    cursor: pointer;
  }

  /* Status */
  .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;
  }

  .facets--filters-title {
    margin-block-end: 0;
    color: var(--color-foreground);
    height: fit-content;

    @media screen and (max-width: 749px) {
      display: none;
    }
  }

  .facets--horizontal .facets__panel .facets__status:has(:not(:empty)) {
    @media screen and (min-width: 750px) {
      display: flex;
      margin-inline-start: var(--margin-xs);
      margin-inline-end: var(--margin-xs);
    }
  }

  /* Horizontal filter style */
  .facets--horizontal .facets__form {
    @media screen and (min-width: 750px) {
      gap: 0 var(--facets-form-horizontal-gap);
    }
  }

  /* Facets - Actions */
  .facets__drawer-actions {
    --to-top-gradient-background: linear-gradient(
      to top,
      rgb(var(--color-background-rgb) / var(--opacity-90)),
      rgb(var(--color-background-rgb) / var(--opacity-80)),
      rgb(var(--color-background-rgb) / var(--opacity-40)),
      transparent
    );

    position: sticky;
    bottom: 0;
    z-index: var(--facets-sticky-z-index);
    order: 1;
    display: flex;
    flex-shrink: 0;
    justify-content: space-between;
    align-items: stretch;
    gap: var(--gap-sm);
    padding-block-start: var(--padding-xs);
    padding-block-end: var(--padding-md);
    padding-inline: var(--padding-lg);
    margin-top: auto;
    background-image: var(--to-top-gradient-background);
    background-color: var(--color-background);
  }

  /* Clear all button */
  .facets__clear-all {
    display: none;
    cursor: pointer;
    min-width: var(--facets-clear-all-min-width);
    flex-grow: 1;
    padding-block: var(--padding-lg);
    color: var(--button-color, inherit);
  }

  .facets__clear-all--active {
    display: block;
    opacity: 1;
    transform: translateY(0);
    transition: transform var(--animation-values), opacity var(--animation-values);
  }

  @starting-style {
    .facets__clear-all--active {
      opacity: 0;
      transform: translateY(100%);
    }
  }

  .facets__see-results {
    min-width: var(--facets-see-results-min-width);
    flex-grow: 1;
    padding-block: var(--padding-lg);
  }

  .facets-horizontal-remove {
    display: flex;
    align-items: center;
  }

  .facets-horizontal-remove--active::before {
    content: '';
    border-inline-start: var(--style-border-width) solid var(--color-border);
    height: var(--font-paragraph--size);
    position: absolute;
  }
/* END_BLOCK:filters */
/* START_SNIPPET:accordion-custom-component (INDEX:192) */
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:background-media (INDEX:194) */
@media (prefers-reduced-motion: reduce) {
    video-background-component video {
      display: none;
    }
  }
/* END_SNIPPET:background-media */
/* START_SNIPPET:buy-buttons-styles (INDEX:199) */
.buy-buttons-block {
    --buy-button-preferred-width: 185px;

    width: 100%;
  }

  .product-form-buttons {
    display: flex;
    flex-wrap: wrap;
  }

  .product-form-buttons:not(:has(.quantity-rules)) {
    gap: calc(var(--gap-sm) / 2);

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

  .product-form-buttons
    > *:not(.quantity-selector-wrapper, .quantity-rules, .quantity-label, .volume-pricing, .product-form-text__error) {
    flex: 1 1 var(--buy-button-preferred-width, 0);
    min-width: fit-content;
  }

  .product-form-buttons--stacked
    > *:not(.quantity-selector-wrapper, .quantity-rules, .quantity-label, .volume-pricing, .product-form-text__error) {
    flex-basis: 51%;
  }

  .product-form-buttons button {
    width: 100%;
    padding-block: var(--padding-lg);
  }

  .quantity-selector {
    flex-grow: 0;
    flex-shrink: 0;
    height: var(--height-buy-buttons);
  }

  .quantity-label {
    flex: 1 0 100%;
    width: 100%;
    font-size: var(--font-size--sm);
    margin-block-end: var(--gap-xs);
  }

  .quantity-label__cart-count {
    color: var(--color-foreground-secondary);
  }

  .quantity-rules {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    row-gap: calc(var(--gap-xs) / 2);
    flex: 1 0 100%;
    width: 100%;
    font-size: var(--font-size--xs);
    color: var(--color-foreground-secondary);
    margin-block-start: var(--gap-xs);
    margin-block-end: var(--gap);
  }

  .product-form-buttons:has(~ .volume-pricing .volume-pricing__title) .quantity-rules {
    margin-block-end: var(--gap-md);
  }

  .quantity-rules__item {
    position: relative;
    display: inline-block;
    color: rgb(var(--color-foreground-rgb) / var(--opacity-subdued-text));
  }

  .quantity-rules__item:not(:last-child) {
    padding-right: var(--padding-xl);
    margin-right: var(--margin-2xs);
  }

  .quantity-rules__item:not(:last-child)::after {
    content: '•';
    position: absolute;
    inset-inline-end: 0.5rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.5em;
    line-height: 0;
  }

  .add-to-cart-button {
    height: var(--height-buy-buttons);
    text-transform: var(--button-text-case-primary);
  }

  .add-to-cart-button.button-secondary {
    text-transform: var(--button-text-case-secondary);
  }

  .product-form-text__error {
    display: flex;
    flex: 1 0 100%;
    align-items: flex-start;
    gap: var(--gap-xs);
    margin-block-end: var(--gap-xs);
  }

  .product__pickup-availabilities {
    width: 100%;
  }

  .pickup-availability__column {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }

  .pickup-availability__row {
    display: flex;
    gap: var(--padding-xs);
  }

  .pickup-availability__dialog-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }

  .pickup-availability__header-container {
    padding-block-end: var(--padding-2xl);
  }

  .pickup-location__wrapper {
    display: flex;
    flex-direction: column;
    padding-block: var(--padding-2xl);
    border-top: 1px solid var(--color-border);
    gap: var(--padding-xs);
  }

  .pickup-location__address-wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--padding-md);
  }

  .pickup-location__dialog {
    padding: var(--padding-2xl);
    position: fixed;
    border-radius: 0;
    width: var(--sidebar-width);
    max-width: 95vw;
    height: 100%;
    margin: 0 0 0 auto;
    border: var(--style-border-drawer);
    box-shadow: var(--shadow-drawer);
    background-color: var(--color-background);
  }

  .pickup-location__dialog:modal {
    max-height: 100dvh;
  }

  .pickup-location__text-sm {
    font-size: var(--font-size--sm);
    margin: 0;
  }

  .pickup-location__text-xs {
    font-size: var(--font-size--xs);
    margin: 0;
  }

  .pickup-location__button {
    width: fit-content;
    color: var(--color-primary);
    font-size: var(--font-size--xs);
    font-family: var(--font-body--family);
    padding: 0;
    cursor: pointer;
    margin-block: var(--margin-xs);
  }

  .pickup-location__button:hover {
    color: var(--color-primary-hover);
  }

  .pickup-location__h4 {
    margin: 0;
  }

  .pickup-location__text-bold {
    font-size: var(--font-size--md);
    font-weight: 600;
    margin: 0;
  }

  .pickup-location__availability-wrapper {
    display: flex;
    align-items: center;
    gap: var(--gap-xs);
    font-family: var(--font-paragraph--family);
  }

  .pickup-location__address {
    font-style: normal;
  }

  .pickup-location__close-button {
    top: calc(var(--padding-2xl) - (var(--icon-size-xs) / 2));
    right: calc(var(--padding-2xl) - var(--icon-size-xs));
  }

  .volume-pricing {
    display: block;
    width: 100%;
    margin-bottom: var(--gap);
  }

  .volume-pricing:not(:has(.volume-pricing__title)) {
    margin-top: 0;
    margin-bottom: 0;
  }

  .volume-pricing__title {
    display: block;
    margin-block-end: var(--gap-sm);
    font-size: var(--font-size--sm);
    font-weight: var(--font-body--weight);
    color: var(--color-foreground);
  }

  .volume-pricing__table {
    width: 100%;
  }

  .volume-pricing__row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-block: var(--padding-sm);
    padding-inline: var(--padding-md);
    font-size: var(--font-size--sm);
  }

  .volume-pricing__row--even {
    background: rgb(var(--color-foreground-rgb) / var(--opacity-5));
  }

  .volume-pricing__row--odd {
    background: var(--color-background);
  }

  .volume-pricing__collapsible-wrapper {
    block-size: 0;
    overflow-y: clip;
    opacity: 0;
    interpolate-size: allow-keywords;
    transition: opacity var(--animation-speed-slow) var(--animation-easing),
      block-size var(--animation-speed-slow) var(--animation-easing);
  }

  .volume-pricing__toggle {
    width: 100%;
    padding-bottom: 0;
    padding-inline: 0;
    text-align: left;
    color: var(--color-foreground-secondary);
    font-size: var(--font-size--xs);
    cursor: default;
    margin-block-start: 0;
    pointer-events: none;
  }

  button.volume-pricing__toggle {
    /* Need the extra specificity to override .product-form-buttons button */
    padding-block: var(--padding-sm);
  }

  .volume-pricing__toggle-text {
    cursor: pointer;
    display: inline-block;
    pointer-events: auto;
  }

  .volume-pricing__show-less {
    display: none;
  }

  .volume-pricing--expanded .volume-pricing__collapsible-wrapper {
    opacity: 1;
    block-size: auto;

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

  .volume-pricing--expanded .volume-pricing__show-more {
    display: none;
  }

  .volume-pricing--expanded .volume-pricing__show-less {
    display: inline;
  }

  /* Accelerated checkout styles — co-located here so they compile on pages
     where the quick-add modal can display buy buttons (e.g. collection pages). */
  .accelerated-checkout-block[data-shopify-visual-preview] {
    width: 300px;
  }

  more-payment-options-link {
    font-size: smaller;
  }

  more-payment-options-link a {
    --button-color: var(--color-primary);
  }

  more-payment-options-link a:hover {
    --button-color: var(--color-primary-hover);
  }

  .shopify-payment-button__more-options[aria-hidden='true'] {
    display: none;
  }
/* END_SNIPPET:buy-buttons-styles */
/* START_SNIPPET:card-gallery (INDEX:200) */
.card-gallery {
    overflow: hidden;
    container-type: inline-size; /* Make card-gallery a container */
    container-name: card-gallery-container; /* Optional: name the container */
  }

  .card-gallery__placeholder svg {
    height: 100%;
    width: 100%;
  }

  .card-gallery svg {
    aspect-ratio: var(--gallery-aspect-ratio, var(--ratio));
  }

  .product-card-gallery__title-placeholder {
    padding: var(--padding-md);
    font-size: var(--font-size--2xl);
    line-height: var(--line-height--display-loose);
    word-break: break-word;
    color: var(--color-foreground);
    background-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
    aspect-ratio: var(--gallery-aspect-ratio);
    border-radius: var(--product-corner-radius);
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .product-card-gallery__title-placeholder a {
    color: var(--color-foreground);
  }

  @media screen and (min-width: 750px) {
    .product-grid[data-product-card-size='extra-large'] .product-card-gallery__title-placeholder {
      padding: var(--padding-3xl);
      font-size: var(--font-size--3xl);
    }

    .product-grid[data-product-card-size='large'] .product-card-gallery__title-placeholder {
      padding: var(--padding-2xl);
      font-size: var(--font-size--2xl);
    }

    .product-grid[data-product-card-size='medium'] .product-card-gallery__title-placeholder {
      padding: var(--padding-xl);
      font-size: var(--font-size--xl);
    }

    .product-grid[data-product-card-size='small'] .product-card-gallery__title-placeholder {
      padding: var(--padding-sm);
      font-size: var(--font-size--lg);
    }

    .product-grid[data-product-card-size='extra-large']
      .card-gallery.card-gallery--badge-top-right
      .product-card-gallery__title-placeholder {
      padding-right: calc(var(--padding-3xl) + 50px);
    }

    .product-grid[data-product-card-size='large']
      .card-gallery.card-gallery--badge-top-right
      .product-card-gallery__title-placeholder {
      padding-right: calc(var(--padding-2xl) + 50px);
    }

    .product-grid[data-product-card-size='medium']
      .card-gallery.card-gallery--badge-top-right
      .product-card-gallery__title-placeholder {
      padding-right: calc(var(--padding-xl) + 50px);
    }

    .product-grid[data-product-card-size='small']
      .card-gallery.card-gallery--badge-top-right
      .product-card-gallery__title-placeholder {
      padding-right: calc(var(--padding-sm) + 50px);
    }

    .product-grid[data-product-card-size='extra-large']
      .card-gallery.card-gallery--badge-top-left
      .product-card-gallery__title-placeholder {
      padding-top: calc(var(--padding-3xl) + 40px);
    }

    .product-grid[data-product-card-size='large']
      .card-gallery.card-gallery--badge-top-left
      .product-card-gallery__title-placeholder {
      padding-top: calc(var(--padding-2xl) + 40px);
    }

    .product-grid[data-product-card-size='medium']
      .card-gallery.card-gallery--badge-top-left
      .product-card-gallery__title-placeholder {
      padding-top: calc(var(--padding-xl) + 40px);
    }

    .product-grid[data-product-card-size='small']
      .card-gallery.card-gallery--badge-top-left
      .product-card-gallery__title-placeholder {
      padding-top: calc(var(--padding-sm) + 40px);
    }

    .product-grid[data-product-card-size='extra-large']
      .card-gallery.card-gallery--badge-bottom-left
      .product-card-gallery__title-placeholder {
      padding-bottom: calc(var(--padding-3xl) + 40px);
    }

    .product-grid[data-product-card-size='large']
      .card-gallery.card-gallery--badge-bottom-left
      .product-card-gallery__title-placeholder {
      padding-bottom: calc(var(--padding-2xl) + 40px);
    }

    .product-grid[data-product-card-size='medium']
      .card-gallery.card-gallery--badge-bottom-left
      .product-card-gallery__title-placeholder {
      padding-bottom: calc(var(--padding-xl) + 40px);
    }

    .product-grid[data-product-card-size='small']
      .card-gallery.card-gallery--badge-bottom-left
      .product-card-gallery__title-placeholder {
      padding-bottom: calc(var(--padding-sm) + 40px);
    }
  }

  @media screen and (max-width: 749px) {
    .product-card-gallery__title-placeholder {
      font-size: var(--font-size--xl);
      padding: var(--padding-md);
    }

    .product-grid[data-product-card-size]
      .card-gallery.card-gallery--badge-top-right
      .product-card-gallery__title-placeholder {
      padding-right: calc(var(--padding-sm) + 50px);
    }

    .product-grid[data-product-card-size]
      .card-gallery.card-gallery--badge-top-left
      .product-card-gallery__title-placeholder {
      padding-top: calc(var(--padding-sm) + 40px);
    }

    .product-grid[data-product-card-size]
      .card-gallery.card-gallery--badge-bottom-left
      .product-card-gallery__title-placeholder {
      padding-bottom: calc(var(--padding-sm) + 40px);
    }
  }

  [product-grid-view='zoom-out'] .card-gallery .product-card-gallery__title-placeholder {
    /* stylelint-disable-next-line declaration-no-important */
    padding: var(--padding-xs) !important;
    font-size: var(--font-size--xs);
  }

  [product-grid-view='zoom-out'] .card-gallery .slideshow-control {
    min-width: auto;
  }

  ul[product-grid-view='zoom-out'] .product-grid__card .card-gallery {
    display: block;
  }

  [product-grid-view='zoom-out']
    .card-gallery
    > :is(quick-add-component, .product-badges, slideshow-component > slideshow-controls) {
    display: none;
  }

  ul[product-grid-view='zoom-out'] .card-gallery > img {
    display: block;
  }

  .card-gallery slideshow-arrows .slideshow-control {
    /* Align icons with quick-add button */
    padding-inline: var(--padding-xl);

    @container (max-width: 249px) {
      padding-inline: 0 var(--padding-sm);
    }
  }

  /*
   * Card galleries preview the next or previous images on 'pointerenter', so we
   * try to kick load them beforehand (they are lazy loaded otherwise).
   */
  .card-gallery
    :is(
      slideshow-slide:has(+ slideshow-slide[aria-hidden='false']),
      slideshow-slide[aria-hidden='false'] + slideshow-slide
    ) {
    content-visibility: auto;

    slideshow-component[actioned] & {
      content-visibility: visible;
    }
  }
/* END_SNIPPET:card-gallery */
/* START_SNIPPET:filter-remove-buttons (INDEX:231) */
/* 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: 750px) {
      --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: 750px) {
      padding: 0;
    }
  }

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

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

  .facets--horizontal .facets-remove {
    @media screen and (min-width: 750px) {
      display: none;
    }
  }
/* END_SNIPPET:filter-remove-buttons */
/* START_SNIPPET:gift-card-recipient-form-styles (INDEX:235) */
.recipient-form {
    --options-border-radius: var(--variant-picker-button-radius);
    --options-border-width: var(--variant-picker-button-border-width);

    display: flex;
    flex-direction: column;
    padding-bottom: var(--padding-2xl);
  }

  .recipient-form__send-to {
    padding: 0;
    margin-block-end: var(--margin-xs);
  }

  .gift-card-form-option {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--gap-sm);
    padding: 0;
    border: none;
  }

  .gift-card-form-option__button-label {
    display: flex;
    align-items: center;
    position: relative;
    padding-block: var(--padding-sm);
    padding-inline: var(--padding-lg);
    border: var(--style-border-width) solid var(--color-variant-border);
    border-radius: var(--options-border-radius);
    border-width: var(--options-border-width);
    overflow: clip;
    justify-content: center;
    min-width: auto;
    background-color: var(--color-variant-background);
    color: var(--color-variant-text);
    transition: background-color var(--animation-speed) var(--animation-easing),
      border-color var(--animation-speed) var(--animation-easing);

    &:hover {
      background-color: var(--color-variant-hover-background);
      border-color: var(--color-variant-hover-border);
      color: var(--color-variant-hover-text);
    }
  }

  .gift-card-form-option__button-label:has(:focus-visible) {
    --variant-picker-stroke-color: var(--color-foreground);

    border-color: var(--color-foreground);
    outline: var(--focus-outline-width) solid var(--color-foreground);
    outline-offset: var(--focus-outline-offset);
  }

  .gift-card-form-option__button-label:has(:checked) {
    color: var(--color-selected-variant-text);
    background-color: var(--color-selected-variant-background);
    border-color: var(--color-selected-variant-border);
    transition: background-color var(--animation-speed) var(--animation-easing),
      border-color var(--animation-speed) var(--animation-easing);

    &:hover {
      background-color: var(--color-selected-variant-hover-background);
      border-color: var(--color-selected-variant-hover-border);
      color: var(--color-selected-variant-hover-text);
    }
  }

  .gift-card-form-option__button-label input {
    position: absolute;
    inset: 0;
    opacity: 0;
    margin: 0;
    cursor: pointer;
    width: 100%;
    height: 100%;
  }

  .recipient-fields {
    display: flex;
    flex-direction: column;
    gap: var(--gap-sm);
    transition: opacity 0.3s var(--animation-easing);
    padding-block-start: var(--padding-xl);
  }

  .recipient-fields[hidden] {
    display: none;
  }

  .field--send-on {
    display: flex;
    flex-direction: column;
  }

  .recipient-form__message {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: var(--gap-sm);
    margin-top: var(--margin-sm);
  }

  .recipient-form-field-label {
    position: absolute;
    left: var(--padding-sm);
    bottom: var(--padding-sm);
    font-style: italic;
    color: var(--color-input-text);
  }

  .recipient-fields__textarea {
    min-height: 5.5rem;
    overflow-y: auto;

    /* Space for the character count */
    padding-bottom: calc(var(--padding-sm) * 3);
    scroll-padding-bottom: calc(var(--padding-sm) * 3);
  }

  .recipient-fields__input {
    flex-grow: 1;
    transition: background-color var(--animation-speed) ease, border-color var(--animation-speed) ease;
    padding: var(--input-padding);
    background-color: var(--color-input-background);
    color: var(--color-input-text);
    text-align: left;
    font-size: var(--font-paragraph--size);
    border: var(--style-border-width-inputs) solid var(--color-input-border);
    border-radius: var(--style-border-radius-inputs);

    &:autofill {
      background-color: var(--color-input-background);
      color: var(--color-input-text);
    }

    &:is(:focus, :hover) {
      background-color: var(--color-input-hover-background);
    }

    &:is(:focus) {
      outline-color: var(--color-input-background);
    }
  }

  /* Date picker calendar icon
   * Safari doesn't show the icon and Firefox correctly applies the color from the input field.
   * Webkit browsers need the mask-image trick to use the correct icon color.
   */
  .field--send-on .recipient-fields__input::-webkit-calendar-picker-indicator {
    cursor: pointer;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' viewBox='0 0 24 24' %3E%3Cg%3E%3Cpath d='M9 11H7v2h2v-2zm4 0h-2v2h2v-2zm4 0h-2v2h2v-2zm2-7h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V9h14v11z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-image: none;
    background-color: currentColor;
    mask-type: match-source;
  }

  /* For Webkit browsers - text cursor for input area */
  .field--send-on .recipient-fields__input::-webkit-datetime-edit {
    cursor: text;
  }

  .field--send-on .recipient-fields__input::-webkit-datetime-edit-year-field,
  .field--send-on .recipient-fields__input::-webkit-datetime-edit-month-field,
  .field--send-on .recipient-fields__input::-webkit-datetime-edit-day-field {
    /* Override the disabled color */
    color: var(--color-input-text);
  }

  /* Fallback for other browsers */
  .field--send-on .recipient-fields__input {
    cursor: text;
  }

  /* For Firefox - entire field is clickable, so show pointer */
  @supports (-moz-appearance: none) {
    .field--send-on .recipient-fields__input {
      cursor: pointer;
    }
  }
/* END_SNIPPET:gift-card-recipient-form-styles */
/* START_SNIPPET:grid-density-controls (INDEX:238) */
.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: 750px) {
      display: flex;
    }
  }

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

    @media screen and (min-width: 750px) {
      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: 750px) {
      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: 750px) {
      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:list-filter (INDEX:249) */
.facets input:checked + label {
    font-weight: 500;
  }

  .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;

      font-weight: 500;
    }

    &: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: 750px) {
      display: flex;
    }
  }

  .facets--horizontal .sorting-filter .facets__status {
    @media screen and (min-width: 750px) {
      display: none;
    }
  }

  .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: 750px) {
      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;
  }

  .facets__inputs-list-item:not(.facets__inputs-list-item--disabled) .facets__image-label:hover {
    font-weight: 500;
  }

  /* 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: 750px) {
      --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));
    font-weight: 500;
    transition: font-weight 0.2s ease;
  }

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

    width: auto;
  }

  .facets__inputs-list-item:not(.facets__inputs-list-item--disabled) .variant-option__button-label:hover {
    font-weight: 500;
  }

  /* 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) {
      font-weight: 500;
      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:price-filter (INDEX:263) */
/* 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-badges-styles (INDEX:265) */
.product-badges {
    --badge-inset: max(var(--padding-xs), calc((var(--border-radius) + var(--padding-xs)) * (1 - cos(45deg))));

    position: absolute;
    z-index: var(--layer-flat);
  }

  .product-badges--bottom-left {
    bottom: calc(var(--badge-inset) + var(--padding-block-start));
    left: calc(var(--badge-inset) + var(--padding-inline-start));
  }

  .product-badges--top-left {
    top: calc(var(--badge-inset) + var(--padding-block-start));
    left: calc(var(--badge-inset) + var(--padding-inline-start));
  }

  .product-badges--top-right {
    top: calc(var(--badge-inset) + var(--padding-block-start));
    right: calc(var(--badge-inset) + var(--padding-inline-start));
  }

  .product-badges__badge {
    --badge-font-size: var(--font-size--xs);

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: var(--color-foreground);
    background: var(--color-background);
    font-size: var(--badge-font-size);
    font-family: var(--badge-font-family);
    font-weight: var(--badge-font-weight);
    text-transform: var(--badge-text-transform);
    border-radius: var(--badge-border-radius);
  }

  .product-badges__badge--rectangle {
    padding-block: var(--badge-rectangle-padding-block);
    padding-inline: var(--badge-rectangle-padding-inline);
  }
/* END_SNIPPET:product-badges-styles */
/* START_SNIPPET:product-card (INDEX:266) */
.product-card__placeholder-image svg {
    height: 100%;
  }

  .product-card__content slideshow-component {
    --cursor: pointer;
  }

  @media screen and (max-width: 749px) {
    .product-card slideshow-arrows .slideshow-control {
      display: none;
    }
  }
/* END_SNIPPET:product-card */
/* START_SNIPPET:product-grid (INDEX:267) */
.product-grid {
    --product-grid-gap: var(--product-grid-gap-mobile);
    --mobile-columns: 2; /* Default value */

    isolation: isolate;

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

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

    @media screen and (min-width: 750px) {
      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 {
    grid-column: var(--grid-column--mobile);
    padding: var(--grid--margin--mobile);

    @media screen and (min-width: 750px) {
      grid-column: var(--grid-column--desktop);
      padding: var(--padding-block-start) var(--padding-inline-end) var(--padding-block-end) var(--padding-inline-start);
    }
  }

  .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-styles (INDEX:269) */
media-gallery:where(.media-gallery--grid) .media-gallery__grid {
    display: none;
  }

  media-gallery.media-gallery--grid .media-gallery__grid .product-media-container {
    /* Needed for safari to stretch to full grid height */
    height: 100%;
  }

  @media screen and (min-width: 750px) {
    .media-gallery--two-column .media-gallery__grid {
      grid-template-columns: repeat(2, 1fr);
    }

    /* Display grid view as a carousel on mobile, grid on desktop */
    media-gallery:is(.media-gallery--grid) slideshow-component {
      display: none;
    }

    media-gallery:where(.media-gallery--grid) .media-gallery__grid {
      display: grid;
    }
  }

  .product-media-container__zoom-button {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: var(--layer-flat);
    cursor: zoom-in;
    background-color: transparent;

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

  slideshow-slide.product-media-container--tallest {
    content-visibility: visible;
  }

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

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

  .product-media-container--zoomable.product-media-container--image {
    cursor: zoom-in;
  }
/* END_SNIPPET:product-media-gallery-content-styles */
/* START_SNIPPET:product-media (INDEX:271) */
.product-media {
    aspect-ratio: var(--gallery-aspect-ratio, var(--ratio));
    min-height: 0;
    min-width: 0;
  }

  .product-media__image {
    object-position: var(--focal-point, center center);
  }

  /*** Media border-radius feature ****/
  @media screen and (min-width: 750px) {
    .media-gallery--carousel slideshow-container,
    .media-gallery--grid .product-media > * {
      border-radius: var(--media-radius, 0);
      overflow: hidden;
    }

    /* When the CAROUSEL is on the LEFT side */
    .product-information:not(.product-information--media-right)
      .media-gallery--carousel.media-gallery--extend
      slideshow-container {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
    }

    /* When the CAROUSEL is on the RIGHT side */
    .product-information.product-information--media-right
      .media-gallery--carousel.media-gallery--extend
      slideshow-container {
      border-top-right-radius: 0;
      border-bottom-right-radius: 0;
    }

    /* When the GRID is on the LEFT side */
    .product-information:not(.product-information--media-right) {
      /* One column */
      .media-gallery--grid.media-gallery--extend:not(.media-gallery--two-column) .product-media > *,
      /* Two column, small first image */
      .media-gallery--grid.media-gallery--extend.media-gallery--two-column:not(.media-gallery--large-first-image)
        .product-media-container:nth-of-type(odd)
        .product-media
        > *,
      /* Two column, large first image */
      .media-gallery--grid.media-gallery--extend.media-gallery--two-column.media-gallery--large-first-image
        .product-media-container:is(:first-of-type, :nth-of-type(even))
        .product-media
        > * {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
      }
    }

    /* When the GRID is on the RIGHT side */
    .product-information.product-information--media-right {
      /* One column */
      .media-gallery--grid.media-gallery--extend:not(.media-gallery--two-column) .product-media > *,
      /* Two column, small first image */
      .media-gallery--grid.media-gallery--extend.media-gallery--two-column:not(.media-gallery--large-first-image)
        .product-media-container:nth-of-type(even)
        .product-media
        > *,
      /* Two column, large first image */
      .media-gallery--grid.media-gallery--extend.media-gallery--two-column.media-gallery--large-first-image
        .product-media-container:is(:first-of-type, :nth-of-type(odd))
        .product-media
        > * {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
      }
    }
  }
/* END_SNIPPET:product-media */
/* START_SNIPPET:quick-add-modal-styles (INDEX:273) */
#quick-add-dialog {
    display: contents;
  }

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

  .quick-add-modal {
    padding: 0;
    border: var(--style-border-popover);
    overflow: hidden;
    box-shadow: 0 5px 30px rgb(0 0 0 / var(--opacity-15));

    @media screen and (max-width: 749px) {
      position: fixed;
      margin: auto 0 0 0;
      min-height: unset;
      max-width: 100%;
      border-radius: 0;
      overflow: clip;
      height: fit-content;
    }
  }

  .quick-add-modal[open] {
    @media screen and (max-width: 750px) {
      border-top-left-radius: var(--style-border-radius-popover);
      border-top-right-radius: var(--style-border-radius-popover);
    }
  }

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

  .quick-add-modal .view-more-details__wrapper {
    @media screen and (max-width: 749px) {
      display: none;
    }
  }

  .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(--margin-2xs);
    right: var(--margin-2xs);
    transition: transform 0.15s var(--animation-timing-bounce);
    z-index: var(--layer-raised);
    overflow: visible;
    transform-origin: center;
  }

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

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

    &: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 {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    grid-template-rows: 100% 1fr;
    position: relative;
    overflow-y: auto;
    max-height: 100vh;
    flex-grow: 1;

    @media screen and (max-width: 749px) {
      grid-template-columns: repeat(4, 1fr);
      grid-template-rows: auto;
      padding-inline: var(--padding-xl);
      padding-block: var(--padding-xl);
      gap: var(--gap-lg);
      flex: 1;
      min-height: 0;
      overflow-y: auto;
      height: auto; /* Prevent a bug in Safari where height:fit-content is not respected */
      max-height: 100vh;
    }
  }

  .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 {
    /* One column */
    .media-gallery--grid:not(.media-gallery--two-column) .product-media > *,
      /* Two column, small first image */
      .media-gallery--grid.media-gallery--two-column:not(.media-gallery--large-first-image)
      .product-media-container:nth-of-type(odd)
      .product-media > *,
      /* Two column, large first image */
      .media-gallery--grid.media-gallery--two-column.media-gallery--large-first-image
        .product-media-container:is(:first-of-type, :nth-of-type(even))
        .product-media > *,
        /* Carousel */
      .media-gallery--carousel slideshow-container {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
    }
  }

  .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 .product-header {
    @media screen and (max-width: 749px) {
      display: flex;
      flex-direction: column;
      grid-column: 2 / -1;
      grid-row: 1;
      padding-right: var(--padding-2xl);
    }
  }

  .quick-add-modal__content .product-header a:not(product-price *) {
    @media screen and (max-width: 749px) {
      font-size: var(--font-size--md);
      font-weight: 500;
      color: inherit;
      width: fit-content;
    }
  }

  .quick-add-modal__content variant-picker,
  .quick-add-modal__content product-form-component {
    @media screen and (max-width: 749px) {
      grid-column: 1 / -1;
    }
  }

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

  .quick-add-modal__content .product-details {
    grid-column: 4 / -1;
    grid-row: 1 / span 2;
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    height: 100%;
    min-height: 0;
    overflow-y: auto;
    position: relative;

    dialog[open] & {
      animation: fadeSlideIn 0.3s var(--animation-timing-fade-in) both;
      animation-delay: 0.1s;
    }

    @media screen and (max-width: 749px) {
      grid-column: 2 / span 2;
      grid-row: span 1;
      max-height: 100%;
      height: 100%;
    }
  }

  @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 {
      mask-image: linear-gradient(to bottom, transparent 0%, #000 var(--quick-add-modal-mask-start), #000 100%);
      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);
    background-color: var(--color-background);
    z-index: var(--layer-raised);

    &::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
      );
    }
  }

  .quick-add-modal__content .product-details .buy-buttons-block:has(gift-card-recipient-form) {
    position: static;
    padding-bottom: 0;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }

  .quick-add-modal__content .product-details .buy-buttons-block:has(gift-card-recipient-form) > product-form-component {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }

  .quick-add-modal__content .product-details .buy-buttons-block:has(gift-card-recipient-form) form {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }

  .quick-add-modal__content .product-details .buy-buttons-block:has(gift-card-recipient-form)::before {
    display: none;
  }

  .quick-add-modal__content .product-details .buy-buttons-block__bar {
    display: block;
    position: sticky;
    bottom: 0;
    margin-top: auto;
    padding-block: var(--gap-md) var(--padding-3xl);
    background-color: var(--color-background);
    z-index: var(--layer-raised);

    &::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
      );
    }
  }

  @supports (animation-timeline: scroll(self)) {
    .quick-add-modal__content .product-details :is(.buy-buttons-block)::before,
    .quick-add-modal__content .product-details .buy-buttons-block__bar::before {
      --mask-if-scroll: var(--can-scroll) var(--quick-add-modal-mask-end);
      --mask-if-no-scroll: 48px;
      --quick-add-modal-mask-end-progressive-enhanced: var(--mask-if-scroll, var(--mask-if-no-scroll));
      height: calc(var(--gap-2xs) + 48px);
    }
  }

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

    padding-block: min(var(--gap-2xl), var(--gap));
    margin-block-end: calc(var(--focus-outline-offset) + var(--focus-outline-width));
  }

  .quick-add-modal__content .variant-option--swatches {
    padding-inline-start: var(--padding-2xs);
  }

  .quick-add-modal__content .variant-option--swatches legend {
    margin-inline-start: calc(-1 * var(--padding-2xs));
  }

  .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;

    /* Prevent overlap between title and close button */
    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 product-price {
    --text-align: left;
  }

  .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
    *:not(
      .group-block,
      .group-block-content,
      .buy-buttons-block,
      .buy-buttons-block *,
      .view-product-title,
      .view-product-title *,
      variant-picker,
      variant-picker *,
      product-price,
      product-price *,
      product-inventory,
      product-inventory *,
      .view-more-details__wrapper,
      .view-more-details__wrapper *
    ) {
    @media screen and (min-width: 750px) {
      /* stylelint-disable-next-line declaration-no-important */
      display: none !important;
    }
  }

  .quick-add-modal__content
    .group-block:not(
      :has(
          .buy-buttons-block,
          .buy-buttons-block *,
          .view-product-title,
          .view-product-title *,
          variant-picker,
          variant-picker *,
          product-price,
          product-price *,
          product-inventory,
          product-inventory *,
          .view-more-details__wrapper,
          .view-more-details__wrapper *
        ),
      .buy-buttons-block
    ) {
    display: none;
  }

  @media screen and (min-width: 750px) {
    .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 > .group-block {
    padding-block: var(--padding-3xl) 0;
  }

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

  .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 / span 1;
    grid-row: 1;
    position: relative;
    top: 0;
    animation: fadeIn 0.4s var(--animation-timing-fade-in) both;

    @media screen and (min-width: 750px) {
      position: sticky;
      grid-column: 1 / 4;
      width: var(--quick-add-modal-gallery-width);
      overflow-y: auto;
      -ms-overflow-style: none;
      scrollbar-width: none;
    }

    &::-webkit-scrollbar {
      display: none;
    }
  }

  .quick-add-modal__content .product-information__media media-gallery {
    pointer-events: none;

    @media screen and (min-width: 750px) {
      position: absolute;
      inset: 0;
    }
  }

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

  .quick-add-modal__content .product-information__media slideshow-arrows {
    display: none;
  }

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

  .quick-add-modal__content .product-information__media slideshow-slides {
    display: flex;
    flex-direction: column;
    gap: var(--gap-2xs);
    overflow: visible;
    scroll-snap-type: none;
  }

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

  .quick-add-modal__content .product-information__media slideshow-slide[aria-hidden='true'] {
    @media screen and (max-width: 749px) {
      display: none;
    }
  }

  .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 .product-information__media :is(slideshow-controls, slideshow-controls[thumbnails]) {
    display: none;
  }

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

  .quick-add-modal__content .text-block.rte:not(product-price),
  .quick-add-modal__content .view-more-details__wrapper {
    display: none;
  }

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

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  /* R3 quick-add modal mobile fix: show copy, reduce empty media area, stop thumbnail carousel clutter. */
  @media screen and (max-width: 749px) {
    .quick-add-modal__content .r3-product-intro {
      grid-column: 1 / -1;
      margin: 0;
      order: 2;
    }
    .quick-add-modal__content .product-information__media {
      grid-column: 1 / -1 !important;
      max-height: 42vh;
      overflow: hidden;
    }
    .quick-add-modal__content .slideshow-controls,
    .quick-add-modal__content .thumbnail-list,
    .quick-add-modal__content [class*='thumbnail'] {
      display: none !important;
    }
    .quick-add-modal__content .product-media-container,
    .quick-add-modal__content .product-media,
    .quick-add-modal__content img {
      max-height: 42vh !important;
      object-fit: contain !important;
    }
  }


  /* R3 quick-add modal copy visibility fix across desktop + mobile. */
  .quick-add-modal__content .r3-product-intro,
  .quick-add-modal__content .r3-product-intro__body,
  .quick-add-modal__content div:has(> .r3-product-intro) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    width: auto !important;
  }
/* END_SNIPPET:quick-add-modal-styles */
/* START_SNIPPET:quick-add-styles (INDEX:275) */
/* Quick Add */
  .quick-add {
    --quick-add-offset: var(--padding-sm);
    --quick-add-right: calc(var(--quick-add-offset) + var(--padding-inline-end));
    --quick-add-bottom: calc(var(--quick-add-offset) + var(--padding-block-end));

    position: absolute;
    inset: 0;
    z-index: var(--layer-raised);
    pointer-events: none;

    @media screen and (min-width: 750px) {
      --quick-add-offset: var(--padding-md);
    }
  }

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

  .quick-add[class*='color-scheme-'] {
    background-color: #0000;
  }

  product-card:is(:hover, :focus-within) .quick-add__button {
    opacity: 1;
  }

  .quick-add__button {
    display: var(--quick-add-mobile-display, none);
    align-items: center;
    background: linear-gradient(var(--color-background) 0 100%) padding-box;
    padding: 0;
    border-radius: 50px;
    border: 2px solid hsl(0 0% 0% / 0.15);
    height: var(--button-size-md);
    cursor: pointer;
    opacity: var(--quick-add-mobile-opacity, 0);
    overflow: hidden;
    color: var(--color-foreground);
    pointer-events: all;
    position: absolute;
    right: max(var(--quick-add-right), calc((var(--border-radius) + var(--quick-add-right)) * (1 - cos(45deg))));
    bottom: max(var(--quick-add-bottom), calc((var(--border-radius) + var(--quick-add-bottom)) * (1 - cos(45deg))));
    backdrop-filter: blur(20px) saturate(180%);

    &:hover {
      scale: 1.03;

      /* Hover stabilizer: extends hit area to maintain hover state */
      &::before {
        content: '';
        position: absolute;
        inset: -10px;
        z-index: -1;
      }
    }

    &:active {
      scale: 0.99;
    }

    .quick-add[stay-visible] & {
      display: grid;
    }

    @media screen and (min-width: 750px) {
      display: var(--quick-add-display, flex);
      opacity: 0;
    }
  }

  .quick-add__button.add-to-cart-button {
    height: var(--button-size-md);
  }

  .quick-add__button .add-to-cart-text {
    background: var(--color-background);
    overflow: hidden;
    border-radius: 50px;
    height: 100%;
    gap: 0;
  }

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

  .quick-add__button .add-to-cart-icon {
    /* account for border width */
    height: 100%;
    width: calc(var(--button-size-md) - 4px);
  }

  .quick-add__button .add-to-cart-text__content {
    display: grid;
    grid-template-columns: 0fr;

    & > span {
      min-width: 0;

      span {
        padding-right: var(--padding-sm);
        opacity: 0;
        display: inline-block;
        filter: blur(2px);
        translate: 0.5ch 0;
      }
    }
  }

  .quick-add__button[data-added='true'] .add-to-cart-text {
    animation-name: atc-fade-out;
  }

  .quick-add__button[data-added='true'] .add-to-cart-text--added {
    translate: 0 0;
    animation-name: atc-fade-in;
  }

  .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;
    height: 100%;
  }

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

  .quick-add-modal deferred-media {
    display: none;
  }

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

  .quick-add__button:is(:hover, :focus-visible) {
    .add-to-cart-text__content {
      grid-template-columns: 1fr;

      span span {
        opacity: 1;
        translate: 0 0;
        filter: blur(0);
      }
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .quick-add__button .add-to-cart-text__content {
      grid-template-columns: 1fr;

      span span {
        opacity: 1;
        translate: 0 0;
        filter: blur(0);
      }
    }
  }

  @media (prefers-reduced-motion: no-preference) {
    .quick-add__button {
      transition-property: scale, translate, opacity;
      transition-duration: var(--animation-speed);
      transition-timing-function: var(--ease-out-cubic);
    }

    .quick-add__button:is(:hover, :focus-visible) {
      .add-to-cart-text__content,
      .add-to-cart-text__content span span {
        transition-delay: var(--animation-speed);
      }
    }

    .quick-add__button .add-to-cart-text__content {
      transition-property: grid-template-columns;
      transition-duration: var(--animation-speed);
      transition-timing-function: var(--ease-out-cubic);

      span span {
        transition-property: opacity, filter, translate;
        transition-duration: var(--animation-speed-slow);
        transition-timing-function: var(--ease-out-quad);
      }
    }
  }

  /* R3 mobile/touch fix: do not hide quick-add words behind hover-only animation. */
  @media screen and (max-width: 989px), (hover: none) {
    .quick-add__button {
      display: inline-flex !important;
      opacity: 1 !important;
      min-width: 132px !important;
      min-height: 44px !important;
      width: auto !important;
      padding: 0 14px !important;
    }

    .quick-add__button .add-to-cart-text {
      display: inline-flex !important;
      align-items: center !important;
      width: auto !important;
      min-width: 100% !important;
    }

    .quick-add__button .add-to-cart-text__content {
      grid-template-columns: 1fr !important;
      width: auto !important;
    }

    .quick-add__button .add-to-cart-text__content > span,
    .quick-add__button .add-to-cart-text__content span span {
      opacity: 1 !important;
      translate: 0 0 !important;
      filter: blur(0) !important;
      min-width: max-content !important;
    }
  }
/* END_SNIPPET:quick-add-styles */
/* START_SNIPPET:resource-card (INDEX:277) */
.resource-card {
    --resource-card-secondary-image-opacity: 0;
    --resource-card-primary-image-opacity: calc(1 - var(--resource-card-secondary-image-opacity));

    display: flex;
    flex-direction: column;
    row-gap: var(--padding-xs);
    position: relative;
    text-decoration: none;
    height: 100%;
    opacity: 0;
    animation: fadeIn var(--animation-speed-medium) var(--animation-timing-fade-in) forwards;
  }

  .resource-card__link {
    position: absolute;
    inset: 0;
    z-index: 1;
  }

  .resource-card__content {
    display: flex;
    flex-direction: column;
    color: var(--color-foreground);
    gap: var(--padding-3xs);

    .price {
      font-weight: 500;
    }

    .volume-pricing-note {
      display: block;
      margin-top: var(--padding-3xs);
      font-family: var(--font-body--family);
      font-weight: normal;
      font-size: min(0.85em, var(--font-paragraph--size));
      line-height: normal;
      letter-spacing: normal;
      text-transform: none;
      color: rgb(var(--color-foreground-rgb) / var(--opacity-subdued-text));
    }
  }

  .resource-card[data-resource-type='article'] .resource-card__content,
  .resource-card[data-resource-type='page'] .resource-card__content {
    gap: var(--padding-xs);
  }

  .resource-card__image {
    aspect-ratio: var(--resource-card-aspect-ratio, auto);
    object-fit: cover;
    border-radius: var(--resource-card-corner-radius);
    opacity: var(--resource-card-primary-image-opacity);
  }

  .resource-card__image--secondary {
    position: absolute;
    top: 0;
    opacity: var(--resource-card-secondary-image-opacity);
    border-radius: var(--resource-card-corner-radius);
  }

  .resource-card__media:empty {
    display: none;
  }

  .resource-card__image-placeholder {
    padding: var(--padding-sm);
    font-size: var(--font-size--lg);
    line-height: var(--line-height--display-loose);
    word-break: break-word;
    background-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
    aspect-ratio: var(--resource-card-aspect-ratio, auto);
    border-radius: var(--resource-card-corner-radius);
    color: var(--color-foreground);
  }

  .resource-card__title {
    margin-block: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    line-height: 1.3;
    word-break: break-word;
    overflow-wrap: break-word;
  }

  .resource-card__title.paragraph {
    line-height: 1.3;
  }

  .resource-card--overlay {
    height: 100%;

    &::before {
      content: '';
      position: absolute;
      inset: 50% 0 0;
      background: var(--gradient-image-overlay);
      border-radius: var(--resource-card-corner-radius);
      pointer-events: none;
      z-index: var(--layer-flat);
    }
  }

  .resource-card--overlay .resource-card__image {
    height: 100%;
  }

  .resource-card--overlay .resource-card__content {
    position: absolute;
    inset: auto 0 0;
    padding: var(--padding-lg) var(--padding-lg) var(--padding-sm);
    z-index: var(--layer-raised);
  }

  .resource-card--overlay .resource-card__title {
    color: var(--color-white);
  }

  /* Collection images */
  .resource-card__image-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--gap-2xs);
  }

  .resource-card__collection-image {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: calc(var(--card-corner-radius) - (var(--padding-xs) / 2));
  }

  .resource-card__subtext {
    color: rgb(var(--color-foreground-rgb) / var(--opacity-subdued-text));
    margin-block-start: 0;
  }

  .resource-card__subtext.paragraph {
    font-size: var(--font-size--body-sm);
    line-height: var(--line-height--body-tight);
    color: rgb(var(--color-foreground-rgb) / var(--opacity-subdued-text));
  }

  .resource-card:has(.resource-card__image--secondary) {
    &:hover,
    &:focus {
      --resource-card-secondary-image-opacity: 1;
    }
  }
/* END_SNIPPET:resource-card */
/* START_SNIPPET:search-modal (INDEX:282) */
/* Search modal style */
  .search-modal {
    --search-border-radius: var(--style-border-radius-popover);
    --search-border-width: var(--style-border-width);
  }

  .search-modal__content {
    /* Approx set the top so when the content is at max height, the modal is centered */
    --modal-top-margin: calc(50dvh - var(--modal-max-height) / 2 - 2rem);
    --modal-width: 66dvw;

    padding: 0;
    border: var(--style-border-popover);

    @media screen and (min-width: 750px) {
      width: var(--modal-width);
      margin-block-start: var(--modal-top-margin);
      overflow: hidden;
    }
  }

  /* Hide the default dialog backdrop on small screens */
  @media screen and (max-width: 749px) {
    .search-modal__content::backdrop {
      display: none;
    }
  }

  .dialog-modal[open].search-modal__content {
    transform-origin: bottom center;
    animation: search-element-slide-in-bottom 300ms var(--ease-out-quad) forwards;
    border-radius: var(--search-border-radius);
    box-shadow: var(--shadow-popover);

    @media screen and (max-width: 749px) {
      border-radius: 0;
    }
  }

  .dialog-modal.search-modal__content.dialog-closing {
    animation: search-element-slide-out-bottom 200ms var(--ease-out-quad) forwards;
  }

  .search-modal__content[open] {
    display: flex;
  }

  .search-modal__content :is(.predictive-search-dropdown, .predictive-search-form__content-wrapper) {
    position: relative;
  }

  .dialog-modal
    .predictive-search-form__header:has(
      .predictive-search__reset-button:not(.predictive-search__reset-button[hidden])
    )::before {
    content: '';
    position: absolute;
    right: calc(var(--padding-sm) + var(--minimum-touch-target));
    top: 0;
    bottom: 0;
    width: var(--border-width-sm);
    background-color: var(--color-border);
  }

  .dialog-modal
    .predictive-search-form__header:has(.predictive-search__reset-button:not(.predictive-search__reset-button[hidden]))
    > .predictive-search__close-modal-button {
    &::before {
      content: none;
    }
  }

  @media screen and (min-width: 750px) {
    .dialog-modal
      .predictive-search-form__header:has(
        .predictive-search__reset-button:not(.predictive-search__reset-button[hidden])
      )::before {
      right: calc(var(--padding-2xl) * 2);
    }
  }

  predictive-search-component {
    --resource-card-corner-radius: var(--product-corner-radius);

    display: flex;
    width: 100%;
    position: relative;
    margin-inline: auto;
    align-items: center;
    background-color: var(--color-background);
    z-index: var(--layer-heightened);
  }

  .predictive-search-form__footer {
    display: none;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;

    @media screen and (min-width: 750px) {
      --to-top-gradient-background: linear-gradient(
        to top,
        rgb(var(--color-background-rgb) / var(--opacity-90)),
        rgb(var(--color-background-rgb) / var(--opacity-80)),
        rgb(var(--color-background-rgb) / var(--opacity-40)),
        transparent
      );

      padding-block: var(--padding-xs) var(--padding-lg);
      background-image: var(--to-top-gradient-background);
    }
  }

  predictive-search-component:has([data-search-results]):not(:has(.predictive-search-results__no-results))
    .predictive-search-form__footer {
    display: block;
  }

  .predictive-search-form {
    position: relative;
    width: 100%;
    align-self: flex-start;
  }

  .predictive-search-form__content {
    max-height: 50dvh;
    overflow-y: auto;
    background-color: var(--color-background);

    /* Firefox */
    scrollbar-width: none;

    /* Webkit browsers */
    &::-webkit-scrollbar {
      display: none;
    }
  }

  .predictive-search-form__content-wrapper {
    position: absolute;
    top: 100%;
    width: 100%;
    left: 0;
    z-index: var(--layer-raised);
    display: flex;
    flex-direction: column;
    border-radius: 0 0 var(--search-border-radius) var(--search-border-radius);
    transition: box-shadow var(--animation-speed) var(--animation-easing);
    transform: translateZ(0);
    will-change: transform, opacity;
    overflow: hidden;

    @media screen and (max-width: 749px) {
      border-radius: 0;
    }

    @media screen and (min-width: 750px) {
      max-height: var(--modal-max-height);
    }
  }

  /* Add new rule to apply bottom padding only when search button exists */
  .predictive-search-form__content-wrapper:has([data-search-results]):not(:has(.predictive-search-results__no-results))
    > .predictive-search-form__content {
    padding-block-end: var(--padding-6xl);
  }

  .predictive-search-form__header-inner {
    background: var(--color-background);
    border: var(--search-border-width) solid var(--color-border);
    color: var(--color-foreground);
    border-radius: var(--style-border-radius-popover);
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;

    @media screen and (max-width: 749px) {
      border-radius: var(--style-border-radius-inputs);
      border: none;
    }
  }

  .predictive-search-form__header-inner:focus-within {
    outline-offset: var(--focus-outline-offset);

    @media screen and (min-width: 750px) {
      outline: var(--focus-outline-width) solid var(--color-primary);
    }
  }

  .predictive-search-form__header {
    display: flex;
    position: sticky;
    top: 0;
    z-index: var(--layer-heightened);
    width: 100%;
    align-items: center;
    background-color: var(--color-input-background);
    border: var(--search-border-width) solid var(--color-border);
    border-radius: var(--style-border-radius-inputs);

    @media screen and (max-width: 749px) {
      padding: var(--padding-2xs) var(--padding-sm);
    }
  }

  .predictive-search-form__header:focus-within,
  .predictive-search-form__header-inner:focus-within,
  .predictive-search-form__header-inner:has(.search-input:is(:focus, :focus-visible)) {
    outline: none;
    box-shadow: none;
    /* stylelint-disable-next-line declaration-no-important */
    border-color: var(--color-border) !important;
  }

  input.search-input {
    border-radius: var(--style-border-radius-inputs);
    padding-block: var(--padding-sm);
    font-size: var(--font-size--md);
    width: 100%;
    color: var(--color-foreground);
    padding-inline: calc(var(--margin-lg) + var(--icon-size-lg)) 0;
    background: transparent;
    text-overflow: ellipsis;
    overflow: hidden;
    outline: none;
    border: 0;
  }

  .search-input::placeholder {
    color: rgb(var(--color-foreground-rgb) / var(--opacity-subdued-text));
  }

  .search-input,
  .search-input:is(:focus, :focus-visible, :focus-within),
  .predictive-search-form__header *:is(:focus, :focus-visible) {
    outline: none;
    box-shadow: none;
  }

  .search-input:hover {
    background-color: transparent;
  }

  .predictive-search__icon {
    position: absolute;
    left: var(--margin-xl);
    top: auto;
    width: var(--icon-size-lg);
    height: var(--icon-size-lg);
    color: rgb(var(--color-foreground-rgb) / var(--opacity-60));

    @media screen and (min-width: 750px) {
      left: var(--margin-md);
    }
  }

  .predictive-search__icon > svg {
    width: var(--icon-size-md);
    height: var(--icon-size-md);
  }

  .predictive-search__reset-button {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: var(--minimum-touch-target);
    height: var(--minimum-touch-target);
    padding: 0;
    margin-inline-end: var(--margin-md);
    background: transparent;
    color: var(--color-foreground);
    opacity: 0.68;
    transition: opacity var(--animation-speed-medium) var(--animation-timing-fade-out),
      visibility var(--animation-speed-medium) var(--animation-timing-fade-out);

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

    &:active {
      transform: scale(0.9);
      transition: transform 100ms var(--animation-timing-active);
    }

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

  .predictive-search__reset-button[hidden] {
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
  }

  .predictive-search__reset-button-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--icon-size-lg);
    height: var(--icon-size-lg);
    transition: background-color var(--animation-speed-medium) ease-in-out,
      transform var(--animation-speed-medium) var(--animation-timing-bounce);
    border-radius: 50%;

    &:hover {
      background-color: rgb(var(--color-primary-hover-rgb) / var(--opacity-8));
    }
  }

  .predictive-search__reset-button:active .predictive-search__reset-button-icon {
    transform: scale(0.85);
    transition-timing-function: var(--animation-timing-active);
    transition-duration: 100ms;
  }

  .predictive-search__reset-button svg {
    width: var(--icon-size-md);
    height: var(--icon-size-md);
  }

  .predictive-search__reset-button-text {
    display: none;
  }

  .predictive-search__search-button {
    margin: auto;
    z-index: var(--layer-raised);
    transition: transform var(--animation-speed-medium) var(--animation-timing-bounce),
      box-shadow var(--animation-speed-medium) var(--animation-timing-hover);
    transform-origin: center;

    &:hover {
      transform: translateY(-2px);
      box-shadow: 0 4px 8px rgb(0 0 0 / var(--opacity-5));
    }

    &:active {
      transform: scale(0.97);
      transition: transform 100ms var(--animation-timing-active);
      box-shadow: none;
    }
  }

  .predictive-search__close-modal-button {
    --button-color: var(--color-foreground);
    --button-background-color: transparent;

    display: flex;
    justify-content: center;
    align-items: center;
    width: var(--minimum-touch-target);
    height: var(--minimum-touch-target);
    margin-inline-start: var(--margin-sm);
    padding: 0;
    box-shadow: none;

    &:active {
      transform: scale(0.8);
      transition: transform 100ms var(--animation-timing-active);
    }

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

  .predictive-search__close-modal-button:hover {
    --button-color: var(--color-foreground);
    --button-background-color: transparent;
  }
/* END_SNIPPET:search-modal */
/* START_SNIPPET:section (INDEX:284) */
.section-wrapper {
    --section-height-offset: 0px;
  }

  .section[data-shopify-visual-preview] {
    min-height: var(--section-preview-height);
    padding-top: 0;
  }

  .section[data-shopify-visual-preview] .custom-section-background {
    display: none;
  }

  body:has(> #header-group > .header-section > #header-component[transparent]):not(
      :has(> #header-group > .header-section + .shopify-section)
    )
    > main
    > .section-wrapper:first-child {
    --section-height-offset: var(--header-group-height, 0);
  }

  .custom-section-background {
    grid-column: 1 / -1;
  }

  .custom-section-content {
    z-index: var(--layer-flat);
  }
/* END_SNIPPET:section */
/* START_SNIPPET:skip-to-content-link (INDEX:286) */
.skip-to-content-link {
    position: absolute;
    left: -99999px;
  }

  .skip-to-content-link:focus {
    z-index: var(--layer-temporary);
    overflow: auto;
    width: auto;
    height: auto;
    padding: var(--padding-lg) var(--padding-4xl);
    left: var(--margin-lg);
    top: var(--margin-lg);
    background-color: var(--color-background);
    box-shadow: 0 0 0 var(--focus-outline-offset) var(--color-background);
  }
/* END_SNIPPET:skip-to-content-link */
/* START_SNIPPET:slideshow-arrow (INDEX:288) */
.slideshow-control--large {
    .icon-caret {
      --icon-stroke-width: 1px;
    }

    .icon-caret {
      --icon-stroke-width: 1px;
    }

    .svg-wrapper,
    svg {
      width: var(--slideshow-controls-icon);
      height: var(--slideshow-controls-icon);
    }
  }

  /* Slideshow control shape styles */
  .slideshow-control.slideshow-control--shape-square,
  .slideshow-control.slideshow-control--shape-circle {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    background-color: var(--color-primary-button-background);
    color: var(--color-primary-button-text);
  }

  .slideshow-control.slideshow-control--shape-circle {
    border-radius: 50%;
  }

  .slideshow-control.slideshow-control--shape-square {
    border-radius: 0;
  }

  .slideshow-control .icon-caret {
    rotate: -90deg;
  }
/* END_SNIPPET:slideshow-arrow */
/* START_SNIPPET:slideshow-arrows (INDEX:289) */
slideshow-arrows {
    --cursor-previous: w-resize;
    --cursor-next: e-resize;

    position: absolute;
    inset: 0;
    display: flex;
    z-index: var(--layer-heightened);
    pointer-events: none;
    mix-blend-mode: difference;
    align-items: flex-end;

    &[position='left'] {
      justify-content: flex-start;
      padding-inline: var(--padding-xs);
    }

    &[position='right'] {
      justify-content: flex-end;
      padding-inline: var(--padding-xs);
    }

    &[position='center'] {
      justify-content: space-between;
      align-items: center;
    }
  }

  slideshow-arrows:has(.slideshow-control--shape-square),
  slideshow-arrows:has(.slideshow-control--shape-circle) {
    mix-blend-mode: normal;
  }

  slideshow-component[disabled='true'] slideshow-arrows {
    display: none;
  }

  slideshow-arrows .slideshow-control {
    pointer-events: auto;
    opacity: 0;
    min-height: var(--minimum-touch-target);
    min-width: var(--minimum-touch-target);
    padding: 0 var(--padding-xs);
    color: var(--color-white);
  }

  slideshow-arrows .slideshow-control.slideshow-control--style-none {
    display: none;
  }
/* END_SNIPPET:slideshow-arrows */
/* START_SNIPPET:slideshow-styles (INDEX:292) */
/*
   * Slideshow Component
   */
  slideshow-component {
    --cursor: grab;
    --slide-offset: 6px;

    position: relative;
    display: flex;
    flex-direction: column;
    timeline-scope: var(--slideshow-timeline);
  }

  .slideshow--single-media {
    --cursor: default;
  }

  a slideshow-component {
    --cursor: pointer;
  }

  slideshow-component [data-placeholder='true'] * {
    cursor: grab;
  }

  /*
   * Slideshow Slides
   */
  slideshow-slides {
    width: 100%;
    position: relative;
    display: flex;
    overflow-x: scroll;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-color: transparent transparent;
    scrollbar-width: none;
    gap: var(--slideshow-gap, 0);
    cursor: var(--cursor);
    min-height: var(--slide-min-height);
    align-items: var(--slideshow-align-items, normal);

    @media (prefers-reduced-motion) {
      scroll-behavior: auto;
    }

    &::-webkit-scrollbar {
      width: 0;
    }

    &::-webkit-scrollbar-track {
      background: transparent;
    }

    &::-webkit-scrollbar-thumb {
      background: transparent;
      border: none;
    }

    @media screen and (min-width: 750px) {
      min-height: var(--slide-min-height-desktop);
    }
  }

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

  slideshow-component[disabled='true'] slideshow-slides {
    overflow: hidden;
  }

  /**
   * By default, slideshows have overflow: hidden (no compositor layer).
   * When the slideshow enters the viewport, JavaScript adds [in-viewport] which enables scrolling.
   */
  slideshow-component:not([in-viewport]) slideshow-slides {
    overflow: hidden;
  }

  slideshow-component[mobile-disabled] slideshow-slides {
    @media screen and (max-width: 749px) {
      overflow: hidden;
    }
  }

  slideshow-slides[gutters*='start'] {
    padding-inline-start: var(--gutter-slide-width, 0);
    scroll-padding-inline-start: var(--gutter-slide-width, 0);
  }

  slideshow-slides[gutters*='end'] {
    padding-inline-end: var(--gutter-slide-width, 0);
  }

  slideshow-component[dragging] {
    --cursor: grabbing;

    * {
      pointer-events: none;
    }
  }

  slideshow-component[dragging] slideshow-arrows {
    display: none;
  }

  slideshow-container {
    width: 100%;
    display: block;
    position: relative;
    grid-area: container;
    container-type: inline-size;
    background-color: var(--color-background);
  }

  /*
   * Be specific about HTML children structure to avoid targeting nested slideshows.
   * Ensure that the content is 'visible' while scrolling instead of 'auto' to avoid issues in Safari.
   */
  slideshow-component:is([dragging], [transitioning], :hover) > slideshow-container > slideshow-slides > slideshow-slide {
    content-visibility: visible;
  }

  @keyframes slide-reveal {
    0% {
      translate: calc(var(--slideshow-slide-offset, 6) * 1rem) 0;
      opacity: 0;
    }

    50% {
      opacity: 1;
    }

    100% {
      translate: calc(var(--slideshow-slide-offset, 6) * -1rem) 0;
      opacity: 0;
    }
  }

  /*
   * Slideshow Slide
   */
  slideshow-slide {
    position: relative;
    scroll-snap-align: center;
    width: var(--slide-width, 100%);
    max-height: 100%;
    flex-shrink: 0;
    view-timeline-name: var(--slideshow-timeline);
    view-timeline-axis: inline;
    content-visibility: auto;
    contain-intrinsic-size: auto none;
    border-radius: var(--corner-radius, 0);
    overflow: hidden;

    slideshow-component[actioned] &,
    &[aria-hidden='false'] {
      content-visibility: visible;
    }

    slideshow-component slideshow-slide:not([aria-hidden='false']) {
      content-visibility: hidden;
    }

    &[hidden]:not([reveal]) {
      display: none;
    }

    /* Make inactive slides appear clickable */
    &[aria-hidden='true'] {
      cursor: pointer;
    }
  }

  slideshow-slide .shopify-model-viewer-ui__controls-area.shopify-model-viewer-ui__controls-area {
    bottom: var(--padding-sm);
    right: var(--padding-sm);
  }

  slideshow-component.slideshow--content-below-media slideshow-slide {
    display: grid;
  }

  .slideshow--content-below-media slideshow-slide :is(.slide__image-container, .slide__content) {
    position: static;
  }

  .slideshow--content-below-media slideshow-slide {
    grid-template-rows: var(--grid-template-rows);

    @media screen and (min-width: 750px) {
      grid-template-rows: var(--grid-template-rows-desktop);
    }
  }
/* END_SNIPPET:slideshow-styles */
/* START_SNIPPET:sorting (INDEX:294) */
.sorting-filter__container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-inline: var(--drawer-padding) 0;
    padding-block: var(--padding-sm);
    margin-inline-end: var(--margin-md);
    position: relative;
  }

  .sorting-filter__container .facets__label {
    font-size: var(--font-h4--size);
  }

  .sorting-filter__select-wrapper {
    display: flex;
    position: relative;
    border-radius: var(--variant-picker-button-radius);
    align-items: center;
    overflow: clip;
    padding: var(--padding-2xs) var(--padding-xs);
  }

  .sorting-filter__select-wrapper:has(:focus-visible) {
    outline: var(--focus-outline-width) solid currentcolor;
    outline-offset: var(--focus-outline-offset);
  }

  .sorting-filter__select-wrapper:has(:focus-visible) .sorting-filter__select {
    outline: none;
  }

  .sorting-filter__container .sorting-filter__select {
    appearance: none;
    border: 0;
    margin: 0;
    cursor: pointer;
    width: 100%;
    padding-inline-end: var(--icon-size-2xs);
    text-align: right;

    /* Needed for Safari */
    text-align-last: right;
  }

  .sorting-filter__select .icon {
    position: absolute;
    right: var(--padding-md);
    top: 50%;
    transform: translateY(-50%);
    width: var(--icon-size-2xs);
    height: var(--icon-size-2xs);
    pointer-events: none;
  }

  .sorting-filter {
    @media screen and (min-width: 750px) {
      z-index: var(--facets-upper-z-index);
    }
  }

  .sorting-filter__options {
    display: grid;
    grid-template-rows: 0fr;
    opacity: 0;
    position: absolute;
    top: 100%;
    right: 0;
    color: var(--color-foreground);
    z-index: var(--facets-upper-z-index);
    box-shadow: var(--shadow-popover);
    border: var(--style-border-popover);
    background-color: var(--color-background);
    border-radius: var(--style-border-radius-popover);
    width: max-content;
    min-width: var(--facets-panel-min-width);
    min-height: 0;

    transition: grid-template-rows var(--animation-speed-slow) var(--animation-easing),
      opacity var(--animation-speed-slow) var(--animation-easing);
  }

  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;
    gap: var(--gap-sm);
    padding: calc(var(--drawer-padding) / 2);
    color: var(--color-foreground);
    overflow: clip;
    scrollbar-width: none;
    -ms-overflow-style: none;

    &::-webkit-scrollbar {
      display: none;
    }

    @media screen and (min-width: 750px) {
      gap: 0;
    }
  }

  .sorting-filter__option {
    cursor: pointer;
    display: grid;
    grid-template-columns: var(--icon-size-sm) 1fr;
    gap: var(--margin-2xs);
    align-items: center;
    min-width: 180px;
    max-width: 16em;
    padding: var(--padding-2xs) calc(var(--drawer-padding) / 2) var(--padding-2xs) var(--padding-2xs);

    &:hover {
      border-radius: calc(var(--style-border-radius-popover) / 2);
      background-color: rgb(var(--color-foreground-rgb) / var(--opacity-8));
    }

    &:focus {
      border-radius: calc(var(--style-border-radius-popover) / 2);
    }
  }

  .sorting-filter__input {
    display: none;

    &:checked + .sorting-filter__checkmark + .sorting-filter__label {
      font-weight: 500;
    }
  }

  .sorting-filter__checkmark {
    visibility: hidden;
  }

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

  .sorting-filter__label {
    cursor: pointer;
    pointer-events: none;
  }

  .facets-toggle--no-filters .sorting-filter__select-wrapper {
    @media screen and (max-width: 749px) {
      padding-inline-start: 0;
    }
  }

  .facets-mobile-wrapper .sorting-filter .facets__panel {
    padding-inline: 0;
    position: relative;
  }

  .facets-mobile-wrapper .sorting-filter .facets__status {
    display: none;
  }

  .facets-mobile-wrapper:has(> :nth-child(2)) .sorting-filter .sorting-filter__options {
    left: 0;
    right: unset;
  }

  .facets-mobile-wrapper .sorting-filter .facets__label {
    margin-inline-end: var(--margin-2xs);
    font-size: var(--font-paragraph--size);
    color: var(--color-foreground-muted);
  }

  .facets-toggle .sorting-filter__container {
    @media screen and (max-width: 749px) {
      padding: 0;
    }
  }

  .facets-toggle .sorting-filter__container .facets__label {
    @media screen and (max-width: 749px) {
      display: none;
    }
  }

  .facets-toggle .sorting-filter::before {
    @media screen and (max-width: 749px) {
      display: none;
    }
  }

  .facets--drawer .sorting-filter {
    @media screen and (min-width: 750px) {
      display: none;
    }
  }
/* END_SNIPPET:sorting */
/* START_SNIPPET:text (INDEX:302) */
:root {
    --text-align-default: left;
  }

  [style*='--horizontal-alignment: center'] .text-block {
    --text-align-default: center;
  }

  [style*='--horizontal-alignment: flex-end'] .text-block {
    --text-align-default: right;
  }

  [style*='--horizontal-alignment: flex-start'] > .text-block {
    --text-align-default: left;
  }

  [style*='--horizontal-alignment: center'] > .text-block {
    --text-align-default: center;
  }

  [style*='--horizontal-alignment: flex-end'] > .text-block {
    --text-align-default: right;
  }

  .text-block {
    width: var(--width);
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: var(--horizontal-alignment);
  }

  .text-block > * {
    width: var(--width);
    max-inline-size: min(100%, var(--max-width, 100%));
    text-align: var(--text-align, var(--text-align-default));
    text-wrap: var(--text-wrap);
  }

  .text-block:not(.text-block--full-width).rte,
  .text-block:not(.text-block--full-width).paragraph {
    /* Safari doesn't support pretty, so fallback to balance */
    text-wrap: balance;
    text-wrap: pretty;
  }

  .text-block:not(.text-block--full-width):is(.h1, .h2, .h3, .h4, .h5, .h6) {
    text-wrap: balance;
  }

  /* Hide underline unless text is using paragraph styles. */
  .text-block:is(.h1, .h2, .h3, .h4, .h5, .h6) a {
    text-decoration-color: transparent;
  }

  .text-block h1,
  .text-block.h1 > * {
    margin-block: var(--font-h1--spacing);
  }

  .text-block h2,
  .text-block.h2 > * {
    margin-block: var(--font-h2--spacing);
  }

  .text-block h3,
  .text-block.h3 > * {
    margin-block: var(--font-h3--spacing);
  }

  .text-block h4,
  .text-block.h4 > * {
    margin-block: var(--font-h4--spacing);
  }

  .text-block h5,
  .text-block.h5 > * {
    margin-block: var(--font-h5--spacing);
  }

  .text-block h6,
  .text-block.h6 > * {
    margin-block: var(--font-h6--spacing);
  }

  .text-block p,
  .text-block.p > * {
    margin-block: var(--font-paragraph--spacing);
  }

  .text-block > *:first-child {
    margin-block-start: 0;
  }

  .text-block > *:last-child {
    margin-block-end: 0;
  }

  .text-block--align-center,
  .text-block--align-center > * {
    margin-inline: auto;
  }

  .text-block--align-right,
  .text-block--align-right > * {
    margin-inline-start: auto;
  }

  .text-block--background {
    background-color: var(--text-background-color);
    border-radius: var(--text-corner-radius);

    /* To avoid text being cropped when using a border radius we add a minimum padding. */
    padding-block-start: max(var(--text-padding), var(--padding-block-start, 0));
    padding-block-end: max(var(--text-padding), var(--padding-block-end, 0));
    padding-inline-start: max(var(--text-padding), var(--padding-inline-start, 0));
    padding-inline-end: max(var(--text-padding), var(--padding-inline-end, 0));
  }

  .custom-color,
  .custom-color > :is(h1, h2, h3, h4, h5, h6, p, *) {
    color: var(--color);
  }
/* END_SNIPPET:text */
