/**
 * Theme Name:     Mabel Life
 * Author:         EcomForgeAI
 * Template:       twentytwentyone
 * Text Domain:	   mabel-life
 * Description:    Twenty Twenty-One is a blank canvas for your ideas and it makes the block editor your best brush. With new block patterns, which allow you to create a beautiful layout in a matter of seconds, this theme’s soft colors and eye-catching — yet timeless — design will let your work shine. Take it for a spin! See how Twenty Twenty-One elevates your portfolio, business website, or personal blog.
 * Version:        1.0
 */

@font-face {
    font-family: 'Kalice-Regular';
    src: url('fonts/Kalice-Regular.eot');
    src: url('fonts/Kalice-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/Kalice-Regular.woff2') format('woff2'),
        url('fonts/Kalice-Regular.woff') format('woff'),
        url('fonts/Kalice-Regular.ttf') format('truetype'),
        url('fonts/Kalice-Regular.svg#Kalice-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Kalice-Italic';
    src: url('fonts/Kalice-Italic.woff2') format("woff2"),
         url('fonts/Kalice-Italic.woff') format("woff");
    font-weight: 400;
    font-style: Italic;
    font-display: swap;
}

@font-face {
    font-family: 'Aspekta 400';
    src: url('fonts/Aspekta-400.woff2') format('woff2'),
        url('fonts/Aspekta-400.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

*,
:before,
:after {
 box-sizing: border-box;
 border-style: solid;
 border-width: 0;
 border-color: rgb(var(--border-color));
}
html {
 -moz-text-size-adjust: 100%;
 text-size-adjust: 100%;
 tab-size: 4;
 scroll-padding-top: calc(var(--sticky-area-height) + 20px);
 interpolate-size: allow-keywords;
 line-height: 1.5;
}
body {
 background: rgb(var(--page-background));
 /* font: var(--text-font-style) var(--text-font-weight) var(--text-base) /
  var(--text-line-height) var(--text-font-family); */
 text-transform: var(--text-transform);
 letter-spacing: var(--text-letter-spacing);
 margin: 0;
 position: relative;
}
hr {
 border-top-width: 1px;
 justify-self: stretch;
 height: 0;
}
hr.horizontal-separator {
 border-width: 0 0 0 1px;
 width: 1px;
 height: 100%;
}
a {
 color: inherit;
 -webkit-text-decoration: inherit;
 text-decoration: inherit;
}
b,
strong {
 font-weight: bolder;
}
code,
kbd,
samp,
pre {
 font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
  Liberation Mono, Courier New, monospace;
 font-size: 1em;
}
table {
 text-indent: 0;
 border-color: inherit;
 border-collapse: collapse;
}
button,
input,
optgroup,
select,
textarea {
 font-family: inherit;
 font-size: 100%;
 font-weight: inherit;
 font-style: inherit;
 line-height: inherit;
 text-transform: inherit;
 color: inherit;
 margin: 0;
 padding: 0;
}
input[type="submit"] {
 cursor: pointer;
}
select {
 white-space: nowrap;
 text-overflow: ellipsis;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
 -webkit-appearance: button;
 appearance: button;
 background-color: #0000;
 background-image: none;
}
button,
label,
summary,
[role="button"],
[type="checkbox"],
[type="radio"],
[type="submit"] {
 -webkit-tap-highlight-color: transparent;
 touch-action: manipulation;
 cursor: pointer;
}
::-webkit-inner-spin-button {
 height: auto;
}
::-webkit-outer-spin-button {
 height: auto;
}
[type="search"] {
 -webkit-appearance: textfield;
 appearance: textfield;
 outline-offset: -2px;
}
summary {
 list-style-type: none;
}
summary::-webkit-details-marker {
 display: none;
}
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
 margin: 0;
}
fieldset {
 margin: 0;
 padding: 0;
}
legend {
 padding: 0;
}
ul,
ol,
menu {
 margin: 0;
 padding: 0;
}
textarea {
 resize: vertical;
 field-sizing: content;
 min-height: calc(
  var(--textarea-min-rows, 4) * 1lh + var(--input-padding-block, 0px) * 2
 );
}
input::placeholder,
textarea::placeholder {
 opacity: 1;
 color: rgb(var(--text-color) / 0.5);
}
[type="date"] {
 min-height: 3rem;
}
:disabled {
 cursor: default !important;
}
picture,
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
 display: block;
}
img {
 color: #0000;
 object-fit: cover;
 object-position: center;
 max-width: 100%;
 height: auto;
 max-height: 100%;
}
picture {
 height: inherit;
 width: inherit;
}
picture source {
 display: contents;
}
picture img,
figure img {
 height: inherit;
 width: inherit;
}
[role="img"] svg {
 display: initial;
}
video {
 max-width: 100%;
 height: auto;
}
:focus:not(:focus-visible) {
 outline: none;
}
[hidden] {
 display: none !important;
}
height-observer {
 display: block;
}
.color-scheme {
 background-color: rgb(var(--background));
 background-image: var(--background-gradient);
 color: rgb(var(--text-color));
 border-color: rgb(var(--border-color));
}
.color-scheme--with-image-overlay {
 --border-color: var(--text-color) / 0.6;
}
.accordion {
 --accordion-block-padding: 0.875rem;
 --accordion-inline-padding: 0;
 box-sizing: content-box;
 box-shadow: 0 1px rgb(var(--border-color)),
  0 1px rgb(var(--border-color)) inset;
 text-align: start;
 justify-self: stretch;
 transition: color 0.2s;
 display: block;
}
.accordion__summary {
 padding: var(--accordion-block-padding) var(--accordion-inline-padding);
 justify-content: space-between;
 align-items: center;
 column-gap: 0.75rem;
 transition: color 0.2s;
 display: flex;
}
.accordion__summary img,
.accordion__summary svg {
 margin: 0;
}
.accordion__summary .icon-accordion-arrow,
.accordion__summary .icon-accordion-small-arrow {
 flex-shrink: 0;
 transition: transform 0.3s ease-in-out;
}
.accordion.is-open
 :is(
  .accordion__summary .icon-accordion-arrow,
  .accordion__summary .icon-accordion-small-arrow
 ) {
 transform: rotate(180deg);
}
.accordion__content {
 padding-block-end: var(--accordion-block-padding);
 padding-inline: var(--accordion-inline-padding);
}
@media screen and (min-width: 700px) {
 .accordion {
  --accordion-block-padding: 1.25rem;
 }
 .accordion--large {
  --accordion-block-padding: 1.65rem;
 }
}
.accordion.bg-secondary {
 --accordion-inline-padding: 1rem;
 box-shadow: none;
}
.accordion.bg-secondary + .accordion {
 margin-block-start: 0.25rem;
}
@media screen and (min-width: 700px) {
 .accordion.bg-secondary {
  --accordion-inline-padding: 1.75rem;
 }
}
.big-link {
 align-items: center;
 column-gap: 1.5rem;
 padding-block: 1.5rem;
 display: flex;
}
.divide-y:not(.border-t, .border-b) > .big-link:first-child {
 padding-block-start: 0;
}
.divide-y:not(.border-t, .border-b) > .big-link:last-child {
 padding-block-end: 0;
}
.big-link > * {
 transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out !important;
}
.big-link--tight {
 padding-block: 1.2rem;
}
.big-link__image {
 flex-shrink: 0;
 width: 5rem;
}
.big-link__arrow {
 opacity: 0;
 flex-shrink: 0;
 margin-inline-start: auto;
}
@media screen and (pointer: fine) {
 .big-link--opacity:hover ~ .big-link--opacity > * {
  opacity: 0.3;
 }
 .big-link--opacity:has(~ .big-link--opacity:hover) > * {
  opacity: 0.3;
 }
 .big-link--colors {
  transition: background 0.2s ease-in-out, color 0.2s ease-in-out;
 }
 .big-link--colors:hover {
  background: rgb(var(--big-link-background-hover));
  color: rgb(var(--big-link-text-color-hover));
 }
 .big-link--colors:hover > * {
  transform: translate(1.75rem);
 }
 .big-link--colors:hover > .big-link__arrow {
  opacity: 1;
  transform: translate(-3rem);
 }
}
@media screen and (min-width: 700px) {
 .big-link {
  column-gap: 2rem;
  padding-block: 1.75rem;
 }
 .big-link__image {
  width: 7.5rem;
 }
}
.blog-post-card {
 grid-template-columns: minmax(0, 1fr);
 align-content: start;
 gap: 0;
 display: grid;
 position: relative;
}
.blog-post-card__content {
 padding-inline: var(--blog-post-card-padding-inline);
}
.blog-post-card__image-container {
 margin-block-end: 1rem;
}
@supports (grid-template-rows: subgrid) {
 .blog-post-card:not(.blog-post-card--horizontal) {
  grid-template-rows: subgrid;
  grid-row: span 2;
 }
}
@media screen and (min-width: 1000px) {
 .blog-post-card__image-container {
  margin-block-end: 1.5rem;
 }
 .blog-post-card--horizontal {
  column-gap: 2rem;
  display: flex;
 }
 .blog-post-card--horizontal .blog-post-card__image-container {
  flex-shrink: 0;
  width: 200px;
  margin-block-end: 0;
 }
}
@media screen and (min-width: 1150px) {
 .blog-post-card--horizontal {
  column-gap: 3rem;
 }
 .blog-post-card--horizontal .blog-post-card__image-container {
  width: 280px;
 }
}
.blog-post-list {
 grid: var(--blog-post-list-grid);
 gap: var(--blog-post-list-gap);
 display: grid;
}
@media screen and not (pointer: fine) {
 .blog-post-list {
  scroll-snap-type: x mandatory;
 }
}
.blog-post-list__highlighted-article {
 grid-column: 1 / -1;
}
.blog-post-list__newsletter {
 padding: var(--container-gutter);
 grid-template-columns: minmax(0, 1fr);
 align-items: center;
 min-height: 100%;
 display: grid;
}
@supports (grid-template-rows: subgrid) {
 .blog-post-list__newsletter {
  grid-template-rows: subgrid;
  grid-row: span 1;
 }
}
@media screen and (min-width: 1000px) {
 .blog-post-list--with-horizontal-separator .blog-post-card {
  border-block-start-width: 1px;
  padding-block-start: 3rem;
 }
}
.mabel-challenge__button,
.mabel-payment-button__button--unbranded {
 all: revert;
}
.button,
.mabel-challenge__button,
.mabel-payment-button__button--unbranded {
 --button-padding-block: 0.75rem;
 --button-padding-inline: 1.5rem;
 --button-background: var(--button-background-primary);
 --button-text-color: var(--button-text-primary);
 --button-border-color: 0 0 0 / 0;
 -webkit-appearance: none;
 appearance: none;
 background: rgb(var(--button-background));
 border: 1px solid rgb(var(--button-border-color));
 border-radius: var(--button-border-radius);
 color: rgb(var(--button-text-color));
 /* font: var(--button-font); */
 letter-spacing: var(--button-letter-spacing);
 text-transform: var(--button-text-transform);
 text-shadow: none;
 text-align: center;
 cursor: pointer;
 vertical-align: middle;
 transition: all 0.2s ease-in-out;
 display: inline-block;
 position: relative;
 overflow: hidden;
}
:is(
  .button,
  .mabel-challenge__button,
  .mabel-payment-button__button--unbranded
 ):has(.icon) {
 --button-padding-inline: 1.5rem;
 transition: transform 0.1s;
}
:is(
  .button,
  .mabel-challenge__button,
  .mabel-payment-button__button--unbranded
 ):not(:has(.button__content)) {
 padding: var(--button-padding-block) var(--button-padding-inline);
}
@media screen and (pointer: fine) {
 :is(
   .button,
   .mabel-challenge__button,
   .mabel-payment-button__button--unbranded
  ):has(.icon):hover
  .icon {
  transform: translate(4px);
 }
}
.button--outline {
 color: rgb(var(--button-text-color));
 border-color: rgb(var(--button-text-color));
 background: none;
}
.button--sm {
 --button-padding-block: 0.625rem;
 --button-padding-inline: 1.25rem;
 font-size: 0.6875rem;
}
.button__content {
 padding: var(--button-padding-block) var(--button-padding-inline);
 justify-content: safe center;
 align-items: center;
 column-gap: 0.75rem;
 display: flex;
}
.button__content::part(content) {
 align-items: center;
 column-gap: 0.75rem;
 display: flex;
}
@media screen and (min-width: 700px) {
 .button:not(.button--sm),
 .mabel-challenge__button,
 .mabel-payment-button__button--unbranded {
  --button-padding-block: 0.875rem;
  --button-padding-inline: 2.5rem;
 }
}
@media screen and (pointer: fine) {
 .button__content[rotated-text]:before {
  content: attr(rotated-text);
  min-width: max-content;
  position: absolute;
  inset-inline-end: 100%;
 }
 .button__content[glowing]:after {
  --glowing-shape-width: min(40px, 60%);
  content: "";
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  clip-path: polygon(
   calc(var(--glowing-shape-width) * 0.25) 0%,
   var(--glowing-shape-width) 0%,
   calc(var(--glowing-shape-width) * 0.75) 100%,
   0% 100%
  );
  background-color: rgb(var(--button-text-color) / 0.1);
  transform: translate(calc(-1 * var(--glowing-shape-width)));
  transition: transform 0.55s cubic-bezier(0.19, 1, 0.22, 1);
  position: absolute;
  top: 0;
 }
 [dir="rtl"] .button__content[glowing]:after {
  transform: translate(100%);
 }
 .button:has(.button__content[glowing]):hover .button__content[glowing]:after {
  transform: translate(100%);
 }
 [dir="rtl"]
  :is(
   .button:has(.button__content[glowing]):hover .button__content[glowing]
  ):after {
  transform: translate(calc(-1 * var(--glowing-shape-width)));
 }
 .button:has(.button__content[up-text]) .button__content {
  transition: transform 0.2s ease-in-out;
 }
 .button:has(.button__content[up-text]):hover:not([aria-busy="true"])
  .button__content[up-text] {
  transform: translateY(-100%);
 }
 .button:has(.button__content[up-text]) .button__content[up-text]:before {
  content: attr(up-text);
  min-width: max-content;
  position: absolute;
  inset-block-start: calc(100% + var(--button-padding-block));
 }
}
.button-group {
 flex-wrap: wrap;
 align-items: center;
 gap: 1rem;
 display: inline-flex;
}
.button-group > * {
 margin: 0 !important;
}
.button-group--same-width {
 grid-auto-columns: minmax(0, 1fr);
 grid-auto-flow: column;
 display: inline-grid;
}
@media screen and (min-width: 700px) {
 .button-group {
  gap: 1.25rem;
 }
}
.mabel-payment-button__button {
 width: 100%;
 min-height: calc(1lh + var(--button-padding-block) * 2);
 vertical-align: top;
}
.mabel-payment-button__button--unbranded {
 border-radius: var(--button-border-radius) !important;
 background-color: rgb(var(--button-background)) !important;
 color: rgb(var(--button-text-color)) !important;
 font: var(--button-font) !important;
}
.mabel-payment-button__button--unbranded:hover:not([disabled]) {
 background-color: rgb(var(--button-background-primary)) !important;
 color: rgb(var(--button-text-primary)) !important;
}
mabel-accelerated-checkout,
mabel-accelerated-checkout-cart {
 --mabel-accelerated-checkout-button-block-size: 44px;
 --mabel-accelerated-checkout-button-border-radius: var(
  --button-border-radius
 );
 --mabel-accelerated-checkout-button-box-shadow: none;
}
.circle-button {
 --button-size: 1.75rem;
 width: var(--button-size);
 height: var(--button-size);
 color: currentColor;
 cursor: pointer;
 z-index: 1;
 background: none;
 border: none;
 border-radius: 100%;
 place-content: center;
 transition: opacity 0.2s, color 0.2s;
 display: grid;
 position: relative;
}
.circle-button[disabled] {
 opacity: 0.5;
}
.circle-button:before {
 content: "";
 background: rgb(var(--text-color) / 0.08);
 z-index: -1;
 border-radius: 100%;
 transition: transform 0.2s, background 0.2s;
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}
@supports (color: color-mix(in srgb, white, black)) {
 .circle-button:before {
  background: color-mix(
   in srgb,
   rgb(var(--text-color)) 8%,
   rgb(var(--background))
  );
 }
}
@media screen and (pointer: fine) {
 .circle-button:not([disabled]):hover,
 .circle-button .group\:circle-button:hover {
  color: color-mix(in srgb, rgb(var(--text-color)) 8%, rgb(var(--background)));
 }
 :is(
   .circle-button:not([disabled]):hover,
   .circle-button .group\:circle-button:hover
  ):before {
  background: rgb(var(--text-color));
  transform: scale(1.2);
 }
}
.circle-button--lg,
.circle-button--xl {
 --button-size: 2.5rem;
}
.circle-button--blurred {
 -webkit-backdrop-filter: blur(10px);
 backdrop-filter: blur(10px);
}
.circle-button--blurred:before {
 opacity: 0.6;
}
@media screen and (min-width: 1000px) {
 .circle-button--xl {
  --button-size: 3rem;
 }
}
@keyframes backButtonBounce {
 0% {
  transform: translate(0);
 }
 50% {
  transform: translate(calc(var(--transform-logical-flip) * 4px));
 }
 to {
  transform: translate(0);
 }
}
.back-button {
 background: rgb(var(--text-color) / 0.08);
 border-radius: 20px;
 align-items: center;
 column-gap: 0.625rem;
 padding: 0.375rem 0.625rem;
 display: inline-flex;
}
@media screen and (pointer: fine) {
 .back-button:hover svg {
  animation: 0.5s backButtonBounce;
 }
}
[aria-haspopup] .icon-chevron-down {
 transition: rotate 0.2s;
}
[aria-haspopup][aria-expanded="true"] .icon-chevron-down {
 rotate: 180deg;
}
.\@container\/content-box {
 container: content-box / inline-size;
}
.content-box {
 --content-box-spacing: max(1.5rem, var(--container-gutter));
 --content-box-enable-transparent-header-compensation: 0;
 --sticky-inset-block-start: calc(
  var(--sticky-offset) +
   var(--content-box-spacing-block-start, var(--content-box-spacing))
 );
 grid-template-rows: [full-start] calc(
   var(
     --content-box-spacing-block-start,
     var(--content-box-block-spacing, var(--content-box-spacing))
    ) + var(--content-box-enable-transparent-header-compensation) *
    var(--header-height, 0px)
  ) [inner-start] minmax(0, 1fr) [inner-end] var(
   --content-box-spacing-block-end,
   var(--content-box-block-spacing, var(--content-box-spacing))
  ) [full-end];
 grid-template-columns: [full-start] var(
   --content-box-spacing-inline-start,
   var(--content-box-inline-spacing, var(--content-box-spacing))
  ) [inner-start] minmax(0, 1fr) [inner-end] var(
   --content-box-spacing-inline-end,
   var(--content-box-inline-spacing, var(--content-box-spacing))
  ) [full-end];
 display: grid;
 position: relative;
}
@container content-box (width < 450px) {
 .content-box {
  --content-box-spacing: 1.5rem;
 }
}
@container content-box (width < 250px) {
 .content-box {
  --content-box-spacing: 1rem;
 }
}
.content-box > * {
 isolation: isolate;
 grid-area: inner-start / inner-start / inner-end / inner-end;
}
.content-box .column-bleed {
 margin-inline-start: calc(
  -1 * var(--content-box-spacing-inline-start, var(--content-box-inline-spacing, var(--content-box-spacing)))
 );
 margin-inline-end: calc(
  -1 * var(--content-box-spacing-inline-end, var(--content-box-inline-spacing, var(--content-box-spacing)))
 );
}
.content-box .row-bleed {
 margin-block-start: calc(
  -1 * var(--content-box-spacing-block-start, var(--content-box-block-spacing, var(--content-box-spacing)))
 );
 margin-block-end: calc(
  -1 * var(--content-box-spacing-block-end, var(--content-box-block-spacing, var(--content-box-spacing)))
 );
}
.content-box__background-media {
 grid-area: full-start / full-start / full-end / full-end;
 grid-template-rows: minmax(0, 1fr);
 grid-template-columns: minmax(0, 1fr);
 align-items: stretch;
 width: 100%;
 height: 100%;
 display: grid;
}
.content-box[class*="min-h-"]:not(.min-h-auto) .content-box__background-media {
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}
.content-box__background-media > * {
 width: 100%;
 height: 100%;
}
.content-box__background-media img {
 pointer-events: none;
}
.content-box__background-media:has(video-media) ~ * {
 transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
}
.content-box__background-media:has(video-media):has(
  video-media[loaded]:not([autoplay], [playsinline])
 ) {
 pointer-events: auto;
}
.content-box__background-media:has(video-media):has(
  video-media[loaded]:not([autoplay], [playsinline])
 )
 ~ * {
 opacity: 0;
 visibility: hidden;
}
@media screen and (min-width: 1000px) {
 .content-box[class*="md:min-h-"] .content-box__background-media {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
 }
}
:is(.mabel-section, .mabel-section):first-child
 [allow-transparent-header]
 .content-box:first-child {
 --content-box-enable-transparent-header-compensation: 1;
}
.content-box .placement-grid {
 grid-template-columns: subgrid;
 grid-column: full-start / full-end;
}
.content-box .placement-grid > * {
 grid-column: inner-start / inner-end;
}
.content-box .placement-grid.span-full > * {
 grid-column: full-start / full-end;
}
.scroll-marker-group {
 align-items: center;
 justify-content: var(--scroll-marker-group-justify-content, safe center);
 gap: var(--scroll-marker-group-gap, 0.5rem);
 flex-wrap: wrap;
 display: flex;
}
.scroll-marker {
 width: var(--scroll-marker-width, var(--scroll-marker-size));
 height: var(--scroll-marker-height, var(--scroll-marker-size));
}
.scroll-marker-group--dots {
 --scroll-marker-group-gap: 0.3125rem 0.75rem;
}
.scroll-marker-group--dots .scroll-marker {
 --scroll-marker-size: 0.375rem;
 border-radius: var(--button-border-radius);
 opacity: 0.3;
 background: currentColor;
 place-content: center;
 transition: all 0.2s ease-in-out;
 display: grid;
}
.scroll-marker-group--dots .scroll-marker[aria-current="true"] {
 opacity: 1;
}
.scroll-marker-group--dots-sm {
 --scroll-marker-group-gap: 0.375rem;
}
.scroll-marker-group--dots-sm .scroll-marker {
 --scroll-marker-size: 0.25rem;
}
.scroll-marker-group--lines {
 --scroll-marker-group-gap: 0.375rem;
 align-items: flex-end;
 height: 2px;
}
.scroll-marker-group--lines .scroll-marker {
 --scroll-marker-width: 0.5rem;
 --scroll-marker-height: 1px;
 background-color: rgb(from currentColor r g b / 0.3);
 transform-origin: var(--transform-origin-start);
 will-change: transform;
 transition: width 0.3s, height 0.3s, background-color 0.3s;
}
.scroll-marker-group--lines .scroll-marker[aria-current="true"] {
 --scroll-marker-width: 1rem;
 --scroll-marker-height: 2px;
 background-color: currentColor;
}
.scroll-marker-group--lines.scroll-marker-group--autoplay
 .scroll-marker[aria-current="true"] {
 background-color: rgb(from currentColor r g b / 0.3);
}
.scroll-marker-group__line-progress {
 transform-origin: var(--transform-origin-start);
 background-color: currentColor;
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 transform: scaleX(0);
}
@media screen and (min-width: 700px) {
 .scroll-marker-group--lines {
  --scroll-marker-group-gap: 0.5rem;
 }
 .scroll-marker-group--lines .scroll-marker {
  --scroll-marker-width: 0.75rem;
 }
 .scroll-marker-group--lines .scroll-marker[aria-current="true"] {
  --scroll-marker-width: 1.25rem;
 }
}
.scroll-marker-group--counter {
 --scroll-marker-group-gap: 0.75rem;
 background-color: rgb(var(--text-color) / 0.1);
 -webkit-backdrop-filter: blur(5px);
 backdrop-filter: blur(5px);
 border-radius: var(--rounded-full);
 font: var(--button-font);
 padding: 0.75rem 1rem;
}
@media screen and (min-width: 700px) {
 .scroll-marker-group--counter {
  --scroll-marker-group-gap: 1rem;
  padding: 1rem 1.25rem;
 }
}
.scroll-marker-group--thumbnails {
 --scroll-marker-group-justify-content: start;
 flex-wrap: nowrap;
 margin-block-end: -6px;
 padding-block-end: 6px;
}
.scroll-marker-group--thumbnails .scroll-marker {
 --scroll-marker-width: 3.625rem;
 min-width: var(--scroll-marker-width);
 position: relative;
}
.scroll-marker-group--thumbnails .scroll-marker:after {
 content: "";
 background-color: rgb(var(--text-color));
 width: 0;
 height: 2px;
 transition: width 0.2s;
 position: absolute;
 inset-block-end: -4px;
 inset-inline: 0;
}
.scroll-marker-group--thumbnails .scroll-marker[aria-current="true"]:after {
 width: 100%;
}
.floating-controls-container {
 display: grid;
 position: relative;
}
.floating-controls-container > * {
 grid-area: 1 / -1;
}
.floating-controls__control {
 --floating-control-offset: 0px;
 grid-template-rows: subgrid;
 pointer-events: none;
 align-items: center;
 display: grid;
}
.floating-controls__control .circle-button {
 opacity: 0;
 pointer-events: auto;
 visibility: visible;
 grid-row: 1 / span 1;
 transition: scale 0.2s, translate 0.2s, opacity 0.2s, visibility 0.2s;
 translate: 0 1.5rem;
}
.floating-controls__control .circle-button[disabled] {
 opacity: 0;
 visibility: hidden;
 translate: 0;
 scale: 0.5;
}
.floating-controls__control:first-child .circle-button {
 justify-self: start;
 margin-inline-start: var(--floating-control-offset);
}
.floating-controls__control:last-child .circle-button {
 justify-self: end;
 margin-inline-end: var(--floating-control-offset);
}
.floating-controls__control--offset {
 --floating-control-offset: 1.25rem;
}
@media screen and (pointer: fine) {
 .floating-controls-container:has(.is-scrollable):hover
  .floating-controls__control
  .circle-button:not([disabled]) {
  opacity: 1;
  translate: 0;
 }
}
:where(x-drawer, x-popover):not(:defined) {
 display: none;
}
:where(.drawer, .drawer-popover, .modal, .popover) {
 display: none;
}
:where(.drawer, .drawer-popover, .modal, .popover)::part(base) {
 z-index: 999;
 box-sizing: inherit;
}
:where(.drawer, .drawer-popover, .modal, .popover)::part(content),
:where(.drawer, .drawer-popover, .modal, .popover)::part(header),
:where(.drawer, .drawer-popover, .modal, .popover)::part(footer) {
 background: rgb(var(--background));
 background-image: var(--background-gradient);
 color: rgb(var(--text-color));
 border-color: rgb(var(--border-color));
 box-sizing: inherit;
 z-index: inherit;
}
:where(.drawer, .drawer-popover, .modal, .popover)::part(close-button) {
 color: currentColor;
 cursor: pointer;
 background: none;
 border: none;
 place-content: center;
 width: 1.75rem;
 height: 1.75rem;
 display: grid;
 position: absolute;
}
:where(.drawer, .drawer-popover, .modal, .popover)::part(close-button):before {
 content: "";
 background: rgb(var(--text-color) / 0.08);
 border-radius: 100%;
 transition: transform 0.2s;
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}
:where(.drawer, .drawer-popover, .modal, .popover)::part(
  close-button
 ):hover:before {
 transform: scale(1.2);
}
:where(.drawer, .drawer-popover, .modal, .popover)::part(overlay) {
 background: rgb(var(--page-overlay));
 min-height: 100lvh;
 -webkit-backdrop-filter: blur(var(--dialog-backdrop-blur));
 backdrop-filter: blur(var(--dialog-backdrop-blur));
 pointer-events: auto;
 position: fixed;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}
:where(.drawer, .drawer-popover, .modal, .popover)::part(icon) {
 isolation: isolate;
 display: block;
}
.drawer {
 --drawer-header-padding-block: min(1.25rem, var(--container-gutter));
 --drawer-header-padding-inline: min(1.25rem, var(--container-gutter));
 --drawer-body-padding-block: min(2rem, var(--container-gutter));
 --drawer-body-padding-inline: min(2rem, var(--container-gutter));
 --drawer-footer-padding-block: min(2rem, var(--container-gutter));
 --drawer-footer-padding-inline: min(2rem, var(--container-gutter));
 --drawer-max-width: min(100vw - 2rem, 37.5rem);
}
.drawer::part(base) {
 pointer-events: none;
 position: fixed;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}
.drawer::part(content) {
 width: 100%;
 height: 100%;
 max-width: var(--drawer-max-width);
 pointer-events: auto;
 flex-direction: column;
 align-content: start;
 display: flex;
 position: relative;
}
.drawer::part(header) {
 --distance-to-bleed: var(--drawer-header-padding-inline);
 text-align: center;
 padding: var(--drawer-header-padding-block) var(--drawer-header-padding-inline);
 border-block-end: 1px solid rgb(var(--border-color));
 place-items: center;
 display: grid;
}
.drawer::part(close-button) {
 grid-area: 1 / 1;
 justify-self: start;
 position: relative;
}
.drawer::part(body) {
 --distance-to-bleed: var(--drawer-body-padding-inline);
 padding: var(--drawer-body-padding-block) var(--drawer-body-padding-inline);
 overscroll-behavior-y: contain;
 flex: auto;
 grid-template-columns: minmax(0, 1fr);
 display: grid;
 overflow-y: auto;
}
.drawer::part(footer) {
 --distance-to-bleed: var(--drawer-footer-padding-inline);
 border-block-start: 1px solid rgb(var(--border-color));
 padding: var(--drawer-footer-padding-block) var(--drawer-footer-padding-inline);
}
.drawer [slot="header"] {
 grid-area: 1 / -1;
}
.drawer--narrow {
 --drawer-max-width: min(100vw - 2rem, 32rem);
}
.drawer--no-bordered-header::part(header) {
 border: none;
}
.drawer--no-bordered-header::part(body) {
 padding-block-start: 0;
}
.drawer-popover::part(base) {
 width: 100%;
 position: absolute;
 inset-block-end: 0;
 inset-inline-start: 0;
}
.drawer-popover::part(overlay) {
 -webkit-backdrop-filter: none;
 backdrop-filter: none;
 background: #0000004d;
}
.drawer-popover::part(header) {
 text-align: center;
 border-block-end: 1px solid rgb(var(--border-color));
 place-items: center;
 padding: 0.7rem 1rem;
 display: grid;
}
.drawer-popover::part(close-button) {
 grid-area: 1 / -1;
 justify-self: start;
 position: relative;
}
.drawer-popover::part(body) {
 padding: 1.25rem;
}
@media screen and (min-width: 700px) {
 .drawer-popover::part(header) {
  padding: 0.9rem 1.25rem;
 }
 .drawer-popover::part(body) {
  padding: 2rem;
 }
}
.modal {
 --modal-content-margin: 1rem;
 --modal-body-padding-block: 1.25rem;
 --modal-body-padding-inline: 1.25rem;
 --modal-content-width: 30rem;
}
.modal::part(base) {
 pointer-events: none;
 display: grid;
 position: fixed;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}
.modal::part(content) {
 max-height: 70vh;
 margin: var(--modal-content-margin);
 pointer-events: auto;
 flex-direction: column;
 place-self: end stretch;
 display: flex;
 position: relative;
 box-shadow: 0 2px 4px #0000000d;
}
.modal::part(body) {
 padding: var(--modal-body-padding-block) var(--modal-body-padding-inline);
 overscroll-behavior-y: contain;
 grid-template-columns: minmax(0, 1fr);
 align-items: safe center;
 display: grid;
 overflow-y: auto;
}
.modal::part(close-button) {
 inset-block-start: 1rem;
 inset-inline-end: 1rem;
}
.modal [slot="image"] {
 object-fit: cover;
 object-position: center;
 max-height: 200px;
}
.modal--lg {
 --modal-content-width: 60rem;
}
.modal--no-overlay::part(overlay) {
 display: none;
}
@media screen and (max-width: 999px) {
 .modal:has([slot="image"])::part(close-button):before {
  background: rgb(var(--background));
 }
}
@media screen and (min-width: 1000px) {
 .modal {
  --modal-content-margin: 1.75rem;
  --modal-body-padding-block: 3rem;
  --modal-body-padding-inline: 3rem;
 }
 .modal::part(content) {
  grid-template-columns: minmax(0, var(--modal-content-width));
  grid-auto-rows: minmax(0, 1fr);
  grid-auto-flow: column;
  place-self: center;
  display: grid;
 }
 .modal::part(close-button) {
  inset-block-start: 1.25rem;
  inset-inline-end: 1.25rem;
 }
 .modal [slot="image"] {
  grid-column-end: -2;
  width: 430px;
  height: 100%;
  max-height: none;
 }
 .modal--tight {
  --modal-body-padding-block: 2rem;
  --modal-body-padding-inline: 2rem;
 }
}
.popover {
 --popover-padding-inline: 1.25rem;
}
@media screen and (max-width: 999px) {
 .popover::part(base) {
  position: relative;
 }
 .popover::part(content) {
  width: 100%;
  max-height: 70vh;
  z-index: 0;
  flex-direction: column;
  max-height: 70dvh;
  display: flex;
  position: fixed;
  inset-block-end: 0;
  inset-inline-start: 0;
 }
 .popover::part(header) {
  padding: 0.625rem var(--popover-padding-inline);
  border-block-end: 1px solid rgb(var(--border-color));
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 1.5rem;
  display: grid;
  position: sticky;
  inset-block-start: 0;
 }
 .popover::part(close-button) {
  position: relative;
 }
 .popover::part(body) {
  padding: 0.625rem var(--popover-padding-inline);
  overflow: auto;
 }
}
@media screen and (min-width: 1000px) {
 .popover::part(overlay),
 .popover::part(header) {
  display: none;
 }
 .popover::part(content) {
  border: 1px solid rgb(var(--border-color));
  width: max-content;
  min-width: 9.5rem;
  max-width: 15rem;
  max-height: 18.5rem;
  padding: 0.75rem 1.25rem;
  position: absolute;
  inset-block-start: calc(100% + 0.5rem);
  inset-inline-start: 0;
  overflow: auto;
  box-shadow: 0 2px 4px #0000000d;
 }
 .popover[preferred-position="above"]::part(content) {
  inset-block: auto calc(100% + 0.5rem);
 }
 .popover[preferred-alignment="start"]::part(content) {
  inset-inline: auto 0;
 }
 .popover[anchor-position*="right"]::part(content) {
  left: calc(100% + var(--popover-anchor-inline-offset, 1rem));
  right: auto;
 }
 .popover[anchor-position*="left"]::part(content) {
  right: calc(100% + var(--popover-anchor-inline-offset, 1rem));
  left: auto;
 }
 .popover[anchor-position*="top"]::part(content) {
  bottom: var(--popover-anchor-block-offset, -3rem);
  top: auto;
 }
 .popover[anchor-position*="bottom"]::part(content) {
  top: var(--popover-anchor-block-offset, -3rem);
  bottom: auto;
 }
}
.popover::part(overlaid-close-button) {
 z-index: 1;
 position: absolute;
 inset-block-start: 1.25rem;
 inset-inline-end: 1.25rem;
}
.popover--w-full::part(content) {
 width: 100%;
 max-width: none;
}
.popover__divider {
 margin-block: 1.75rem;
}
.popover__value-list {
 grid-template-columns: minmax(0, 1fr);
 display: grid;
}
.popover__value-option {
 text-align: start;
 align-items: center;
 column-gap: 0.625rem;
 padding-block: 0.5rem;
 display: flex;
}
.popover__value-option[aria-selected="true"]:after {
 content: "";
 background-image: url(./checkmark-inverted.svg);
 background-repeat: no-repeat;
 width: 11px;
 height: 9px;
}
.popover__value-option:has(:checked):after {
 content: "";
 background-image: url(./checkmark-inverted.svg);
 background-repeat: no-repeat;
 width: 11px;
 height: 9px;
}
.empty-state {
 text-align: center;
 place-items: center;
 padding-block: 7.5rem;
 display: grid;
 position: relative;
}
.empty-state:before {
 content: attr(data-background-text);
 letter-spacing: -0.04em;
 opacity: 0.1;
 text-box: trim-both cap alphabetic;
 font-size: min(22rem, 40vw);
 line-height: 1;
 position: absolute;
 inset-block-start: 50%;
 inset-inline-start: 50%;
 transform: translate(-50%, -50%);
}
@media screen and (min-width: 1000px) {
 .empty-state {
  padding-block: 12.5rem;
 }
}
@media screen and (min-width: 1150px) {
 .empty-state:not(.empty-state--sm) {
  padding-block: 17.5rem;
 }
}
.drawer--facets::part(body) {
 padding-block-start: 0.5rem;
}
.facets .accordion__summary {
 min-height: 56px;
}
.facets:not(:has(.active-facets)) .accordion:first-of-type {
 box-shadow: 0 1px rgb(var(--border-color));
}
.facets .accordion:last-of-type {
 box-shadow: 0 1px rgb(var(--border-color)) inset;
}
.facets:has(.accordion.is-open)
 :where(
  .accordion:not(.is-open) .accordion__summary,
  .facets__availability-control .subheading
 ) {
 color: rgb(var(--text-color) / 0.6);
}
.facets .accordion__content {
 padding-inline-start: 0.75rem;
}
.facets__availability-control {
 box-shadow: 0 1px rgb(var(--border-color)),
  0 1px rgb(var(--border-color)) inset;
 justify-content: space-between;
 align-items: center;
 padding: 1.25rem 0;
 display: flex;
}
.facets__availability-control .subheading {
 transition: color 0.2s;
}
.active-facets {
 flex-wrap: wrap;
 align-items: center;
 gap: 0.5rem;
 padding: 1.5rem 0;
 display: flex;
}
.collection__results .active-facets {
 padding-block: 2rem;
 padding-inline: min(1.75rem, var(--container-gutter));
 text-align: center;
 border-block-start-width: 1px;
 justify-content: safe center;
}
.collection__sidebar .active-facets {
 padding-block-start: 0;
}
.removable-facet {
 border-width: 1px;
 align-items: center;
 column-gap: 0.5rem;
 padding: 0.25rem 0.5rem;
 display: flex;
}
.removable-facet a {
 transition: rotate 0.2s ease-in-out;
}
.removable-facet a:hover {
 rotate: 90deg;
}
.facets-clear-all {
 margin-inline-start: 0.75rem;
}
.drawer--facets .facets-clear-all {
 display: none;
}
@media screen and (min-width: 1000px) {
 .collection__sidebar ~ .collection__results .active-facets {
  display: none;
 }
}
.banner {
 --banner-background: var(--text-color) / 0.08;
 --banner-color: var(--text-color);
 color: rgb(var(--banner-color));
 background: rgb(var(--banner-background));
 border-radius: min(4px, var(--button-border-radius));
 gap: 1rem 2rem;
 padding: 0.75rem;
 display: grid;
}
.banner__action {
 justify-self: start;
}
@media screen and (min-width: 700px) {
 .banner:has(.banner__action) {
  grid-template-columns: 1fr auto;
  align-items: center;
 }
}
.banner--error {
 --banner-background: var(--error-background);
 --banner-color: var(--error-text);
}
.banner--success {
 --banner-background: var(--success-background);
 --banner-color: var(--success-text);
}
.banner--warning {
 --banner-background: var(--warning-background);
 --banner-color: var(--warning-text);
}
.toast {
 text-align: center;
 z-index: 9999999;
 justify-items: center;
 display: grid;
 position: fixed;
 inset-block-end: 1.25rem;
 inset-inline: 0.625rem;
}
.toast__message {
 color: #fff;
 background: #1a1a1a;
 border-radius: 0.5rem;
 max-width: 25rem;
 padding: 0.75rem;
 font-size: 0.8125rem;
 box-shadow: 0 8px 16px -4px #1a1a1a38;
}
.toast__message--error {
 background: #e51c00;
}
.form {
 align-content: start;
 row-gap: var(--form-gap);
 display: grid;
}
.form-row {
 gap: var(--fieldset-gap);
 flex-wrap: wrap;
 display: flex;
}
.form-row > .form-control {
 flex: 1 0 var(--fieldset-row-control-width, 12rem);
}
.form-row > button {
 flex-shrink: 0;
}
.fieldset {
 gap: var(--fieldset-gap);
 display: grid;
}
.fieldset--tight {
 gap: 0.5rem;
}
.fieldset-row {
 gap: inherit;
 grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
 display: grid;
}
.form-control {
 gap: var(--form-control-gap);
 display: grid;
 position: relative;
}
.checkbox-control {
 text-align: start;
}
.checkbox-control .checkbox,
.checkbox-control .radio {
 margin-inline-end: var(--checkbox-control-gap);
}
.fieldset .checkbox-control {
 margin-block-start: 0.25rem;
}
.input,
.textarea,
.select {
 -webkit-appearance: none;
 appearance: none;
 width: 100%;
 padding: var(--input-padding-block) var(--input-padding-inline);
 border: 1px solid
  rgb(
   var(--input-text-color) /
    calc(var(--has-transparent-background, 0) * 0.85 + 0.15)
  );
 border-radius: var(--input-border-radius);
 background: rgb(var(--input-background, transparent));
 color: rgb(var(--input-text-color, var(--text-color)));
 text-align: start;
 text-transform: var(--input-text-transform);
 vertical-align: top;
}
.textarea {
 border-radius: min(12px, var(--input-border-radius));
}
:is(.input:focus, .textarea:focus, .select:focus-visible) {
 border-color: currentColor;
 outline: none;
}
.select ~ svg,
.select > svg {
 pointer-events: none;
 position: absolute;
 inset-block-start: calc(50% - 4.5px);
 inset-inline-end: calc(var(--input-padding-inline) + 1px);
}
.select:has(option[value=""]:checked) {
 color: rgb(var(--text-color) / 0.7);
}
.floating-label {
 height: 100%;
 padding-block: var(--input-padding-block);
 z-index: 1;
 color: rgb(
  var(--input-text-color, var(--text-color)) /
   calc(var(--has-transparent-background, 0) * 0.3 + 0.7)
 );
 transform-origin: var(--transform-origin-start) top;
 pointer-events: none;
 border: 1px solid #0000;
 transition: transform 0.15s ease-in-out;
 position: absolute;
 inset-block-start: 0;
 inset-inline-start: var(--input-padding-inline);
}
.input ~ .floating-label {
 align-items: center;
 display: flex;
}
:-webkit-autofill ~ .floating-label {
 color: #000;
}
:-webkit-any(.input, .textarea, .select):-webkit-autofill:has(
  ~ .floating-label
 ) {
 padding-block: calc(1.6 * var(--input-padding-block))
  calc(0.4 * var(--input-padding-block));
}
:-webkit-any(.input, .textarea, .select):-webkit-autofill ~ .floating-label {
 transform: scale(0.65) translateY(calc(-0.4 * var(--input-padding-block)));
}
:is(.input, .textarea, .select):autofill:has(~ .floating-label) {
 padding-block: calc(1.6 * var(--input-padding-block))
  calc(0.4 * var(--input-padding-block));
}
:is(.input, .textarea, .select):autofill ~ .floating-label {
 transform: scale(0.65) translateY(calc(-0.4 * var(--input-padding-block)));
}
.select:not(:has(option[value=""]:checked)):has(~ .floating-label) {
 padding-block: calc(1.6 * var(--input-padding-block))
  calc(0.4 * var(--input-padding-block));
}
.select:not(:has(option[value=""]:checked)) ~ .floating-label {
 transform: scale(0.65) translateY(calc(-0.4 * var(--input-padding-block)));
}
:is(
  :is(.input, .textarea):focus,
  :is(.input, .textarea):not(:placeholder-shown)
 ):has(~ .floating-label) {
 padding-block: calc(1.6 * var(--input-padding-block))
  calc(0.4 * var(--input-padding-block));
}
:is(
  :is(.input, .textarea):focus,
  :is(.input, .textarea):not(:placeholder-shown)
 )
 ~ .floating-label {
 transform: scale(0.65) translateY(calc(-0.4 * var(--input-padding-block)));
}
label:focus-within:has(:focus-visible) {
 outline: 5px auto highlight;
 outline: 5px auto -webkit-focus-ring-color;
}
.input-prefix {
 border-radius: min(0.625rem, var(--button-border-radius));
 border: 1px solid rgb(var(--text-color) / 0.12);
 flex: 1 0 0;
 justify-content: space-between;
 align-items: center;
 min-width: 0;
 padding: 0.625rem 1rem;
 display: flex;
}
.input-prefix:focus-within {
 border-color: rgb(var(--text-color));
 box-shadow: inset 0 0 0 1px rgb(var(--text-color));
}
.input-prefix > .field {
 -webkit-appearance: textfield;
 appearance: textfield;
 text-align: end;
 background: none;
 border: none;
 width: 100%;
 min-width: 0;
 margin-inline-start: 0.625rem;
 padding: 0;
}
.input-prefix > .field:focus {
 outline: none;
}
.input-prefix > .field::-webkit-outer-spin-button {
 -webkit-appearance: none;
 appearance: none;
 margin: 0;
}
.input-prefix > .field::-webkit-inner-spin-button {
 -webkit-appearance: none;
 appearance: none;
 margin: 0;
}
.input-icon {
 transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
 position: absolute;
 inset-block-start: var(--input-padding-block);
 inset-inline-end: var(--input-padding-inline);
}
.form-control:has(:focus-within) + .input-icon.hide-on-focus {
 opacity: 0;
 visibility: hidden;
}
.checkbox {
 -webkit-appearance: none;
 appearance: none;
 width: var(--checkbox-size);
 height: var(--checkbox-size);
 vertical-align: middle;
 background: rgb(var(--text-color) / 0.15) url(./checkmark.svg) no-repeat center /
  0;
 border-radius: 2px;
 transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out;
 position: relative;
}
@supports (height: 1cap) {
 .checkbox {
  vertical-align: calc(0.5cap - 0.5 * var(--checkbox-size));
 }
}
.checkbox:checked {
 background-color: rgb(var(--accent));
 background-blend-mode: difference;
 background-size: 10px 8px;
}
.checkbox:checked ~ label {
 opacity: 1;
}
.checkbox:disabled,
.checkbox:disabled ~ label {
 opacity: 0.5;
 cursor: default;
}
.checkbox:not(:disabled, :checked) ~ label {
 opacity: 0.7;
}
.checkbox ~ label {
 transition: all 0.2s ease-in-out;
}
.radio {
 --radio-size: 0.625rem;
 -webkit-appearance: none;
 appearance: none;
 width: var(--radio-size);
 height: var(--radio-size);
 vertical-align: calc(0.5cap - 0.5 * var(--radio-size));
 border: 1px solid rgb(var(--text-color) / 0.3);
 background: none;
 border-radius: 100%;
 transition: background-color 0.1s ease-in-out, border-color 0.1s ease-in-out;
 position: relative;
}
.radio:checked {
 background-color: rgb(var(--accent));
 border-color: rgb(var(--text-color));
}
.radio:disabled,
.radio:disabled ~ label {
 opacity: 0.5;
 cursor: default;
}
.input-with-connected-submit {
 flex-direction: column;
 gap: 0.5rem;
 display: flex;
}
@media screen and (min-width: 700px) {
 .input-with-connected-submit {
  flex-direction: row;
  gap: 0;
 }
 .input-with-connected-submit .form-control {
  flex-grow: 1;
 }
 .input-with-connected-submit .input {
  border-inline-end-width: 0;
  min-height: 100%;
 }
 .input-with-connected-submit
  .input:not(
   :lang(ae),
   :lang(ar),
   :lang(arc),
   :lang(bcc),
   :lang(bqi),
   :lang(ckb),
   :lang(dv),
   :lang(fa),
   :lang(glk),
   :lang(he),
   :lang(ku),
   :lang(mzn),
   :lang(nqo),
   :lang(pnb),
   :lang(ps),
   :lang(sd),
   :lang(ug),
   :lang(ur),
   :lang(yi)
  ) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
 }
 .input-with-connected-submit
  .input:is(
   :lang(ae),
   :lang(ar),
   :lang(arc),
   :lang(bcc),
   :lang(bqi),
   :lang(ckb),
   :lang(dv),
   :lang(fa),
   :lang(glk),
   :lang(he),
   :lang(ku),
   :lang(mzn),
   :lang(nqo),
   :lang(pnb),
   :lang(ps),
   :lang(sd),
   :lang(ug),
   :lang(ur),
   :lang(yi)
  ) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
 }
 .input-with-connected-submit
  .button:not(
   :lang(ae),
   :lang(ar),
   :lang(arc),
   :lang(bcc),
   :lang(bqi),
   :lang(ckb),
   :lang(dv),
   :lang(fa),
   :lang(glk),
   :lang(he),
   :lang(ku),
   :lang(mzn),
   :lang(nqo),
   :lang(pnb),
   :lang(ps),
   :lang(sd),
   :lang(ug),
   :lang(ur),
   :lang(yi)
  ) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
 }
 .input-with-connected-submit
  .button:is(
   :lang(ae),
   :lang(ar),
   :lang(arc),
   :lang(bcc),
   :lang(bqi),
   :lang(ckb),
   :lang(dv),
   :lang(fa),
   :lang(glk),
   :lang(he),
   :lang(ku),
   :lang(mzn),
   :lang(nqo),
   :lang(pnb),
   :lang(ps),
   :lang(sd),
   :lang(ug),
   :lang(ur),
   :lang(yi)
  ) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
 }
 [dir="rtl"] .input-with-connected-submit .input[dir="ltr"] {
  border-inline-width: 0 1px;
 }
}
.input-link {
 inset-block-start: calc(50% - 0.5lh);
 inset-inline-end: var(--input-padding-inline);
 position: absolute !important;
}
.switch {
 --switch-height: 1rem;
 --switch-width: 2rem;
 --switch-padding: 0.15rem;
 --switch-toggle-size: 12px;
 -webkit-appearance: none;
 appearance: none;
 height: var(--switch-height);
 width: var(--switch-width);
 padding-inline: var(--switch-padding);
 border-radius: var(--rounded-full);
 background: rgb(var(--text-color) / 0.15);
 align-self: center;
 align-items: center;
 transition: background 0.2s ease-in-out;
 display: grid;
}
.switch:after {
 content: "";
 width: var(--switch-toggle-size);
 height: var(--switch-toggle-size);
 background: rgb(var(--background));
 border-radius: var(--rounded-full);
 transition: transform 0.2s ease-in-out;
 box-shadow: 0 1px 1px #0003;
}
.switch:checked {
 background: rgb(var(--accent));
}
.switch:checked:after {
 transform: translate(
  calc(
   var(--transform-logical-flip) *
    (
     var(--switch-width) - var(--switch-toggle-size) - var(--switch-padding) * 2
    )
  )
 );
}
.highlighted-heading {
 isolation: isolate;
 display: block;
}
.text-indent .highlighted-heading {
 display: inline;
}
.highlighted-heading[effect="italic"] em {
 font-family: var(--heading-italic-font-family);
 font-weight: var(--heading-italic-font-weight);
 font-style: italic;
 font-size: calc(100% + var(--heading-italic-font-size-multiplier));
}
.highlighted-heading:where([effect="marker"], [effect="tilted-marker"]) em {
 --highlight-inline-padding: 8px;
 --highlight-block-padding: 0.2em;
 margin-inline: var(--highlight-inline-padding);
 text-indent: 0;
 font-style: normal;
}
.highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
 em
 ::part(line) {
 position: relative;
}
.highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
 em
 ::part(line):before,
.highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
 em
 ::part(line):after {
 content: attr(data-content);
 width: calc(100% + var(--highlight-inline-padding) * 2);
 clip-path: inset(0 100% 0 0);
 text-indent: var(--highlight-inline-padding);
 white-space: nowrap;
 pointer-events: none;
 text-align: start;
 position: absolute;
 inset-block-start: 0;
 inset-inline-start: calc(-1 * var(--highlight-inline-padding));
 overflow: hidden;
}
[dir="rtl"]
 :is(
  .highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
   em
   ::part(line):before,
  .highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
   em
   ::part(line):after
 ) {
 clip-path: inset(0 0 0 100%);
}
.highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
 em
 ::part(line):before {
 color: #0000;
 background-color: rgb(var(--heading-highlight-accent-color));
 transition: background 0.2s;
}
.highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
 em
 ::part(line):after {
 color: rgb(var(--heading-highlight-text-color));
 transition: color 0.2s;
}
@supports (content: "x" / "y") {
 .highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
  em
  ::part(line):before,
 .highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
  em
  ::part(line):after {
  content: attr(data-content) / "";
 }
}
@supports (height: 1cap) {
 .highlighted-heading:where([effect="marker"], [effect="tilted-marker"]) em {
  --highlight-block-padding: min(0.2em, (1lh - 1cap) / 1.5);
 }
}
@supports (text-box: trim-both cap alphabetic) {
 .highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
  em
  ::part(line),
 .highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
  em
  ::part(line):before,
 .highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
  em
  ::part(line):after {
  text-box: trim-both cap alphabetic;
  padding-block: var(--highlight-block-padding);
 }
}
@supports (height: 1cap) and (not (text-box: trim-both cap alphabetic)) {
 .highlighted-heading:where([effect="marker"], [effect="tilted-marker"])
  em
  ::part(line):before {
  height: 1cap;
  padding-block: var(--highlight-block-padding);
  inset-block-start: calc((1lh - 1cap) / 2 - var(--highlight-block-padding));
 }
}
.highlighted-heading:where([effect*="circle"], [effect*="underline"]) em {
 text-indent: 0;
 font-style: normal;
}
.highlighted-heading:where([effect*="circle"], [effect*="underline"])
 em
 ::part(line) {
 position: relative;
}
.highlighted-heading:where([effect*="circle"], [effect*="underline"])
 em
 ::part(shape) {
 color: rgb(var(--heading-highlight-accent-color));
 pointer-events: none;
 transition: color 0.2s;
 position: absolute;
 overflow: visible;
}
.highlighted-heading:where([effect*="circle"], [effect*="underline"])
 em
 ::part(circle-shape) {
 width: 115%;
 height: 1.2em;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
}
.highlighted-heading:where([effect*="circle"], [effect*="underline"])
 em
 ::part(underline-shape) {
 --shape-compensation: min(0.5em, 20px);
 width: calc(100% + var(--shape-compensation));
 height: 0.15em;
 inset-block-start: 100%;
 inset-inline-start: calc(-1 * var(--shape-compensation) / 2);
}
:is(.mabel-section, .mabel-section) {
 --section-disable-padding-collapsing: calc(
  1 - var(--section-enable-padding-collapsing, 0)
 );
 transition: top 0.2s ease-in-out;
}
:is(.mabel-section, .mabel-section):empty {
 display: none;
}
.mabel-section-group-header-group {
 z-index: 5;
 position: relative;
}
.mabel-section--header {
 z-index: 4;
}
.mabel-section--header ~ .mabel-section-group-header-group {
 z-index: 3;
}
.section-spacing {
 padding-block-start: calc(
  var(--section-disable-padding-collapsing) *
   var(--section-vertical-spacing-block-start, var(--section-vertical-spacing))
 );
 padding-block-end: var(
  --section-vertical-spacing-block-end,
  var(--section-vertical-spacing)
 );
}
:is(.mabel-section, .mabel-section):has(.section-spacing) {
 scroll-margin-block-start: var(--sticky-area-height);
}
:is(.mabel-section, .mabel-section):first-child:has([allow-transparent-header]) .section-spacing {
 --section-vertical-spacing-block-start: calc(
  var(--section-vertical-spacing) + var(--header-height) - 16px
 );
}
.section-spacing--tight {
 padding-block-start: min(
  3rem,
  var(--section-disable-padding-collapsing) *
   var(--section-vertical-spacing-block-start, var(--section-vertical-spacing))
 );
 padding-block-end: min(
  3rem,
  var(--section-vertical-spacing-block-end, var(--section-vertical-spacing))
 );
}
.section-spacing--loose {
 padding-block-start: calc(
  (
    var(--section-disable-padding-collapsing) *
     var(
      --section-vertical-spacing-block-start,
      var(--section-vertical-spacing)
     )
   ) * 2.5
 );
 padding-block-end: calc(
  (var(--section-vertical-spacing-block-end, var(--section-vertical-spacing))) *
   2.5
 );
}
.section-header {
 margin-inline: var(--container-gutter);
 grid-template-columns: minmax(0, 1fr);
 align-items: start;
 row-gap: 1.8rem;
 display: grid;
}
:where(.container, .section-split) .section-header {
 margin-inline: 0;
}
.section-header__controls {
 align-self: end;
}
@media screen and (min-width: 700px) {
 .section-header {
  grid-auto-columns: auto;
  grid-auto-flow: column;
  gap: 2rem;
 }
 .section-header.section-header--stack {
  grid-auto-flow: row;
 }
}
.section-split {
 --distance-to-bleed: var(--container-gutter);
 display: flow-root;
}
.section-split__column {
 padding: var(--section-vertical-spacing) var(--container-gutter);
}
.section-split__column--image {
 padding-block: calc(
   var(--section-disable-padding-collapsing, 1) * var(--container-gutter)
  )
  var(--container-gutter);
}
.section-split__column--flushed {
 padding: 0 !important;
}
@media screen and (max-width: 999px) {
 .section-split__column:where(:first-child) {
  padding-block-end: var(--section-stack-row-gap);
 }
 .section-split__column:where(:last-child) {
  padding-block-start: var(--section-stack-row-gap);
 }
 .section-split__column:not(.section-split__column--flushed)
  + .section-split__column {
  padding-block-start: 0;
 }
}
@media screen and (min-width: 1000px) {
 .section-split {
  grid-template-columns: var(
   --section-split-grid-template-columns,
   repeat(2, minmax(0, 1fr))
  );
  align-items: start;
  display: grid;
 }
 .section-split:has(.section-split__column--image) {
  align-items: center;
 }
 .section-split:has(.section-split__column--image)
  .section-split__column:not(.section-split__column--image) {
  padding-block: var(--container-gutter);
 }
 .section-split__column--image {
  align-self: stretch;
 }
 .section-split--reverse .section-split__column:first-child {
  order: 2;
 }
 .section-split:not(.section-split--reverse)
  .section-split__column--image:first-child,
 .section-split--reverse .section-split__column--image:last-child {
  padding-inline-end: 0;
 }
 .section-split:not(.section-split--reverse)
  .section-split__column--image:last-child,
 .section-split--reverse .section-split__column--image:first-child {
  padding-inline-start: 0;
 }
}
.section-stack {
 row-gap: var(--section-stack-row-gap);
 grid-template-columns: minmax(0, 1fr);
 display: grid;
}
.section-stack--tight {
 row-gap: min(2rem, var(--section-stack-row-gap));
}
:where(
  :is(.mabel-section, .mabel-section):has(.section-split, .section-spacing)
   + :is(.mabel-section, .mabel-section):has(.section-spacing)
 ) {
 --section-enable-padding-collapsing: var(
  --section-has-same-background-as-previous-section,
  0
 );
}
:where(
  :is(.mabel-section, .mabel-section):has(.section-split__column--image):not(
    :has(.section-split__column--flushed)
   )
   + :is(.mabel-section, .mabel-section)
 ) {
 --section-vertical-spacing-block-start: calc(
  var(--section-vertical-spacing) - var(--container-gutter) *
   var(--section-has-same-background-as-previous-section, 0)
 );
}
@media screen and (max-width: 699px) {
 :where(
   :is(.mabel-section, .mabel-section):has(.section-spacing)
    + :is(.mabel-section, .mabel-section):has(.section-spacing)
  ) {
  --section-enable-padding-collapsing: var(
   --section-has-same-background-as-previous-section,
   0
  );
 }
 :is(.mabel-section, .mabel-section):has(.section-split) + :is(.mabel-section, .mabel-section):has(.section-split) {
  --section-enable-padding-collapsing: var(
   --section-has-same-background-as-previous-section,
   0
  );
 }
}
@media screen and (min-width: 700px) {
 :where(
   :is(.mabel-section, .mabel-section):has(.section-split__column--flushed)
    + :is(.mabel-section, .mabel-section):has(.section-spacing)
  ) {
  --section-enable-padding-collapsing: 0;
 }
}
.container {
 --container-gutter-context: var(--container-gutter);
 --distance-to-bleed: max(
  var(--container-gutter-context),
  50% - var(--container-max-width) / 2
 );
 margin-inline-start: max(
  var(--container-gutter-context),
  50% - var(--container-max-width) / 2
 );
 margin-inline-end: max(
  var(--container-gutter-context),
  50% - var(--container-max-width) / 2
 );
}
.container--narrow {
 --container-gutter-context: min(1.75rem, var(--container-gutter));
}
.v-stack {
 align-content: start;
 justify-items: inherit;
 grid-template-columns: minmax(0, 1fr);
 display: grid;
}
.h-stack {
 align-items: center;
 justify-content: inherit;
 display: flex;
}
.bleed,
.full-bleed,
::part(bleed),
::part(full-bleed) {
 margin-inline-start: calc(-1 * var(--distance-to-bleed));
 margin-inline-end: calc(-1 * var(--distance-to-bleed));
}
.bleed,
::part(bleed) {
 scroll-padding-inline: var(--distance-to-bleed);
 padding-inline-start: var(--distance-to-bleed);
 padding-inline-end: var(--distance-to-bleed);
}
@media screen and (min-width: 700px) {
 .sm\:unbleed {
  margin-inline: 0;
  padding-inline: 0;
  scroll-padding-inline: 0;
 }
}
@media screen and (min-width: 1000px) {
 .md\:unbleed {
  margin-inline: 0;
  padding-inline: 0;
  scroll-padding-inline: 0;
 }
}
@media screen and (min-width: 1150px) {
 .lg\:unbleed {
  margin-inline: 0;
  padding-inline: 0;
  scroll-padding-inline: 0;
 }
}
video-media,
model-media {
 border-radius: inherit;
 aspect-ratio: var(--mobile-aspect-ratio, var(--aspect-ratio, auto));
 width: 100%;
 display: block;
 position: relative;
}
@media screen and (min-width: 700px) {
 video-media,
 model-media {
  aspect-ratio: var(--aspect-ratio, auto);
 }
}
video-media[host] {
 align-items: center;
 display: grid;
}
video-media:not([autoplay], [loaded]) {
 cursor: pointer;
}
video-media > :is(video, iframe, img) {
 border-radius: inherit;
 width: 100%;
 height: 100%;
 transition: opacity 0.2s ease-in-out;
}
video-media > video[controls] {
 pointer-events: auto;
}
video-media > :-webkit-any(video:not(:-webkit-full-screen), img) {
 object-fit: cover;
 object-position: center;
 margin: 0 !important;
}
video-media > :is(video:not(:fullscreen), img) {
 object-fit: cover;
 object-position: center;
 margin: 0 !important;
}
video-media > :is(iframe, img) {
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}
video-media:not([loaded]) > :is(video, iframe),
video-media[loaded] > img,
video-media[loaded]::part(play-button) {
 opacity: 0;
 pointer-events: none;
}
video-media[suspended] ~ * {
 pointer-events: none;
}
video-media::part(play-button) {
 position: absolute;
 top: 50%;
 left: 50%;
 translate: -50% -50%;
}
video-media::part(play-button),
.play-button {
 -webkit-backdrop-filter: blur(10px);
 backdrop-filter: blur(10px);
 z-index: 1;
 will-change: scale;
 background: #fff3;
 border-radius: 100%;
 place-content: center;
 width: 80px;
 height: 80px;
 transition: scale 0.2s ease-in-out, opacity 0.2s ease-in-out;
 display: inline-grid;
}
:is(video-media::part(play-button), .play-button) svg {
 margin: 0;
}
video-media:hover::part(play-button),
video-media:hover .play-button,
.group:hover .group-hover\:scale {
 scale: 1.1;
}
model-media {
 --default-aspect-ratio: 1;
}
model-media model-viewer,
model-media .mabel-model-viewer-ui {
 vertical-align: top;
 width: 100%;
 height: 100%;
}
.offer-item {
 scroll-snap-align: center;
 border-radius: min(4px, var(--button-border-radius));
 grid-template-columns: minmax(0, 1fr);
 row-gap: 0.125rem;
 padding: 1rem 1.25rem;
 display: grid;
}
.offer-item > img {
 margin-block-end: 2px;
}
@media screen and (min-width: 700px) {
 .offer-item--lg {
  padding: 2rem 1.5rem;
 }
}
.offer-list {
 gap: 0.625rem;
 display: grid;
}
.offer-list--stacked {
 grid-template-columns: minmax(0, 1fr);
}
.offer-list--split {
 grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}
.offer-carousel {
 gap: 1rem;
 padding-block: 1.25rem;
 display: grid;
 position: relative;
}
.offer-carousel__scroller {
 scroll-snap-type: x mandatory;
 scroll-snap-stop: always;
 grid-template-columns: none;
 grid-auto-columns: 100%;
 grid-auto-flow: column;
 align-items: start;
 display: grid;
}
.offer-carousel__scroller > .offer-item {
 padding-block: 0;
}
.offer-carousel--navigation-inline > * {
 grid-area: 1 / -1;
}
.offer-carousel--navigation-inline > .scroll-marker-group--dots {
 place-self: center end;
 margin-inline-end: 1.25rem;
}
.offer-carousel--navigation-inline .offer-item {
 padding-inline-end: 3.5rem;
}
.color-swatch {
 --swatch-width: 2rem;
 --swatch-height: 2rem;
 --swatch-selected-border-size: 2px;
 --swatch-selected-border-offset: 3px;
 --swatch-disabled-strike-color: rgb(var(--border-color));
 --swatch-disabled-icon-size: 0.75rem;
 width: var(--swatch-width);
 height: var(--swatch-height);
 background: content-box var(--swatch-background) no-repeat center / cover;
 place-items: center;
 display: grid;
 position: relative;
}
.color-swatch.is-disabled:before {
 content: "";
 background: url('data:image/svg+xml,<svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L9 9M9 1L1 9" stroke="black" stroke-width="1.5"/></svg>')
   no-repeat,
  linear-gradient(to right, #ffffff80, #ffffff80) no-repeat;
 background-size: var(--swatch-disabled-icon-size), 100%;
 border-radius: inherit;
 background-position: center;
 width: 100%;
 height: 100%;
 position: absolute;
}
:disabled + .color-swatch {
 display: none;
}
:checked + .color-swatch,
.color-swatch.is-selected {
 --swatch-disabled-strike-color: currentColor;
 outline: var(--swatch-selected-border-size) solid currentColor;
 outline-offset: var(--swatch-selected-border-offset);
}
:is(:checked + .color-swatch, .color-swatch.is-selected)
 .color-swatch__indicator {
 width: 100%;
 height: var(--swatch-selected-border-size);
 background: currentColor;
 position: absolute;
 inset-block-end: -4px;
}
.color-swatch--circle {
 border-radius: 100%;
}
.color-swatch--square,
.color-swatch--rectangle {
 --swatch-height: 2rem;
 --swatch-width: 2rem;
 --swatch-disabled-icon-size: 0.75rem;
 border: none;
}
:checked + :is(.color-swatch--square, .color-swatch--rectangle),
:is(.color-swatch--square, .color-swatch--rectangle).is-selected {
 outline: none;
}
.color-swatch--rectangle {
 --swatch-height: 1.5rem;
 --swatch-width: 4rem;
 --swatch-disabled-icon-size: 0.5rem;
}
.color-swatch--sm {
 --swatch-width: 1rem;
 --swatch-height: 1rem;
 --swatch-disabled-icon-size: 0.5rem;
 --swatch-selected-border-offset: 2px;
}
.color-swatch--square.color-swatch--sm {
 --swatch-height: 1rem;
 --swatch-width: 1rem;
}
.color-swatch--rectangle.color-swatch--sm {
 --swatch-height: 0.75rem;
 --swatch-width: 1.75rem;
 --swatch-disabled-icon-size: 0.375rem;
}
.color-swatch--white {
 box-shadow: 0 0 0 1px rgb(var(--border-color)) inset;
}
.color-swatch--tight {
 --swatch-height: 1.25rem;
 --swatch-width: 1.25rem;
 box-shadow: 0 0 0 2px rgb(var(--background));
}
.color-swatch--tight ~ .color-swatch--tight {
 margin-inline-start: -0.875rem;
}
.color-swatch--tight + .color-swatch__view-more {
 background: rgb(var(--background));
 z-index: 1;
 height: 1.25rem;
 box-shadow: 0 0 0 2px rgb(var(--background));
 border-width: 1px;
 border-radius: 20px;
 align-content: center;
 margin-inline-start: -0.875rem;
 padding-inline: 0.375rem;
 font-size: 0.625rem;
}
.block-swatch {
 --swatch-border-size: 1px;
 --swatch-padding: 0.5625rem 1.125rem;
 --swatch-disabled-strike-color: rgb(var(--text-color) / 0.3);
 padding: var(--swatch-padding);
 border-width: var(--swatch-border-size);
 border-radius: var(--input-border-radius);
 min-width: 3.5rem;
 color: rgb(var(--text-color) / 0.65);
 justify-content: safe center;
 align-items: center;
 column-gap: 0.65rem;
 display: flex;
 position: relative;
}
.block-swatch.is-disabled {
 color: rgb(var(--text-color) / 0.5);
 border-color: rgb(var(--border-color) / 0.5);
 text-decoration: line-through;
 -webkit-text-decoration-color: var(--swatch-disabled-strike-color);
 text-decoration-color: var(--swatch-disabled-strike-color);
}
:disabled + .block-swatch {
 display: none;
}
:checked + .block-swatch,
.block-swatch.is-selected {
 --swatch-disabled-strike-color: currentColor;
 color: var(--text-color);
 border-color: currentColor;
 box-shadow: inset 0 0 0 1px;
}
:is(:checked + .block-swatch, .block-swatch.is-selected).block-swatch--fill {
 background: rgb(var(--text-color));
 border-color: rgb(var(--text-color));
 box-shadow: 0 0 0 1px rgb(var(--text-color)) inset;
 color: rgb(var(--background));
}
:focus-visible + .block-swatch {
 outline-offset: 2px;
}
.block-swatch__color {
 background: var(--swatch-background) center / cover;
 width: 1em;
 height: 1em;
}
@media screen and (min-width: 700px) {
 .block-swatch {
  min-width: 4rem;
 }
}
.thumbnail-swatch {
 --thumbnail-size: 3.5rem;
 --thumbnail-disabled-strike-color: rgb(var(--border-color));
 width: var(--thumbnail-size);
 border-block-end: 2px solid #0000;
 height: auto;
 padding-block-end: 2px;
 display: block;
 position: relative;
}
:checked + .thumbnail-swatch,
.thumbnail-swatch.is-selected {
 border-color: currentColor;
}
.thumbnail-swatch.is-disabled:before {
 content: "";
 background: url('data:image/svg+xml,<svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L9 9M9 1L1 9" stroke="black" stroke-width="1.5"/></svg>')
   no-repeat,
  linear-gradient(to right, #ffffff80, #ffffff80) no-repeat;
 background-size: var(--swatch-disabled-icon-size), 100%;
 border-radius: inherit;
 background-position: center;
 place-self: center;
 width: 100%;
 height: 100%;
}
:disabled + .thumbnail-swatch {
 display: none;
}
.thumbnail-swatch > img {
 height: 100%;
}
:focus-visible + .thumbnail-swatch {
 outline-offset: 2px;
}
.thumbnail-swatch--sm {
 --thumbnail-size: 2.5rem;
}
@media screen and (min-width: 700px) {
 .thumbnail-swatch {
  --thumbnail-size: 4.5rem;
 }
 .thumbnail-swatch--sm {
  --thumbnail-size: 3.5rem;
 }
}
.image-filter-list {
 grid-template-columns: repeat(auto-fit, minmax(140px, 0.5fr));
 gap: 1px;
 display: grid;
}
.image-filter {
 text-align: center;
 z-index: 0;
 border-width: 1px;
 flex-direction: column;
 align-items: center;
 row-gap: 0.5rem;
 margin: -1px;
 padding: 1rem;
 transition: border-color 0.15s ease-in-out, z-index 0.15s linear 0.15s;
 display: flex;
}
:checked + .image-filter,
.image-filter.is-selected {
 z-index: 1;
 border-color: currentColor;
 transition-delay: 0s;
}
.image-filter__image {
 object-fit: contain;
 width: 32px;
}
.order-summary td {
 border-block-width: 0;
 padding: 0.5rem 0;
}
.order-summary tr:first-child td {
 border-block-start-width: 1px;
 padding-block-start: 1.5rem;
}
.order-summary tr:last-child td {
 border-block-end-width: 1px;
 padding-block-end: 1.5rem;
}
.order-summary td:nth-child(2) {
 min-width: 50px;
}
.order-summary td:nth-child(3) {
 min-width: 100px;
}
.order-totals {
 grid-template-columns: minmax(0, 1fr) auto;
 gap: 0.8rem 1.5rem;
 display: grid;
}
@media screen and (max-width: 699px) {
 .order-summary :is(td:nth-child(2), td:nth-child(3)) {
  display: none;
 }
}
@media screen and (min-width: 700px) {
 .order-summary td {
  padding-block: 0.75rem;
 }
 .order-summary tr:first-child td {
  padding-block-start: 2rem;
 }
 .order-summary tr:last-child td {
  padding-block-end: 2rem;
 }
 .order-totals {
  max-width: 25rem;
  margin-inline-start: auto;
 }
}
.line-item {
 flex-direction: row;
 align-items: center;
 column-gap: 1rem;
 display: flex;
}
.line-item__media {
 flex: 0 0 5rem;
 min-width: 0;
}
.line-item__info-with-line-price {
 flex-grow: 1;
 justify-content: space-between;
 align-items: start;
 display: flex;
}
.line-item__error-container {
 margin-block-start: 0.375rem;
}
.line-item__remove-button {
 align-items: center;
 column-gap: 0.25rem;
 display: flex;
}
.line-item__remove-button .text-xs {
 position: relative;
 top: 1px;
}
@media screen and (min-width: 700px) {
 .line-item {
  column-gap: 1.5rem;
 }
 .line-item__media {
  flex-basis: 5.5rem;
 }
}
@media screen and (pointer: fine) {
 .line-item__remove-button {
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
 }
 .line-item:hover .line-item__remove-button {
  opacity: 0.5;
 }
 .line-item:hover .line-item__remove-button:hover {
  opacity: 1;
 }
}
.pagination {
 --pagination-part-size: 1.75rem;
 justify-self: center;
 align-items: center;
 column-gap: 1rem;
 display: flex;
}
.pagination__link {
 width: var(--pagination-part-size);
 height: var(--pagination-part-size);
 border-radius: 100%;
 place-content: center;
 display: grid;
 position: relative;
}
.pagination__link[aria-current="page"] {
 background: rgb(var(--text-color));
 color: rgb(var(--background));
}
@media screen and (min-width: 700px) {
 .pagination {
  --pagination-part-size: 2.5rem;
 }
}
.pswp {
 --pswp-bg: var(--background);
 --pswp-root-z-index: 100000;
 width: 100%;
 height: 100%;
 z-index: var(--pswp-root-z-index);
 touch-action: none;
 opacity: 0.003;
 contain: layout style size;
 -webkit-tap-highlight-color: #0000;
 outline: 0;
 display: none;
 position: fixed;
 top: 0;
 left: 0;
}
.pswp:focus {
 outline: 0;
}
.pswp--open {
 display: block;
}
.pswp img {
 max-width: none;
}
.pswp,
.pswp__bg {
 will-change: opacity;
 transform: translateZ(0);
}
.pswp__bg {
 opacity: 0.005;
 background: rgb(var(--pswp-bg));
}
.pswp,
.pswp__scroll-wrap {
 overflow: hidden;
}
.pswp__scroll-wrap,
.pswp__bg,
.pswp__container,
.pswp__item,
.pswp__img,
.pswp__zoom-wrap {
 width: 100%;
 height: 100%;
 max-height: none;
 position: absolute;
 top: 0;
 left: 0;
}
.pswp__img,
.pswp__zoom-wrap {
 width: auto;
 height: auto;
}
.pswp--click-to-zoom.pswp--zoom-allowed .pswp__img {
 cursor: zoom-in;
}
.pswp--click-to-zoom.pswp--zoomed-in .pswp__img {
 cursor: grab;
}
.pswp--click-to-zoom.pswp--zoomed-in .pswp__img:active {
 cursor: grabbing;
}
.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img,
.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img:active,
.pswp__img {
 cursor: zoom-out;
}
.pswp__container,
.pswp__img,
.pswp__button,
.pswp__counter {
 -webkit-user-select: none;
 user-select: none;
}
.pswp__item {
 z-index: 1;
 overflow: hidden;
}
.pswp__hidden {
 display: none !important;
}
.pswp .pswp__hide-on-close {
 opacity: 0.005;
 will-change: opacity;
 z-index: 10;
 pointer-events: none;
 transition: opacity 0.3s cubic-bezier(0.4, 0, 0.22, 1),
  transform 0.3s cubic-bezier(0.4, 0, 0.22, 1);
 transform: translateY(15px);
}
.pswp--ui-visible .pswp__hide-on-close {
 opacity: 1;
 pointer-events: auto;
 transition-delay: 0.3s;
 transform: translateY(0);
}
.pswp__top-bar {
 height: 100%;
 pointer-events: none !important;
}
.pswp__button {
 pointer-events: auto;
 transition: transform 0.2s ease-in-out;
 position: absolute;
}
@media screen and (pointer: fine) {
 .pswp__button:not([disabled]):hover {
  color: color-mix(in srgb, rgb(var(--text-color)) 8%, rgb(var(--background)));
 }
 .pswp__button:not([disabled]):hover:before {
  background: rgb(var(--text-color));
  transform: scale(1.2);
 }
}
.pswp__button--close-button {
 inset-block-start: 1.75rem;
 inset-inline-end: 1.75rem;
}
@media screen and (pointer: fine) {
 .pswp__button--close-button .icon {
  transition: rotate 0.3s ease-in-out;
 }
 .pswp__button--close-button:not([disabled]):hover .icon {
  rotate: 90deg;
 }
}
.pswp__button--previous-button {
 inset-block-start: calc(50% - (var(--button-size) / 2));
 inset-inline-start: var(--container-gutter);
}
.pswp__button--next-button {
 inset-block-start: calc(50% - (var(--button-size) / 2));
 inset-inline-end: var(--container-gutter);
}
.pswp__preloader {
 display: none;
}
@media screen and (min-width: 700px) {
 .pswp__top-bar {
  column-gap: 1.125rem;
 }
}
.range {
 --range-track-height: 2px;
 --range-thumb-size: 6px;
 -webkit-appearance: none;
 appearance: none;
 background: none;
 width: 100%;
}
.range::-webkit-slider-thumb {
 -webkit-appearance: none;
}
.range::-webkit-slider-thumb {
 box-sizing: content-box;
 height: var(--range-thumb-size);
 width: var(--range-thumb-size);
 background: rgb(var(--background));
 border: 2px solid rgb(var(--text-color));
 cursor: pointer;
 z-index: 1;
 box-shadow: none;
 border-radius: 100%;
 margin-block-start: calc(
  -1 * ((var(--range-thumb-size) + var(--range-track-height)) / 2)
 );
 position: relative;
}
.range::-webkit-slider-runnable-track {
 width: 100%;
 height: var(--range-track-height);
 cursor: pointer;
 background: rgb(var(--text-color) / 0.12);
 border: none;
}
.range::-moz-range-thumb {
 box-sizing: content-box;
 height: var(--range-thumb-size);
 width: var(--range-thumb-size);
 border: 2px solid rgb(var(--text-color));
 background: rgb(var(--background));
 cursor: pointer;
 border-radius: 100%;
}
.range::-moz-range-progress {
 width: 100%;
 height: var(--range-track-height);
 cursor: pointer;
 border: none;
}
.range::-moz-range-track {
 width: 100%;
 height: var(--range-track-height);
 cursor: pointer;
 border: none;
}
.range::-moz-range-progress {
 background-color: rgba(var(--text-color));
}
.range::-moz-range-track {
 background-color: rgb(var(--border-color));
}
@media screen and not (pointer: fine) {
 .range {
  --range-thumb-size: 10px;
 }
}
.range-group {
 --range-track-height: 2px;
 height: var(--range-track-height);
 background: linear-gradient(
  to var(--transform-origin-end),
  rgb(var(--text-color) / 0.12) var(--range-min),
  rgb(var(--text-color)) var(--range-min),
  rgb(var(--text-color)) var(--range-max),
  rgb(var(--text-color) / 0.12) var(--range-max)
 );
 position: relative;
}
.range-group .range {
 pointer-events: none;
 height: var(--range-track-height);
 vertical-align: top;
}
.range-group .range::-webkit-slider-runnable-track {
 background: none;
}
.range-group .range::-webkit-slider-thumb {
 pointer-events: auto;
}
.range-group .range::-moz-range-progress {
 background: none;
}
.range-group .range::-moz-range-track {
 background: none;
}
.range-group .range::-moz-range-thumb {
 pointer-events: auto;
}
.range-group .range:last-child {
 position: absolute;
 inset-block-start: 0;
 inset-inline-start: 0;
}
.price-range {
 row-gap: 1.25rem;
 padding-block-start: 0.25rem;
 display: grid;
}
@media screen and not (pointer: fine) {
 .price-range {
  padding-block-start: 0.625rem;
 }
}
.price-range__input-group {
 align-items: center;
 column-gap: 1.25rem;
 display: flex;
}
.placement-grid {
 grid-template-rows: auto;
 row-gap: 1.5rem;
 display: grid;
}
.placement-grid:has(
  > :where(
    .align-self-center,
    .place-self-center,
    .place-self-center-start,
    .place-self-center-end
   )
 ) {
 grid-template-rows: 1fr auto 1fr;
}
.placement-grid
 > :where(
  .align-self-start,
  .place-self-start,
  .place-self-start-center,
  .place-self-start-end
 ) {
 grid-row: 1;
}
.placement-grid
 > :where(
  .align-self-center,
  .place-self-center,
  .place-self-center-start,
  .place-self-center-end
 ) {
 grid-row: 2;
}
.placement-grid
 > :where(
  .align-self-end,
  .place-self-end,
  .place-self-end-center,
  .place-self-end-start
 ) {
 grid-row: 3;
}
@media screen and (min-width: 700px) {
 .placement-grid:has(
   > :where(
     .sm\:align-self-center,
     .sm\:place-self-center,
     .sm\:place-self-center-start,
     .sm\:place-self-center-end
    )
  ) {
  grid-template-rows: 1fr auto 1fr;
 }
 .placement-grid
  > :where(
   .sm\:align-self-start,
   .sm\:place-self-start,
   .sm\:place-self-start-center,
   .sm\:place-self-start-end
  ) {
  grid-row: 1;
 }
 .placement-grid
  > :where(
   .sm\:align-self-center,
   .sm\:place-self-center,
   .sm\:place-self-center-start,
   .sm\:place-self-center-end
  ) {
  grid-row: 2;
 }
 .placement-grid
  > :where(
   .sm\:align-self-end,
   .sm\:place-self-end,
   .sm\:place-self-end-center,
   .sm\:place-self-end-start
  ) {
  grid-row: 3;
 }
}
@media screen and (min-width: 1000px) {
 .placement-grid:has(
   > :where(
     .md\:align-self-center,
     .md\:place-self-center,
     .md\:place-self-center-start,
     .md\:place-self-center-end
    )
  ) {
  grid-template-rows: 1fr auto 1fr;
 }
 .placement-grid
  > :where(
   .md\:align-self-start,
   .md\:place-self-start,
   .md\:place-self-start-center,
   .md\:place-self-start-end
  ) {
  grid-row: 1;
 }
 .placement-grid
  > :where(
   .md\:align-self-center,
   .md\:place-self-center,
   .md\:place-self-center-start,
   .md\:place-self-center-end
  ) {
  grid-row: 2;
 }
 .placement-grid
  > :where(
   .md\:align-self-end,
   .md\:place-self-end,
   .md\:place-self-end-center,
   .md\:place-self-end-start
  ) {
  grid-row: 3;
 }
}
.complementary-products {
 grid-auto-flow: column;
 align-items: start;
 display: grid;
}
.complementary-products--vertical {
 grid-auto-columns: 150px;
 column-gap: 0.25rem;
}
.complementary-products--horizontal {
 grid-auto-columns: 250px;
 column-gap: 1.25rem;
}
.product-cross-sell {
 grid-template-columns: minmax(0, 1fr);
 display: grid;
}
.product-cross-sell--vertical {
 text-align: center;
 justify-items: center;
 row-gap: 1rem;
}
.product-cross-sell--horizontal {
 grid-template-columns: auto minmax(0, 1fr);
 align-items: center;
 column-gap: 1rem;
 padding: 0.5rem 1.5rem 0.5rem 0.5rem;
}
@media screen and (min-width: 1000px) {
 .complementary-products--vertical {
  grid-auto-columns: calc(33.3333% - 0.166667rem);
 }
 .complementary-products--horizontal {
  grid-auto-columns: calc(50% - 0.625rem);
 }
}
.product-card {
 --product-card-inner-padding: 1rem;
 scroll-snap-align: start;
 overflow-wrap: anywhere;
 isolation: isolate;
 grid-template-columns: minmax(0, 1fr);
 row-gap: 0;
 display: grid;
 position: relative;
}
.product-card--bordered {
 outline: 1px solid rgb(var(--border-color));
}
.product-list:has(.product-card--bordered) {
 --product-list-card-border-width: 1px;
 gap: 1px;
 padding-block: 1px;
}
.product-card__figure {
 grid-area: 1 / 1 / auto / -1;
 grid-template-columns: minmax(0, 1fr);
 align-items: start;
 display: grid;
 position: relative;
}
.product-card__figure .badge-list {
 z-index: 1;
 padding: var(--product-card-inner-padding);
 position: absolute;
}
.product-card__media {
 isolation: isolate;
 min-height: 100%;
 display: block;
 position: relative;
 overflow: hidden;
}
.product-card__image {
 object-fit: contain;
 object-position: center;
 margin-inline: auto;
 transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1),
  transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.product-card__image--secondary {
 object-fit: cover;
 width: 100%;
 height: 100%;
 display: none;
 position: absolute;
 inset-block-start: 0;
 inset-inline-start: 0;
}
@media screen and (pointer: fine) {
 .product-card__image--secondary {
  opacity: 0;
  mix-blend-mode: plus-lighter;
  display: block;
 }
}
@media screen and (pointer: fine) {
 .product-card__image--secondary {
  transform: scale(1.05);
 }
 .product-card__figure:has(.product-card__image--secondary):hover
  .product-card__image--primary {
  opacity: 0;
  transform: scale(1.05);
 }
 .product-card__figure:has(.product-card__image--secondary):hover
  .product-card__image--secondary {
  opacity: 1;
  transform: scale(1);
 }
}
.product-card__info {
 padding: var(--product-card-inner-padding);
}
.product-card--info-outside.product-card--blends .product-card__info {
 padding-block-end: 0;
}
.product-card--info-outside.product-card--blends
 .product-card__info.product-card__info--flush {
 padding-inline: 0;
}
.product-card__info .product-card__swatch-list {
 grid-area: auto;
 margin: 0;
}
.product-card__swatch-list {
 margin: var(--product-card-inner-padding);
 z-index: 1;
 grid-area: 1 / 1 / auto / -1;
}
@media screen and (max-width: 699px) {
 .product-card__swatch-list .color-swatch {
  --swatch-width: 0.875rem;
  --swatch-height: 0.875rem;
 }
 .product-card__swatch-list .color-swatch--rectangle {
  --swatch-width: 1.2rem;
 }
}
@media screen and (min-width: 700px) {
 .product-card {
  --product-card-inner-padding: 1rem;
 }
}
@media screen and (min-width: 1600px) {
 .product-card {
  --product-card-inner-padding: 1.5rem;
 }
}
.product-card__quick-buy {
 padding: max(1rem, var(--product-card-inner-padding));
 z-index: 2;
 position: absolute;
 inset-block-end: 0;
 inset-inline-end: 0;
}
@media screen and (pointer: fine) {
 .product-card__quick-buy {
  opacity: 0;
  width: 100%;
  transition: opacity 0.15s ease-in-out, transform 0.15s ease-in-out;
  inset-inline: 0 auto;
  transform: translateY(6px);
 }
 .product-card--info-inside:hover .product-card__quick-buy,
 .product-card--info-outside
  .product-card__figure:hover
  .product-card__quick-buy {
  opacity: 1;
  transform: translateY(0);
 }
}
@media screen and (pointer: coarse) {
 .product-card__quick-buy--top-mobile {
  padding: var(--product-card-inner-padding);
  inset-block: 0 auto;
 }
}
.modal--quick-buy {
 --modal-content-margin: 0px;
 --modal-content-width: 61.25rem;
}
.modal--quick-buy::part(body) {
 position: relative;
}
.quick-buy .product-info {
 padding-inline: 0;
 position: relative;
 margin: 0 !important;
 inset-block-start: 0 !important;
}
.quick-buy__product-image {
 flex-shrink: 0;
 width: 6.25rem;
}
@media screen and (max-width: 999px) {
 .quick-buy__info {
  margin-trim: block;
 }
 .quick-buy__info [data-block-type="vendor"],
 .quick-buy__info [data-block-type="title"],
 .quick-buy__info [data-block-type="badges"],
 .quick-buy__info [data-block-type="price"],
 .quick-buy__info [data-block-type="rating"],
 .quick-buy__info [data-block-type="separator"] {
  display: none;
 }
 .quick-buy__info:has(
   .product-info__block-item:first-child:where(
     [data-block-type="vendor"],
     [data-block-type="title"],
     [data-block-type="badges"],
     [data-block-type="price"],
     [data-block-type="rating"],
     [data-block-type="separator"]
    )
  )
  .product-info__block-list {
  margin-block-start: calc(-1 * var(--product-block-item-margin));
 }
}
@media screen and (min-width: 1000px) {
 .modal--quick-buy::part(body) {
  padding: 0;
 }
 .quick-buy {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  display: grid;
 }
 .quick-buy .product-gallery {
  margin: 0;
 }
 .quick-buy__info {
  padding: 3rem;
 }
}
.product-card__floating-size-selector {
 --selector-layout-gap: 0.25rem;
 --selector-grid-max-column-count: 6;
 --selector-item-min-width: 50px;
 --selector-gap-count: calc(var(--selector-grid-max-column-count) - 1);
 --selector-total-gap-width: calc(
  var(--selector-gap-count) * var(--selector-layout-gap)
 );
 --selector-item-max-width: calc(
  (100% - var(--selector-total-gap-width)) /
   var(--selector-grid-max-column-count)
 );
 grid-template-columns: repeat(
  auto-fit,
  minmax(
   max(var(--selector-item-min-width), var(--selector-item-max-width)),
   1fr
  )
 );
 gap: var(--selector-layout-gap);
 padding: var(--product-card-inner-padding);
 visibility: hidden;
 opacity: 0;
 width: 100%;
 transition: opacity 0.15s ease-in-out, visibility 0.15s ease-in-out,
  transform 0.15s ease-in-out;
 display: grid;
 position: absolute;
 inset-block-end: 0;
 transform: translateY(6px);
}
.product-card__figure:hover .product-card__floating-size-selector {
 opacity: 1;
 visibility: visible;
 transform: translateY(0);
}
.floating-size-selector__button {
 --button-background: var(--button-text-primary);
 --button-text-color: var(--button-background-primary);
 --button-border-color: var(--border-color);
 --button-padding-inline: 0px;
 transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out,
  border-color 0.2s ease-in-out;
}
@media screen and (pointer: fine) {
 .floating-size-selector__button:hover {
  --button-background: var(--button-background-primary);
  --button-text-color: var(--button-text-primary);
  --button-border-color: var(--button-background-primary);
 }
}
.floating-size-selector__button.is-disabled {
 --button-text-color: var(--button-background-primary) / 0.5;
 text-decoration: line-through;
 -webkit-text-decoration-color: rgb(var(--button-text-color));
 text-decoration-color: rgb(var(--button-text-color));
 pointer-events: none;
}
.product-card--info-outside .product-card__info {
 padding-block-start: 1rem;
}
.product-card--info-inside .product-card__info {
 z-index: 1;
 pointer-events: none;
 grid-area: 1 / 1 / span 2 / -1;
}
.product-list {
 --product-list-default-column-count: 2;
 --product-list-total-gap-width: calc(
  (
    var(--product-list-column-count, var(--product-list-default-column-count)) -
     1
   ) *
   (var(--product-list-column-gap) + var(--product-list-card-border-width, 0px))
 );
 --product-list-card-width: calc(
  (100% - var(--product-list-total-gap-width)) /
   var(--product-list-column-count, var(--product-list-default-column-count))
 );
 grid: auto-flow dense / repeat(
   auto-fit,
   minmax(
    0,
    max(var(--product-list-card-min-width, 0px), var(--product-list-card-width))
   )
  );
 justify-content: safe start;
 align-items: stretch;
 column-gap: var(--product-list-column-gap);
 row-gap: var(--product-list-row-gap);
 display: grid;
}
@supports (grid-template-rows: subgrid) {
 .product-list > * {
  grid-template-rows: subgrid;
  grid-row: span var(--product-card-row-count);
 }
}
.product-list--padded {
 --product-list-padding-inline: clamp(
  0px,
  var(--product-list-column-gap) - 4px,
  min(1.75rem, var(--product-list-column-gap))
 );
 padding-inline: var(--product-list-padding-inline);
}
.product-list--carousel {
 grid: auto / auto-flow var(--product-list-card-width);
}
.product-list--carousel:has(.product-card__swatch-list) {
 padding-block-end: 5px;
}
@supports (grid-template-rows: subgrid) {
 .floating-controls-container
  .product-list--carousel:has(.product-card--info-outside) {
  grid-template-rows: subgrid;
  grid-row: 1 / span var(--product-card-row-count);
  display: grid;
 }
}
.product-card--highlight {
 grid-column: span 2;
}
@media screen and (max-width: 699px) {
 .product-list--carousel {
  --product-list-card-width: min(300px, 65%);
 }
 .sm-max\:product-list--carousel {
  grid: auto / auto-flow var(--product-list-card-width);
 }
}
@media screen and (max-width: 999px) {
 .md-max\:product-list--carousel {
  grid: auto / auto-flow var(--product-list-card-width);
 }
}
@media screen and (min-width: 700px) {
 .product-list {
  --product-list-card-min-width: 10rem;
  --product-list-default-column-count: 2;
 }
 @supports (grid-template-rows: subgrid) {
  .product-list .product-card--highlight {
   grid-row: span calc(var(--product-card-row-count) * 2);
  }
  .product-list .product-card--highlight .product-card__figure {
   grid-row: 1 / span max(2, var(--product-card-row-count) * 2 - 1);
  }
  .product-list .product-card--highlight .product-card__media,
  .product-list .product-card--highlight .product-card__image {
   height: 100%;
  }
 }
 .product-list--spotlight {
  scroll-snap-type: x mandatory;
  grid: auto / auto-flow 100%;
  justify-content: safe start;
 }
 .product-list--spotlight .product-card {
  scroll-snap-align: start;
  scroll-snap-stop: always;
 }
 .product-card--info-outside.product-card--blends
  :is(.product-list--spotlight .product-card__info) {
  padding-inline: 0;
 }
 .product-list--spotlight:has(.product-card__swatch-list) {
  padding-block-end: 5px;
 }
 .sm\:product-list--carousel {
  grid: auto / auto-flow var(--product-list-card-width);
 }
}
@media screen and (min-width: 1000px) {
 .product-list {
  --product-list-default-column-count: 4;
 }
 .product-card--highlight {
  grid-area: span 2 / span 2;
 }
 .md\:product-list--carousel {
  grid: auto / auto-flow var(--product-list-card-width);
 }
 @supports (grid-template-rows: subgrid) {
  .product-card--highlight {
   grid-area: span calc(var(--product-card-row-count) * 2) / span 2;
  }
 }
}
.product-list__promo {
 grid-column: 1 / -1;
}
@media screen and (max-width: 699px) {
 .product-list__promo:not(:last-child) {
  margin-block-end: calc(
   -1 * var(--product-list-row-gap) + var(--product-list-column-gap)
  );
 }
 .product-list__promo .content-box__background-media {
  position: relative !important;
 }
}
@media screen and (min-width: 700px) {
 .product-list__promo {
  grid-column: span var(--product-list-promo-column-span);
  grid-row: span var(--product-list-promo-row-span);
 }
 @supports (grid-template-rows: subgrid) {
  .product-list__promo {
   grid-row: span
    calc(var(--product-card-row-count) * var(--product-list-promo-row-span));
   gap: 0;
   display: grid;
  }
  .product-list:has(.product-card--info-outside)
   .product-list__promo
   .content-box {
   grid-row: span
    calc(var(--product-card-row-count) * var(--product-list-promo-row-span) - 1);
  }
  .product-list:has(.product-card--info-inside)
   .product-list__promo
   .content-box {
   grid-row: span
    calc(var(--product-card-row-count) * var(--product-list-promo-row-span));
  }
 }
}
@media screen and (max-width: 699px) {
 .product-list[mobile-items-per-row="1"] {
  --product-list-column-count: 1;
 }
 .product-list[mobile-items-per-row="2"] {
  --product-list-column-count: 2;
 }
 .product-list[mobile-items-per-row="3"] {
  --product-list-column-count: 3;
  --product-list-row-gap: var(--product-list-column-gap);
 }
 .product-list[mobile-items-per-row="3"] .product-list__promo,
 .product-list[mobile-items-per-row="3"] .product-card__figure .badge-list,
 .product-list[mobile-items-per-row="3"] .product-card__info,
 .product-list[mobile-items-per-row="3"] .product-card__quick-buy {
  display: none;
 }
 .product-list[mobile-items-per-row="3"] .product-card--highlight {
  grid-column: span 1;
 }
}
@media screen and (min-width: 700px) {
 .product-list[desktop-layout="thumbnails"] {
  --product-card-row-count: 1;
  --product-list-column-count: 5;
  --product-list-card-min-width: 5rem;
  --product-list-row-gap: var(--product-list-column-gap);
 }
 .product-list[desktop-layout="thumbnails"] .product-list__promo,
 .product-list[desktop-layout="thumbnails"] .product-card__figure .badge-list,
 .product-list[desktop-layout="thumbnails"] .product-card__info,
 .product-list[desktop-layout="thumbnails"] .product-card__quick-buy,
 .product-list[desktop-layout="thumbnails"]
  .product-card__floating-size-selector {
  display: none;
 }
 .product-list[desktop-layout="thumbnails"] .product-card--highlight {
  grid-row-start: span var(--product-card-row-count);
  grid-column: span 1;
  grid-row-end: auto;
 }
}
@media screen and (min-width: 1000px) {
 .product-list[desktop-layout="thumbnails"] {
  --product-list-column-count: 6;
 }
}
@media screen and (min-width: 1150px) {
 .product-list[desktop-layout="thumbnails"] {
  --product-list-column-count: 7;
 }
}
.product-list__intro-block {
 grid-column: 1 / -1;
 grid-row: span var(--product-card-row-count);
 scroll-snap-align: start;
}
@supports (grid-template-rows: subgrid) {
 .product-list--carousel .product-list__intro-block {
  grid-template-rows: subgrid;
  gap: 0;
  display: grid;
 }
}
@media screen and (max-width: 999px) {
 @supports (grid-template-rows: subgrid) {
  .md-max\:product-list--carousel .product-list__intro-block {
   grid-template-rows: subgrid;
   gap: 0;
   display: grid;
  }
 }
}
@media screen and (min-width: 1000px) {
 .product-list__intro-block {
  z-index: 1;
  grid-column: span 1;
  position: sticky;
  inset-inline-start: 0;
 }
 @supports (grid-template-rows: subgrid) {
  .product-list__intro-block {
   grid-template-rows: subgrid;
   gap: 0;
   display: grid;
  }
 }
 .product-list--carousel:has(.product-list__intro-block) {
  scroll-padding-inline-start: 25vw;
 }
}
.prose {
 --prose-default-spacing: 1.5rem;
 --prose-heading-spacing: clamp(0px, 1.2em, 2.75rem);
 --prose-subheading-spacing: 2.5rem;
 --prose-button-spacing: 1.5rem;
 --prose-media-spacing: 1.75rem;
 --prose-blockquote-spacing: calc(var(--prose-default-spacing) * 3.5)
  calc(var(--prose-default-spacing) * 2);
 --prose-adjacent-heading-spacing: 1em;
 --prose-combination-display-heading-paragraph-spacing: 1.5rem;
 --prose-combination-subheading-heading-spacing: 1.75rem;
 --prose-combination-subheading-paragraph-spacing: 1.5rem;
}
@media screen and (min-width: 1000px) {
 .prose {
  --prose-default-spacing: 2rem;
  --prose-heading-spacing: clamp(0px, 1em, 3.5rem);
  --prose-subheading-spacing: 2.5rem;
  --prose-button-spacing: 2rem;
  --prose-media-spacing: 2.5rem;
  --prose-adjacent-heading-spacing: 1em;
  --prose-combination-display-heading-paragraph-spacing: 2rem;
  --prose-combination-subheading-heading-spacing: 2rem;
  --prose-combination-subheading-paragraph-spacing: 1.5rem;
 }
}
.prose--compact {
 --prose-default-spacing: 1rem;
 --prose-heading-spacing: 1rem;
 --prose-subheading-spacing: 1rem;
 --prose-button-spacing: 1rem;
 --prose-media-spacing: 1.25rem;
 --prose-adjacent-heading-spacing: 0.5em;
 --prose-combination-display-heading-paragraph-spacing: 1rem;
 --prose-combination-subheading-heading-spacing: 1rem;
 --prose-combination-subheading-paragraph-spacing: 1rem;
}
@media screen and (min-width: 1000px) {
 .prose--compact {
  --prose-default-spacing: 1.25rem;
  --prose-heading-spacing: 1.5rem;
  --prose-subheading-spacing: 1.5rem;
  --prose-button-spacing: 1.25rem;
  --prose-media-spacing: 1.5rem;
  --prose-adjacent-heading-spacing: 0.5em;
  --prose-combination-display-heading-paragraph-spacing: 1.75rem;
  --prose-combination-subheading-heading-spacing: 1.25rem;
  --prose-combination-subheading-paragraph-spacing: 1rem;
 }
}
.prose {
 margin-trim: block;
 overflow-wrap: anywhere;
 width: 100%;
 display: block;
}
.prose .vertical-text:not(:first-child) {
 margin-inline-start: var(--prose-heading-spacing);
}
.prose > :first-child,
.prose > div:first-child > :first-child,
.prose > style:first-child + *,
.prose > meta:first-child + * {
 margin-block-start: 0;
}
.prose > :last-child,
.prose > div:last-child > :last-child {
 margin-block-end: 0;
}
.prose :where(p, div):empty {
 display: none;
}
.prose :where(p, ol, ul, form, hr, table, .accordion) {
 margin-block-start: var(--prose-default-spacing);
}
.prose
 :where(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .display-xl,
  .display-l,
  .display-m,
  .h1,
  .h2,
  .h3,
  .h4,
  .h5,
  .h6,
  .h7
 ) {
 margin-block-start: var(--prose-heading-spacing);
}
.prose
 :where(
  :where(img, picture, figure, video, object, svg):not(
    [style*="float: left"],
    [style*="float: right"],
    .icon
   )
 ) {
 margin-block: var(--prose-media-spacing);
}
.prose :where(figure, picture) :where(img, svg, video) {
 margin-block: 0;
}
.prose :where(.link, .link-reversed, .link-faded) {
 display: inline-block;
}
.prose :where(figure:has(> img)) {
 display: table;
}
.prose :where(figure:has(> img)) figcaption {
 caption-side: bottom;
 display: table-caption;
}
.prose :where(blockquote) {
 margin-block: var(--prose-blockquote-spacing);
 font-size: var(--text-h5);
}
.prose :where(blockquote):before {
 content: "";
 background-image: var(--quotation-mark-svg);
 opacity: 0.1;
 background-repeat: no-repeat;
 background-size: 100%;
 width: 42px;
 height: 39px;
 margin-block-start: -18px;
 margin-inline-start: -2px;
 position: absolute;
}
.prose
 :where(iframe[src*="youtube"], iframe[src*="youtu.be"], iframe[src*="vimeo"]) {
 aspect-ratio: 16 / 9;
 width: 100%;
 height: auto;
}
.prose :where(br) {
 margin-block: 0 !important;
}
.prose :where(.subheading) {
 margin-block-start: var(--prose-subheading-spacing);
}
.prose :where(.icon, .link) {
 margin-block-start: var(--prose-default-spacing);
}
.prose :where(button, .button-group, .button) {
 margin-block-start: var(--prose-button-spacing);
}
.prose
 :where(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .display-xl,
  .display-l,
  .display-m,
  .h1,
  .h2,
  .h3,
  .h4,
  .h5,
  .h6,
  .h7
 )
 + :where(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .display-xl,
  .display-l,
  .display-m,
  .h1,
  .h2,
  .h3,
  .h4,
  .h5,
  .h6,
  .h7
 ),
.prose
 :where(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .display-xl,
  .display-l,
  .display-m,
  .h1,
  .h2,
  .h3,
  .h4,
  .h5,
  .h6,
  .h7
 )
 + :where(
  :has(
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    .display-xl,
    .display-l,
    .display-m,
    .h1,
    .h2,
    .h3,
    .h4,
    .h5,
    .h6,
    .h7
   )
 )
 :where(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .display-xl,
  .display-l,
  .display-m,
  .h1,
  .h2,
  .h3,
  .h4,
  .h5,
  .h6,
  .h7
 ):first-child {
 margin-block-start: var(--prose-adjacent-heading-spacing);
}
.prose
 :where(.subheading)
 + :where(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .display-xl,
  .display-l,
  .display-m,
  .h1,
  .h2,
  .h3,
  .h4,
  .h5,
  .h6,
  .h7
 ) {
 margin-block-start: min(
  0.8em,
  var(--prose-combination-subheading-heading-spacing)
 );
}
.prose
 :where(.subheading, .icon)
 + :where(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .display-xl,
  .display-l,
  .display-m,
  .h1,
  .h2,
  .h3,
  .h4,
  .h5,
  .h6,
  .h7,
  .subheading,
  .icon
 ) {
 margin-block-start: var(--prose-combination-subheading-heading-spacing);
}
.prose
 :where(.display-xl, .display-l, .display-m)
 + :where(
  p:not(.display-xl, .display-l, .display-m, .h1, .h2, .h3, .h4, .h5, .h6, .h7)
 ) {
 margin-block-start: var(--prose-combination-display-heading-paragraph-spacing);
}
.prose
 :where(.subheading, .subheading-badge)
 + :where(
  p:not(.display-xl, .display-l, .display-m, .h1, .h2, .h3, .h4, .h5, .h6, .h7)
 ) {
 margin-block-start: var(--prose-combination-subheading-paragraph-spacing);
}
.prose :where(blockquote) + *,
.prose :where(blockquote) + * > :first-child,
.prose
 :where(
  :where(img, picture, figure, video, object, svg):not(
    [style*="float: left"],
    [style*="float: right"],
    .icon
   )
 )
 + *,
.prose
 :where(
  :where(img, picture, figure, video, object, svg):not(
    [style*="float: left"],
    [style*="float: right"],
    .icon
   )
 )
 + *
 > :first-child {
 margin-block-start: 0;
}
.prose-justify-start,
.prose-justify-left {
 text-align: start;
}
:where(:is(.prose-justify-start, .prose-justify-left) > *) {
 margin-inline: 0 auto;
}
.prose-justify-center {
 text-align: center;
}
:where(.prose-justify-center > *) {
 margin-inline: auto;
}
.prose-justify-center .button-group {
 justify-content: safe center;
}
.prose-justify-center .vertical-text {
 justify-self: center;
}
.prose-justify-end,
.prose-justify-right {
 text-align: end;
}
:where(:is(.prose-justify-end, .prose-justify-right) > *) {
 margin-inline: auto 0;
}
:is(.prose-justify-end, .prose-justify-right) .button-group {
 justify-content: end;
}
:is(.prose-justify-end, .prose-justify-right) .vertical-text {
 justify-self: end;
}
@media screen and (min-width: 700px) {
 .sm\:prose-justify-start,
 .sm\:prose-justify-left {
  text-align: start;
 }
 :where(:is(.sm\:prose-justify-start, .sm\:prose-justify-left) > *) {
  margin-inline: 0 auto;
 }
 .sm\:prose-justify-center {
  text-align: center;
 }
 :where(.sm\:prose-justify-center > *) {
  margin-inline: auto;
 }
 .sm\:prose-justify-center .button-group {
  justify-content: end;
 }
 .sm\:prose-justify-end,
 .sm\:prose-justify-right {
  text-align: end;
 }
 :where(:is(.sm\:prose-justify-end, .sm\:prose-justify-right) > *) {
  margin-inline: auto 0;
 }
 :is(.sm\:prose-justify-end, .sm\:prose-justify-right) .button-group {
  justify-content: end;
 }
}
@media screen and (min-width: 1000px) {
 .prose :where(blockquote):before {
  width: 62px;
  height: 57px;
  margin-block-start: -26px;
 }
 .md\:prose-justify-start,
 .md\:prose-justify-left {
  text-align: start;
 }
 :where(:is(.md\:prose-justify-start, .md\:prose-justify-left) > *) {
  margin-inline: 0 auto;
 }
 .md\:prose-justify-center {
  text-align: center;
 }
 :where(.md\:prose-justify-center > *) {
  margin-inline: auto;
 }
 .md\:prose-justify-end,
 .md\:prose-justify-right {
  text-align: end;
 }
 :where(:is(.md\:prose-justify-end, .md\:prose-justify-right) > *) {
  margin-inline: auto 0;
 }
}
.link,
.prose
 a:not(
  .display-xl,
  .display-l,
  .display-m,
  .h1,
  .h2,
  .h3,
  .h4,
  .h5,
  .h6,
  .h7,
  .button
 ) {
 background: linear-gradient(to right, currentColor, currentColor) 0 100% / 100%
  1px no-repeat;
 background-position-x: var(--transform-origin-start);
 text-decoration: none;
 transition: color 0.3s ease-in-out, background-size 0.3s ease-in-out;
 position: relative;
}
@media screen and (pointer: fine) {
 :is(
   .link,
   .prose
    a:not(
     .display-xl,
     .display-l,
     .display-m,
     .h1,
     .h2,
     .h3,
     .h4,
     .h5,
     .h6,
     .h7,
     .button
    )
  ):not([aria-current="true"]):hover {
  background-size: 0% 1px;
  background-position-x: var(--transform-origin-end);
 }
}
.link-reversed {
 background: linear-gradient(to right, currentColor, currentColor) 0 100% / 0
  1px no-repeat;
 background-position-x: var(--transform-origin-end);
 text-decoration: none;
 transition: background-size 0.2s ease-in-out;
}
.link-reversed[aria-current="true"],
.link-reversed[aria-selected="true"] {
 background-size: 100% 1px;
}
.link-reversed:has(+ [open]) {
 background-size: 100% 1px;
}
@media screen and (pointer: fine) {
 .link-reversed:not([aria-current="true"], [aria-selected="true"]):hover {
  background-size: 100% 1px;
  background-position-x: var(--transform-origin-start);
 }
}
.link-faded {
 color: rgb(var(--text-color) / 0.6);
 transition: color 0.2s ease-in-out;
}
.link-faded[aria-current="true"] {
 color: rgb(var(--text-color));
}
@media screen and (pointer: fine) {
 .link-faded:hover {
  color: rgb(var(--text-color));
 }
}
.link-faded-reverse {
 transition: color 0.2s ease-in-out;
}
@media screen and (pointer: fine) {
 .link-faded-reverse:hover {
  color: rgb(var(--text-color) / 0.6);
 }
}
.link-faded.link-reversed {
 transition: background-size 0.2s ease-in-out, color 0.2s ease-in-out;
}
table {
 width: 100%;
}
table caption {
 text-align: inherit;
 margin-block-end: 0.5rem;
}
:where(.table) th {
 text-align: start;
}
:where(.table) td:where(:not(:empty)) {
 border-block-width: 1px;
}
:where(.table) th,
:where(.table) td {
 padding: 0.75rem 0.25rem;
}
:is(:where(.table) th, :where(.table) td):first-child {
 padding-inline-start: 0.5rem;
}
:is(:where(.table) th, :where(.table) td):last-child {
 text-align: end;
 padding-inline-end: 0.5rem;
}
:where(.table) tr[onclick] {
 cursor: pointer;
 transition: background 0.2s ease-in-out;
}
:where(.table) tr[onclick]:hover {
 background: rgb(var(--text-color) / 0.03);
}
:where(.table) tfoot td {
 border: none;
 padding-block: 0.8rem 0;
}
:where(.table) tfoot tr:first-child td {
 padding-block-start: 1.65rem;
}
@media screen and (min-width: 700px) {
 :where(.table) th,
 :where(.table) td {
  padding: 1.25rem 0.5rem;
 }
 :is(:where(.table) th, :where(.table) td):first-child {
  padding-inline-start: 1rem;
 }
 :is(:where(.table) th, :where(.table) td):last-child {
  padding-inline-end: 1rem;
 }
}
.table--sm :where(td, th) {
 padding: 0.5rem;
}
.table--remove-trailing-space th:first-child,
.table--remove-trailing-space td:first-child {
 padding-inline-start: 0;
}
.table--remove-trailing-space th:last-child,
.table--remove-trailing-space td:last-child {
 padding-inline-end: 0;
}
.prose table thead {
 background: rgb(var(--text-color));
 color: rgb(var(--background));
}
.prose table th,
.prose table td {
 padding: 0.6rem 1rem;
}
.prose table th {
 font-weight: var(--text-font-weight);
}
.prose table td {
 text-align: center;
}
.prose table tbody tr {
 border-block: 1px solid rgb(var(--border-color));
}
.prose table thead + tbody tr:first-child {
 border-block-start: none;
}
.prose table tbody th {
 text-align: start;
 background: rgb(var(--text-color) / 0.04);
}
.subheading {
 font: var(--subheading-font-style) var(--subheading-font-weight)
  var(--subheading-font-size) / normal var(--subheading-font-family);
 letter-spacing: var(--subheading-letter-spacing);
 text-transform: var(--subheading-text-transform);
}
:lang(ar) .subheading {
 letter-spacing: 0;
}
.subheading-xs {
 font-size: calc(var(--subheading-font-size) - 1px);
}
.subheading-badge {
 max-width: max-content;
 padding: calc(var(--subheading-has-padding) * 0.3rem)
  calc(var(--subheading-has-padding) * 0.75rem);
 border: var(--subheading-border);
 background: rgb(var(--subheading-background));
 color: rgb(var(--subheading-text-color));
 border-radius: var(--subheading-border-radius);
 white-space: break-spaces;
 vertical-align: middle;
 align-items: center;
 transition: all 0.2s ease-in-out;
 display: flex;
}
:where(.prose :where(.max-w-xs, .max-w-sm, .max-w-md, .max-w-lg))
 > .subheading-badge {
 margin-inline: inherit;
}
.subheading-badge--with-icon {
 align-items: baseline;
}
.subheading-badge--with-icon:before {
 content: "";
 background: currentColor;
 flex-shrink: 0;
 width: 0.5625rem;
 height: 0.5625rem;
 margin-inline-end: 0.75rem;
}
@supports (height: 1cap) {
 .subheading-badge--with-icon:before {
  width: 1cap;
  height: 1cap;
 }
}
@container style(--subheading-text-transform: lowercase) {
 .subheading-badge--with-icon:before {
  width: 1ex;
  height: 1ex;
 }
}
.subheading-badge--icon-circle:before {
 border-radius: 100%;
}
.subheading-badge--icon-diamond:before {
 width: 0.4375rem;
 height: 0.4375rem;
 transform: translateY(-1px) rotate(45deg);
}
.tab-pills {
 grid-template-columns: minmax(0, 1fr);
 align-content: start;
 row-gap: 2rem;
 display: grid;
}
.tab-pills::part(tab-list) {
 background: rgb(var(--text-color) / 0.05);
 border-radius: 0.5rem;
 grid-auto-columns: minmax(0, 1fr);
 grid-auto-flow: column;
 padding: 0.375rem;
 display: grid;
}
.tab-pills > button[role="tab"] {
 color: rgb(var(--text-color) / 0.5);
 background: none;
 border-radius: 4px;
 justify-content: safe center;
 align-items: center;
 gap: 0.5rem;
 padding: 14px 8px;
 transition: background 0.1s ease-in, color 0.1s ease-in,
  box-shadow 0.1s ease-in;
 display: flex;
}
.tab-pills > button[role="tab"][aria-selected="true"] {
 background: rgb(var(--background));
 color: rgb(var(--text-color));
 box-shadow: 0 2px 4px #00000014;
}
.tab-pills__dot-indicator {
 --indicator-size: 0.25rem;
 position: relative;
}
.tab-pills__dot-indicator:after {
 content: "";
 width: var(--indicator-size);
 height: var(--indicator-size);
 background: rgb(var(--on-sale-text));
 border-radius: 100%;
 position: absolute;
 inset-block-start: -1px;
 inset-inline-end: calc(-1 * (var(--indicator-size) + 3px));
}
@media screen and (min-width: 700px) {
 .tab-pills__dot-indicator {
  --indicator-size: 0.375rem;
 }
}
@media (prefers-reduced-motion: no-preference) {
 .features--page-transition {
  opacity: 0;
 }
}
.constrained-image {
 width: var(--image-mobile-max-width, var(--image-max-width));
 flex-shrink: 0;
 max-width: 100%;
}
@media screen and (min-width: 700px) {
 .constrained-image {
  width: var(--image-max-width);
 }
}
.text-with-icon {
 --text-with-icon-gap: 0.5rem;
 gap: var(--text-with-icon-gap);
 align-items: center;
 display: flex;
}
.text-with-icon > svg {
 flex-shrink: 0;
}
.text-with-icon--stacked {
 flex-direction: column;
 align-items: flex-start;
}
@media screen and (min-width: 700px) {
 .text-with-icon {
  --text-with-icon-gap: 1rem;
 }
}
.icon {
 height: auto;
 width: var(--icon-mobile-max-width, var(--icon-max-width, auto));
 transition: transform 0.2s;
}
.group[aria-expanded="true"] .icon.group-expanded\:rotate {
 transform: rotate(180deg);
}
[dir="rtl"] .icon--direction-aware {
 scale: -1;
}
.capped-icon {
 width: auto;
 height: 1cap;
}
.offset-icon {
 --icon-baseline-distance: 0.825em;
 top: var(--icon-baseline-distance);
 position: relative;
 translate: 0 -50%;
}
@supports (top: 1lh) {
 .offset-icon {
  top: 0.5lh;
 }
}
@media screen and (min-width: 700px) {
 .icon {
  width: var(--icon-max-width, auto);
 }
}
.vertically-separated-list {
 align-items: center;
 column-gap: 1.5rem;
 display: flex;
}
.vertically-separated-list hr {
 background: rgb(var(--text-color) / 0.15);
 width: 1px;
 height: 1rem;
}
.inventory {
 row-gap: 0.7rem;
 display: grid;
}
.inventory .progress-bar {
 max-width: 18rem;
}
.inventory__text {
 align-items: center;
 justify-content: inherit;
 column-gap: 0.5rem;
 display: flex;
}
.inventory__text:before {
 content: "";
 background: currentColor;
 border-radius: 100%;
 width: 0.4375rem;
 height: 0.4375rem;
 position: relative;
}
@property --progress-bar-progress {
 syntax: "<number>";
 inherits: true;
 initial-value: 0;
}
.progress-bar {
 background: color-mix(in srgb, currentColor 20%, transparent);
 width: 100%;
 height: 3px;
 display: block;
 position: relative;
 overflow: hidden;
}
.progress-bar:before {
 content: "";
 width: 100%;
 height: 100%;
 transform: scaleX(var(--progress-bar-progress, 0));
 transform-origin: var(--transform-origin-start);
 background: currentColor;
 display: block;
}
.progress-bar--limit-width {
 max-width: min(25vw, 180px);
 height: 2px;
 margin-inline: auto;
}
[data-tooltip] {
 --tooltip-text-color: var(--text-color);
 --tooltip-background: var(--background);
 position: relative;
}
@media screen and (pointer: fine) {
 [data-tooltip]:after {
  content: attr(data-tooltip);
  inset-block-end: calc(100% + var(--tooltip-offset, -0.5rem));
  text-transform: uppercase;
  border-radius: min(1.5rem, var(--button-border-radius));
  background: rgb(var(--tooltip-background));
  width: max-content;
  max-width: 15rem;
  color: rgb(var(--tooltip-text-color));
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  z-index: 1;
  box-shadow: 0 3px 6px rgb(var(--text-color) / 0.05);
  border-width: 1px;
  justify-self: center;
  padding: 0.2rem 0.5rem;
  font-size: 0.75rem;
  transition: opacity 0.1s ease-in-out, visibility 0.1s ease-in-out,
   scale 0.1s ease-in-out;
  position: absolute;
  left: 50%;
  transform: translate(-50%) scale3d(0.9, 0.9, 1);
 }
 [data-tooltip-style="color"]:after {
  box-shadow: none;
  transform: none;
 }
 [data-tooltip]:hover:after {
  visibility: visible;
  opacity: 1;
  scale: 1;
 }
}
.localization-selectors {
 flex-wrap: wrap;
 justify-content: safe center;
 gap: 0.75rem 1.75rem;
 display: flex;
}
.country-flag {
 outline: 1px solid rgb(var(--border-color));
 width: 20px;
 height: 15px;
}
.payment-methods {
 flex-wrap: wrap;
 gap: 1rem;
 display: flex;
}
.badge {
 width: max-content;
 font-family: var(--heading-font-family);
 font-weight: 600;
 font-style: var(--heading-font-style);
 letter-spacing: var(--heading-letter-spacing);
 -webkit-font-smoothing: antialiased;
 text-transform: uppercase;
 padding: 0.15rem 0.375rem;
 font-size: 0.5625rem;
 display: block;
}
@media screen and (min-width: 700px) {
 .badge {
  font-size: 0.625rem;
 }
}
.badge.vertical-text {
 white-space: nowrap;
 padding: 0.375rem 0.15rem;
}
@supports (text-box: trim-both cap alphabetic) {
 .badge {
  text-box: trim-both cap alphabetic;
  padding-block: 0.375rem;
 }
 .badge.vertical-text {
  padding: 0.375rem;
 }
}
.badge--on-sale {
 background: rgb(var(--on-sale-badge-background));
 color: rgb(var(--on-sale-badge-text));
}
.badge--sold-out {
 background: rgb(var(--sold-out-badge-background));
 color: rgb(var(--sold-out-badge-text));
}
.badge--custom {
 background: rgb(var(--custom-badge-background));
 color: rgb(var(--custom-badge-text));
}
.badge-list {
 flex-wrap: wrap;
 align-items: start;
 gap: 0.25rem;
 display: flex;
}
.badge-list--column {
 flex-direction: column;
}
.price-list {
 flex-wrap: wrap;
 align-items: flex-end;
 column-gap: 0.75rem;
 display: flex;
 position: relative;
}
.quantity-selector {
 --quantity-selector-input-width: 3ch;
 --tooltip-offset: calc(-1 * var(--quantity-selector-height) / 2 + 1rem);
 border-radius: var(--button-border-radius);
 border: 1px solid;
 grid-template-columns: 3rem auto 3rem;
 grid-auto-columns: minmax(0, 1fr);
 justify-self: start;
 min-height: 2rem;
 transition: border 0.2s;
 display: inline-grid;
}
.quantity-selector__button {
 place-content: center;
 min-height: 100%;
 display: grid;
 position: relative;
}
.quantity-selector__button svg {
 transition: opacity 0.1s;
}
.quantity-selector__button[disabled] svg {
 opacity: 0.4;
}
.quantity-selector__input {
 -webkit-appearance: textfield;
 appearance: textfield;
 min-width: var(--quantity-selector-input-width);
 width: var(--quantity-selector-character-count, 1ch);
 text-align: center;
 background: none;
}
.quantity-selector__input:focus {
 outline: none;
}
.quantity-selector__input::-webkit-outer-spin-button {
 -webkit-appearance: none;
 margin: 0;
}
.quantity-selector__input::-webkit-inner-spin-button {
 -webkit-appearance: none;
 margin: 0;
}
.quantity-selector--line-item {
 border-color: rgb(var(--border-color));
 grid-template-columns: 2.5rem auto 2.5rem;
}
.rating-badge {
 flex-wrap: wrap;
 align-items: center;
 column-gap: 0.375rem;
 line-height: normal;
 display: flex;
}
.rating-badge__stars {
 column-gap: 0.125rem;
 display: flex;
}
.social-media {
 align-items: center;
 justify-content: inherit;
 flex-wrap: wrap;
 gap: 1rem 2rem;
 display: flex;
}
@media screen and (pointer: fine) {
 .social-media__item {
  transition: opacity 0.2s;
 }
 .social-media__item:hover ~ * {
  opacity: 0.4;
 }
 .social-media__item:has(~ .social-media__item:hover) {
  opacity: 0.4;
 }
}
.meta-information {
 flex-wrap: wrap;
 align-items: center;
 column-gap: 0.75rem;
 display: flex;
}
.meta-information > :not(.shape) ~ :before {
 content: "";
 background: currentColor;
 width: 1px;
 height: 0.5625rem;
 margin-inline-end: 0.75rem;
 display: inline-block;
}
.share-buttons {
 align-items: center;
 gap: 1.5rem;
 display: flex;
}
.share-buttons--native:not([hidden]) + * {
 display: none;
}
@media screen and (pointer: fine) {
 .share-buttons__item {
  transition: opacity 0.2s;
 }
 .share-buttons__item:hover ~ * {
  opacity: 0.4;
 }
 .share-buttons__item:has(~ .share-buttons__item:hover) {
  opacity: 0.4;
 }
}
@media screen and (pointer: fine) {
 .faded-linklist :where(a, button) {
  max-width: max-content;
  text-align: inherit;
  transition: color 0.2s;
  display: block;
 }
 .faded-linklist li:hover ~ * > :where(a, button) {
  color: rgb(var(--text-color) / 0.6);
 }
 .faded-linklist li:has(~ li:hover) > :where(a, button) {
  color: rgb(var(--text-color) / 0.6);
 }
}
.figure-with-vertical-caption > figcaption {
 margin-inline: 1rem;
}
@media screen and (min-width: 1000px) {
 .figure-with-vertical-caption {
  grid-template-columns: minmax(0, 1fr);
  grid-auto-flow: column;
  column-gap: 1rem;
  display: grid;
 }
 .figure-with-vertical-caption .scrolling-content {
  margin-block: calc(-1 * var(--container-gutter));
 }
}
@media (pointer: fine) {
 .is-scrollable[allow-drag] {
  cursor: grab;
 }
 .is-scrollable[allow-drag]:active {
  cursor: grabbing;
  -webkit-user-select: none;
  user-select: none;
  scroll-snap-type: none;
 }
}
.custom-cursor {
 z-index: 2;
 pointer-events: none;
 opacity: 0;
 visibility: hidden;
 transition: opacity 0.1s, scale 0.1s, visibility 0.1s;
 display: none;
 position: absolute;
 top: 0;
 left: 0;
 scale: 0.5;
}
@media screen and (pointer: fine) {
 .custom-cursor {
  display: block;
 }
 .custom-cursor.is-visible {
  opacity: 1;
  visibility: visible;
  scale: 1;
 }
 :has(> .custom-cursor:not([for-links])) {
  cursor: none;
 }
 :has(> .custom-cursor[for-links]) a {
  cursor: none;
 }
}
.placeholder-svg {
 max-width: 100%;
 height: 100%;
 display: block;
}
.spacer {
 padding-block-start: var(--spacer-mobile, 0px);
 display: block !important;
}
@media screen and (min-width: 700px) {
 .spacer {
  padding-block-start: var(--spacer-desktop, 0px);
 }
}
.loading-bar {
 z-index: 2000;
 pointer-events: none;
 transform-origin: var(--transform-origin-start);
 background: #000;
 width: 100%;
 height: 2px;
 position: fixed;
 top: 0;
 left: 0;
 transform: scaleX(0);
}
@media screen and (min-width: 700px) {
 .loading-bar {
  height: 3px;
 }
}
.h-captcha {
 display: contents;
}
split-lines {
 overflow-wrap: anywhere;
}
product-rerender {
 display: contents;
}
.account-forms {
 grid-template-columns: minmax(0, 1fr);
 align-content: center;
 row-gap: 2rem;
 max-width: 26.5rem;
 margin-inline: auto;
 display: grid;
}
.customer-account__inner {
 padding-block: 2rem;
}
.customer-account--empty .customer-account__inner {
 padding-block: 6rem;
}
.customer-account__header {
 position: relative;
}
@media screen and (max-width: 699px) {
 .customer-account__nav {
  margin-inline: calc(-1 * var(--container-gutter));
  padding: 1rem var(--container-gutter);
  background: rgb(var(--background-secondary));
 }
 .customer-account__nav ul {
  flex-wrap: wrap;
  justify-content: safe center;
  column-gap: 2rem;
  display: flex;
 }
 .customer-account__back-button {
  margin-block-end: 1.5rem;
 }
}
@media screen and (min-width: 700px) {
 .customer-account__back-button {
  position: absolute;
  inset-block-start: 1rem;
  inset-inline-start: 0;
 }
}
@media screen and (min-width: 1000px) {
 .customer-account {
  grid-template-columns: minmax(0, 10rem) minmax(0, 1fr);
  padding-block: 4rem;
  display: grid;
 }
 .customer-account__inner {
  margin-inline-end: 10rem;
  padding-block: 0;
 }
 .customer-account__content {
  width: min(66rem, 100%);
  margin-inline: auto;
 }
 .customer-account__nav li {
  margin-block-start: 0.25rem;
 }
 .customer-account__nav li:last-child {
  margin-block-start: 1.5rem;
 }
}
.order-grid-item {
 border-width: 1px;
 grid-template-columns: minmax(0, 1fr);
 row-gap: 1.25rem;
 padding: 1.25rem;
 display: grid;
}
.order-grid-item__details {
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 1.05rem 0.5rem;
 display: grid;
}
.order {
 grid-template-columns: minmax(0, 1fr);
 row-gap: 1.5rem;
 display: grid;
}
.order .address-list {
 width: 100%;
}
@media screen and (min-width: 1400px) {
 .order {
  grid-template-columns: minmax(0, 1fr) minmax(0, 20rem);
  column-gap: 4.75rem;
  display: grid;
 }
}
.address-list {
 grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr));
 align-content: start;
 gap: 1rem;
 width: min(100%, 42rem);
 margin-inline: auto;
 display: grid;
}
.address {
 border-width: 1px;
 grid-template-columns: minmax(0, 1fr);
 align-content: start;
 row-gap: 1rem;
 padding: 1.25rem;
 display: grid;
}
@media screen and (min-width: 700px) {
 .address-list {
  gap: 2rem;
 }
 .address {
  padding: 2rem;
 }
}
.modal--age-verifier {
 --container-max-width: 30.25rem;
 --input-padding-block: 0.9125rem;
 z-index: 1000;
 width: 100vw;
 height: 100vh;
 padding: 1rem;
 position: fixed;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}
.modal--age-verifier:before {
 content: "";
 background: rgb(var(--page-overlay));
 width: 100vw;
 height: 100vh;
 -webkit-backdrop-filter: blur(var(--dialog-backdrop-blur));
 backdrop-filter: blur(var(--dialog-backdrop-blur));
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}
.modal--age-verifier[open] {
 display: block;
}
@supports (height: 100dvh) {
 .modal--age-verifier {
  width: 100dvw;
  height: 100dvh;
 }
}
.modal--age-verifier hr {
 --border-color: var(--text-color) / 0.05;
}
.age-verifier__content {
 background-color: rgb(var(--background) / 0.9);
 width: 100%;
 height: 100%;
 -webkit-backdrop-filter: blur(var(--dialog-backdrop-blur));
 backdrop-filter: blur(var(--dialog-backdrop-blur));
 isolation: isolate;
 place-content: safe center;
 margin-inline: auto;
 padding: 1.5rem;
 display: grid;
 overflow: auto;
}
.age-verifier__input-group {
 grid: auto / repeat(3, minmax(0, 1fr));
 gap: 0.75rem;
 display: grid;
}
.age-verifier__input-group .input::placeholder {
 opacity: 0.6;
 color: rgb(var(--text-color));
}
@media screen and (min-width: 700px) {
 .modal--age-verifier {
  --input-padding-block: 1.35rem;
 }
}
.announcement-bar {
 text-align: center;
 padding: 0.7rem var(--container-gutter);
 justify-content: safe center;
 align-items: center;
 column-gap: 0.75rem;
 padding-block: 0.7rem;
 display: flex;
}
.announcement-bar__message-list {
 flex-grow: 1;
 place-items: center;
 max-width: 35rem;
 display: grid;
}
.announcement-bar__message-list > * {
 grid-area: 1 / -1;
}
.announcement-bar__message-list > :not(.is-selected) {
 visibility: hidden;
}
@media screen and (min-width: 700px) {
 .announcement-bar {
  column-gap: 2.5rem;
  padding-block: 0.8rem;
 }
}
@property --before-after-cursor-position {
 syntax: "<length-percentage>";
 inherits: true;
 initial-value: 0%;
}
.before-after {
 --before-after-content-margin: 1.25rem;
 --before-after-cursor-size: 2.5rem;
 -webkit-user-select: none;
 user-select: none;
 touch-action: pan-x pan-y;
 -webkit-touch-callout: none;
 position: relative;
}
.before-after,
.before-after__image {
 display: grid;
}
:is(.before-after, .before-after__image) > * {
 grid-area: 1 / -1;
}
.before-after__image--after {
 z-index: 1;
}
.before-after__content {
 margin: var(--before-after-content-margin);
 isolation: isolate;
 transition: opacity 0.15s;
}
.is-dragging .before-after__content {
 opacity: 0;
}
.before-after__content--padded {
 padding: 4px;
}
.before-after__cursor {
 filter: drop-shadow(0 2px 4px #0000000d);
 pointer-events: auto;
 z-index: 1;
 display: grid;
 position: relative;
}
.before-after__cursor:before {
 content: "";
 background: rgb(var(--before-after-cursor-background));
 z-index: -1;
 position: absolute;
}
.before-after__cursor svg {
 width: var(--before-after-cursor-size);
 height: var(--before-after-cursor-size);
}
.before-after--horizontal {
 cursor: ew-resize;
}
.before-after--horizontal .before-after__image--after {
 clip-path: inset(0 0 0 var(--before-after-cursor-position, 0%));
}
[dir="rtl"] :is(.before-after--horizontal .before-after__image--after) {
 clip-path: inset(0 var(--before-after-cursor-position, 0%) 0 0);
}
.before-after--horizontal .before-after__cursor {
 justify-self: start;
 place-items: center start;
 inset-inline-start: calc(
  var(--before-after-cursor-position, 0%) - var(--before-after-cursor-size) / 2
 );
}
.before-after--horizontal .before-after__cursor:before {
 width: 0.125rem;
 height: 100%;
 inset-inline-start: calc(var(--before-after-cursor-size) / 2);
}
.before-after--vertical {
 cursor: ns-resize;
}
.before-after--vertical .before-after__image--after {
 clip-path: inset(var(--before-after-cursor-position, 0%) 0 0 0);
}
.before-after--vertical .before-after__cursor {
 align-self: start;
 place-items: start center;
 inset-block-start: calc(
  var(--before-after-cursor-position, 0%) - var(--before-after-cursor-size) / 2
 );
}
.before-after--vertical .before-after__cursor:before {
 width: 100%;
 height: 0.125rem;
 inset-block-start: calc(var(--before-after-cursor-size) / 2);
}
@media screen and (min-width: 1000px) {
 .before-after {
  --before-after-content-margin: 1.5rem;
  --before-after-cursor-size: 4.25rem;
 }
}
.blog-tags {
 border-block-end-width: 1px;
 grid-auto-columns: max-content;
 grid-auto-flow: column;
 justify-content: start;
 column-gap: 1.5rem;
 padding-block: 1rem;
 display: grid;
}
.blog-post-list-wrapper {
 padding-block: var(--container-gutter) var(--section-vertical-spacing);
}
@media screen and (min-width: 1000px) {
 .blog-tags {
  column-gap: 2.5rem;
  padding-block: 1.75rem;
 }
}
.blog-post-banner__image {
 width: 100%;
 max-height: none;
 margin-block-start: -3.75rem;
 margin-inline: auto;
}
@media screen and (min-width: 700px) {
 .blog-post-banner__image {
  width: min(45vw, 48rem);
 }
}
.article-comments {
 margin-block-start: var(--section-vertical-spacing);
}
.article-comments__list,
.article-comments__form {
 border-radius: min(12px, var(--button-border-radius));
}
.article-comments__list {
 padding: min(3rem, var(--container-gutter));
 background: rgb(var(--background-secondary));
}
.article-comments__form {
 padding: min(3rem, var(--container-gutter));
 border: 1px solid rgb(var(--border-color));
 grid-template-columns: minmax(0, 1fr);
 row-gap: 1rem;
 display: grid;
}
.article-comment {
 border-block-start-width: 1px;
 grid-template-columns: minmax(0, 1fr);
 row-gap: 12px;
 margin-block-start: 1.25rem;
 padding-block-start: 1.25rem;
 display: grid;
}
@media screen and (min-width: 1000px) {
 .article-comments__form {
  row-gap: 1.5rem;
 }
 .article-comment {
  margin-block-start: 1.75rem;
  padding-block-start: 1.75rem;
 }
}
.blog-post-prev-next {
 gap: var(--container-gutter);
 grid: auto / auto-flow 73vw;
 display: grid;
}
@media screen and (min-width: 700px) {
 .blog-post-prev-next {
  grid-template-columns: repeat(2, minmax(0, 1fr));
 }
}
.cart-header {
 text-align: center;
 grid-template-columns: minmax(0, 1fr);
 justify-items: center;
 row-gap: 1.6rem;
 display: grid;
}
.cart-header .free-shipping-bar {
 width: 100%;
 max-width: 26rem;
}
.cart {
 align-items: start;
 gap: 2rem 3.75rem;
 display: grid;
}
.cart__left .accordion {
 box-shadow: 0 1px rgb(var(--border-color));
}
.cart__right {
 padding: min(40px, var(--container-gutter));
 border-width: 1px;
 position: sticky;
 inset-block-start: calc(var(--sticky-area-height) + 20px);
}
@media screen and (max-width: 699px) {
 .cart th:nth-child(2),
 .cart th:nth-child(3),
 .cart td:nth-child(2),
 .cart td:nth-child(3) {
  display: none;
 }
}
@media screen and (min-width: 700px) {
 .cart .line-item__quantity-selector,
 .cart .line-item__line-price,
 .cart .line-item__unit-line-price {
  display: none;
 }
}
@media screen and (min-width: 1000px) {
 .cart {
  grid-template-columns: minmax(0, 1fr) 26rem;
 }
}
.drawer--cart::part(footer) {
 padding: 0;
}
.drawer--cart .free-shipping-bar {
 margin-block-start: -0.25rem;
}
.drawer--cart .tab-pills {
 grid-template-rows: auto minmax(0, 1fr);
}
.drawer--cart:has(.tab-pills)::part(header) {
 border-block-end: none;
}
.drawer--cart:has(.tab-pills)::part(body) {
 padding-block-start: 0;
}
@media screen and (max-width: 699px) {
 .drawer--cart {
  --drawer-max-width: none;
 }
}
.cart-drawer__footer-inner {
 padding: min(1.75rem, var(--drawer-footer-padding-block))
  var(--drawer-footer-padding-inline);
}
.cart-drawer__footer-actions {
 border-block-end-width: 1px;
 grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
 display: grid;
}
.cart-drawer__footer-action-button {
 text-align: center;
 justify-content: safe center;
 align-items: center;
 column-gap: 0.5rem;
 padding: 1.1rem 1rem;
 display: flex;
}
.cart-offers {
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 0.75rem;
 display: grid;
}
.cart-offers svg {
 fill: gray;
 background: #000;
}
.cart-offers__item {
 container-type: inline-size;
}
.cart-offers__item--full {
 grid-column: 1 / -1;
}
.cart-offers .offer-item {
 text-align: center;
 flex-direction: column;
 align-items: center;
 gap: 1rem;
 display: flex;
}
.cart-offers .offer-item .offer-item__content {
 flex-direction: column;
 align-items: center;
 gap: 0.5rem 0.75rem;
 display: flex;
}
@container (width > 400px) {
 .cart-offers .offer-item {
  text-align: start;
  flex-direction: row;
  justify-content: space-between;
 }
 .cart-offers .offer-item .offer-item__content {
  flex-direction: row;
 }
}
.cart-drawer__cross-sell {
 border-block-start-width: 1px;
 grid-template-columns: minmax(0, 1fr);
 row-gap: 1rem;
 margin-block-start: 0.5rem;
 padding-block-start: 1.5rem;
 display: grid;
}
.cart-drawer__cross-sell-carousel {
 --distance-to-bleed: var(--drawer-body-padding-inline);
 scroll-snap-type: x mandatory;
 grid-auto-columns: 100%;
 grid-auto-flow: column;
 column-gap: 1.25rem;
 display: grid;
 position: relative;
}
@media screen and (min-width: 1000px) {
 .cart-drawer__cross-sell-carousel {
  grid-auto-columns: 65%;
 }
}
.shipping-estimator__fieldset {
 gap: 1rem var(--fieldset-gap);
 flex-wrap: wrap;
 display: flex;
}
.shipping-estimator__fieldset .form-control:has([name="address[country]"]) {
 flex: 1 0 max-content;
}
.shipping-estimator__fieldset .form-control:has([name="address[province]"]) {
 flex: 1 0 max-content;
}
.shipping-estimator__fieldset .form-control:has([name="address[zip]"]) {
 flex-basis: 125px;
}
.shipping-estimator__results {
 background: rgb(var(--background-secondary));
 padding: 0.625rem 0.75rem;
}
.collection-list {
 grid: var(--collection-list-grid);
 gap: var(--collection-list-gap);
 display: grid;
}
.collection-quick-navigation {
 grid-auto-flow: column;
 justify-content: safe center;
 align-items: end;
 column-gap: 1.5rem;
 padding-block-start: 3px;
 display: grid;
}
.collection-quick-navigation--padded {
 padding-block: 2.375rem 2rem;
}
.collection-quick-navigation__item {
 text-align: center;
 flex-direction: column;
 align-items: center;
 row-gap: 0.625rem;
 max-width: 8rem;
 display: flex;
}
.collection-quick-navigation__item.is-selected > .rounded-full {
 outline-offset: 2px;
 outline: 1px solid;
}
.collection-quick-navigation__item img {
 object-fit: cover;
 object-position: center;
 width: 80px;
 min-width: 80px;
 height: 80px;
}
@media screen and (min-width: 700px) {
 .collection-quick-navigation {
  column-gap: 3rem;
 }
}
.collection {
 --collection-sidebar-width: 18.5rem;
 padding-block-end: min(4rem, var(--section-vertical-spacing));
}
.collection__toolbar {
 padding-block: 1.25rem;
 padding-inline: min(1.75rem, var(--container-gutter));
 border-block-start-width: 1px;
 justify-content: space-between;
 align-items: center;
 column-gap: 1rem;
 display: flex;
}
.collection__resource-tab-list::part(tablist) {
 grid-auto-flow: column;
 justify-items: start;
 column-gap: 1.5rem;
 display: grid;
}
.collection__toolbar-linklist {
 flex-wrap: wrap;
 justify-content: safe center;
 gap: 0.5rem 1.25rem;
 display: flex;
 position: absolute;
 left: 50%;
 transform: translate(-50%);
}
@media screen and (min-width: 700px) {
 .collection__toolbar-linklist {
  column-gap: 2.5rem;
 }
}
.collection__layout-selector {
 display: grid;
}
.collection__layout-selector label {
 opacity: 0.3;
 transition: opacity 0.2s;
}
:checked + :is(.collection__layout-selector label) {
 opacity: 1;
}
.collection__inner {
 grid-template-columns: minmax(0, 1fr);
 align-items: start;
 row-gap: 2rem;
 display: grid;
}
.collection__results {
 padding-inline: clamp(
  0px,
  var(--product-list-column-gap) - 4px,
  min(1.75rem, var(--product-list-column-gap))
 );
}
.collection__sidebar {
 display: none;
}
.collection__floating-button {
 opacity: 0;
 visibility: hidden;
 z-index: 2;
 justify-items: center;
 transition: opacity 0.2s ease-in, visibility 0.2s ease-in,
  transform 0.2s ease-in;
 display: grid;
 position: fixed;
 inset-block-end: 1rem;
 inset-inline: 1rem;
 transform: translateY(20px);
}
.collection__floating-button.is-visible {
 opacity: 1;
 visibility: visible;
 transform: translateY(0);
}
.collection__floating-button .button {
 max-width: 24rem;
}
@media screen and (max-width: 699px) {
 .collection__toolbar .vertically-separated-list {
  margin-inline-start: auto;
 }
}
@media screen and (min-width: 700px) {
 .collection__toolbar {
  padding-block: 1.8rem;
 }
 .collection__inner {
  row-gap: 3rem;
 }
}
@media screen and (min-width: 1000px) {
 .collection .pagination {
  grid-column-end: -1;
 }
 .collection__sidebar {
  top: calc(var(--sticky-area-height) + 20px);
  width: var(--collection-sidebar-width);
  margin-block-start: 1.5rem;
  margin-inline: min(var(--container-gutter), 1.75rem);
  grid-template-columns: minmax(0, 1fr);
  grid-column-end: -2;
  row-gap: 1.5rem;
  display: grid;
  position: sticky;
 }
}
.countdown-condensed {
 flex-wrap: wrap;
 justify-content: space-between;
 align-items: center;
 gap: 1rem 2rem;
 padding-block: 0.875rem;
 display: flex;
}
.countdown-condensed .button,
.countdown-condensed .link {
 flex-shrink: 0;
}
.countdown-condensed__content-with-timer {
 display: contents;
}
.countdown-condensed__content-wrapper {
 flex-wrap: wrap;
 align-items: center;
 gap: 0.5rem 1rem;
 display: flex;
}
.countdown-condensed__timer {
 flex-shrink: 0;
 justify-content: safe center;
 align-items: center;
 column-gap: 0.5rem;
 display: flex;
}
.countdown-condensed__timer-item {
 place-items: baseline center;
 column-gap: 0.25rem;
 display: grid;
}
.countdown-condensed__unit-short {
 display: none;
}
.countdown-condensed__timer--inline .countdown-condensed__timer-item {
 display: flex;
}
@media screen and (min-width: 700px) {
 .countdown-condensed__content-wrapper {
  column-gap: 1.5rem;
 }
 .countdown-condensed__content-with-timer
  :is(.button, .link):not(.button--connect-with-heading),
 .countdown-condensed__content-with-timer ~ .button--connect-with-heading {
  display: none;
 }
}
@media screen and (max-width: 699px) {
 .countdown-condensed__content-with-timer :is(.button, .link) {
  display: none;
 }
 :where(.countdown-condensed:has(.button, .link))
  .countdown-condensed__content-with-timer {
  flex-direction: column;
  row-gap: 0.25rem;
  display: flex;
 }
}
@media screen and (max-width: 699px) {
 .countdown-condensed--center:not(:has(.button, .link)) {
  flex-direction: column;
  justify-content: safe center;
  row-gap: 0.35rem;
 }
}
@media screen and (min-width: 700px) {
 .countdown-condensed--center {
  justify-content: safe center;
 }
}
.countdown-condensed--split {
 justify-content: space-between;
}
@media screen and (max-width: 699px) {
 :is(
   .countdown-condensed--split .countdown-condensed__timer--inline,
   .countdown-condensed:has(.button, .link) .countdown-condensed__timer--inline
  )
  .countdown-condensed__unit {
  display: none;
 }
 :is(
   .countdown-condensed--split .countdown-condensed__timer--inline,
   .countdown-condensed:has(.button, .link) .countdown-condensed__timer--inline
  )
  .countdown-condensed__unit-short {
  display: block;
 }
}
.countdown__timer {
 justify-content: safe center;
 column-gap: 1.5rem;
 width: 100%;
 max-width: 48rem;
 display: flex;
 container: countdown-timer / inline-size;
}
.countdown__timer--bordered {
 border-block-width: 1px;
 padding-block: 1.5rem;
}
.countdown__timer-item {
 justify-items: center;
 gap: 0.25rem;
 display: grid;
}
.countdown__timer-flip {
 white-space: nowrap;
 text-align: center;
 letter-spacing: 0 !important;
 display: grid !important;
}
.countdown__timer-flip[animate] {
 grid-template-columns: 1ch 1ch;
 width: auto;
}
.countdown__timer-flip::part(digit) {
 vertical-align: bottom;
 overflow: hidden;
}
@media screen and (min-width: 1000px) {
 .countdown__timer {
  column-gap: 2rem;
 }
 .countdown__timer--bordered {
  padding-block: 3rem;
 }
 .countdown__timer-item {
  gap: 0.5rem 0.75rem;
 }
}
@media screen and (min-width: 1150px) {
 .countdown__timer {
  column-gap: 3rem;
 }
}
@container countdown-timer (width > 900px) {
 .countdown__timer-item {
  grid-auto-flow: column;
  align-items: baseline;
 }
 @supports (text-box: trim-both cap alphabetic) {
  .countdown__timer-item {
   align-items: start;
  }
  .countdown__timer-item .countdown__timer-flip {
   text-box: trim-both cap alphabetic;
  }
 }
}
@keyframes cell-horizontal-parallax {
 0% {
  transform: translate(calc(-1 * var(--offset-amount)));
 }
 to {
  transform: translate(var(--offset-amount));
 }
}
@keyframes cell-vertical-parallax {
 0% {
  transform: translateY(calc(-1 * var(--offset-amount)));
 }
 to {
  transform: translateY(var(--offset-amount));
 }
}
.mabel-section--dynamic-grid {
 view-timeline: --dynamic-grid block;
 position: relative;
 overflow-x: hidden;
}
@supports (overflow: clip) {
 .mabel-section--dynamic-grid {
  overflow-x: clip;
 }
}
.mabel-section--dynamic-grid:first-child:has([allow-transparent-header])
 .dynamic-grid {
 margin-block-start: var(--header-height, 0px);
}
.dynamic-grid {
 --dynamic-grid-column-count: 8;
 --dynamic-grid-cell-size: calc(
  (100vw - var(--container-gutter-context, 0px) * 2) /
   var(--dynamic-grid-column-count) - var(--dynamic-grid-gap) *
   (var(--dynamic-grid-column-count) - 1) / var(--dynamic-grid-column-count)
 );
 grid-template-columns: repeat(
  var(--dynamic-grid-column-count),
  minmax(0, 1fr)
 );
 grid-template-rows: repeat(
   var(--dynamic-grid-explicit-row-count),
   var(--dynamic-grid-cell-size)
  ) max-content;
 gap: var(--dynamic-grid-gap);
 display: grid;
 position: relative;
}
.dynamic-grid.editor-is-selected:before {
 content: "";
 background-image: repeating-linear-gradient(
   #c8c8c833 0,
   #c8c8c833 var(--dynamic-grid-cell-size),
   transparent var(--dynamic-grid-cell-size),
   transparent
    calc(var(--dynamic-grid-cell-size) + max(1px, var(--dynamic-grid-gap)))
  ),
  repeating-linear-gradient(
   90deg,
   #c8c8c833 0,
   #c8c8c833 var(--dynamic-grid-cell-size),
   transparent var(--dynamic-grid-cell-size),
   transparent
    calc(var(--dynamic-grid-cell-size) + max(1px, var(--dynamic-grid-gap)))
  );
 background-repeat: no-repeat;
 background-size: 100%
  calc(
   var(--dynamic-grid-cell-size) * var(--dynamic-grid-explicit-row-count) +
    max(1px, var(--dynamic-grid-gap)) *
    (var(--dynamic-grid-explicit-row-count) - 1)
  );
 width: 100%;
 height: 100%;
 position: absolute;
}
.dynamic-grid__cell {
 grid-area: var(--dynamic-grid-grid-area);
 isolation: isolate;
 align-self: start;
 transition: opacity 0.2s ease-in-out, background-color 0.2s ease-in-out;
 position: relative;
 inset-block-start: var(--dynamic-grid-vertical-adjustment);
 inset-inline-start: var(--dynamic-grid-horizontal-adjustment);
}
@supports (view-timeline-name: --foo) {
 .dynamic-grid__cell {
  --offset-amount: calc(var(--parallax-speed) * 10 / 2 * 1vmin);
  animation: linear forwards cell-horizontal-parallax;
  animation-timeline: --dynamic-grid;
  animation-range: cover;
 }
 .dynamic-grid__cell[data-parallax-direction="vertical"] {
  animation-name: cell-vertical-parallax;
 }
}
.dynamic-grid__cell.editor-is-selected {
 background-color: #0000000d;
 outline: 2px dashed gray;
}
.dynamic-grid__cell:has(.editor-is-selected) {
 background-color: #0000000d;
 outline: 2px dashed gray;
}
.dynamic-grid__cell figure {
 object-fit: cover;
 object-position: center;
 width: 100%;
 max-width: 100%;
 transition: opacity 0.2s;
}
.dynamic-grid__cell figure img,
.dynamic-grid__cell figure video {
 width: 100%;
}
.dynamic-grid.editor-is-selected
 :is(.dynamic-grid__cell figure):not(.editor-is-selected) {
 opacity: 0.6;
}
@media screen and (min-width: 1000px) {
 .dynamic-grid {
  --dynamic-grid-column-count: 16;
 }
}
.faq {
 width: 100%;
}
.section-stack .faq {
 max-width: 50rem;
 margin-inline: inherit;
}
.faq__category {
 align-items: center;
 column-gap: 0.5rem;
 margin-block-end: 1.25rem;
 display: flex;
}
.faq__category ~ .faq__category {
 margin-block-start: 2.5rem;
}
.faq__content .accordion__content {
 padding-inline-end: 1.25rem;
}
@media screen and (min-width: 1000px) {
 .faq__category {
  column-gap: 1rem;
 }
 .faq__category ~ .faq__category {
  margin-block-start: 3rem;
 }
 .faq__content .accordion__content {
  padding-inline-end: 2.5rem;
 }
}
.featured-collections-header {
 grid-template-columns: minmax(0, 1fr);
 grid-auto-columns: auto;
 align-items: center;
 gap: 1.5rem 5rem;
 display: grid;
}
.featured-collections-header__tab-list {
 align-items: start;
 column-gap: 1.25rem;
 display: flex;
}
.featured-collections-header__tab-list [role="tab"] {
 text-align: start;
 flex-shrink: 0;
 transition: margin-inline-start 0.15s ease-in-out, opacity 0.15s ease-in-out;
}
.featured-collections-header__tab-list [role="tab"] svg,
.featured-collections-header__tab-list [role="tab"]:before {
 will-change: opacity;
 flex-shrink: 0;
 transition: opacity 0.15s ease-in-out;
}
.featured-collections-header__tab-list [role="tab"] span {
 transition: transform 0.15s ease-in-out;
 display: inline-block;
}
.featured-collections-header__tab-list [role="tab"][aria-selected="false"] {
 opacity: 0.3;
 margin-inline-start: calc(-1 * var(--text-indent-size));
}
.featured-collections-header__tab-list [role="tab"][aria-selected="false"] svg,
.featured-collections-header__tab-list
 [role="tab"][aria-selected="false"]:before {
 opacity: 0;
}
@media screen and (max-width: 699px) {
 .featured-collections-header__tab-list [role="tab"] {
  max-width: 16rem;
 }
}
@media screen and (min-width: 700px) {
 .featured-collections-header__tab-list {
  column-gap: 2rem;
 }
 [role="tab"][aria-selected="true"] span {
  transform: translate(
   calc(
    -1 * var(--transform-logical-flip) * min(0.2em, var(--text-indent-size))
   )
  );
 }
}
@media screen and (min-width: 1000px) {
 .featured-collections-header {
  grid-auto-flow: column;
 }
}
.featured-links {
 text-align: center;
 display: block;
 position: relative;
}
.featured-links .big-link {
 justify-content: center;
}
.featured-links .big-link:hover > .v-stack {
 z-index: 2;
 position: relative;
}
.featured-links .custom-cursor:not(.featured-links__image-cursor) {
 z-index: 3;
}
@media screen and (max-width: 699px) {
 .featured-links {
  width: 100%;
 }
}
.featured-links__image-cursor {
 z-index: 1;
 scale: 1;
}
.featured-links__cursor-image-list {
 isolation: isolate;
 width: 21.875rem;
 transform: translate(calc(-1 * var(--transform-logical-flip) * 50%))
  translateY(-50%);
 place-items: center;
 display: grid;
 position: absolute;
}
.featured-links__cursor-image-list > * {
 mix-blend-mode: plus-lighter;
 grid-area: 1 / -1;
}
.footer {
 border-block-start-width: 1px;
}
.mabel-section--trust-icons + .mabel-section--footer .footer {
 border-block-start-width: 0;
}
.footer__content {
 grid-template-columns: minmax(0, 1fr);
 row-gap: 2.8rem;
 padding-block: 2.8rem;
 display: grid;
}
@media screen and (min-width: 1000px) {
 .footer__content {
  row-gap: 4.8rem;
  padding-block: 4.8rem;
 }
}
.footer__block-list {
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 2rem 1.25rem;
 display: grid;
}
.footer__block--newsletter,
.footer__block--text {
 grid-column: span 2;
}
@media screen and (max-width: 699px) {
 .footer__block--accordion-links {
  grid-column: 1 / -1;
 }
 .footer__block--accordion-links:first-child .accordion {
  box-shadow: 0 1px rgb(var(--border-color));
 }
 .footer__block--accordion-links + .footer__block--accordion-links,
 .footer__block--accordion-links:first-child {
  margin-block-start: -2rem;
 }
}
@media screen and (min-width: 700px) {
 .footer__block-list {
  flex-wrap: wrap;
  justify-content: start;
  column-gap: 3rem;
  display: flex;
 }
 .footer__block-list:has(:nth-child(3)) {
  justify-content: space-between;
 }
 .footer__block {
  max-width: 24rem;
 }
 .footer__block--links {
  flex-shrink: 0;
  max-width: 10rem;
 }
}
@media screen and (min-width: 1150px) {
 .footer__block--newsletter {
  flex-basis: 28rem;
  max-width: 28rem;
 }
}
.footer__big-logo {
 --scrolling-content-gap: 2.5rem;
}
.footer__big-logo--full img {
 width: 100%;
}
@media screen and (min-width: 700px) {
 .footer__big-logo {
  --scrolling-content-gap: 5rem;
 }
}
.footer__aside {
 text-align: center;
 justify-content: safe center;
 row-gap: 1.65rem;
 padding-block: 1.5rem;
 display: grid;
}
.footer__aside .social-media {
 --icon-mobile-max-width: 1rem;
 --icon-max-width: 1.25rem;
}
@media screen and (min-width: 1000px) {
 .footer__aside {
  grid-auto-flow: column;
  column-gap: 1rem;
  padding-block: 2.5rem;
 }
 .footer__aside:has(> :nth-child(2)) {
  justify-content: space-between;
 }
 .footer__aside:has(> :nth-child(3)) {
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
 }
 .footer__aside .social-media {
  order: 99;
  justify-content: end;
 }
}
.gift-card {
 text-align: center;
 align-content: center;
 row-gap: var(--section-stack-row-gap);
 grid-template-columns: minmax(0, 1fr);
 max-width: 26rem;
 height: 100%;
 margin-inline: auto;
 display: grid;
 position: relative;
}
.gift-card__code {
 --padding-compensation-ratio: 1;
 text-align: center;
 color: rgb(var(--text-color) / 0.7);
 text-transform: uppercase;
 font-size: 0.8125rem;
}
.gift-card__action-buttons {
 flex-wrap: wrap;
 gap: 0.75rem;
 display: flex;
}
.gift-card__action-buttons .button {
 flex: 1 0 auto;
}
.gift-card__pass-cards {
 justify-content: safe center;
 align-items: center;
 gap: 2rem;
 width: 100%;
 display: flex;
}
.gift-card__qr-code {
 width: 120px;
}
.header {
 --header-show-transparent-logo: 0;
 --header-padding-block: 1.25rem;
 --header-padding-inline: min(1.75rem, var(--container-gutter));
 --header-column-gap: 1.25rem;
 --header-nav-icon-gap: 1.5rem;
 grid: var(--header-grid);
 justify-content: safe center;
 align-items: center;
 column-gap: var(--header-column-gap);
 padding-block: var(--header-padding-block);
 padding-inline: var(--header-padding-inline);
 transition: background 0.2s ease-in-out, color 0.2s ease-in-out;
 display: grid;
 position: relative;
}
.mabel-section--header {
 transition: transform 0.2s ease-in-out, visibility 0.2s ease-in-out;
}
.mabel-section--header:has(.header.is-hidden) {
 visibility: hidden;
 transform: translateY(-100%);
}
:root:has(:is(.mabel-section, .mabel-section):first-child [allow-transparent-header]):not(
  :has(.mabel-section--header ~ .mabel-section-group-header-group)
 )
 .header {
 margin-block-end: calc(-1 * var(--header-height, 0px));
}
:root:has(:is(.mabel-section, .mabel-section):first-child [allow-transparent-header]):not(
  :has(.mabel-section--header ~ .mabel-section-group-header-group)
 )
 .header:not(.is-solid, :has([open])) {
 --header-show-transparent-logo: 1;
 --background: 0 0 0 / 0;
 --background-gradient: initial;
 --border-color: 0 0 0 / 0;
 --text-color: var(
  --header-transparent-header-text-color,
  var(--header-non-transparent-text-color)
 );
}
@media screen and (min-width: 1000px) {
 .header {
  --header-padding-block: 1.4rem;
  --header-nav-icon-gap: 1rem;
  --header-column-gap: 2.5rem;
 }
}
.header__active-dot {
 pointer-events: none;
 background: currentColor;
 border-radius: 100%;
 width: 4px;
 height: 4px;
 position: absolute;
 inset-block-start: -2px;
 inset-inline-end: -2px;
}
.header__logo {
 grid-area: logo;
 justify-self: start;
 position: relative;
}
.header__logo-image {
 width: var(--header-logo-width);
 max-width: 100%;
 height: auto;
 opacity: calc(1 - var(--header-show-transparent-logo));
 transition: opacity 0.2s ease-in-out;
}
.header__logo-image:only-of-type {
 --header-show-transparent-logo: 0;
}
.header__logo-image--transparent {
 opacity: var(--header-show-transparent-logo);
 pointer-events: none;
 position: absolute;
 inset-block-start: 0;
 inset-inline-start: 0;
}
.header__logo-text {
 font-size: 1rem;
}
.header__primary-nav {
 align-items: center;
 column-gap: var(--header-nav-icon-gap);
 flex-wrap: wrap;
 grid-area: primary-nav;
 display: flex;
}
.header__primary-nav .link-reversed {
 background-position-y: bottom;
 padding-block: 2px;
}
.header__primary-nav--open-menu-in-sidebar {
 max-width: calc(480px - 2 * var(--header-padding-inline));
}
.header__hamburger {
 row-gap: 3px;
 display: grid;
}
.header__hamburger > * {
 width: 1rem;
 height: var(--icon-stroke-width, 1px);
 transform-origin: calc(50% + (2 * var(--icon-stroke-width, 1px) - 2px));
 background: currentColor;
 transition: transform 0.2s;
}
[aria-expanded="true"] .header__hamburger > :first-child {
 transform: translateY(calc(var(--icon-stroke-width, 1px) * 2)) rotate(45deg);
}
[aria-expanded="true"] .header__hamburger > :last-child {
 transform: translateY(calc(-1 * var(--icon-stroke-width, 1px) * 2))
  rotate(-45deg);
}
@media screen and (min-width: 1000px) {
 .header__primary-nav {
  gap: 0.625rem 1.5rem;
 }
}
.header__secondary-nav {
 justify-self: end;
 align-items: center;
 column-gap: var(--header-nav-icon-gap);
 grid-area: secondary-nav;
 display: flex;
}
.header__secondary-nav-separator {
 background: rgb(var(--text-color) / 0.3);
 border: none;
 width: 1px;
 height: 10px;
 margin-inline: 0.25rem;
 transition: background 0.2s ease-in-out;
}
.header__dropdown-menu {
 outline: 1px solid rgb(var(--border-color));
 outline-offset: -1px;
 width: max-content;
 max-width: 15rem;
 padding-block: 1.2rem;
 display: none;
 position: absolute;
 inset-block-start: 100%;
}
.header__dropdown-menu[open] {
 display: block;
}
.header__dropdown-menu li {
 position: relative;
}
.header__dropdown-menu a {
 grid-auto-flow: column;
 justify-content: space-between;
 align-items: center;
 padding: 0.4rem 1.75rem;
 display: grid;
}
.header__dropdown-menu a:where(:hover, :has(~ [open])) .icon-chevron-right {
 transform: translate(4px);
}
.header__dropdown-menu .icon-chevron-right {
 justify-self: end;
 transition: transform 0.2s;
}
.header__dropdown-menu:has(.header__dropdown-menu) a {
 grid-template-columns: minmax(0, 1fr) 1.5rem;
}
.header__dropdown-menu .header__dropdown-menu {
 inset-block-start: -1.2rem;
 inset-inline-start: calc(100% - 1px);
}
.header__dropdown-menu .header__dropdown-menu a {
 grid-template-columns: auto;
}
.menu-promo {
 --overlay: 0 0 0 / 0.1;
 flex-grow: 1;
 overflow-x: auto;
}
.menu-promo__carousel {
 column-gap: var(--menu-promo-block-column-gap);
 height: 100%;
 display: flex;
}
.menu-promo__item {
 scroll-snap-align: start;
}
.menu-promo--with-spacing .menu-promo__item {
 flex: auto;
 width: 305px;
 min-width: 220px;
 max-width: max-content;
}
.menu-promo--with-spacing img {
 object-fit: cover;
 width: auto;
 height: 275px;
}
.menu-promo--without-spacing {
 --menu-promo-block-min-width: 290px;
 --menu-promo-block-max-width: 420px;
}
.menu-promo--without-spacing:has(.menu-promo__item:nth-child(4)) {
 --menu-promo-block-max-width: calc(1px * infinity);
}
.menu-promo--without-spacing .menu-promo__item {
 --maximum-space: calc(100vw - var(--menu-promo-block-column-gap) * 2);
 width: clamp(
  var(--menu-promo-block-min-width),
  (
    var(--maximum-space) - (var(--menu-promo-blocks-count) - 1) *
     var(--menu-promo-block-column-gap)
   ) / var(--menu-promo-blocks-count),
  var(--menu-promo-block-max-width)
 );
 flex: none;
}
@media screen and (min-width: 1400px) {
 .menu-promo--without-spacing {
  --menu-promo-block-min-width: 310px;
 }
}
.mega-menu {
 --mega-menu-padding-inline: 1.75rem;
 --mega-menu-padding-block-start: 1.75rem;
 --mega-menu-padding-block-end: 3.5rem;
 --mega-menu-navigation-max-width: 800px;
 max-height: calc(100vh - var(--sticky-area-height) - 48px);
 width: 100%;
 padding-inline: var(--mega-menu-padding-inline);
 padding-block: var(--mega-menu-padding-block-start)
  var(--mega-menu-padding-block-end);
 grid-auto-flow: column;
 align-items: start;
 column-gap: clamp(3rem, 5vw, 5rem);
 display: none;
 position: absolute;
 inset-block-start: 100%;
 inset-inline-start: 0;
 overflow-y: auto;
}
.mega-menu[open] {
 display: grid;
}
.mega-menu:has(.menu-promo--without-spacing) {
 --mega-menu-padding-block-end: 1.75rem;
}
.mega-menu:has(.menu-promo__item:nth-child(3)) {
 --mega-menu-navigation-max-width: 600px;
}
.mega-menu:has(.menu-promo__item:nth-child(4)) {
 --mega-menu-navigation-max-width: 480px;
}
.mega-menu:after {
 content: "";
 background: rgb(var(--page-overlay));
 z-index: -1;
 mix-blend-mode: plus-lighter;
 pointer-events: none;
 position: fixed;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 inset-block-start: calc(
  var(--announcement-bar-height, 0px) + var(--header-height, 0px)
 );
}
.mega-menu .link-reversed {
 padding-block: 0;
}
.mega-menu__navigation {
 max-width: var(--mega-menu-navigation-max-width);
 flex-wrap: nowrap;
 gap: 1.5rem clamp(1.5rem, 5vw, 5rem);
 display: flex;
}
.mega-menu__navigation:only-of-type {
 max-width: none;
}
.mega-menu__linklist {
 flex-direction: column;
 gap: 0.6rem clamp(1.5rem, 3vw, 3rem);
 max-width: 165px;
 display: flex;
}
.mega-menu:not(:has(.mega-menu__navigation)) .menu-promo__carousel {
 justify-content: safe center;
}
.mega-menu:has(.menu-promo) {
 padding-inline-end: 0;
}
.mega-menu:has(.menu-promo--without-spacing) {
 padding-block-end: 0;
}
.mega-menu:has(.menu-promo--without-spacing:only-of-type) {
 padding: 0;
}
.mega-menu .menu-promo:not(.menu-promo--without-spacing) .menu-promo__carousel {
 padding-inline-end: var(--mega-menu-padding-inline);
}
.mega-menu .menu-promo--without-spacing {
 padding-block-end: var(--menu-promo-block-column-gap);
 padding-inline: var(--menu-promo-block-column-gap);
 max-height: inherit;
 align-self: stretch;
}
.menu-drawer {
 --menu-drawer-padding-inline: 1.5rem;
 display: none;
}
.menu-drawer::part(overlay) {
 content: "";
 background: rgb(var(--page-overlay));
 -webkit-backdrop-filter: blur(var(--dialog-backdrop-blur));
 backdrop-filter: blur(var(--dialog-backdrop-blur));
 z-index: -1;
 pointer-events: auto;
 position: fixed;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 inset-block-start: var(--sticky-area-height);
}
.menu-drawer::part(content) {
 width: 100%;
 max-width: 480px;
 height: calc(100vh - var(--menu-offset-top, 0px));
 border-block-start: 1px solid rgb(var(--border-color));
 background: inherit;
 color: inherit;
 grid-auto-rows: minmax(0, 1fr);
 display: grid;
 position: absolute;
 inset-block-start: 100%;
 inset-inline-start: 0;
 overflow: clip;
}
@supports (height: 100dvh) {
 .menu-drawer::part(content) {
  height: calc(100dvh - var(--menu-offset-top, 0px));
 }
}
.menu-drawer__panel {
 visibility: hidden;
 flex-direction: column;
 grid-area: 1 / -1;
 height: 100%;
 display: none;
}
.menu-drawer__panel.is-visible {
 visibility: visible;
 display: flex;
}
.menu-drawer__panel-header {
 padding-inline: var(--header-padding-inline);
 min-height: var(--header-height);
 box-shadow: 0 1px rgb(var(--border-color));
 align-items: center;
 display: flex;
 position: sticky;
 inset-block-start: 0;
}
.menu-drawer__panel-body {
 padding: 2.2rem var(--menu-drawer-padding-inline);
 flex-grow: 1;
 overflow-y: auto;
}
.menu-drawer__separator {
 margin-block: 2rem;
}
.menu-drawer__footer-item {
 padding: 1rem var(--menu-drawer-padding-inline);
 border-block-start-width: 1px;
}
.menu-drawer__footer-item .social-media {
 --icon-max-width: 1.125rem;
}
.menu-drawer__footer-item .social-media:has(> :nth-child(3)) {
 justify-content: space-between;
}
.menu-drawer .menu-promo {
 margin-inline: calc(-1 * var(--menu-drawer-padding-inline));
}
.menu-drawer .menu-promo__carousel {
 padding-inline: var(--menu-drawer-padding-inline);
 scroll-padding-inline: var(--menu-drawer-padding-inline);
}
.menu-drawer .menu-promo__item {
 width: 210px;
}
.menu-drawer--dropdown-sidebar::part(content) {
 border: none;
 inset-block-start: 0;
}
.menu-drawer__dropdown-sidebar-level {
 display: none;
}
.menu-drawer__dropdown-sidebar-level.is-visible {
 display: block;
}
.hot-spot {
 --hot-spot-dot-size: 2rem;
 --hot-spot-dot-shadow-size: 3rem;
 left: calc(
  var(--hot-spot-mobile-horizontal-position) - var(--hot-spot-dot-size) / 2
 );
 top: calc(
  var(--hot-spot-mobile-vertical-position) - var(--hot-spot-dot-size) / 2
 );
 grid-area: 1 / 1 / -1 / -1;
 transition: z-index 0.2s ease-in-out;
 position: absolute;
}
.hot-spot:has(.hot-spot__dot[aria-expanded="true"]) {
 z-index: 2;
}
@keyframes hotSpotDotAnimation {
 0% {
  transform: scale(1);
 }
 to {
  transform: scale(0.8);
 }
}
.hot-spot__dot {
 width: var(--hot-spot-dot-size);
 height: var(--hot-spot-dot-size);
 background: rgb(var(--hot-spot-background));
 color: rgb(var(--hot-spot-text-color));
 border-radius: 100%;
 place-items: center;
 display: grid;
 position: relative;
}
.hot-spot__dot:after {
 content: "";
 width: var(--hot-spot-dot-shadow-size);
 height: var(--hot-spot-dot-shadow-size);
 background: radial-gradient(
  50% 50% at 50% 50%,
  rgb(var(--hot-spot-background) / 0),
  rgb(var(--hot-spot-background) / 0.3)
 );
 border-radius: inherit;
 grid-area: 1 / -1;
 animation: 2s ease-in-out infinite alternate hotSpotDotAnimation;
 position: absolute;
}
.hot-spot__dot--content svg {
 transition: rotate 0.2s ease-in-out;
}
.hot-spot__dot--content[aria-expanded="true"] svg {
 rotate: 45deg;
}
@media screen and (min-width: 1000px) {
 .hot-spot {
  --hot-spot-dot-size: 2.5rem;
  --hot-spot-dot-shadow-size: 4.25rem;
  left: calc(
   var(--hot-spot-desktop-horizontal-position) - var(--hot-spot-dot-size) / 2
  );
  top: calc(
   var(--hot-spot-desktop-vertical-position) - var(--hot-spot-dot-size) / 2
  );
 }
}
.popover--hot-spot {
 --popover-content-padding: 1.5rem;
}
.popover--hot-spot::part(content) {
 border: none;
 padding: 0;
}
.popover--hot-spot::part(body) {
 padding: var(--popover-content-padding);
}
.popover--hot-spot .rounded-full {
 width: 150px;
 height: 150px;
}
.popover--hot-spot:has(img:not(.rounded-full))::part(body) {
 padding-block-start: 0;
}
.popover--hot-spot .prose img:not(.rounded-full):first-child {
 width: calc(100% + var(--popover-content-padding) * 2);
 max-width: none;
 margin-inline: calc(-1 * var(--popover-content-padding));
 margin-block-end: var(--popover-content-padding);
}
@media screen and (min-width: 1000px) {
 .popover--hot-spot {
  --popover-content-padding: 2rem;
 }
 .popover--hot-spot::part(content) {
  max-width: 20rem;
  max-height: none;
 }
 .popover--hot-spot::part(close-button) {
  display: none;
 }
}
.links-with-image-carousel {
 display: grid;
}
.links-with-image-carousel > * {
 grid-area: 1 / -1;
}
.links-with-image-carousel > :not(.is-selected) {
 opacity: 0;
}
.logo-list {
 grid: var(--logo-list-grid);
 gap: var(--logo-list-gap);
 justify-content: var(--logo-list-justify-content);
 padding-block: 1px;
 display: grid;
}
.logo-list__item {
 padding: var(--logo-item-padding-block) var(--logo-item-padding-inline);
 background: rgb(var(--logo-item-background));
 box-shadow: 1px 0 rgb(var(--logo-item-border-color)),
  0 1px rgb(var(--logo-item-border-color)),
  1px 1px rgb(var(--logo-item-border-color)),
  1px 0 rgb(var(--logo-item-border-color)) inset,
  0 1px rgb(var(--logo-item-border-color)) inset;
 place-content: center;
 display: grid;
}
.media-blocks {
 grid: var(--media-blocks-grid);
 gap: var(--media-blocks-gap);
 align-items: center;
 display: grid;
}
.section-spacing .media-blocks {
 padding-block: 1px;
}
.media-blocks__item {
 height: 100%;
 display: block;
}
.media-blocks__item--bordered {
 outline: 1px solid rgb(var(--border-color));
}
.multi-column {
 grid: var(--multi-column-grid);
 column-gap: var(--multi-column-column-gap);
 row-gap: var(--multi-column-row-gap);
 display: grid;
}
.multi-column__item {
 grid-column: span
  min(var(--multi-column-item-span, 1), var(--multi-column-column-count));
 position: relative;
 container: multi-column-item / inline-size;
}
.multi-column__item :where(figure, picture, video) {
 width: 100%;
}
.multi-column__item--spacer {
 min-height: 150px;
}
.multi-column--bordered {
 gap: 1px;
 padding-block: 1px;
}
.multi-column--bordered .multi-column__item {
 padding-block: var(--multi-column-row-gap);
 padding-inline: var(--multi-column-column-gap);
 outline: 1px solid rgb(var(--border-color));
}
.header__news-link .active {
 position: relative;
}
.header__news-link .active:after {
 content: "";
 border-radius: var(--rounded-full);
 background: currentColor;
 width: 0.25rem;
 height: 0.25rem;
 position: absolute;
 inset-block-start: 0;
 inset-inline-end: -0.125rem;
}
.modal--news::part(content) {
 place-self: start stretch;
 margin-block-start: var(--modal-news-margin-block-start, 0);
 margin-inline: 0;
 overflow: hidden auto;
}
.modal--news::part(body) {
 align-items: start;
}
.modal--news::part(overlay) {
 display: none;
}
.news-modal__container {
 gap: 1.25rem;
 display: grid;
}
.news-modal__wrapper {
 gap: 1.75rem;
 display: grid;
}
.news-modal-button {
 --news-modal-button-image-width: 5rem;
 justify-content: space-between;
 align-items: center;
 gap: 1.25rem;
 width: 100%;
 transition: opacity 0.3s 0.45s;
 display: flex;
 position: relative;
}
.news-modal-button:after {
 content: "";
 background: rgb(var(--on-sale-text));
 border-radius: var(--rounded-full);
 width: 6px;
 height: 6px;
 position: absolute;
 inset-block-start: calc(50% - 3px);
 inset-inline-end: 0;
}
.news-modal-button.visited {
 opacity: 0.5;
}
.news-modal-button.visited:after {
 display: none;
}
.news-modal-button__content {
 text-align: start;
 flex: 1;
 justify-items: start;
 gap: 0.625rem;
 padding-inline-end: var(--modal-body-padding-inline);
 display: grid;
}
.news-modal-button__image {
 width: var(--news-modal-button-image-width);
}
.news-modal-panel {
 z-index: 1;
 padding: 0 var(--modal-body-padding-inline) var(--modal-body-padding-block);
 background: rgb(var(--background));
 opacity: 0;
 visibility: hidden;
 width: 100%;
 height: 100%;
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 overflow: auto;
}
.news-modal-panel__header {
 padding-block: var(--modal-body-padding-block);
 justify-content: flex-start;
 align-items: center;
 gap: 0.75rem;
 display: flex;
}
@media screen and (min-width: 700px) {
 .modal--news::part(content) {
  place-self: start end;
  margin-inline-end: var(--modal-news-margin-inline-end, 0);
 }
 .news-modal-button {
  --news-modal-button-image-width: 6.5rem;
 }
 .news-modal-button__content {
  gap: 1rem;
 }
}
@media screen and (min-width: 1000px) {
 .modal--news {
  --modal-body-padding-block: 1.75rem;
  --modal-body-padding-inline: 1.75rem;
 }
 .modal--news::part(close-button) {
  inset-block-start: 1.25rem;
  inset-inline-end: 1.25rem;
 }
}
@media screen and (min-width: 700px) {
 .modal--newsletter::part(content) {
  place-self: end start;
 }
}
.password {
 text-align: center;
 height: 100%;
 min-height: inherit;
 align-content: center;
 justify-items: center;
 row-gap: var(--section-stack-row-gap);
 grid-template-columns: minmax(0, 1fr);
 display: grid;
}
.press-carousel {
 grid-template-columns: minmax(0, 1fr);
 align-content: start;
 display: grid;
}
.press-carousel > * {
 grid-area: 1 / -1;
}
.press-carousel__item {
 grid-template-columns: minmax(0, 1fr);
 align-content: start;
 justify-items: center;
 row-gap: 2rem;
 display: grid;
 position: relative;
}
.press-carousel__item:not(.is-selected) {
 opacity: 0;
 visibility: hidden;
}
.press-carousel__quotation-mark {
 opacity: 0.1;
 position: absolute;
 inset-block-start: -1.125rem;
 inset-inline-start: -0.125rem;
}
.press-carousel__quotation--with-mark:before {
 z-index: -1;
 content: "";
 /* background-image: var(--quotation-mark-svg); */
 background: url(img/qt.svg) no-repeat center / contain;
 opacity: 0.15;
 background-repeat: no-repeat;
 background-size: 100%;
 width: 42px;
 height: 39px;
 margin-block-start: -18px;
 margin-inline-start: -2px;
 position: absolute;
}
.press-carousel__avatar {
 border-radius: 100%;
 width: 4rem;
}
.press-carousel__placeholder-logo {
 background: rgb(var(--text-color) / 0.2);
 width: 3.75rem;
}
@media screen and (min-width: 700px) {
 .press-carousel__quotation--with-mark:before {
  width: 62px;
  height: 57px;
  margin-block-start: -26px;
 }
 .press-carousel__item {
  row-gap: 2.8rem;
 }
}
.press-navigation__button {
 flex-shrink: 0;
 transition: opacity 0.2s;
 position: relative;
}
.press-navigation__button[aria-current="false"] {
 opacity: 0.2;
}
.product {
 grid: var(--product-grid, auto-flow / minmax(0, 1fr));
 align-items: start;
 gap: 2.25rem;
 padding-block-end: var(--section-vertical-spacing);
 display: grid;
}
@media screen and (min-width: 1000px) {
 .product {
  gap: 3rem;
 }
}
.product-gallery {
 --product-gallery-thumbnail-list-gap: 0.5rem;
 --product-gallery-thumbnail-size: 3.625rem;
 align-self: start;
 gap: var(--product-gallery-gap);
 grid-template-columns: minmax(0, 1fr);
 display: grid;
 position: relative;
}
.product-gallery__image-list {
 row-gap: var(--product-gallery-gap);
 grid-template-columns: minmax(0, 1fr);
 grid-auto-rows: max-content;
 width: 100%;
 display: grid;
 position: relative;
}
.product-gallery__carousel {
 grid: var(--product-gallery-carousel-grid, auto / auto-flow 100%);
 align-items: start;
 gap: var(--product-gallery-carousel-gap, 0.25rem);
 scroll-snap-type: var(
  --product-gallery-carousel-scroll-snap-type,
  x mandatory
 );
 display: grid;
 position: relative;
}
[allow-transparent-header] .product-gallery__carousel {
 padding-inline: 0;
}
.product-gallery__media > * {
 width: 100%;
}
.product-gallery__cursor.is-half-start svg {
 transform: rotate(180deg);
}
.product-gallery__controls-floating .scroll-marker-group {
 --scroll-marker-group-inset-block-end: 1.5rem;
 inset-block-end: var(--scroll-marker-group-inset-block-end);
 width: var(--scroll-marker-group-width, 50%);
 position: absolute;
 left: 50%;
 transform: translate(-50%);
}
.product-gallery__controls-floating .scroll-marker-group--counter {
 --scroll-marker-group-width: auto;
 --scroll-marker-group-inset-block-end: 1rem;
}
.product-gallery__thumbnail-list {
 --distance-to-bleed: var(--container-gutter);
 --container-gutter-context: var(--product-gallery-gap);
 max-width: 100%;
 position: relative;
}
.product-gallery__thumbnail-list.container {
 --distance-to-bleed: var(--product-gallery-gap);
}
[allow-transparent-header]
 .product-gallery__thumbnail-list
 .scroll-marker-group--thumbnails {
 padding-inline: var(--product-gallery-gap);
}
.product-gallery__thumbnail-scroller {
 --distance-to-bleed: var(--product-gallery-thumbnail-list-gap);
 grid-auto-columns: var(--product-gallery-thumbnail-size);
 grid-auto-flow: var(--product-gallery-thumbnail-list-grid-auto-flow, column);
 align-items: start;
 gap: var(--product-gallery-thumbnail-list-gap);
 scroll-snap-type: both mandatory;
 max-height: var(--product-gallery-thumbnail-list-max-height, none);
 overscroll-behavior: contain;
 scrollbar-width: none;
 grid-template-columns: none;
 margin-block-end: -6px;
 padding-block-end: 6px;
 display: grid;
 position: relative;
 overflow: auto;
}
.product-gallery__thumbnail-scroller::-webkit-scrollbar {
 display: none;
}
.product-gallery__media-badge {
 position: absolute;
 inset-block-end: 0;
 inset-inline-start: 0;
}
.product-zoom-button {
 --product-gallery-zoom-button-position: min(5%, 0.5rem);
 grid-auto-flow: column;
 align-items: center;
 display: grid;
 position: absolute;
 inset-block-end: var(--product-gallery-zoom-button-position);
 inset-inline-end: var(--product-gallery-zoom-button-position);
 overflow: hidden;
}
.product-zoom-button .icon {
 padding: 0.75rem;
}
@media screen and (pointer: fine) {
 .product-zoom-button:hover .product-zoom-button__label {
  width: auto;
 }
}
.product-zoom-button__label {
 width: 0;
 font: var(--button-font);
 letter-spacing: var(--button-letter-spacing);
 text-transform: var(--button-text-transform);
 transition: width 0.3s;
}
.view-in-space-button {
 margin-block-start: var(--container-gutter);
}
@media screen and (min-width: 700px) {
 .product-gallery__controls-floating .scroll-marker-group {
  --scroll-marker-group-inset-block-end: 2.5rem;
 }
 .product-gallery__controls-floating .scroll-marker-group--counter {
  --scroll-marker-group-inset-block-end: 1.75rem;
 }
 .product-gallery__controls-floating .scroll-marker-group--thumbnails {
  --scroll-marker-group-inset-block-end: 1.75rem;
  --scroll-marker-group-width: 100%;
  padding-inline: 1.75rem;
  left: 0;
  transform: none;
 }
 .product-gallery__controls-floating .product-gallery__thumbnail-list {
  align-items: flex-end;
  width: 75%;
  height: 100%;
  padding-block-end: 1.75rem;
  display: flex;
  position: absolute;
  inset-block-end: 0;
 }
 .product-gallery__controls-floating .scroll-marker-group--thumbnails {
  z-index: 1;
  position: sticky;
  inset-block-end: calc(1.75rem - 6px);
 }
 .product-zoom-button {
  --product-gallery-zoom-button-position: min(5%, 1.75rem);
 }
}
@media screen and (min-width: 1000px) {
 .product-gallery {
  position: sticky;
  inset-block-start: var(--header-height);
 }
 [allow-transparent-header] .product-gallery {
  margin-inline-start: calc(-1 * var(--container-gutter));
  inset-block-start: 0;
 }
 .modal--quick-buy .product-gallery {
  inset-block-start: 0;
 }
 [allow-transparent-header] .product-gallery__thumbnail-list {
  padding-inline-start: var(--product-gallery-gap);
 }
 [allow-transparent-header]
  .product-gallery__thumbnail-list
  .scroll-marker-group--thumbnails {
  padding-inline: 0;
 }
 [allow-transparent-header]
  .product-gallery__controls-floating
  .scroll-marker-group--thumbnails {
  padding-inline: 1.75rem;
 }
}
.product-info {
 --distance-to-bleed: min(1.75rem, var(--container-gutter));
 --product-block-item-margin: 1.75rem;
 width: 100%;
 margin-inline: auto;
}
.product-info__block-list > :not(:nth-child(1 of:not(:empty))) {
 margin-block-start: var(--product-block-item-margin);
}
.product-info__block-list > :not(:last-child) {
 margin-block-end: var(--product-block-item-margin);
}
.product-info__block-item:empty {
 display: none;
}
.product-info__block-item[data-block-type="title"] {
 --product-block-item-margin: -0.5rem;
}
.product-info__block-item:is(
  [data-block-type="badges"],
  [data-block-type="vendor"],
  [data-block-type="sku"],
  [data-block-type="price"]
 ) {
 --product-block-item-margin: 1.25rem;
}
@media screen and (min-width: 1000px) {
 .product-info {
  max-width: calc(28.5rem + var(--product-block-item-margin) * 2);
  margin-block: 0;
  position: sticky;
  inset-block-start: calc(var(--sticky-area-height) + 20px);
 }
 [allow-transparent-header] .product-info {
  margin-block-start: var(--header-height);
 }
}
.variant-picker {
 row-gap: var(--product-block-item-margin);
 grid-template-columns: minmax(0, 1fr);
 display: grid;
}
.variant-picker__option {
 row-gap: var(--form-control-gap);
 grid-template-columns: minmax(0, 1fr);
 display: grid;
}
.variant-picker__option-info {
 flex-wrap: wrap;
 align-items: baseline;
 column-gap: 2rem;
 display: flex;
}
@media (scripting: none) {
 .variant-picker__option {
  display: none;
 }
}
.buy-buttons {
 row-gap: 0.625rem;
 display: grid;
}
.buy-buttons .quantity-selector {
 min-height: 100%;
}
.buy-buttons .collapse-quantity-selector .quantity-selector {
 border-inline-end: none;
}
.payment-terms mabel-payment-terms {
 background: rgb(var(--background-secondary));
 padding: 1rem;
 display: block;
}
.product-countdown {
 border-radius: min(4px, var(--button-border-radius));
 grid-template-columns: minmax(0, 1fr);
 grid-auto-columns: min-content;
 grid-auto-flow: column;
 align-items: center;
 column-gap: 2.5rem;
 padding: 1rem 1.25rem;
 display: grid;
}
.drawer--pickup-availability {
 --drawer-header-padding-block: min(2rem, var(--container-gutter));
 --drawer-header-padding-inline: min(2rem, var(--container-gutter));
}
.drawer--pickup-availability::part(header) {
 text-align: start;
 justify-items: start;
}
.drawer--pickup-availability::part(close-button) {
 grid-column: 2;
 align-self: start;
 margin-inline-start: auto;
}
.product-sticky-add-to-cart {
 z-index: 2;
 visibility: hidden;
 opacity: 0;
 border-width: 1px;
 grid-template-columns: minmax(0, 1fr);
 grid-auto-flow: column;
 justify-content: space-between;
 align-items: center;
 width: min(100%, 40rem);
 padding: 1rem 2rem 1rem 1rem;
 transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
 display: grid;
 position: fixed;
 inset-block-end: 1.75rem;
 inset-inline-end: 1.75rem;
 box-shadow: 0 2px 4px #0000000d;
}
.product-sticky-add-to-cart.is-visible {
 visibility: visible;
 opacity: 1;
}
@media screen and (max-width: 699px) {
 .product-sticky-add-to-cart {
  box-shadow: none;
  background: none;
  border: none;
  padding: 1rem;
  inset-block-end: 0;
  inset-inline-start: 0;
 }
}
.products-with-image .product-list {
 position: relative;
}
.products-with-image__products-wrapper {
 --distance-to-bleed: var(--product-list-column-gap);
 padding: var(--product-list-column-gap);
}
.products-with-image__products-wrapper:has(.product-card--info-outside) {
 padding-block-end: calc(var(--section-vertical-spacing) / 2);
}
.products-with-image__carousel-arrow {
 transition: opacity 0.2s;
}
.products-with-image__carousel-arrow[disabled] {
 opacity: 0.3;
}
@media screen and (min-width: 1000px) {
 .products-with-image__image-wrapper {
  align-self: start;
  transition: inset-block-start 0.2s ease-in-out;
  position: sticky;
  inset-block-start: var(--sticky-offset);
 }
 .products-with-image__products-wrapper {
  grid-template-columns: minmax(0, 1fr);
  padding-block-end: var(--product-list-column-gap);
  display: grid;
 }
 .products-with-image__carousel-container {
  padding: var(--container-gutter) var(--product-list-row-gap);
  grid-template-columns: minmax(0, 1fr);
  place-self: center;
  justify-items: center;
  gap: 2.5rem;
  max-width: min(35vw, 550px);
  display: grid;
 }
 .products-with-image__carousel-container .scroll-marker-group {
  flex-wrap: wrap;
  justify-content: center;
  row-gap: 0.5rem;
 }
}
.mabel-section--reading-text {
 overflow: clip;
}
.reading-text {
 min-height: calc(
  100vh + var(--reading-text-scroll-height, 0px) - var(--sticky-area-height)
 );
 padding-inline: var(--container-gutter);
 background: rgb(var(--reading-text-overlay));
 isolation: isolate;
 display: block;
}
.reading-text__inner {
 min-height: calc(100dvh - var(--sticky-area-height));
 padding-block: min(var(--section-vertical-spacing), 3rem);
 grid-template-rows: minmax(0, 1fr);
 grid-template-columns: minmax(0, 1fr);
 display: grid;
 position: sticky;
 inset-block-start: var(--sticky-area-height);
}
.reading-text__inner ::part(letter) {
 white-space: pre-wrap;
}
.reading-text__inner ::part(letter),
.reading-text__inner .button {
 opacity: var(--reading-text-initial-opacity, 0.2);
}
.rich-text {
 grid-template-columns: minmax(0, 1fr);
 grid-auto-columns: minmax(0, 1fr);
 grid-auto-flow: column;
 align-items: start;
 column-gap: 3rem;
 display: grid;
}
.mabel-section--scrolling-content > * {
 z-index: 1;
 transform: rotate(var(--scrolling-content-rotation))
  translate(calc(var(--transform-logical-flip) * -1%));
 transform-origin: 0;
 width: 102%;
 position: relative;
}
.scrolling-content {
 --scrolling-content-calculated-gap: var(--scrolling-content-gap, 2ch);
 text-align: start;
 white-space: nowrap;
 -webkit-user-select: none;
 user-select: none;
 display: block;
 position: relative;
 overflow: hidden;
}
.scrolling-content[direction="end-to-start"] {
 text-align: end;
}
.scrolling-content::part(scroller) {
 width: max-content;
 margin-inline: inherit;
 display: flex;
}
@supports (overflow: clip) {
 .scrolling-content {
  overflow: clip visible;
 }
}
.scrolling-content__item {
 align-items: center;
 gap: var(--scrolling-content-calculated-gap);
 width: max-content;
 grid-auto-flow: column;
 padding-inline-end: var(--scrolling-content-calculated-gap);
 display: grid;
}
.scrolling-content__text {
 align-items: center;
 column-gap: min(0.8em, 2rem);
 display: flex;
}
.scrolling-content__text a {
 text-underline-position: under;
 text-decoration: underline;
 text-decoration-thickness: min(3px, 0.1em);
}
.scrolling-content__text-icon {
 width: auto;
 height: 1em;
}
.scrolling-content--vertical .scrolling-content__item {
 grid-auto-flow: row;
 justify-items: center;
 padding-block-end: var(--scrolling-content-calculated-gap);
 padding-inline-end: 0;
}
@supports (overflow: clip) {
 .scrolling-content--vertical {
  overflow: visible clip;
 }
}
@media screen and (min-width: 700px) {
 .sm\:scrolling-content--vertical .scrolling-content__item {
  grid-auto-flow: row;
  justify-items: center;
  padding-block-end: var(--scrolling-content-calculated-gap);
  padding-inline-end: 0;
 }
 @supports (overflow: clip) {
  .sm\:scrolling-content--vertical {
   overflow: visible clip;
  }
 }
}
@media screen and (min-width: 1000px) {
 .md\:scrolling-content--vertical .scrolling-content__item {
  grid-auto-flow: row;
  justify-items: center;
  padding-block-end: var(--scrolling-content-calculated-gap);
  padding-inline-end: 0;
 }
 @supports (overflow: clip) {
  .md\:scrolling-content--vertical {
   overflow: visible clip;
  }
 }
}
.prose .scrolling-content__text > * {
 margin-block-start: 0 !important;
}
.search-form {
 border-width: 1px;
 grid-template-columns: auto minmax(0, 1fr);
 align-items: center;
 column-gap: 0.625rem;
 padding: 0.8rem 1.25rem;
 transition: border-color 0.2s;
 display: grid;
}
.search-form > * {
 margin: 0;
}
.search-form:focus-within {
 border-color: currentColor;
}
.search-form__input {
 background: none;
 font-size: 1.0625rem;
}
.search-form__input:focus {
 outline: none;
}
.search-form__input::-webkit-search-cancel-button {
 display: none;
}
@media screen and (min-width: 700px) {
 .search-form {
  padding: 1.2rem 1.75rem;
 }
}
.drawer--search::part(close-button) {
 justify-self: end;
}
.drawer--search [slot="header"] {
 width: 100%;
 padding-inline-end: 2.5rem;
}
.search-drawer__input {
 width: 100%;
 font-size: var(--text-h7);
 background: none;
}
.search-drawer__input:focus {
 outline: none;
}
.search-drawer__input::-webkit-search-cancel-button {
 display: none;
}
.search-drawer__product-carousel {
 --distance-to-bleed: var(--drawer-body-padding-inline);
 gap: var(--product-list-row-gap) var(--product-list-column-gap);
 grid-auto-columns: 200px;
 grid-auto-flow: column;
 padding-block: 1px;
 display: grid;
}
@media screen and (min-width: 700px) {
 .search-drawer__product-carousel {
  grid-auto-columns: 240px;
 }
}
.search-tabs {
 grid-template-columns: minmax(0, 1fr);
 row-gap: 1.75rem;
 display: grid;
}
.predictive-search__suggestions ~ .search-tabs {
 border-block-start-width: 1px;
 padding-block-start: 1.75rem;
}
.search-tabs::part(tab-list) {
 margin-inline: calc(-1 * var(--drawer-body-padding-inline));
 padding-inline: var(--drawer-body-padding-inline);
 scrollbar-width: none;
 grid-auto-columns: max-content;
 grid-auto-flow: column;
 justify-content: start;
 column-gap: 1.5rem;
 display: grid;
 overflow: auto;
}
.search-tabs [slot="tab"]:not([aria-selected="true"]) {
 color: rgb(var(--text-color) / 0.6);
}
.predictive-search__no-results {
 align-content: center;
 justify-items: center;
 min-height: 100%;
 display: grid;
}
.predictive-search__suggestions {
 white-space: nowrap;
 grid-auto-flow: column;
 justify-content: start;
 column-gap: 1.5rem;
 margin-block-start: calc(-1 * var(--drawer-body-padding-block));
 padding-block: 1rem;
 display: grid;
 overflow-x: auto;
}
.predictive-search__suggestions mark {
 background: none;
 font-weight: 700;
}
.predictive-search__products {
 gap: var(--product-list-row-gap) var(--product-list-column-gap);
 grid-template-columns: repeat(2, minmax(0, 1fr));
 display: grid;
}
.predictive-search__articles,
.predictive-search__collections {
 grid-template-columns: minmax(0, 1fr);
 row-gap: 1.5rem;
 display: grid;
}
.predictive-search__item-result {
 align-items: center;
 column-gap: 0.75rem;
 display: flex;
}
.predictive-search__item-result img {
 flex-shrink: 0;
 width: 5rem;
}
.predictive-search-link {
 justify-content: space-between;
 padding-block: 1rem;
 display: flex;
}
.predictive-search-link svg {
 opacity: 0;
 transition: opacity 0.2s, transform 0.2s;
}
.predictive-search-link span {
 transition: transform 0.2s;
}
.predictive-search-link:hover svg {
 opacity: 1;
 transform: translate(-0.75rem);
}
.predictive-search-link:hover span {
 transform: translate(0.75rem);
}
@media screen and (min-width: 700px) {
 .predictive-search__suggestions {
  padding-block: 1.75rem;
 }
 .predictive-search-link {
  padding-block: 1.25rem;
 }
 .predictive-search__item-result {
  column-gap: 1.75rem;
 }
 .predictive-search__item-result img {
  width: 10rem;
 }
}
.slideshow {
 background-color: rgb(var(--slideshow-background));
 display: grid;
 overflow: hidden;
}
.slideshow__slide {
 grid-area: 1 / -1;
 align-items: stretch;
 display: grid;
 overflow: hidden;
}
.slideshow__slide img {
 -webkit-user-select: none;
 user-select: none;
}
.slideshow__slide:has(.min-h-auto) {
 align-self: start;
}
.slideshow__slide:not(.is-selected) {
 visibility: hidden;
}
.slideshow__slide:not(:only-child):has(
  .place-self-end-start,
  .place-self-end-center,
  .place-self-end
 ) {
 --content-box-spacing-block-end: 5rem;
}
.slideshow__split-media {
 width: 100%;
 height: 100%;
}
.slideshow[transition="fade"] {
 isolation: isolate;
}
.slideshow[transition="fade"] .slideshow__slide {
 mix-blend-mode: plus-lighter;
}
@media (prefers-reduced-motion: reduce) {
 .slideshow {
  isolation: isolate;
 }
 .slideshow .slideshow__slide {
  mix-blend-mode: plus-lighter;
 }
}
@media screen and (max-width: 999px) {
 .slideshow__split-media > :last-child {
  display: none;
 }
}
@media screen and (min-width: 1000px) {
 .slideshow__split-media {
  grid-template-rows: minmax(0, 1fr);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  display: grid;
 }
}
.slideshow__controls {
 z-index: 1;
 color: rgb(var(--slideshow-controls-color));
 grid-area: 1 / -1;
 place-self: end;
 align-items: center;
 column-gap: 0.5rem;
 margin-block-end: 1.25rem;
 margin-inline-end: 1.25rem;
 display: flex;
}
.slideshow__autoplay-button {
 place-content: center;
 width: 1.5rem;
 height: 1.5rem;
 display: grid;
}
.slideshow__autoplay-button > * {
 grid-area: 1 / -1;
}
@media screen and (min-width: 700px) {
 .slideshow__controls {
  column-gap: 1rem;
  margin-block-end: 1.75rem;
  margin-inline-end: 1.75rem;
 }
}
.specification-table {
 --specification-row-block-padding: 1rem;
 border-block-width: 1px;
}
.specification-table__row {
 padding-block: var(--specification-row-block-padding);
 grid-template-columns: minmax(0, 0.4fr) minmax(0, 0.6fr);
 align-items: end;
 column-gap: 1rem;
 display: grid;
}
.specification-table__row-name,
.specification-table__row-value {
 text-align: start;
 padding: 0;
 font-weight: 400;
}
@media screen and (min-width: 700px) {
 .specification-table {
  --specification-row-block-padding: 1.65rem;
 }
}
.mabel-challenge__container,
.mabel-policy__container,
.mabel-email-marketing-confirmation__container {
 max-width: 48rem;
 padding-block: var(--section-vertical-spacing);
}
.mabel-challenge__container {
 gap: 1rem;
 display: grid;
}
.mabel-challenge__container > form {
 display: contents;
}
.mabel-email-marketing-confirmation__container {
 text-align: center;
}
.mabel-policy__title {
 margin-block-end: var(--section-stack-row-gap);
}
.mabel-policy__title h1 {
 font: inherit;
}
.testimonials__carousel {
 display: grid;
}
.testimonials__content {
 grid-area: 1 / -1;
 align-content: start;
 gap: 2rem;
 display: grid;
}
.testimonials__content:not(.is-selected) {
 opacity: 0;
 visibility: hidden;
}
.testimonials__nav {
 gap: 0.75rem;
 display: flex;
}
.testimonials__content-wrapper {
 flex-direction: column;
 justify-content: space-between;
 gap: 2rem;
 height: 100%;
 display: flex;
}
.testimonials__info-list {
 isolation: isolate;
 display: grid;
}
.testimonials__info-list-item {
 mix-blend-mode: plus-lighter;
 grid-area: 1 / -1;
}
.testimonials__info-list-item.content-box {
 --content-box-spacing: var(--container-gutter);
}
.testimonials__info-list-item:not(:first-child) {
 opacity: 0;
 visibility: hidden;
}
.testimonials__product {
 background-color: rgb(var(--background));
 align-items: center;
 gap: 1.5rem;
 padding-block: 0.5rem;
 padding-inline: 0.5rem 1.5rem;
 display: flex;
}
.testimonials__product > img {
 width: 3rem;
}
@media screen and (min-width: 700px) {
 .testimonials__content {
  gap: 2.5rem;
  display: grid;
 }
 .testimonials__product {
  padding-block: 0.75rem;
  padding-inline: 0.75rem 3rem;
 }
 .testimonials__product > img {
  width: 4rem;
 }
}
.text-with-fixed-background__title-block {
 max-width: 40rem;
}
.text-with-fixed-background__content-block {
 max-width: 30rem;
 padding: calc(var(--has-filled-background, 0) * var(--container-gutter));
}
@keyframes textWithIconsItemsScale {
 0% {
  opacity: 0;
  scale: 0.8;
 }
 to {
  opacity: 1;
  scale: 1;
 }
}
.text-with-icons {
 grid: var(--text-with-icons-grid);
 gap: var(--text-with-icons-row-gap) var(--text-with-icons-column-gap);
 display: grid;
}
.text-with-icons__item {
 scroll-snap-align: center;
 scroll-snap-stop: always;
 align-items: start;
 column-gap: 1.25rem;
 padding-inline: 0;
 display: flex;
}
@supports (animation-timeline: scroll()) {
 .text-with-icons__item {
  animation-name: textWithIconsItemsScale, textWithIconsItemsScale;
  animation-direction: normal, reverse;
  animation-timeline: view(inline 0);
  animation-range: entry-crossing, exit-crossing;
 }
}
.text-with-icons--separator-horizontal .text-with-icons__item {
 border-block-start-width: 1px;
 padding-block-start: var(--text-with-icons-row-gap);
}
@media screen and (min-width: 700px) {
 .text-with-icons--separator-vertical {
  margin-inline: calc(-1 * var(--container-gutter));
  column-gap: 0;
 }
 .text-with-icons--separator-vertical .text-with-icons__item {
  padding-inline: var(--container-gutter);
 }
}
@media screen and (max-width: 699px) {
 .text-with-icons.scroll-area .text-with-icons__item {
  border: none;
  padding: 0;
 }
}
.timeline {
 --scroll-shadow-size: 56px;
 --scroll-shadow-left: linear-gradient(
  to right,
  rgb(var(--background)) 20%,
  transparent 100%
 );
 --scroll-shadow-right: linear-gradient(
  to left,
  rgb(var(--background)) 20%,
  transparent 100%
 );
 --scroll-shadow-top: linear-gradient(
  to bottom,
  rgb(var(--background)) 20%,
  transparent 100%
 );
 --scroll-shadow-bottom: linear-gradient(
  to top,
  rgb(var(--background)) 20%,
  transparent 100%
 );
 --scroll-shadow-margin: 0 0 1px 0;
 --timeline-inner-padding: var(--container-gutter);
 display: flow-root;
}
.timeline__content-with-nav {
 grid-template-rows: auto minmax(0, 1fr);
 grid-template-columns: minmax(0, 1fr);
 display: grid;
}
.timeline__nav {
 height: 100%;
 padding: var(--timeline-inner-padding) var(--container-gutter);
 white-space: nowrap;
 border-block-end-width: 1px;
 align-items: center;
 column-gap: 1.75rem;
 display: flex;
 position: relative;
}
.timeline__image-list,
.timeline__content-list {
 display: grid;
}
:is(.timeline__image-list, .timeline__content-list) > * {
 grid-area: 1 / -1;
}
:is(.timeline__image-list, .timeline__content-list) > :not(.is-selected) {
 opacity: 0;
 visibility: hidden;
}
.timeline__content-list {
 padding: var(--timeline-inner-padding);
 position: relative;
}
.timeline__image-list {
 isolation: isolate;
 overflow: hidden;
}
.timeline__image {
 mix-blend-mode: plus-lighter;
}
.timeline__content {
 grid-template-columns: minmax(0, 1fr);
 align-content: start;
 row-gap: 1.5rem;
 display: grid;
}
.timeline--with-spacing .timeline__image-list {
 margin: var(--timeline-inner-padding);
 margin-block-start: 0;
}
@media screen and (min-width: 1000px) {
 .timeline {
  --scroll-shadow-size: 96px;
  --timeline-inner-padding: min(2.8rem, var(--container-gutter));
  grid-template-columns: repeat(2, minmax(0, 1fr));
  display: grid;
 }
 .timeline--reverse .timeline__image-list {
  order: -1;
 }
 .timeline__content-with-nav {
  height: calc(50vw * var(--timeline-aspect-ratio));
 }
 .timeline__content-list {
  padding-inline: var(--timeline-inner-padding);
  overscroll-behavior-y: contain;
  align-content: safe center;
  align-items: center;
  overflow-y: auto;
 }
 .timeline__content {
  align-content: stretch;
 }
 .timeline:not(.timeline--with-spacing)
  .timeline__content-with-nav--top-nav
  .timeline__nav {
  padding-block: 1.5rem;
 }
 .timeline--with-spacing .timeline__content-with-nav {
  height: calc(
   50vw * var(--timeline-aspect-ratio) + var(--timeline-inner-padding)
  );
 }
 .timeline--with-spacing .timeline__content-with-nav--top-nav .timeline__nav {
  border-block-end: none;
 }
 .timeline--with-spacing .timeline__image-list {
  margin: var(--timeline-inner-padding);
  margin-inline-start: 0;
 }
 .timeline__content-with-nav--left-nav {
  --scroll-shadow-margin: 0 1px 0 0;
  grid-template-rows: minmax(0, 1fr);
  grid-template-columns: auto minmax(0, 1fr);
 }
 .timeline__content-with-nav--left-nav scroll-shadow::part(s) {
  transform: scale(-1);
 }
 .timeline__content-with-nav--left-nav .timeline__nav {
  writing-mode: vertical-rl;
  overflow-wrap: break-word;
  overscroll-behavior: auto contain;
  padding-block: 2rem;
  overflow: hidden auto;
  transform: scale(-1);
 }
 .timeline__content-with-nav--left-nav .timeline__nav .link-reversed {
  background-position: 0 0;
  background-size: 1px 0;
 }
 .timeline__content-with-nav--left-nav
  .timeline__nav
  .link-reversed[aria-current="true"] {
  background-size: 1px 100%;
 }
 @media screen and (pointer: fine) {
  .timeline__content-with-nav--left-nav
   .timeline__nav
   .link-reversed:not([aria-current="true"]):hover {
   background-position-y: bottom;
   background-size: 1px 100%;
  }
 }
 .timeline__content-with-nav--left-nav .timeline__content-list {
  align-content: stretch;
 }
 .timeline__content-with-nav--left-nav .timeline__content {
  grid-auto-rows: auto minmax(0, 1fr);
  align-items: center;
  height: 100%;
 }
}
@media screen and (min-width: 1400px) {
 .timeline__content-with-nav--left-nav .timeline__nav {
  padding-block: 2.8rem;
 }
}
.trust-icons {
 padding-block: min(4rem, var(--section-vertical-spacing));
 border-block-width: 1px;
 grid-template-columns: minmax(0, 1fr);
 row-gap: 1.5rem;
 display: grid;
}
.trust-icons__carousel {
 grid: auto / auto-flow 100%;
 display: grid;
}
.trust-icons__item {
 padding-inline: 1.5rem;
}
@media screen and (min-width: 700px) {
 .trust-icons {
  row-gap: 2rem;
 }
}
@media screen and (min-width: 1000px) {
 .trust-icons {
  padding-block: 0;
 }
 .trust-icons__carousel {
  grid: auto / repeat(var(--trust-icons-item-count, 4), minmax(0, 1fr));
  column-gap: 1px;
 }
 .trust-icons__item {
  /* padding-block: min(4rem, var(--section-vertical-spacing)); */
  padding-block: 4rem;
  box-shadow: 1px 0 rgb(var(--border-color));
 }
}
.sr-only,
::part(sr-only) {
 clip: rect(0, 0, 0, 0);
 white-space: nowrap;
 border-width: 0;
 width: 1px;
 height: 1px;
 margin: -1px;
 padding: 0;
 position: absolute;
 overflow: hidden;
}
:is(
  :is(.sr-only, ::part(sr-only))[type="checkbox"]:focus-visible + label,
  :is(.sr-only, ::part(sr-only))[type="radio"]:focus-visible + label
 ) {
 outline: 2px solid highlight;
 outline: 2px solid -webkit-focus-ring-color;
}
.skip-to-content:focus-visible {
 z-index: 9999;
 clip: auto;
 color: #fff;
 background: #000;
 width: auto;
 height: auto;
 padding: 6px 12px;
 font-weight: 700;
 overflow: auto;
}
.tap-area {
 --tap-area-size: 2.25rem;
 position: relative;
}
.tap-area:before {
 content: "";
 width: var(--tap-area-size);
 height: var(--tap-area-size);
 top: calc(50% - var(--tap-area-size) / 2);
 left: calc(50% - var(--tap-area-size) / 2);
 position: absolute;
}
.tap-area--sm {
 --tap-area-size: 1rem;
}
.link-tap-area {
 position: relative;
}
.link-tap-area:before {
 content: "";
 position: absolute;
 top: -4px;
 right: 0;
 bottom: -4px;
 left: 0;
}
@media print {
 .print\:hidden {
  display: none;
 }
}
@media screen and (pointer: fine) {
 .features--zoom-filter-image .zoom-image {
  transform-origin: center;
  transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1), filter 0.6s;
 }
 .features--zoom-filter-image .group:hover .group-hover\:zoom {
  filter: brightness(1.1) contrast(1.05);
  transform: scale(1.07) rotate(-1deg);
 }
 .features--zoom-image .zoom-image {
  transform-origin: center;
  transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
 }
 .features--zoom-image .group:hover .group-hover\:zoom {
  transform: scale(1.1);
 }
}
/* @media (prefers-reduced-motion: no-preference) {
 [reveal-on-scroll="true"] {
  opacity: 0;
 }
}
@media (scripting: none) {
 [reveal-on-scroll="true"] {
  opacity: 1;
 }
} */
.border {
 border: 1px solid rgb(var(--border-color));
}
.border-x {
 border-inline: 1px solid rgb(var(--border-color));
}
.border-y {
 border-block: 1px solid rgb(var(--border-color));
}
.border-t {
 border-block-start: 1px solid rgb(var(--border-color));
}
.border-b {
 border-block-end: 1px solid rgb(var(--border-color));
}
.divide-x > :not([hidden], .custom-cursor) ~ :not([hidden], .custom-cursor) {
 border-inline-start-width: 1px;
}
.divide-y > :not([hidden], .custom-cursor) ~ :not([hidden], .custom-cursor) {
 border-block-start-width: 1px;
}
.outline {
 outline: 1px solid rgb(var(--border-color));
}
.rounded-full {
 border-radius: var(--rounded-full);
}
.text-success {
 color: rgb(var(--success-text));
}
.text-warning {
 color: rgb(var(--warning-text));
}
.text-error {
 color: rgb(var(--error-text));
}
.text-subdued {
 color: rgb(var(--text-color) / 0.6);
}
.text-ghost {
 color: rgb(var(--text-color) / 0.1);
}
.text-on-sale {
 color: rgb(var(--on-sale-text));
}
.text-stroke {
 -webkit-text-stroke: 1px currentColor;
 -webkit-text-fill-color: transparent;
}
.text-gradient {
 background-image: var(--gradient);
 color: #0000;
 -webkit-background-clip: text;
 background-clip: text;
}
.text-stroke.text-gradient {
 color: rgb(var(--background));
 -webkit-text-stroke-color: transparent;
 -webkit-text-fill-color: unset;
}
.bg-error,
.bg-success,
.bg-warning {
 --border-color: var(--text-color) / 0.15;
}
.bg-error {
 background: rgb(var(--error-background));
}
.bg-success {
 background: rgb(var(--success-background));
}
.bg-warning {
 background: rgb(var(--warning-background));
}
.bg-secondary {
 background: rgb(var(--background-secondary));
}
.with-overlay:after {
 content: "";
 background: var(--gradient-overlay, rgb(var(--overlay, 0 0 0 / 0.3)));
 pointer-events: none;
 border-radius: inherit;
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}
.opacity-0 {
 opacity: 0;
}
.clip-inset {
 clip-path: inset(0);
 margin-block-start: -1px;
}
.mix-blend-plus-lighter {
 mix-blend-mode: plus-lighter;
}
.lock {
 overflow: hidden;
}
.pointer-events-none {
 pointer-events: none;
}
.scroll-area,
::part(scroll-area) {
 scrollbar-width: none;
 overscroll-behavior-x: contain;
 overflow: auto hidden;
}
.scroll-area::-webkit-scrollbar {
 display: none;
}
::part(scroll-area)::-webkit-scrollbar {
 display: none;
}
.snap-x {
 scroll-snap-type: x mandatory;
}
.snap-y {
 scroll-snap-type: y mandatory;
}
.snap-start {
 scroll-snap-align: start;
 scroll-snap-stop: always;
}
.snap-center {
 scroll-snap-align: center;
 scroll-snap-stop: always;
}
.hidden,
.empty\:hidden:empty {
 display: none;
}
.block {
 display: block;
}
.inline-block {
 display: inline-block;
}
.grid {
 display: grid;
}
.flex {
 display: flex;
}
.contents {
 display: contents;
}
@media screen and (min-width: 700px) {
 .sm\:hidden {
  display: none;
 }
 .sm\:block {
  display: block;
 }
 .sm\:grid {
  display: grid;
 }
 .sm\:flex {
  display: flex;
 }
 .sm\:table {
  display: table;
 }
 .sm\:table-cell {
  display: table-cell;
 }
 .sm\:contents {
  display: contents;
 }
}
@media screen and (min-width: 1000px) {
 .md\:hidden {
  display: none;
 }
 .md\:block {
  display: block;
 }
 .md\:grid {
  display: grid;
 }
 .md\:flex {
  display: flex;
 }
 .md\:table {
  display: table;
 }
 .md\:table-cell {
  display: table-cell;
 }
 .md\:contents {
  display: contents;
 }
}
@media screen and (min-width: 1150px) {
 .lg\:hidden {
  display: none;
 }
 .lg\:block {
  display: block;
 }
 .lg\:grid {
  display: grid;
 }
 .lg\:flex {
  display: flex;
 }
 .lg\:table {
  display: table;
 }
 .lg\:table-cell {
  display: table-cell;
 }
 .lg\:contents {
  display: contents;
 }
}
@media screen and (max-width: 699px) {
 .sm-max\:hidden {
  display: none;
 }
}
@media screen and (max-width: 999px) {
 .md-max\:hidden {
  display: none;
 }
}
@media screen and (max-width: 1149px) {
 .lg-max\:hidden {
  display: none;
 }
}
@media screen and (max-width: 1399px) {
 .xl-max\:hidden {
  display: none;
 }
}
@media (prefers-reduced-motion: reduce) {
 .motion-reduce\:hidden {
  display: none;
 }
 .motion-reduce\:block {
  display: block;
 }
}
@media screen and (pointer: fine) {
 .no-touch\:hidden {
  display: none;
 }
}
@media screen and (pointer: coarse) {
 .touch\:hidden {
  display: none;
 }
}
.visibility-hidden {
 visibility: hidden;
}
.relative {
 position: relative;
}
.sticky {
 transition: inset-block-start 0.2s ease-in-out;
 position: sticky;
 inset-block-start: var(--sticky-inset-block-start, var(--sticky-offset, 0px));
}
.wrap {
 flex-wrap: wrap;
}
.grow {
 flex-grow: 1;
}
.shrink-0 {
 flex-shrink: 0;
}
.span-full {
 grid-area: 1 / 1 / -1 / -1;
}
.column-span-full {
 grid-column: 1 / -1;
}
.row-span-full {
 grid-row: 1 / -1;
}
.text-start {
 text-align: start;
}
.text-center {
 text-align: center;
}
.text-end {
 text-align: end;
}
.content-start {
 align-content: start;
}
.content-center {
 align-content: center;
}
.content-end {
 align-content: end;
}
.content-between {
 align-content: space-between;
}
.justify-start {
 justify-content: start;
}
.justify-center {
 justify-content: safe center;
}
.justify-end {
 justify-content: safe end;
}
.justify-between {
 justify-content: space-between;
}
.justify-evenly {
 justify-content: space-evenly;
}
.justify-items-start {
 justify-items: start;
}
.justify-items-center {
 justify-items: safe center;
}
.justify-items-end {
 justify-items: safe end;
}
.justify-self-start {
 justify-self: start;
}
.justify-self-center {
 justify-self: center;
}
.justify-self-end {
 justify-self: end;
}
.align-start {
 align-items: start;
}
.align-center {
 align-items: center;
}
.align-end {
 align-items: end;
}
.align-baseline {
 align-items: baseline;
}
.align-self-stretch {
 align-self: stretch;
}
.align-self-start {
 align-self: start;
}
.align-self-center {
 align-self: center;
}
.align-self-end {
 align-self: end;
}
.place-self-start {
 place-self: start;
}
.place-self-start-center {
 place-self: start center;
}
.place-self-start-end {
 place-self: start end;
}
.place-self-center {
 place-self: center;
}
.place-self-center-start {
 place-self: center start;
}
.place-self-center-end {
 place-self: center end;
}
.place-self-end {
 place-self: end;
}
.place-self-end-start {
 place-self: end start;
}
.place-self-end-center {
 place-self: end center;
}
@media screen and (min-width: 700px) {
 .sm\:text-start {
  text-align: start;
 }
 .sm\:text-center {
  text-align: center;
 }
 .sm\:text-end {
  text-align: end;
 }
 .sm\:content-start {
  align-content: start;
 }
 .sm\:content-center {
  align-content: center;
 }
 .sm\:content-end {
  align-content: end;
 }
 .sm\:content-between {
  align-content: space-between;
 }
 .sm\:justify-start {
  justify-content: start;
 }
 .sm\:justify-center {
  justify-content: safe center;
 }
 .sm\:justify-end {
  justify-content: safe end;
 }
 .sm\:justify-between {
  justify-content: space-between;
 }
 .sm\:justify-evenly {
  justify-content: space-evenly;
 }
 .sm\:justify-items-start {
  justify-items: start;
 }
 .sm\:justify-items-center {
  justify-items: safe center;
 }
 .sm\:justify-items-end {
  justify-items: safe end;
 }
 .sm\:justify-self-start {
  justify-self: start;
 }
 .sm\:justify-self-center {
  justify-self: center;
 }
 .sm\:justify-self-end {
  justify-self: end;
 }
 .sm\:align-start {
  align-items: start;
 }
 .sm\:align-center {
  align-items: center;
 }
 .sm\:align-end {
  align-items: end;
 }
 .sm\:align-baseline {
  align-items: baseline;
 }
 .sm\:align-self-stretch {
  align-self: stretch;
 }
 .sm\:align-self-start {
  align-self: start;
 }
 .sm\:align-self-center {
  align-self: center;
 }
 .sm\:align-self-end {
  align-self: end;
 }
 .sm\:place-self-start {
  place-self: start;
 }
 .sm\:place-self-start-center {
  place-self: start center;
 }
 .sm\:place-self-start-end {
  place-self: start end;
 }
 .sm\:place-self-center {
  place-self: center;
 }
 .sm\:place-self-center-start {
  place-self: center start;
 }
 .sm\:place-self-center-end {
  place-self: center end;
 }
 .sm\:place-self-end {
  place-self: end;
 }
 .sm\:place-self-end-start {
  place-self: end start;
 }
 .sm\:place-self-end-center {
  place-self: end center;
 }
}
@media screen and (min-width: 1000px) {
 .md\:text-start {
  text-align: start;
 }
 .md\:text-center {
  text-align: center;
 }
 .md\:text-end {
  text-align: end;
 }
 .md\:content-start {
  align-content: start;
 }
 .md\:content-center {
  align-content: center;
 }
 .md\:content-end {
  align-content: end;
 }
 .md\:content-between {
  align-content: space-between;
 }
 .md\:justify-start {
  justify-content: start;
 }
 .md\:justify-center {
  justify-content: safe center;
 }
 .md\:justify-end {
  justify-content: safe end;
 }
 .md\:justify-between {
  justify-content: space-between;
 }
 .md\:justify-evenly {
  justify-content: space-evenly;
 }
 .md\:justify-items-start {
  justify-items: start;
 }
 .md\:justify-items-center {
  justify-items: safe center;
 }
 .md\:justify-items-end {
  justify-items: safe end;
 }
 .md\:justify-self-start {
  justify-self: start;
 }
 .md\:justify-self-center {
  justify-self: center;
 }
 .md\:justify-self-end {
  justify-self: end;
 }
 .md\:align-start {
  align-items: start;
 }
 .md\:align-center {
  align-items: center;
 }
 .md\:align-end {
  align-items: end;
 }
 .md\:align-baseline {
  align-items: baseline;
 }
 .md\:align-self-stretch {
  align-self: stretch;
 }
 .md\:align-self-start {
  align-self: start;
 }
 .md\:align-self-center {
  align-self: center;
 }
 .md\:align-self-end {
  align-self: end;
 }
 .md\:place-self-start {
  place-self: start;
 }
 .md\:place-self-start-center {
  place-self: start center;
 }
 .md\:place-self-start-end {
  place-self: start end;
 }
 .md\:place-self-center {
  place-self: center;
 }
 .md\:place-self-center-start {
  place-self: center start;
 }
 .md\:place-self-center-end {
  place-self: center end;
 }
 .md\:place-self-end {
  place-self: end;
 }
 .md\:place-self-end-start {
  place-self: end start;
 }
 .md\:place-self-end-center {
  place-self: end center;
 }
}
.w-full {
 width: 100%;
}
.h-full {
 height: 100%;
}
.size-full {
 width: 100%;
 height: 100%;
}
.min-h-auto {
 min-height: auto;
}
.min-h-full {
 min-height: 100%;
}
.min-h-screen {
 min-height: 100svh;
}
.min-h-fill {
 min-height: calc(100svh - var(--sticky-area-height, 0px));
}
:is(.mabel-section, .mabel-section):first-child [allow-transparent-header] .min-h-fill {
 min-height: calc(
  100svh - var(--announcement-bar-height, 0px) -
   var(--countdown-condensed-height, 0px)
 );
}
.min-h-xs {
 min-height: clamp(10rem, 30vmax, 15rem);
}
.min-h-sm {
 min-height: clamp(15rem, 35vmax, 25rem);
}
.min-h-md {
 min-height: clamp(20rem, 45vmax, 35rem);
}
.min-h-lg {
 min-height: clamp(25rem, 55vmax, 45rem);
}
.min-w-full {
 min-width: 100%;
}
.max-w-full {
 max-width: 100%;
}
.max-w-xs {
 max-width: 26.5rem;
}
.max-w-sm {
 max-width: 36rem;
}
.max-w-md {
 max-width: 48rem;
}
.max-w-lg {
 max-width: 60rem;
}
.max-w-xl {
 max-width: 68rem;
}
.max-w-2xl {
 max-width: 78rem;
}
@media screen and (max-width: 699px) {
 .sm-max\:w-full {
  width: 100%;
 }
}
@media screen and (min-width: 700px) {
 .sm\:min-h-screen {
  min-height: 100svh;
 }
 .sm\:min-h-fill {
  min-height: calc(100svh - var(--sticky-area-height, 0px));
 }
 :is(.mabel-section, .mabel-section):first-child [allow-transparent-header] .sm\:min-h-fill {
  min-height: calc(
   100svh - var(--announcement-bar-height, 0px) -
    var(--countdown-condensed-height, 0px)
  );
 }
 :is(.mabel-section, .mabel-section):first-child:not(:has([allow-transparent-header]))
  .sm\:min-h-fill {
  min-height: calc(100svh - var(--header-group-height, 0px));
 }
 .sm\:min-h-xs {
  min-height: clamp(10rem, 30vmax, 15rem);
 }
 .sm\:min-h-sm {
  min-height: clamp(15rem, 40vmax, 25rem);
 }
 .sm\:min-h-md {
  min-height: clamp(20rem, 50vmax, 35rem);
 }
 .sm\:min-h-lg {
  min-height: clamp(25rem, 60vmax, 45rem);
 }
 .sm\:max-w-full {
  max-width: 100%;
 }
 .sm\:max-w-xs {
  max-width: 26.5rem;
 }
 .sm\:max-w-sm {
  max-width: 36rem;
 }
 .sm\:max-w-md {
  max-width: 48rem;
 }
 .sm\:max-w-lg {
  max-width: 60rem;
 }
 .sm\:max-w-xl {
  max-width: 68rem;
 }
 .sm\:max-w-2xl {
  max-width: 78rem;
 }
}
@media screen and (min-width: 1000px) {
 .md\:min-h-screen {
  min-height: 100svh;
 }
 .md\:min-h-fill {
  min-height: calc(100svh - var(--sticky-area-height, 0px));
 }
 :is(.mabel-section, .mabel-section):first-child [allow-transparent-header] .md\:min-h-fill {
  min-height: calc(
   100svh - var(--announcement-bar-height, 0px) -
    var(--countdown-condensed-height, 0px)
  );
 }
 :is(.mabel-section, .mabel-section):first-child:not(:has([allow-transparent-header]))
  .md\:min-h-fill {
  min-height: calc(100svh - var(--header-group-height, 0px));
 }
 .md\:min-h-xs {
  min-height: clamp(10rem, 30vmax, 15rem);
 }
 .md\:min-h-sm {
  min-height: clamp(15rem, 40vmax, 25rem);
 }
 .md\:min-h-md {
  min-height: clamp(20rem, 50vmax, 35rem);
 }
 .md\:min-h-lg {
  min-height: clamp(25rem, 60vmax, 45rem);
 }
 .md\:max-w-full {
  max-width: 100%;
 }
 .md\:max-w-xs {
  max-width: 26.5rem;
 }
 .md\:max-w-sm {
  max-width: 36rem;
 }
 .md\:max-w-md {
  max-width: 48rem;
 }
 .md\:max-w-lg {
  max-width: 60rem;
 }
 .md\:max-w-xl {
  max-width: 68rem;
 }
 .md\:max-w-2xl {
  max-width: 78rem;
 }
}
.mx-auto {
 margin-inline: auto;
}
.ms-auto {
 margin-inline-start: auto;
}
.me-auto {
 margin-inline-end: auto;
}
.my-auto {
 margin-block: auto;
}
.aspect-auto {
 aspect-ratio: auto;
}
.aspect-short {
 aspect-ratio: 4 / 3;
}
.aspect-tall {
 aspect-ratio: 2 / 3;
}
.aspect-portrait {
 aspect-ratio: 4 / 5;
}
.aspect-square {
 aspect-ratio: 1;
}
.aspect-video {
 aspect-ratio: 16 / 9;
}
@media screen and (min-width: 700px) {
 .sm\:aspect-auto {
  aspect-ratio: auto;
 }
 .sm\:aspect-short {
  aspect-ratio: 4 / 3;
 }
 .sm\:aspect-tall {
  aspect-ratio: 2 / 3;
 }
 .sm\:aspect-portrait {
  aspect-ratio: 4 / 5;
 }
 .sm\:aspect-square {
  aspect-ratio: 1;
 }
 .sm\:aspect-video {
  aspect-ratio: 16 / 9;
 }
}
.gap-0\.5 {
 gap: 0.125rem;
}
.gap-1 {
 gap: 0.25rem;
}
.gap-1\.5 {
 gap: 0.375rem;
}
.gap-2 {
 gap: 0.5rem;
}
.gap-2\.5 {
 gap: 0.625rem;
}
.gap-3 {
 gap: 0.75rem;
}
.gap-3\.5 {
 gap: 0.875rem;
}
.gap-4 {
 gap: 1rem;
}
.gap-4\.5 {
 gap: 1.125rem;
}
.gap-5 {
 gap: 1.25rem;
}
.gap-5\.5 {
 gap: 1.375rem;
}
.gap-6 {
 gap: 1.5rem;
}
.gap-7 {
 gap: 1.75rem;
}
.gap-8 {
 gap: 2rem;
}
.gap-9 {
 gap: 2.25rem;
}
.gap-10 {
 gap: 2.5rem;
}
.gap-11 {
 gap: 2.75rem;
}
.gap-12 {
 gap: 3rem;
}
.gap-14 {
 gap: 3.5rem;
}
.gap-16 {
 gap: 4rem;
}
.gap-20 {
 gap: 5rem;
}
.gap-24 {
 gap: 6rem;
}
@media screen and (min-width: 700px) {
 .sm\:gap-0\.5 {
  gap: 0.125rem;
 }
 .sm\:gap-1 {
  gap: 0.25rem;
 }
 .sm\:gap-1\.5 {
  gap: 0.375rem;
 }
 .sm\:gap-2 {
  gap: 0.5rem;
 }
 .sm\:gap-2\.5 {
  gap: 0.625rem;
 }
 .sm\:gap-3 {
  gap: 0.75rem;
 }
 .sm\:gap-3\.5 {
  gap: 0.875rem;
 }
 .sm\:gap-4 {
  gap: 1rem;
 }
 .sm\:gap-4\.5 {
  gap: 1.125rem;
 }
 .sm\:gap-5 {
  gap: 1.25rem;
 }
 .sm\:gap-5\.5 {
  gap: 1.375rem;
 }
 .sm\:gap-6 {
  gap: 1.5rem;
 }
 .sm\:gap-7 {
  gap: 1.75rem;
 }
 .sm\:gap-8 {
  gap: 2rem;
 }
 .sm\:gap-9 {
  gap: 2.25rem;
 }
 .sm\:gap-10 {
  gap: 2.5rem;
 }
 .sm\:gap-11 {
  gap: 2.75rem;
 }
 .sm\:gap-12 {
  gap: 3rem;
 }
 .sm\:gap-14 {
  gap: 3.5rem;
 }
 .sm\:gap-16 {
  gap: 4rem;
 }
 .sm\:gap-20 {
  gap: 5rem;
 }
 .sm\:gap-24 {
  gap: 6rem;
 }
}
.grid-cols-1 {
 grid-template-columns: repeat(1, minmax(0, 1fr));
}
.grid-cols-2 {
 grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-cols-3 {
 grid-template-columns: repeat(3, minmax(0, 1fr));
}
.grid-cols-4 {
 grid-template-columns: repeat(4, minmax(0, 1fr));
}
.grid-cols-5 {
 grid-template-columns: repeat(5, minmax(0, 1fr));
}
.grid-cols-6 {
 grid-template-columns: repeat(6, minmax(0, 1fr));
}
@media screen and (min-width: 700px) {
 .sm\:grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
 }
 .sm\:grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
 }
 .sm\:grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
 }
 .sm\:grid-cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
 }
 .sm\:grid-cols-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
 }
 .sm\:grid-cols-6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
 }
}
.object-cover {
 object-fit: cover;
 object-position: center;
}
.object-contain {
 object-fit: contain;
 object-position: center;
}
.image-cover {
 object-fit: cover;
 object-position: center;
 width: 100%;
 height: 100%;
}
.image-background,
.image-background-fixed {
 object-fit: cover;
 object-position: center;
 width: 100%;
 height: 100%;
 position: absolute;
 inset-block-start: 0;
 inset-inline-start: 0;
}
.image-background-fixed {
 position: fixed;
 height: 100vh !important;
 max-height: none !important;
}
@supports (height: 100lvh) {
 .image-background-fixed {
  height: 100lvh !important;
 }
}
.overflow-visible {
 overflow: visible;
}
.overflow-hidden {
 overflow: hidden;
}
.overflow-clip {
 overflow: clip;
}
@supports not (overflow: clip) {
 .overflow-clip {
  overflow: hidden;
 }
}
.isolate {
 isolation: isolate;
}
.\@container {
 container-type: inline-size;
}
.shape {
 width: var(--shape-size, 1rem);
 background: currentColor;
}
@supports (height: 1cap) {
 .shape {
  width: var(--shape-size, 1cap);
  height: var(--shape-size, 1cap);
 }
}
.shape--circle {
 border-radius: 100%;
}
.shape--diamond {
 transform: scale(0.8) rotate(45deg);
}
.clip-circle {
 clip-path: circle(50%);
}
.clip-blob-1 {
 clip-path: polygon(var(--clip-path--blob-1));
}
.clip-blob-2 {
 clip-path: polygon(var(--clip-path--blob-2));
}
.clip-blob-3 {
 clip-path: polygon(var(--clip-path--blob-3));
}
.clip-blob-4 {
 clip-path: polygon(var(--clip-path--blob-4));
}
.clip-blob-5 {
 clip-path: polygon(var(--clip-path--blob-5));
}
.text-xxs {
 font-size: 10px;
}
.text-xs {
 font-size: var(--text-xs);
}
.text-sm {
 font-size: var(--text-sm);
}
.text-base {
 font-size: var(--text-base);
}
.text-lg {
 font-size: var(--text-lg);
}
.heading,
.display-xl,
.display-l,
.display-m,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.h7,
.prose :where(h1, h2, h3, h4, h5, h6) {
 font-family: var(--heading-font-family);
 font-weight: var(--heading-font-weight);
 font-style: var(--heading-font-style);
 letter-spacing: var(--heading-letter-spacing);
 text-transform: var(--heading-text-transform);
 line-height: var(--heading-line-height);
 overflow-wrap: anywhere;
 -webkit-font-smoothing: antialiased;
 display: block;
}
.display-xl {
 font-size: var(--text-display-xl);
}
.display-l {
 font-size: var(--text-display-l);
}
.display-m {
 font-size: var(--text-display-m);
}
.h1,
:where(.prose h1) {
 font-size: var(--text-h1);
}
.h2,
:where(.prose h2) {
 font-size: var(--text-h2);
}
.h3,
:where(.prose h3) {
 font-size: var(--text-h3);
}
.h4,
:where(.prose h4) {
 font-size: var(--text-h4);
 line-height: calc(var(--heading-line-height) + 0.1);
}
.h5,
:where(.prose h5) {
 font-size: var(--text-h5);
 line-height: calc(var(--heading-line-height) + 0.1);
}
.h6,
:where(.prose h6) {
 font-size: var(--text-h6);
 line-height: calc(var(--heading-line-height) + 0.1);
}
.h7 {
 font-size: var(--text-h7);
 line-height: calc(var(--heading-line-height) + 0.1);
}
@media screen and (min-width: 700px) {
 .sm\:text-xxs {
  font-size: 10px;
 }
 .sm\:text-xs {
  font-size: var(--text-xs);
 }
 .sm\:text-sm {
  font-size: var(--text-sm);
 }
 .sm\:text-base {
  font-size: var(--text-base);
 }
 .sm\:text-lg {
  font-size: var(--text-lg);
 }
 .sm\:display-xl {
  font-size: var(--text-display-xl);
 }
 .sm\:display-l {
  font-size: var(--text-display-l);
 }
 .sm\:display-m {
  font-size: var(--text-display-m);
 }
 .sm\:h1 {
  font-size: var(--text-h1);
 }
 .sm\:h2 {
  font-size: var(--text-h2);
 }
 .sm\:h3 {
  font-size: var(--text-h3);
 }
 .sm\:h4 {
  font-size: var(--text-h4);
 }
 .sm\:h5 {
  font-size: var(--text-h5);
 }
 .sm\:h6 {
  font-size: var(--text-h6);
 }
 .sm\:h7 {
  font-size: var(--text-h7);
 }
}
@media screen and (min-width: 1150px) {
 .display-l,
 .display-xl,
 .sm\:display-l,
 .sm\:display-xl {
  line-height: calc(var(--heading-line-height) - 0.1);
 }
}
figcaption {
 text-align: start;
 font-size: var(--text-sm);
 margin-block-start: 0.625rem !important;
}
.medium {
 font-weight: var(--text-font-medium-weight);
}
.bold {
 font-weight: var(--text-font-bold-weight);
}
.uppercase {
 text-transform: uppercase;
}
.lowercase {
 text-transform: lowercase;
}
:where(ol, ul):not(.unstyled-list) {
 margin-inline-start: 1em;
 list-style-position: outside;
}
:where(ol, ul):not(.unstyled-list) li {
 margin-block-start: 0;
 padding-inline-start: 1ch;
}
:where(ol, ul):not(.unstyled-list) :where(ol, ul) {
 margin-block-start: 0 !important;
}
.unstyled-list {
 list-style: none;
}
.vertical-text {
 writing-mode: vertical-rl;
 overflow-wrap: break-word;
 margin-block: 0;
 transform: scale(-1);
}
:is(:lang(ja), :lang(zh), :lang(ko)) .vertical-text {
 text-orientation: upright;
 transform: none;
}
@media screen and (min-width: 700px) {
 .sm\:vertical-text {
  writing-mode: vertical-rl;
  overflow-wrap: break-word;
  margin-block: 0;
  transform: scale(-1);
 }
 :is(:lang(ja), :lang(zh), :lang(ko)) .sm\:vertical-text {
  text-orientation: upright;
  transform: none;
 }
}
@media screen and (min-width: 1000px) {
 .md\:vertical-text {
  writing-mode: vertical-rl;
  overflow-wrap: break-word;
  margin-block: 0;
  transform: scale(-1);
 }
 :is(:lang(ja), :lang(zh), :lang(ko)) .md\:vertical-text {
  text-orientation: upright;
  transform: none;
 }
}
.line-through {
 text-decoration: line-through;
}
.whitespace-pre-wrap {
 white-space: pre-wrap;
}
.break-all {
 word-break: break-all;
}
.hyphenate {
 -webkit-hyphens: auto;
 hyphens: auto;
}
.truncate-text {
 white-space: nowrap;
 text-overflow: ellipsis;
 max-width: var(--truncate-text-max-width, 100%);
 overflow: hidden;
}
.line-clamp {
 -webkit-line-clamp: var(--line-clamp-count, 2);
 -webkit-box-orient: vertical;
 display: -webkit-box;
 overflow: hidden;
}
.text-balance {
 text-wrap: balance;
}
.text-indent {
 --text-indent-size: 1em;
 text-indent: var(--text-indent-size);
}
.text-indent--circle,
.text-indent--square,
.text-indent--diamond {
 --text-indent-icon-size: 0.6em;
 text-indent: 0;
}
:is(.text-indent--circle, .text-indent--square, .text-indent--diamond):before {
 content: "";
 width: var(--text-indent-icon-size);
 height: var(--text-indent-icon-size);
 background: currentColor;
 flex-shrink: 0;
 margin-inline-end: calc(
  var(--text-indent-size) - var(--text-indent-icon-size)
 );
 display: inline-block;
}
@supports (height: 1cap) {
 :is(.text-indent--circle, .text-indent--square, .text-indent--diamond) {
  --text-indent-icon-size: 1cap;
 }
}
@container style(--text-transform: lowercase) or style(--heading-text-transform: lowercase) {
 :is(.text-indent--circle, .text-indent--square, .text-indent--diamond) {
  --text-indent-icon-size: 1ex;
 }
}
.text-indent--circle:before {
 border-radius: 100%;
}
.text-indent--diamond:before {
 transform: rotate(45deg);
}
@supports (height: 1cap) {
 .text-indent--diamond:before {
  width: calc(var(--text-indent-icon-size) * 0.75);
  height: calc(var(--text-indent-icon-size) * 0.75);
  translate: 0 calc(-1 * var(--text-indent-icon-size) * 0.15);
  margin-inline-end: calc(
   var(--text-indent-size) - var(--text-indent-icon-size) * 0.75
  );
 }
}
.text-indent--arrow {
 align-items: center;
 column-gap: calc(var(--text-indent-size) - 1cap);
 text-indent: 0;
 display: flex;
}
.text-indent--arrow svg {
 height: 1cap;
}
@supports (height: 1lh) {
 .text-indent--arrow svg {
  align-self: start;
  position: relative;
  inset-block-start: calc(0.5lh - 0.5cap);
 }
}
@media screen and (min-width: 700px) {
 .text-indent {
  --text-indent-size: 1.2em;
 }
}
.trim-start {
 text-box: trim-start cap alphabetic;
}
.trim-end {
 text-box: trim-end cap alphabetic;
}
.mabel-section--featured-product h2.product-title a,
.mabel-section--featured-product h2 a {
 font-family: Kalice-Regular, Georgia, serif !important;
}


/* @font-face {
    font-family: 'Kalice-Regular', sans-serif;
    src: url('fonts/Kalice-Regular.woff2') format("woff2"),
         url('fonts/Kalice-Regular.woff') format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
} */


body{
    background-color: #fff;
    font-family: 'Aspekta 400';
}
h1, .h2, .sm\:h3, .h6, .h3, .h4, .h5, .prose :where(h1,h2,h3,h4,h5,h6), .display-m {
    /* font-family: 'Kalice-Regular', sans-serif !important; */
    font-family: 'Kalice-Regular' !important;
    /* font-family: 'Black Ops One' !important; */
    text-transform: none;
    font-weight: 400;
}

.display-l, .h6, .highlighted-heading {
    /* font-family: 'Kalice-Italic', sans-serif !important;  */
    font-family: 'Kalice-Italic' !important; 
    text-transform: none;
    font-weight: 400;
}
:root {
    --page-overlay: 0 0 0 / 0.4;
    --dialog-backdrop-blur: 12px;
    --success-background: 227 240 232;
    --success-text: 22 131 66;
    --warning-background: 253 241 224;
    --warning-text: 237 138 0;
    --error-background: 251 224 224;
    --error-text: 224 0 0;
    --on-sale-text: 255 0 0;
    --on-sale-badge-background: 255 0 0;
    --on-sale-badge-text: 255 255 255;
    --sold-out-badge-background: 50 30 30;
    --sold-out-badge-text: 255 255 255;
    --custom-badge-background: 255 250 250;
    --custom-badge-text: 0 0 0;
    --star-color: 255 178 91;
}
:root {
    --container-max-width: 100%;
    --container-gutter: 1.25rem;
    --section-vertical-spacing: 2.5rem;
    --section-stack-row-gap: 2rem; 
    --form-gap: 1rem;
    --fieldset-gap: 0.5rem;
    --form-control-gap: 0.5rem;
    --checkbox-control-gap: 0.75rem;
    --input-padding-block: 0.65rem;
    --input-padding-inline: 1rem;
    --checkbox-size: 0.875rem;
    --product-list-column-gap: 0.125rem;
    --product-list-row-gap: 1.5rem;
    --header-group-height: calc(var(--announcement-bar-height, 0px) + var(--countdown-condensed-height, 0px) + var(--header-height, 0px));
    --sticky-area-height: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px) + var(--header-is-sticky, 0) * var(--header-height, 0px));
    --sticky-offset: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px) + var(--header-is-sticky, 0) * var(--header-is-visible, 1) * var(--header-height, 0px));
    --transform-logical-flip: 1;
    --transform-origin-start: left;
    --transform-origin-end: right;
    --subheading-font-family: "Instrument Sans", sans-serif;
    --subheading-font-weight: 500;
    --subheading-font-style: normal;
    --subheading-font-size: 0.6875rem;
    --subheading-text-transform: normal;
    --subheading-letter-spacing: 0.0em;
    --heading-font-family: "Bricolage Grotesque", sans-serif;
    --heading-font-weight: 400;
    --heading-font-style: normal;
    --heading-text-transform: lowercase;
    --heading-letter-spacing: 0.0em;
    --heading-line-height: 1.3;
    --heading-italic-font-family: Helvetica, Arial, sans-serif;
    --heading-italic-font-weight: 400;
    --heading-italic-font-size-multiplier: 0%;
    --text-font-family: "Instrument Sans", sans-serif;
    --text-font-weight: 400;
    --text-font-style: normal;
    --text-transform: normal;
    --text-letter-spacing: 0.0em;
    --text-line-height: 1.4;
    --text-font-medium-weight: 500;
    --text-font-bold-weight: 600;
    --button-font: var(--text-font-style) var(--text-font-weight) var(--button-font-size) / normal var(--text-font-family);
    --button-text-transform: lowercase;
    --button-letter-spacing: 0.0em;
    --text-heading-size-factor: 0.7;
    --text-display-xl: max(0.75rem, clamp(3.5rem, 1.9223rem + 6.7314vw, 10rem) * var(--text-heading-size-factor));
    --text-display-l: max(0.75rem, clamp(3.375rem, 2.1311rem + 5.3074vw, 8.5rem) * var(--text-heading-size-factor));
    --text-display-m: max(0.75rem, clamp(3.25rem, 2.3701rem + 3.7540vw, 6.875rem) * var(--text-heading-size-factor));
    --text-h1: max(0.75rem, clamp(3rem, 2.3325rem + 2.8479vw, 5.75rem) * var(--text-heading-size-factor));
    --text-h2: max(0.75rem, clamp(2.5rem, 1.9539rem + 2.3301vw, 4.75rem) * var(--text-heading-size-factor));
    --text-h3: max(0.75rem, clamp(2rem, 1.6359rem + 1.5534vw, 3.5rem) * var(--text-heading-size-factor));
    --text-h4: max(0.75rem, clamp(1.75rem, 1.4466rem + 1.2945vw, 3rem) * var(--text-heading-size-factor));
    --text-h5: max(0.75rem, clamp(1.375rem, 1.2233rem + 0.6472vw, 2rem) * var(--text-heading-size-factor));
    --text-h6: max(0.75rem, clamp(1.1875rem, 1.1117rem + 0.3236vw, 1.5rem) * var(--text-heading-size-factor));
    --text-h7: max(0.75rem, clamp(1rem, 0.9545rem + 0.1942vw, 1.1875rem) * var(--text-heading-size-factor));
    --text-xs: 0.6875rem;
    --text-sm: 0.75rem;
    --text-base: 0.8125rem;
    --text-lg: 1.0rem;
    --button-font-size: 0.75rem;
    --rounded-full: 9999px;
    --subheading-border-radius: 0.0rem;
    --button-border-radius: 1.875rem;
    --input-border-radius: 1.875rem;
    --product-card-row-count: 2;
    --icon-stroke-width: 1px;
    --section-has-same-background-as-previous-section: 1;
    --quotation-mark-svg: url(data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" focusable="false" width="62" fill="none" viewBox="0 0 62 57"><path fill="%23000" d="M.79 31.904 11.924.816h12.296l-8.12 31.088h7.888V56.96H.79V31.904Zm37.351 0L49.277.816h12.064l-8.12 31.088h7.888V56.96H38.141V31.904Z" /></svg>);
    
}
@media screen and (min-width: 700px) {
    :root {
        --text-xs: 0.6875rem;
        --text-sm: 0.75rem;
        --text-base: 0.875rem;
        --text-lg: 1.0625rem;
        --subheading-font-size: 0.75rem;
        --container-gutter: 2rem;
        --form-gap: 1.25rem;
        --fieldset-gap: 0.75rem;
        --input-padding-block: 0.75rem;
        --button-font-size: 0.8125rem;
        --product-list-column-gap: 0.25rem;
        --product-list-row-gap: 2rem;
    }
}
@media screen and (min-width: 1000px) {
    :root {
        --section-vertical-spacing: 3.5rem;
        --section-stack-row-gap: 3rem;
    }
}
@media screen and (min-width: 1399px) {
    :root {
        --section-vertical-spacing: 4.5rem;
        --container-gutter: 3rem;
    }
}

.color-scheme {
    background-color: rgb(var(--background));
    background-image: var(--background-gradient);
    color: rgb(var(--text-color));
    border-color: rgb(var(--border-color));
}
.color-scheme--light { 
    --accent: 0 0 0;
    --background: 255 255 255;
    --background-gradient: ;
    --background-secondary: 255 255 255;
    --has-transparent-background: 0;
    --has-filled-background: 1;
    --text-color: 0 0 0;
    --border-color: 230 230 230;
    --subheading-background: 0 0 0 / 0.0;
    --subheading-border: none;
    --subheading-text-color: 0 0 0;
    --subheading-has-padding: 0;
    --heading-highlight-accent-color: 255 178 91;
    --heading-highlight-text-color: 255 255 255;
    --button-background-primary: 0 0 0;
    --button-text-primary: 255 255 255;
    --input-background: 255 255 255;
    --input-text-color: 50 30 30;
    --input-text-transform: none;
}
.color-scheme--rose {
    --accent: 255 255 255;
    --background: 193 138 130;
    --background-gradient: ;
    --background-secondary: 255 255 255;
    --has-transparent-background: 0;
    --has-filled-background: 1;
    --text-color: 255 255 255;
    --border-color: 199 150 143;
    --subheading-background: 0 0 0 / 0.0;
    --subheading-border: none;
    --subheading-text-color: 255 255 255;
    --subheading-has-padding: 0;
    --heading-highlight-accent-color: 3 3 5;
    --heading-highlight-text-color: 255 255 255;
    --button-background-primary: 255 255 255;
    --button-text-primary: 0 0 0;
    --input-background: 255 255 255;
    --input-text-color: 3 3 5;
    --input-text-transform: none;
}

.color-scheme--navy {
    --accent: 255 255 255;
    --background: 33 21 81;
    --background-gradient: ;
    --background-secondary: 0 0 0;
    --has-transparent-background: 0;
    --has-filled-background: 1;
    --text-color: 255 255 255;
    --border-color: 55 44 98;
    --subheading-background: 0 0 0 / 0.0;
    --subheading-border: none;
    --subheading-text-color: 255 255 255;
    --subheading-has-padding: 0;
    --heading-highlight-accent-color: 255 178 91;
    --heading-highlight-text-color: 255 255 255;
    --button-background-primary: 255 255 255;
    --button-text-primary: 0 0 0;
    --input-background: 255 255 255;
    --input-text-color: 0 0 0;
    --input-text-transform: none;
}
.color-scheme--blush {
    --accent: 0 0 0;
    --background: 255 250 250;
    --background-gradient: ;
    --background-secondary: 255 255 255;
    --has-transparent-background: 0;
    --has-filled-background: 1;
    --text-color: 0 0 0;
    --border-color: 230 225 225;
    --subheading-background: 0 0 0 / 0.0;
    --subheading-border: none;
    --subheading-text-color: 0 0 0;
    --subheading-has-padding: 0;
    --heading-highlight-accent-color: 246 164 41;
    --heading-highlight-text-color: 255 255 255;
    --button-background-primary: 0 0 0;
    --button-text-primary: 255 255 255;
    --input-background: 255 250 250;
    --input-text-color: 0 0 0;
    --input-text-transform: none;
}

.section--press .section-spacing--loose {
  padding-block-start: calc((var(--section-vertical-spacing)) * 2.5);
  padding-block-end: calc((var(--section-vertical-spacing-block-end, var(--section-vertical-spacing))) * 2.5);
}
.section-our-experts-team .section-spacing{
  padding-block-start: calc(var(--section-vertical-spacing));
}
.section-our-experts-team {
  --text-with-icons-column-gap: var(--container-gutter);
  --text-with-icons-row-gap: 2rem;
  --text-with-icons-grid: auto / minmax(0, 1fr);
}

@media screen and (min-width: 700px) {
  .section-our-experts-team {
    --text-with-icons-column-gap: 2.5rem;
    --text-with-icons-row-gap: 3rem;
    --text-with-icons-grid: auto / repeat(2, minmax(0, 1fr));
  }
}

@media screen and (min-width: 1000px) {
  .section-our-experts-team {
    --text-with-icons-column-gap: 3rem;
    --text-with-icons-item-width: calc((100% - (var(--text-with-icons-column-gap) * 2)) / 3);
    --text-with-icons-grid: auto / repeat(auto-fit, var(--text-with-icons-item-width));
  }
}

@media screen and (min-width: 1400px) {
  .section-our-experts-team {
    --text-with-icons-column-gap: 3rem;
  }
}

@media screen and (min-width: 700px) and (max-width: 999px) {
  .section-our-experts-team .text-with-icons__item:nth-child(2n - 1) {
    border-inline-end-width: 1px;
  }
}

@media screen and (min-width: 1000px) {
  .section-our-experts-team .text-with-icons__item:not(:nth-child(3n)) {
    border-inline-end-width: 1px;
  }
}

.section--main-collection {
  --product-list-column-count: 1;
}

@media screen and (min-width: 700px) {
  .section--main-collection {
    --product-list-column-count: 2;
  }
}

@media screen and (min-width: 1000px) {
  .section--main-collection {
    --product-list-column-count: 2;
  }
}
.section-shop-banner{
  --section-disable-padding-collapsing: 1;
}

/* Color schemes ported from mabel.life (beginner's guide + alcohol pages) */
.color-scheme--coral {
      --accent: 213 116 101;
      --background: 213 116 101;
      --background-gradient: ;
      --background-secondary: 255 255 255;
      --has-transparent-background: 0;
      --has-filled-background: 1;
      --text-color: 255 255 255;--border-color: 217 130 116;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
      --subheading-border: none;
      --subheading-text-color: 0 0 0;
      --subheading-has-padding: 0;

      /* Heading highlight */
      --heading-highlight-accent-color: 255 178 91;
      --heading-highlight-text-color: 255 255 255;

      /* Button colors */
      --button-background-primary: 213 116 101;
      --button-text-primary: 255 255 255;

      /* Form inputs */
      --input-background: 255 255 255;
      --input-text-color: 50 30 30;
      --input-text-transform: none;
    }

.color-scheme--rust {
      --accent: 0 0 0;
      --background: 193 113 51;
      --background-gradient: ;
      --background-secondary: 255 255 255;
      --has-transparent-background: 0;
      --has-filled-background: 1;
      --text-color: 255 255 255;--border-color: 199 127 71;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
      --subheading-border: none;
      --subheading-text-color: 255 255 255;
      --subheading-has-padding: 0;

      /* Heading highlight */
      --heading-highlight-accent-color: 255 178 91;
      --heading-highlight-text-color: 255 255 255;

      /* Button colors */
      --button-background-primary: 0 0 0;
      --button-text-primary: 255 255 255;

      /* Form inputs */
      --input-background: 255 255 255;
      --input-text-color: 50 30 30;
      --input-text-transform: none;
    }

.color-scheme--sage {
      --accent: 0 0 0;
      --background: 191 200 191;
      --background-gradient: ;
      --background-secondary: 255 255 255;
      --has-transparent-background: 0;
      --has-filled-background: 1;
      --text-color: 255 255 255;--border-color: 197 206 197;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
      --subheading-border: none;
      --subheading-text-color: 0 0 0;
      --subheading-has-padding: 0;

      /* Heading highlight */
      --heading-highlight-accent-color: 255 178 91;
      --heading-highlight-text-color: 255 255 255;

      /* Button colors */
      --button-background-primary: 0 0 0;
      --button-text-primary: 255 255 255;

      /* Form inputs */
      --input-background: 255 255 255;
      --input-text-color: 50 30 30;
      --input-text-transform: none;
    }


/* Apricot scheme (ported from the original site's scheme-6) */
.color-scheme--apricot {
      --accent: 0 0 0;
      --background: 255 178 91;
      --background-gradient: ;
      --background-secondary: 255 255 255;
      --has-transparent-background: 0;
      --has-filled-background: 1;
      --text-color: 0 0 0;--border-color: 230 160 82;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
      --subheading-border: none;
      --subheading-text-color: 0 0 0;
      --subheading-has-padding: 0;

      /* Heading highlight */
      --heading-highlight-accent-color: 255 255 255;
      --heading-highlight-text-color: 0 0 0;

      /* Button colors */
      --button-background-primary: 0 0 0;
      --button-text-primary: 0 0 0;

      /* Form inputs */
      --input-background: 255 255 255;
      --input-text-color: 0 0 0;
      --input-text-transform: none;
    }


/* Paper scheme (article banner; ported from the original site's scheme-2) */
.color-scheme--paper {
      --accent: 33 21 81;
      --background: 255 255 255;
      --background-gradient: ;
      --background-secondary: 255 250 250;
      --has-transparent-background: 0;
      --has-filled-background: 1;
      --text-color: 0 0 0;--border-color: 230 230 230;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
      --subheading-border: none;
      --subheading-text-color: 0 0 0;
      --subheading-has-padding: 0;

      /* Heading highlight */
      --heading-highlight-accent-color: 0 0 0;
      --heading-highlight-text-color: 255 255 255;

      /* Button colors */
      --button-background-primary: 33 21 81;
      --button-text-primary: 255 255 255;

      /* Form inputs */
      --input-background: 255 255 255;
      --input-text-color: 0 0 0;
      --input-text-transform: none;
    }


/* ============================================================= */
/* Predictive search drawer (slides down from the top)            */
/* ============================================================= */
.mabel-search-drawer { position: fixed; inset: 0; z-index: 60; }
.mabel-search-drawer[hidden] { display: none; }
.mabel-search-drawer__overlay { position: absolute; inset: 0; background: rgb(0 0 0 / 0.4); opacity: 0; transition: opacity .3s ease; }
.mabel-search-drawer__panel {
	position: absolute; inset-block: 0; inset-inline-end: 0;
	width: min(94vw, 560px); height: 100%; max-height: none;
	display: flex; flex-direction: column;
	background: rgb(var(--surface-color, 255 255 255));
	color: rgb(var(--text-color, 17 17 17));
	transform: translateX(100%); transition: transform .35s ease;
	box-shadow: -20px 0 40px rgba(0,0,0,.08);
}
.mabel-search-drawer.is-open .mabel-search-drawer__overlay { opacity: 1; }
.mabel-search-drawer.is-open .mabel-search-drawer__panel { transform: translateX(0); }
.mabel-search-drawer__inner {
	width: 100%; max-width: none; margin-inline: 0;
	padding: clamp(1.25rem, 3vw, 1.75rem) clamp(1.25rem, 4vw, 2rem) clamp(1.5rem, 3vw, 2.5rem);
	display: flex; flex-direction: column; min-height: 0; flex: 1 1 auto;
}

/* Search bar. */
.mabel-search-drawer__bar { display: flex; align-items: center; gap: .75rem; padding-block-end: 1rem; border-bottom: 1px solid rgb(var(--border-color, 0 0 0) / .18); }
.mabel-search-drawer__bar > .icon { flex: 0 0 auto; opacity: .7; }
.mabel-search-drawer__input {
	flex: 1 1 auto; border: 0; background: transparent; color: inherit;
	font-size: clamp(1.05rem, 2.4vw, 1.35rem); line-height: 1.2; padding: .35rem 0; outline: none;
}
.mabel-search-drawer__input::placeholder { color: currentColor; opacity: .45; }
.mabel-search-drawer__close { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; color: inherit; }

/* Body (scrollable results region). */
.mabel-search-drawer__body { margin-block-start: 1.25rem; overflow-y: auto; min-height: 0; }
.mabel-search-drawer__body[hidden] { display: none; }
.mabel-search-drawer__term { margin-block-end: 1rem; }
.mabel-search-drawer__term::first-letter { text-transform: capitalize; }

/* Tabs. */
.mabel-search-drawer__tabs { display: flex; gap: clamp(1rem, 3vw, 2rem); border-bottom: 1px solid rgb(var(--border-color, 0 0 0) / .14); margin-block-end: 1.5rem; }
.mabel-search-drawer__tab {
	appearance: none; background: none; border: 0; cursor: pointer; color: inherit;
	font: inherit; padding: 0 0 .75rem; opacity: .55; position: relative;
}
.mabel-search-drawer__tab span { font-size: .8em; opacity: .7; }
.mabel-search-drawer__tab.is-active { opacity: 1; }
.mabel-search-drawer__tab.is-active::after { content: ""; position: absolute; inset-inline: 0; inset-block-end: -1px; height: 2px; background: currentColor; }

/* Product results grid. */
.mabel-search-drawer__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1rem, 3vw, 1.5rem); }
.mabel-search-drawer__grid[hidden], .mabel-search-drawer__list[hidden] { display: none; }
.mabel-search-card { display: flex; flex-direction: column; gap: .5rem; color: inherit; text-decoration: none; }
.mabel-search-card__media { display: block; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 6px; background: rgb(var(--background-secondary, 250 250 250)); }
.mabel-search-card__media img { width: 100%; height: 100%; object-fit: cover; }
.mabel-search-card__title { font-family: var(--heading-font-family, inherit); font-size: 1rem; }
.mabel-search-card__price { font-size: .9rem; opacity: .8; }
.mabel-search-card__price del { opacity: .5; margin-inline-start: .35rem; }

/* Collections / Pages / Blogs list. */
.mabel-search-drawer__list { display: flex; flex-direction: column; }
.mabel-search-link { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; color: inherit; text-decoration: none; padding: .9rem 0; border-bottom: 1px solid rgb(var(--border-color, 0 0 0) / .1); }
.mabel-search-link:hover { opacity: .7; }
.mabel-search-link__meta { flex: 0 0 auto; font-size: .82rem; opacity: .55; }
.mabel-search-drawer__empty { padding-block: 2rem; text-align: center; }

@media (prefers-reduced-motion: reduce) {
	.mabel-search-drawer__overlay, .mabel-search-drawer__panel { transition: none; }
}

/* ============================================================= */
/* WooCommerce checkout — match the theme design                  */
/* ============================================================= */
.woocommerce-checkout .woocommerce { max-width: 1200px; margin-inline: auto; padding-inline: var(--container-gutter, 1.25rem); }
.woocommerce-checkout .col2-set,
.woocommerce-checkout .woocommerce-checkout-review-order { width: 100%; float: none; }
@media screen and (min-width: 1000px) {
	.woocommerce-checkout form.checkout.woocommerce-checkout {
		display: grid; grid-template-columns: 1.2fr 0.8fr; gap: clamp(2rem, 5vw, 4rem); align-items: start;
	}
	.woocommerce-checkout #customer_details { grid-column: 1; }
	.woocommerce-checkout #order_review_heading, .woocommerce-checkout #order_review { grid-column: 2; }
	.woocommerce-checkout .col2-set .col-1,
	.woocommerce-checkout .col2-set .col-2 { width: 100%; float: none; }
}
.woocommerce-checkout h3, .woocommerce-checkout #order_review_heading {
	font-family: var(--heading-font-family, inherit); font-weight: 400; letter-spacing: normal;
	font-size: 1.35rem; margin-block: 1.5rem .75rem;
}
.woocommerce-checkout .form-row { margin-block-end: 1rem; }
.woocommerce-checkout .form-row label { display: block; margin-block-end: .35rem; font-size: .82rem; letter-spacing: .04em; text-transform: uppercase; opacity: .75; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-checkout select,
.woocommerce-checkout .select2-selection {
	width: 100%; border: 1px solid rgb(var(--border-color, 0 0 0) / .25);
	background: transparent; border-radius: 6px; padding: .85rem 1rem;
	font: inherit; color: inherit; line-height: 1.3; min-height: 3rem; box-shadow: none;
}
.woocommerce-checkout .select2-container--default .select2-selection--single { height: auto; }
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 1.3; padding: 0; color: inherit; }
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow { top: 50%; transform: translateY(-50%); }
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce-checkout select:focus { outline: none; border-color: rgb(var(--text-color, 0 0 0) / .6); }
.woocommerce-checkout #order_review {
	border: 1px solid rgb(var(--border-color, 0 0 0) / .18); border-radius: 12px; padding: 1.5rem;
}
.woocommerce-checkout table.shop_table { border: 0; border-radius: 0; }
.woocommerce-checkout table.shop_table th, .woocommerce-checkout table.shop_table td { border-top: 1px solid rgb(var(--border-color, 0 0 0) / .12); padding: .75rem 0; }
.woocommerce-checkout #payment { background: transparent; border-radius: 0; }
.woocommerce-checkout #payment ul.payment_methods { border: 0; padding: 0; }
.woocommerce-checkout #payment div.payment_box { background: rgb(var(--background-secondary, 250 250 250)); border-radius: 8px; }
.woocommerce-checkout #payment div.payment_box::before { display: none; }
.woocommerce-checkout #place_order,
.woocommerce-checkout .button.alt {
	width: 100%; border-radius: 999px; padding: 1rem 1.5rem;
	background: rgb(var(--button-background-primary, 0 0 0)); color: rgb(var(--button-text-primary, 255 255 255));
	font: inherit; letter-spacing: .02em; border: 0; text-transform: lowercase; margin-block-start: 1rem;
	transition: opacity .2s ease;
}
.woocommerce-checkout #place_order:hover, .woocommerce-checkout .button.alt:hover { opacity: .85; }
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info { border-top-color: rgb(var(--text-color, 0 0 0)); background: rgb(var(--background-secondary, 250 250 250)); border-radius: 8px; }

/* ============================================================= */
/* WooCommerce BLOCKS checkout — container + theme design         */
/* ============================================================= */

/* Container: constrain the block + the page title (both were edge-to-edge). */
body.woocommerce-checkout .wp-block-woocommerce-checkout,
body.woocommerce-checkout :is(.entry-title, .wp-block-post-title, .page-title, .wc-block-checkout__no-title + *),
body.woocommerce-page.woocommerce-checkout .entry-header {
	max-width: 1280px;
	margin-inline: auto;
	padding-inline: var(--container-gutter, 1.5rem);
	box-sizing: border-box;
}
body.woocommerce-checkout .wp-block-woocommerce-checkout { padding-block: clamp(1rem, 3vw, 2.5rem) clamp(3rem, 8vw, 6rem); }
body.woocommerce-checkout :is(.entry-title, .wp-block-post-title, .page-title) { padding-block-start: clamp(1.5rem, 4vw, 3rem); }

/* Two-column gap. */
.wc-block-checkout__main { padding-inline-end: clamp(1rem, 4vw, 3rem); }
@media screen and (min-width: 1000px) {
	.wc-block-checkout .wc-block-components-main { max-width: none; }
}

/* Step titles → theme heading style. */
.wc-block-components-checkout-step__title,
.wc-block-components-title,
.wc-block-components-checkout-step__heading-content {
	font-family: var(--heading-font-family, inherit);
	font-weight: 400;
	letter-spacing: normal;
	text-transform: none;
}
.wc-block-components-checkout-step__title { font-size: clamp(1.15rem, 2.4vw, 1.5rem); }

/* Inputs / selects → theme field look. */
.wc-block-components-text-input input,
.wc-block-components-text-input .input-text,
.wc-block-components-select .wc-blocks-components-select__container,
.wc-block-components-address-form select,
.wc-block-checkout select,
.wc-block-components-combobox .components-combobox-control__suggestions-container input {
	border-radius: 8px !important;
	border-color: rgb(var(--border-color, 0 0 0) / .25) !important;
	background: transparent !important;
	min-height: 3.1rem;
	font: inherit;
}
.wc-block-components-text-input input:focus,
.wc-block-checkout select:focus {
	border-color: rgb(var(--text-color, 0 0 0) / .6) !important;
	box-shadow: none !important;
	outline: none;
}
.wc-block-components-text-input label { font-size: .82rem; letter-spacing: .03em; }

/* Saved address / edit card. */
.wc-block-components-address-card,
.wc-block-checkout__billing-fields .wc-block-components-address-card {
	border: 1px solid rgb(var(--border-color, 0 0 0) / .2);
	border-radius: 12px;
	padding: 1.25rem 1.5rem;
}
.wc-block-components-address-card__edit { color: inherit; text-decoration: underline; }

/* Payment option rows → clean bordered pills with theme accent when selected.
   Reset WooCommerce's own container / divider borders first so unselected rows
   don't show a doubled "extra line". */
.wc-block-components-radio-control { border: 0 !important; margin: 0 !important; }
.wc-block-components-radio-control__option {
	border: 1px solid rgb(var(--border-color, 0 0 0) / .18) !important;
	border-radius: 10px !important;
	margin-block-end: .6rem !important;
	padding: 1rem 1.15rem 1rem 2.6rem !important;
	transition: border-color .15s ease, box-shadow .15s ease;
}
.wc-block-components-radio-control__option::before,
.wc-block-components-radio-control__option::after { border: 0 !important; }
.wc-block-components-radio-control__option:last-child { margin-block-end: 0 !important; }
.wc-block-components-radio-control__option:hover { border-color: rgb(var(--text-color, 0 0 0) / .4) !important; }
.wc-block-components-radio-control__option--checked {
	border-color: rgb(var(--text-color, 0 0 0)) !important;
	box-shadow: inset 0 0 0 1px rgb(var(--text-color, 0 0 0));
}
.wc-block-components-radio-control__input { inset-inline-start: 1rem; }

/* Remove the "By proceeding with your purchase you agree…" terms text before
   Place order (kept only when it is a required checkbox variant). */
.wc-block-checkout__terms:not(.wc-block-checkout__terms--with-checkbox) { display: none !important; }

/* Order summary sidebar → soft themed card. */
.wc-block-checkout__sidebar .wc-block-components-sidebar,
.wc-block-checkout__sidebar {
	border-radius: 16px;
}
.wc-block-checkout__sidebar {
	border: 1px solid rgb(var(--border-color, 0 0 0) / .16);
	padding: clamp(1.25rem, 2.5vw, 2rem) !important;
	background: rgb(var(--background-secondary, 255 250 250));
}
.wc-block-components-order-summary__button-text,
.wc-block-components-panel__button { font-family: var(--heading-font-family, inherit); }
.wc-block-components-totals-item { font-size: .95rem; }
.wc-block-components-totals-footer-item,
.wc-block-components-totals-item.wc-block-components-totals-footer-item {
	font-family: var(--heading-font-family, inherit);
	font-size: clamp(1.3rem, 3vw, 1.7rem);
}

/* Sale line in summary uses the theme's on-sale tone. */
.wc-block-components-sale-badge,
.wc-block-components-order-summary-item__discount { color: rgb(var(--text-on-sale, 216 44 13)); }

/* Place order button → theme pill button. */
.wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-checkout .wc-block-components-button.contained,
.wc-block-checkout__actions_row .wc-block-components-button {
	background: rgb(var(--button-background-primary, 0 0 0)) !important;
	color: rgb(var(--button-text-primary, 255 255 255)) !important;
	border-radius: 999px !important;
	min-height: 3.4rem;
	padding-inline: 2rem !important;
	font: inherit !important;
	letter-spacing: .02em;
	text-transform: lowercase;
	box-shadow: none !important;
	transition: opacity .2s ease;
}
.wc-block-components-checkout-place-order-button:hover,
.wp-block-woocommerce-checkout .wc-block-components-button.contained:hover { opacity: .85; }
.wc-block-components-checkout-place-order-button .wc-block-components-button__text { font: inherit; }

/* "Add coupons" toggle + generic block links match theme. */
.wc-block-components-panel__button,
.wc-block-checkout a { color: inherit; }
