*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*//*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}
    :root {
        --casa-bg: #ffffff;
        --casa-fg: #000000b5;
        --casa-heading: #000000;
        --casa-heading-rgb: 0 0 0;
        --casa-primary: #000000b5;
        --casa-primary-rgb: 0 0 0;
        --casa-primary-hover: #000000;
        --casa-primary-hover-rgb: 0 0 0;
        --casa-shadow: #000000;
        --casa-shadow-rgb: 0 0 0;
        --casa-border: #eae8e6;
        --casa-border-rgb: 234 232 230;
        --casa-border-cream: #43362526;
        --casa-clay: #7d5449;
        --casa-cream: #e9e4e0;
        --casa-forest: #3e4539;
        --casa-brown: #433625;
        --casa-blue: #454f55;
        --casa-page: min(1500px, calc(100vw - clamp(32px, 6.4vw, 96px)));
        --casa-content-narrow: 22.75em;
        --casa-content-normal: 32.5em;
        --casa-section-medium: 25rem;
        --casa-section-large: 35rem;
        --font-body: "Newsreader", Georgia, serif;
        --font-accent: "Red Hat Display", Arial, sans-serif;
        --casa-body: var(--font-body);
        --casa-accent: var(--font-accent);
        --page-margin: 16px;
        --sidebar-width: 25rem;
        --narrow-content-width: 36rem;
        --normal-content-width: 42rem;
        --wide-content-width: 46rem;
        --narrow-page-width: 90rem;
        --normal-page-width: 120rem;
        --wide-page-width: 150rem;
        --page-content-width: var(--normal-page-width);
        --page-width: calc(var(--page-content-width) + (var(--page-margin) * 2));
        --section-height-small: 15rem;
        --section-height-medium: 25rem;
        --section-height-large: 35rem;
        --color-background: var(--casa-bg);
        --color-foreground: var(--casa-fg);
        --color-foreground-heading: var(--casa-heading);
        --color-foreground-heading-rgb: var(--casa-heading-rgb);
        --color-border: var(--casa-border);
        --color-border-rgb: var(--casa-border-rgb);
        --color-shadow: var(--casa-shadow);
        --color-shadow-rgb: var(--casa-shadow-rgb);
        --color-white: #ffffff;
        --color-primary: var(--casa-primary);
        --color-primary-rgb: var(--casa-primary-rgb);
        --color-primary-hover: var(--casa-primary-hover);
        --color-primary-hover-rgb: var(--casa-primary-hover-rgb);
        --color-primary-button-background: var(--casa-primary-button-bg);
        --color-primary-button-text: var(--casa-primary-button-text);
        --color-primary-button-border: var(--casa-primary-button-border);
        --color-primary-button-hover-background: var(--casa-primary-button-hover-bg);
        --color-primary-button-hover-text: var(--casa-primary-button-hover-text);
        --color-primary-button-hover-border: var(--casa-primary-button-hover-border);
        --color-secondary-button-background: var(--casa-secondary-button-bg);
        --color-secondary-button-text: var(--casa-secondary-button-text);
        --color-secondary-button-border: var(--casa-secondary-button-border);
        --color-secondary-button-hover-background: var(--casa-secondary-button-hover-bg);
        --color-secondary-button-hover-text: var(--casa-secondary-button-hover-text);
        --color-secondary-button-hover-border: var(--casa-secondary-button-hover-border);
        --color-input-background: var(--color-background);
        --color-input-text: var(--color-foreground);
        --color-input-text-rgb: var(--color-foreground-rgb);
        --color-input-border: var(--color-border);
        --color-input-hover-background: var(--color-background);
        --color-variant-background: var(--color-background);
        --color-variant-text: var(--color-foreground);
        --color-variant-text-rgb: var(--color-foreground-rgb);
        --color-variant-border: var(--color-border);
        --color-variant-hover-background: var(--color-background);
        --color-variant-hover-text: var(--color-foreground);
        --color-variant-hover-border: var(--color-border);
        --color-selected-variant-background: var(--color-foreground);
        --color-selected-variant-text: var(--color-background);
        --color-selected-variant-border: var(--color-foreground);
        --color-selected-variant-hover-background: var(--color-selected-variant-background);
        --color-selected-variant-hover-text: var(--color-selected-variant-text);
        --color-selected-variant-hover-border: var(--color-selected-variant-border);
        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
        --input-textarea-min-height: 55px;
        --theme-checkbox-background: var(--color-foreground);
        --theme-checkbox-checked-background: var(--color-background);
        --theme-checkbox-checkmark: var(--color-foreground);
        --theme-checkbox-border-style: solid;
        --theme-checkbox-border-width: 1px;
        --theme-checkbox-border-color: rgb(var(--color-border-rgb) / 0.9);
        --theme-checkbox-border-radius: 4px;
        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
        --font-h1--color: var(--color-foreground-heading);
        --font-h2--color: var(--color-foreground-heading);
        --font-h3--color: var(--color-foreground-heading);
        --font-h4--color: var(--color-foreground-heading);
        --font-h5--color: var(--color-foreground-heading);
        --font-h6--color: var(--color-foreground-heading);
        --letter-spacing--display-tight: -0.03em;
        --letter-spacing--display-normal: 0em;
        --letter-spacing--display-loose: 0.03em;
        --letter-spacing--heading-tight: -0.03em;
        --letter-spacing--heading-normal: 0em;
        --letter-spacing--heading-loose: 0.03em;
        --letter-spacing--body-tight: -0.03em;
        --letter-spacing--body-normal: 0em;
        --letter-spacing--body-loose: 0.03em;
        --line-height--display-tight: 1;
        --line-height--display-normal: 1.1;
        --line-height--display-loose: 1.2;
        --line-height--heading-tight: 1.15;
        --line-height--heading-normal: 1.25;
        --line-height--heading-loose: 1.35;
        --line-height--body-tight: 1.2;
        --line-height--body-normal: 1.4;
        --line-height--body-loose: 1.6;
        --font-body--family: var(--font-body);
        --font-body--style: normal;
        --font-body--weight: 400;
        --font-subheading--family: var(--font-body);
        --font-subheading--style: normal;
        --font-subheading--weight: 400;
        --font-heading--family: var(--font-body);
        --font-heading--style: normal;
        --font-heading--weight: 300;
        --font-accent--family: var(--font-accent);
        --font-accent--style: normal;
        --font-accent--weight: 500;
        --font-size--paragraph: 0.875rem;
        --font-size--3xl: 2rem;
        --font-size--4xl: 2.5rem;
        --font-size--5xl: 3rem;
        --font-size--6xl: 3.5rem;
        --font-size--h1: clamp(3.25rem, 7.2vw, 4.5rem);
        --font-size--h2: clamp(1.75rem, 4vw, 2.5rem);
        --font-size--h3: 1.5rem;
        --font-size--h4: 1.125rem;
        --font-size--h5: 1rem;
        --font-size--h6: 0.75rem;
        --cart-font-size--sm: var(--font-size--sm);
        --cart-font-size--xl: var(--font-size--xl);
        --cart-primary-font-family: var(--font-body--family);
        --cart-primary-font-style: var(--font-body--style);
        --cart-primary-font-weight: var(--font-body--weight);
        --cart-secondary-font-family: var(--font-subheading--family);
        --cart-secondary-font-style: var(--font-subheading--style);
        --cart-secondary-font-weight: var(--font-subheading--weight);
        --cart-price-font-family: var(--font-subheading--family);
        --cart-price-font-style: var(--font-subheading--style);
        --cart-price-font-weight: var(--font-subheading--weight);
        --cart-thumbnail-border-style: none;
        --cart-thumbnail-border-width: 0px;
        --cart-thumbnail-border-opacity: 50%;
        --cart-thumbnail-border-radius: 0px;
        --font-weight-bold: 700;
        --font-paragraph--family: var(--font-body--family);
        --font-paragraph--style: normal;
        --font-paragraph--weight: 400;
        --font-paragraph--size: var(--font-size--paragraph);
        --font-paragraph--line-height: var(--line-height--body-normal);
        --font-paragraph--letter-spacing: var(--letter-spacing--body-normal);
        --font-paragraph--case: none;
        --font-h1--family: var(--font-heading--family);
        --font-h2--family: var(--font-heading--family);
        --font-h3--family: var(--font-subheading--family);
        --font-h4--family: var(--font-accent--family);
        --font-h5--family: var(--font-subheading--family);
        --font-h6--family: var(--font-accent--family);
        --font-h1--style: var(--font-heading--style);
        --font-h2--style: var(--font-heading--style);
        --font-h3--style: var(--font-subheading--style);
        --font-h4--style: normal;
        --font-h5--style: var(--font-subheading--style);
        --font-h6--style: var(--font-accent--style);
        --font-h1--weight: var(--font-heading--weight);
        --font-h2--weight: var(--font-heading--weight);
        --font-h3--weight: var(--font-subheading--weight);
        --font-h4--weight: var(--font-accent--weight);
        --font-h5--weight: var(--font-subheading--weight);
        --font-h6--weight: var(--font-accent--weight);
        --font-h1--size: var(--font-size--h1);
        --font-h2--size: var(--font-size--h2);
        --font-h3--size: var(--font-size--h3);
        --font-h4--size: var(--font-size--h4);
        --font-h5--size: var(--font-size--h5);
        --font-h6--size: var(--font-size--h6);
        --font-h1--line-height: var(--line-height--display-normal);
        --font-h2--line-height: var(--line-height--display-normal);
        --font-h3--line-height: var(--line-height--display-normal);
        --font-h4--line-height: var(--line-height--display-normal);
        --font-h5--line-height: var(--line-height--display-normal);
        --font-h6--line-height: var(--line-height--display-normal);
        --font-h1--letter-spacing: var(--letter-spacing--heading-normal);
        --font-h2--letter-spacing: var(--letter-spacing--heading-normal);
        --font-h3--letter-spacing: var(--letter-spacing--heading-normal);
        --font-h4--letter-spacing: var(--letter-spacing--heading-loose);
        --font-h5--letter-spacing: var(--letter-spacing--heading-normal);
        --font-h6--letter-spacing: var(--letter-spacing--heading-loose);
        --font-h1--case: none;
        --font-h2--case: none;
        --font-h3--case: none;
        --font-h4--case: none;
        --font-h5--case: none;
        --font-h6--case: uppercase;
        --font-h1-color: var(--color-foreground-heading);
        --font-h2-color: var(--color-foreground-heading);
        --font-h3-color: var(--color-foreground-heading);
        --font-h4-color: var(--color-foreground-heading);
        --font-h5-color: var(--color-foreground-heading);
        --font-h6-color: var(--color-foreground-heading);
        --font-heading--spacing: 0.25em;
        --font-h1--spacing: var(--font-heading--spacing);
        --font-h2--spacing: var(--font-heading--spacing);
        --font-h3--spacing: var(--font-heading--spacing);
        --font-h4--spacing: var(--font-heading--spacing);
        --font-h5--spacing: var(--font-heading--spacing);
        --font-h6--spacing: var(--font-heading--spacing);
        --font-paragraph--spacing: 0.5em;
        --max-width--body-normal: 32.5em;
        --max-width--body-narrow: 22.75em;
        --max-width--heading-normal: 32.5em;
        --max-width--heading-narrow: 19.5em;
        --max-width--display-normal: 13em;
        --max-width--display-narrow: 9.75em;
        --max-width--display-tight: 3.25em;
        --spacing-scale-md: 0.7;
        --spacing-scale-default: 1;
        --margin-3xs: 0.125rem;
        --margin-xs: 0.5rem;
        --margin-md: 0.8rem;
        --margin-lg: 1rem;
        --margin-xl: 1.25rem;
        --padding-sm: 12px;
        --padding-md: 16px;
        --button-padding-inline: 24px;
        --button-padding-block: 16px;
        --button-size: 44px;
        --button-size-sm: 36px;
        --button-size-md: 44px;
        --product-corner-radius: 0;
        --card-title-case: none;
        --product-title-case: none;
        --variant-picker-swatch-width: 30px;
        --variant-picker-swatch-height: 30px;
        --variant-picker-swatch-radius: 0;
        --variant-picker-border-width: 1px;
        --variant-picker-border-style: solid;
        --variant-picker-border-opacity: 10%;
        --variant-picker-button-radius: 0;
        --variant-picker-button-border-width: 1px;
        --variant-picker-button-width: default-width-buttons;
        --font-size--xs: 0.75rem;
        --font-size--sm: 0.875rem;
        --padding-3xs: 2px;
        --padding-2xs: 4px;
        --padding-xs: 8px;
        --padding-lg: 20px;
        --padding-xl: 24px;
        --padding-2xl: 32px;
        --padding-3xl: 32px;
        --padding-4xl: 48px;
        --padding-5xl: 48px;
        --margin-2xs: 8px;
        --gap-2xs: 4px;
        --gap-3xs: 2px;
        --gap-xs: 8px;
        --gap-sm: 12px;
        --gap-md: 16px;
        --gap-xl: 32px;
        --gap-2xl: 48px;
        --gap-3xl: 48px;
        --height-buy-buttons: 56px;
        --minimum-touch-target: 44px;
        --icon-size-xs: 0.85rem;
        --icon-size-sm: 20px;
        --icon-size-lg: 24px;
        --icon-stroke-width: 1.5;
        --opacity-40: 0.4;
        --opacity-70: 0.7;
        --opacity-subdued-text: 0.7;
        --disabled-opacity: 0.5;
        --opacity-5: 0.05;
        --opacity-10: 0.1;
        --opacity-15: 0.15;
        --opacity-35: 0.35;
        --opacity-50: 0.5;
        --opacity-60: 0.6;
        --opacity-20: 0.2;
        --opacity-5-15: 0.05;
        --opacity-10-25: 0.1;
        --opacity-35-55: 0.35;
        --opacity-40-60: 0.4;
        --opacity-30-60: 0.3;
        --badge-rectangle-padding-block: 1px;
        --badge-rectangle-padding-inline: 6px;
        --animation-speed: 200ms;
        --animation-speed-fast: 62.5ms;
        --animation-speed-slow: 300ms;
        --animation-easing: cubic-bezier(0.33, 1, 0.68, 1);
        --animation-timing-fade-in: cubic-bezier(0.16, 1, 0.3, 1);
        --animation-values: var(--animation-speed) var(--animation-easing);
        --animation-values-slow: var(--animation-speed-slow) var(--animation-easing);
        --animation-values-fast: var(--animation-speed-fast) var(--animation-easing);
        --drawer-animation-speed: 200ms;
        --ease-out-cubic: cubic-bezier(0.33, 1, 0.68, 1);
        --ease-out-quad: cubic-bezier(0.5, 1, 0.89, 1);
        --submenu-animation-speed: 360ms;
        --submenu-close-delay: 250ms;
        --hover-transition-duration: 250ms;
        --hover-transition-timing: cubic-bezier(0.33, 1, 0.68, 1);
        --hover-lift-amount: 4px;
        --hover-scale-amount: 1.015;
        --hover-subtle-zoom-amount: 1.035;
        --button-font-family-primary: var(--casa-accent);
        --button-font-family-secondary: var(--casa-accent);
        --button-text-case-primary: uppercase;
        --button-text-case-secondary: uppercase;
        --style-border-radius-buttons-primary: var(--casa-primary-button-radius);
        --style-border-radius-buttons-secondary: var(--casa-secondary-button-radius);
        --style-border-width: 1px;
        --style-border-radius-inputs: 0px;
        --style-border-width-inputs: 1px;
        --style-border-drawer: 0 solid transparent;
        --style-border-radius-50: 50%;
        --style-border-radius-sm: 0.6rem;
        --style-border-radius-lg: 1rem;
        --style-border-width-primary: 1px;
        --style-border-width-secondary: 1px;
        --shadow-drawer: none;
        --layer-section-background: -2;
        --layer-lowest: -1;
        --layer-base: 0;
        --layer-flat: 1;
        --layer-raised: 2;
        --layer-heightened: 4;
        --layer-sticky: 8;
        --layer-window-overlay: 10;
        --layer-header-menu: 12;
        --layer-overlay: 16;
        --layer-menu-drawer: 18;
        --layer-temporary: 20;
        --peek-next-slide-size: 3rem;
        --drawer-padding: calc(var(--padding-sm) + 7px);
        --drawer-height: 100dvh;
        --drawer-width: 95vw;
        --drawer-max-width: 500px;
        --menu-font-sm--size: 0.875rem;
        --menu-font-sm--line-height: calc(1.1 + 0.5 * min(16 / 14));
        --menu-font-md--size: 1rem;
        --menu-font-md--line-height: calc(1.1 + 0.5 * min(16 / 16));
        --menu-font-lg--size: 1.125rem;
        --menu-font-lg--line-height: calc(1.1 + 0.5 * min(16 / 18));
        --menu-font-xl--size: 1.25rem;
        --menu-font-xl--line-height: calc(1.1 + 0.5 * min(16 / 20));
        --menu-font-2xl--size: 1.75rem;
        --menu-font-2xl--line-height: calc(1.1 + 0.5 * min(16 / 28));
        --slideshow-controls-icon: 2rem;
    }

    @media screen and (min-width: 750px) {
        :root {
            --page-margin: 40px;
        }
    }

    @media (min-width: 40em) {
        :root {
            --section-height-small: 40svh;
            --section-height-medium: 55svh;
            --section-height-large: 70svh;
            --casa-section-medium: var(--section-height-medium);
            --casa-section-large: var(--section-height-large);
        }
    }

    @media (min-width: 60em) {
        :root {
            --section-height-small: 50svh;
            --section-height-medium: 65svh;
            --section-height-large: 80svh;
            --casa-section-medium: var(--section-height-medium);
            --casa-section-large: var(--section-height-large);
        }
    }

    body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
        background: var(--casa-bg);
        color: var(--casa-fg);
        font-family: var(--casa-body);
}

    html,
    body {
        overscroll-behavior-y: none;
    }

    img {
        width: 100%;
        height: auto;
    }

    @keyframes casa-marquee {
        to {
            transform: translate3d(calc(-100% - var(--marquee-gap)), 0, 0);
        }
    }

    @keyframes move-and-fade {
        from {
            transform: translate(var(--start-x, 0), var(--start-y, 0));
            opacity: var(--start-opacity, 0);
        }

        to {
            transform: translate(var(--end-x, 0), var(--end-y, 0));
            opacity: var(--end-opacity, 1);
        }
    }

    @keyframes backdropFilter {
        from {
            backdrop-filter: brightness(1);
        }

        to {
            backdrop-filter: brightness(0.75);
        }
    }

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

        100% {
            visibility: visible;
            opacity: 1;
            transform: translateX(0);
        }
    }
.\!container {
  width: 100% !important;
}
.container {
  width: 100%;
}
@media (min-width: 640px) {

  .\!container {
    max-width: 640px !important;
  }

  .container {
    max-width: 640px;
  }
}
@media (min-width: 768px) {

  .\!container {
    max-width: 768px !important;
  }

  .container {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {

  .\!container {
    max-width: 1024px !important;
  }

  .container {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {

  .\!container {
    max-width: 1280px !important;
  }

  .container {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {

  .\!container {
    max-width: 1536px !important;
  }

  .container {
    max-width: 1536px;
  }
}
.casa-page {
        width: var(--casa-page);
        margin-inline: auto;
    }
.casa-theme-root {
        display: flex;
        flex-direction: column;
        min-height: 100svh;
        min-height: 100dvh;
    }
@media screen and (max-width: 749px) {
        :is(
            input:not([type='button']):not([type='submit']):not([type='reset']):not([type='checkbox']):not([type='radio']):not([type='range']):not([type='color']),
            textarea,
            select
        ) {
            font-size: 16px !important;
        }
    }
.casa-content-for-layout {
        flex: 1;
        display: flex;
        flex-direction: column;
    }
.theme-checkbox {
        display: inline-flex;
        align-items: center;
        gap: var(--gap-xs, 8px);
        color: inherit;
        cursor: pointer;
    }
.theme-checkbox__input {
        position: absolute;
        width: 1px;
        height: 1px;
        margin: -1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        white-space: nowrap;
        border: 0;
    }
.theme-checkbox__box {
        position: relative;
        flex: 0 0 auto;
        width: 20px;
        height: 20px;
        margin-block-start: 0;
        border: var(--theme-checkbox-border-width) var(--theme-checkbox-border-style) var(--theme-checkbox-border-color);
        border-radius: var(--theme-checkbox-border-radius);
        background: var(--theme-checkbox-background);
        transition: background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
    }
.theme-checkbox__box::after {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 6px;
        height: 10px;
        border: solid var(--theme-checkbox-checkmark);
        border-width: 0 2px 2px 0;
        content: '';
        opacity: 0;
        transform: translate(-50%, -58%) rotate(45deg);
    }
.theme-checkbox__input:checked + .theme-checkbox__box {
        border-color: var(--theme-checkbox-checked-background);
        background: var(--theme-checkbox-checked-background);
    }
.theme-checkbox__input:checked + .theme-checkbox__box::after {
        opacity: 1;
    }
.theme-checkbox__input:focus-visible + .theme-checkbox__box {
        outline: 2px solid currentColor;
        outline-offset: 2px;
    }
.theme-checkbox__input:disabled + .theme-checkbox__box,
    .theme-checkbox:has(.theme-checkbox__input:disabled) {
        cursor: not-allowed;
    }
.error-popup-section {
        display: contents;
    }
@keyframes storefront-toast-fade-slide {
        from {
            opacity: 0;
            transform: translateY(-8px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
@keyframes storefront-toast-fade {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }
.casa-content-for-layout > .casa-section-display:last-child > .section-wrapper:not([data-upstorr-section-type="main-page"]) {
        flex-grow: 1;
    }
.casa-content-for-layout > .casa-section-display:last-child > .section-wrapper[data-upstorr-section-type="main-page"],
    .casa-content-for-layout > .casa-section-display:last-child > .main-page-section-wrapper {
        flex-grow: 0;
    }
.section-wrapper {
        --section-height-offset: 0px;
        position: relative;
    }
.section-wrapper:has(.cookie-consent-banner),
    .section-wrapper:has(.cookie-consent-banner) > .section,
    .section-wrapper:has(.cookie-consent-banner) .custom-section-content,
    .section-wrapper:has(.cookie-consent-banner) .section-content-wrapper {
        display: contents;
    }

    .section-wrapper:has(.cookie-consent-banner) > .\!section {
        display: contents !important;
    }
.section-wrapper:has(.cookie-consent-banner) > .section-background {
        display: none;
    }
.cookie-consent-banner__button:is(.button, .button-secondary):not(.button-unstyled) {
        width: 100%;
        max-width: none;
    }
@media screen and (min-width: 750px) and (max-width: 1279px) {
        .cookie-consent-banner__button:is(.button, .button-secondary):not(.button-unstyled) {
            flex: 1 1 0;
            min-width: 0;
        }
    }
@media screen and (min-width: 1280px) {
        .cookie-consent-banner__button:is(.button, .button-secondary):not(.button-unstyled) {
            width: -moz-fit-content;
            width: fit-content;
            flex: 0 0 auto;
        }
    }
body {
        --header-height: 60px;
        --header-group-height: var(--header-height);
        --transparent-header-offset-boolean: 0;
    }
.header-section {
        position: relative;
        z-index: var(--layer-heightened);
    }
#header-group:has(#header-component[sticky]) {
        display: contents;
    }
body:has(> #header-group > .header-section > #header-component[transparent]) #header-group > .header-section,
    body:has(> #upstorr-theme-root > #header-group > .header-section > #header-component[transparent]) #upstorr-theme-root > #header-group > .header-section {
        z-index: var(--layer-sticky);
    }
.header-section:has(> #header-component[sticky='always']),
    .header-section:has(> #header-component[sticky='scroll-up'][data-sticky-state='active']) {
        position: sticky;
        top: -1px;
        z-index: var(--layer-sticky);
    }
#header-component {
        --submenu-height: 0px;
        --full-open-header-height: 0px;
        --header-padding: var(--padding-sm);
        --font-paragraph--line-height: 1;
        --header-content-transition-timing: 0s;
        --closed-underlay-height: 100%;
        display: block;
        contain: layout style;
        position: relative;
        background: transparent;
    }
#header-component[data-sticky-state] {
        transition: opacity var(--animation-speed) var(--animation-easing);
        opacity: 1;
    }
#header-component[data-sticky-state='active'] {
        view-transition-name: sticky-header;
    }
#header-component[sticky='scroll-up'][data-sticky-state] {
        clip-path: inset(0 0 0 0);
        opacity: 1;
        transition: clip-path var(--animation-speed-slow) var(--ease-out-cubic);
    }
#header-component[data-sticky-state='idle'] {
        opacity: 0;
    }
#header-component[transparent] {
        --language-button-background-color: transparent;
        --language-button-border-color: transparent;
        --header-content-transition-timing: calc(var(--submenu-animation-speed) - var(--animation-speed-fast)) var(--animation-speed-fast) var(--ease-out-cubic);
        --closed-underlay-height: 0px;
        position: absolute;
        inset: 0 0 auto;
        z-index: var(--layer-overlay);
    }
#header-component[sticky='scroll-up'][data-sticky-state='idle'] {
        clip-path: inset(0 0 100% 0);
        opacity: 1;
        pointer-events: none;
    }
#header-component[transparent='not-sticky'][data-sticky-state='active'] {
        --closed-underlay-height: 100%;
    }
#header-component[transparent='always'] .header__row,
    #header-component[transparent='not-sticky']:not([data-sticky-state='active']) .header__row {
        background: transparent;
        color: inherit;
        --color-foreground: inherit;
        --color-foreground-rgb: inherit;
        --color-border: inherit;
        --color-border-rgb: inherit;
    }
#header-component[transparent='always'] :is(.header-menu, .menu-list, .menu-list__list, .menu-list__link, .header__navigation-bar-row),
    #header-component[transparent='not-sticky']:not([data-sticky-state='active']) :is(.header-menu, .menu-list, .menu-list__list, .menu-list__link, .header__navigation-bar-row) {
        background: transparent;
    }
#header-component[transparent='always'] :is(.header-logo, .logo-block, .logo-block__jumbo-text, .jumbo-text, .jumbo-text__content, .header-menu, .menu-list, .menu-list__link, .menu-list__link-title),
    #header-component[transparent='not-sticky']:not([data-sticky-state='active']) :is(.header-logo, .logo-block, .logo-block__jumbo-text, .jumbo-text, .jumbo-text__content, .header-menu, .menu-list, .menu-list__link, .menu-list__link-title) {
        color: inherit;
        --color: inherit;
        --color-foreground: inherit;
        --color-foreground-heading: inherit;
    }
#header-component :is(a, .button, .button-secondary, .header-actions__action) {
        transition: color var(--header-content-transition-timing), border-color var(--header-content-transition-timing);
    }
#header-component :is(.header-menu, .dropdown-localization) {
        display: none;
    }
.header__underlay {
        position: absolute;
        inset: 0;
        pointer-events: none;
    }
.header__underlay-closed {
        height: var(--closed-underlay-height, 100%);
        z-index: var(--layer-lowest);
        background: linear-gradient(
            var(--color-scheme-top-row) 0 var(--top-row-height, 0px),
            var(--color-scheme-bottom-row) var(--top-row-height, 0px) 100%
        );
        transition: height var(--animation-speed-slow) var(--ease-out-cubic);
    }
.header__underlay-open {
        height: var(--full-open-header-height, 0px);
        z-index: var(--layer-lowest);
        background: linear-gradient(
            var(--color-scheme-top-row) 0 var(--top-row-height, 0px),
            var(--color-scheme-bottom-row) var(--top-row-height, 0px) 100%
        );
        transition: height var(--submenu-animation-speed) var(--ease-out-cubic);
    }
#header-component[data-menu-style='drawer'] .header__column {
        display: contents;
    }
.header__row {
        position: relative;
        color: var(--color-foreground);
        background: transparent;
        border-block-end: 0 solid rgb(var(--color-border-rgb, 0 0 0) / 1);
        z-index: var(--layer-base);
    }
#header-component .header__row {
        background: transparent;
    }
.header__row--top:not(.header__row--page-width-border),
    .header__row--top.header__row--page-width-border .header__columns,
    .header__row--bottom {
        border-block-end: var(--border-bottom-width, 0) solid var(--color-border, rgb(var(--color-border-rgb, 0 0 0) / 1));
    }
.header__row :is(.header-menu, .menu-list, .menu-list__list, .menu-list__link) {
        background: transparent;
        color: inherit;
    }
.header__row--page-width-border {
        border-block-end-width: 0;
    }
.header__columns {
        --header-left: 1fr;
        --header-center: auto;
        --header-right: 1fr;
        --header-template-columns: var(--header-left) var(--header-center) var(--header-right);
        display: grid;
        grid-template-areas: 'left center right';
        grid-template-columns: var(--header-template-columns);
        align-items: center;
        min-height: var(--header-height);
        width: 100%;
        padding-block: var(--header-padding);
        gap: var(--gap-xl);
    }
.header__row.section {
        min-height: 0;
    }
.header__row.\!section {
        min-height: 0 !important;
    }
.header__row.section > .header__columns {
        max-width: none;
        margin-inline: 0;
        padding-inline: 0;
    }
.header__row.\!section > .header__columns {
        max-width: none !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
    }
.header__columns:not(.header__columns--has-center) {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
.header__columns:not(.header__columns--has-center).header__columns--menu-right {
        justify-content: flex-end;
    }
.header__columns:not(.header__columns--has-center).header__columns--menu-left {
        justify-content: flex-start;
    }
.header__columns--has-center .header__column--left {
        grid-column: 1;
        width: 100%;
        justify-self: stretch;
    }
.header__columns--has-center .header__column--center {
        grid-column: 2;
        justify-self: center;
    }
.header__columns--has-center .header__column--right {
        grid-column: 3;
        width: 100%;
        justify-self: stretch;
    }
.header__columns--only-center {
        display: flex;
        justify-content: center;
    }
.header__columns:not(.header__columns--has-center).header__columns--menu-right .header__column--right {
        margin-inline-start: auto;
    }
.header__columns--has-center .header__column--right {
        justify-content: flex-end;
    }
.header__row--full-width .header__columns {
        max-width: none;
    }
.header__row--compact .header__columns,
    #header-component[style*='--header-section-height:compact'] .header__columns {
        min-height: 48px;
    }
.header__column {
        display: flex;
        align-items: center;
        gap: var(--gap-md);
        min-width: 0;
    }
.header-actions {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: var(--gap-xs);
        font-family: var(--header-actions-font-family, inherit);
        font-size: var(--header-actions-font-size, 0.875rem);
        text-transform: var(--header-actions-text-transform, none);
    }
.header-actions__action {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 44px;
        min-height: 44px;
        font-family: var(--header-actions-font-family, inherit);
        font-size: var(--header-actions-font-size, 0.875rem);
        text-transform: var(--header-actions-text-transform, none);
        color: inherit;
        text-decoration: none;
        background: transparent;
        border: 0;
    }
.header-actions__icon {
        width: 20px;
        height: 20px;
    }
.header-actions__text {
        display: none;
    }
.header-actions--text .header-actions__text {
        display: none;
    }
.header-actions--text .header-actions__icon,
    .header-actions__action--text .header-actions__icon {
        display: none;
    }
.header-actions--text .header-actions__text,
    .header-actions__action--text .header-actions__text {
        display: inline;
    }
.account-button.header-actions__action {
        padding: 0;
        background: transparent;
    }
.account-button__trigger {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: var(--gap-xs, 8px);
        width: 100%;
        min-width: 44px;
        min-height: 44px;
        padding: 0;
        border: 0;
        background: transparent;
        color: inherit;
        font: inherit;
        text-transform: inherit;
        cursor: pointer;
    }
.header-account-popup {
        position: fixed;
        inset: 0;
        z-index: 2147483647;
        display: grid;
        align-items: end;
        justify-items: stretch;
        isolation: isolate;
        opacity: 1;
    }
.header-account-popup[hidden] {
        display: none;
    }
.header-account-popup[data-upstorr-header-account-active="true"] {
        display: grid;
    }
@keyframes header-account-popup-backdrop-in {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }
@keyframes header-account-popup-backdrop-out {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
        }
    }
@keyframes header-account-sheet-up {
        from {
            opacity: 0.82;
            transform: translate3d(0, 100%, 0);
        }

        to {
            opacity: 1;
            transform: translate3d(0, 0, 0);
        }
    }
@keyframes header-account-sheet-down {
        from {
            opacity: 1;
            transform: translate3d(0, 0, 0);
        }

        to {
            opacity: 0.82;
            transform: translate3d(0, 100%, 0);
        }
    }
.header-account-popup__backdrop {
        position: absolute;
        inset: 0;
        z-index: 0;
        border: 0;
        background: rgb(0 0 0 / 0.2);
        cursor: pointer;
        animation: header-account-popup-backdrop-in 220ms ease-out both;
    }
.header-account-popup__sheet {
        position: relative;
        z-index: 2;
        display: grid;
        gap: 22px;
        width: 100%;
        max-height: min(80dvh, 720px);
        margin: 0;
        overflow: auto;
        border: 1px solid var(--header-account-popup-border, rgb(var(--color-foreground-rgb) / 0.16));
        border-radius: 0;
        background: var(--header-account-popup-surface, rgb(var(--color-background-rgb, 255 255 255)));
        color: var(--header-account-popup-foreground, var(--color-foreground));
        padding: 24px;
        box-shadow: none;
        opacity: 1;
        transform: translate3d(0, 0, 0);
        animation: header-account-sheet-up 280ms cubic-bezier(0.22, 1, 0.36, 1) both;
        will-change: transform, opacity;
    }
.header-account-popup[data-upstorr-header-account-closing="true"] .header-account-popup__backdrop {
        animation: header-account-popup-backdrop-out 180ms ease-in both;
    }
.header-account-popup[data-upstorr-header-account-closing="true"] .header-account-popup__sheet {
        animation: header-account-sheet-down 220ms cubic-bezier(0.4, 0, 1, 1) both;
    }
.header-account-popup__header {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 18px;
        min-width: 0;
    }
.header-account-popup__title {
        font-family: var(--font-heading--family);
        font-style: var(--font-heading--style);
        font-weight: var(--font-heading--weight);
        font-size: clamp(1.4rem, 4vw, 2rem);
        line-height: 1.1;
    }
.header-account-popup__close {
        display: grid;
        place-items: center;
        flex: 0 0 auto;
        width: 40px;
        height: 40px;
        border: 0;
        background: transparent;
        color: inherit;
        font: inherit;
        cursor: pointer;
    }
.header-account-popup__close-icon {
        width: 24px;
        height: 24px;
    }
.header-account-popup__items {
        display: grid;
        gap: 12px;
        color: var(--header-account-popup-foreground, var(--color-foreground));
    }
.header-account-popup__item {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        min-height: 58px;
        min-width: 0;
        border: 1px solid var(--header-account-popup-border, rgb(var(--color-foreground-rgb) / 0.16));
        background: var(--header-account-popup-surface, rgb(var(--color-background-rgb, 255 255 255)));
        color: inherit;
        padding: 14px 16px;
        text-align: center;
        text-decoration: none;
    }
.header-account-popup__item--primary {
        justify-content: space-between;
        min-height: 64px;
        text-align: start;
    }
.header-account-popup__item-arrow {
        flex: 0 0 auto;
        width: 12px;
        height: 12px;
        border-top: 1.5px solid currentColor;
        border-right: 1.5px solid currentColor;
        opacity: 0.55;
        transform: rotate(45deg);
    }
@media (max-width: 749px) {
        .header-account-popup__sheet {
            width: 100%;
            max-height: 78dvh;
            border-radius: 0;
            padding: 20px;
        }
    }
@media (min-width: 990px) {
        .header-account-popup {
            align-items: center;
            justify-items: center;
        }

        .header-account-popup__sheet {
            width: min(720px, calc(100vw - 64px));
            max-height: min(80dvh, 720px);
            animation: none;
        }

        .header-account-popup[data-upstorr-header-account-closing="true"] .header-account-popup__sheet {
            animation: none;
        }

        .header-account-popup__items {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .header-account-popup__item--primary {
            grid-column: 1 / -1;
        }
    }
@media (prefers-reduced-motion: reduce) {
        .header-account-popup__backdrop,
        .header-account-popup__sheet,
        .header-account-popup[data-upstorr-header-account-closing="true"] .header-account-popup__backdrop,
        .header-account-popup[data-upstorr-header-account-closing="true"] .header-account-popup__sheet {
            animation: none;
        }
    }
.header-localization {
        font-family: var(--header-actions-font-family, var(--localization-font-family, inherit));
        font-size: calc(var(--localization-font-size, 1rem) + 0.25rem);
        line-height: 1.15;
        text-transform: var(--header-actions-text-transform, none);
        white-space: nowrap;
    }
.market-switcher {
        position: relative;
        display: inline-flex;
        align-items: center;
        height: 44px;
    }
.market-switcher__trigger {
        display: inline-flex;
        align-items: center;
        gap: 0.375rem;
        height: 44px;
        padding: 0;
        font: inherit;
        color: inherit;
        cursor: pointer;
        background: transparent;
        border: 0;
        text-transform: inherit;
    }
.market-switcher__trigger::after {
        content: '';
        width: 0.35rem;
        height: 0.35rem;
        border-right: 1px solid currentColor;
        border-bottom: 1px solid currentColor;
        margin-block-start: -0.15em;
        transform: rotate(45deg);
    }
.market-switcher[data-upstorr-market-switcher-open='true'] .market-switcher__trigger::after {
        margin-block-start: 0.15em;
        transform: rotate(225deg);
    }
.market-switcher[data-upstorr-market-switcher-open='true'] {
        z-index: var(--layer-temporary);
    }
.market-switcher__menu {
        position: absolute;
        top: calc(100% + 0.75rem);
        right: 0;
        z-index: calc(var(--layer-temporary) + 1);
        display: grid;
        min-width: 13rem;
        padding: 0.4rem;
        border: 1px solid rgb(var(--color-foreground-rgb, 18 18 18) / 0.12);
        background: var(--color-scheme-top-row, rgb(var(--color-background-rgb, 255 255 255)));
        box-shadow: var(--shadow-popover);
    }
.market-switcher__menu[hidden] {
        display: none;
    }
.market-switcher__menu[data-upstorr-market-switcher-floating='true'] {
        position: fixed;
        right: auto;
        z-index: 2147483646;
        pointer-events: auto;
    }
.header__column--left .market-switcher__menu {
        right: auto;
        left: 0;
    }
.market-switcher__option {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        padding: 0.65rem 0.7rem;
        color: inherit;
        text-decoration: none;
    }
.market-switcher__option:hover,
    .market-switcher__option[aria-current='true'] {
        background: rgb(var(--color-foreground-rgb, 18 18 18) / 0.06);
    }
.market-switcher__label,
    .market-switcher__meta {
        font: inherit;
        white-space: nowrap;
    }
.market-switcher__meta {
        opacity: 0.65;
        font-size: 0.78em;
    }
html.cart-drawer-open,
    html.cart-drawer-open body {
        overflow: hidden;
    }
.dialog-modal {
        border: none;
        box-shadow: var(--shadow-popover);
    }
.dialog-modal::backdrop {
        background: rgb(var(--backdrop-color-rgb, 0 0 0) / var(--backdrop-opacity, 0.2));
        backdrop-filter: brightness(1);
        transition: backdrop-filter var(--animation-speed) var(--animation-easing);
    }
.dialog-modal[open]::backdrop {
        animation: backdropFilter var(--animation-speed) var(--animation-easing) forwards;
        transition: opacity var(--animation-speed) var(--animation-easing);
    }
.dialog-modal.dialog-closing::backdrop {
        opacity: 0;
    }
.dialog-drawer {
        --dialog-drawer-opening-animation: move-and-fade;
        --dialog-drawer-closing-animation: move-and-fade;
    }
.dialog-drawer--right {
        --dialog-drawer-opening-animation: move-and-fade;
        --dialog-drawer-closing-animation: move-and-fade;
    }
.dialog-drawer[open] {
        --start-x: var(--custom-transform-from, 100%);
        --end-x: var(--custom-transform-to, 0px);
        --start-opacity: 1;
        animation: var(--dialog-drawer-opening-animation) var(--animation-speed) var(--animation-easing) forwards;
    }
.dialog-drawer[open].dialog-closing {
        --start-x: 0px;
        --end-x: 100%;
        --start-opacity: 1;
        --end-opacity: 1;
        animation: var(--dialog-drawer-closing-animation) var(--animation-speed) var(--animation-easing);
    }
.dialog-drawer--right[open] {
        --start-x: -100%;
        --start-opacity: 1;
    }
.dialog-drawer--right[open].dialog-closing {
        --start-x: 0px;
        --end-x: -100%;
        --start-opacity: 1;
        --end-opacity: 1;
        animation: var(--dialog-drawer-closing-animation) var(--animation-speed) var(--animation-easing);
    }
.cart-drawer,
    .cart-drawer__dialog {
        --cart-drawer-padding-block: var(--padding-xl, 24px);
        --cart-drawer-padding-inline: var(--padding-xl, 24px);
        --cart-drawer-padding-inline-desktop: var(--padding-2xl, 32px);
        --cart-drawer-padding: var(--cart-drawer-padding-block) var(--cart-drawer-padding-inline);
        --cart-drawer-padding-desktop: var(--cart-drawer-padding-block) var(--cart-drawer-padding-inline-desktop);
    }
.cart-drawer__dialog {
        position: fixed;
        inset: 0 0 0 auto;
        width: 100%;
        max-width: none;
        height: 100%;
        max-height: 100dvh;
        margin: 0;
        padding: 0;
        overflow: hidden;
        border: 0;
        border-left: var(--style-border-drawer);
        border-radius: 0;
        background-color: var(--color-background);
        color: var(--color-foreground);
        box-shadow: var(--shadow-drawer);
    }
.cart-drawer__dialog::backdrop {
        background: rgb(0 0 0 / 0.2);
    }
.cart-drawer__inner {
        height: 100%;
        overflow: hidden;
    }
.cart-drawer__header {
        position: sticky;
        top: 0;
        z-index: var(--layer-sticky);
        box-sizing: border-box;
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        padding-block: var(--cart-drawer-padding-block);
        padding-inline: var(--cart-drawer-padding-inline);
        background-color: var(--color-background);
    }
.cart-drawer__content {
        display: flex;
        flex-direction: column;
        flex-grow: 1;
        height: calc(100% - var(--header-height, 60px));
        padding: 0;
        overflow-y: auto;
        background-color: var(--color-background);
    }
.cart-drawer__heading {
        display: flex;
        align-items: center;
        gap: var(--gap-xs);
        margin: 0;
    }
.cart-drawer__heading--empty {
        justify-content: center;
        width: 100%;
        margin-bottom: var(--margin-md);
        text-align: center;
    }
.cart-drawer__close-button {
        display: inline-grid;
        place-items: center;
        width: var(--minimum-touch-target);
        height: var(--minimum-touch-target);
        margin-right: 0;
        padding: 0;
        color: inherit;
        background: transparent;
        box-shadow: none;
        transform: translateY(-10px);
    }
.cart-drawer__close-icon {
        width: 30px;
        height: 30px;
    }
.cart-drawer__items {
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        width: 100%;
        padding-inline: var(--cart-drawer-padding-inline);
        overflow-y: auto;
    }
.cart-drawer__items .cart-items__table-row {
        padding-bottom: var(--gap-xl);
        margin-bottom: var(--gap-xl);
        border-bottom: var(--style-border-width) solid var(--color-border);
    }
.cart-drawer__items .cart-items__table-row:last-child {
        padding-bottom: 0;
        margin-bottom: 0;
        border-bottom: none;
    }
.cart-drawer__summary {
        --cart-drawer-summary-padding: var(--padding-lg);
        position: sticky;
        bottom: 3dvh;
        z-index: 1;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: var(--gap-xl);
        padding: var(--cart-drawer-summary-padding, var(--padding-lg));
        margin-top: auto;
        background-color: var(--color-background);
        -webkit-mask-image: linear-gradient(to bottom, transparent, black var(--cart-drawer-summary-padding));
                mask-image: linear-gradient(to bottom, transparent, black var(--cart-drawer-summary-padding));
    }
.cart-drawer__summary .cart-summary,
    .cart-drawer__summary .cart-summary__inner {
        display: flex;
        width: 100%;
    }
.cart-drawer__summary .cart-summary__inner {
        position: static;
        padding: 0;
    }
.cart-drawer__dialog[cart-summary-sticky='false'] .cart-drawer__summary {
        position: static;
        -webkit-mask-image: none;
                mask-image: none;
    }
.cart-drawer__dialog[cart-summary-sticky='false'] .cart-drawer__items {
        overflow: unset;
    }
.cart-drawer--empty .cart-drawer__inner {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        height: 100dvh;
    }
.cart-drawer--empty .cart-drawer__header {
        justify-content: flex-end;
        padding-bottom: 0;
    }
.cart-drawer--empty .cart-drawer__content {
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: auto;
        text-align: center;
    }
.cart-drawer--empty .cart-drawer__items,
    .cart-drawer--empty .cart-items__wrapper,
    .cart-drawer--empty .cart-items__empty {
        align-items: center;
        justify-content: center;
        width: 100%;
    }
.cart-drawer--empty .cart-items__empty-button {
        margin-inline: auto;
    }
.cart-bubble {
        --cart-padding: 0.2em;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 20px;
        aspect-ratio: 1;
        padding-inline: var(--cart-padding);
        color: var(--color-primary-button-text);
        line-height: normal;
        border-width: 0;
        border-radius: 50%;
    }
.cart-bubble[data-maintain-ratio] {
        aspect-ratio: 1;
    }
.cart-bubble[data-maintain-ratio] .cart-bubble__background {
        border-radius: var(--style-border-radius-50);
    }
.cart-bubble__background {
        position: absolute;
        inset: 0;
        background-color: var(--color-primary-button-background);
        border-radius: var(--style-border-radius-lg);
    }
.cart-bubble__text {
        z-index: var(--layer-flat);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: var(--font-size--3xs);
        line-height: 1;
    }
.header-actions__cart-icon {
        --cart-bubble-size: 16px;
        --cart-bubble-top: -6px;
        --cart-bubble-right: -7px;
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
.header-actions__cart-icon .cart-bubble {
        position: absolute;
        top: var(--cart-bubble-top);
        right: var(--cart-bubble-right);
        width: -moz-max-content;
        width: max-content;
        min-width: var(--cart-bubble-size);
        height: var(--cart-bubble-size);
        padding-inline: 3px;
        aspect-ratio: auto;
    }
.header-actions__cart-icon.header-actions__cart-icon--has-cart svg {
        -webkit-mask: radial-gradient(
            calc(var(--cart-bubble-size) + 2px) at calc(100% - var(--cart-bubble-right)) var(--cart-bubble-top),
            transparent 45.45%,
            #fff 45.45%,
            #fff 100%
        );
                mask: radial-gradient(
            calc(var(--cart-bubble-size) + 2px) at calc(100% - var(--cart-bubble-right)) var(--cart-bubble-top),
            transparent 45.45%,
            #fff 45.45%,
            #fff 100%
        );
    }
.cart-drawer__heading .cart-bubble {
        width: -moz-fit-content;
        width: fit-content;
        padding: var(--cart-padding, 0.08em);
        border-radius: var(--style-border-radius-buttons-primary);
        aspect-ratio: auto;
    }
.cart-drawer__heading .cart-bubble[data-maintain-ratio] {
        width: min(1lh, 22px);
        height: min(1lh, 22px);
    }
.header-actions__cart-icon .cart-bubble__text {
        color: var(--color-primary-button-text);
        font-size: 10px;
    }
.cart-drawer__heading .cart-bubble__text {
        color: var(--color-foreground);
        font-family: var(--font-paragraph--family);
        font-weight: var(--font-paragraph--weight);
        font-size: clamp(var(--font-size--3xs), 0.75em, var(--font-size--xs));
    }
.cart-drawer__heading .cart-bubble__background {
        background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10-25));
    }
@media screen and (min-width: 750px) {
        .cart-drawer {
            margin-inline-end: calc(var(--gap-xs) * -1);
        }

        .cart-drawer--text {
            display: flex;
            align-items: center;
        }

        .cart-drawer__dialog {
            width: calc(var(--sidebar-width) * 1.2);
            max-width: 95vw;
        }

        .cart-drawer__header,
        .cart-drawer__items {
            padding-inline: var(--cart-drawer-padding-inline-desktop);
        }

        .cart-drawer__summary {
            --cart-drawer-summary-padding: var(--padding-2xl);
        }

        .header-actions__cart-icon--text {
            display: flex;
            align-items: center;
            gap: var(--gap-xs);
        }

        .header-actions__cart-icon--text.header-actions__cart-icon .cart-bubble {
            position: relative;
            top: 0;
            right: auto;
        }
    }
.header-logo {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
        font-family: var(--font-body--family);
        font-style: var(--font-body--style);
        font-weight: 600;
        font-size: var(--font-size--md, 1rem);
        color: inherit;
        text-decoration: none;
    }
.header-logo__text {
        display: inline-flex;
        align-items: center;
        line-height: 1;
        white-space: nowrap;
    }
.header-logo[data-hidden-on-home-page] {
        display: none;
    }
#header-component[data-sticky-state='active'] .header-logo[data-hidden-on-home-page] {
        display: flex;
    }
.header-logo .logo-block {
        max-width: min(100%, 50vw);
    }
.header__drawer {
        display: inline-flex;
        position: relative;
        align-items: center;
        min-height: var(--header-drawer-min-height, 60px);
    }
#header-component[data-menu-style='drawer'] .header__drawer {
        display: flex;
    }
html.header-drawer-open,
    html.header-drawer-open body,
    html:has(.header__drawer[data-open='true']),
    html:has(.header__drawer[data-open='true']) body {
        overflow: hidden;
    }
#header-component:has(.header__drawer[data-open='true']),
    html.header-drawer-open #header-component {
        contain: style;
        z-index: var(--layer-temporary);
    }
.header-section:has(#header-component .header__drawer[data-open='true']),
    html.header-drawer-open .header-section {
        z-index: var(--layer-temporary);
    }
.header__drawer-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 44px;
        min-height: 44px;
        cursor: pointer;
        list-style: none;
    }
.header__drawer-toggle .header-drawer-icon {
        width: var(--icon-size-xs);
        height: var(--icon-size-xs);
        margin: auto;
    }
.header__drawer-toggle .header-drawer-icon svg,
    .menu-drawer .header-drawer-icon svg {
        width: 100%;
        height: 100%;
    }
.header__drawer[data-open='true'] .header__drawer-toggle .header-drawer-icon--open,
    .header__drawer:not([data-open='true']) .header__drawer-toggle .header-drawer-icon--close {
        display: none;
    }
.header__drawer-panel {
        position: fixed;
        inset: 0 auto auto 0;
        width: var(--drawer-width);
        max-width: var(--drawer-max-width);
        height: var(--drawer-height);
        padding: 0;
        background-color: var(--color-background);
        color: var(--color-foreground);
        box-shadow: var(--shadow-drawer);
        overflow: auto;
        z-index: calc(var(--layer-temporary) + 1);
        display: flex;
        flex-direction: column;
        transform: translateX(-100%);
        visibility: hidden;
        border-inline-end: var(--style-border-drawer);
        transition:
            transform var(--drawer-animation-speed) ease,
            visibility var(--drawer-animation-speed) ease,
            opacity var(--drawer-animation-speed) ease;
    }
@media screen and (min-width: 750px) {
        .header__drawer-panel {
            width: 25rem;
        }
    }
.header__drawer[data-open='true'] > .header__drawer-panel {
        transform: translateX(0);
        visibility: visible;
        opacity: 1;
    }
.header__drawer:not([data-open='true']) > .header__drawer-panel {
        pointer-events: none;
    }
.header__drawer-panel:focus {
        outline: none;
    }
.menu-drawer.menu-drawer--has-submenu-opened {
        overflow: initial;
    }
.menu-drawer__backdrop {
        position: fixed;
        inset: 0;
        width: 100vw;
        height: 100dvh;
        z-index: var(--layer-temporary);
        backdrop-filter: brightness(0.75);
        opacity: 0;
        pointer-events: none;
        transition: opacity var(--drawer-animation-speed) ease;
    }
.header__drawer[data-open='true'] > .menu-drawer__backdrop {
        opacity: 1;
        pointer-events: auto;
    }
.menu-drawer__navigation {
        padding: 0;
    }
.menu-drawer .menu-drawer__close-button {
        position: relative;
        right: auto;
        top: auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: -moz-fit-content;
        width: fit-content;
        height: -moz-fit-content;
        height: fit-content;
        padding: var(--padding-lg);
        color: inherit;
    }
.menu-drawer .menu-drawer__close-button .header-drawer-icon {
        width: 30px;
        height: 30px;
    }
.menu-drawer__nav-buttons {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
.menu-drawer .menu-drawer__back-button {
        display: flex;
        align-items: center;
        width: 100%;
        padding: var(--padding-md) var(--padding-xl);
        color: var(--color-foreground);
        text-align: left;
        text-decoration: none;
        white-space: nowrap;
        overflow-x: hidden;
        line-height: 1.2;
        box-shadow: none;
    }
.menu-drawer .menu-drawer__back-button > .svg-wrapper {
        width: var(--icon-size-xs);
        height: var(--icon-size-xs);
        margin-inline-end: var(--padding-md);
    }
.menu-drawer__submenu {
        position: absolute;
        inset: 0 auto auto 0;
        width: 100%;
        height: 100dvh;
        z-index: var(--layer-flat);
        display: flex;
        flex-direction: column;
        background-color: var(--color-background);
        color: var(--color-foreground);
        overflow-y: auto;
        transform: translateX(-5%);
        visibility: hidden;
        opacity: 0;
        transition:
            transform var(--drawer-animation-speed) ease,
            visibility var(--drawer-animation-speed) ease,
            opacity var(--drawer-animation-speed) ease;
    }
.menu-drawer__submenu[data-open='true'] {
        transform: translateX(0);
        visibility: visible;
        opacity: 1;
    }
.menu-drawer__inner-submenu {
        display: flex;
        flex-direction: column;
        height: 100%;
        overflow-y: auto;
    }
.menu-drawer__featured-content {
        z-index: var(--layer-base);
        container-type: inline-size;
    }
.menu-drawer__featured-content--childlist {
        z-index: var(--layer-flat);
    }
.menu-drawer__featured-content-list {
        display: flex;
        gap: 1em;
        overflow-x: auto;
        padding-block-end: var(--padding-lg);
    }
.menu-drawer__featured-content-list-item {
        flex: 0 0 auto;
    }
.menu-drawer__featured-content-list-item--collection img.resource-card__image,
    .menu-drawer__featured-content-list-item--collection .menu-drawer__link-image {
        width: 80cqi;
    }
.menu-drawer__featured-content-list-item:first-child {
        margin-inline-start: var(--margin-xl);
    }
.menu-drawer__featured-content-list-item:last-child {
        margin-inline-end: var(--margin-xl);
    }
.menu-drawer__featured-card {
        display: flex;
        flex-direction: column;
        gap: var(--padding-3xs);
        color: inherit;
        text-decoration: none;
    }
.header-menu {
        display: flex;
        align-items: center;
        height: 100%;
        color: inherit;
    }
.header-menu__inner {
        display: flex;
        align-items: center;
        height: 100%;
    }
.menu-list {
        --menu-horizontal-gap: var(--gap-xl);
        --menu-vertical-gap: var(--gap-xl);
        display: flex;
        height: 100%;
    }
.menu-list__list {
        display: flex;
        align-items: center;
        justify-content: var(--grid-area-alignment, center);
        gap: 0;
        margin: 0;
        padding: 0;
        list-style: none;
    }
.menu-list__list-item {
        position: static;
        display: flex;
        align-items: center;
        flex-shrink: 0;
        height: 100%;
        white-space: nowrap;
    }
.menu-list__link {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        height: 100%;
        margin-block: 0;
        font-family: var(--menu-top-level-font-family);
        font-style: var(--menu-top-level-font-style);
        font-weight: var(--menu-top-level-font-weight);
        font-size: var(--menu-top-level-font-size);
        line-height: var(--menu-top-level-font-line-height);
        text-transform: var(--menu-top-level-font-case);
        color: var(--menu-top-level-font-color);
        text-decoration: none;
        white-space: nowrap;
        cursor: pointer;
    }
@media screen and (min-width: 750px) {
        .menu-list__link {
            font-size: var(--menu-top-level-font-size-desktop);
        }
    }
.menu-list:where(:has(.menu-list__list-item:hover)) .menu-list__link,
    .menu-list:where(:has(.menu-list__list-item:focus-within)) .menu-list__link,
    .menu-list:where(:has(.menu-list__link--active)) .menu-list__link {
        color: rgb(var(--menu-top-level-font-color-rgb) / var(--opacity-subdued-text));
    }
.menu-list:not(:has(.menu-list__list-item:hover)) .menu-list__link--active,
    .menu-list .menu-list__list-item:where(:hover, :focus-within) .menu-list__link {
        color: var(--menu-top-level-font-color);
    }
.menu-list__link-title {
        padding-inline: calc(var(--gap-xl) / 2);
    }
.menu-list__submenu {
        display: block;
        visibility: hidden;
        position: absolute;
        left: 0;
        right: 0;
        top: calc(100% - 1px);
        width: 100%;
        padding-inline: var(--padding-inline);
        background: var(--color-background);
        color: var(--color-foreground);
        box-shadow: none;
        z-index: var(--layer-header-menu);
        pointer-events: auto;
        opacity: 0;
        transition:
            opacity var(--submenu-animation-speed) var(--ease-out-cubic) var(--submenu-close-delay),
            visibility 0s linear calc(var(--submenu-close-delay) + var(--submenu-animation-speed));
    }
.menu-list__submenu::after {
        content: '';
        position: absolute;
        inset: 100% 0 auto;
        height: 32px;
        pointer-events: none;
        background: linear-gradient(to bottom, rgb(0 0 0 / 0.12), transparent);
    }
.menu-list__list-item:is(:hover, :focus-within) > .menu-list__submenu {
        visibility: visible;
        pointer-events: auto;
        opacity: 1;
        transition:
            opacity var(--submenu-animation-speed) var(--ease-out-cubic),
            visibility 0s linear;
    }
.menu-list__submenu-inner {
        position: relative;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        padding-block: var(--padding-3xl);
        padding-inline: var(--section-padding-inline);
        max-height: calc(80vh - var(--header-height));
        overflow-y: auto;
        overflow-x: hidden;
        scrollbar-width: thin;
        scrollbar-color: rgb(var(--color-foreground-rgb) / var(--opacity-40)) transparent;
    }
.mega-menu,
    .mega-menu__grid {
        width: 100%;
    }
.mega-menu__grid {
        display: grid;
        grid-template-columns: repeat(var(--menu-columns-tablet), minmax(0, 1fr));
        gap: var(--menu-vertical-gap) var(--menu-horizontal-gap);
    }
@media screen and (min-width: 990px) {
        .mega-menu__grid {
            grid-template-columns: repeat(var(--menu-columns-desktop), minmax(0, 1fr));
        }
    }
.mega-menu__list {
        display: contents;
    }
.mega-menu__column {
        grid-column: span 1;
    }
.mega-menu__column--wide-collection-image {
        grid-column: span 1;
    }
@media screen and (min-width: 990px) {
        .mega-menu__column--wide-collection-image {
            grid-column: span 2;
        }
    }
.mega-menu__link {
        display: inline-flex;
        padding: var(--padding-2xs) 0;
        font-family: var(--menu-child-font-family);
        font-style: var(--menu-child-font-style);
        font-weight: var(--menu-child-font-weight);
        font-size: var(--menu-child-font-size);
        line-height: var(--menu-child-font-line-height);
        text-transform: var(--menu-child-font-case);
        color: var(--menu-child-font-color);
        white-space: normal;
        text-decoration: none;
    }
.mega-menu__link:hover {
        color: var(--menu-child-active-font-color);
    }
.mega-menu__link--parent {
        font-family: var(--menu-parent-font-family);
        font-style: var(--menu-parent-font-style);
        font-weight: var(--menu-parent-font-weight);
        font-size: var(--menu-parent-font-size);
        line-height: var(--menu-parent-font-line-height);
        text-transform: var(--menu-parent-font-case);
        color: var(--menu-parent-font-color);
    }
.mega-menu__link--parent:hover {
        color: var(--menu-parent-active-font-color);
    }
.mega-menu__link:has(.mega-menu__link-image),
    .mega-menu__featured-card {
        display: flex;
        flex-direction: column;
        padding-inline: 0;
        padding-block: var(--padding-sm) 0;
        color: inherit;
        text-decoration: none;
    }
.mega-menu__link-image {
        width: 100%;
        position: relative;
        aspect-ratio: var(--menu-featured-aspect-ratio);
        margin-bottom: var(--padding-sm);
        -o-object-fit: cover;
           object-fit: cover;
        border-radius: var(--menu-image-border-radius);
    }
.menu-link-image-placeholder {
        display: block;
        background: rgb(var(--color-foreground-rgb) / 0.1);
    }
.mega-menu__content {
        display: block;
        grid-column: span var(--menu-content-columns-tablet);
    }
@media screen and (min-width: 990px) {
        .mega-menu__content {
            grid-column: span var(--menu-content-columns-desktop);
        }
    }
.mega-menu__content-list {
        display: grid;
        grid-template-columns: repeat(var(--menu-content-columns-tablet), minmax(0, 1fr));
        gap: var(--menu-vertical-gap) var(--menu-horizontal-gap);
        margin: 0;
        padding: 0;
    }
@media screen and (min-width: 990px) {
        .mega-menu__content-list {
            grid-template-columns: repeat(var(--menu-content-columns-desktop), minmax(0, 1fr));
        }
    }
.mega-menu__featured-card-title {
        font-family: var(--menu-child-font-family);
        font-size: var(--menu-child-font-size);
        line-height: var(--menu-child-font-line-height);
        text-transform: var(--menu-child-font-case);
        color: var(--menu-child-font-color);
    }
.menu-drawer .menu-drawer__menu {
        --menu-drawer-inline-padding: calc(var(--padding-sm) + 7px);
        list-style: none;
        padding-inline: var(--drawer-padding);
        margin-inline: 0;
        margin-block: 0 var(--margin-xs);
    }
.header__drawer[data-open='true'] .menu-drawer__animated-element {
        animation: menu-drawer-nav-open var(--drawer-animation-speed) ease-in-out;
        animation-delay: calc(var(--drawer-animation-speed) + (var(--menu-drawer-animation-index, 1) - 1) * 0.1s);
        animation-fill-mode: backwards;
    }
.menu-drawer .menu-drawer__menu--grid {
        display: grid;
        width: 100%;
        grid-template-columns: 1fr 1fr;
        gap: var(--padding-sm);
        padding-inline-end: var(--menu-drawer-inline-padding);
        padding-block-start: var(--padding-xs);
    }
.menu-drawer .menu-drawer__menu--childlist:not(.menu-drawer__menu--grid) {
        flex-grow: 1;
    }
.menu-drawer .menu-drawer__menu.has-submenu,
    .menu-drawer .menu-drawer__menu--childlist:not(:has(.menu-drawer__animated-element)) {
        margin-block-end: var(--margin-xs);
    }
@media screen and (min-width: 750px) {
        .menu-drawer .menu-drawer__menu.has-submenu,
        .menu-drawer .menu-drawer__menu--childlist:not(:has(.menu-drawer__animated-element)) {
            margin-block-end: 2.5rem;
        }
    }
.menu-drawer__list-item--divider {
        border-block-end: 1px solid var(--color-border);
    }
.menu-drawer__list-item--divider .menu-drawer__menu-item:not(.menu-drawer__menu-item--child) {
        min-height: calc(2 * var(--padding-lg) + var(--icon-size-xs));
    }
.menu-drawer__list-item--deep:not(.menu-drawer__list-item--divider) .menu-drawer__menu {
        margin-block-start: -0.3rem;
    }
.menu-drawer__list-item--flat.menu-drawer__list-item--divider .menu-drawer__menu {
        margin-block-start: -0.4rem;
    }
.menu-drawer__menu > .menu-drawer__list-item {
        display: flex;
        min-height: calc(2 * var(--padding-lg) + var(--icon-size-xs));
    }
.menu-drawer__list-item--deep .menu-drawer__list-item,
    .menu-drawer__list-item--flat .menu-drawer__list-item {
        min-height: auto;
    }
.menu-drawer__menu .menu-drawer__list-item--flat {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        margin-block-end: var(--margin-md);
    }
.menu-drawer__menu--childlist .menu-drawer__list-item--flat {
        margin-block-end: var(--margin-sm);
    }
.menu-drawer__list-item--flat .menu-drawer__menu--childlist,
    .menu-drawer__list-item--deep .menu-drawer__menu,
    .menu-drawer__menu--grandchildlist {
        width: 100%;
        padding-inline: 0;
    }
.menu-drawer__list-item--deep .menu-drawer__menu,
    .menu-drawer__menu--grandchildlist {
        padding-block-end: 0.5rem;
    }
.menu-drawer__list-item--deep.menu-drawer__list-item--divider .menu-drawer__menu {
        padding-block-end: 0.3rem;
    }
.menu-drawer__list-item--flat.menu-drawer__list-item--divider .menu-drawer__menu--grandchildlist {
        padding-block-end: 0.5rem;
    }
.menu-drawer__menu details,
    .menu-drawer__menu-item {
        width: 100%;
    }
.menu-drawer__menu details > summary {
        list-style: none;
    }
.menu-drawer__menu details > summary::-webkit-details-marker {
        display: none;
    }
.menu-drawer__menu--childlist summary.menu-drawer__menu-item {
        display: flex;
        width: 100%;
        padding-inline-end: 0;
    }
.menu-drawer .menu-drawer__menu-item {
        display: flex;
        position: relative;
        align-items: center;
        justify-content: space-between;
        padding: var(--padding-2xs) 0;
        color: inherit;
        text-decoration: none;
    }
.menu-drawer .menu-drawer__menu-item--mainlist {
        min-height: calc(2 * var(--padding-lg) + var(--icon-size-xs));
        font-family: var(--menu-top-level-font-family);
        font-style: var(--menu-top-level-font-style);
        font-weight: var(--menu-top-level-font-weight);
        font-size: var(--menu-top-level-font-size);
        line-height: var(--menu-top-level-font-line-height);
        text-transform: var(--menu-top-level-font-case);
        color: var(--menu-top-level-font-color);
    }
.menu-drawer__menu-item--parent {
        font-family: var(--menu-parent-font-family);
        font-style: var(--menu-parent-font-style);
        font-weight: var(--menu-parent-font-weight);
        font-size: var(--menu-parent-font-size);
        line-height: var(--menu-parent-font-line-height);
        text-transform: var(--menu-parent-font-case);
        color: var(--menu-parent-font-color);
    }
.menu-drawer__menu-item--child {
        font-family: var(--menu-child-font-family);
        font-style: var(--menu-child-font-style);
        font-weight: var(--menu-child-font-weight);
        font-size: var(--menu-child-font-size);
        line-height: var(--menu-child-font-line-height);
        text-transform: var(--menu-child-font-case);
        color: var(--menu-child-font-color);
    }
.menu-drawer__menu-item--active {
        color: var(--menu-child-active-font-color);
    }
.menu-drawer__menu-item-text {
        overflow: hidden;
        text-overflow: ellipsis;
    }
.menu-drawer__menu-item > .svg-wrapper {
        width: -moz-fit-content;
        width: fit-content;
        height: -moz-fit-content;
        height: fit-content;
        margin: 0;
        padding-block: var(--padding-lg);
        padding-inline-start: var(--padding-xl);
        flex-shrink: 0;
    }
.menu-drawer__list-item--divider .menu-drawer__menu-item > .svg-wrapper {
        padding-block: var(--padding-md);
    }
.menu-drawer__menu-item > .svg-wrapper svg {
        width: 1rem;
        height: 1rem;
    }
.menu-drawer svg {
        width: var(--icon-size-xs);
        height: var(--icon-size-xs);
    }
.menu-drawer .icon-caret--forward svg {
        transform: rotate(-90deg);
    }
.menu-drawer .icon-caret--backward svg {
        transform: rotate(90deg);
    }
.menu-drawer .icon-plus .vertical {
        transition: transform var(--drawer-animation-speed) ease;
    }
.menu-drawer__menu details[open] > summary .icon-plus .vertical {
        transform: scaleY(0);
        transform-origin: center;
    }
.menu-drawer__menu-item:has(> .menu-drawer__link-image) {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        row-gap: var(--padding-3xs);
        padding: 0;
    }
.menu-drawer__link-image {
        width: 100%;
        position: relative;
        aspect-ratio: 16 / 9;
        -o-object-fit: cover;
           object-fit: cover;
        border-radius: var(--menu-image-border-radius);
    }
.menu-drawer__menu--grid:has(.menu-drawer__link-image) .menu-drawer__menu-item:not(:has(> .menu-drawer__link-image)) {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        row-gap: var(--padding-3xs);
        padding: 0;
    }
.menu-drawer__menu--grid:has(.menu-drawer__link-image) .menu-drawer__menu-item:not(:has(> .menu-drawer__link-image))::before {
        content: '';
        display: block;
        width: 100%;
        aspect-ratio: 16 / 9;
        background: rgb(var(--color-foreground-rgb) / 0.1);
        border-radius: var(--menu-image-border-radius);
    }
.menu-list--mobile {
        display: grid;
        width: 100%;
    }
.header__navigation-bar-row {
        display: block;
        padding-inline: var(--page-margin);
        overflow-x: auto;
    }
.header__navigation-bar-row .menu-list__list {
        width: -moz-max-content;
        width: max-content;
        min-height: 44px;
        margin-inline: auto;
        justify-content: center;
        gap: var(--menu-horizontal-gap, 15px);
    }
.menu-list--mobile .menu-list__list {
        width: -moz-max-content;
        width: max-content;
        margin-inline: auto;
        gap: var(--menu-horizontal-gap, 15px);
    }
.menu-list--mobile li {
        width: -moz-max-content;
        width: max-content;
        padding-block: var(--padding-sm);
    }
.menu-list--mobile li:first-of-type {
        padding-inline-start: var(--menu-horizontal-gap, 15px);
    }
.menu-list--mobile li:last-of-type {
        padding-inline-end: var(--menu-horizontal-gap, 15px);
    }
@media screen and (min-width: 750px) {
        #header-component[data-menu-style='menu'] :is(.header-menu, .dropdown-localization) {
            display: flex;
        }

        #header-component[data-menu-style='menu'] .search-action--hidden-on-menu {
            display: none;
        }

        #header-component[data-menu-style='menu'] .header__navigation-bar-row,
        #header-component[data-menu-style='menu'] .header__drawer {
            display: none;
        }

        .header-actions--text .header-actions__text {
            display: inline;
            margin-inline-start: var(--gap-xs);
        }
    }
@media screen and (max-width: 749px) {
        #header-component .header__row.header__row--bottom {
            display: none;
        }

        .header__columns {
            --header-mobile-bookend: 44px;
            --header-template-columns: var(--header-mobile-bookend) var(--header-mobile-bookend) 1fr var(--header-mobile-bookend) var(--header-mobile-bookend);

            display: grid;
            grid-template-areas: 'leftA leftB center rightA rightB';
            grid-template-columns: var(--header-template-columns);
            grid-column: span 3;
            -moz-column-gap: 0;
                 column-gap: 0;
            align-items: center;
            padding-block: 0;
            padding-inline: 0 var(--padding-3xs);
        }

        .header__column {
            display: contents;
        }

        .header__drawer {
            grid-area: leftA;
        }

        .search-action {
            grid-area: leftB;
        }

        .header-logo {
            grid-area: center;
            justify-self: center;
        }

        .header-actions {
            display: contents;
        }

        .header-actions > :first-child {
            grid-area: rightA;
        }

        .header-actions > :last-child {
            grid-area: rightB;
        }

        .header__columns:has(.header-wishlist-action) {
            --header-template-columns: var(--header-mobile-bookend) var(--header-mobile-bookend) minmax(0, 1fr) var(--header-mobile-bookend) var(--header-mobile-bookend) var(--header-mobile-bookend);

            grid-template-areas: 'leftA leftB center rightA rightB rightC';
        }

        .header__columns:has(.header-wishlist-action) .header-actions > :nth-child(2) {
            grid-area: rightB;
        }

        .header__columns:has(.header-wishlist-action) .header-actions > :last-child {
            grid-area: rightC;
        }

        .header-actions--text .header-actions__text,
        .header-actions__action--text .header-actions__text {
            display: none;
        }

        .header-actions--text .header-actions__icon,
        .header-actions__action--text .header-actions__icon {
            display: block;
        }

        .header-menu,
        .dropdown-localization {
            display: none;
        }

        .header-logo .logo-block {
            max-width: min(100%, 42vw);
        }
    }
body:has(> #header-group > .header-section > #header-component[transparent]):not(
            :has(> #header-group > .header-section + .section-wrapper)
        )
        > main
        > .section-wrapper:first-child,
    body:has(> #upstorr-theme-root > #header-group > .header-section > #header-component[transparent]):not(
            :has(> #upstorr-theme-root > #header-group > .header-section + .section-wrapper)
        )
        > #upstorr-theme-root
        > main
        > .section-wrapper:first-child {
        --section-height-offset: var(--header-group-height, 0px);
    }
.\!section {
        --full-page-grid-central-column-width: min(var(--page-width) - var(--page-margin) * 2, calc(100% - var(--page-margin) * 2)) !important;
        --full-page-grid-margin: minmax(var(--page-margin), 1fr) !important;
        --full-page-grid-with-margins: var(--full-page-grid-margin) var(--full-page-grid-central-column-width) var(--full-page-grid-margin) !important;
        --full-page-margin-inline-offset: calc(((100vw - var(--full-page-grid-central-column-width)) / 2) * -1) !important;
        --util-page-margin-offset: max(var(--page-margin), calc((100% - min(var(--page-content-width), 100% - var(--page-margin) * 2)) / 2)) !important;
        width: 100% !important;
        position: relative !important;
        display: grid !important;
        grid-template-columns: var(--full-page-grid-with-margins) !important;
        min-height: var(--section-min-height, auto) !important;
    }
.section {
        --full-page-grid-central-column-width: min(var(--page-width) - var(--page-margin) * 2, calc(100% - var(--page-margin) * 2));
        --full-page-grid-margin: minmax(var(--page-margin), 1fr);
        --full-page-grid-with-margins: var(--full-page-grid-margin) var(--full-page-grid-central-column-width) var(--full-page-grid-margin);
        --full-page-margin-inline-offset: calc(((100vw - var(--full-page-grid-central-column-width)) / 2) * -1);
        --util-page-margin-offset: max(var(--page-margin), calc((100% - min(var(--page-content-width), 100% - var(--page-margin) * 2)) / 2));
        width: 100%;
        position: relative;
        display: grid;
        grid-template-columns: var(--full-page-grid-with-margins);
        min-height: var(--section-min-height, auto);
    }
.\!section > * {
        grid-column: 2 !important;
    }
.section > * {
        grid-column: 2;
    }
.section--page-width > * {
        grid-column: 2;
    }
.section--full-width > * {
        grid-column: 1 / -1;
    }
.\!section > .force-full-width {
        grid-column: 1 / -1 !important;
    }
.section > .force-full-width {
        grid-column: 1 / -1;
    }
.section-background {
        position: absolute;
        inset: 0;
        z-index: var(--layer-section-background);
        background: var(--color-background);
    }
.custom-section-background {
        grid-column: 1 / -1;
    }
.custom-section-content {
        z-index: var(--layer-flat);
    }
.section-content-wrapper.section-content-wrapper {
        min-height: calc(var(--section-min-height, 'auto') - var(--section-height-offset, 0px));
        position: relative;
        width: 100%;
        height: 100%;
    }
.rich-text-section .custom-section-content {
        display: flex;
        min-height: calc(var(--section-min-height, auto) - var(--section-height-offset, 0px));
        height: 100%;
        width: 100%;
    }
.rich-text-section .section-content-wrapper.section-content-wrapper {
        flex: 1 1 auto;
        min-height: inherit;
        height: calc(var(--section-min-height, auto) - var(--section-height-offset, 0px));
    }
.rich-text-section .section-content-wrapper.section-content-wrapper:has(> .comparison-slider) {
        height: auto;
    }
.rich-text-section .section-content-wrapper.section-content-wrapper:has(> .group-block--height-fill) {
        min-height: calc(var(--section-min-height, auto) - var(--section-height-offset, 0px));
        height: calc(var(--section-min-height, auto) - var(--section-height-offset, 0px));
    }
.spacing-style {
        --spacing-scale: var(--spacing-scale-md);
        --padding-block: 0px;
        --padding-block-start: var(--padding-block, 0px);
        --padding-block-end: var(--padding-block, 0px);
        --padding-inline: 0px;
        --padding-inline-start: var(--padding-inline, 0px);
        --padding-inline-end: var(--padding-inline, 0px);
        --margin-block: 0px;
        --margin-block-start: var(--margin-block, 0px);
        --margin-block-end: var(--margin-block, 0px);
        --margin-inline: 0px;
        --margin-inline-start: var(--margin-inline, 0px);
        --margin-inline-end: var(--margin-inline, 0px);
    }
.spacing-style,
    .inherit-spacing {
        padding-block: calc(var(--padding-block-start) + var(--section-top-offset, 0px)) var(--padding-block-end);
        padding-inline: var(--padding-inline-start) var(--padding-inline-end);
        margin-block: var(--margin-block-start) var(--margin-block-end);
        margin-inline: var(--margin-inline-start) var(--margin-inline-end);
    }
.size-style {
        width: var(--size-style-width);
        height: var(--size-style-height);
    }
@media (max-width: 749px) {
        .size-style {
            width: var(--size-style-width-mobile, var(--size-style-width));
            height: var(--size-style-height-mobile, var(--size-style-height));
        }
    }
.border-style {
        border-width: var(--border-width);
        border-style: var(--border-style);
        border-color: var(--border-color);
        border-radius: var(--border-radius);
    }
.custom-typography,
    .custom-typography > * {
        font-family: var(--font-family);
        font-weight: var(--font-weight);
        text-transform: var(--text-transform);
        text-wrap: var(--text-wrap);
        line-height: var(--line-height);
        letter-spacing: var(--letter-spacing);
    }
.custom-typography h1 {
        line-height: var(--line-height--display, var(--line-height));
    }
.custom-typography h2,
    .custom-typography h3,
    .custom-typography h4 {
        line-height: var(--line-height--heading, var(--line-height));
    }
.custom-typography p {
        line-height: var(--line-height--body, var(--line-height));
    }
.custom-font-size,
    .custom-font-size > * {
        font-size: var(--font-size);
    }
.layout-panel-flex {
        --gap-scale: var(--spacing-scale-md);
        display: flex;
        gap: var(--gap);
        height: 100%;
    }
.layout-panel-flex--column {
        flex-flow: column var(--flex-wrap);
        align-items: var(--horizontal-alignment);
        justify-content: var(--vertical-alignment);
    }
.section-content-wrapper.layout-panel-flex.layout-panel-flex--row {
        justify-content: var(--horizontal-alignment);
        align-items: var(--vertical-alignment);
    }
.gap-style {
        --gap-scale: var(--spacing-scale-md);
    }
.section-resource-list {
        display: grid;
        align-content: start;
        -moz-column-gap: 0;
             column-gap: 0;
        row-gap: var(--gap);
    }
.section-resource-list__header,
    .section-resource-list__content {
        width: 100%;
    }
.section-resource-list__content {
        display: flex;
        flex-direction: column;
        align-items: var(--horizontal-alignment);
        gap: var(--gap);
    }
.section-resource-list__content:empty,
    .section-resource-list__header:is(:empty, :has(.group-block-content:empty)) {
        display: none;
    }
.section-resource-list[data-resource-list-layout='carousel'] > .section-resource-list__header {
        box-sizing: border-box;
        grid-column: 1 / -1;
        padding-inline: var(--util-page-margin-offset);
    }
.section-resource-list[data-resource-list-layout='carousel'] {
        overflow-x: clip;
    }
.section-resource-list[data-resource-list-layout='carousel'] > .force-full-width {
        min-width: 0;
        max-width: 100%;
    }
.page-template--content {
        padding: clamp(2.5rem, 7vw, 5rem) var(--casa-page-gutter);
    }
.page-template__inner {
        width: min(100%, 760px);
        margin: 0 auto;
    }
.page-template__title {
        margin: 0 0 1.5rem;
        font-size: clamp(2rem, 5vw, 3rem);
        font-weight: 300;
        line-height: 1.1;
        text-align: center;
    }
.page-template__content {
        display: grid;
        gap: 1rem;
    }
.search-page__header {
        --margin-xs: 0.5rem;
        --margin-md: 0.8rem;
        --margin-lg: 1rem;
        --margin-xl: 1.25rem;
        --margin-2xl: 1.5rem;
        --padding-md: 0.8rem;
        --padding-lg: 1rem;
        --icon-size-md: 1.375rem;
        --icon-size-lg: 1.5rem;
        display: flex;
        flex-direction: column;
        align-items: var(--horizontal-alignment);
    }
.search-page-input__parent {
        display: flex;
        flex-direction: column;
        align-items: var(--horizontal-alignment);
        width: 100%;
    }
search-page-input-component {
        position: relative;
        top: 0;
        display: flex;
        align-items: center;
        width: 100%;
        max-width: var(--size-style-width);
        margin: var(--margin-2xl) 0 var(--margin-md);
        background-color: var(--color-background);
    }
@media screen and (max-width: 749px) {
        search-page-input-component {
            max-width: 100%;
        }
    }
.search-page-input {
        width: 100%;
        overflow: hidden;
        padding-block: var(--padding-lg);
        padding-inline: calc(var(--icon-size-lg) + var(--margin-xl) * 1.5);
        color: var(--color-input-text);
        text-overflow: ellipsis;
        background-color: var(--color-input-background);
        border: var(--style-border-width-inputs) solid var(--color-input-border);
        border-radius: var(--style-border-radius-inputs);
        outline: none;
    }
@media screen and (max-width: 749px) {
        .search-page-input {
            padding-inline: calc(var(--margin-xs) + var(--icon-size-lg) + var(--padding-md));
        }
    }
.search-page-input::-moz-placeholder {
        color: rgb(var(--color-input-text-rgb) / var(--opacity-subdued-text));
    }
.search-page-input::placeholder {
        color: rgb(var(--color-input-text-rgb) / var(--opacity-subdued-text));
    }
.search-page-input::-webkit-search-cancel-button,
    .search-page-input::-webkit-search-decoration {
        appearance: none;
        -webkit-appearance: none;
    }
search-page-input-component .search__icon,
    search-page-input-component .search__reset-button,
    search-page-input-component .search__icon:hover,
    search-page-input-component .search__reset-button:hover {
        position: absolute;
        top: auto;
        width: var(--icon-size-lg);
        height: var(--icon-size-lg);
        display: flex;
        align-items: center;
        justify-content: center;
        background: transparent;
    }
search-page-input-component .search__icon {
        left: var(--margin-lg);
        color: var(--color-input-text);
    }
search-page-input-component .search__reset-button {
        right: var(--margin-lg);
        color: var(--color-input-text);
        cursor: pointer;
        border-radius: 100%;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition:
            opacity var(--animation-speed) var(--animation-easing),
            visibility var(--animation-speed) var(--animation-easing);
    }
@media screen and (max-width: 749px) {
        search-page-input-component .search__icon {
            left: var(--margin-md);
        }

        search-page-input-component .search__reset-button {
            right: var(--margin-md);
        }
    }
search-page-input-component .search__icon svg,
    search-page-input-component .search__reset-button svg {
        width: var(--icon-size-md);
        height: var(--icon-size-md);
    }
search-page-input-component .search__icon svg {
        color: var(--color-input-text);
    }
search-page-input-component:has(.search-page-input:not(:-moz-placeholder)) .search__reset-button {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }
search-page-input-component:has(.search-page-input:not(:placeholder-shown)) .search__reset-button {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }
search-page-input-component .search__reset-button-icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: var(--icon-size-lg);
        height: var(--icon-size-lg);
        vertical-align: middle;
        transition: transform var(--animation-speed) var(--animation-easing);
    }
search-page-input-component .search__reset-button:active .search__reset-button-icon {
        transform: scale(0.9);
    }
search-page-input-component .search__reset-button-text {
        display: none;
    }
.search-results__no-results {
        opacity: var(--opacity-subdued-text);
    }
.product-grid-container {
        display: block;
        width: 100%;
        padding-block: var(--padding-block-start) var(--padding-block-end);
    }
.product-grid-container--full-width {
        grid-template-columns: minmax(0, 1fr);
    }
.product-grid-container--full-width > .collection-wrapper {
        grid-column: 1;
    }
.collection-wrapper {
        --centered-column-number: 12;
        --full-width-column-number: 14;
        --centered: 2;
        --full-width: 1 / -1;
        --facets-vertical-col-width: 6;
        display: flex;
        flex-direction: column;
        width: 100%;
    }
.main-collection-grid {
        display: block;
        width: 100%;
        padding-block: 0;
        padding-inline: var(--page-margin);
    }
@media screen and (max-width: 749px) {
        .main-collection-grid--mobile-full {
            width: 100%;
            margin-inline: 0;
            padding-inline: 0;
        }

        .product-grid-container--page-width .main-collection-grid--mobile-full {
            width: 100vw;
            margin-inline: calc(50% - 50vw);
        }
    }
.main-collection-grid--mobile-page {
        width: 100%;
    }
.facets-block-wrapper {
        display: none;
    }
.facets-toggle {
        --icon-offset: -3px;
        --icon-stroke-width: 1;

        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: var(--minimum-touch-target, 44px);
        margin: var(--facets-margin, 0);
        padding-block: var(--facets-inner-padding-block, 8px);
        padding-inline: 0;
        color: rgb(var(--color-foreground-rgb) / 0.7);
    }
.facets-toggle--page-width {
        width: calc(100vw - (2 * var(--page-margin)));
        margin-inline: calc(50% - 50vw + var(--page-margin));
    }
.facets-toggle--full-width {
        width: 100vw;
        margin-inline: calc(50% - 50vw);
        padding-inline: 0;
    }
.facets-toggle--full-width > .facets-toggle__wrapper {
        margin-left: 0;
    }
.facets-toggle--full-width > .facets-mobile-wrapper {
        margin-right: 0;
    }
.facets-toggle__wrapper {
        margin-left: var(--icon-offset);
    }
.facets-toggle__button {
        display: inline-flex;
        align-items: center;
        gap: var(--gap-xs, 8px);
        min-height: var(--minimum-touch-target, 44px);
        color: inherit;
        font: inherit;
        background: transparent;
        border: 0;
        padding: 0;
        cursor: pointer;
    }
.facets-mobile-wrapper {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: var(--gap-sm, 12px);
        margin-left: auto;
    }
.facets-mobile-wrapper--multiple-controls {
        justify-content: space-between;
    }
.facets--drawer {
        width: min(100vw, 420px);
        max-width: 100vw;
        height: 100dvh;
        max-height: 100dvh;
        margin: 0 0 0 auto;
        padding: 0;
        color: var(--color-foreground);
        background: var(--color-background);
        border: 0;
        overflow: hidden;
    }
.facets--drawer::backdrop {
        background: rgb(0 0 0 / 0.35);
    }
.facets-drawer__form {
        height: calc(100dvh - 76px);
        overflow: hidden;
    }
.facets__title-wrapper {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: var(--gap-sm, 12px);
        padding: var(--padding-md, 16px);
        border-block-end: var(--style-border-width, 1px) solid rgb(var(--color-border-rgb) / 0.35);
    }
.facets-drawer__title {
        display: inline-flex;
        align-items: center;
        gap: var(--gap-xs, 8px);
        margin: 0;
    }
.facets-drawer__close {
        display: inline-grid;
        place-items: center;
        width: var(--minimum-touch-target, 44px);
        aspect-ratio: 1;
        color: var(--color-foreground);
        background: transparent;
        border: 0;
        cursor: pointer;
    }
.facets-drawer__close-icon {
        width: 30px;
        height: 30px;
    }
.facets-drawer__filters {
        height: calc(100dvh - 132px);
        padding: 0 var(--padding-md, 16px);
        overflow: auto;
    }
.facets__drawer-actions {
        position: sticky;
        inset-block-end: 0;
        display: flex;
        align-items: center;
        gap: var(--gap-sm, 12px);
        padding: var(--padding-md, 16px);
        background: var(--color-background);
        border-block-start: var(--style-border-width, 1px) solid rgb(var(--color-border-rgb) / 0.35);
    }
.facets__see-results {
        flex: 1 1 auto;
    }
.facets {
        --icon-stroke-width: 1;
        --facets-form-horizontal-gap: 20px;
        --facets-horizontal-max-input-wrapper-height: 230px;
        --facets-panel-min-width: 120px;
        --facets-panel-height: 300px;
        --facets-panel-width: 300px;
        --facets-input-label-color: rgb(var(--color-foreground-rgb) / 0.6);
        width: 100%;
        color: rgb(var(--color-foreground-rgb) / 0.72);
    }
.facets--horizontal {
        display: none;
    }
.facets__form-wrapper,
    .facets__form {
        width: 100%;
    }
.facets__form {
        display: flex;
        flex-flow: column;
    }
.facets__filters-wrapper {
        width: 100%;
    }
.facets__panel {
        padding: 0;
    }
.facets__item::before,
    .facets--vertical .sorting-filter::before {
        content: '';
        display: block;
        width: 100%;
        border-top: var(--style-border-width, 1px) solid rgb(var(--color-border-rgb) / 0.45);
    }
.facets__summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: var(--minimum-touch-target, 44px);
        font-size: var(--font-h5--size, 1rem);
        cursor: pointer;
        list-style: none;
    }
.facets__summary::-webkit-details-marker {
        display: none;
    }
.facets__label,
    .products-count-wrapper,
    .facets-toggle__button,
    .sorting-filter__label,
    .sorting-filter__select,
    .facets__input-label {
        text-transform: var(--facet-label-transform, none);
    }
.facets__label {
        color: var(--color-foreground);
        white-space: nowrap;
    }
.facets__status-wrapper,
    .sorting-filter .facets__summary {
        display: inline-flex;
        align-items: center;
        gap: var(--gap-xs, 8px);
    }
.icon-caret {
        display: inline-flex;
        width: 14px;
        height: 14px;
        color: rgb(var(--color-foreground-rgb) / 0.65);
    }
.facets__inputs {
        display: flex;
        flex-direction: column;
    }
.facets__inputs-wrapper {
        margin-block: var(--padding-xs, 8px);
    }
.facets__inputs-list {
        display: flex;
        flex-direction: column;
        gap: var(--gap-sm, 12px);
        padding: 0;
        margin: 0;
        list-style: none;
    }
.facets__inputs-list-item--disabled {
        opacity: 0.45;
    }
.facets-remove {
        display: none;
        flex-wrap: wrap;
        gap: var(--gap-xs, 8px);
        padding: 0;
        margin: 0 0 var(--margin-md, 0.8rem);
    }
.facets-remove:has(.facets-remove__pill),
    .facets-remove:has(.facets__clear-all-link) {
        display: flex;
        align-items: center;
    }
.facets-remove__pill {
        display: inline-flex;
        align-items: center;
        gap: var(--gap-2xs, 4px);
        color: var(--color-foreground);
        text-decoration: none;
    }
.facets-remove__icon {
        line-height: 1;
        opacity: 0.7;
    }
.facets__clear-all-link {
        color: var(--color-foreground);
        text-decoration: underline;
        text-underline-offset: 0.2em;
    }
.facets__status,
    .facets__bubble,
    .filter-count-bubble {
        display: inline-grid;
        place-items: center;
        min-width: 1.35rem;
        min-height: 1.35rem;
        padding-inline: 0.35rem;
        border-radius: 999px;
        color: var(--color-foreground);
        font-size: var(--font-size--xs, 0.75rem);
        background: rgb(var(--color-foreground-rgb) / var(--opacity-10-25, 0.1));
    }
.facets__checkbox-label {
        display: inline-flex;
        align-items: center;
        gap: var(--gap-xs, 8px);
        min-height: 22px;
        color: inherit;
        cursor: pointer;
    }
.facets__checkbox {
        flex: 0 0 auto;
    }
.field {
        position: relative;
    }
.price-facet {
        display: flex;
        flex-direction: column;
    }
.price-facet__inputs-wrapper {
        display: flex;
        align-items: center;
        gap: var(--gap-sm, 12px);
    }
.price-facet__field {
        flex: 1 1 0;
        min-width: 0;
    }
.price-facet__input {
        width: 100%;
        min-height: 44px;
        padding: var(--padding-sm, 12px) var(--padding-sm, 12px) var(--padding-sm, 12px) 38px;
        color: var(--color-foreground);
        text-align: right;
        background: transparent;
        border: var(--style-border-width, 1px) solid rgb(var(--color-border-rgb) / 0.55);
        border-radius: var(--style-border-radius-xs, 0);
    }
.price-facet__input::-moz-placeholder {
        color: var(--facets-input-label-color);
    }
.price-facet__input::placeholder {
        color: var(--facets-input-label-color);
    }
.price-facet__label {
        position: absolute;
        inset-inline-start: var(--padding-sm, 12px);
        top: 50%;
        transform: translateY(-50%);
        color: var(--facets-input-label-color);
        pointer-events: none;
    }
.price-facet__separator {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 22px;
    }
.price-facet__highest-price {
        padding-block: var(--padding-xs, 8px) var(--padding-sm, 12px);
        font-size: var(--font-size--sm, 0.875rem);
    }
.sorting-filter {
        position: relative;
        z-index: var(--layer-raised, 2);
    }
.sorting-filter__container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: var(--gap-sm, 12px);
    }
.sorting-filter__select-wrapper {
        display: inline-flex;
        align-items: center;
        gap: var(--gap-2xs, 4px);
        padding: var(--padding-2xs, 4px) var(--padding-xs, 8px);
        border-radius: var(--variant-picker-button-radius, 0);
    }
.sorting-filter__select {
        width: 100%;
        color: var(--color-foreground);
        background: transparent;
        border: 0;
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        cursor: pointer;
    }
.sorting-filter .facets__panel {
        position: relative;
    }
.sorting-filter__options {
        position: absolute;
        inset-block-start: 100%;
        inset-inline-end: 0;
        display: none;
        min-width: 220px;
        padding: var(--padding-xs, 8px);
        color: var(--color-foreground);
        background: var(--color-background);
        border: var(--style-border-width, 1px) solid rgb(var(--color-border-rgb) / 0.45);
        border-radius: var(--style-border-radius-popover, var(--style-border-radius-xs, 0));
        box-shadow: var(--shadow-popover, 0 8px 24px rgb(0 0 0 / 0.08));
    }
.sorting-filter details[open] .sorting-filter__options {
        display: grid;
        gap: 2px;
    }
.sorting-filter__option {
        display: flex;
        align-items: center;
        gap: var(--gap-xs, 8px);
        padding: var(--padding-xs, 8px);
        cursor: pointer;
    }
.sorting-filter__input {
        margin: 0;
        accent-color: var(--color-foreground);
    }
.facets-drawer__filters .sorting-filter--compact {
        border-block-start: var(--style-border-width, 1px) solid rgb(var(--color-border-rgb) / 0.35);
    }
.facets-drawer__filters .sorting-filter--compact .sorting-filter__container {
        min-height: 64px;
    }
.facets-drawer__filters .sorting-filter--compact .sorting-filter__select-wrapper {
        max-width: min(65%, 260px);
        padding-inline-end: 0;
    }
.facets-drawer__filters .sorting-filter--compact .sorting-filter__select {
        overflow: hidden;
        text-align: end;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.products-count-wrapper {
        display: none;
        white-space: nowrap;
    }
.column-options-wrapper {
        --icon-offset: -3px;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: var(--gap-sm, 12px);
        min-width: -moz-fit-content;
        min-width: fit-content;
        height: var(--minimum-touch-target, 44px);
        margin-right: var(--icon-offset);
    }
.column-options {
        display: flex;
        flex-wrap: wrap;
        gap: var(--gap-2xs, 4px);
        padding: 0;
        margin: 0;
        border: 0;
    }
.column-options__option {
        position: relative;
        display: flex;
    }
.column-options__option-input {
        position: absolute;
        inset: 0;
        opacity: 0;
        cursor: pointer;
    }
.column-picker {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 28px;
        height: 28px;
        padding: var(--padding-2xs, 4px);
        border-radius: var(--style-border-radius-xs, 0);
        color: rgb(var(--color-foreground-rgb) / 0.5);
        transition: background-color var(--animation-speed, 200ms) ease, color var(--animation-speed, 200ms) ease;
    }
.column-picker svg {
        width: 20px;
        height: 20px;
        display: block;
    }
.column-options__option:hover .column-picker {
        background-color: rgb(var(--color-foreground-rgb) / 0.05);
    }
.column-options__option-input:checked ~ .column-picker {
        color: var(--color-foreground);
        background: rgb(var(--color-foreground-rgb) / 0.06);
    }
.main-collection-grid__inner {
        width: 100%;
        max-width: var(--collection-grid-max-width, var(--page-content-width));
        margin-inline: auto;
        container-type: inline-size;
        container-name: product-grid;
    }
.collection-wrapper--full-width .main-collection-grid__inner {
        max-width: none;
    }
.product-grid {
        display: grid;
        grid-template-columns: repeat(var(--mobile-columns, 2), minmax(0, 1fr));
        gap: var(--product-grid-gap-mobile, 12px);
        width: 100%;
        padding: 0;
        margin: 0;
        list-style: none;
        isolation: isolate;
    }
.product-grid :is(h3, p) {
        margin: 0;
    }
.product-grid__item {
        min-width: 0;
        border: var(--product-card-border-width, 0px) solid rgb(var(--color-border-rgb) / var(--product-card-border-opacity, 0));
    }
.orders-page-section,
    .orders-page-section :where(
        .color-scheme-1,
        .color-scheme-2,
        .color-scheme-3,
        .color-scheme-4,
        .color-scheme-5,
        .color-scheme-6,
        .color-scheme-7
    ) {
        --orders-border: var(--color-border);
        --orders-muted: var(--color-foreground-muted, rgb(var(--color-foreground-rgb) / 0.62));
        --orders-panel: var(--color-background);
        --orders-soft-panel: color-mix(in srgb, var(--color-foreground) 6%, var(--color-background));
        --orders-accent: var(--color-foreground-heading);
        --orders-heading-color: var(--font-h4--color, var(--color-foreground-heading));
        --orders-subheading-color: var(--font-h5--color, var(--color-foreground-heading));
        --orders-label-color: var(--orders-muted);
        --orders-body-color: var(--color-foreground);
        --orders-value-color: var(--font-h5--color, var(--color-foreground-heading));
        --orders-heading-font-family: var(--font-h4--family);
        --orders-heading-font-style: var(--font-h4--style);
        --orders-heading-font-weight: var(--font-h4--weight);
        --orders-heading-font-size: var(--font-h4--size);
        --orders-heading-line-height: var(--font-h4--line-height);
        --orders-heading-letter-spacing: var(--font-h4--letter-spacing);
        --orders-heading-text-transform: var(--font-h4--case);
        --orders-subheading-font-family: var(--font-h5--family);
        --orders-subheading-font-style: var(--font-h5--style);
        --orders-subheading-font-weight: var(--font-h5--weight);
        --orders-subheading-font-size: var(--font-h5--size);
        --orders-subheading-line-height: var(--font-h5--line-height);
        --orders-subheading-letter-spacing: var(--font-h5--letter-spacing);
        --orders-subheading-text-transform: var(--font-h5--case);
        --orders-label-font-family: var(--font-h6--family);
        --orders-label-font-style: var(--font-h6--style);
        --orders-label-font-weight: var(--font-h6--weight);
        --orders-label-font-size: var(--font-h6--size);
        --orders-label-line-height: var(--font-h6--line-height);
        --orders-label-letter-spacing: var(--font-h6--letter-spacing);
        --orders-label-text-transform: var(--font-h6--case);
        --orders-body-font-family: var(--font-paragraph--family);
        --orders-body-font-style: var(--font-paragraph--style);
        --orders-body-font-weight: var(--font-paragraph--weight);
        --orders-body-font-size: var(--font-paragraph--size);
        --orders-body-line-height: var(--font-paragraph--line-height);
        --orders-body-letter-spacing: var(--font-paragraph--letter-spacing);
        --orders-body-text-transform: var(--font-paragraph--case);
        --orders-value-font-family: var(--font-subheading--family);
        --orders-value-font-style: var(--font-subheading--style);
        --orders-value-font-weight: var(--font-subheading--weight);
    }
.orders-page {
        display: grid;
        gap: var(--gap, 32px);
        width: 100%;
        font-family: var(--orders-body-font-family);
        font-style: var(--orders-body-font-style);
        font-weight: var(--orders-body-font-weight);
        font-size: var(--orders-body-font-size);
        line-height: var(--orders-body-line-height);
        letter-spacing: var(--orders-body-letter-spacing);
        text-transform: var(--orders-body-text-transform);
        color: var(--orders-body-color);
    }
.orders-page-section .section-resource-list {
        align-content: var(--orders-section-position, start);
    }
.orders-page__auth {
        width: min(100%, 720px);
        margin-inline: auto;
        text-align: center;
    }
.orders-page__auth .group-block-content {
        align-items: center;
    }
.orders-pagination button {
        min-height: var(--minimum-touch-target, 44px);
        border: var(--style-border-width-primary, 1px) solid var(--color-primary-button-border);
        border-radius: var(--style-border-radius-buttons-primary, 0);
        background: var(--color-primary-button-background);
        color: var(--color-primary-button-text);
        cursor: pointer;
        font: inherit;
        padding: 0.75rem 1rem;
        font-family: var(--orders-label-font-family);
        font-style: var(--orders-label-font-style);
        font-weight: var(--orders-label-font-weight);
        font-size: var(--orders-label-font-size);
        line-height: var(--orders-label-line-height);
        letter-spacing: var(--orders-label-letter-spacing);
        text-transform: var(--orders-label-text-transform);
    }
.orders-pagination button:hover:not(:disabled) {
        border-color: var(--color-primary-button-hover-border);
        background: var(--color-primary-button-hover-background);
        color: var(--color-primary-button-hover-text);
    }
.orders-pagination button:focus-visible {
        outline: 2px solid var(--color-primary-button-border);
        outline-offset: 2px;
    }
.orders-pagination button:disabled {
        opacity: 0.45;
        cursor: not-allowed;
    }
.orders-page__layout {
        --orders-status-background: var(--color-variant-background);
        --orders-status-color: var(--color-variant-text);
        --orders-status-border: var(--color-variant-border);
        display: grid;
        gap: var(--orders-layout-gap, 1rem);
        align-items: start;
    }
.orders-page__list,
    .orders-page__detail {
        min-width: 0;
        display: grid;
        gap: 1rem;
    }
.orders-page__detail[aria-busy="true"] {
        pointer-events: none;
        opacity: 0.65;
        transition: opacity 120ms ease;
    }
.orders-page__cards {
        display: grid;
        gap: var(--orders-card-gap, 1rem);
    }
.orders-page__mobile-back {
        display: none;
        min-height: var(--minimum-touch-target, 44px);
        width: -moz-fit-content;
        width: fit-content;
        border: 1px solid var(--orders-border);
        padding: 0.75rem 1rem;
        color: var(--orders-body-color);
        background: var(--orders-panel);
        cursor: pointer;
        font-family: var(--orders-label-font-family);
        font-style: var(--orders-label-font-style);
        font-weight: var(--orders-label-font-weight);
        font-size: var(--orders-label-font-size);
        line-height: var(--orders-label-line-height);
        letter-spacing: var(--orders-label-letter-spacing);
        text-transform: var(--orders-label-text-transform);
    }
.orders-card,
    .orders-detail-panel,
    .orders-detail-empty,
    .orders-empty-state,
    .orders-loading-state,
    .orders-errors {
        border: 1px solid var(--orders-border);
        background: var(--orders-panel);
        padding: 1rem;
    }
.orders-card {
        display: grid;
        gap: 1rem;
        border-width: var(--orders-card-border-width, 1px);
        border-radius: var(--orders-card-border-radius, 0);
        padding-block: var(--orders-card-padding-block-start, 1rem) var(--orders-card-padding-block-end, 1rem);
        padding-inline: var(--orders-card-padding-inline-start, 1rem) var(--orders-card-padding-inline-end, 1rem);
        cursor: pointer;
    }
.orders-card--selected {
        border-color: var(--orders-accent);
        box-shadow: inset 0 0 0 1px var(--orders-accent);
    }
.orders-card--selected-filled {
        background: color-mix(in srgb, var(--orders-accent) 7%, var(--orders-panel));
    }
.orders-card:focus-visible {
        outline: 2px solid var(--orders-accent);
        outline-offset: 2px;
    }
.orders-card__top,
    .orders-detail-header,
    .orders-shipment__summary,
    .orders-pagination {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 1rem;
    }
.orders-card__number,
    .orders-card__date,
    .orders-detail-header h2,
    .orders-detail-header p,
    .orders-detail-items h3,
    .orders-shipment-timeline h3,
    .orders-shipment__summary p,
    .orders-shipment__summary span:not(.orders-status),
    .orders-shipment__location,
    .orders-shipment__section-label,
    .orders-shipment-event p,
    .orders-shipment-event span,
    .orders-shipment-empty {
        margin: 0;
    }
.orders-card__number,
    .orders-detail-header h2,
    .orders-detail-items h3,
    .orders-shipment-timeline h3 {
        color: var(--orders-heading-color);
        font-family: var(--orders-heading-font-family);
        font-style: var(--orders-heading-font-style);
        font-weight: var(--orders-heading-font-weight);
        font-size: var(--orders-heading-font-size);
        line-height: var(--orders-heading-line-height);
        letter-spacing: var(--orders-heading-letter-spacing);
        text-transform: var(--orders-heading-text-transform);
    }
.orders-card__date,
    .orders-detail-header p,
    .orders-shipment__summary p,
    .orders-shipment__summary span:not(.orders-status),
    .orders-shipment__location,
    .orders-shipment__section-label,
    .orders-shipment-event span,
    .orders-shipment-empty,
    .orders-empty-state,
    .orders-detail-empty,
    .orders-loading-state {
        color: var(--orders-muted);
        font-family: var(--orders-body-font-family);
        font-style: var(--orders-body-font-style);
        font-weight: var(--orders-body-font-weight);
        font-size: var(--orders-body-font-size);
        line-height: var(--orders-body-line-height);
        letter-spacing: var(--orders-body-letter-spacing);
        text-transform: var(--orders-body-text-transform);
    }
.orders-card__meta,
    .orders-detail-summary {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.85rem;
        margin: 0;
    }
.orders-card__meta dt,
    .orders-detail-summary dt {
        color: var(--orders-label-color);
        font-family: var(--orders-label-font-family);
        font-style: var(--orders-label-font-style);
        font-weight: var(--orders-label-font-weight);
        font-size: var(--orders-label-font-size);
        line-height: var(--orders-label-line-height);
        letter-spacing: var(--orders-label-letter-spacing);
        text-transform: var(--orders-label-text-transform);
    }
.orders-card__meta dd,
    .orders-detail-summary dd {
        margin: 0.25rem 0 0;
        color: var(--orders-value-color);
        font-family: var(--orders-value-font-family);
        font-style: var(--orders-value-font-style);
        font-weight: var(--orders-value-font-weight);
        font-size: var(--orders-subheading-font-size);
        line-height: var(--orders-subheading-line-height);
        letter-spacing: var(--orders-subheading-letter-spacing);
        text-transform: var(--orders-subheading-text-transform);
        overflow-wrap: anywhere;
    }
.orders-status {
        display: inline-flex;
        align-items: center;
        width: -moz-fit-content;
        width: fit-content;
        border: 1px solid var(--orders-status-border);
        padding: 0.35rem 0.55rem;
        color: var(--orders-status-color);
        background: var(--orders-status-background);
        font-family: var(--orders-label-font-family);
        font-style: var(--orders-label-font-style);
        font-weight: var(--orders-label-font-weight);
        font-size: var(--orders-label-font-size);
        line-height: var(--orders-label-line-height);
        letter-spacing: var(--orders-label-letter-spacing);
        text-transform: var(--orders-label-text-transform);
        white-space: nowrap;
    }
.orders-pagination {
        align-items: center;
        border: 1px solid var(--orders-border);
        padding: 0.75rem;
        font-family: var(--orders-body-font-family);
        font-style: var(--orders-body-font-style);
        font-weight: var(--orders-body-font-weight);
        font-size: var(--orders-body-font-size);
        line-height: var(--orders-body-line-height);
        letter-spacing: var(--orders-body-letter-spacing);
        text-transform: var(--orders-body-text-transform);
    }
.orders-pagination span {
        color: var(--orders-muted);
        text-align: center;
    }
.orders-detail-panel {
        display: grid;
        gap: var(--orders-detail-section-gap, 1.25rem);
        border-width: var(--orders-detail-border-width, 1px);
        border-radius: var(--orders-detail-border-radius, 0);
        padding-block: var(--orders-detail-padding-block-start, 1rem) var(--orders-detail-padding-block-end, 1rem);
        padding-inline: var(--orders-detail-padding-inline-start, 1rem) var(--orders-detail-padding-inline-end, 1rem);
    }
.orders-detail-header {
        border-block-end: 1px solid var(--orders-border);
        padding-block: var(--orders-detail-header-padding-block-start, 0) var(--orders-detail-header-padding-block-end, 1rem);
    }
.orders-detail-summary {
        padding-block: var(--orders-detail-summary-padding-block-start, 0) var(--orders-detail-summary-padding-block-end, 0);
    }
.orders-delivery-address {
        display: grid;
        gap: 0.5rem;
        border-block: 1px solid var(--orders-border);
        padding-block: 1rem;
    }
.orders-delivery-address h3 {
        margin: 0;
        color: var(--orders-label-color);
        font-family: var(--orders-label-font-family);
        font-style: var(--orders-label-font-style);
        font-weight: var(--orders-label-font-weight);
        font-size: var(--orders-label-font-size);
        line-height: var(--orders-label-line-height);
        letter-spacing: var(--orders-label-letter-spacing);
        text-transform: var(--orders-label-text-transform);
    }
.orders-delivery-address address {
        display: grid;
        gap: 0.15rem;
        margin: 0;
        color: var(--orders-value-color);
        font-family: var(--orders-body-font-family);
        font-style: normal;
        font-weight: var(--orders-body-font-weight);
        font-size: var(--orders-body-font-size);
        line-height: var(--orders-body-line-height);
        letter-spacing: var(--orders-body-letter-spacing);
        overflow-wrap: anywhere;
    }
.orders-detail-items__list,
    .orders-shipment-timeline,
    .orders-shipment,
    .orders-shipment-event {
        display: grid;
        gap: 0.75rem;
    }
.orders-detail-items__list {
        gap: var(--orders-detail-item-gap, 0.75rem);
    }
.orders-shipment-timeline {
        gap: var(--orders-update-gap, 0.75rem);
        padding-block: var(--orders-shipment-padding-block-start, 0) var(--orders-shipment-padding-block-end, 0);
    }
.orders-shipment-timeline[data-update-style='compact'] .orders-shipment,
    .orders-shipment-timeline[data-update-style='compact'] .orders-shipment__items {
        padding: 0.5rem;
    }
.orders-detail-items h3 {
        padding-block-end: 0.75rem;
    }
.orders-shipment,
    .orders-shipment__items {
        border: 1px solid var(--orders-border);
        padding: 0.75rem;
    }
.orders-shipment {
        overflow: hidden;
    }
.orders-shipment__summary {
        cursor: pointer;
        justify-content: flex-start;
        list-style: none;
    }
.orders-shipment__summary::-webkit-details-marker {
        display: none;
    }
.orders-shipment__summary::after {
        content: '+';
        flex: 0 0 auto;
        color: var(--orders-muted);
        font-family: var(--orders-body-font-family);
        font-size: var(--orders-body-font-size);
        line-height: 1;
        margin-block-start: 0.25rem;
        margin-inline-start: 0.5rem;
    }
.orders-shipment[open] > .orders-shipment__summary::after {
        content: '-';
    }
.orders-shipment__summary > div {
        display: grid;
        gap: 0.25rem;
        min-width: 0;
    }
.orders-shipment__summary > .orders-status {
        flex: 0 0 auto;
        margin-inline-start: auto;
    }
.orders-shipment__title,
    .orders-shipment__section-label {
        display: inline-flex;
        align-items: center;
        gap: 0.45rem;
    }
.orders-shipment__summary strong {
        color: var(--orders-subheading-color);
    }
.orders-shipment__icon {
        flex: 0 0 auto;
        width: 1rem;
        height: 1rem;
        color: var(--orders-muted);
        fill: none;
        stroke: currentColor;
        stroke-width: 1.4;
        stroke-linecap: round;
        stroke-linejoin: round;
    }
.orders-shipment__title .orders-shipment__icon {
        color: var(--orders-subheading-color);
    }
.orders-shipment__summary p,
    .orders-shipment__summary span:not(.orders-status) {
        overflow-wrap: anywhere;
    }
.orders-shipment__content,
    .orders-shipment__items,
    .orders-shipment__events {
        display: grid;
        gap: 0.75rem;
    }
.orders-shipment__content {
        padding-block-start: 0.75rem;
    }
.orders-shipment__items ul {
        display: grid;
        gap: 0.5rem;
        margin: 0;
        padding: 0.15rem 0 0;
        list-style: none;
    }
.orders-shipment__items li {
        display: flex;
        justify-content: space-between;
        gap: 1rem;
    }
.orders-shipment__section-label {
        margin: 0;
    }
.orders-shipment__event-list {
        display: grid;
        margin: 0;
        padding: 0.15rem 0 0;
        list-style: none;
    }
.orders-shipment-event {
        position: relative;
        display: grid;
        gap: 0.25rem;
        min-height: 2.75rem;
        padding: 0 0 1rem 1.65rem;
    }
.orders-shipment-event::before {
        content: '';
        position: absolute;
        top: 0.45rem;
        left: 0.25rem;
        z-index: 1;
        width: 0.55rem;
        height: 0.55rem;
        border: 1px solid var(--orders-accent);
        border-radius: 999px;
        background: var(--orders-panel);
    }
.orders-shipment-event::after {
        content: '';
        position: absolute;
        top: 1.1rem;
        bottom: 0;
        left: calc(0.25rem + 0.275rem);
        border-left: 1px solid var(--orders-border);
    }
.orders-shipment-event:last-child {
        padding-block-end: 0;
    }
.orders-shipment-event:last-child::after {
        display: none;
    }
.orders-detail-item {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 1rem;
        border: var(--orders-detail-item-card-border-width, 1px) solid var(--orders-border);
        border-radius: var(--orders-detail-item-card-border-radius, 0);
        background: var(--orders-panel);
        padding-block: var(--orders-detail-item-card-padding-block-start, 0.75rem) var(--orders-detail-item-card-padding-block-end, 0.75rem);
        padding-inline: var(--orders-detail-item-card-padding-inline-start, 0.75rem) var(--orders-detail-item-card-padding-inline-end, 0.75rem);
    }
.orders-detail-item__media {
        position: relative;
        flex: 0 0 var(--orders-detail-item-image-size, 4.5rem);
        width: var(--orders-detail-item-image-size, 4.5rem);
        aspect-ratio: 1;
        overflow: hidden;
        border: 1px solid var(--orders-border);
        background: var(--orders-soft-panel);
    }
.orders-detail-item > div:not(.orders-detail-item__media) {
        display: grid;
        gap: 0.625rem;
        flex: 1 1 auto;
        min-width: 0;
    }
.orders-detail-item__meta {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.5rem 1rem;
        margin: 0;
    }
.orders-detail-item__meta > div {
        min-width: 0;
    }
.orders-detail-item__meta dt,
    .orders-detail-item__meta dd {
        margin: 0;
        overflow-wrap: anywhere;
    }
.orders-detail-item__meta dt {
        color: var(--orders-label-color);
        font-family: var(--orders-label-font-family);
        font-size: var(--orders-label-font-size);
        line-height: var(--orders-label-line-height);
        text-transform: var(--orders-label-text-transform);
    }
.orders-detail-item__meta dd {
        margin-block-start: 0.125rem;
        color: var(--orders-value-color);
        font-family: var(--orders-value-font-family);
        font-size: var(--orders-body-font-size);
        line-height: var(--orders-body-line-height);
    }
.orders-detail-item p,
    .orders-detail-item span {
        margin: 0;
    }
.orders-detail-item span {
        color: var(--orders-label-color);
        font-family: var(--orders-label-font-family);
        font-style: var(--orders-label-font-style);
        font-weight: var(--orders-label-font-weight);
        font-size: var(--orders-label-font-size);
        line-height: var(--orders-label-line-height);
        letter-spacing: var(--orders-label-letter-spacing);
        text-transform: var(--orders-label-text-transform);
    }
.orders-detail-item strong,
    .orders-shipment__summary strong,
    .orders-shipment__items strong {
        color: var(--orders-subheading-color);
        font-family: var(--orders-subheading-font-family);
        font-style: var(--orders-subheading-font-style);
        font-weight: var(--orders-subheading-font-weight);
        font-size: var(--orders-subheading-font-size);
        line-height: var(--orders-subheading-line-height);
        letter-spacing: var(--orders-subheading-letter-spacing);
        text-transform: var(--orders-subheading-text-transform);
    }
.orders-booking-action-message {
        margin: 0;
        color: var(--orders-label-color);
        font-size: var(--orders-label-font-size);
        line-height: var(--orders-label-line-height);
    }
.orders-booking-lines {
        display: grid;
        gap: 0.5rem;
        margin-block-start: 0.75rem;
    }
.orders-booking-line {
        display: grid;
        gap: 0.5rem;
        padding-block-start: 0.75rem;
        border-block-start: 1px solid var(--orders-border);
    }
.orders-booking-line__actions {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
        align-items: center;
    }
.orders-booking-line__actions a,
    .orders-booking-line__actions button {
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        border: 1px solid var(--orders-border);
        border-radius: 0;
        background: var(--orders-panel);
        color: var(--orders-subheading-color);
        cursor: pointer;
        font: inherit;
        line-height: 1.2;
        padding: 0.5rem 0.75rem;
        text-decoration: none;
    }
.orders-booking-line__actions button:disabled {
        cursor: not-allowed;
        opacity: 0.6;
    }
.orders-digital-downloads {
        display: grid;
        gap: 0.75rem;
        margin-block-start: 0.75rem;
    }
.orders-digital-download {
        display: grid;
        justify-items: start;
        gap: 0.5rem;
        padding-block-start: 0.75rem;
        border-block-start: 1px solid var(--orders-border);
    }
.orders-digital-download__action,
    .orders-digital-download__unavailable {
        display: inline-flex;
        min-height: 2.75rem;
        align-items: center;
        justify-content: center;
        border: 1px solid var(--orders-border);
        padding: 0.625rem 0.875rem;
        font: inherit;
        text-decoration: none;
    }
.orders-digital-download__action {
        background: var(--orders-subheading-color);
        color: var(--orders-panel) !important;
    }
.orders-digital-download__unavailable {
        background: var(--orders-soft-panel);
        color: var(--orders-label-color) !important;
    }
.orders-digital-download__meta {
        overflow-wrap: anywhere;
        text-transform: none !important;
    }
@media (max-width: 639px) {
        .orders-detail-item {
            display: grid;
            grid-template-columns: auto minmax(0, 1fr);
        }

        .orders-detail-item > strong {
            grid-column: 2;
        }

        .orders-detail-item__meta {
            grid-template-columns: minmax(0, 1fr);
        }

        .orders-digital-download__action,
        .orders-digital-download__unavailable {
            width: 100%;
        }
    }
.orders-errors {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        color: rgb(185 28 28);
        background: rgb(254 242 242);
        border-color: rgb(248 113 113 / 0.35);
    }
.orders-errors button {
        flex: none;
        min-height: var(--minimum-touch-target, 44px);
        border: 1px solid currentColor;
        border-radius: var(--style-border-radius-buttons-primary, 0);
        padding: 0.625rem 1rem;
        color: inherit;
        background: transparent;
        cursor: pointer;
        font: inherit;
    }
.orders-errors button:focus-visible {
        outline: 2px solid currentColor;
        outline-offset: 2px;
    }
@media screen and (max-width: 639px) {
        .orders-errors {
            align-items: stretch;
            flex-direction: column;
        }

        .orders-errors button {
            width: 100%;
        }
    }
@media screen and (min-width: 750px) {
        .orders-card__meta,
        .orders-detail-summary {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }
    }
@media screen and (max-width: 989px) {
        .orders-page__layout[data-mobile-view='list'] .orders-page__detail,
        .orders-page__layout[data-mobile-view='detail'] .orders-page__list {
            display: none;
        }

        .orders-page__mobile-back {
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }
    }
@media screen and (min-width: 990px) {
        .orders-page__layout {
            grid-template-columns: minmax(18rem, 0.82fr) minmax(0, 1.18fr);
        }

    }
.wishlist-editor-preview-state {
        flex: 1 1 auto;
        width: 100%;
        height: 100%;
    }
.wishlist-products {
        width: 100%;
        padding-block: var(--padding-block-start) var(--padding-block-end);
        padding-inline: var(--padding-inline-start) var(--padding-inline-end);
    }
.section--full-width .wishlist-products--centered {
        width: min(var(--page-content-width), calc(100% - var(--page-margin) * 2));
        max-width: none;
    }
.product-grid--stable-columns {
        --product-grid-stable-columns-desktop: 1;
    }
@container product-grid (min-width: 346px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 2;
        }
    }
@container product-grid (min-width: 376px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 2;
        }
    }
@container product-grid (min-width: 516px) {
        .product-grid--stable-columns[data-product-card-size='medium'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 2;
        }
    }
@container product-grid (min-width: 527px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 3;
        }
    }
@container product-grid (min-width: 536px) {
        .product-grid--stable-columns[data-product-card-size='medium'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 2;
        }
    }
@container product-grid (min-width: 572px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 3;
        }
    }
@container product-grid (min-width: 696px) {
        .product-grid--stable-columns[data-product-card-size='large'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 2;
        }
    }
@container product-grid (min-width: 708px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 4;
        }
    }
@container product-grid (min-width: 746px) {
        .product-grid--stable-columns[data-product-card-size='large'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 2;
        }
    }
@container product-grid (min-width: 768px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 4;
        }
    }
@container product-grid (min-width: 782px) {
        .product-grid--stable-columns[data-product-card-size='medium'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 3;
        }
    }
@container product-grid (min-width: 812px) {
        .product-grid--stable-columns[data-product-card-size='medium'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 3;
        }
    }
@container product-grid (min-width: 889px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 5;
        }
    }
@container product-grid (min-width: 964px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 5;
        }
    }
@container product-grid (min-width: 976px) {
        .product-grid--stable-columns[data-product-card-size='extra-large'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 2;
        }
    }
@container product-grid (min-width: 1048px) {
        .product-grid--stable-columns[data-product-card-size='medium'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 4;
        }
    }
@container product-grid (min-width: 1052px) {
        .product-grid--stable-columns[data-product-card-size='large'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 3;
        }
    }
@container product-grid (min-width: 1070px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 6;
        }
    }
@container product-grid (min-width: 1076px) {
        .product-grid--stable-columns[data-product-card-size='extra-large'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 2;
        }
    }
@container product-grid (min-width: 1088px) {
        .product-grid--stable-columns[data-product-card-size='medium'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 4;
        }
    }
@container product-grid (min-width: 1127px) {
        .product-grid--stable-columns[data-product-card-size='large'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 3;
        }
    }
@container product-grid (min-width: 1160px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 6;
        }
    }
@container product-grid (min-width: 1251px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 7;
        }
    }
@container product-grid (min-width: 1314px) {
        .product-grid--stable-columns[data-product-card-size='medium'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 5;
        }
    }
@container product-grid (min-width: 1356px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 7;
        }
    }
@container product-grid (min-width: 1364px) {
        .product-grid--stable-columns[data-product-card-size='medium'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 5;
        }
    }
@container product-grid (min-width: 1408px) {
        .product-grid--stable-columns[data-product-card-size='large'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 4;
        }
    }
@container product-grid (min-width: 1432px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 8;
        }
    }
@container product-grid (min-width: 1472px) {
        .product-grid--stable-columns[data-product-card-size='extra-large'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 3;
        }
    }
@container product-grid (min-width: 1508px) {
        .product-grid--stable-columns[data-product-card-size='large'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 4;
        }
    }
@container product-grid (min-width: 1552px) {
        .product-grid--stable-columns[data-product-card-size='small'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 8;
        }
    }
@container product-grid (min-width: 1580px) {
        .product-grid--stable-columns[data-product-card-size='medium'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 6;
        }
    }
@container product-grid (min-width: 1622px) {
        .product-grid--stable-columns[data-product-card-size='extra-large'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 3;
        }
    }
@container product-grid (min-width: 1640px) {
        .product-grid--stable-columns[data-product-card-size='medium'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 6;
        }
    }
@container product-grid (min-width: 1764px) {
        .product-grid--stable-columns[data-product-card-size='large'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 5;
        }
    }
@container product-grid (min-width: 1846px) {
        .product-grid--stable-columns[data-product-card-size='medium'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 7;
        }
    }
@container product-grid (min-width: 1889px) {
        .product-grid--stable-columns[data-product-card-size='large'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 5;
        }
    }
@container product-grid (min-width: 1916px) {
        .product-grid--stable-columns[data-product-card-size='medium'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 7;
        }
    }
@container product-grid (min-width: 1968px) {
        .product-grid--stable-columns[data-product-card-size='extra-large'][data-product-grid-width='centered'] {
            --product-grid-stable-columns-desktop: 4;
        }
    }
@container product-grid (min-width: 2168px) {
        .product-grid--stable-columns[data-product-card-size='extra-large'][data-product-grid-width='full-width'] {
            --product-grid-stable-columns-desktop: 4;
        }
    }
.wishlist-products__item {
        display: grid;
        gap: var(--gap-sm, 12px);
        align-content: start;
    }
.wishlist-products__actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--gap-2xs, 8px);
        width: 100%;
    }
.wishlist-products__add-to-cart,
    .wishlist-products__add-to-cart .add-to-cart-button.button:not(.button-unstyled) {
        width: 100%;
    }
.wishlist-products__remove.button-secondary:not(.button-unstyled) {
        width: 100%;
        min-height: var(--minimum-touch-target, 44px);
    }
.wishlist-products__remove:disabled,
    .wishlist-products__add-to-cart .add-to-cart-button:disabled {
        opacity: 0.5;
        cursor: not-allowed;
    }
.wishlist-page__error {
        margin: 0;
        color: rgb(153 27 27);
        font-size: var(--font-size--sm);
    }
@media screen and (max-width: 749px) {
        .section--page-width .wishlist-products--centered:not(.wishlist-products--mobile-full) {
            width: 100%;
            padding-inline: 0;
        }

        .section--full-width .wishlist-products--centered:not(.wishlist-products--mobile-full) {
            width: min(var(--page-content-width), calc(100% - var(--page-margin) * 2));
            margin-inline: auto;
            padding-inline: 0;
        }

        .wishlist-products--mobile-full {
            width: 100vw;
            margin-inline: calc(50% - 50vw);
            padding-inline: 0;
        }
    }
@container product-grid (min-width: 420px) {
        .wishlist-products__actions {
            grid-template-columns: minmax(0, 1fr) minmax(120px, 0.62fr);
        }
    }
.product-grid--organic[product-grid-view='default'] .product-grid__item {
        height: -moz-fit-content;
        height: fit-content;
    }
.product-grid__card.product-grid__card {
        display: flex;
        flex-flow: column nowrap;
        gap: var(--product-card-gap);
        align-items: var(--product-card-alignment, flex-start);
        color: var(--color, var(--color-foreground));
        text-decoration: none;
        padding-block: var(--padding-block-start) var(--padding-block-end);
        padding-inline: var(--padding-inline-start) var(--padding-inline-end);
        overflow: hidden;
    }
.product-grid-mobile--large {
        grid-template-columns: 1fr;
    }
.product-grid__card .group-block > * {
        @media screen and (max-width: 749px) {
            flex-direction: column;
        }
    }
@media screen and (max-width: 749px) {
        :is(.collection-wrapper--full-width, .collection-wrapper--full-width-on-mobile)
            [product-grid-view='default']
            .product-grid__card {
            padding-inline-start: max(var(--padding-xs), var(--padding-inline-start));
            padding-inline-end: max(var(--padding-xs), var(--padding-inline-end));
        }

        :is(.collection-wrapper--full-width, .collection-wrapper--full-width-on-mobile) .card-gallery {
            width: calc(100% + max(var(--padding-xs), var(--padding-inline-start)) + max(var(--padding-xs), var(--padding-inline-end)));
            max-width: none;
            margin-inline-start: calc(-1 * max(var(--padding-xs), var(--padding-inline-start)));
            margin-inline-end: calc(-1 * max(var(--padding-xs), var(--padding-inline-end)));
        }
    }
.main-collection-grid__empty {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: var(--padding-sm);
        padding-block: var(--padding-6xl, 72px);
        padding-inline: var(--page-margin);
        text-align: center;
    }
.main-collection-grid__empty-title {
        margin: 0;
    }
.main-collection-grid__title {
        margin-block: 0 1.33em;
    }
.collection-wrapper--full-width .main-collection-grid__title,
    .collection-wrapper--full-width-on-mobile .main-collection-grid__title {
        margin-left: var(--util-page-margin-offset);
    }
.search-results__products-title {
        width: auto;
        margin-left: 0;
        margin-right: 0;
    }
@media screen and (max-width: 749px) {
        .search-results-section.product-grid-container--full-width
            .collection-wrapper--full-width-on-mobile
            .search-results__products-title {
            margin-left: var(--util-page-margin-offset);
            margin-right: var(--util-page-margin-offset);
        }
    }
.main-collection-grid__load-more {
        display: flex;
        justify-content: center;
        padding: var(--padding-xl, 32px) var(--padding-sm, 12px);
    }
.main-collection-grid__load-more-sentinel {
        display: block;
        width: 100%;
        height: 1px;
        overflow: hidden;
        opacity: 0;
        pointer-events: none;
    }
.main-collection-grid__load-more-link[data-loading='true'] {
        pointer-events: none;
        opacity: 0.6;
    }
.bookings-section,
    .booking-detail-section {
        container-type: inline-size;
    }
.booking-offer-card__meta,
    .booking-detail-summary__facts {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        align-items: center;
    }
.booking-offer-card__eyebrow,
    .booking-detail-summary__eyebrow,
    .booking-slot-panel__eyebrow {
        margin: 0;
        color: rgb(var(--color-foreground-rgb) / 0.62);
        font-size: 0.8125rem;
        line-height: 1.3;
    }
.booking-slot-panel__eyebrow {
        margin-block-end: 6px;
    }
.booking-offer-card__title,
    .booking-detail-summary__title,
    .booking-slot-panel__title {
        margin: 0;
    }
.booking-offer-card__description,
    .booking-detail-summary__description,
    .booking-slot-panel__copy,
    .booking-empty-state__text {
        margin: 0;
        color: rgb(var(--color-foreground-rgb) / 0.68);
        line-height: 1.5;
    }
.booking-offer-card__price,
    .booking-detail-summary__price {
        font-weight: 600;
    }
.booking-offer-card__fact,
    .booking-detail-summary__facts > div,
    .booking-slot-list__item {
        display: inline-flex;
        min-height: 32px;
        align-items: center;
        gap: 6px;
        border: 1px solid rgb(var(--color-border-rgb) / 0.9);
        border-radius: 0;
        padding: 6px 10px;
        color: rgb(var(--color-foreground-rgb) / 0.74);
        font-size: 0.875rem;
        line-height: 1.25;
    }
.booking-detail-summary__facts {
        margin: 0;
    }
.booking-detail-summary__facts dt {
        color: rgb(var(--color-foreground-rgb) / 0.58);
    }
.booking-detail-summary__facts dd {
        margin: 0;
        color: var(--color-foreground);
        font-weight: 600;
    }
.booking-slot-list__item {
        justify-content: space-between;
        min-width: min(100%, 220px);
    }
.booking-empty-state {
        display: grid;
        justify-items: center;
        gap: 8px;
        padding-block: var(--padding-6xl, 72px);
        text-align: center;
    }
.booking-empty-state__title {
        margin: 0;
    }
.booking-detail-layout {
        display: grid;
        gap: var(--booking-detail-gap, 32px);
        align-items: start;
    }
.booking-product-details,
    .booking-detail-summary,
    .booking-detail-summary__body,
    .booking-slot-panel,
    .booking-slot-picker,
    .booking-slot-group,
    .booking-slot-list,
    .booking-detail-dynamic-blocks {
        display: grid;
        gap: 16px;
        min-width: 0;
    }
.booking-product-media {
        display: grid;
        gap: 16px;
        min-width: 0;
        width: 100%;
    }
.booking-detail-section .section--page-width .booking-product-media:has(.media-gallery--extend) {
        width: calc(100% - var(--full-page-margin-inline-offset));
        margin-inline-start: var(--full-page-margin-inline-offset);
    }
.booking-product-details {
        align-self: start;
    }
.booking-detail-summary {
        gap: 20px;
    }
.booking-detail-summary--align-center .booking-detail-summary__facts {
        justify-content: center;
    }
.booking-detail-summary--align-right .booking-detail-summary__facts {
        justify-content: flex-end;
    }
.booking-detail-summary__heading {
        display: grid;
        gap: 12px;
    }
.booking-detail-summary__title {
        font-family: var(--font-heading--family);
        font-size: 4rem;
        font-weight: var(--font-heading--weight);
        line-height: 0.95;
        letter-spacing: 0;
    }
.booking-detail-summary__price {
        margin: 0;
        font-size: 1.25rem;
        line-height: 1.3;
    }
.booking-security-deposit {
        padding-block: 14px;
        border-block: 1px solid rgb(var(--color-border-rgb) / 0.9);
        color: var(--color-foreground);
    }
.booking-security-deposit summary,
    .booking-security-deposit--static {
        display: flex;
        min-width: 0;
        align-items: baseline;
        justify-content: space-between;
        gap: 12px;
        line-height: 1.4;
    }
.booking-security-deposit summary {
        cursor: pointer;
        list-style: none;
    }
.booking-security-deposit summary::-webkit-details-marker {
        display: none;
    }
.booking-security-deposit summary::after {
        content: '+';
        flex-shrink: 0;
    }
.booking-security-deposit[open] summary::after {
        content: '\2212';
    }
.booking-security-deposit strong {
        flex-shrink: 0;
        text-align: end;
        white-space: nowrap;
    }
.booking-security-deposit p {
        margin: 10px 0 0;
        color: rgb(var(--color-foreground-rgb) / 0.68);
        line-height: 1.5;
    }
.booking-variant-picker {
        display: grid;
        gap: 8px;
        min-width: 0;
    }
.booking-variant-picker .variant-option__buttons {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
        gap: 8px;
        width: 100%;
    }
.booking-variant-picker .variant-option__button-label {
        justify-content: center;
        width: 100%;
        min-width: 0;
        text-align: center;
        text-decoration: none;
        overflow-wrap: anywhere;
    }
.booking-variant-picker .booking-variant-option--disabled {
        cursor: not-allowed;
        opacity: var(--opacity-disabled);
    }
.booking-slot-panel {
        display: grid;
        gap: var(--booking-slot-gap, 18px);
        padding-block-start: 24px;
    }
.booking-slot-panel--divider {
        border-block-start: 1px solid rgb(var(--color-border-rgb) / 0.9);
    }
.booking-slot-panel__header {
        display: grid;
        gap: 8px;
    }
.booking-slot-panel__title {
        font-size: 1.25rem;
        line-height: 1.2;
    }
.booking-slot-date-nav {
        display: grid;
        grid-template-columns: auto minmax(0, 1fr) auto;
        align-items: stretch;
        gap: 8px;
    }
.booking-slot-date-page {
        display: grid;
        width: 42px;
        min-width: 42px;
        min-height: 58px;
        place-items: center;
        border: 1px solid rgb(var(--color-border-rgb) / 0.9);
        border-radius: var(--booking-control-radius, 0);
        background: transparent;
        color: var(--color-foreground);
        cursor: pointer;
        font: inherit;
    }
.booking-slot-date-page:disabled {
        cursor: not-allowed;
        opacity: 0.28;
    }
.booking-slot-date-strip {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 8px;
        max-width: 100%;
    }
.booking-slot-date {
        display: grid;
        min-width: 0;
        min-height: 58px;
        place-items: center;
        gap: 2px;
        border: 1px solid rgb(var(--color-border-rgb) / 0.9);
        border-radius: var(--booking-control-radius, 0);
        padding: 8px 12px;
        background: transparent;
        color: var(--color-foreground);
        cursor: pointer;
        font: inherit;
        text-align: center;
    }
.booking-slot-date[hidden],
    .booking-slot-group[hidden] {
        display: none;
    }
.booking-slot-date__weekday {
        color: rgb(var(--color-foreground-rgb) / 0.62);
        font-size: 0.75rem;
        line-height: 1.2;
    }
.booking-slot-date__day {
        font-size: 0.875rem;
        font-weight: 600;
        line-height: 1.2;
    }
.booking-slot-date.is-selected {
        border-color: var(--color-foreground);
        background: var(--color-foreground);
        color: var(--color-background);
    }
.booking-slot-date.is-selected .booking-slot-date__weekday {
        color: rgb(var(--color-background-rgb) / 0.72);
    }
@media screen and (max-width: 749px) {
        .booking-slot-date-strip {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .booking-slot-date-page {
            width: 36px;
            min-width: 36px;
        }
    }
.booking-slot-list {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 10px;
    }
.booking-slot-group {
        gap: 10px;
    }
.booking-slot-group__date {
        margin: 0;
        color: rgb(var(--color-foreground-rgb) / 0.68);
        font-size: 0.875rem;
        line-height: 1.3;
    }
.booking-slot-list__item {
        width: 100%;
        min-width: 0;
        min-height: 48px;
        border-radius: var(--booking-control-radius, 0);
        padding: 12px 14px;
        background: transparent;
        color: var(--color-foreground);
        cursor: pointer;
        font: inherit;
        text-align: left;
    }
.booking-slot-list__item span {
        color: rgb(var(--color-foreground-rgb) / 0.68);
    }
.booking-slot-list__item strong {
        font-weight: 600;
    }
.booking-slot-list__item.is-selected {
        border-color: var(--color-foreground);
        background: var(--color-foreground);
        color: var(--color-background);
    }
.booking-slot-list__item.is-selected span {
        color: var(--color-background);
    }
.booking-slot-panel__quantity {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: 12px;
        padding: 14px 0;
        border-block: 1px solid rgb(var(--color-border-rgb) / 0.9);
    }
.booking-slot-panel__quantity[hidden] {
        display: none;
    }
.booking-slot-panel__quantity-label {
        color: var(--color-foreground);
        font-size: 0.875rem;
        font-weight: 600;
    }
.booking-slot-panel__quantity .quantity-selector {
        min-height: 48px;
        align-self: auto;
    }
@media screen and (max-width: 479px) {
        .booking-slot-panel__quantity {
            grid-template-columns: 1fr;
        }

        .booking-slot-panel__quantity .quantity-selector {
            width: 100%;
        }
    }
.booking-slot-panel__button {
        width: 100%;
        min-height: var(--height-buy-buttons, 56px);
        border: 1px solid var(--color-primary-button-border, var(--color-foreground));
        border-radius: 0;
        background: var(--color-primary-button-background, var(--color-foreground));
        color: var(--color-primary-button-text, var(--color-background));
        font: inherit;
        font-weight: 600;
        opacity: 0.45;
    }
.booking-slot-panel__button:is(.button, .button-secondary):not(.button-unstyled) {
        width: 100%;
        justify-self: stretch;
        border-radius: var(--booking-control-radius, 0);
    }
.booking-slot-panel__button:not(:disabled) {
        cursor: pointer;
        opacity: 1;
    }
.booking-slot-panel__button:disabled {
        cursor: not-allowed;
    }
.booking-slot-panel__error,
    .booking-slot-panel__success {
        margin: 0;
        font-size: 0.875rem;
        line-height: 1.4;
    }
.booking-slot-panel__error {
        color: rgb(185 28 28);
    }
.booking-slot-panel__success {
        color: rgb(22 101 52);
    }
@container (min-width: 750px) {
        .booking-offer-grid {
            grid-template-columns: repeat(var(--booking-card-columns, 3), minmax(0, 1fr));
        }

        .booking-detail-layout {
            grid-template-columns: minmax(0, 1fr) min(40vw, var(--sidebar-width, 420px));
            -moz-column-gap: var(--booking-detail-gap, 32px);
                 column-gap: var(--booking-detail-gap, 32px);
        }

        .booking-detail-layout[data-has-media='false'] {
            grid-template-columns: minmax(0, var(--sidebar-width, 420px));
            justify-content: center;
        }

        .booking-product-media {
            grid-column: 1;
        }

        .booking-product-details {
            grid-column: 2;
        }

        .booking-detail-layout[data-has-media='false'] .booking-product-details {
            grid-column: 1;
        }
    }
@container (max-width: 749px) {
        .booking-detail-summary__title {
            font-size: 2.5rem;
        }

    }
.\!pagination {
        --pagination-size: 36px !important;
        --pagination-inset: 2px !important;
        --pagination-radius: 6 !important;
        display: flex !important;
        justify-content: center !important;
        padding: var(--padding-xl, 32px) var(--padding-sm, 12px) !important;
        margin-top: var(--padding-xl, 32px) !important;
    }
.pagination {
        --pagination-size: 36px;
        --pagination-inset: 2px;
        --pagination-radius: 6;
        display: flex;
        justify-content: center;
        padding: var(--padding-xl, 32px) var(--padding-sm, 12px);
        margin-top: var(--padding-xl, 32px);
    }
.pagination__list {
        display: flex;
        align-items: center;
        gap: 0;
        padding: 0;
        margin: 0;
        list-style: none;
    }
.pagination__item {
        display: grid;
        place-items: center;
        width: var(--pagination-size);
        aspect-ratio: 1;
    }
.pagination__link {
        position: relative;
        display: grid;
        place-items: center;
        width: 100%;
        height: 100%;
        color: var(--color-foreground);
        font-size: var(--font-size--md, 1rem);
        text-decoration: none;
        border-radius: calc(var(--pagination-radius) * 1px);
        -webkit-tap-highlight-color: transparent;
        -webkit-user-select: none;
           -moz-user-select: none;
                user-select: none;
    }
.pagination__link:focus-visible {
        outline: 2px solid var(--color-foreground);
        outline-offset: 2px;
    }
.pagination__link--current {
        color: var(--color-background);
        font-weight: var(--font-weight-medium, 500);
        background: var(--color-foreground);
        cursor: default;
    }
.pagination__link--gap {
        pointer-events: none;
        cursor: default;
    }
.pagination__link--disabled {
        pointer-events: none;
        cursor: not-allowed;
        opacity: 0.3;
    }
@media screen and (min-width: 750px) {
        .product-grid-container {
            display: grid;
        }

        .collection-wrapper {
            --centered: 2 / span var(--centered-column-number);
            --full-width: 1 / span var(--full-width-column-number);
            display: grid;
            grid-template-columns:
                1fr repeat(
                    var(--centered-column-number),
                    minmax(0, calc((var(--page-width) - var(--page-margin) * 2) / var(--centered-column-number)))
                )
                1fr;
        }

        .collection-wrapper > * {
            grid-column: 2 / var(--full-width-column-number);
        }

        .collection-wrapper--grid-full-width .main-collection-grid,
        .collection-wrapper:has(.collection-wrapper--full-width) .main-collection-grid {
            grid-column: 1 / -1;
        }

        .collection-wrapper:has(.facets-block-wrapper--full-width),
        .collection-wrapper:has(.collection-wrapper--full-width) {
            grid-column: 1 / -1;
            grid-template-columns:
                minmax(var(--page-margin), 1fr) repeat(
                    var(--centered-column-number),
                    minmax(0, calc((var(--page-width) - var(--page-margin) * 2) / var(--centered-column-number)))
                )
                minmax(var(--page-margin), 1fr);
        }

        .facets-block-wrapper {
            display: block;
            margin: var(--facets-margin, 0);
            grid-column: var(--grid-column--desktop, 2 / var(--full-width-column-number));
        }

        .facets-block-wrapper--full-width {
            grid-column: 1 / -1;
        }

        .facets-block-wrapper--full-width .facets--horizontal {
            padding-inline: 0;
        }

        .facets-block-wrapper--full-width .column-options-wrapper {
            margin-right: 0;
        }

        .facets-block-wrapper--vertical {
            grid-column: var(--grid-column--desktop, 2 / var(--facets-vertical-col-width));
        }

        .facets-block-wrapper--horizontal {
            grid-column: var(--grid-column--desktop, 2 / var(--full-width-column-number));
        }

        .collection-wrapper:has(.facets--vertical) .facets-block-wrapper--vertical:not(.hidden) ~ .main-collection-grid {
            grid-column: var(--facets-vertical-col-width) / var(--full-width-column-number);
        }

        .collection-wrapper:has(.facets-block-wrapper--vertical:not(#filters-drawer)):has(.collection-wrapper--full-width) {
            grid-column: 1 / -1;
            grid-template-columns: 0fr repeat(var(--centered-column-number), minmax(0, 1fr)) 0fr;
        }

        .facets-toggle {
            display: none;
        }

        .facets--horizontal {
            display: flex;
            align-items: center;
            position: relative;
            z-index: var(--layer-raised, 2);
            gap: 0 var(--facets-form-horizontal-gap);
            width: 100%;
            max-width: 100%;
            height: auto;
            overflow: visible;
            padding-block: var(--padding-block-start) var(--padding-block-end);
            padding-inline: var(--padding-inline-start) var(--padding-inline-end);
        }

        .facets--horizontal .facets__form-wrapper {
            display: flex;
            flex-direction: row;
            width: 100%;
            height: auto;
        }

        .collection-wrapper:has(.facets-block-wrapper--vertical:not(.hidden)) .facets-controls-wrapper {
            grid-column: 2 / var(--full-width-column-number);
        }

        .facets--vertical {
            display: block;
            padding-block: 0 var(--padding-block-end);
            padding-inline: var(--padding-inline-start) var(--padding-inline-end);
        }

        .facets--horizontal .facets__form {
            flex-flow: row nowrap;
            align-items: center;
            gap: 0 var(--facets-form-horizontal-gap);
            width: 100%;
            height: auto;
        }

        .facets--horizontal .facets__filters-wrapper {
            display: flex;
            flex-wrap: wrap;
            -moz-column-gap: var(--gap-xl, 24px);
                 column-gap: var(--gap-xl, 24px);
            max-width: 60%;
            width: auto;
            margin-inline-end: 0;
        }

        .facets--horizontal .facets__summary {
            justify-content: flex-start;
            min-height: var(--minimum-touch-target, 44px);
            font-size: var(--font-paragraph--size);
        }

        .facets--horizontal .facets__item::before,
        .facets--horizontal .sorting-filter::before {
            content: none;
        }

        .facets--horizontal .facets__panel {
            position: relative;
        }

        .facets--horizontal .facets__panel-content {
            position: absolute;
            inset-block-start: 100%;
            inset-inline-start: 0;
            z-index: var(--layer-raised, 2);
            width: -moz-max-content;
            width: max-content;
            min-width: var(--facets-panel-min-width);
            max-width: var(--facets-panel-width);
            max-height: var(--facets-panel-height);
            gap: 0;
            overflow-y: hidden;
            color: var(--color-foreground);
            background: var(--color-background);
            border: var(--style-border-width, 1px) solid rgb(var(--color-border-rgb) / 0.45);
            border-radius: var(--style-border-radius-popover, var(--style-border-radius-xs, 0));
            box-shadow: var(--shadow-popover, 0 8px 24px rgb(0 0 0 / 0.08));
        }

        .facets--horizontal .facets__inputs-wrapper {
            max-height: var(--facets-horizontal-max-input-wrapper-height);
            padding: var(--padding-md, 16px);
            margin-block: 0;
            overflow-x: auto;
            scrollbar-width: none;
        }

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

        .facets--horizontal .price-facet__highest-price {
            padding-inline: var(--padding-md, 16px);
        }

        .facets--filters-title {
            margin: 0;
            color: var(--color-foreground);
            font-size: var(--font-h4--size, 1rem);
            font-weight: var(--font-heading--weight, 400);
        }

        .products-count-wrapper {
            display: flex;
            align-items: center;
            flex-shrink: 0;
            min-height: var(--minimum-touch-target, 44px);
            margin-left: auto;
        }

        .facets--horizontal .column-options-wrapper {
            display: flex;
        }

        .facets-mobile-wrapper .column-picker-mobile--single,
        .facets-mobile-wrapper .column-picker-mobile--double {
            display: none;
        }

        .main-collection-grid {
            grid-column: var(--grid-column--desktop);
            width: 100%;
            margin-inline: 0;
            padding: var(--padding-block-start) var(--padding-inline-end) var(--padding-block-end) var(--padding-inline-start);
        }

        .product-grid {
            grid-template-columns: var(--product-grid-columns-desktop);
            gap: var(--product-grid-gap-desktop, 16px);
        }

        .product-grid.product-grid--grid {
            grid-template-columns: var(
                --product-grid-columns-default,
                repeat(auto-fill, minmax(var(--product-grid-card-size), 1fr))
            );
        }

        .product-grid.product-grid--grid[product-grid-view='zoom-out'] {
            grid-template-columns: repeat(10, minmax(0, 1fr));
        }

        .product-grid--organic[product-grid-view='default'] {
            grid-template-columns: var(--product-grid-columns-default, repeat(4, minmax(0, 1fr)));
        }

        .product-grid--organic[product-grid-view='zoom-out'] {
            grid-template-columns: repeat(10, minmax(0, 1fr));
        }

        .product-grid--organic[product-grid-view='default'] .product-grid__item:nth-of-type(6n + 1) {
            grid-column: 1 / span 2;
        }

        .product-grid--organic[product-grid-view='default'] .product-grid__item:nth-of-type(6n + 2),
        .product-grid--organic[product-grid-view='default'] .product-grid__item:nth-of-type(6n + 5) {
            align-self: end;
        }

        .product-grid--organic[product-grid-view='default'] .product-grid__item:nth-of-type(6n) {
            grid-column: 3 / span 2;
        }

        .collection-wrapper--full-width-on-mobile .card-gallery,
        .collection-wrapper--full-width-on-mobile [product-grid-view='default'] .product-grid__card {
            padding-inline-start: var(--padding-inline-start);
            padding-inline-end: var(--padding-inline-end);
            margin-inline: 0;
        }

        .collection-wrapper--full-width-on-mobile .main-collection-grid__title {
            margin-left: 0;
        }

        .collection-wrapper--full-width-on-mobile .search-results__products-title {
            margin-right: 0;
        }

        .search-results-section.product-grid-container--full-width
            .collection-wrapper--full-width-on-mobile
            .search-results__products-title {
            margin-left: var(--util-page-margin-offset);
            margin-right: var(--util-page-margin-offset);
        }

        @container product-grid (max-width: calc(var(--product-card-min-size) * 3 + var(--columns-gap-horizontal) * 2)) {
            .product-grid[data-product-card-size='large'],
            .product-grid[data-product-card-size='extra-large'] {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
        }
    }
@media screen and (min-width: 990px) {
        .collection-wrapper {
            --facets-vertical-col-width: 5;
        }
    }
.resource-list {
        --resource-list-mobile-gap-max: 9999px;
        --resource-list-column-gap: min(var(--resource-list-column-gap-desktop), var(--resource-list-mobile-gap-max));
        --resource-list-row-gap: min(var(--resource-list-row-gap-desktop), var(--resource-list-mobile-gap-max));
        width: 100%;
        list-style: none;
        margin: 0;
        padding: 0;
    }
.resource-list--grid {
        display: grid;
        gap: var(--resource-list-row-gap) var(--resource-list-column-gap);
        grid-template-columns: var(--resource-list-columns-mobile);
    }
@media screen and (min-width: 750px) {
        .resource-list--grid {
            grid-template-columns: var(--resource-list-columns);
        }
    }
.resource-list--carousel {
        display: grid;
        grid-auto-flow: column;
        grid-template-columns: none;
        grid-auto-columns: minmax(var(--mobile-card-size, var(--resource-list-mobile-card-size, 60cqw)), min(450px, 100%));
        gap: var(--resource-list-column-gap);
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-snap-type: inline mandatory;
        scrollbar-width: none;
    }
.resource-list__carousel {
        --slide-width: 60vw;
        --resource-list-carousel-arrow-bottom: 0px;
        width: 100%;
        position: relative;
        container-type: inline-size;
        container-name: resource-list-carousel;
    }
slideshow-component.resource-list__carousel {
        display: flex;
        flex-direction: column;
        timeline-scope: var(--slideshow-timeline);
    }
slideshow-container {
        width: 100%;
        display: block;
        position: relative;
        container-type: inline-size;
        background-color: var(--color-background);
    }
slideshow-slides {
        width: 100%;
        position: relative;
        display: flex;
        overflow-x: scroll;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        scrollbar-color: transparent transparent;
        scrollbar-width: none;
        gap: var(--slideshow-gap, 0);
        min-height: var(--slide-min-height);
        align-items: var(--slideshow-align-items, normal);
    }
slideshow-slides::-webkit-scrollbar {
        width: 0;
    }
slideshow-slides[gutters*='start'] {
        padding-inline-start: var(--gutter-slide-width, 0);
        scroll-padding-inline-start: var(--gutter-slide-width, 0);
    }
slideshow-slides[gutters*='end'] {
        padding-inline-end: var(--gutter-slide-width, 0);
    }
slideshow-slide {
        position: relative;
        display: block;
        scroll-snap-align: center;
        width: var(--slide-width, 100%);
        max-height: 100%;
        flex-shrink: 0;
        view-timeline-name: var(--slideshow-timeline);
        view-timeline-axis: inline;
        border-radius: var(--corner-radius, 0);
        overflow: hidden;
    }
.resource-list__carousel slideshow-slides {
        gap: var(--resource-list-column-gap);
        margin-block: -16px;
        padding-block: 16px;
    }
.resource-list__carousel .resource-list__slide {
        width: var(--slide-width);
        flex: 0 0 auto;
        scroll-snap-align: start;
        min-width: 0;
    }
@container resource-list-carousel (max-width: 749px) {
        .resource-list__carousel .resource-list__slide {
            --slide-width: clamp(150px, var(--mobile-card-size, 60cqw), var(--slide-width-max));
        }
    }
@container resource-list-carousel (min-width: 750px) {
        .resource-list__carousel .resource-list__slide {
            --section-slide-width: calc(
                (100% - (var(--resource-list-column-gap) * (var(--column-count) - 1)) - var(--peek-next-slide-size)) /
                    var(--column-count)
            );
            --fallback-slide-width: clamp(150px, var(--mobile-card-size, 60cqw), var(--slide-width-max));
            --slide-width: var(--section-slide-width, var(--fallback-slide-width));
        }
    }
.resource-list__carousel slideshow-arrows {
        position: absolute;
        inset-block-start: 0;
        inset-inline: 0;
        bottom: var(--resource-list-carousel-arrow-bottom);
        z-index: var(--layer-heightened, var(--layer-raised));
        display: flex;
        align-items: center;
        justify-content: space-between;
        pointer-events: none;
        padding-inline: var(--util-page-margin-offset);
        mix-blend-mode: difference;
    }
.resource-list__carousel slideshow-arrows:has(.slideshow-control--shape-square),
    .resource-list__carousel slideshow-arrows:has(.slideshow-control--shape-circle) {
        mix-blend-mode: normal;
    }
.resource-list__carousel .slideshow-control {
        pointer-events: auto;
        opacity: 0;
        width: auto;
        height: auto;
        min-width: var(--minimum-touch-target);
        min-height: var(--minimum-touch-target);
        padding: 0 var(--padding-xs);
        border: 0;
        background: transparent;
        color: var(--color-white, #ffffff);
    }
.resource-list__carousel .slideshow-control[disabled] {
        display: none;
    }
.resource-list__carousel:is(:hover, :focus-within) > slideshow-container > slideshow-arrows .slideshow-control {
        animation: arrowsSlideIn var(--animation-speed) var(--animation-easing) forwards;
    }
product-recommendations .resource-list__carousel slideshow-arrows .slideshow-control:not([disabled]) {
        opacity: 1;
    }
product-recommendations .resource-list__carousel:is(:hover, :focus-within) > slideshow-container > slideshow-arrows .slideshow-control:not([disabled]) {
        animation: none;
        opacity: 1;
    }
.resource-list__carousel .slideshow-control--next {
        margin-inline-start: auto;
    }
.resource-list__carousel .slideshow-control--shape-circle,
    .resource-list__carousel .slideshow-control--shape-square {
        display: flex;
        align-items: center;
        justify-content: center;
        aspect-ratio: 1 / 1;
        background-color: var(--color-primary-button-background);
        color: var(--color-primary-button-text);
    }
.resource-list__carousel .slideshow-control--shape-circle {
        border-radius: 50%;
    }
.resource-list__carousel .slideshow-control--shape-square {
        border-radius: 0;
    }
.resource-list__carousel .slideshow-control--large .svg-wrapper,
    .resource-list__carousel .slideshow-control--large svg {
        width: var(--slideshow-controls-icon);
        height: var(--slideshow-controls-icon);
    }
.resource-list__carousel .slideshow-control--large .icon-caret {
        --icon-stroke-width: 1px;
    }
.resource-list__carousel .icon-caret {
        rotate: -90deg;
    }
.resource-list__carousel .flip-x {
        scale: -1 1;
    }
@keyframes arrowsSlideIn {
        from {
            transform: translate(var(--padding-sm), 0);
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }
.resource-list--editorial {
        display: block;
    }
.editorial-collection__grid {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        grid-auto-rows: 1fr;
        gap: var(--gap-xl);
    }
.editorial-collection__grid .resource-list__item,
    .editorial-collection__grid .collection-card {
        height: 100%;
    }
.editorial-collection__grid [class*='editorial-collection__item-'] {
        aspect-ratio: var(--editorial-collection-item-aspect-ratio);
        min-height: 0;
    }
.editorial-collection__spacer {
        aspect-ratio: 1;
    }
.editorial-product__grid {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        grid-auto-rows: 1fr;
        gap: var(--gap-xl);
    }
.editorial-product__grid .card-gallery {
        --gallery-aspect-ratio: 99 !important;
        flex: 1 1 auto;
        min-height: 0;
        aspect-ratio: auto;
    }
.editorial-product__grid .product-card,
    .editorial-product__grid .product-card__content {
        min-height: 0;
    }
:is(.product-grid__item, .resource-list__item) .product-card {
        display: grid;
        height: 100%;
    }
.editorial-product__grid .card-gallery,
    .editorial-product__grid .card-gallery__media,
    .editorial-product__grid .card-gallery img {
        height: 100%;
    }
.editorial-product__spacer {
        aspect-ratio: 1;
    }
.resource-list--carousel::-webkit-scrollbar,
    .resource-list__carousel::-webkit-scrollbar {
        display: none;
    }
@container resource-list (max-width: 749px) {
        .resource-list {
            --resource-list-mobile-gap-max: 12px;
        }
    }
@container resource-list (max-width: 449px) {
        .resource-list--grid {
            grid-template-columns: var(--resource-list-columns-mobile);
        }
    }
@container resource-list (min-width: 450px) and (max-width: 749px) {
        .resource-list--grid {
            --resource-list-columns-per-row: 3;
            grid-template-columns: repeat(var(--resource-list-columns-per-row), 1fr);
        }

        .resource-list--grid:has(.resource-list__item:first-child:nth-last-child(3n + 1)),
        .resource-list--grid:has(.resource-list__item:first-child:nth-last-child(8n)) {
            --resource-list-columns-per-row: 4;
        }
    }
@container resource-list (min-width: 750px) {
        .resource-list--grid {
            grid-template-columns: repeat(var(--resource-list-columns-per-row), 1fr);
        }

        .resource-list--grid:has(.resource-list__item:first-child:nth-last-child(n + 9)) {
            --resource-list-columns-per-row: 5;
        }

        .resource-list--grid:has(.resource-list__item:first-child:nth-last-child(n + 7):nth-last-child(-n + 8)) {
            --resource-list-columns-per-row: 4;
        }

        .resource-list--grid:has(.resource-list__item:first-child:nth-last-child(6)) {
            --resource-list-columns-per-row: 3;
        }

        .resource-list--grid:has(.resource-list__item:first-child:nth-last-child(5)) {
            --resource-list-columns-per-row: 5;
        }

        .resource-list--grid:has(.resource-list__item:first-child:nth-last-child(-n + 4)) {
            --resource-list-columns-per-row: 4;
        }
    }
@container resource-list (min-width: 1200px) {
        .resource-list--grid:has(.resource-list__item:first-child:nth-last-child(6)) {
            --resource-list-columns-per-row: 6;
        }
    }
@media screen and (max-width: 749px) {
        .resource-list {
            --resource-list-mobile-gap-max: 12px;
        }

        .editorial-collection__grid {
            display: flex;
            flex-direction: column;
            gap: var(--gap-2xl);
        }

        .editorial-collection__spacer {
            display: none;
        }

        .editorial-collection__item-0 {
            width: 66%;
            align-self: flex-start;
            aspect-ratio: 4 / 5;
        }

        .editorial-collection__item-1 {
            width: 83%;
            align-self: flex-end;
            aspect-ratio: 5 / 5;
        }

        .editorial-collection__item-2 {
            width: 83%;
            align-self: flex-start;
            aspect-ratio: 8 / 6;
        }

        .editorial-collection__item-3 {
            width: 100%;
            align-self: center;
            aspect-ratio: 8 / 6;
        }

        .editorial-product__grid {
            display: flex;
            flex-direction: column;
            gap: var(--gap-2xl);
        }

        .editorial-product__spacer {
            display: none;
        }

        .editorial-product__item-0 {
            width: 83%;
            align-self: flex-start;
            aspect-ratio: 7 / 6;
        }

        .editorial-product__item-1 {
            width: 83%;
            align-self: flex-end;
            aspect-ratio: 4 / 5;
        }

        .editorial-product__item-2 {
            width: 66%;
            align-self: flex-start;
            aspect-ratio: 5 / 5;
        }

        .editorial-product__item-3 {
            width: 100%;
            aspect-ratio: 8 / 6;
        }
    }
.hidden--desktop {
        display: grid;
    }
.hidden--mobile {
        display: none;
    }
.resource-list__item {
        min-width: 0;
        height: 100%;
        color: var(--color-foreground);
        text-decoration: none;
    }
.image-block {
        position: relative;
        display: flex;
        justify-content: var(--horizontal-alignment, inline-start);
        max-width: 100%;
    }
.placeholder-image {
        position: relative;
        width: 100%;
        height: 100%;
        aspect-ratio: var(--ratio);
        overflow: hidden;
    }
.image-block--height-fill .image-block__image {
        height: 100%;
    }
.image-block > .image-block__image {
        width: 100%;
    }
.image-block__placeholder {
        display: block;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover;
        -o-object-position: center center;
           object-position: center center;
        overflow: hidden;
        position: relative;
    }
.image-block__image {
        -o-object-fit: cover;
           object-fit: cover;
        aspect-ratio: var(--ratio, 1 / 1);
    }
collection-links-component {
        --alignment: flex-start;
        --template-column-ratio: 1fr;
        display: grid;
        align-items: center;
        grid-gap: var(--gap-3xl);
    }
collection-links-component:has([data-image-ratio='portrait']) {
        --template-column-ratio: 0.8fr;
    }
collection-links-component:has([data-image-ratio='square']) {
        --template-column-ratio: 1fr;
    }
collection-links-component:has([data-image-ratio='landscape']) {
        --template-column-ratio: 1.4fr;
    }
collection-links-component[alignment='center'] {
        --alignment: center;
    }
collection-links-component[alignment='center'] .text-block {
        text-align: center;
    }
collection-links-component[alignment='right'] {
        --alignment: flex-end;
    }
collection-links-component[alignment='right'] .text-block {
        text-align: right;
    }
collection-links-component[layout='spotlight'] {
        position: relative;
        grid-template-columns: 1fr var(--template-column-ratio);
        grid-template-areas: 'text image';
    }
@media screen and (min-width: 750px) {
        collection-links-component[layout='spotlight'][reverse] {
            grid-template-areas: 'image text';
            grid-template-columns: var(--template-column-ratio) 1fr;
        }
    }
collection-links-component[layout='spotlight'] .collection-links__container {
        align-items: var(--alignment);
    }
collection-links-component[layout='text'] {
        grid-gap: 0;
        grid-template-areas: 'text';
    }
collection-links-component[layout='text'] .collection-links__container {
        gap: clamp(var(--gap-xs), 1vw, var(--gap-xl)) var(--gap-2xl);
        flex-wrap: wrap;
        flex-direction: row;
        justify-content: var(--alignment);
    }
.collection-links__container {
        display: flex;
        grid-area: text;
        gap: var(--gap-md);
        flex-direction: column;
    }
.collection-links__link {
        --min-font-size: var(--font-size--4xl);
        --max-font-size: var(--font-size--6xl);
        display: flex;
        color: inherit;
        text-decoration: none;
        text-wrap: pretty;
        font-size: clamp(var(--min-font-size), 4.5vw, var(--max-font-size));
    }
@media (hover: hover) {
        collection-links-component:not([layout='spotlight']) .collection-links__container:hover .collection-links__link {
            opacity: var(--opacity-subdued-text);
        }

        collection-links-component:not([layout='spotlight']) .collection-links__container:hover .collection-links__link[aria-current='true'] {
            opacity: 1;
        }
    }
collection-links-component[layout='spotlight'] .collection-links__link {
        opacity: var(--disabled-opacity);
    }
collection-links-component[layout='spotlight'] .collection-links__link[aria-current='true'] {
        opacity: 1;
    }
.collection-links__link .text-block {
        display: inline-block;
        width: auto;
    }
.collection-links__count {
        font-size: 0.5em;
        opacity: var(--disabled-opacity);
        font-weight: var(--font-paragraph--weight);
    }
.collection-links__images {
        overflow: hidden;
        grid-area: image;
        width: 100%;
    }
.collection-links__images slideshow-slides {
        overflow-x: hidden;
        scroll-snap-type: x mandatory;
    }
.collection-links__images slideshow-slide {
        width: 100%;
        flex: 0 0 100%;
        scroll-snap-align: start;
    }
.collection-links__image {
        align-items: center;
        justify-content: center;
        color: inherit;
        text-decoration: none;
    }
.collection-links__image:not([hidden]) {
        display: flex;
    }
.collection-links__image .image-block {
        --image-height-basis: 10rem;
        --image-height-small: calc(var(--image-height-basis) * 2);
        --image-height-medium: calc(var(--image-height-basis) * 3);
        --image-height-large: calc(var(--image-height-basis) * 4);
        display: flex;
        align-items: center;
        justify-content: center;
        aspect-ratio: var(--ratio);
        width: 100%;
        max-width: calc(var(--image-height) * var(--ratio));
        height: var(--image-height);
        overflow: hidden;
    }
.collection-links__image .image-block--height-small {
        --image-height: var(--image-height-small);
    }
.collection-links__image .image-block--height-medium {
        --image-height: var(--image-height-medium);
    }
.collection-links__image .image-block--height-large {
        --image-height: var(--image-height-large);
    }
.collection-links__image .image-block__image {
        -o-object-fit: cover;
           object-fit: cover;
        width: 100%;
        height: auto;
        aspect-ratio: var(--ratio);
        border-radius: var(--border-radius);
    }
.collection-links__image .image-block > .placeholder-image,
    .collection-links__image .image-block > .image-block__placeholder {
        width: 100%;
        height: 100%;
    }
.collection-links__image .image-block > .placeholder-image > .image-block__placeholder {
        width: 100%;
        height: 100%;
    }
@media screen and (min-width: 750px) {
        .collection-links__image .image-block {
            --image-height-small: calc(var(--image-height-basis) * 2.5);
            --image-height-medium: calc(var(--image-height-basis) * 3.5);
            --image-height-large: calc(var(--image-height-basis) * 4.5);
        }

        .collection-links__image .image-block[data-image-ratio='square'] {
            max-width: var(--image-height);
        }
    }
@media screen and (max-width: 749px) {
        collection-links-component[layout='spotlight'] {
            grid-template-columns: 1fr;
            grid-template-areas: 'text' 'image';
            grid-gap: var(--gap-2xl);
        }

        collection-links-component[layout='spotlight'] .collection-links__container {
            gap: clamp(var(--gap-xs), 1vw, var(--gap-xl)) var(--gap-2xl);
            justify-content: var(--alignment);
        }

        .collection-links__link {
            --min-font-size: var(--font-size--3xl);
            --max-font-size: var(--font-size--5xl);
        }

        collection-links-component[layout='spotlight'] .collection-links__link {
            white-space: normal;
            scroll-snap-align: start;
            text-wrap: pretty;
        }

    collection-links-component[layout='spotlight'] .collection-links__link span {
            text-wrap: pretty;
        }

        .collection-links__images .image-block {
            max-width: 100%;
            height: auto;
        }
    }
.product-information {
        gap: var(--gap) 0;
    }
.product-information__grid {
        display: grid;
        grid-template-columns: subgrid;
        grid-column: 1 / -1;
    }
.product-information__media {
        order: 0;
        width: 0;
        min-width: 100%;
    }
.product-information__media .product-media-gallery__placeholder-image {
        width: 100%;
        height: 100%;
    }
.product-information__media .card-gallery {
        width: 100%;
    }
.product-information__media .product-media-gallery {
        --product-media-fit: cover;
        display: block;
        width: 100%;
    }
.product-media-gallery__carousel {
        position: relative;
        width: 100%;
        overflow: hidden;
    }
.product-media-gallery__viewport {
        position: relative;
        grid-area: container;
        width: 100%;
        min-width: 0;
        overflow: hidden;
        border-radius: var(--media-radius, 0px);
        touch-action: pan-y;
        -webkit-user-select: none;
           -moz-user-select: none;
                user-select: none;
    }
.product-media-gallery__track {
        display: flex;
        width: 100%;
        height: 100%;
        transition: transform var(--animation-speed) var(--ease-out-cubic);
        will-change: transform;
    }
.product-media-gallery__track > .product-media-container {
        flex: 0 0 100%;
        width: 100%;
    }
.media-gallery__grid {
        display: none;
        gap: var(--image-gap, 0px);
        margin: 0;
        padding: 0;
    }
.media-gallery__grid .product-media-container {
        height: 100%;
    }
.media-gallery--two-column .media-gallery__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
.media-gallery--one-column .media-gallery__grid {
        grid-template-columns: minmax(0, 1fr);
    }
.media-gallery--large-first-image .media-gallery__grid .product-media-container:first-child {
        grid-column: 1 / -1;
    }
.product-media {
        position: relative;
        width: 100%;
        min-width: 0;
        min-height: 0;
        aspect-ratio: var(--gallery-aspect-ratio, var(--media-preview-ratio, 1 / 1));
        overflow: hidden;
        background: rgb(var(--color-foreground-rgb, 0 0 0) / 0.05);
        border-radius: var(--media-radius, 0px);
    }
.product-media-container.constrain-height {
        max-height: var(--constrained-height);
        margin-inline: auto;
    }
.product-media-container.constrain-height .product-media {
        height: min(100%, var(--constrained-height));
    }
.product-media-gallery__arrows {
        position: absolute;
        inset: 50% var(--padding-sm) auto;
        z-index: calc(var(--layer-flat) + 1);
        display: flex;
        justify-content: space-between;
        pointer-events: none;
        transform: translateY(-50%);
    }
.product-media-gallery__arrows button {
        display: grid;
        width: var(--minimum-touch-target);
        height: var(--minimum-touch-target);
        place-items: center;
        border: 0;
        border-radius: 999px;
        color: var(--color-foreground);
        background: color-mix(in srgb, var(--color-background) 82%, transparent);
        cursor: pointer;
        pointer-events: auto;
    }
.product-media-gallery__arrows .svg-wrapper,
    .product-media-gallery__arrows svg {
        width: 20px;
        height: 20px;
    }
.product-media-gallery__arrows .slideshow-control--large .svg-wrapper,
    .product-media-gallery__arrows .slideshow-control--large svg {
        width: var(--slideshow-controls-icon);
        height: var(--slideshow-controls-icon);
    }
.product-media-gallery__arrows .icon-caret {
        rotate: -90deg;
    }
.product-media-gallery__arrows .flip-x {
        transform: scaleX(-1);
    }
.product-media-gallery__dots,
    .product-media-gallery__counter,
    .product-media-gallery__thumbnails {
        position: absolute;
        inset-inline: var(--padding-sm);
        bottom: var(--padding-sm);
        z-index: calc(var(--layer-flat) + 1);
        display: flex;
        align-items: center;
        justify-content: center;
        gap: var(--gap-xs);
    }
.product-media-gallery__counter {
        inset-inline: auto;
        left: 50%;
        width: -moz-fit-content;
        width: fit-content;
        min-width: 52px;
        padding: var(--padding-2xs) var(--padding-sm);
        border-radius: 999px;
        background: color-mix(in srgb, var(--color-background) 82%, transparent);
        transform: translateX(-50%);
    }
.product-media-gallery__dots button {
        width: 8px;
        height: 8px;
        padding: 0;
        border: 1px solid currentColor;
        border-radius: 999px;
        background: transparent;
        cursor: pointer;
    }
.product-media-gallery__dots button[aria-selected='true'] {
        background: currentColor;
    }
.product-media-gallery__thumbnails {
        overflow-x: auto;
        justify-content: flex-start;
        scrollbar-width: none;
    }
.product-media-gallery__thumbnails::-webkit-scrollbar {
        display: none;
    }
.product-media-gallery__thumbnails button {
        position: relative;
        flex: 0 0 var(--thumbnail-width, 64px);
        width: var(--thumbnail-width, 64px);
        aspect-ratio: var(--thumbnail-aspect-ratio, var(--gallery-aspect-ratio, 1 / 1));
        padding: 0;
        overflow: hidden;
        border: var(--style-border-width) solid transparent;
        border-radius: var(--thumbnail-radius, 0px);
        background: transparent;
        cursor: pointer;
    }
.product-media-gallery__thumbnails button[aria-selected='true'] {
        border-color: currentColor;
    }
.product-information__media .featured-product-information-gallery {
        display: block;
        width: 100%;
        max-width: 100%;
        aspect-ratio: var(--featured-product-media-aspect-ratio, 1 / 1);
        overflow: hidden;
        background: rgb(var(--color-foreground-rgb, 0 0 0) / 0.05);
        border-radius: var(--featured-product-media-radius, 0);
    }
.product-information__media .featured-product-information-gallery .product-media-container {
        position: relative;
        display: flex;
        width: 100%;
        height: 100%;
        overflow: hidden;
        border-radius: inherit;
    }
.product-information__media .featured-product-information-gallery .product-media-container.constrain-height {
        max-height: var(--constrained-height);
        margin-inline: auto;
    }
.product-media-container__zoom-button {
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        position: absolute;
        inset: 0;
        z-index: var(--layer-flat);
        display: block;
        width: 100%;
        height: 100%;
        padding: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
        cursor: zoom-in;
    }
.featured-product-zoom-dialog {
        position: fixed;
        inset: 0;
        z-index: var(--layer-temporary);
        display: flex;
        width: 100vw;
        height: 100vh;
        max-width: none;
        max-height: none;
        margin: 0;
        padding: 0;
        border: 0;
        background: var(--color-background);
    }
.product-media-zoom-dialog {
        position: fixed;
        inset: 0;
        z-index: var(--layer-temporary);
        width: 100vw;
        height: 100vh;
        max-width: none;
        max-height: none;
        margin: 0;
        padding: 0;
        border: 0;
        background: var(--color-background);
    }
.product-media-zoom-dialog::backdrop {
        background: var(--color-background);
    }
.featured-product-zoom-dialog:not([open]),
    .product-media-zoom-dialog:not([open]) {
        display: none;
    }
.featured-product-zoom-dialog .dialog-zoomed-gallery,
    .product-media-zoom-dialog .dialog-zoomed-gallery {
        width: 100%;
        height: 100%;
    }
.featured-product-zoom-dialog .product-media-container,
    .product-media-zoom-dialog .product-media-container {
        position: relative;
        width: 100%;
        height: 100%;
        cursor: zoom-out;
    }
.featured-product-zoom-dialog .product-media__image,
    .product-media-zoom-dialog .product-media__image {
        -o-object-fit: contain;
           object-fit: contain;
    }
.featured-product-zoom-dialog .dialog-zoomed-gallery__close-button,
    .product-media-zoom-dialog .dialog-zoomed-gallery__close-button {
        position: absolute;
        top: var(--padding-md);
        right: var(--padding-md);
        z-index: var(--layer-raised);
        display: grid;
        width: 44px;
        height: 44px;
        place-items: center;
        color: #fff;
        mix-blend-mode: difference;
        cursor: pointer;
    }
.featured-product-zoom-dialog .dialog-zoomed-gallery__close-button svg {
        width: 24px;
        height: 24px;
    }
.product-media-zoom-dialog .dialog-zoomed-gallery__close-button {
        font-size: 28px;
        line-height: 1;
    }
.product-details {
        display: flex;
        align-self: start;
        justify-content: center;
        order: 1;
        min-width: 0;
    }
.product-details > .group-block {
        width: 100%;
    }
.product-information.section--page-width .product-details > .group-block {
        padding-inline: 0;
    }
.sticky-add-to-cart__bar {
        position: fixed;
        right: var(--padding-md);
        bottom: var(--padding-md);
        left: var(--padding-md);
        z-index: calc(var(--layer-sticky) - 1);
        display: flex;
        align-items: center;
        gap: var(--gap-sm);
        max-width: 600px;
        margin-inline: auto;
        padding: var(--padding-sm);
        border-radius: calc(var(--style-border-radius-buttons-primary) + min(var(--padding-sm), var(--style-border-radius-buttons-primary)));
        color: var(--color-foreground);
        background: var(--color-background);
        box-shadow: var(--shadow-popover);
        opacity: 0;
        pointer-events: none;
        transform: translateY(calc(100% + 40px));
        transition: opacity var(--animation-speed) var(--ease-out-cubic), transform var(--animation-speed) var(--ease-out-cubic);
    }
.sticky-add-to-cart__bar[data-stuck='true'] {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
    }
.sticky-add-to-cart[data-variant-available='false'] .sticky-add-to-cart__bar {
        display: none;
    }
.sticky-add-to-cart__image {
        position: relative;
        flex: 0 0 var(--height-buy-buttons);
        width: var(--height-buy-buttons);
        height: var(--height-buy-buttons);
        overflow: hidden;
        border-radius: var(--style-border-radius-buttons-primary);
        background: var(--color-background-secondary);
    }
.sticky-add-to-cart__info {
        min-width: 0;
        flex: 1 1 auto;
    }
.sticky-add-to-cart__title,
    .sticky-add-to-cart__variant {
        margin: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.sticky-add-to-cart__title {
        font: var(--font-paragraph--weight) var(--font-paragraph--size) / var(--font-paragraph--line-height) var(--font-paragraph--family);
    }
.sticky-add-to-cart__variant {
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-subdued-text));
        font-size: var(--font-size--xs);
    }
.sticky-add-to-cart__button {
        flex: 0 0 auto;
        min-width: min(42vw, 180px);
        padding-inline: var(--padding-md);
    }
@media screen and (max-width: 749px) {
        .product-information__media {
            grid-column: 1 / -1;
        }

        .product-media-gallery__arrows--desktop,
        .product-media-gallery__controls--desktop {
            display: none;
        }

        .product-details {
            grid-column: 2 / 3;
        }

        .product-information__media .featured-product-information-gallery .product-media-container.constrain-height {
            max-height: none;
        }

        .product-media-container.constrain-height {
            max-height: none;
        }
    }
@media screen and (min-width: 750px) {
        .product-media-gallery__controls--mobile {
            display: none;
        }

        .media-gallery--grid .product-media-gallery__carousel {
            display: none;
        }

        .media-gallery--grid .media-gallery__grid {
            display: grid;
        }

        .media-gallery--carousel:is(.media-gallery--thumbnails-left, .media-gallery--thumbnails-right) .product-media-gallery__carousel {
            display: grid;
            grid-template:
                'container controls' auto
                / minmax(0, 1fr) auto;
            grid-auto-flow: column;
            grid-auto-columns: 0;
            gap: var(--gap-sm);
            align-items: start;
            overflow: visible;
        }

        .media-gallery--carousel.media-gallery--thumbnails-left .product-media-gallery__carousel {
            grid-template:
                'controls container' auto
                / auto minmax(0, 1fr);
        }

        .media-gallery--carousel:is(.media-gallery--thumbnails-left, .media-gallery--thumbnails-right) .product-media-gallery__viewport,
        .media-gallery--carousel:is(.media-gallery--thumbnails-left, .media-gallery--thumbnails-right) .product-media-gallery__track {
            grid-area: container;
            min-width: 0;
            max-width: 100%;
        }

        .media-gallery--carousel:is(.media-gallery--thumbnails-left, .media-gallery--thumbnails-right) .product-media-gallery__viewport {
            overflow: hidden;
        }

        .media-gallery--carousel:is(.media-gallery--thumbnails-left, .media-gallery--thumbnails-right) .product-media-gallery__thumbnails {
            position: static;
            grid-area: controls;
            inset: auto;
            flex-direction: column;
            justify-content: flex-start;
            align-self: start;
            max-height: 100%;
            overflow-x: hidden;
            overflow-y: auto;
        }

        .product-information__grid {
            grid-column: 2;
            align-items: start;
        }

        .product-information__grid.product-information--media-none .product-details {
            width: var(--narrow-content-width);
            max-width: 100%;
            margin: 0 auto;
        }

        .product-information__grid:not(.product-information__grid--half, .product-information--media-none).product-information--media-left {
            grid-template-columns: 1fr min(50vw, var(--sidebar-width));
        }

        .product-information__grid:not(.product-information__grid--half, .product-information--media-none).product-information--media-left .product-information__media {
            grid-column: 1;
            padding-right: calc(var(--gap, 0px) / 2);
        }

        .product-information__grid:not(.product-information__grid--half, .product-information--media-none).product-information--media-left .product-details {
            grid-column: 2;
            padding-left: calc(var(--gap, 0px) / 2);
        }

        .product-information__grid:not(.product-information--media-none).product-information--media-left:has(.media-gallery--extend) {
            grid-column: 1 / 3;
        }

        .product-information__grid:not(.product-information__grid--half, .product-information--media-none).product-information--media-right {
            grid-template-columns: min(50vw, var(--sidebar-width)) 1fr;
        }

        .product-information__grid:not(.product-information__grid--half, .product-information--media-none).product-information--media-right .product-information__media {
            grid-column: 2;
            order: 1;
            padding-left: calc(var(--gap, 0px) / 2);
        }

        .product-information__grid:not(.product-information__grid--half, .product-information--media-none).product-information--media-right .product-details {
            grid-column: 1;
            order: 0;
            padding-right: calc(var(--gap, 0px) / 2);
        }

        .product-information__grid:not(.product-information--media-none).product-information--media-right:has(.media-gallery--extend) {
            grid-column: 2 / -1;
        }

        .product-information__grid--half,
        .product-information__grid--half:has(.media-gallery--extend) {
            grid-column: 1 / -1;
            grid-template-columns:
                var(--full-page-grid-margin)
                calc(var(--full-page-grid-central-column-width) / 2)
                calc(var(--full-page-grid-central-column-width) / 2)
                var(--full-page-grid-margin);
            -moz-column-gap: 0;
                 column-gap: 0;
        }

        .product-information__grid--half.product-information--media-left .product-information__media {
            grid-column: 2 / 3;
            padding-right: calc(var(--gap, 0px) / 2);
        }

        .product-information__grid--half.product-information--media-left .product-information__media:has(.media-gallery--extend) {
            grid-column: 1 / 3;
        }

        .product-information__grid--half.product-information--media-left .product-details {
            grid-column: 3 / 4;
            padding-left: calc(var(--gap, 0px) / 2);
        }

        .product-information__grid--half.product-information--media-right .product-information__media {
            grid-column: 3 / 4;
            padding-left: calc(var(--gap, 0px) / 2);
        }

        .product-information__grid--half.product-information--media-right .product-information__media:has(.media-gallery--extend) {
            grid-column: 3 / -1;
        }

        .product-information__grid--half.product-information--media-right .product-details {
            grid-column: 2 / 3;
            padding-right: calc(var(--gap, 0px) / 2);
        }

        .product-information.section--full-width .product-information__grid:not(.product-information--media-none) {
            grid-column: 1 / -1;
        }

        .product-information.section--full-width .product-information__grid--half.product-information--media-left .product-information__media {
            grid-column: 1 / 3;
        }

        .product-information.section--full-width .product-information__grid--half.product-information--media-left .product-details {
            grid-column: 3 / -1;
            padding-inline-end: var(--padding-lg);
        }

        .product-information.section--full-width .product-information__grid--half.product-information--media-right .product-information__media {
            grid-column: 3 / -1;
        }

        .product-information.section--full-width .product-information__grid--half.product-information--media-right .product-details {
            grid-column: 1 / 3;
            padding-inline-start: var(--padding-lg);
        }

        .product-information__grid--limit-details .product-details > .group-block {
            --details-max-width: var(--sidebar-width);
            max-width: var(--details-max-width);
        }

        .product-details > .group-block {
            height: -moz-min-content;
            height: min-content;
        }

        .full-height--desktop {
            height: 100%;
            max-height: calc(100vh - var(--header-group-height, 0));
            min-height: -moz-fit-content;
            min-height: fit-content;
        }

        .full-height--desktop .group-block {
            align-self: var(--details-position, flex-start);
        }
    }
@media screen and (min-width: 750px) and (max-width: 989px) {
        .product-information--featured-product-information .product-information__media {
            align-self: stretch;
        }

        .product-information--featured-product-information .featured-product-information-gallery {
            height: 100%;
        }
    }
@media screen and (min-width: 1600px) {
        .product-information__grid--limit-details .product-details > .group-block {
            --details-max-width: 32rem;
        }
    }
@media screen and (min-width: 1200px) {
        .product-information__grid:not(.product-information__grid--half, .product-information--media-none).product-information--media-left {
            grid-template-columns: 2fr 1fr;
        }

        .product-information__grid:not(.product-information__grid--half, .product-information--media-none).product-information--media-right {
            grid-template-columns: 1fr 2fr;
        }
    }
.featured-product-section .section-content-wrapper {
        display: grid;
        grid-template-columns: 1fr;
        overflow: hidden;
    }
.featured-product-section {
        --viewport-offset: 400px;
        --constrained-min-height: var(--visual-preview--height, 80dvh);
        --constrained-height: max(var(--constrained-min-height), calc(100vh - var(--viewport-offset)));
    }
.featured-product-section__product {
        min-width: 0;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }
.featured-product-section .media-block {
        position: relative;
        min-height: min(70svh, var(--constrained-height));
        overflow: hidden;
    }
.featured-product-section .media-block__media,
    .featured-product-section .media-block__media-link {
        position: absolute;
        inset: 0;
        display: block;
        width: 100%;
        height: 100%;
    }
.featured-product-section .media-block__media > img,
    .featured-product-section .media-block__media > video,
    .featured-product-section .media-block__media .object-cover,
    .featured-product-section .media-block__media .object-contain {
        width: 100%;
        height: 100%;
        -o-object-fit: var(--image-position, cover);
           object-fit: var(--image-position, cover);
        -o-object-position: center center;
           object-position: center center;
    }
.featured-product-section .media-block__placeholder {
        position: relative;
        display: block;
        width: 100%;
        height: 100%;
        overflow: hidden;
    }
.featured-product-content-top {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: var(--gap-sm);
        width: 100%;
    }
.featured-product-content-top > * {
        min-width: 0;
    }
.featured-product-section .product-grid__card {
        --padding-block: 20px;
        --padding-inline: 20px;
    }
.featured-product-section .card-gallery .quick-add__button {
        position: absolute;
        right: var(--quick-add-offset, var(--padding-sm));
        bottom: var(--quick-add-offset, var(--padding-sm));
    }
:is(.featured-product-section, .product-information--featured-product-information) .product-form-buttons {
        --height-buy-buttons: var(--minimum-touch-target);
        --button-padding-block: var(--padding-sm);
        gap: var(--gap-xs);
    }
:is(.featured-product-section, .product-information--featured-product-information) .product-form-buttons > .add-to-cart-block,
    :is(.featured-product-section, .product-information--featured-product-information) .product-form-buttons > .product-wishlist-button-wrapper {
        min-width: 0;
    }
:is(.featured-product-section, .product-information--featured-product-information) .product-form-buttons > .quantity-selector-wrapper {
        flex: 1 0 100%;
        min-width: 100%;
    }
:is(.featured-product-section, .product-information--featured-product-information) .product-form-buttons > .quantity-selector-wrapper .quantity-selector {
        --quantity-selector-width: 100%;
        height: var(--minimum-touch-target);
    }
:is(.featured-product-section, .product-information--featured-product-information) .product-form-buttons > .add-to-cart-block,
    :is(.featured-product-section, .product-information--featured-product-information) .product-form-buttons > .product-wishlist-button-wrapper {
        flex: 1 1 calc(50% - var(--gap-sm) / 2);
    }
:is(.featured-product-section, .product-information--featured-product-information) .product-form-buttons > .add-to-cart-block {
        order: 2;
    }
:is(.featured-product-section, .product-information--featured-product-information) .product-form-buttons > .product-wishlist-button-wrapper {
        order: 3;
    }
:is(.featured-product-section, .product-information--featured-product-information) .product-form-buttons :is(.add-to-cart-button, .product-wishlist-button):is(.button, .button-secondary):not(.button-unstyled) {
        height: var(--minimum-touch-target);
        min-height: 0;
        padding-block: var(--padding-xs);
    }
@media screen and (max-width: 749px) {
        .featured-product-section .media-block {
            order: -1;
        }
    }
@media screen and (min-width: 750px) {
        .featured-product-section {
            --viewport-offset: 300px;
        }

        .featured-product-section .section-content-wrapper {
            grid-template-columns: 1fr 1fr;
        }

        .featured-product-section .media-block {
            min-height: var(--constrained-height);
        }

        .featured-product-section .product-grid__card {
            --padding-block: 40px;
            --padding-inline: 40px;
        }

        .featured-product-section .product-card__content {
            --hugged-width: calc(var(--constrained-height) * var(--gallery-aspect-ratio, var(--media-preview-ratio, 1)));
            width: min(100%, var(--hugged-width));
            margin-left: auto;
            margin-right: auto;
            justify-content: center;
        }

        .featured-product-section .featured-product-content-top > product-price {
            flex: 0 0 auto;
            width: -moz-fit-content;
            width: fit-content;
        }
    }
.product-card {
        position: relative;
        min-width: 0;
        max-width: 100%;
        height: 100%;
        color: var(--color-foreground);
        text-decoration: none;
        z-index: var(--layer-flat);
        transition: transform var(--hover-transition-duration) var(--hover-transition-timing), box-shadow var(--hover-transition-duration) var(--hover-transition-timing);
    }
.product-card__link {
        position: absolute;
        inset: 0;
        z-index: calc(var(--layer-flat) + 1);
    }
.product-card__content {
        position: relative;
        min-width: 0;
        max-width: 100%;
        cursor: pointer;
        color: var(--color, var(--color-foreground));
        overflow: hidden;
    }
.product-card__content .text-block {
        min-width: 0;
        max-width: 100%;
    }
.product-card__content :is(a, button) {
        position: relative;
        z-index: calc(var(--layer-flat) + 2);
    }
.logo-block {
        box-sizing: border-box;
        width: min(calc(var(--logo-width, auto) + var(--padding-inline-start) + var(--padding-inline-end)), 100%);
        min-width: 0;
        max-width: 100%;
        max-height: calc(var(--logo-height, 100%) + var(--padding-block-start) + var(--padding-block-end));
        font-size: var(--logo-height);
        display: flex;
        padding-block: var(--padding-block-start) var(--padding-block-end);
        padding-inline: var(--padding-inline-start) var(--padding-inline-end);
    }
.logo-block__image-wrapper {
        display: flex;
        width: 100%;
        min-width: 0;
        max-width: 100%;
        max-height: 100%;
    }
.logo-block__image {
        -o-object-fit: contain;
           object-fit: contain;
        width: 100%;
        height: auto;
    }
.logo-block__jumbo-text {
        flex: 1 1 100%;
        min-width: 0;
        max-width: 100%;
    }
@media screen and (max-width: 749px) {
        .logo-block {
            max-height: calc(var(--logo-height-mobile, var(--logo-height, 100%)) + var(--padding-block-start) + var(--padding-block-end));
            font-size: var(--logo-height-mobile, var(--logo-height));
            width: min(calc(var(--logo-width-mobile, var(--logo-width)) + var(--padding-inline-start) + var(--padding-inline-end)), 100%);
        }
    }
.page-block {
        display: flex;
        flex-direction: column;
        max-width: 100%;
        max-height: 100%;
        width: 100%;
        height: auto;
        align-items: flex-start;
    }
.page-title {
        margin-bottom: var(--margin-xl);
    }
.announcement-bar__slide {
        position: relative;
        display: block;
        width: 100%;
        text-align: center;
        line-height: var(--line-height, 1);
    }
.announcement-bar__text {
        margin: 0;
    }
.announcement-bar__link {
        position: absolute;
        inset: 0;
        z-index: calc(var(--layer-flat) + 1);
    }
.collection-info {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: var(--gap-md);
        padding-block: var(--padding-block-start) var(--padding-block-end);
        padding-inline: var(--padding-inline-start) var(--padding-inline-end);
    }
.collection-info__content {
        min-width: 0;
        flex: 1 1 auto;
    }
.collection-info__controls {
        display: flex;
        align-items: center;
        gap: var(--gap-xs);
    }
.slideshow-control {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: var(--button-size);
        height: var(--button-size);
        border: 1px solid currentColor;
        background: transparent;
        color: currentColor;
    }
.slideshow-control--circle {
        border-radius: 999px;
    }
.slideshow-section-wrapper {
        position: relative;
    }
.slideshow-section {
        --slideshow-gap: 0px;
    }
.slideshow-section slideshow-component {
        --cursor: grab;
        --slide-offset: 6px;
        position: relative;
        display: flex;
        flex-direction: column;
        timeline-scope: var(--slideshow-timeline);
    }
.slideshow-section .slideshow--single-media {
        --cursor: default;
    }
.slideshow-section slideshow-container {
        overflow: hidden;
    }
.slideshow-section .slideshow--full-frame-page-width slideshow-container {
        border-radius: var(--corner-radius, 0);
    }
.slideshow-section slideshow-slides {
        cursor: var(--cursor);
        overflow-x: scroll;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        scrollbar-color: transparent transparent;
        scrollbar-width: none;
        will-change: scroll-position;
    }
.slideshow-section slideshow-slides::-webkit-scrollbar {
        width: 0;
    }
.slideshow-section .slideshow--full-frame slideshow-slides {
        --slide-width: 100%;
        gap: 0;
        padding-inline: 0;
    }
.slideshow-section slideshow-slide {
        display: block;
        scroll-snap-align: center;
        min-height: var(--slide-min-height);
        content-visibility: auto;
        contain-intrinsic-size: auto none;
    }
.slideshow-section .slideshow--full-frame slideshow-slide {
        flex: 0 0 100%;
        width: 100%;
        min-width: 100%;
    }
.slideshow-section slideshow-slide[aria-hidden='false'] {
        content-visibility: visible;
    }
.slideshow-section slideshow-slide[aria-hidden='true'] {
        cursor: pointer;
    }
.slideshow-section slideshow-slide[data-upstorr-slideshow-clone='true'] {
        pointer-events: none;
        content-visibility: visible;
    }
.slideshow-section slideshow-arrows {
        position: absolute;
        inset: 0;
        z-index: var(--layer-heightened);
        display: flex;
        align-items: center;
        justify-content: space-between;
        pointer-events: none;
        mix-blend-mode: difference;
    }
.slideshow-section slideshow-arrows:has(.slideshow-control--shape-square),
    .slideshow-section slideshow-arrows:has(.slideshow-control--shape-circle) {
        mix-blend-mode: normal;
    }
.slideshow-section slideshow-arrows .slideshow-control {
        pointer-events: auto;
        opacity: 0;
        min-width: var(--minimum-touch-target);
        min-height: var(--minimum-touch-target);
        width: auto;
        height: auto;
        padding: 0 var(--padding-xs);
        border: 0;
        color: var(--color-white);
    }
.slideshow-section slideshow-component:is(:hover, :focus-within) > slideshow-container > slideshow-arrows .slideshow-control {
        animation: arrowsSlideIn var(--animation-speed) var(--animation-easing) forwards;
    }
.slideshow-section .slideshow-control--style-none {
        display: none;
    }
.slideshow-section .slideshow-control--large .svg-wrapper,
    .slideshow-section .slideshow-control--large svg {
        width: var(--slideshow-controls-icon);
        height: var(--slideshow-controls-icon);
    }
.slideshow-section .slideshow-control .icon-caret {
        rotate: -90deg;
    }
.slideshow-section .flip-x {
        transform: scaleX(-1);
    }
.slideshow-section .slideshow-control--shape-square,
    .slideshow-section .slideshow-control--shape-circle {
        display: flex;
        align-items: center;
        justify-content: center;
        aspect-ratio: 1 / 1;
        background-color: var(--color-primary-button-background);
        color: var(--color-primary-button-text);
    }
.slideshow-section .slideshow-control--shape-circle {
        border-radius: 50%;
    }
.slideshow-section .slideshow-control--shape-square {
        border-radius: 0;
    }
.slideshow-section slideshow-controls {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: var(--layer-heightened);
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
        align-items: center;
        justify-content: center;
        justify-items: center;
        min-height: var(--minimum-touch-target);
        color: var(--color-white);
        pointer-events: none;
    }
.slideshow-section slideshow-controls > * {
        pointer-events: auto;
    }
.slideshow-section slideshow-component[autoplay] slideshow-controls,
    .slideshow-section slideshow-controls:has(.slideshow-controls__dots) {
        mix-blend-mode: difference;
    }
.slideshow-section slideshow-controls[controls-on-media]:has(.slideshow-controls__dots, .slideshow-controls__counter) {
        --color-foreground: #ffffff;
        --color-foreground-rgb: 255 255 255;
        color: var(--color-foreground);
    }
.slideshow-section slideshow-controls button {
        --color: rgb(var(--color-foreground-rgb) / var(--opacity-30));
        --color-active: var(--color-foreground);
        --color-hover: rgb(var(--color-foreground-rgb) / var(--opacity-50));
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: var(--minimum-touch-target);
        height: var(--minimum-touch-target);
        cursor: pointer;
        border: 0;
    }
.slideshow-section .slideshow-control:is(.icon-pause, .icon-play) {
        grid-column: 1;
        grid-row: 1;
        align-items: center;
        justify-content: flex-end;
        justify-self: end;
        padding: 0;
        margin-inline-end: var(--gap-3xs);
        color: var(--color-active);
        background: transparent;
        box-shadow: none;
    }
.slideshow-section .slideshow-control:is(.icon-pause, .icon-play)[hidden] {
        display: none;
    }
.slideshow-section .slideshow-control:is(.icon-pause, .icon-play) svg {
        display: block;
        width: var(--icon-size-sm);
        height: var(--icon-size-xs);
    }
.slideshow-section .slideshow-controls__counter {
        grid-column: 2;
        grid-row: 1;
        min-width: var(--minimum-touch-target);
        padding-inline: var(--padding-sm);
        font-family: var(--font-accent--family);
        font-size: var(--font-size--xs);
        letter-spacing: 0;
    }
.slideshow-section .slideshow-controls__counter .slash {
        padding-inline: var(--padding-2xs);
        opacity: var(--opacity-60);
    }
.slideshow-section .slideshow-controls__dots {
        grid-column: 2;
        grid-row: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.6rem;
        padding: var(--padding-sm) var(--padding-lg);
        margin: 0;
        overflow: hidden;
        border-radius: 3rem;
        list-style: none;
    }
.slideshow-section .slideshow-controls__dots .slideshow-control {
        --size: 0.56rem;
        --color: rgb(255 255 255 / 65%);
        --color-active: var(--color-foreground);
        --color-hover: rgb(255 255 255 / 85%);
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 0;
        min-height: 0;
        width: calc(var(--size) * 2);
        height: calc(var(--size) * 2);
        padding: 0;
        margin: calc(var(--size) / -2);
        overflow: visible;
        color: var(--color);
        font-size: 0;
        background: transparent;
        border-radius: var(--size);
        box-shadow: none;
    }
.slideshow-section .slideshow-controls__dots li {
        display: flex;
    }
.slideshow-section .slideshow-controls__dots .slideshow-control::after {
        content: '';
        display: block;
        width: var(--size);
        height: var(--size);
        border-radius: calc(var(--size) / 2);
        background-color: var(--color);
        box-shadow: inset 0 0 0 1.5px hsl(0 0% 0% / 0.15);
    }
.slideshow-section .slideshow-controls__dots .slideshow-control:is([data-active='true'], [aria-selected='true']) {
        --color: var(--color-active);
    }
.slideshow-section .slideshow-controls__dots .slideshow-control:is([data-active='true'], [aria-selected='true'])::after {
        box-shadow: inset 0 0 0 1.5px hsl(0 0% 0% / 0.4);
    }
.slideshow-section .slide__image-container {
        position: absolute;
        inset: 0;
        display: flex;
        width: 100%;
        height: 100%;
        overflow: hidden;
    }
.slideshow-section .slide__image-container > :is(img, video, svg, .theme-image, .slide__image, .slide__video, .slide__video-poster) {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover;
        -o-object-position: center center;
           object-position: center center;
    }
.slideshow-section .slide__video-poster {
        z-index: var(--layer-flat);
    }
.slideshow-section .slide__video {
        z-index: var(--layer-base);
    }
.slideshow-section slideshow-slide[aria-hidden='false'] .slide__video-poster + .slide__video {
        z-index: var(--layer-flat);
    }
.slideshow-section .slide__content {
        position: relative;
        z-index: var(--layer-flat);
        height: 100%;
    }
.slideshow-section .slide__content > * {
        margin: auto;
    }
.slideshow-section .slide__content .layout-panel-flex--row {
        flex-flow: row var(--flex-wrap);
        justify-content: var(--horizontal-alignment);
        align-items: var(--vertical-alignment);
    }
.slideshow-section .slide__content .layout-panel-flex--column {
        flex-flow: column var(--flex-wrap);
        align-items: var(--horizontal-alignment);
        justify-content: var(--vertical-alignment);
    }
.slideshow-section .slide__content.background-transparent {
        background-color: transparent;
    }
.slideshow-section .slideshow--content-below-media slideshow-slide {
        display: grid;
        grid-template-rows: var(--grid-template-rows);
    }
.slideshow-section .slideshow--content-below-media slideshow-slide :is(.slide__image-container, .slide__content) {
        position: relative;
    }
.slideshow-section .slideshow--content-below-media .slide__image-container {
        min-height: 0;
    }
.slideshow-section slideshow-component.slideshow--with-hints {
        grid-column: 1 / -1;
    }
.section--mobile-full-width > * {
        grid-column: 1 / -1;
    }
.slideshow-section slideshow-component.slideshow--with-hints[data-at-start] > slideshow-container > slideshow-arrows .slideshow-control--previous,
    .slideshow-section slideshow-component.slideshow--with-hints[data-at-end] > slideshow-container > slideshow-arrows .slideshow-control--next {
        animation: none;
        opacity: 0;
        pointer-events: none;
    }
@media screen and (max-width: 749px) {
        .slideshow-section .slideshow--with-hints--mobile-with-hints slideshow-slides {
            gap: min(var(--slideshow-gap, 0), 10px);
            padding-inline: var(--page-margin);
        }

        .slideshow-section .slideshow--with-hints--mobile-with-hints slideshow-slide {
            width: 96%;
            overflow: hidden;
        }
    }
@media screen and (min-width: 750px) {
        .slideshow-section slideshow-slide {
            min-height: var(--slide-min-height-desktop);
        }

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

        .slideshow-section .slideshow--with-hints {
            gap: var(--slideshow-gap, 0);
            grid-column: 1 / -1;
        }

        .slideshow-section .slideshow--with-hints slideshow-slides {
            gap: var(--slideshow-gap, 0);
            padding-inline: var(--page-margin);
        }

        .slideshow-section .slideshow--with-hints slideshow-slide {
            width: calc(100vw - var(--page-margin) * 2);
            overflow: hidden;
        }
    }
.block-resource-list {
        display: flex;
        flex-direction: column;
        row-gap: var(--gap);
        min-width: 0;
        min-height: 0;
        container-type: inline-size;
        container-name: resource-list;
        border-radius: var(--border-radius, 0);
        padding-block: var(--padding-block-start) var(--padding-block-end);
        padding-inline: var(--padding-inline-start) var(--padding-inline-end);
    }
product-recommendations,
    product-custom-property-component {
        display: block;
        width: 100%;
    }
.product-recommendations__skeleton-item {
        min-height: 18rem;
        background: rgb(var(--color-foreground-rgb, 0 0 0) / 0.08);
    }
.customer-reviews-section {
        display: block;
    }
.customer-reviews {
        display: block;
        width: 100%;
    }
.customer-reviews__content {
        display: grid;
        gap: var(--gap, 28px);
        width: 100%;
    }
.customer-reviews__content + .customer-reviews__list,
    .customer-reviews__content + .customer-reviews__list-wrapper,
    .customer-reviews__content + .customer-reviews__empty {
        margin-block-start: var(--gap, 28px);
    }
.customer-reviews__empty p,
    .customer-reviews__comment,
    .customer-reviews__reply p {
        margin: 0;
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-subdued-text));
        font-size: var(--font-paragraph--size);
        line-height: var(--font-paragraph--line-height);
    }
.customer-reviews__stars {
        --star-size: 1rem;
        display: flex;
        align-items: center;
        gap: var(--gap-3xs);
        color: var(--star-fill-color);
    }
.customer-reviews__stars--small {
        --star-size: 0.875rem;
    }
.customer-reviews__half-star {
        position: relative;
        display: inline-grid;
    }
.customer-reviews__half-star > * {
        grid-area: 1 / 1;
    }
.customer-reviews__half-star > span {
        display: inline-grid;
        overflow: hidden;
    }
.customer-reviews__breakdown-block {
        display: grid;
        gap: var(--gap-2xs);
        max-width: 100%;
    }
.customer-reviews__breakdown-block--width-fill {
        width: 100%;
    }
.customer-reviews__breakdown-row {
        display: grid;
        grid-template-columns: 1.5rem minmax(0, 1fr) 2rem;
        align-items: center;
        gap: var(--gap-xs);
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-75));
        font-size: var(--font-size--xs);
    }
.customer-reviews__breakdown-track {
        height: 0.25rem;
        overflow: hidden;
        background: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-20));
    }
.customer-reviews__breakdown-track span {
        display: block;
        height: 100%;
        background: var(--customer-reviews-breakdown-fill, var(--color-primary));
    }
.customer-reviews__list {
        display: grid;
        gap: var(--gap, 28px);
        width: 100%;
    }
.customer-reviews__list-wrapper {
        display: grid;
        gap: var(--gap, 28px);
        justify-items: start;
        width: 100%;
    }
.customer-reviews__list-item {
        display: contents;
    }
.customer-reviews__list-item[hidden] {
        display: none;
    }
.customer-reviews__show-more {
        justify-self: start;
    }
.customer-reviews__show-more.size-style.button-secondary {
        width: var(--size-style-width-mobile, var(--size-style-width));
    }
.customer-reviews__form-overlay {
        position: fixed;
        inset: 0;
        z-index: 900;
        display: grid;
        place-items: end center;
        padding: var(--gap-sm);
    }
.customer-reviews__form-overlay[hidden] {
        display: none;
    }
.customer-reviews__form-scrim {
        position: absolute;
        inset: 0;
        background: rgb(0 0 0 / var(--review-form-overlay-opacity, 0.42));
    }
.customer-reviews__form-panel {
        position: relative;
        display: grid;
        gap: clamp(1rem, var(--gap, 16px), 1.75rem);
        box-sizing: border-box;
        width: min(100%, 39rem);
        min-width: 0;
        max-width: 100%;
        max-height: min(92svh, 46rem);
        overflow: auto;
        background: var(--color-background);
        color: var(--color-foreground);
        padding-block: var(--review-form-padding-block, clamp(1.25rem, 4vw, 2.5rem));
        padding-inline: var(--review-form-padding-inline, clamp(1.25rem, 4vw, 2.5rem));
        border: var(--review-form-border-width, 1px) solid rgb(var(--color-border-rgb, 0 0 0) / var(--review-form-border-opacity, 0.16));
        border-radius: var(--review-form-border-radius, 0px);
        box-shadow: 0 1.5rem 4rem rgb(0 0 0 / 0.22);
    }
.customer-reviews__form-close {
        position: absolute;
        inset-block-start: clamp(0.75rem, 3vw, 1.1rem);
        inset-inline-end: clamp(0.75rem, 3vw, 1.1rem);
        display: grid;
        place-items: center;
        width: 2.25rem;
        height: 2.25rem;
        border: none;
        border-radius: var(--review-form-close-radius, 0px);
        background: rgb(var(--color-foreground-rgb, 0 0 0) / var(--review-form-close-background-opacity, 0.04));
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-75));
        cursor: pointer;
        padding: 0;
    }
.customer-reviews__form-close span {
        position: relative;
        display: block;
        width: 1rem;
        height: 1rem;
    }
.customer-reviews__form-close span::before,
    .customer-reviews__form-close span::after {
        content: '';
        position: absolute;
        inset-block-start: 50%;
        inset-inline-start: 50%;
        width: 1rem;
        height: 1px;
        background: currentColor;
        transform-origin: center;
    }
.customer-reviews__form-close span::before {
        transform: translate(-50%, -50%) rotate(45deg);
    }
.customer-reviews__form-close span::after {
        transform: translate(-50%, -50%) rotate(-45deg);
    }
.customer-reviews__form-header {
        display: grid;
        gap: var(--gap-sm);
    }
.customer-reviews__form-header .text-block {
        margin: 0;
    }
.customer-reviews__form {
        display: grid;
        gap: clamp(1rem, var(--gap, 16px), 1.5rem);
    }
.customer-reviews__form-progress {
        display: grid;
        justify-items: start;
        width: 100%;
    }
.customer-reviews__form-progress-track {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: var(--review-form-progress-gap, var(--gap-xs));
        width: var(--review-form-progress-width, -moz-fit-content);
        width: var(--review-form-progress-width, fit-content);
        min-width: -moz-fit-content;
        min-width: fit-content;
        max-width: 100%;
    }
.customer-reviews__form-progress-step {
        display: grid;
        gap: var(--gap-3xs);
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-45));
        line-height: 1.2;
        min-width: 0;
    }
.customer-reviews__form-progress-step:not(:first-child):not(:last-child) {
        justify-items: center;
        text-align: center;
    }
.customer-reviews__form-progress-step:last-child {
        justify-items: end;
        text-align: end;
    }
.customer-reviews__form-progress-number {
        display: inline-grid;
        place-items: center;
        width: var(--review-form-progress-number-size, 1.65rem);
        height: var(--review-form-progress-number-size, 1.65rem);
        border: 1px solid rgb(var(--color-border-rgb, 0 0 0) / 0.28);
        border-radius: var(--review-form-progress-number-radius, 0px);
        color: inherit;
        font-size: var(--font-size--xs);
    }
.customer-reviews__form-progress-label {
        color: inherit;
    }
.customer-reviews__form-progress-step[data-upstorr-review-step-indicator='active'] {
        color: var(--color-foreground);
    }
.customer-reviews__form-progress-step[data-upstorr-review-step-indicator='complete'] {
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-75));
    }
.customer-reviews__form-progress-step[data-upstorr-review-step-indicator='active'] .customer-reviews__form-progress-number {
        border-color: var(--color-foreground);
        background: var(--color-foreground);
        color: var(--color-background);
    }
.customer-reviews__form-progress-step[data-upstorr-review-step-indicator='complete'] .customer-reviews__form-progress-number {
        border-color: var(--color-foreground);
        background: transparent;
        color: var(--color-foreground);
    }
.customer-reviews__form-slides {
        display: grid;
        min-height: clamp(20rem, 48svh, 28rem);
    }
.customer-reviews__form-slide {
        display: grid;
        grid-template-rows: minmax(0, 1fr) auto;
        gap: var(--gap, 16px);
        min-height: inherit;
        align-content: stretch;
    }
.customer-reviews__form-slide[hidden] {
        display: none;
    }
.customer-reviews__form-slide-body {
        display: grid;
        align-content: center;
        gap: var(--gap, 16px);
        min-width: 0;
    }
.customer-reviews__form-slide--position-top .customer-reviews__form-slide-body {
        align-content: start;
    }
.customer-reviews__form-slide--position-bottom .customer-reviews__form-slide-body {
        align-content: end;
    }
.customer-reviews__form label {
        margin: 0;
    }
.customer-reviews__form-slide-body .text-block {
        margin: 0;
    }
.customer-reviews__form-slide-body .text-block:first-child {
        color: var(--color-foreground-heading);
        font-family: var(--font-heading--family);
        font-size: clamp(1.35rem, 6vw, var(--font-size--2xl));
        line-height: var(--line-height--sm);
        letter-spacing: 0;
    }
.customer-reviews__form-slide-body .text-block:not(:first-child) {
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-subdued-text));
    }
.customer-reviews__form :is(input:not([type='radio']):not([type='file']), textarea) {
        width: 100%;
        border: 1px solid rgb(var(--color-border-rgb, 0 0 0) / 0.22);
        background: rgb(var(--color-foreground-rgb, 0 0 0) / 0.035);
        color: var(--color-foreground);
        padding: 0.9rem 1rem;
        font: inherit;
    }
.customer-reviews__form textarea {
        resize: vertical;
    }
.customer-reviews__rating-input {
        display: grid;
        justify-items: start;
        width: 100%;
        max-width: 100%;
    }
.customer-reviews__rating-input-track {
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between;
        gap: var(--review-form-rating-gap, var(--gap-xs));
        width: var(--review-form-rating-width, -moz-fit-content);
        width: var(--review-form-rating-width, fit-content);
        min-width: 0;
        max-width: 100%;
    }
.customer-reviews__rating-input label {
        flex: 0 1 var(--review-form-rating-size, 3.4rem);
        min-width: 0;
    }
.customer-reviews__rating-input input {
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }
.customer-reviews__rating-input span {
        display: inline-grid;
        place-items: center;
        width: min(100%, var(--review-form-rating-size, 3.4rem));
        max-width: 100%;
        aspect-ratio: 1;
        cursor: pointer;
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-35));
        font-size: 0;
        border: 1px solid rgb(var(--color-border-rgb, 0 0 0) / 0.14);
    }
.customer-reviews__rating-input span::before {
        content: '★';
        font-size: clamp(1.35rem, 6vw, 2rem);
    }
.customer-reviews__rating-input label:has(input:checked) span,
    .customer-reviews__rating-input label:has(input:checked) ~ label span {
        color: var(--star-fill-color);
    }
.customer-reviews__media-upload,
    .customer-reviews__form-slide--media .customer-reviews__form-slide-body {
        display: grid;
        gap: var(--gap-sm);
    }
.customer-reviews__media-upload [data-upstorr-review-media-count] {
        margin: 0;
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-60));
    }
.customer-reviews__media-upload-input {
        position: absolute;
        inline-size: 1px;
        block-size: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        clip-path: inset(50%);
        white-space: nowrap;
    }
.customer-reviews__media-upload-button {
        display: inline-flex;
        justify-content: center;
        width: 100%;
        cursor: pointer;
    }
.customer-reviews__media-upload-button:has(.customer-reviews__media-upload-input:focus-visible) {
        outline: 2px solid var(--color-foreground);
        outline-offset: 2px;
    }
.customer-reviews__form-message {
        margin: 0;
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-75));
    }
.customer-reviews__form-message[data-state='error'] {
        color: var(--color-error, #b00020);
    }
.customer-reviews__form-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: var(--gap-sm);
        margin-block-start: var(--gap-xs);
        width: 100%;
    }
.customer-reviews__form-actions-left,
    .customer-reviews__form-actions-right {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: var(--gap-sm);
        min-width: 0;
    }
.customer-reviews__form-actions-right {
        justify-content: flex-end;
    }
.customer-reviews__form-actions .button,
    .customer-reviews__form-actions .button-secondary {
        min-height: 3rem;
    }
.customer-reviews__form-actions--final .customer-reviews__form-actions-left {
        justify-content: flex-start;
    }
.customer-reviews__form-submit--full {
        justify-content: center;
        width: 100%;
    }
@media screen and (max-width: 749px) {
        .customer-reviews__form-progress-track,
        .customer-reviews__rating-input-track {
            width: 100%;
            min-width: 0;
        }

        .customer-reviews__form-progress-step {
            flex: 1 1 0;
        }

        .customer-reviews__rating-input label {
            flex: 1 1 0;
        }
    }
.customer-reviews__card,
    .customer-reviews__empty {
        display: grid;
        gap: var(--gap, var(--gap-md));
        background: var(--color-background);
    }
.customer-reviews__card-header {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: var(--gap-md);
    }
.customer-reviews__card-header > div {
        display: grid;
        gap: var(--gap-xs);
        min-width: 0;
    }
.customer-reviews__card-header h3 {
        margin: 0;
        color: var(--color-foreground-heading);
        font-family: var(--font-heading--family);
        font-size: var(--font-size--lg);
        font-weight: var(--font-heading--weight);
        line-height: var(--line-height--heading, var(--line-height--heading-normal));
        letter-spacing: 0;
        overflow-wrap: anywhere;
    }
.customer-reviews__media {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(min(9rem, 100%), 1fr));
        gap: var(--gap-sm);
    }
.customer-reviews__media :is(img, video) {
        display: block;
        width: 100%;
        aspect-ratio: 1;
        -o-object-fit: cover;
           object-fit: cover;
        background: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-5));
    }
.customer-reviews__card-header time,
    .customer-reviews__reviewer,
    .customer-reviews__reply span {
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-subdued-text));
        font-size: var(--font-size--xs);
        white-space: nowrap;
    }
.customer-reviews__reviewer {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: var(--gap-xs);
        white-space: normal;
    }
.customer-reviews__verified,
    .customer-reviews__reply span {
        color: var(--color-foreground);
        font-style: italic;
    }
.customer-reviews__reply {
        display: grid;
        gap: var(--gap-xs);
        padding-block-start: var(--padding-md);
        border-block-start: 1px solid rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-10));
    }
.customer-reviews__empty {
        justify-items: start;
        padding: var(--padding-lg);
        border: 1px solid rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-20));
    }
.variant-picker {
        display: grid;
        gap: var(--gap-sm);
        width: 100%;
        padding-block: var(--padding-block-start) var(--padding-block-end);
        padding-inline: var(--padding-inline-start) var(--padding-inline-end);
    }
.variant-option {
        border: 0;
        margin: 0;
        padding: 0;
    }
.variant-option__legend {
        margin: 0 0 var(--padding-xs);
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-subdued-text));
        font-size: var(--font-size--sm);
    }
.variant-option__buttons {
        display: flex;
        flex-wrap: wrap;
        gap: var(--gap-xs);
        justify-content: inherit;
    }
.variant-option__button-label,
    .variant-option__select {
        min-height: var(--button-size-sm);
        padding: var(--padding-xs) var(--padding-sm);
        border: var(--variant-picker-button-border-width) solid var(--color-variant-border);
        border-radius: var(--variant-picker-button-radius);
        background: var(--color-variant-background);
        color: var(--color-variant-text);
        font: inherit;
    }
.variant-option__button-label {
        display: inline-flex;
        align-items: center;
        gap: var(--gap-xs);
        cursor: pointer;
    }
.variant-option__button-label--selected {
        background: var(--color-selected-variant-background);
        color: var(--color-selected-variant-text);
        border-color: var(--color-selected-variant-border);
    }
.variant-option__button-label:disabled {
        cursor: not-allowed;
        opacity: var(--opacity-disabled);
    }
.variant-option__button-label:hover:not(:disabled) {
        background: var(--color-variant-hover-background);
        color: var(--color-variant-hover-text);
        border-color: var(--color-variant-hover-border);
    }
.variant-option__button-label--selected:hover:not(:disabled) {
        background: var(--color-selected-variant-hover-background);
        color: var(--color-selected-variant-hover-text);
        border-color: var(--color-selected-variant-hover-border);
    }
.variant-option--equal-width-buttons .variant-option__button-label {
        flex: 1 1 0;
        justify-content: center;
    }
.variant-option__select {
        width: 100%;
    }
product-custom-property-component .__heading {
        margin-inline: 0;
        margin-block: 0 var(--padding-sm);
    }
product-custom-property-component .__heading:has(+ .__description) {
        margin-block-end: var(--padding-2xs);
    }
product-custom-property-component .__description {
        font-size: min(0.85em, var(--font-paragraph--size));
        color: rgb(var(--color-foreground-rgb, 0 0 0) / var(--opacity-subdued-text));
        margin-inline: 0;
        margin-block: 0 var(--padding-md);
    }
product-custom-property-component .__field,
    product-custom-property-component .__input-wrapper {
        position: relative;
    }
product-custom-property-component input,
    product-custom-property-component textarea {
        width: 100%;
        color: var(--color-input-text);
    }
product-custom-property-component .__input-wrapper input,
    product-custom-property-component .__input-wrapper textarea {
        box-sizing: border-box;
        -moz-appearance: none;
             appearance: none;
        -webkit-appearance: none;
        min-height: 48px;
        background: var(--color-input-background);
        border: var(--account-input-border-width, var(--style-border-width-inputs, 1px)) var(--account-input-border-style, solid) color-mix(in srgb, var(--color-input-border) var(--account-input-border-opacity-percent, 45%), transparent);
        border-radius: var(--account-input-border-radius, var(--style-border-radius-inputs, 0));
        box-shadow: none;
        font: inherit;
        padding: 0 14px;
    }
product-custom-property-component .__input-wrapper input::-moz-placeholder, product-custom-property-component .__input-wrapper textarea::-moz-placeholder {
        font-family: var(--account-placeholder-font-family, var(--font-paragraph--family));
        font-weight: var(--account-placeholder-font-weight, var(--font-paragraph--weight));
        font-size: var(--account-placeholder-font-size, var(--font-paragraph--size));
        line-height: var(--account-placeholder-line-height, var(--font-paragraph--line-height));
        letter-spacing: var(--account-placeholder-letter-spacing, normal);
        text-transform: var(--account-placeholder-text-transform, none);
        color: var(--account-placeholder-color, rgb(var(--color-foreground-rgb) / 0.42));
    }
product-custom-property-component .__input-wrapper input::placeholder,
    product-custom-property-component .__input-wrapper textarea::placeholder {
        font-family: var(--account-placeholder-font-family, var(--font-paragraph--family));
        font-weight: var(--account-placeholder-font-weight, var(--font-paragraph--weight));
        font-size: var(--account-placeholder-font-size, var(--font-paragraph--size));
        line-height: var(--account-placeholder-line-height, var(--font-paragraph--line-height));
        letter-spacing: var(--account-placeholder-letter-spacing, normal);
        text-transform: var(--account-placeholder-text-transform, none);
        color: var(--account-placeholder-color, rgb(var(--color-foreground-rgb) / 0.42));
    }
product-custom-property-component .__input-wrapper input:focus-visible,
    product-custom-property-component .__input-wrapper textarea:focus-visible {
        border-color: var(--color-input-text);
        outline: none;
    }
product-custom-property-component textarea {
        min-height: 80px;
        padding: 14px;
    }
.card-gallery {
        position: relative;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
        aspect-ratio: var(--gallery-aspect-ratio, 1 / 1);
        container-type: inline-size;
        container-name: card-gallery-container;
        background: rgb(var(--color-foreground-rgb, 0 0 0) / 0.05);
        border-radius: var(--border-radius);
    }
.product-card-gallery__title-placeholder {
        width: 100%;
        height: 100%;
        background-color: rgb(var(--color-foreground-rgb, 0 0 0) / 0.05);
    }
.product-title .text-block {
        text-transform: var(--product-title-case);
    }
.card-gallery__media {
        position: absolute;
        inset: 0;
        opacity: 1;
        transition: opacity var(--animation-speed) var(--ease-out-cubic), transform var(--hover-transition-duration) var(--hover-transition-timing);
    }
.product-media-container {
        position: relative;
        min-width: 0;
        min-height: 0;
        width: 100%;
        height: 100%;
    }
.product-media__image,
    .card-gallery__media > img {
        display: block;
        width: 100%;
        height: 100%;
        -o-object-fit: var(--product-media-fit, cover);
           object-fit: var(--product-media-fit, cover);
        -o-object-position: var(--focal-point, center center);
           object-position: var(--focal-point, center center);
    }
.card-gallery__media--secondary {
        opacity: 0;
    }
.card-gallery__carousel {
        position: absolute;
        inset: 0;
    }
.card-gallery__media--slide {
        opacity: 0;
        pointer-events: none;
    }
.card-gallery__media--slide[data-active='true'] {
        opacity: 1;
        pointer-events: auto;
    }
.card-gallery__controls {
        position: absolute;
        inset-inline: var(--padding-sm);
        top: 50%;
        z-index: calc(var(--layer-flat) + 2);
        display: flex;
        justify-content: space-between;
        opacity: 0;
        pointer-events: none;
        translate: 0 -50%;
        transition: opacity var(--animation-speed) var(--ease-out-cubic);
    }
.card-gallery[data-product-card-carousel='true']:is(:hover, :focus-within) .card-gallery__controls {
        opacity: 1;
        pointer-events: auto;
    }
.card-gallery[data-show-second-image-on-hover='true']:is(:hover, :focus-within) .card-gallery__media--primary {
        opacity: 0;
    }
.card-gallery[data-show-second-image-on-hover='true']:is(:hover, :focus-within) .card-gallery__media--secondary {
        opacity: 1;
    }
.product-badges {
        --badge-inset: max(var(--padding-xs), calc((var(--border-radius, 0px) + var(--padding-xs)) * 0.2929));
        position: absolute;
        z-index: var(--layer-flat);
    }
.product-badges__badge {
        --badge-font-size: var(--font-size--xs);
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        color: var(--color-foreground);
        background: var(--color-background);
        font-size: var(--badge-font-size);
        font-family: var(--badge-font-family);
        font-weight: var(--badge-font-weight);
        text-transform: var(--badge-text-transform);
        border-radius: var(--badge-border-radius);
    }
.product-badges__badge--rectangle {
        padding-block: var(--badge-rectangle-padding-block);
        padding-inline: var(--badge-rectangle-padding-inline);
    }
.quick-add {
        --quick-add-offset: var(--padding-sm);
        --quick-add-right: calc(var(--quick-add-offset) + var(--padding-inline-end, 0px));
        --quick-add-bottom: calc(var(--quick-add-offset) + var(--padding-block-end, 0px));
        position: absolute;
        inset: 0;
        z-index: var(--layer-raised);
        pointer-events: none;
    }
.quick-add[class*='color-scheme-'] {
        background-color: #0000;
    }
.buy-buttons-block {
        --buy-button-preferred-width: 185px;
        width: 100%;
    }
.product-form-buttons {
        display: flex;
        flex-wrap: wrap;
        gap: var(--gap-sm);
    }
.product-form-buttons > *:not(.quantity-selector-wrapper, .quantity-rules, .quantity-label, .volume-pricing, .product-form-text__error) {
        flex: 1 1 var(--buy-button-preferred-width, 0);
        min-width: -moz-fit-content;
        min-width: fit-content;
    }
.product-form-buttons > .quantity-selector-wrapper {
        order: 1;
    }
.product-form-buttons > .add-to-cart-block {
        order: 3;
        flex: 1 0 100%;
        min-width: 100%;
    }
.product-form-buttons > .add-to-cart-block > .add-to-cart-component {
        display: block;
        width: 100%;
    }
.product-form-buttons--stacked > *:not(.quantity-selector-wrapper, .quantity-rules, .quantity-label, .volume-pricing, .product-form-text__error) {
        flex-basis: 51%;
    }
.product-form-buttons button {
        width: 100%;
        padding-block: var(--padding-lg);
    }
.product-form-buttons > .product-wishlist-button-wrapper {
        order: 2;
        flex: 1 1 0;
        min-width: 0;
    }
.product-form-buttons .product-wishlist-button {
        width: 100%;
        min-width: 0;
        padding-inline: var(--padding-md);
    }
.add-to-cart-button {
        height: var(--height-buy-buttons);
        text-transform: var(--button-text-case-primary);
        -webkit-user-select: none;
           -moz-user-select: none;
                user-select: none;
        transition-property: color, box-shadow, background-color, scale, translate;
        transition-duration: var(--animation-speed);
        transition-timing-function: var(--ease-out-cubic);
    }
.add-to-cart-button.button-secondary {
        text-transform: var(--button-text-case-secondary);
    }
.add-to-cart-button:active {
        scale: 0.99;
        translate: 0 1px;
    }
.add-to-cart-button .add-to-cart-text {
        display: flex;
        gap: var(--gap-2xs);
        align-items: center;
        justify-content: center;
    }
.add-to-cart-button .add-to-cart-icon {
        width: var(--icon-size-sm);
        height: var(--icon-size-sm);
    }
.product-wishlist-button .wishlist-button-icon {
        flex: 0 0 auto;
        width: var(--icon-size-sm);
        height: var(--icon-size-sm);
    }
.product-wishlist-button .add-to-cart-text__content {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.product-wishlist-button .wishlist-button-icon svg {
        fill: none;
        stroke: currentColor;
        stroke-width: 1.75;
    }
.product-wishlist-button[aria-pressed='true'] .wishlist-button-icon svg {
        fill: currentColor;
    }
.quantity-selector-wrapper {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: calc(var(--gap-sm) / 2);
        flex-grow: 0;
        flex-shrink: 0;
    }
@media screen and (min-width: 750px) {
        .quantity-selector-wrapper {
            gap: var(--gap-sm);
        }
    }
.quantity-selector {
        --quantity-selector-width: 124px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: var(--quantity-selector-width);
        height: var(--height-buy-buttons);
        color: var(--color-input-text);
        background-color: var(--color-input-background);
        border: var(--style-border-width-inputs) solid var(--color-input-border);
        border-radius: var(--style-border-radius-inputs);
        flex: 1 1 var(--quantity-selector-width);
        align-self: stretch;
        transition: background-color var(--animation-speed) var(--animation-easing);
    }
.quantity-selector:hover {
        background-color: var(--color-input-hover-background);
    }
.product-form-buttons:has(.add-to-cart-button.button-secondary) .quantity-selector {
        border-radius: var(--style-border-radius-buttons-secondary);
    }
.quantity-selector :is(.quantity-minus, .quantity-plus) {
        display: flex;
        align-items: center;
        justify-content: center;
        width: var(--minimum-touch-target);
        height: var(--minimum-touch-target);
        padding: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
        color: var(--color-input-text);
        cursor: pointer;
        flex-shrink: 0;
    }
.quantity-selector .quantity-minus {
        border-start-start-radius: var(--style-border-radius-inputs);
        border-end-start-radius: var(--style-border-radius-inputs);
    }
.quantity-selector .quantity-plus {
        border-start-end-radius: var(--style-border-radius-inputs);
        border-end-end-radius: var(--style-border-radius-inputs);
    }
.product-details .quantity-selector,
    .quick-add-modal .quantity-selector {
        border-radius: var(--style-border-radius-buttons-primary);
    }
.product-details .quantity-selector .quantity-minus,
    .quick-add-modal .quantity-selector .quantity-minus {
        border-start-start-radius: var(--style-border-radius-buttons-primary);
        border-end-start-radius: var(--style-border-radius-buttons-primary);
    }
.product-details .quantity-selector .quantity-plus,
    .quick-add-modal .quantity-selector .quantity-plus {
        border-start-end-radius: var(--style-border-radius-buttons-primary);
        border-end-end-radius: var(--style-border-radius-buttons-primary);
    }
.quantity-selector input[type='number'] {
        max-width: calc(var(--quantity-selector-width) - var(--minimum-touch-target) * 2);
        border: 0;
        background: transparent;
        color: var(--color-input-text);
        text-align: center;
        outline: none;
        -webkit-appearance: textfield;
           -moz-appearance: textfield;
                appearance: textfield;
    }
.quantity-selector input[type='number']::-webkit-inner-spin-button,
    .quantity-selector input[type='number']::-webkit-outer-spin-button {
        -webkit-appearance: none;
                appearance: none;
        margin: 0;
    }
.cart-page-section {
        --padding-md: 0.8rem;
        --padding-4xl: 2rem;
        --padding-5xl: 3rem;
        --gap-xl: 1.25rem;
        --gap-2xl: 2rem;
        --margin-3xs: 0.125rem;
        --margin-xl: 1.25rem;
        position: relative;
    }
.cart-page {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0 var(--padding-5xl);
        width: 100%;
    }
.cart-page--empty {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
.cart-page--empty .cart-page__title,
    .cart-page--empty .cart-page__more-blocks {
        margin-top: var(--margin-6xl);
    }
.cart-page__more-blocks {
        width: 100%;
    }
.cart-page--empty .cart-title {
        text-align: center;
    }
.cart-page__summary {
        padding-top: var(--padding-xl);
    }
.cart-page__title + .cart-page__items {
        margin-block-start: var(--margin-lg);
    }
.cart-title h1 {
        display: inline-flex;
        align-items: center;
        gap: var(--gap-sm);
        margin-block-end: 0;
        overflow: visible;
    }
.cart-title .cart-bubble {
        --cart-padding: 0.08em;
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: -moz-fit-content;
        width: fit-content;
        min-width: min(1lh, 26px);
        min-height: min(1lh, 26px);
        padding-block: var(--cart-padding);
        padding-inline: var(--cart-padding);
        border-radius: 100px;
        line-height: 1;
        overflow: visible;
    }
.cart-title .cart-bubble[data-maintain-ratio] {
        width: min(1lh, 26px);
        height: min(1lh, 26px);
        padding: 0;
    }
.cart-title .cart-bubble__background {
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10-25));
        transform: translateY(-0.04em);
    }
.cart-title .cart-bubble__text {
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
        color: var(--color-foreground);
        font-family: var(--font-paragraph--family);
        font-weight: var(--font-paragraph--weight);
        font-size: clamp(var(--font-size--3xs), 0.75em, var(--font-size--xs));
    }
.cart-items {
        --cart-item-media-width-min: 2.5rem;
        --cart-item-media-width-max: 7.5rem;
        container-name: cart-items;
        container-type: inline-size;
        width: 100%;
    }
.cart-items__table {
        width: 100%;
        border-spacing: 0;
    }
.cart-items__table * {
        margin: 0;
    }
.cart-page--empty .cart-items__wrapper {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-block-start: 0;
        text-align: center;
    }
.cart-items__table-row {
        --cart-item-price-width: 6rem;
        --cart-item-quantity-selector-width: 124px;
        display: grid;
        grid-template-columns: clamp(2.5rem, 15cqi, 7.5rem) minmax(0, 1fr) minmax(var(--cart-item-price-width), auto);
        grid-template-areas:
            "media details price"
            "media quantity price"
            "media error error";
        -moz-column-gap: var(--gap-md);
             column-gap: var(--gap-md);
        align-items: start;
        padding-bottom: var(--cart-items-gap, 24px);
        margin-bottom: var(--cart-items-gap, 24px);
    }
.cart-items--dividers .cart-items__table-row {
        border-bottom: 1px solid var(--color-border);
    }
.cart-items__table-row:last-of-type {
        padding-bottom: 0;
        margin-bottom: 0;
        border-block-end: none;
    }
.cart-items__media {
        grid-area: media;
        padding: 0;
    }
.cart-items__media-container {
        display: flex;
        position: relative;
        width: 100%;
        overflow: hidden;
        background: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
    }
.cart-items__media-image {
        width: 100%;
        height: auto;
        border-style: var(--cart-thumbnail-border-style);
        border-width: var(--cart-thumbnail-border-width);
        border-color: rgb(var(--color-border-rgb) / var(--cart-thumbnail-border-opacity));
        border-radius: var(--cart-thumbnail-border-radius);
        -o-object-fit: cover;
           object-fit: cover;
        -o-object-position: center center;
           object-position: center center;
    }
.cart-items__details {
        grid-area: details;
        color: rgb(var(--color-foreground-rgb) / var(--opacity-70));
    }
.cart-items__details > * + *,
    .cart-items__bundle li {
        margin-block-start: var(--margin-3xs);
    }
.cart-items__details * {
        font-size: var(--font-size--sm);
    }
.cart-items__details a {
        text-decoration: none;
    }
.cart-items__title {
        display: block;
        color: var(--color-foreground);
        font-size: var(--font-size--md);
        margin-block-start: calc((var(--font-size--md) - 1lh) / 2);
        text-transform: var(--product-title-case);
    }
.cart-items__variants,
    .cart-items__properties {
        display: block;
    }
.cart-items__variant,
    .cart-items__variant dt,
    .cart-items__variant dd,
    .cart-items__property dt,
    .cart-items__property dd {
        display: inline;
        margin: 0;
    }
.cart-items__variant:not(:last-child)::after {
        content: ", ";
    }
.cart-items__property:not(:last-child)::after {
        content: " ";
    }
.cart-items__booking-details {
        display: grid;
        justify-items: start;
        gap: 3px;
        margin-block-start: var(--margin-xs);
        color: var(--color-foreground);
    }
.cart-items__booking-details time,
    .cart-items__booking-units {
        line-height: 1.4;
    }
.cart-items__booking-date,
    .cart-items__booking-time {
        display: block;
        white-space: nowrap;
    }
.cart-items__booking-details--with-remove {
        grid-template-columns: var(--cart-item-quantity-selector-width) var(--minimum-touch-target);
        -moz-column-gap: var(--gap-xs);
             column-gap: var(--gap-xs);
        align-items: center;
        width: -moz-fit-content;
        width: fit-content;
    }
.cart-items__booking-details--with-remove :is(time, .cart-items__booking-units) {
        grid-column: 1;
        min-width: 0;
        overflow-wrap: anywhere;
    }
.cart-items__booking-actions {
        display: flex;
        align-items: center;
        grid-column: 2;
        grid-row: 1;
        align-self: center;
    }
.cart-items__quantity.cart-items__quantity--fixed-wide {
        display: none;
    }
.cart-items__quantity {
        grid-area: quantity;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        width: -moz-fit-content;
        width: fit-content;
        margin-block-start: var(--margin-xs);
    }
.cart-items__quantity-controls {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: var(--gap-xs);
        width: -moz-fit-content;
        width: fit-content;
    }
.cart-items__quantity-controls--remove-only::before {
        content: "";
        flex: 0 0 var(--cart-item-quantity-selector-width);
    }
.cart-items__table-row--booking .cart-items__quantity-controls {
        max-width: 100%;
        flex-wrap: wrap;
    }
.cart-items__quantity .quantity-selector {
        --quantity-selector-width: var(--cart-item-quantity-selector-width);
        display: inline-flex;
        height: auto;
        min-height: var(--minimum-touch-target);
        font-size: var(--font-size--sm);
    }
.cart-items__remove {
        width: var(--minimum-touch-target);
        height: var(--minimum-touch-target);
        padding: 0;
        place-items: center;
        justify-content: center;
        background-color: transparent;
        color: var(--color-foreground);
        box-shadow: none;
    }
.remove-icon-bottom,
    .remove-icon-top {
        transition: transform var(--animation-speed) var(--animation-easing);
    }
.cart-items__remove:hover .remove-icon-top {
        transform: translate(calc(-1 * var(--icon-stroke-width)), var(--icon-stroke-width)) rotate(-15deg);
    }
.cart-items__remove:is(:hover, :active) .remove-icon-bottom {
        transform: translateY(var(--icon-stroke-width));
    }
.cart-items__price {
        grid-area: price;
        display: block;
        min-width: var(--cart-item-price-width);
        min-height: unset;
        color: var(--color-foreground);
        font-size: var(--font-size--sm);
        line-height: var(--line-height);
        text-align: end;
    }
.cart-items__error {
        grid-area: error;
    }
.cart-primary-typography {
        font-family: var(--cart-primary-font-family);
        font-style: var(--cart-primary-font-style);
        font-weight: var(--cart-primary-font-weight);
    }
.cart-secondary-typography {
        font-family: var(--cart-secondary-font-family);
        font-style: var(--cart-secondary-font-style);
        font-weight: var(--cart-secondary-font-weight);
    }
.cart-items__empty-button {
        margin-top: var(--margin-md);
        padding-inline: var(--padding-4xl);
        padding-block: var(--padding-lg);
    }
.cart-summary__inner {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: var(--gap-2xl);
        width: 100%;
        box-sizing: border-box;
        container-type: inline-size;
        padding: 0;
        position: sticky;
        top: 0;
        align-self: start;
        background: var(--color-background);
        color: var(--color-foreground);
    }
.cart-summary {
        background: transparent;
        color: inherit;
    }
.cart-summary--extend {
        height: 100%;
    }
.cart-summary--extend .cart-summary__inner {
        height: 100%;
        padding: var(--padding-md) 0 var(--padding-4xl);
    }
.cart-summary__inner.has-border-radius {
        border-radius: var(--border-radius);
    }
.cart-totals {
        display: flex;
        flex-direction: column;
        gap: var(--gap-xl);
        width: 100%;
        border-block-start: none;
    }
.cart-totals:not(:has(.cart-actions)) {
        margin-block-start: var(--margin-3xs);
        border-block-start: 1px solid var(--color-border);
        padding-block-start: var(--margin-xl);
    }
.cart-actions {
        display: flex;
        flex-direction: column;
        gap: 0;
        margin-block-start: var(--margin-3xs);
        padding-block: 0;
        border-block: 1px solid var(--color-border);
    }
.cart-actions__divider {
        border-block-start: 1px solid var(--color-border);
    }
.cart-note {
        width: 100%;
    }
.cart-note__summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-block: var(--padding-sm);
        cursor: pointer;
        list-style: none;
    }
.cart-note__summary::-webkit-details-marker {
        display: none;
    }
.cart-note__summary:hover {
        color: rgb(var(--color-foreground-rgb) / var(--opacity-subdued-text));
    }
.cart-note__label {
        display: flex;
        align-items: flex-start;
        gap: var(--gap-2xs);
        font-size: var(--font-size--2xs);
        font-weight: 500;
    }
.cart-note__inner {
        padding-block: var(--padding-2xs) var(--padding-sm);
    }
.cart-note__instructions {
        width: 100%;
        min-width: 100%;
        max-width: 100%;
        min-height: 5.5rem;
        padding: max(4px, calc(var(--style-border-radius-inputs) * (1 - cos(45deg))));
        border-style: solid;
        border-width: var(--style-border-width-inputs);
        border-color: var(--color-input-border);
        border-radius: var(--style-border-radius-inputs);
        background-color: var(--color-input-background);
        color: var(--color-input-text);
        font-family: var(--cart-primary-font-family);
        font-style: var(--cart-primary-font-style);
        font-weight: var(--cart-primary-font-weight);
        font-size: var(--font-size--sm);
        box-shadow: var(--input-box-shadow);
        resize: vertical;
    }
.cart-discount {
        width: 100%;
    }
.cart-discount__summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-block: var(--padding-sm);
        cursor: pointer;
        list-style: none;
    }
.cart-discount__summary::-webkit-details-marker {
        display: none;
    }
.cart-discount__label {
        display: flex;
        align-items: flex-start;
        gap: var(--gap-2xs);
        font-size: var(--font-size--2xs);
        font-weight: 500;
    }
.cart-drawer__summary .cart-discount__label,
    .cart-drawer__summary .cart-totals__total-label {
        font-size: 1.125rem;
    }
.cart-totals__icon {
        width: var(--icon-size-xs);
        height: var(--icon-size-xs);
        margin: 0;
        line-height: 1;
    }
.cart-discount__content {
        height: calc(var(--button-size) + var(--padding-2xs) + var(--padding-sm));
    }
.cart-discount__form {
        display: flex;
        align-items: center;
        gap: var(--padding-md);
        height: 100%;
        padding-block: var(--padding-2xs) var(--padding-sm);
    }
.cart-discount__input {
        flex-grow: 1;
        min-width: 0;
        height: 100%;
        padding: var(--padding-sm) var(--padding-md);
        border-style: solid;
        border-width: var(--style-border-width-inputs);
        border-color: var(--color-input-border);
        border-radius: var(--style-border-radius-inputs);
        background-color: var(--color-input-background);
        color: var(--color-input-text);
        font-family: var(--cart-primary-font-family);
        font-style: var(--cart-primary-font-style);
        font-weight: var(--cart-primary-font-weight);
        font-size: var(--font-size--sm);
    }
.cart-discount__input::-moz-placeholder {
        color: rgb(var(--color-input-text-rgb) / var(--opacity-subdued-text));
    }
.cart-discount__input::placeholder {
        color: rgb(var(--color-input-text-rgb) / var(--opacity-subdued-text));
    }
.cart-discount__button {
        height: 100%;
    }
.cart-discount__error {
        display: flex;
        align-items: flex-start;
        width: 100%;
        padding-block: var(--padding-2xs);
        color: var(--color-foreground);
        font-size: var(--font-size--sm);
    }
.cart-discount__error[data-state="error"] {
        color: rgb(153 27 27);
    }
.cart-discount__error[data-state="success"] {
        color: rgb(22 101 52);
    }
.cart-discount__codes {
        display: none;
        gap: var(--padding-xs);
        flex-wrap: wrap;
        list-style: none;
        padding-inline: 0;
        margin: 0;
    }
.cart-totals__item {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
.cart-totals__original-container:empty {
        display: none;
    }
.cart-totals__container {
        display: flex;
        flex-direction: column;
        row-gap: var(--gap-2xs);
    }
.cart-totals__total-label {
        font-size: var(--cart-font-size--sm);
    }
.cart-totals__line-label,
    .cart-totals__line-value {
        min-width: 0;
        font-size: var(--cart-font-size--sm);
    }
.cart-totals__line-label {
        padding-inline-end: var(--gap-sm);
    }
.cart-totals__line-value,
    .cart-totals__total-value {
        flex-shrink: 0;
        white-space: nowrap;
    }
.cart-totals__total-value {
        font-size: var(--font-size--lg);
    }
.cart__ctas {
        display: grid;
        grid-auto-flow: row;
        grid-template-columns: 1fr;
        gap: var(--checkout-button-gap);
        width: 100%;
    }
.cart__ctas .cart__checkout-button.button:not(.button-unstyled) {
        display: grid;
        width: 100%;
        height: clamp(25px, var(--height-buy-buttons), 55px);
        padding-inline: var(--padding-4xl);
    }
.cart__checkout-button--disabled {
        pointer-events: none;
        opacity: 0.5;
    }
@media screen and (min-width: 990px) {
        .cart-page {
            grid-template-columns: 1fr min(50vw, var(--sidebar-width));
            grid-template-rows: min-content min-content 1fr;
        }

        .cart-page__summary {
            display: grid;
            position: relative;
            grid-column: 2;
            grid-row: 1 / -1;
            grid-template-rows: subgrid;
            align-self: stretch;
            height: 100%;
            padding-top: 0;
        }

        .section--page-width .cart-page:has(.cart-summary--extend) {
            grid-column: 2 / 4;
            grid-template-columns: 1fr minmax(var(--sidebar-width), calc((100vw - var(--page-width)) / 2 + var(--sidebar-width)));
        }
    }
@container cart-items (min-width: 990px) {
        .cart-items__table-row {
            grid-template-columns: 7.5rem 1fr 1fr minmax(var(--cart-item-price-width), auto);
            grid-template-rows: min-content 1fr;
            grid-template-areas:
                "media details quantity price"
                "media details error error";
        }

        .cart-items__quantity {
            margin-top: 0;
        }

        .cart-items__booking-details--with-remove {
            grid-template-columns: minmax(0, 1fr);
            width: auto;
        }

        .cart-items__booking-actions {
            display: none;
        }

        .cart-items__quantity.cart-items__quantity--fixed-wide {
            display: flex;
        }

        .cart-items__price {
            display: flex;
            flex-direction: column;
            align-items: flex-end;
            min-height: var(--minimum-touch-target);
        }
    }
@media screen and (min-width: 990px) {
        .cart-summary__inner {
            grid-row: 1 / -1;
            padding: var(--padding-5xl);
        }

        .cart-summary {
            display: grid;
            grid-row: 1 / -1;
            grid-template-rows: subgrid;
        }

        .cart-summary--extend {
            border-top-right-radius: 0;
            border-bottom-right-radius: 0;
            border-right: none;
        }

        .cart-summary--extend:not(.has-border-radius) {
            border-top: none;
            border-bottom: none;
        }

        .cart-summary--extend .cart-summary__inner {
            grid-row: 2 / -1;
            width: var(--sidebar-width);
            padding-inline: var(--page-margin);
        }

        .cart-totals__total-value {
            font-size: var(--cart-font-size--xl);
        }

    }
@media screen and (min-width: 1400px) {
        .cart-page {
            grid-template-columns: 1fr var(--sidebar-width);
        }
    }
@media screen and (max-width: 989px) {
        .cart-page__summary {
            width: 100vw;
            margin-inline: calc(50% - 50vw);
        }

        .cart-page__summary .cart-summary {
            width: 100%;
        }

        .cart-page__summary .cart-summary__inner {
            padding-inline: max(var(--page-margin), calc((100vw - var(--page-content-width)) / 2 + var(--page-margin)));
        }
    }
.product-inventory__status {
        display: flex;
        align-items: center;
        font-size: var(--font-paragraph--size);
        line-height: var(--font-paragraph--line-height);
        gap: var(--padding-xs);
    }
.product-inventory__icon,
    .product-inventory__icon svg {
        width: var(--icon-size-sm);
        height: var(--icon-size-sm);
    }
.product-metafields {
        display: grid;
        gap: 0;
        width: 100%;
        margin: 0;
        font-size: var(--font-paragraph--size);
        color: rgb(var(--color-foreground-rgb) / 0.78);
    }
.product-metafields__row {
        display: grid;
        grid-template-columns: minmax(96px, 0.42fr) minmax(0, 1fr);
        gap: 12px;
        padding-block: 10px;
        border-block-end: 1px solid rgb(var(--color-foreground-rgb) / 0.12);
    }
.product-metafields__row:first-child {
        border-block-start: 1px solid rgb(var(--color-foreground-rgb) / 0.12);
    }
.product-metafields__label,
    .product-metafields__value {
        margin: 0;
        min-width: 0;
    }
.product-metafields__label {
        font-weight: 500;
        color: rgb(var(--color-foreground-rgb) / 0.62);
    }
.product-metafields__value {
        color: rgb(var(--color-foreground-rgb) / 0.9);
        overflow-wrap: anywhere;
    }
.product-metafields--grid .product-metafields__row {
        grid-template-columns: 1fr;
        gap: 4px;
        border: 1px solid rgb(var(--color-foreground-rgb) / 0.12);
        padding: 12px;
    }
@media screen and (max-width: 749px) {
        .product-metafields--grid {
            grid-template-columns: 1fr;
        }

        .product-metafields__row {
            grid-template-columns: 1fr;
            gap: 4px;
        }
    }
.rating-wrapper {
        gap: var(--gap-xs);
        min-width: -moz-fit-content;
        min-width: fit-content;
    }
.rating-color--primary {
        --star-fill-color: var(--color-primary);
        --star-fill-color-rgb: var(--color-primary-rgb);
        --color: var(--color-primary);
    }
.rating-color--foreground {
        --star-fill-color: var(--color-foreground);
        --star-fill-color-rgb: var(--color-foreground-rgb);
        --color: var(--color-foreground);
    }
.rating-wrapper,
    .rating {
        display: flex;
        align-items: center;
    }

    .\!rating {
        display: flex !important;
        align-items: center !important;
    }
.rating-wrapper.justify-right {
        flex-direction: row-reverse;
    }
.\!rating {
        gap: var(--gap-3xs) !important;
    }
.rating {
        gap: var(--gap-3xs);
    }
.rating-wrapper .rating-count,
    .rating-wrapper .rating-count-separator {
        color: var(--star-fill-color);
        margin: 0;
        white-space: nowrap;
    }
.rating-count-separator {
        opacity: var(--opacity-20);
        padding-left: calc(var(--padding-xs) / 2);
        padding-right: var(--padding-xs);
    }
.stars {
        height: var(--star-size);
        width: var(--star-size);
        fill: var(--empty-star-fill-color);
    }
.product-swatches {
        width: 100%;
        display: flex;
        position: relative;
        overflow: hidden;
        flex-shrink: 0;
        padding-block: var(--product-swatches-padding-block-start) var(--product-swatches-padding-block-end);
        padding-inline: var(--product-swatches-padding-inline-start) var(--product-swatches-padding-inline-end);
        justify-content: var(--product-swatches-alignment-mobile);
    }
.variant-option--swatches {
        display: flex;
        align-items: center;
        gap: var(--gap-sm);
    }
.variant-option__swatch {
        display: block;
        width: var(--variant-picker-swatch-width);
        height: var(--variant-picker-swatch-height);
        border-radius: var(--variant-picker-swatch-radius);
        border: var(--variant-picker-border-width) var(--variant-picker-border-style) color-mix(in srgb, currentColor var(--variant-picker-border-opacity), transparent);
        background: var(--swatch-color);
    }
.variant-option__swatch.swatch--variant-image {
        background-size: cover;
        background-position: center;
    }
@media (min-width: 750px) {
        .product-swatches {
            justify-content: var(--product-swatches-alignment);
        }
    }
.quick-add__button {
        display: var(--quick-add-mobile-display, none);
        align-items: center;
        justify-content: center;
        height: var(--button-size-md);
        padding: 0;
        overflow: hidden;
        color: var(--color-foreground);
        background: linear-gradient(var(--color-background) 0 100%) padding-box;
        border: 2px solid hsl(0 0% 0% / 0.15);
        border-radius: 50px;
        cursor: pointer;
        opacity: var(--quick-add-mobile-opacity, 0);
        pointer-events: all;
        position: absolute;
        right: max(var(--quick-add-right), calc((var(--border-radius, 0px) + var(--quick-add-right)) * 0.2929));
        bottom: max(var(--quick-add-bottom), calc((var(--border-radius, 0px) + var(--quick-add-bottom)) * 0.2929));
        backdrop-filter: blur(20px) saturate(180%);
        transition-property: scale, translate, opacity;
        transition-duration: var(--animation-speed);
        transition-timing-function: var(--ease-out-cubic);
    }
.quick-add__button.add-to-cart-button {
        height: var(--button-size-md);
    }
.quick-add__button:hover::before {
        content: '';
        position: absolute;
        inset: -10px;
        z-index: -1;
    }
.product-card:is(:hover, :focus-within) .quick-add__button {
        opacity: 1;
    }
.quick-add__button:hover {
        scale: 1.03;
    }
.quick-add__button:active {
        scale: 0.99;
    }
.quick-add[data-quick-add-button='choose'] .add-to-cart-component,
    .quick-add[data-quick-add-button='add'] .quick-add__button--choose {
        display: none;
    }
.quick-add__product-form-component {
        height: 100%;
    }
.quick-add__product-form-component .theme-product-form {
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
        height: 100%;
        container-type: inline-size;
    }
.add-to-cart-component {
        display: contents;
    }
.svg-wrapper {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: var(--icon-size-sm);
        height: var(--icon-size-sm);
        color: currentcolor;
        pointer-events: none;
    }
.svg-wrapper > svg {
        width: var(--icon-size-sm);
        height: var(--icon-size-sm);
    }
.icon-default {
        fill: currentColor;
    }
.quick-add__button .add-to-cart-text {
        --atc-opacity: 0;
        --atc-destination: -1em;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
        gap: 0;
        overflow: hidden;
        background: var(--color-background);
        border-radius: 50px;
        clip-path: circle(100% at 50% 50%);
        transition: clip-path var(--animation-speed) var(--animation-easing, ease), opacity var(--animation-speed) var(--animation-easing, ease), filter var(--animation-speed) var(--animation-easing, ease), translate var(--animation-speed) var(--animation-easing, ease);
    }
.quick-add__button .add-to-cart-icon {
        width: calc(var(--button-size-md) - 4px);
        height: 100%;
    }
.quick-add__button .add-to-cart-text__content {
        display: grid;
        grid-template-columns: 0fr;
        transition-property: grid-template-columns;
        transition-duration: var(--animation-speed);
        transition-timing-function: var(--ease-out-cubic);
    }
.quick-add__button .add-to-cart-text__content > span {
        min-width: 0;
    }
.quick-add__button .add-to-cart-text__content span span {
        display: inline-block;
        padding-right: var(--padding-sm);
        opacity: 0;
        filter: blur(2px);
        translate: 0.5ch 0;
        white-space: nowrap;
        font-family: var(--casa-accent);
        font-size: 12px;
        font-weight: 500;
        text-transform: uppercase;
        transition-property: opacity, filter, translate;
        transition-duration: var(--animation-speed-slow);
        transition-timing-function: var(--ease-out-quad);
    }
.quick-add__button:is(:hover, :focus-visible) .add-to-cart-text__content {
        grid-template-columns: 1fr;
    }
.quick-add__button:is(:hover, :focus-visible) .add-to-cart-text__content span span {
        opacity: 1;
        filter: blur(0);
        translate: 0 0;
    }
.quick-add__button[data-added='true'] .add-to-cart-text {
        clip-path: circle(0% at 50% 50%);
        opacity: 0;
        filter: blur(2px);
        translate: 0 4px;
    }
.add-to-cart__added {
        --atc-opacity: 1;
        --atc-destination: 0px;
        position: absolute;
        top: 50%;
        left: 50%;
        translate: -50% -50%;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.3rem;
        opacity: 0;
        pointer-events: none;
    }
.add-to-cart__added-icon {
        width: 32px;
        height: 32px;
    }
.quick-add__button .svg-wrapper .checkmark-burst {
        width: 22px;
        height: 22px;
    }
.checkmark-burst {
        opacity: 0;
        overflow: visible;
    }
.checkmark-burst .burst {
        rotate: 20deg;
    }
.checkmark-burst .check {
        opacity: 0.2;
        scale: 0.8;
        filter: blur(2px);
        transform: translateZ(0);
    }
.checkmark-burst :is(.ring, .line, .check, .burst, .tick) {
        transform-box: fill-box;
        transform-origin: center;
    }
.checkmark-burst .line {
        stroke-dasharray: 1.5 1.5;
        stroke-dashoffset: -1.5;
        translate: 0 -180%;
    }
.checkmark-burst g {
        transform-origin: center;
        rotate: calc(var(--index, 0) * 45deg);
    }
.quick-add__button[data-added='true'] .add-to-cart__added,
    .quick-add__button[data-added='true'] .checkmark-burst {
        opacity: 1;
    }
@container card-gallery-container (max-width: 70px) {
        .card-gallery:hover .quick-add__button {
            display: none;
        }
    }
@media (any-pointer: fine) and (prefers-reduced-motion: no-preference) {
        .card-hover-effect-lift .product-card:hover {
            transform: translateY(calc(-1 * var(--hover-lift-amount)));
        }

        .card-hover-effect-scale .product-card:hover {
            transform: scale(var(--hover-scale-amount));
        }

        .card-hover-effect-subtle-zoom .card-gallery {
            overflow: hidden;
            transition: transform var(--hover-transition-duration) var(--hover-transition-timing);
        }

        .card-hover-effect-subtle-zoom .product-card:hover .card-gallery {
            transform: scale(var(--hover-subtle-zoom-amount));
        }
    }
.resource-list--bento {
        display: block;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
.resource-list--bento .resource-list__item--featured {
        grid-column: span 2;
        grid-row: span 2;
    }
.bento-box {
        display: grid;
        -moz-column-gap: var(--bento-gap);
             column-gap: var(--bento-gap);
        row-gap: calc(var(--bento-gap) * 1.5);
        width: 100%;
    }
.bento-box:has(.collection-card--image-bg) {
        row-gap: var(--bento-gap);
    }
.bento-box ~ .bento-box {
        padding-block-start: var(--bento-gap);
    }
.bento-box__item {
        min-width: 0;
        overflow: hidden;
    }
.collection-card {
        --fixed-card-height: var(--height-small, 15rem);
        position: relative;
        display: block;
        width: 100%;
        min-width: 0;
        height: 100%;
        overflow: hidden;
        color: var(--color-foreground);
        background: var(--color-background);
        border-style: var(--border-style);
        border-width: var(--border-width);
        border-color: var(--border-color);
        border-radius: var(--border-radius);
    }
.featured-blog-posts-card {
        position: relative;
        display: block;
        width: 100%;
        min-width: 0;
        height: 100%;
        overflow: hidden;
        text-align: var(--text-align);
        color: var(--color-foreground);
        background: var(--color-background);
        border-style: var(--border-style);
        border-width: var(--border-width);
        border-color: var(--border-color);
        border-radius: var(--border-radius);
    }
.collection-card__link {
        position: absolute;
        inset: 0;
        z-index: var(--layer-flat);
    }
.featured-blog-posts-card__link {
        position: absolute;
        inset: 0;
        z-index: var(--layer-flat);
        border-radius: var(--border-radius);
    }
.collection-card__inner {
        position: relative;
        display: flex;
        width: 100%;
        height: 100%;
        flex-direction: column;
        gap: var(--gap);
        overflow: hidden;
        z-index: var(--layer-flat);
        pointer-events: none;
    }
.featured-blog-posts-card__inner {
        position: relative;
        display: flex;
        width: 100%;
        height: 100%;
        flex-direction: column;
        gap: var(--gap);
        overflow: hidden;
        z-index: var(--layer-flat);
        pointer-events: none;
    }
.collection-card__content {
        display: flex;
        max-width: 100%;
        flex-flow: column wrap;
        align-items: var(--horizontal-alignment);
        justify-content: var(--vertical-alignment);
        gap: var(--gap);
        position: relative;
        z-index: calc(var(--layer-flat) + 1);
    }
.featured-blog-posts-card__content {
        display: flex;
        max-width: 100%;
        flex-flow: column wrap;
        align-items: var(--horizontal-alignment);
        gap: var(--gap);
        position: relative;
        z-index: calc(var(--layer-flat) + 1);
    }
.collection-card__content :is(a, button),
    .featured-blog-posts-card__content :is(a, button) {
        pointer-events: auto;
    }
.collection-card__image,
    .featured-blog-posts-card__image,
    .resource-image {
        position: relative;
        display: flex;
        width: 100%;
        height: 100%;
        max-width: 100%;
        max-height: 100%;
        overflow: hidden;
        aspect-ratio: var(--ratio, 1 / 1);
        z-index: var(--layer-base, 0);
    }
.featured-blog-posts-card__image {
        position: relative;
        display: block;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
        aspect-ratio: var(--ratio, 1 / 1);
        background: rgb(var(--color-foreground-rgb, 0 0 0) / 0.05);
        border-style: var(--border-style);
        border-width: var(--border-width);
        border-color: var(--border-color);
        border-radius: var(--border-radius);
        height: auto;
        flex: 0 0 auto;
    }
.featured-blog-posts-card__media {
        position: absolute;
        inset: 0;
    }
.collection-card__image .resource-image__image,
    .featured-blog-posts-card__image .resource-image__image,
    .resource-image__image {
        position: relative;
        width: 100%;
        height: 100%;
        max-width: 100%;
        -o-object-fit: cover;
           object-fit: cover;
        aspect-ratio: var(--ratio, 1 / 1);
    }
.resource-image--placeholder {
        background: #8f989d;
    }
.featured-blog-posts-card__content h4 {
        margin: 0;
    }
.blog-post-details {
        display: flex;
        flex-wrap: wrap;
        gap: 0.35em;
        margin: 0;
        color: color-mix(in srgb, var(--color-foreground) 65%, transparent);
        text-align: var(--text-align);
    }
.blog-post-details__separator {
        margin-inline-end: 0.35em;
        color: currentColor;
    }
.blog-post-description {
        margin: 0;
    }
.collection-card-placeholder-image {
        position: relative;
        display: block;
        width: 100%;
        height: 100%;
        min-height: 100%;
        overflow: hidden;
        background: #8f989d;
    }
.collection-card-placeholder-image__shape {
        position: absolute;
        display: block;
        pointer-events: none;
    }
.collection-card-placeholder-image__shape--base {
        left: -8%;
        bottom: 0;
        width: 80%;
        height: 55%;
        border-radius: 50%;
        background: #6f787c;
    }
.collection-card-placeholder-image__shape--circle {
        top: -15%;
        right: -8%;
        width: 45%;
        height: 70%;
        border-radius: 999px;
        background: #a5adb2;
    }
.collection-card-placeholder-image__shape--accent {
        right: 0;
        bottom: 0;
        width: 42%;
        height: 42%;
        border-top-left-radius: 999px;
        background: #f3a37f;
    }
.collection-card--image-bg {
        aspect-ratio: var(--ratio, 1 / 1);
    }
.collection-card--image-bg .collection-card__inner {
        height: 100%;
    }
.collection-card--image-bg .collection-card__image {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }
.collection-card--image-bg .collection-card__content {
        min-height: 100%;
        padding: var(--padding-lg, 24px);
    }
.collection-card--image-height-fixed {
        height: 100%;
    }
.collection-card--image-height-fixed .collection-card__image {
        height: var(--fixed-card-height);
        width: 100%;
    }
.collection-card--image-height-fixed.collection-card--image-bg {
        height: var(--fixed-card-height);
        aspect-ratio: unset;
    }
.resource-list:not(.hidden--desktop) .collection-card--flexible-aspect-ratio .collection-card__image,
    .resource-list:not(.hidden--desktop) .collection-card--flexible-aspect-ratio .collection-card-placeholder-image {
        aspect-ratio: 99;
        height: 100%;
        flex: 1 1 auto;
        min-height: 0;
    }
.resource-list:not(.hidden--desktop) .collection-card--flexible-aspect-ratio .collection-card__inner {
        display: flex;
        flex-direction: column;
        height: 100%;
    }
.resource-list:not(.hidden--desktop) .collection-card--flexible-aspect-ratio .collection-card__content {
        flex-shrink: 0;
    }
.resource-list:not(.hidden--desktop) .collection-card--flexible-aspect-ratio:not(.collection-card--image-bg) .collection-card__content {
        height: auto;
    }
.media-with-content {
        --media-with-content-grid-columns: var(--full-page-grid-with-margins);
        grid-template-columns: var(--media-with-content-grid-columns);
        grid-template-areas: 'media media media' 'content content content';
    }
.section--page-width.media-with-content {
        grid-template-areas: 'margin-left media margin-right' 'margin-left content margin-right';
    }
.media-with-content.media-with-content--media-extend {
        grid-template-columns: var(--media-with-content-grid-columns);
        grid-template-areas: 'media media media' 'margin-left content margin-right';
    }
.media-with-content .media-block {
        grid-area: media;
        position: relative;
        min-height: var(--media-height-mobile, auto);
        overflow: hidden;
    }
.media-with-content .media-block__media-link,
    .media-with-content .media-block__media {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }
.media-with-content .media-block__media {
        overflow: hidden;
    }
.media-with-content .media-block__media :is(img, video),
    .media-with-content .media-block__video {
        width: 100%;
        height: 100%;
        -o-object-fit: var(--image-position, cover);
           object-fit: var(--image-position, cover);
        -o-object-position: center center;
           object-position: center center;
    }
.media-with-content .media-block__media--video :is(video, img),
    .media-with-content .media-block__video {
        -o-object-fit: var(--video-position, cover);
           object-fit: var(--video-position, cover);
    }
.media-with-content .media-block--contain .media-block__media :is(img, video),
    .media-with-content .media-block--contain .media-block__video {
        -o-object-fit: contain;
           object-fit: contain;
    }
.media-with-content .media-block__media-link {
        display: block;
        color: inherit;
        text-decoration: none;
    }
.media-with-content--height-auto .media-block {
        min-height: 0;
    }
.media-with-content--height-auto .media-block > .media-block__media,
    .media-with-content--height-auto .media-block__media-link {
        position: relative;
        inset: auto;
        height: auto;
        aspect-ratio: var(--media-ratio, 4 / 3);
    }
.media-with-content--height-auto .media-block__media-link > .media-block__media {
        position: absolute;
        inset: 0;
        height: 100%;
        aspect-ratio: auto;
    }
.media-with-content__content {
        grid-area: content;
        overflow: hidden;
        min-width: 0;
    }
.media-with-content__content > .group-block-content {
        box-sizing: border-box;
        padding-inline: var(--page-margin);
        padding-block: calc(2 * var(--page-margin));
        overflow: hidden;
        min-width: 0;
    }
.media-with-content--media-right {
        grid-template-areas: 'media media media' 'content content content';
    }
.section-product-hotspots {
        position: relative;
    }
.section-product-hotspots__wrapper {
        display: flex;
        flex-direction: column;
        gap: var(--gap);
        width: 100%;
        height: 100%;
    }
.section-product-hotspots__header {
        position: relative;
        z-index: var(--layer-flat);
    }
.section-product-hotspots__content {
        position: relative;
        aspect-ratio: var(--ratio, 21 / 9);
        overflow: hidden;
    }
.hotspots__background-image {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover;
        -o-object-position: center;
           object-position: center;
    }
.hotspots-container {
        position: absolute;
        inset: 0;
        z-index: var(--layer-flat);
        overflow: clip;
    }
.hotspot {
        position: absolute;
        cursor: pointer;
        width: var(--button-size);
        height: var(--button-size);
        display: flex;
        align-items: center;
        justify-content: center;
        background: transparent;
        border: none;
        padding: 0;
        font: inherit;
        color: inherit;
        outline: none;
        transition: border-color 200ms ease-out, box-shadow 200ms ease-out;
        z-index: var(--layer-flat);
    }
.hotspot:hover,
    .hotspot:focus-within {
        z-index: var(--layer-raised);
    }
.hotspot .hotspot-trigger {
        padding: 0;
        border: none;
    }
.hotspot-trigger {
        width: var(--hotspot-size, 36px);
        height: var(--hotspot-size, 36px);
        background: var(--hotspot-bg, rgb(0 0 0 / 50%));
        border-radius: 50%;
        cursor: pointer;
        position: relative;
        transition: width 100ms ease-out, height 100ms ease-out;
    }
.hotspot-trigger::after {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        width: calc(var(--hotspot-size, 36px) * 0.4);
        height: calc(var(--hotspot-size, 36px) * 0.4);
        background: var(--hotspot-bullseye, #fff);
        border-radius: 50%;
        transform: translate(-50%, -50%);
        transition: width 200ms ease-out, height 200ms ease-out;
    }
@media screen and (min-width: 750px) {
        .hotspot:hover .hotspot-trigger::after,
        .hotspot:focus-within .hotspot-trigger::after {
            width: calc(var(--hotspot-size, 36px) * 0.55);
            height: calc(var(--hotspot-size, 36px) * 0.55);
            transition-delay: 200ms;
        }
    }
@media (hover: none) {
        .hotspot.hotspot--hidden-touch {
            display: none;
        }
    }
@media screen and (max-width: 749px) {
        .hotspot .hotspot-dialog {
            display: none;
        }
    }
.hotspot-dialog {
        position: absolute;
        z-index: var(--layer-flat);
        width: -moz-max-content;
        width: max-content;
        min-width: var(--minimum-width-dialog, 260px);
        max-width: var(--maximum-width-dialog, 330px);
        padding: 0;
        border: 1px solid rgb(var(--color-border-rgb) / 50%);
        border-radius: var(--style-border-radius-popover, 8px);
        background: var(--color-background);
        color: var(--color-foreground);
        box-shadow: 0 12px 28px rgb(0 0 0 / 16%);
        filter: blur(4px);
        opacity: 0;
        pointer-events: none;
        transform: scale(0.8) translate(var(--offset-x, 0), var(--offset-y, 0));
        transform-origin: var(--origin-x, 50%) var(--origin-y, 50%);
        transition-property: opacity, filter, transform;
        transition-duration: 200ms;
        transition-timing-function: cubic-bezier(0.65, -0.49, 0.35, 1.12);
    }
.hotspot-dialog[data-placement*='bottom'] {
        --offset-y: 0px;
        --origin-y: calc(var(--hotspot-size) / 2);
        top: calc((var(--button-size) - var(--hotspot-size)) / 2 + var(--dialog-vertical-offset, 0px));
        bottom: unset;
    }
.hotspot-dialog[data-placement*='top'] {
        --offset-y: 0px;
        --origin-y: calc(100% - (var(--hotspot-size) * 0.5));
        top: unset;
        bottom: calc((var(--button-size) - var(--hotspot-size)) * 0.5 - var(--dialog-vertical-offset, 0px));
    }
.hotspot-dialog[data-placement*='left'] {
        --offset-x: calc((var(--button-size) - var(--hotspot-size)) * 0.5);
        --origin-x: calc(100% - (var(--hotspot-size) * 0.5));
        left: unset;
        right: 100%;
    }
.hotspot-dialog[data-placement*='right'] {
        --offset-x: calc((var(--button-size) - var(--hotspot-size)) * -0.5);
        --origin-x: calc(var(--hotspot-size) * 0.5);
        left: 100%;
        right: unset;
    }
.hotspot-dialog[data-placement*='center'] {
        left: 50%;
        translate: -50% 0;
        right: unset;
    }
.hotspot-dialog[data-placement*='center'][data-placement*='bottom'] {
        --origin-y: calc(var(--hotspot-size) * 0.5);
        --origin-x: 50%;
        --offset-y: calc((var(--button-size) - var(--hotspot-size)) * -0.5);
        --offset-x: 0;
        top: 100%;
        bottom: unset;
        margin: 0;
    }
.hotspot-dialog[data-placement*='center'][data-placement*='top'] {
        --origin-y: calc(100% - (var(--hotspot-size) * 0.5));
        --origin-x: 50%;
        --offset-y: calc((var(--button-size) - var(--hotspot-size)) * 0.5);
        --offset-x: 0;
        bottom: 100%;
    }
.hotspot:hover .hotspot-dialog,
    .hotspot:focus-within .hotspot-dialog {
        opacity: 1;
        pointer-events: auto;
        filter: blur(0);
        transform: scale(1) translate(0, 0);
    }
.hotspot-dialog__product {
        position: relative;
        display: grid;
        grid-template-columns: auto 1fr;
    }
.hotspot-dialog__link {
        position: absolute;
        inset: 0;
        z-index: var(--layer-flat);
    }
.hotspot-dialog__product-content {
        position: relative;
        z-index: calc(var(--layer-flat) + 1);
    }
.hotspot-dialog__product-image-wrap {
        position: relative;
        width: var(--width-product-image-dialog, 110px);
        height: var(--width-product-image-dialog, 110px);
        aspect-ratio: 1;
        overflow: hidden;
        border-radius: var(--style-border-radius-popover, 8px);
    }
.hotspot-dialog__product-image-wrap > .hotspot-dialog__product-image {
        padding: var(--padding-product-image-popover, var(--padding-xs));
        -o-object-fit: cover;
           object-fit: cover;
        border-radius: var(--style-border-radius-popover, 8px);
    }
.hotspot-dialog__product-content {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        min-width: 0;
        padding: var(--padding-xs, 0.5rem);
        padding-inline-start: 0;
        overflow: hidden;
    }
.hotspot-dialog__product-title {
        margin-block-end: var(--product-title-gap, 8px);
        padding-inline-end: var(--padding-sm, 0.7rem);
        min-width: 0;
    }
.hotspot-dialog__product-price {
        opacity: 0.8;
    }
.hotspot .hotspot-dialog .hotspot-dialog__sold-out-badge {
        display: flex;
        width: -moz-fit-content;
        width: fit-content;
        justify-self: flex-end;
        align-self: flex-end;
        justify-content: center;
        align-items: center;
        font-size: var(--font-body--size);
        padding: var(--padding-2xs) var(--padding-sm);
        background: rgb(var(--color-foreground-rgb) / var(--opacity-10));
        border-radius: var(--border-radius-sm);
        text-transform: uppercase;
        letter-spacing: var(--letter-spacing-sm);
        opacity: var(--opacity-80);
    }
.group-block,
    .group-block-content {
        position: relative;
    }
.group-block {
        color: var(--color-foreground);
    }
.group-block__link {
        position: absolute;
        inset: 0;
        z-index: calc(var(--layer-flat, 1) + 2);
    }
.group-block__link ~ :is(.group-block-content, .group-block__media-wrapper) {
        pointer-events: none;
    }
.group-block__link ~ :is(.group-block-content, .group-block__media-wrapper) :is(a, button, input, textarea, select) {
        pointer-events: auto;
    }
.group-block__media-wrapper {
        position: absolute;
        inset: 0;
        z-index: 0;
        overflow: hidden;
    }
.group-block-content {
        height: 100%;
        width: 100%;
        z-index: calc(var(--layer-flat, 1) + 1);
    }
.group-block-content.layout-panel-flex--row {
        justify-content: var(--horizontal-alignment);
        align-items: var(--vertical-alignment);
    }
.section-content-wrapper.section-content-wrapper:where(.layout-panel-flex) .group-block--fill {
        flex: 1;
    }
.layout-panel-flex--row > .group-block--width-fill {
        flex: 1;
    }
.layout-panel-flex--row > .group-block--width-custom {
        flex-basis: var(--size-style-width);
    }
.group-block--height-fit {
        height: auto;
    }
.group-block--height-custom,
    .group-block--height-fill {
        height: var(--size-style-height);
    }
.group-block--height-custom {
        min-height: -moz-min-content;
        min-height: min-content;
    }
.layout-panel-flex--column > .group-block--height-fit {
        flex: 0 1 auto;
    }
.layout-panel-flex--column > .group-block--height-fill {
        flex: 1;
    }
.layout-panel-flex--column > .group-block--height-custom {
        flex-basis: var(--size-style-height);
    }
:is(.featured-product-section, .product-information--featured-product-information) .product-details > .group-block.spacing-style {
        padding-block: 0;
    }
:is(.featured-product-section, .product-information--featured-product-information) .product-details > .group-block > .group-block-content.layout-panel-flex {
        gap: var(--gap-sm) !important;
    }
@media screen and (max-width: 749px) {
        .product-information--featured-product-information.spacing-style {
            padding-block-start: 0;
        }

        .product-information--featured-product-information .product-details > .group-block.spacing-style {
            padding-block-start: var(--padding-xl);
            padding-block-end: 0;
        }
    }
@media screen and (min-width: 990px) {
        :is(.featured-product-section, .product-information--featured-product-information) .product-details {
            justify-content: flex-start;
        }

        :is(.featured-product-section, .product-information--featured-product-information) .product-details > .group-block {
            width: min(32rem, 100%);
            max-width: 32rem;
        }
    }
.background-image-container,
    .background-image-container .background-image {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }
.background-image-container {
        overflow: hidden;
        opacity: var(--image-opacity);
        z-index: 0;
    }
.background-image-container .background-image {
        -o-object-fit: cover;
           object-fit: cover;
    }
.background-image-fit .background-image,
    .background-image-fit img,
    .background-image-fit svg {
        -o-object-fit: contain;
           object-fit: contain;
    }
.video-background {
        position: absolute;
        inset: 0;
        z-index: 0;
        overflow: hidden;
        background-color: rgb(var(--color-foreground-rgb, 0 0 0) / 0.08);
    }
.video-background img,
    .video-background video,
    .video-background__poster {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }
.video-background--cover :is(img, video, .video-background__poster) {
        -o-object-fit: cover;
           object-fit: cover;
    }
.video-background--contain :is(img, video, .video-background__poster) {
        -o-object-fit: contain;
           object-fit: contain;
    }
@media (prefers-reduced-motion: reduce) {
        .video-background video {
            display: none;
        }
    }
.overlay {
        position: absolute;
        inset: 0;
        z-index: var(--overlay-layer, var(--layer-flat, 0));
        pointer-events: none;
        border-radius: var(--overlay-border-radius, 0);
    }
.layered-slideshow-section {
        position: relative;
    }
.layered-slideshow-component {
        display: block;
        width: 100%;
    }
.layered-slideshow__container {
        --radius: calc(var(--corner-radius, 1) * 1rem);
        --button-size: 56px;
        --border-color: var(--color-background);
        width: 100%;
        position: relative;
        container-type: inline-size;
        border-radius: var(--radius);
        overflow: hidden;
    }
.layered-slideshow__container:not([data-size='auto']) {
        height: 100%;
    }
.layered-slideshow__container[data-size='auto'] {
        height: auto;
    }
@media screen and (min-width: 750px) {
        .layered-slideshow-component {
            min-height: var(--layered-min-height-desktop, 0px);
        }
    }
.layered-slideshow__tablist {
        display: grid;
        grid-template-columns: var(--active-tab);
        position: absolute;
        inset: 0;
        height: 100%;
        pointer-events: none;
        z-index: 20;
    }
.layered-slideshow__tablist button {
        width: var(--button-size);
        height: 100%;
        pointer-events: all;
        opacity: 0;
        cursor: grab;
        border: none;
        background: transparent;
        padding: 0;
        position: relative;
        outline: none;
        transition: opacity 0.2s ease;
    }
.layered-slideshow__tablist button[aria-selected='true'] {
        cursor: default;
    }
.layered-slideshow__tablist button:focus-visible {
        opacity: 1;
    }
.layered-slideshow__container[data-dragging] {
        cursor: grabbing;
    }
.layered-slideshow__container[data-instant-transitions],
    .layered-slideshow__container:is([data-dragging], [data-instant-transitions])
        :is(
            .layered-slideshow__tablist,
            .layered-slideshow__panels,
            .layered-slideshow__panel-content,
            .layered-slideshow__content
        ) {
        transition: none;
    }
.layered-slideshow__panels {
        display: grid;
        grid-template-columns: var(--active-tab);
        height: 100%;
        overflow: hidden;
    }
.layered-slideshow__panel {
        position: relative;
        height: 100%;
        min-width: var(--button-size);
        border-radius: var(--radius);
        z-index: calc(var(--total-tabs) - var(--index));
    }
.layered-slideshow__panel:first-child .layered-slideshow__panel-content {
        width: calc(100cqi - var(--inactive-tabs-size));
        border-left: var(--border-width) solid var(--border-color);
    }
.layered-slideshow__panel:not(:first-child) .layered-slideshow__content {
        padding-inline-start: calc((var(--radius) * 2) + var(--padding-inline-start, 0px));
    }
.layered-slideshow__panel-content {
        border: var(--border-width) solid var(--border-color);
        border-left: none;
        border-radius: var(--radius);
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        overflow: hidden;
        width: calc((100cqi - var(--inactive-tabs-size)) + (var(--radius) * 2));
    }
.layered-slideshow__panel-content :is(img, video, svg, .theme-image, .layered-slideshow__image) {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover;
    }
.layered-slideshow__video-poster {
        z-index: 1;
    }
.layered-slideshow__video {
        z-index: 0;
    }
.layered-slideshow__panel:not([inert]) .layered-slideshow__video-poster {
        opacity: 0;
    }
.layered-slideshow__content {
        height: 100%;
        position: relative;
        z-index: 1;
    }
.layered-slideshow__content > * {
        margin: auto;
    }
.layered-slideshow__content.background-transparent {
        background-color: transparent;
    }
.layered-slideshow__panel--drop-shadow:not(:last-child) .layered-slideshow__panel-content {
        box-shadow: 4px 0 12px 0 rgb(0 0 0 / 10%);
    }
@media (prefers-reduced-motion: no-preference) {
        .layered-slideshow__panels,
        .layered-slideshow__tablist {
            transition-property: grid-template-columns, grid-template-rows;
            transition-duration: 0.6s;
            transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        }

        .layered-slideshow__video-poster {
            transition: opacity 0.3s ease;
        }

        .layered-slideshow__content {
            opacity: 0;
            transform: translateY(0.5lh);
            transition: opacity 0.48s, transform 0.48s;
        }

        .layered-slideshow__panel:not([inert]) .layered-slideshow__content {
            opacity: 1;
            transform: translateY(0);
            transition-delay: 0.24s;
        }
    }
@media screen and (max-width: 749px) {
        .layered-slideshow__container {
            --button-size: 44px;
            --layered-total-height: calc(var(--layered-panel-height-mobile, 260px) + var(--inactive-tabs-size));
            --active-panel-height: var(--layered-panel-height-mobile, 260px);
        }

        .layered-slideshow__container:not([data-size='auto']) {
            min-height: var(--layered-total-height);
            height: var(--layered-total-height);
        }

        .layered-slideshow__tablist {
            grid-template-rows: var(--active-tab);
            grid-template-columns: 1fr;
            grid-auto-flow: row;
            transition: none;
        }

        .layered-slideshow__tablist button {
            width: 100%;
            height: var(--button-size);
        }

        .layered-slideshow__panels {
            grid-template-rows: var(--active-tab);
            grid-template-columns: 1fr;
            grid-auto-flow: row;
        }

        .layered-slideshow__panel {
            min-height: var(--button-size);
            width: 100%;
            height: 100%;
        }

        .layered-slideshow__panel:first-child .layered-slideshow__panel-content {
            width: 100%;
            height: var(--active-panel-height);
            border-top: var(--border-width) solid var(--border-color);
            left: 0;
            right: 0;
            border-left: var(--border-width) solid var(--border-color);
        }

        .layered-slideshow__panel-content {
            box-sizing: border-box;
            width: 100%;
            height: calc(var(--active-panel-height) + min(var(--radius) * 2, var(--button-size) - var(--border-width)));
            top: unset;
            left: 0;
            right: 0;
            bottom: 0;
        }

        .layered-slideshow__panel:not(:first-child) .layered-slideshow__panel-content {
            border-top: none;
        }

        .layered-slideshow__panel:not(:first-child) {
            margin-top: calc(var(--border-width) * -1);
        }

        .layered-slideshow__content {
            padding-inline-start: var(--padding-inline-start, 0px);
            padding-inline-end: var(--padding-inline-end, 0px);
        }

        .layered-slideshow__panel:not(:first-child) .layered-slideshow__content {
            padding-block-start: calc((var(--radius) * 2) + var(--padding-block-start, 0px));
            padding-inline-start: var(--padding-inline-start, 0px);
        }

        .layered-slideshow__panel--drop-shadow:not(:last-child) .layered-slideshow__panel-content {
            box-shadow: 0 4px 12px 0 rgb(0 0 0 / 10%);
        }
    }
.accordion {
        flex: 1;
        width: 100%;
    }
accordion-custom {
        display: block;
    }
accordion-custom .\!details {
        margin: 0 !important;
    }
accordion-custom .details {
        margin: 0;
    }
accordion-custom .details-content {
        block-size: 0;
        overflow-y: clip;
        opacity: 0;
        transition: opacity var(--animation-speed-slow) var(--ease-out-cubic), block-size var(--animation-speed-slow) var(--ease-out-cubic), padding-block var(--animation-speed-slow) var(--ease-out-cubic);
    }
accordion-custom .\!details[open] .details-content {
        block-size: auto !important;
        opacity: 1 !important;
        overflow-y: visible !important;
    }
accordion-custom .details[open] .details-content {
        block-size: auto;
        opacity: 1;
        overflow-y: visible;
    }
accordion-custom .\!details:not([open]) .details-content {
        padding-block: 0 !important;
    }
accordion-custom .details:not([open]) .details-content {
        padding-block: 0;
    }
.accordion--dividers {
        --show-fallback-borders: 0;
    }
.accordion--dividers:not([class*='color-'])[style*='--border-width: 0'],
    .accordion--dividers:not([class*='color-'])[style*='--border-style: none'] {
        --show-fallback-borders: 1;
    }
.accordion--dividers accordion-custom:not(:first-child) .details {
        border-block-start: var(--style-border-width) solid var(--color-border);
    }
.accordion--dividers accordion-custom:not(:first-child) .\!details {
        border-block-start: var(--style-border-width) solid var(--color-border) !important;
    }
.accordion--dividers accordion-custom:first-child .details {
        border-block-start: calc(var(--style-border-width) * var(--show-fallback-borders)) solid var(--color-border);
    }
.accordion--dividers accordion-custom:first-child .\!details {
        border-block-start: calc(var(--style-border-width) * var(--show-fallback-borders)) solid var(--color-border) !important;
    }
.accordion--dividers accordion-custom:last-child .details {
        border-block-end: calc(var(--style-border-width) * var(--show-fallback-borders)) solid var(--color-border);
    }
.accordion--dividers accordion-custom:last-child .\!details {
        border-block-end: calc(var(--style-border-width) * var(--show-fallback-borders)) solid var(--color-border) !important;
    }
.accordion--dividers .details-content {
        padding-block-end: var(--padding-sm);
    }
.accordion--caret .icon-plus,
    .accordion--plus .icon-caret {
        display: none;
    }
.details__header {
        display: flex;
        align-items: center;
        min-height: var(--minimum-touch-target);
        gap: var(--gap-xs);
        cursor: pointer;
        list-style: none;
        font-family: var(--summary-font-family);
        font-style: var(--summary-font-style);
        font-weight: var(--summary-font-weight);
        font-size: var(--summary-font-size);
        line-height: var(--summary-font-line-height);
        text-transform: var(--summary-font-case);
    }
.details__header::-webkit-details-marker {
        display: none;
    }
.details__header .icon-caret,
    .details__header .icon-plus {
        margin-inline-start: auto;
    }
details[open] > summary .icon-caret svg {
        rotate: 180deg;
    }
details[open] > summary .icon-plus .vertical {
        opacity: 0;
    }
.details__icon {
        height: auto;
        margin-inline-end: var(--margin-xs, 4px);
    }
.comparison-slider {
        position: relative;
        overflow: hidden;
        aspect-ratio: var(--ratio);
    }
.comparison-slider:not(:has(img)) {
        min-width: 25dvh;
    }
.comparison-slider__container,
    .comparison-slider__media-wrapper {
        position: relative;
        width: 100%;
        height: 100%;
    }
.comparison-slider__media-wrapper {
        --compare: 50;

        display: grid;
        grid-template: 1fr / 1fr;
        overflow: hidden;
    }
.comparison-slider__layer {
        grid-area: 1 / 1;
        position: relative;
        width: 100%;
        height: 100%;
        transition: clip-path var(--transition-duration, 0s) ease-in-out;
    }
.comparison-slider__layer--after {
        z-index: var(--layer-flat);
    }
[data-orientation='horizontal'] .comparison-slider__layer--before {
        clip-path: inset(0 calc((100 - var(--compare)) * 1%) 0 0);
    }
[data-orientation='vertical'] .comparison-slider__layer--before {
        clip-path: inset(0 0 calc(var(--compare) * 1%) 0);
    }
[data-orientation='horizontal'] .comparison-slider__layer--after {
        clip-path: inset(0 0 0 calc(var(--compare) * 1%));
    }
[data-orientation='vertical'] .comparison-slider__layer--after {
        clip-path: inset(calc((100 - var(--compare)) * 1%) 0 0 0);
    }
.comparison-slider__layer > :is(img, .comparison-slider__placeholder),
    .comparison-slider__placeholder > :is(img, div) {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover;
    }
.comparison-slider__placeholder {
        background: rgb(var(--color-foreground-rgb, 0 0 0) / 0.08);
    }
.cs-slider {
        position: absolute;
        inset: 0;
        z-index: calc(var(--layer-raised) + 1);
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
        opacity: 0;
        cursor: ew-resize;
        -moz-appearance: none;
             appearance: none;
        -webkit-appearance: none;
    }
[data-orientation='vertical'] .cs-slider {
        cursor: ns-resize;
        writing-mode: vertical-lr;
        direction: rtl;
    }
.cs-slider::-webkit-slider-thumb {
        width: var(--button-size, 44px);
        height: var(--button-size, 44px);
        border: 0;
        background: transparent;
        cursor: inherit;
        -webkit-appearance: none;
    }
.cs-slider::-moz-range-thumb {
        width: var(--button-size, 44px);
        height: var(--button-size, 44px);
        border: 0;
        background: transparent;
        cursor: inherit;
        -moz-appearance: none;
             appearance: none;
    }
.cs-slider::-webkit-slider-runnable-track {
        border: 0;
        background: transparent;
        -webkit-appearance: none;
    }
.cs-slider::-moz-range-track {
        border: 0;
        background: transparent;
        -moz-appearance: none;
             appearance: none;
    }
.comparison-slider__media-wrapper::after {
        content: '';
        position: absolute;
        z-index: var(--layer-raised);
        pointer-events: none;
        background: var(--color-background);
        box-shadow: 0 0 12px 0 rgb(0 0 0 / 0.1);
    }
.comparison-slider__media-wrapper[data-orientation='horizontal']::after {
        inset: 0 auto;
        left: calc(var(--compare) * 1%);
        width: 4px;
        transform: translateX(-50%);
    }
.comparison-slider__media-wrapper[data-orientation='vertical']::after {
        inset: auto 0;
        top: calc((100 - var(--compare)) * 1%);
        height: 4px;
        transform: translateY(-50%);
    }
.cs-slider__handle {
        position: absolute;
        z-index: calc(var(--layer-raised) + 1);
        top: 50%;
        left: calc(var(--compare) * 1%);
        translate: -50% -50%;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        border-radius: 999px;
        background: var(--color-background);
        color: var(--color-foreground);
        box-shadow: 0 0 12px 0 rgb(0 0 0 / 0.1);
        pointer-events: none;
    }
[data-orientation='vertical'] .cs-slider__handle {
        top: calc((100 - var(--compare)) * 1%);
        left: 50%;
        rotate: 90deg;
    }
.cs-slider__chevron {
        display: flex;
        width: 14px;
        height: 14px;
    }
.comparison-slider__text {
        position: absolute;
        z-index: var(--layer-raised);
        padding: var(--padding-xs);
        color: var(--color-foreground);
        pointer-events: none;
    }
.comparison-slider__text:has(> :empty) {
        display: none;
    }
.comparison-slider__text--with-bg {
        background: var(--text-background-color);
        border-radius: var(--text-corner-radius);
    }
.comparison-slider--horizontal .comparison-slider__text--before,
    [data-orientation='horizontal'] .comparison-slider__text--before {
        left: var(--padding-sm);
        right: auto;
        inset-inline-start: var(--padding-sm);
        inset-inline-end: auto;
    }
.comparison-slider--horizontal .comparison-slider__text--after,
    [data-orientation='horizontal'] .comparison-slider__text--after {
        left: auto;
        right: var(--padding-sm);
        inset-inline-start: auto;
        inset-inline-end: var(--padding-sm);
    }
.comparison-slider--horizontal .comparison-slider__media-wrapper[data-text-position='start'] .comparison-slider__text,
    [data-orientation='horizontal'][data-text-position='start'] .comparison-slider__text {
        top: var(--padding-sm);
        bottom: auto;
        inset-block-start: var(--padding-sm);
        inset-block-end: auto;
    }
.comparison-slider--horizontal .comparison-slider__media-wrapper[data-text-position='end'] .comparison-slider__text,
    [data-orientation='horizontal'][data-text-position='end'] .comparison-slider__text {
        top: auto;
        bottom: var(--padding-sm);
        inset-block-start: auto;
        inset-block-end: var(--padding-sm);
    }
[data-orientation='vertical'] .comparison-slider__text--before {
        top: var(--padding-sm);
        bottom: auto;
        inset-block-start: var(--padding-sm);
        inset-block-end: auto;
    }
[data-orientation='vertical'] .comparison-slider__text--after {
        top: auto;
        bottom: var(--padding-sm);
        inset-block-start: auto;
        inset-block-end: var(--padding-sm);
    }
[data-orientation='vertical'][data-text-position='start'] .comparison-slider__text {
        left: var(--padding-sm);
        right: auto;
        inset-inline-start: var(--padding-sm);
        inset-inline-end: auto;
    }
[data-orientation='vertical'][data-text-position='end'] .comparison-slider__text {
        left: auto;
        right: var(--padding-sm);
        inset-inline-start: auto;
        inset-inline-end: var(--padding-sm);
    }
.contact-form__form {
        display: flex;
        flex-direction: column;
        gap: var(--gap-md);
    }
.contact-form__form-row {
        display: flex;
        flex-direction: column;
        gap: var(--gap-md);
    }
.contact-form__input {
        box-sizing: border-box;
        -moz-appearance: none;
             appearance: none;
        -webkit-appearance: none;
        width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        color: var(--color-input-text);
        background-color: var(--color-input-background);
        padding: 14px 18px;
        border: var(--account-input-border-width, var(--style-border-width-inputs, 1px)) var(--account-input-border-style, solid) color-mix(in srgb, var(--color-input-border) var(--account-input-border-opacity-percent, 45%), transparent);
        border-radius: var(--account-input-border-radius, var(--style-border-radius-inputs, 0));
        box-shadow: none;
        font: inherit;
        -webkit-font-smoothing: antialiased;
    }
.contact-form__input::-moz-placeholder {
        font-family: var(--account-placeholder-font-family, var(--font-paragraph--family));
        font-weight: var(--account-placeholder-font-weight, var(--font-paragraph--weight));
        font-size: var(--account-placeholder-font-size, var(--font-paragraph--size));
        line-height: var(--account-placeholder-line-height, var(--font-paragraph--line-height));
        letter-spacing: var(--account-placeholder-letter-spacing, normal);
        text-transform: var(--account-placeholder-text-transform, none);
        color: var(--account-placeholder-color, rgb(var(--color-foreground-rgb) / 0.42));
    }
.contact-form__input::placeholder {
        font-family: var(--account-placeholder-font-family, var(--font-paragraph--family));
        font-weight: var(--account-placeholder-font-weight, var(--font-paragraph--weight));
        font-size: var(--account-placeholder-font-size, var(--font-paragraph--size));
        line-height: var(--account-placeholder-line-height, var(--font-paragraph--line-height));
        letter-spacing: var(--account-placeholder-letter-spacing, normal);
        text-transform: var(--account-placeholder-text-transform, none);
        color: var(--account-placeholder-color, rgb(var(--color-foreground-rgb) / 0.42));
    }
.contact-form__input:focus-visible {
        border-color: var(--color-input-text);
        outline: none;
    }
.contact-form__input--textarea {
        resize: vertical;
        min-height: var(--input-textarea-min-height);
    }
.contact-form__message {
        margin: 0;
        color: rgb(var(--color-foreground-rgb) / 0.72);
        font-size: 0.875rem;
        line-height: 1.45;
    }
.email-signup__message {
        display: flex;
        align-items: center;
        gap: var(--gap-sm, 12px);
        margin: var(--gap-xs, 8px) 0 0;
        color: rgb(var(--color-foreground-rgb) / 0.72);
        font-size: 0.875rem;
        line-height: 1.45;
    }
.email-signup__message[hidden],
    .email-signup__success-icon[hidden] {
        display: none;
    }
.email-signup__success-icon {
        display: inline-flex;
        flex: 0 0 auto;
        width: 1.25rem;
        height: 1.25rem;
        color: rgb(22 101 52);
    }
.email-signup__success-icon svg {
        width: 100%;
        height: 100%;
        stroke: currentColor;
        stroke-width: 1.5;
        stroke-linecap: round;
        stroke-linejoin: round;
    }
.contact-form__message[data-state="error"],
    .email-signup__message[data-state="error"] {
        color: rgb(176 32 32);
    }
.contact-form__message[data-state="success"],
    .email-signup__message[data-state="success"] {
        color: rgb(22 101 52);
    }
.email-signup-block {
        --arrow-button-size: 58px;
        --arrow-button-size-integrated: 42px;
        --arrow-button-size-small: 20px;
        --arrow-icon-size: 32px;
        --arrow-icon-size-small: 24px;
        min-width: -moz-fit-content;
        min-width: fit-content;
    }
.email-signup__heading {
        padding-block: var(--padding-sm);
    }
.email-signup__form {
        display: flex;
        flex-direction: column;
    }
.email-signup__input-group {
        display: flex;
        align-items: stretch;
        background-color: transparent;
    }
.email-signup__input-group:not(.email-signup__input-group--integrated):not(.email-signup__input-group--underline) {
        gap: var(--gap-xs);
        align-items: center;
    }
.email-signup__input-group--integrated {
        border-width: var(--border-width);
        border-radius: var(--border-radius);
        border-style: solid;
        border-color: var(--color-input-border, var(--color-border));
        background-color: var(--color-input-background, var(--color-background));
    }
.email-signup__input-group--integrated.email-signup__input-group--no-border {
        border: none;
    }
.email-signup__input {
        flex: 1;
        min-width: 0;
        border-width: var(--border-width);
        border-radius: var(--border-radius);
        border-style: solid;
        border-color: var(--color-input-border, var(--color-border));
        color: var(--color-input-text, var(--color-foreground));
        background: var(--color-input-background, var(--color-background));
        padding: var(--padding-lg) var(--padding-xl);
    }
.email-signup__input-group--integrated .email-signup__input {
        background-color: transparent;
        border: none;
        border-radius: 0;
    }
.email-signup__input-group .email-signup__input--none {
        color: var(--color-input-text, var(--color-foreground));
        background-color: var(--color-input-background, var(--color-background));
        border: none;
    }
.email-signup__input-group--underline {
        --box-shadow-color: var(--color-input-border, var(--color-border));
        --box-shadow-multiplier: 1;
        --box-shadow-focused-multiplier: 1.75;
        box-shadow: 0 calc(var(--border-width) * var(--box-shadow-multiplier)) 0 var(--box-shadow-color);
        margin-block-end: calc(var(--border-width) * var(--box-shadow-focused-multiplier));
        transition: box-shadow var(--animation-values);
    }
.email-signup__input-group--underline:focus-within {
        --box-shadow-color: var(--color-input-text, var(--color-foreground));
        --box-shadow-multiplier: var(--box-shadow-focused-multiplier);
    }
.email-signup__input-group .email-signup__input--underline {
        color: var(--color-input-text, var(--color-foreground));
        background-color: transparent;
        border: none;
        border-radius: 0;
        padding: 12px 0;
    }
.email-signup__input-group .email-signup__input--underline:focus-visible {
        outline: none;
    }
.email-signup__input.paragraph {
        color: var(--color-input-text, var(--color-foreground));
        outline-color: var(--color-input-background, var(--color-background));
    }
.email-signup__input::-moz-placeholder {
        color: rgb(var(--color-input-text-rgb) / var(--opacity-70));
    }
.email-signup__input::placeholder {
        color: rgb(var(--color-input-text-rgb) / var(--opacity-70));
    }
.email-signup__button {
        flex-shrink: 0;
        padding: 0;
        white-space: nowrap;
        cursor: pointer;
    }
.email-signup__input,
    .email-signup__button--text {
        min-height: var(--arrow-button-size);
        padding: var(--padding-lg) var(--padding-3xl);
    }
.email-signup__button-icon {
        display: block;
        width: var(--arrow-icon-size);
        height: var(--arrow-icon-size);
    }
.email-signup__button--integrated {
        align-self: stretch;
        margin: var(--margin-xs, var(--gap-xs));
    }
.email-signup__button--integrated.email-signup__button--arrow {
        width: var(--arrow-button-size-integrated);
        height: var(--arrow-button-size-integrated);
        align-self: center;
    }
.email-signup__button--integrated.email-signup__button--arrow .email-signup__button-icon {
        width: var(--arrow-icon-size-small);
        height: var(--arrow-icon-size-small);
    }
.email-signup__input--underline + .email-signup__button--integrated {
        align-self: center;
        margin: 0;
    }
.email-signup__button.button-unstyled {
        background-color: transparent;
        color: var(--color-input-text, var(--color-foreground));
    }
.email-signup__button.button-unstyled:hover {
        color: rgb(var(--color-input-text-rgb) / var(--opacity-70));
    }
@media screen and (max-width: 749px) {
        .email-signup-block {
            width: 100%;
            min-width: unset;
        }

        .email-signup__input {
            width: 100%;
        }

        .email-signup__input-group:not(.email-signup__input-group--arrow):not(.email-signup__input-group--underline):not(.email-signup__input-group--integrated) {
            flex-direction: column;
        }

        .email-signup__button {
            width: 100%;
        }

        .email-signup__input-group--underline .email-signup__button.button-unstyled {
            width: auto;
        }

        .email-signup__button-icon {
            align-self: center;
            justify-self: center;
            width: var(--icon-size-lg);
            height: var(--icon-size-lg);
        }
    }
.menu {
        width: 100%;
    }
.menu:not(:has(.menu__heading--empty)) .details-content {
        margin-block-start: var(--spacing--size);
    }
.menu__item + .menu__item {
        margin-block-start: var(--spacing--size);
    }
.menu .menu__heading--empty {
        display: none;
    }
.menu__heading {
        display: flex;
        align-items: center;
        justify-content: space-between;
        cursor: pointer;
        list-style: none;
    }
.menu__heading::-webkit-details-marker {
        display: none;
    }
.menu__heading__default {
        display: contents;
    }
.menu__heading__accordion {
        display: none;
    }
.list-unstyled {
        margin: 0;
        padding: 0;
        list-style: none;
    }
.footer-content {
        contain: content;
        content-visibility: auto;
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--footer-gap);
        align-items: start;
    }
.footer-content .menu__heading__default {
        font-weight: var(--font-heading--weight);
    }
@media screen and (min-width: 750px) and (max-width: 989px) {
        .footer-content {
            grid-template-columns: repeat(min(var(--grid-columns), 3), 1fr);
            grid-auto-flow: row;
        }

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

        .footer-content--isolated-grid-item-tablet > :last-child {
            grid-column: 1 / -1;
        }
    }
@media screen and (min-width: 990px) {
        .footer-content {
            grid-template-columns: repeat(var(--grid-columns), 1fr);
        }

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

        .footer-content--isolated-grid-item-desktop > :last-child {
            grid-column: 1 / -1;
        }
    }
.utilities {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: var(--gap);
        text-wrap: nowrap;
        border-top: var(--border-width) solid var(--color-border);
        color: var(--color-foreground);
    }
.utilities a {
        color: inherit;
    }
.utilities > * {
        text-align: center;
    }
@media screen and (min-width: 750px) {
        .utilities {
            display: grid;
            grid-template-columns: 1fr auto 1fr;
            justify-content: center;
            gap: var(--gap);
            align-items: center;
            text-align: left;
        }

        .utilities > * {
            text-align: left;
            justify-self: start;
        }

        .utilities--blocks-1 {
            grid-template-columns: 1fr;
            justify-content: start;
        }

        .utilities--blocks-1 > * {
            justify-self: start;
            text-align: left;
        }

        .utilities--blocks-2 {
            grid-template-columns: 1fr 1fr;
        }

        .utilities--blocks-2 > *:nth-child(2) {
            justify-self: end;
            text-align: right;
        }

        .utilities--blocks-3 {
            grid-template-columns: 1fr auto 1fr;
        }

        .utilities--blocks-3 > *:nth-child(2) {
            justify-self: center;
            text-align: center;
        }

        .utilities--blocks-3 > *:nth-child(3) {
            justify-self: end;
            text-align: right;
        }
    }
.payment-icons {
        width: 100%;
    }
.payment-icons__list {
        display: flex;
        align-items: center;
        justify-content: var(--alignment);
        flex-wrap: wrap;
        gap: var(--icon-gap);
        margin: 0;
        padding: 0;
        list-style: none;
    }
.payment-icons__item {
        display: flex;
        align-items: center;
    }
.payment-icon-label {
        display: inline-flex;
        align-items: center;
        min-height: 22px;
        border: 1px solid currentColor;
        border-radius: 3px;
        padding-inline: 6px;
        font-size: 10px;
        line-height: 1;
        text-transform: uppercase;
    }
.social-icons__wrapper {
        display: flex;
        gap: var(--gap-sm);
        flex-wrap: wrap;
        justify-content: center;
        color: var(--color-foreground);
    }
.social-icons__wrapper a {
        color: inherit;
    }
@media screen and (min-width: 750px) {
        .social-icons__wrapper {
            flex-wrap: nowrap;
            justify-content: flex-start;
        }
    }
.social-icons__icon-wrapper {
        display: flex;
        align-items: center;
        justify-content: center;
        height: var(--icon-size-lg, 24px);
    }
.social-icons__icon {
        display: none;
        flex-shrink: 0;
        width: var(--icon-size-lg, 24px);
        height: var(--icon-size-lg, 24px);
    }
.social-icons__icon-wrapper:has(.social-icons__icon path, .social-icons__icon circle) {
        width: var(--icon-size-lg, 24px);
    }
.social-icons__icon-wrapper:has(.social-icons__icon path, .social-icons__icon circle) .social-icons__icon {
        display: block;
    }
.social-icons__icon-wrapper:has(.social-icons__icon path, .social-icons__icon circle) .social-icons__icon-label {
        display: none;
    }
.social-icons__icon-wrapper--disabled {
        cursor: not-allowed;
    }
.social-icons__icon-wrapper--disabled a {
        pointer-events: none;
    }
.footer-utilities__text {
        color: inherit;
        text-decoration: none;
    }
.policy-list-trigger,
    .button-unstyled {
        padding: 0;
        border: 0;
        background: transparent;
        color: inherit;
        font: inherit;
    }
.policy-list-trigger {
        anchor-name: --terms-policies-trigger;
        cursor: pointer;
        font-size: var(--font-size, 0.75rem);
        text-transform: var(--text-transform, none);
    }
.terms-policies-popover {
        position-anchor: --terms-policies-trigger;
        inset: unset;
        bottom: calc(anchor(top) + 1rem);
        left: anchor(left);
        border-radius: var(--style-border-radius-popover, 8px);
        background: var(--color-background);
        color: var(--color-foreground);
        border: var(--style-border-popover, 1px solid rgb(var(--color-border-rgb, 0 0 0) / 0.15));
        box-shadow: var(--shadow-popover, 0 12px 32px rgb(0 0 0 / 0.12));
        padding: 8px;
        margin: 0;
        opacity: 0;
        scale: 0.94;
        translate: 0 6px;
        transform-origin: 3.9em 100%;
        transition-property: display, overlay, opacity, scale, translate;
        transition-behavior: allow-discrete;
        transition-duration: 0.3s;
        transition-timing-function: var(--ease-out-quad);
    }
.terms-policies-popover:popover-open {
        opacity: 1;
        scale: 1;
        translate: 0 0;
    }
@starting-style {
        .terms-policies-popover:popover-open {
            opacity: 0.7;
            scale: 0.94;
            translate: 0 6px;
        }
    }
.policy_list li {
        border-radius: calc(var(--style-border-radius-popover, 8px) - 4px);
    }
.policy_list a {
        display: inline-block;
        width: 100%;
        padding: 8px;
        color: var(--color-foreground);
        text-align: start;
        font-size: var(--font-size, 0.75rem);
        text-transform: var(--text-transform, none);
    }
.policy_list li:is(:hover, :focus-within) {
        background: rgb(var(--color-foreground-rgb, 0 0 0) / 0.15);
    }
.content-block {
        display: flex;
        max-width: 100%;
        flex-direction: column;
        gap: var(--gap, var(--gap-md));
    }
.section-carousel {
        row-gap: var(--gap);
    }
.carousel-content {
        position: relative;
        display: flex;
        flex-direction: column;
        width: 100%;
        timeline-scope: var(--slideshow-timeline);
    }
.carousel-content slideshow-container {
        background-color: transparent;
    }
.carousel-content slideshow-slides {
        --slideshow-gap: var(--carousel-gap);
        min-height: var(--slide-min-height, auto);
        align-items: var(--slideshow-align-items, flex-start);
    }
.carousel-content slideshow-slides > .card {
        flex: 0 0 auto;
        width: calc(
            (100% - (var(--carousel-gap, 8px) * (var(--carousel-mobile-columns, 2) - 1)) - var(--peek-next-slide-size, 0px)) /
                var(--carousel-mobile-columns, 2)
        );
        scroll-snap-align: start;
    }
.carousel-content slideshow-slides > .\!card {
        flex: 0 0 auto !important;
        width: calc(
            (100% - (var(--carousel-gap, 8px) * (var(--carousel-mobile-columns, 2) - 1)) - var(--peek-next-slide-size, 0px)) /
                var(--carousel-mobile-columns, 2)
        ) !important;
        scroll-snap-align: start !important;
    }
.carousel-content slideshow-arrows {
        position: absolute;
        inset: 0;
        z-index: var(--layer-heightened);
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-inline: var(--util-page-margin-offset);
        pointer-events: none;
        mix-blend-mode: difference;
    }
.carousel-content slideshow-arrows:has(.slideshow-control--shape-square),
    .carousel-content slideshow-arrows:has(.slideshow-control--shape-circle) {
        mix-blend-mode: normal;
    }
.carousel-content .slideshow-control {
        pointer-events: auto;
        opacity: 0;
        width: auto;
        height: auto;
        min-width: var(--minimum-touch-target);
        min-height: var(--minimum-touch-target);
        padding: 0 var(--padding-xs);
        border: 0;
        background: transparent;
        color: var(--color-white, #ffffff);
    }
.carousel-content .slideshow-control[disabled] {
        display: none;
    }
.carousel-content slideshow-arrows .slideshow-control:not([disabled]) {
        opacity: 1;
    }
.carousel-content:is(:hover, :focus-within) > slideshow-container > slideshow-arrows .slideshow-control:not([disabled]) {
        animation: none;
        opacity: 1;
    }
.carousel-content .slideshow-control--next {
        margin-inline-start: auto;
    }
.carousel-content .slideshow-control--shape-circle,
    .carousel-content .slideshow-control--shape-square {
        display: flex;
        align-items: center;
        justify-content: center;
        aspect-ratio: 1 / 1;
        background-color: var(--color-primary-button-background);
        color: var(--color-primary-button-text);
    }
.carousel-content .slideshow-control--shape-circle {
        border-radius: 50%;
    }
.carousel-content .slideshow-control--shape-square {
        border-radius: 0;
    }
.carousel-content .slideshow-control--large .svg-wrapper,
    .carousel-content .slideshow-control--large svg {
        width: var(--slideshow-controls-icon);
        height: var(--slideshow-controls-icon);
    }
.carousel-content .slideshow-control--large .icon-caret {
        --icon-stroke-width: 1px;
    }
.carousel-content .icon-caret {
        rotate: -90deg;
    }
.carousel-content .flip-x {
        scale: -1 1;
    }
.\!card {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        overflow: hidden !important;
        width: 100% !important;
        height: 100% !important;
        background: var(--color-background) !important;
        color: var(--color-foreground) !important;
        border-radius: var(--border-radius, 0) !important;
        border-width: var(--border-width, 0) !important;
        border-style: var(--border-style, none) !important;
        border-color: var(--border-color) !important;
        container-type: inline-size !important;
    }
.card {
        position: relative;
        display: flex;
        flex-direction: column;
        overflow: hidden;
        width: 100%;
        height: 100%;
        background: var(--color-background);
        color: var(--color-foreground);
        border-radius: var(--border-radius, 0);
        border-width: var(--border-width, 0);
        border-style: var(--border-style, none);
        border-color: var(--border-color);
        container-type: inline-size;
    }
.card__content {
        position: relative;
        z-index: var(--layer-flat);
        display: flex;
        flex-direction: column;
        width: 100%;
        height: 100%;
        aspect-ratio: var(--card-ratio, 1);
    }
.card__content.background-transparent {
        background-color: transparent;
    }
.card__content--has-min-height {
        min-height: calc(100cqw / var(--card-ratio-numeric));
    }
.card__inner {
        flex: 1;
    }
.card__media-wrapper {
        position: absolute;
        inset: 0;
        display: flex;
        width: 100%;
        height: 100%;
        overflow: hidden;
    }
.card__media-wrapper :is(img, video, .theme-image, .card__background-image, .card__background-placeholder) {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover;
    }
.card__video {
        position: absolute;
        inset: 0;
        z-index: var(--layer-raised);
    }
.card__overlay {
        position: absolute;
        inset: 0;
        z-index: var(--layer-raised);
        pointer-events: none;
    }
.card__link {
        position: absolute;
        inset: 0;
        z-index: var(--layer-raised);
    }
.card__link ~ :is(.card__content, .card__media-wrapper) {
        pointer-events: none;
    }
.card__link ~ :is(.card__content, .card__media-wrapper) :is(a, button, input, textarea, select) {
        pointer-events: auto;
    }
.card__link ~ .card__content--design-mode {
        pointer-events: auto;
    }
@media screen and (min-width: 750px) {
        .carousel-content slideshow-slides > .card {
            width: calc(
                (100% - (var(--carousel-gap, 8px) * (var(--carousel-columns, 4) - 1)) - var(--peek-next-slide-size, 0px)) /
                    var(--carousel-columns, 4)
            );
        }
        .carousel-content slideshow-slides > .\!card {
            width: calc(
                (100% - (var(--carousel-gap, 8px) * (var(--carousel-columns, 4) - 1)) - var(--peek-next-slide-size, 0px)) /
                    var(--carousel-columns, 4)
            ) !important;
        }
    }
.icon-block {
        display: flex;
        flex-shrink: 0;
    }
.icon-block__media {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: var(--icon-size-lg, 24px);
        height: auto;
        color: currentColor;
    }
svg.icon-block__media,
    .icon-block__media svg {
        width: 100%;
        height: 100%;
    }
.jumbo-text {
        display: block;
        width: 100%;
        font-family: var(--font-family, inherit);
        font-style: var(--font-style, normal);
        font-weight: var(--font-weight, inherit);
        color: var(--color, inherit);
        letter-spacing: var(--letter-spacing, -0.02em);
        line-height: var(--line-height, 1);
        margin-left: var(--margin-left-nudge, 0);
        margin-right: var(--margin-right-nudge, 0);
        text-align: var(--text-align, inherit);
        text-box: var(--text-trim, trim-end cap text);
        text-transform: var(--text-transform, none);
        overflow: visible;
    }
jumbo-text.jumbo-text {
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease;
    }
.logo-block__jumbo-text[data-upstorr-jumbo-text="logo"]:not(.ready) {
        opacity: 0;
        visibility: hidden;
    }
.media-with-content__content jumbo-text.jumbo-text {
        align-self: stretch;
        width: 100%;
        max-width: none;
        min-width: 0;
        margin-inline: 0;
        overflow: visible;
    }
jumbo-text.jumbo-text.ready {
        opacity: 1;
        visibility: visible;
    }
jumbo-text.jumbo-text.\!ready {
        opacity: 1 !important;
        visibility: visible !important;
    }
.logo-block__jumbo-text[data-upstorr-jumbo-text="logo"].ready {
        opacity: 1;
        visibility: visible;
    }
.logo-block__jumbo-text[data-upstorr-jumbo-text="logo"].\!ready {
        opacity: 1 !important;
        visibility: visible !important;
    }
@media screen and (max-width: 749px) {
        .logo-block__jumbo-text[data-upstorr-jumbo-text="logo"].ready[data-upstorr-jumbo-viewport="desktop"] {
            opacity: 0;
            visibility: hidden;
        }
        .logo-block__jumbo-text[data-upstorr-jumbo-text="logo"].\!ready[data-upstorr-jumbo-viewport="desktop"] {
            opacity: 0 !important;
            visibility: hidden !important;
        }
    }
@media screen and (min-width: 750px) {
        .logo-block__jumbo-text[data-upstorr-jumbo-text="logo"].ready[data-upstorr-jumbo-viewport="mobile"] {
            opacity: 0;
            visibility: hidden;
        }
        .logo-block__jumbo-text[data-upstorr-jumbo-text="logo"].\!ready[data-upstorr-jumbo-viewport="mobile"] {
            opacity: 0 !important;
            visibility: hidden !important;
        }
    }
jumbo-text.jumbo-text[data-cap-text='true'] {
        text-box-edge: cap text;
    }
.jumbo-text-line {
        display: inline-flex;
        white-space: pre;
    }
.jumbo-text__content {
        font-size: clamp(3.5rem, 12vw, 7rem);
        font-weight: inherit;
        color: inherit;
        line-height: inherit;
        letter-spacing: inherit;
    }
.logo-block .jumbo-text__content {
        display: inline-flex;
        font-size: inherit;
        white-space: pre;
    }
.jumbo-text--blur .jumbo-text__content {
        filter: blur(0);
        transition: filter var(--animation-speed-slow) var(--ease-out-cubic);
    }
@media (prefers-reduced-motion: no-preference) {
        @keyframes casa-jumbo-text-blur-in {
            from {
                filter: blur(20px);
                opacity: 0.5;
                transform: scale(1.05);
            }

            to {
                filter: blur(0);
                opacity: 1;
                transform: scale(1);
            }
        }

        @keyframes casa-jumbo-text-reveal-in {
            from {
                transform: translateY(100%);
            }

            to {
                transform: translateY(0);
            }
        }

        jumbo-text.jumbo-text.ready[data-text-effect='blur'] {
            filter: blur(20px);
            opacity: 0.5;
            scale: 1.05;
            transition:
                filter 1.6s var(--animation-timing-fade-in),
                opacity 1.3s var(--animation-timing-fade-in),
                scale 1.6s var(--animation-timing-fade-in);
            transform-origin: center;
        }

        jumbo-text.jumbo-text.jumbo-text-preparing-animation[data-text-effect='blur'] {
            transition: none;
        }

        jumbo-text.jumbo-text.jumbo-text-visible[data-text-effect='blur'] {
            filter: blur(0);
            opacity: 1;
            scale: 1;
        }

        jumbo-text.jumbo-text.ready[data-text-effect='reveal'] {
            overflow: hidden;
        }

        jumbo-text.jumbo-text.ready[data-text-effect='reveal'] .jumbo-text-line {
            transform: translateY(100%);
        }

        jumbo-text.jumbo-text.jumbo-text-preparing-animation[data-text-effect='reveal'] .jumbo-text-line {
            transition: none;
        }

        jumbo-text.jumbo-text.jumbo-text-visible[data-text-effect='reveal'] .jumbo-text-line {
            transition: transform 0.5s var(--animation-timing-fade-in) calc(var(--line-index) * 0.05s);
            transform: translateY(0);
        }

        jumbo-text.jumbo-text[data-text-effect='reveal'].jumbo-text-visible {
            overflow: visible;
            transition: overflow 0s linear 0.75s;
        }
        @keyframes casa-jumbo-text-blur-in {
            from {
                filter: blur(20px);
                opacity: 0.5;
                transform: scale(1.05);
            }

            to {
                filter: blur(0);
                opacity: 1;
                transform: scale(1);
            }
        }

        @keyframes casa-jumbo-text-reveal-in {
            from {
                transform: translateY(100%);
            }

            to {
                transform: translateY(0);
            }
        }

        jumbo-text.jumbo-text.\!ready[data-text-effect='blur'] {
            filter: blur(20px) !important;
            opacity: 0.5 !important;
            scale: 1.05 !important;
            transition:
                filter 1.6s var(--animation-timing-fade-in),
                opacity 1.3s var(--animation-timing-fade-in),
                scale 1.6s var(--animation-timing-fade-in) !important;
            transform-origin: center !important;
        }

        jumbo-text.jumbo-text.\!ready[data-text-effect='reveal'] {
            overflow: hidden !important;
        }

        jumbo-text.jumbo-text.\!ready[data-text-effect='reveal'] .jumbo-text-line {
            transform: translateY(100%) !important;
        }
        @keyframes casa-jumbo-text-blur-in {
            from {
                filter: blur(20px);
                opacity: 0.5;
                transform: scale(1.05);
            }

            to {
                filter: blur(0);
                opacity: 1;
                transform: scale(1);
            }
        }

        @keyframes casa-jumbo-text-reveal-in {
            from {
                transform: translateY(100%);
            }

            to {
                transform: translateY(0);
            }
        }

        jumbo-text.jumbo-text.\!ready[data-text-effect='blur'] {
            filter: blur(20px) !important;
            opacity: 0.5 !important;
            scale: 1.05 !important;
            transition:
                filter 1.6s var(--animation-timing-fade-in),
                opacity 1.3s var(--animation-timing-fade-in),
                scale 1.6s var(--animation-timing-fade-in) !important;
            transform-origin: center !important;
        }

        jumbo-text.jumbo-text.\!ready[data-text-effect='reveal'] {
            overflow: hidden !important;
        }

        jumbo-text.jumbo-text.\!ready[data-text-effect='reveal'] .jumbo-text-line {
            transform: translateY(100%) !important;
        }
        @keyframes casa-jumbo-text-blur-in {
            from {
                filter: blur(20px);
                opacity: 0.5;
                transform: scale(1.05);
            }

            to {
                filter: blur(0);
                opacity: 1;
                transform: scale(1);
            }
        }

        @keyframes casa-jumbo-text-reveal-in {
            from {
                transform: translateY(100%);
            }

            to {
                transform: translateY(0);
            }
        }

        jumbo-text.jumbo-text.\!ready[data-text-effect='blur'] {
            filter: blur(20px) !important;
            opacity: 0.5 !important;
            scale: 1.05 !important;
            transition:
                filter 1.6s var(--animation-timing-fade-in),
                opacity 1.3s var(--animation-timing-fade-in),
                scale 1.6s var(--animation-timing-fade-in) !important;
            transform-origin: center !important;
        }

        jumbo-text.jumbo-text.\!ready[data-text-effect='reveal'] {
            overflow: hidden !important;
        }

        jumbo-text.jumbo-text.\!ready[data-text-effect='reveal'] .jumbo-text-line {
            transform: translateY(100%) !important;
        }
    }
.popup-link__button {
        display: inline-flex;
        align-items: center;
        gap: var(--gap-xs);
        text-align: left;
    }
.popup-link__button svg {
        display: inline-block;
        width: var(--icon-size-sm);
        height: var(--icon-size-sm);
    }
.popup-link__content {
        width: min(var(--normal-content-width, 720px), calc(100vw - 32px));
        max-height: var(--modal-max-height, calc(100dvh - 64px));
        padding: var(--padding-4xl, 48px) var(--padding-xl) var(--padding-xl);
        border: var(--style-border-popover, 1px solid rgb(var(--color-border-rgb, 0 0 0) / 0.15));
        border-radius: var(--style-border-radius-popover, 8px);
        background-color: var(--color-background);
        color: var(--color-foreground);
        box-shadow: var(--shadow-popover, 0 20px 60px rgb(0 0 0 / 0.16));
    }
.popup-link__content--drawer {
        position: fixed;
        inset: 0 0 0 auto;
        width: var(--sidebar-width, 420px);
        max-width: 95vw;
        height: 100%;
        max-height: 100dvh;
        margin: 0;
        border-radius: 0;
    }
.popup-link__inner {
        display: grid;
        gap: var(--gap-md);
    }
.popup-link__close {
        position: absolute;
        top: var(--margin-2xs, 8px);
        right: var(--margin-2xs, 8px);
        opacity: 0.8;
    }
.popup-link__close svg {
        width: var(--icon-size-sm);
        height: var(--icon-size-sm);
    }
.video-block {
        position: relative;
        display: block;
        width: var(--size-style-width-mobile, var(--size-style-width));
        max-width: 100%;
        overflow: hidden;
        aspect-ratio: var(--size-style-aspect-ratio, 16 / 9);
        background: rgb(var(--color-foreground-rgb, 0 0 0) / 0.08);
    }
.video-block > :is(img, div),
    .video-block iframe,
    .video-block__media {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover;
    }
.video-block__play {
        display: grid;
        place-items: center;
    }
.video-block[data-media-loaded="true"] > :is(.video-block__poster, .video-block__play) {
        display: none;
    }
.video-block__play-button {
        display: grid;
        place-items: center;
        width: 56px;
        height: 56px;
        border-radius: 999px;
        background: rgb(255 255 255 / 0.9);
        color: #000;
        box-shadow: 0 0 0 1px rgb(0 0 0 / 0.1);
    }
@media screen and (max-width: 749px) {
        .email-signup-block {
            width: 100%;
            min-width: unset;
        }

        .email-signup__input {
            width: 100%;
        }

        .email-signup__input-group:not(.email-signup__input-group--arrow):not(.email-signup__input-group--underline):not(.email-signup__input-group--integrated) {
            flex-direction: column;
        }

        .menu--accordion .menu__heading--empty {
            display: flex;
        }

        .menu--accordion .menu__heading__accordion {
            display: contents;
        }

        .menu--accordion .menu__heading__default {
            display: none;
        }

        .menu--accordion .details-content {
            margin-block-start: var(--spacing--size);
        }

        .menu--accordion .menu__details {
            padding-inline: 0;
        }

        .menu--dividers .menu__details {
            border-block-end: var(--style-border-width, 1px) solid var(--color-border);
        }

        .menu--dividers .details-content {
            padding-block-end: var(--padding-sm);
        }
    }
@media screen and (min-width: 750px) {
        .contact-form__form-row {
            flex-direction: row;
            align-items: center;
        }

        .social-icons__wrapper {
            flex-wrap: nowrap;
            justify-content: flex-start;
        }
    }
.color-scheme-1 {
        --color-background: var(--scheme-1-background);
        --color-background-rgb: var(--scheme-1-background-rgb);
        --opacity-5-15: var(--scheme-1-opacity-5-15);
        --opacity-10-25: var(--scheme-1-opacity-10-25);
        --opacity-35-55: var(--scheme-1-opacity-35-55);
        --opacity-40-60: var(--scheme-1-opacity-40-60);
        --opacity-30-60: var(--scheme-1-opacity-30-60);
        --color-foreground: var(--scheme-1-foreground);
        --color-foreground-rgb: var(--scheme-1-foreground-rgb);
        --color-foreground-heading: var(--scheme-1-foreground-heading);
        --color-foreground-heading-rgb: var(--scheme-1-foreground-heading-rgb);
        --color-primary: var(--scheme-1-primary);
        --color-primary-rgb: var(--scheme-1-primary-rgb);
        --color-primary-hover: var(--scheme-1-primary-hover);
        --color-primary-hover-rgb: var(--scheme-1-primary-hover-rgb);
        --color-border: var(--scheme-1-border);
        --color-border-rgb: var(--scheme-1-border-rgb);
        --color-shadow: var(--scheme-1-shadow);
        --color-shadow-rgb: var(--scheme-1-shadow-rgb);
        --color-primary-button-background: var(--scheme-1-primary-button-background);
        --color-primary-button-text: var(--scheme-1-primary-button-text);
        --color-primary-button-border: var(--scheme-1-primary-button-border);
        --color-primary-button-hover-background: var(--scheme-1-primary-button-hover-background);
        --color-primary-button-hover-text: var(--scheme-1-primary-button-hover-text);
        --color-primary-button-hover-border: var(--scheme-1-primary-button-hover-border);
        --color-secondary-button-background: var(--scheme-1-secondary-button-background);
        --color-secondary-button-text: var(--scheme-1-secondary-button-text);
        --color-secondary-button-border: var(--scheme-1-secondary-button-border);
        --color-secondary-button-hover-background: var(--scheme-1-secondary-button-hover-background);
        --color-secondary-button-hover-text: var(--scheme-1-secondary-button-hover-text);
        --color-secondary-button-hover-border: var(--scheme-1-secondary-button-hover-border);
        --color-input-background: var(--scheme-1-input-background);
        --color-input-text: var(--scheme-1-input-text);
        --color-input-text-rgb: var(--scheme-1-input-text-rgb);
        --color-input-border: var(--scheme-1-input-border);
        --color-input-hover-background: var(--scheme-1-input-hover-background);
        --color-variant-background: var(--scheme-1-variant-background);
        --color-variant-text: var(--scheme-1-variant-text);
        --color-variant-text-rgb: var(--scheme-1-variant-text-rgb);
        --color-variant-border: var(--scheme-1-variant-border);
        --color-variant-hover-background: var(--scheme-1-variant-hover-background);
        --color-variant-hover-text: var(--scheme-1-variant-hover-text);
        --color-variant-hover-border: var(--scheme-1-variant-hover-border);
        --color-selected-variant-background: var(--scheme-1-selected-variant-background);
        --color-selected-variant-text: var(--scheme-1-selected-variant-text);
        --color-selected-variant-border: var(--scheme-1-selected-variant-border);
        --color-selected-variant-hover-background: var(--scheme-1-selected-variant-hover-background);
        --color-selected-variant-hover-text: var(--scheme-1-selected-variant-hover-text);
        --color-selected-variant-hover-border: var(--scheme-1-selected-variant-hover-border);
        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
        --font-h1--color: var(--color-foreground-heading);
        --font-h2--color: var(--color-foreground-heading);
        --font-h3--color: var(--color-foreground-heading);
        --font-h4--color: var(--color-foreground-heading);
        --font-h5--color: var(--color-foreground-heading);
        --font-h6--color: var(--color-foreground-heading);
        background: var(--color-background);
        color: var(--color-foreground);
    }
.color-scheme-2 {
        --color-background: var(--scheme-2-background);
        --color-background-rgb: var(--scheme-2-background-rgb);
        --opacity-5-15: var(--scheme-2-opacity-5-15);
        --opacity-10-25: var(--scheme-2-opacity-10-25);
        --opacity-35-55: var(--scheme-2-opacity-35-55);
        --opacity-40-60: var(--scheme-2-opacity-40-60);
        --opacity-30-60: var(--scheme-2-opacity-30-60);
        --color-foreground: var(--scheme-2-foreground);
        --color-foreground-rgb: var(--scheme-2-foreground-rgb);
        --color-foreground-heading: var(--scheme-2-foreground-heading);
        --color-foreground-heading-rgb: var(--scheme-2-foreground-heading-rgb);
        --color-primary: var(--scheme-2-primary);
        --color-primary-rgb: var(--scheme-2-primary-rgb);
        --color-primary-hover: var(--scheme-2-primary-hover);
        --color-primary-hover-rgb: var(--scheme-2-primary-hover-rgb);
        --color-border: var(--scheme-2-border);
        --color-border-rgb: var(--scheme-2-border-rgb);
        --color-shadow: var(--scheme-2-shadow);
        --color-shadow-rgb: var(--scheme-2-shadow-rgb);
        --color-primary-button-background: var(--scheme-2-primary-button-background);
        --color-primary-button-text: var(--scheme-2-primary-button-text);
        --color-primary-button-border: var(--scheme-2-primary-button-border);
        --color-primary-button-hover-background: var(--scheme-2-primary-button-hover-background);
        --color-primary-button-hover-text: var(--scheme-2-primary-button-hover-text);
        --color-primary-button-hover-border: var(--scheme-2-primary-button-hover-border);
        --color-secondary-button-background: var(--scheme-2-secondary-button-background);
        --color-secondary-button-text: var(--scheme-2-secondary-button-text);
        --color-secondary-button-border: var(--scheme-2-secondary-button-border);
        --color-secondary-button-hover-background: var(--scheme-2-secondary-button-hover-background);
        --color-secondary-button-hover-text: var(--scheme-2-secondary-button-hover-text);
        --color-secondary-button-hover-border: var(--scheme-2-secondary-button-hover-border);
        --color-input-background: var(--scheme-2-input-background);
        --color-input-text: var(--scheme-2-input-text);
        --color-input-text-rgb: var(--scheme-2-input-text-rgb);
        --color-input-border: var(--scheme-2-input-border);
        --color-input-hover-background: var(--scheme-2-input-hover-background);
        --color-variant-background: var(--scheme-2-variant-background);
        --color-variant-text: var(--scheme-2-variant-text);
        --color-variant-text-rgb: var(--scheme-2-variant-text-rgb);
        --color-variant-border: var(--scheme-2-variant-border);
        --color-variant-hover-background: var(--scheme-2-variant-hover-background);
        --color-variant-hover-text: var(--scheme-2-variant-hover-text);
        --color-variant-hover-border: var(--scheme-2-variant-hover-border);
        --color-selected-variant-background: var(--scheme-2-selected-variant-background);
        --color-selected-variant-text: var(--scheme-2-selected-variant-text);
        --color-selected-variant-border: var(--scheme-2-selected-variant-border);
        --color-selected-variant-hover-background: var(--scheme-2-selected-variant-hover-background);
        --color-selected-variant-hover-text: var(--scheme-2-selected-variant-hover-text);
        --color-selected-variant-hover-border: var(--scheme-2-selected-variant-hover-border);
        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
        --font-h1--color: var(--color-foreground-heading);
        --font-h2--color: var(--color-foreground-heading);
        --font-h3--color: var(--color-foreground-heading);
        --font-h4--color: var(--color-foreground-heading);
        --font-h5--color: var(--color-foreground-heading);
        --font-h6--color: var(--color-foreground-heading);
        background: var(--color-background);
        color: var(--color-foreground);
    }
.color-scheme-3 {
        --color-background: var(--scheme-3-background);
        --color-background-rgb: var(--scheme-3-background-rgb);
        --opacity-5-15: var(--scheme-3-opacity-5-15);
        --opacity-10-25: var(--scheme-3-opacity-10-25);
        --opacity-35-55: var(--scheme-3-opacity-35-55);
        --opacity-40-60: var(--scheme-3-opacity-40-60);
        --opacity-30-60: var(--scheme-3-opacity-30-60);
        --color-foreground: var(--scheme-3-foreground);
        --color-foreground-rgb: var(--scheme-3-foreground-rgb);
        --color-foreground-heading: var(--scheme-3-foreground-heading);
        --color-foreground-heading-rgb: var(--scheme-3-foreground-heading-rgb);
        --color-primary: var(--scheme-3-primary);
        --color-primary-rgb: var(--scheme-3-primary-rgb);
        --color-primary-hover: var(--scheme-3-primary-hover);
        --color-primary-hover-rgb: var(--scheme-3-primary-hover-rgb);
        --color-border: var(--scheme-3-border);
        --color-border-rgb: var(--scheme-3-border-rgb);
        --color-shadow: var(--scheme-3-shadow);
        --color-shadow-rgb: var(--scheme-3-shadow-rgb);
        --color-primary-button-background: var(--scheme-3-primary-button-background);
        --color-primary-button-text: var(--scheme-3-primary-button-text);
        --color-primary-button-border: var(--scheme-3-primary-button-border);
        --color-primary-button-hover-background: var(--scheme-3-primary-button-hover-background);
        --color-primary-button-hover-text: var(--scheme-3-primary-button-hover-text);
        --color-primary-button-hover-border: var(--scheme-3-primary-button-hover-border);
        --color-secondary-button-background: var(--scheme-3-secondary-button-background);
        --color-secondary-button-text: var(--scheme-3-secondary-button-text);
        --color-secondary-button-border: var(--scheme-3-secondary-button-border);
        --color-secondary-button-hover-background: var(--scheme-3-secondary-button-hover-background);
        --color-secondary-button-hover-text: var(--scheme-3-secondary-button-hover-text);
        --color-secondary-button-hover-border: var(--scheme-3-secondary-button-hover-border);
        --color-input-background: var(--scheme-3-input-background);
        --color-input-text: var(--scheme-3-input-text);
        --color-input-text-rgb: var(--scheme-3-input-text-rgb);
        --color-input-border: var(--scheme-3-input-border);
        --color-input-hover-background: var(--scheme-3-input-hover-background);
        --color-variant-background: var(--scheme-3-variant-background);
        --color-variant-text: var(--scheme-3-variant-text);
        --color-variant-text-rgb: var(--scheme-3-variant-text-rgb);
        --color-variant-border: var(--scheme-3-variant-border);
        --color-variant-hover-background: var(--scheme-3-variant-hover-background);
        --color-variant-hover-text: var(--scheme-3-variant-hover-text);
        --color-variant-hover-border: var(--scheme-3-variant-hover-border);
        --color-selected-variant-background: var(--scheme-3-selected-variant-background);
        --color-selected-variant-text: var(--scheme-3-selected-variant-text);
        --color-selected-variant-border: var(--scheme-3-selected-variant-border);
        --color-selected-variant-hover-background: var(--scheme-3-selected-variant-hover-background);
        --color-selected-variant-hover-text: var(--scheme-3-selected-variant-hover-text);
        --color-selected-variant-hover-border: var(--scheme-3-selected-variant-hover-border);
        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
        --font-h1--color: var(--color-foreground-heading);
        --font-h2--color: var(--color-foreground-heading);
        --font-h3--color: var(--color-foreground-heading);
        --font-h4--color: var(--color-foreground-heading);
        --font-h5--color: var(--color-foreground-heading);
        --font-h6--color: var(--color-foreground-heading);
        background: var(--color-background);
        color: var(--color-foreground);
    }
.color-scheme-4 {
        --color-background: var(--scheme-4-background);
        --color-background-rgb: var(--scheme-4-background-rgb);
        --opacity-5-15: var(--scheme-4-opacity-5-15);
        --opacity-10-25: var(--scheme-4-opacity-10-25);
        --opacity-35-55: var(--scheme-4-opacity-35-55);
        --opacity-40-60: var(--scheme-4-opacity-40-60);
        --opacity-30-60: var(--scheme-4-opacity-30-60);
        --color-foreground: var(--scheme-4-foreground);
        --color-foreground-rgb: var(--scheme-4-foreground-rgb);
        --color-foreground-heading: var(--scheme-4-foreground-heading);
        --color-foreground-heading-rgb: var(--scheme-4-foreground-heading-rgb);
        --color-primary: var(--scheme-4-primary);
        --color-primary-rgb: var(--scheme-4-primary-rgb);
        --color-primary-hover: var(--scheme-4-primary-hover);
        --color-primary-hover-rgb: var(--scheme-4-primary-hover-rgb);
        --color-border: var(--scheme-4-border);
        --color-border-rgb: var(--scheme-4-border-rgb);
        --color-shadow: var(--scheme-4-shadow);
        --color-shadow-rgb: var(--scheme-4-shadow-rgb);
        --color-primary-button-background: var(--scheme-4-primary-button-background);
        --color-primary-button-text: var(--scheme-4-primary-button-text);
        --color-primary-button-border: var(--scheme-4-primary-button-border);
        --color-primary-button-hover-background: var(--scheme-4-primary-button-hover-background);
        --color-primary-button-hover-text: var(--scheme-4-primary-button-hover-text);
        --color-primary-button-hover-border: var(--scheme-4-primary-button-hover-border);
        --color-secondary-button-background: var(--scheme-4-secondary-button-background);
        --color-secondary-button-text: var(--scheme-4-secondary-button-text);
        --color-secondary-button-border: var(--scheme-4-secondary-button-border);
        --color-secondary-button-hover-background: var(--scheme-4-secondary-button-hover-background);
        --color-secondary-button-hover-text: var(--scheme-4-secondary-button-hover-text);
        --color-secondary-button-hover-border: var(--scheme-4-secondary-button-hover-border);
        --color-input-background: var(--scheme-4-input-background);
        --color-input-text: var(--scheme-4-input-text);
        --color-input-text-rgb: var(--scheme-4-input-text-rgb);
        --color-input-border: var(--scheme-4-input-border);
        --color-input-hover-background: var(--scheme-4-input-hover-background);
        --color-variant-background: var(--scheme-4-variant-background);
        --color-variant-text: var(--scheme-4-variant-text);
        --color-variant-text-rgb: var(--scheme-4-variant-text-rgb);
        --color-variant-border: var(--scheme-4-variant-border);
        --color-variant-hover-background: var(--scheme-4-variant-hover-background);
        --color-variant-hover-text: var(--scheme-4-variant-hover-text);
        --color-variant-hover-border: var(--scheme-4-variant-hover-border);
        --color-selected-variant-background: var(--scheme-4-selected-variant-background);
        --color-selected-variant-text: var(--scheme-4-selected-variant-text);
        --color-selected-variant-border: var(--scheme-4-selected-variant-border);
        --color-selected-variant-hover-background: var(--scheme-4-selected-variant-hover-background);
        --color-selected-variant-hover-text: var(--scheme-4-selected-variant-hover-text);
        --color-selected-variant-hover-border: var(--scheme-4-selected-variant-hover-border);
        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
        --font-h1--color: var(--color-foreground-heading);
        --font-h2--color: var(--color-foreground-heading);
        --font-h3--color: var(--color-foreground-heading);
        --font-h4--color: var(--color-foreground-heading);
        --font-h5--color: var(--color-foreground-heading);
        --font-h6--color: var(--color-foreground-heading);
        background: var(--color-background);
        color: var(--color-foreground);
    }
.color-scheme-5 {
        --color-background: var(--scheme-5-background);
        --color-background-rgb: var(--scheme-5-background-rgb);
        --opacity-5-15: var(--scheme-5-opacity-5-15);
        --opacity-10-25: var(--scheme-5-opacity-10-25);
        --opacity-35-55: var(--scheme-5-opacity-35-55);
        --opacity-40-60: var(--scheme-5-opacity-40-60);
        --opacity-30-60: var(--scheme-5-opacity-30-60);
        --color-foreground: var(--scheme-5-foreground);
        --color-foreground-rgb: var(--scheme-5-foreground-rgb);
        --color-foreground-heading: var(--scheme-5-foreground-heading);
        --color-foreground-heading-rgb: var(--scheme-5-foreground-heading-rgb);
        --color-primary: var(--scheme-5-primary);
        --color-primary-rgb: var(--scheme-5-primary-rgb);
        --color-primary-hover: var(--scheme-5-primary-hover);
        --color-primary-hover-rgb: var(--scheme-5-primary-hover-rgb);
        --color-border: var(--scheme-5-border);
        --color-border-rgb: var(--scheme-5-border-rgb);
        --color-shadow: var(--scheme-5-shadow);
        --color-shadow-rgb: var(--scheme-5-shadow-rgb);
        --color-primary-button-background: var(--scheme-5-primary-button-background);
        --color-primary-button-text: var(--scheme-5-primary-button-text);
        --color-primary-button-border: var(--scheme-5-primary-button-border);
        --color-primary-button-hover-background: var(--scheme-5-primary-button-hover-background);
        --color-primary-button-hover-text: var(--scheme-5-primary-button-hover-text);
        --color-primary-button-hover-border: var(--scheme-5-primary-button-hover-border);
        --color-secondary-button-background: var(--scheme-5-secondary-button-background);
        --color-secondary-button-text: var(--scheme-5-secondary-button-text);
        --color-secondary-button-border: var(--scheme-5-secondary-button-border);
        --color-secondary-button-hover-background: var(--scheme-5-secondary-button-hover-background);
        --color-secondary-button-hover-text: var(--scheme-5-secondary-button-hover-text);
        --color-secondary-button-hover-border: var(--scheme-5-secondary-button-hover-border);
        --color-input-background: var(--scheme-5-input-background);
        --color-input-text: var(--scheme-5-input-text);
        --color-input-text-rgb: var(--scheme-5-input-text-rgb);
        --color-input-border: var(--scheme-5-input-border);
        --color-input-hover-background: var(--scheme-5-input-hover-background);
        --color-variant-background: var(--scheme-5-variant-background);
        --color-variant-text: var(--scheme-5-variant-text);
        --color-variant-text-rgb: var(--scheme-5-variant-text-rgb);
        --color-variant-border: var(--scheme-5-variant-border);
        --color-variant-hover-background: var(--scheme-5-variant-hover-background);
        --color-variant-hover-text: var(--scheme-5-variant-hover-text);
        --color-variant-hover-border: var(--scheme-5-variant-hover-border);
        --color-selected-variant-background: var(--scheme-5-selected-variant-background);
        --color-selected-variant-text: var(--scheme-5-selected-variant-text);
        --color-selected-variant-border: var(--scheme-5-selected-variant-border);
        --color-selected-variant-hover-background: var(--scheme-5-selected-variant-hover-background);
        --color-selected-variant-hover-text: var(--scheme-5-selected-variant-hover-text);
        --color-selected-variant-hover-border: var(--scheme-5-selected-variant-hover-border);
        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
        --font-h1--color: var(--color-foreground-heading);
        --font-h2--color: var(--color-foreground-heading);
        --font-h3--color: var(--color-foreground-heading);
        --font-h4--color: var(--color-foreground-heading);
        --font-h5--color: var(--color-foreground-heading);
        --font-h6--color: var(--color-foreground-heading);
        background: var(--color-background);
        color: var(--color-foreground);
    }
.color-scheme-6 {
        --color-background: var(--scheme-6-background);
        --color-background-rgb: var(--scheme-6-background-rgb);
        --opacity-5-15: var(--scheme-6-opacity-5-15);
        --opacity-10-25: var(--scheme-6-opacity-10-25);
        --opacity-35-55: var(--scheme-6-opacity-35-55);
        --opacity-40-60: var(--scheme-6-opacity-40-60);
        --opacity-30-60: var(--scheme-6-opacity-30-60);
        --color-foreground: var(--scheme-6-foreground);
        --color-foreground-rgb: var(--scheme-6-foreground-rgb);
        --color-foreground-heading: var(--scheme-6-foreground-heading);
        --color-foreground-heading-rgb: var(--scheme-6-foreground-heading-rgb);
        --color-primary: var(--scheme-6-primary);
        --color-primary-rgb: var(--scheme-6-primary-rgb);
        --color-primary-hover: var(--scheme-6-primary-hover);
        --color-primary-hover-rgb: var(--scheme-6-primary-hover-rgb);
        --color-border: var(--scheme-6-border);
        --color-border-rgb: var(--scheme-6-border-rgb);
        --color-shadow: var(--scheme-6-shadow);
        --color-shadow-rgb: var(--scheme-6-shadow-rgb);
        --color-primary-button-background: var(--scheme-6-primary-button-background);
        --color-primary-button-text: var(--scheme-6-primary-button-text);
        --color-primary-button-border: var(--scheme-6-primary-button-border);
        --color-primary-button-hover-background: var(--scheme-6-primary-button-hover-background);
        --color-primary-button-hover-text: var(--scheme-6-primary-button-hover-text);
        --color-primary-button-hover-border: var(--scheme-6-primary-button-hover-border);
        --color-secondary-button-background: var(--scheme-6-secondary-button-background);
        --color-secondary-button-text: var(--scheme-6-secondary-button-text);
        --color-secondary-button-border: var(--scheme-6-secondary-button-border);
        --color-secondary-button-hover-background: var(--scheme-6-secondary-button-hover-background);
        --color-secondary-button-hover-text: var(--scheme-6-secondary-button-hover-text);
        --color-secondary-button-hover-border: var(--scheme-6-secondary-button-hover-border);
        --color-input-background: var(--scheme-6-input-background);
        --color-input-text: var(--scheme-6-input-text);
        --color-input-text-rgb: var(--scheme-6-input-text-rgb);
        --color-input-border: var(--scheme-6-input-border);
        --color-input-hover-background: var(--scheme-6-input-hover-background);
        --color-variant-background: var(--scheme-6-variant-background);
        --color-variant-text: var(--scheme-6-variant-text);
        --color-variant-text-rgb: var(--scheme-6-variant-text-rgb);
        --color-variant-border: var(--scheme-6-variant-border);
        --color-variant-hover-background: var(--scheme-6-variant-hover-background);
        --color-variant-hover-text: var(--scheme-6-variant-hover-text);
        --color-variant-hover-border: var(--scheme-6-variant-hover-border);
        --color-selected-variant-background: var(--scheme-6-selected-variant-background);
        --color-selected-variant-text: var(--scheme-6-selected-variant-text);
        --color-selected-variant-border: var(--scheme-6-selected-variant-border);
        --color-selected-variant-hover-background: var(--scheme-6-selected-variant-hover-background);
        --color-selected-variant-hover-text: var(--scheme-6-selected-variant-hover-text);
        --color-selected-variant-hover-border: var(--scheme-6-selected-variant-hover-border);
        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
        --font-h1--color: var(--color-foreground-heading);
        --font-h2--color: var(--color-foreground-heading);
        --font-h3--color: var(--color-foreground-heading);
        --font-h4--color: var(--color-foreground-heading);
        --font-h5--color: var(--color-foreground-heading);
        --font-h6--color: var(--color-foreground-heading);
        background: var(--color-background);
        color: var(--color-foreground);
    }
:where(
        .color-scheme-1,
        .color-scheme-2,
        .color-scheme-3,
        .color-scheme-4,
        .color-scheme-5,
        .color-scheme-6,
        .color-scheme-7
    ) {
        --font-h1-color: var(--font-h1--color);
        --font-h2-color: var(--font-h2--color);
        --font-h3-color: var(--font-h3--color);
        --font-h4-color: var(--font-h4--color);
        --font-h5-color: var(--font-h5--color);
        --font-h6-color: var(--font-h6--color);
    }
.casa-accent {
        font-family: var(--casa-accent);
    }
.casa-button {
        display: inline-flex;
        min-height: 44px;
        align-items: center;
        justify-content: center;
        border: 1px solid currentColor;
        border-radius: var(--casa-primary-button-radius);
        padding: 14px 22px;
        font-family: var(--casa-accent);
        font-size: 12px;
        font-weight: 500;
        letter-spacing: 0.18em;
        line-height: 1;
        text-transform: uppercase;
        transition: background-color 180ms ease, color 180ms ease, opacity 180ms ease;
    }
.casa-button:hover {
        opacity: 0.78;
    }
.button:not(.button-unstyled),
    .button-secondary:not(.button-unstyled) {
        --text-align: center;
        display: grid;
        align-content: center;
        text-decoration: none;
        text-align: var(--text-align);
        color: var(--button-color);
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        background-color: var(--button-background-color);
        border: none;
        font-family: var(--font-paragraph--family);
        font-style: var(--font-paragraph--style);
        font-weight: var(--font-paragraph--weight);
        font-size: var(--font-paragraph--size);
        line-height: var(--font-paragraph--line-height);
        margin-block: 0;
        transition: color 125ms ease-in-out, box-shadow 125ms ease-in-out, background-color 125ms ease-in-out;
        cursor: pointer;
        width: -moz-fit-content;
        width: fit-content;
        box-shadow: inset 0 0 0 var(--button-border-width) var(--button-border-color);
        padding-block: var(--button-padding-block);
        padding-inline: var(--button-padding-inline);
    }
.button.size-style:not(.button-unstyled),
    .button-secondary.size-style:not(.button-unstyled) {
        width: var(--size-style-width);
    }
.button--download.add-to-cart-button.size-style:not(.button-unstyled) {
        height: var(--height-buy-buttons);
    }
@media (max-width: 749px) {
        .button.size-style:not(.button-unstyled),
        .button-secondary.size-style:not(.button-unstyled) {
            width: var(--size-style-width-mobile, var(--size-style-width));
        }
    }
.button:not(.button-unstyled) {
        --button-color: var(--color-primary-button-text);
        --button-background-color: var(--color-primary-button-background);
        --button-border-color: var(--color-primary-button-border);
        --button-border-width: var(--style-border-width-primary);
        font-family: var(--button-font-family-primary);
        text-transform: var(--button-text-case-primary);
        border-radius: var(--style-border-radius-buttons-primary);
        outline-color: var(--button-background-color);
    }
.button:not(.button-unstyled):hover {
        --button-color: var(--color-primary-button-hover-text);
        --button-background-color: var(--color-primary-button-hover-background);
        --button-border-color: var(--color-primary-button-hover-border);
    }
.button:not(.button-unstyled)[hidden] {
        display: none;
    }
.button[aria-disabled='true'],
    .button-secondary[aria-disabled='true'],
    .button:disabled {
        opacity: 0.5;
        cursor: not-allowed;
    }
.button:not(.button-unstyled).quick-add__button {
        display: var(--quick-add-mobile-display, none);
        align-items: center;
        justify-content: center;
        width: -moz-fit-content;
        width: fit-content;
        height: var(--button-size-md);
        padding: 0;
        overflow: hidden;
        color: var(--color-foreground);
        background: linear-gradient(var(--color-background) 0 100%) padding-box;
        border: 2px solid hsl(0 0% 0% / 0.15);
        border-radius: 50px;
        cursor: pointer;
        opacity: var(--quick-add-mobile-opacity, 0);
        pointer-events: all;
        position: absolute;
        right: max(var(--quick-add-right), calc((var(--border-radius, 0px) + var(--quick-add-right)) * 0.2929));
        bottom: max(var(--quick-add-bottom), calc((var(--border-radius, 0px) + var(--quick-add-bottom)) * 0.2929));
        backdrop-filter: blur(20px) saturate(180%);
        transition-property: scale, translate, opacity;
        transition-duration: var(--animation-speed);
        transition-timing-function: var(--ease-out-cubic);
    }
.button-secondary:not(.button-unstyled) {
        --button-color: var(--color-secondary-button-text);
        --button-background-color: var(--color-secondary-button-background);
        --button-border-color: var(--color-secondary-button-border);
        --button-border-width: var(--style-border-width-secondary);
        font-family: var(--button-font-family-secondary);
        text-transform: var(--button-text-case-secondary);
        border-radius: var(--style-border-radius-buttons-secondary);
    }
.button-secondary:not(.button-unstyled):hover {
        --button-color: var(--color-secondary-button-hover-text);
        --button-background-color: var(--color-secondary-button-hover-background);
        --button-border-color: var(--color-secondary-button-hover-border);
    }
.product-form-buttons :is(.add-to-cart-button, .product-wishlist-button):is(.button, .button-secondary):not(.button-unstyled) {
        width: 100%;
    }
.\!link {
        display: inline-block !important;
        text-align: center !important;
        text-decoration: none !important;
        text-decoration-color: currentcolor !important;
    }
.link {
        display: inline-block;
        text-align: center;
        text-decoration: none;
        text-decoration-color: currentcolor;
    }
.\!link:hover {
        color: var(--color-primary-hover) !important;
        text-decoration-color: transparent !important;
    }
.link:hover {
        color: var(--color-primary-hover);
        text-decoration-color: transparent;
    }
.visually-hidden {
        position: absolute !important;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        white-space: nowrap;
        border: 0;
    }
.text-left {
        --text-align: left;
        text-align: left;
    }
.text-center {
        --text-align: center;
        text-align: center;
    }
.text-right {
        --text-align: right;
        text-align: right;
    }
.price,
    .compare-at-price,
    .unit-price {
        white-space: nowrap;
    }
.product-price.text-block:is(.h1, .h2, .h3, .h4, .h5, .h6) > *,
    product-price.text-block:is(.h1, .h2, .h3, .h4, .h5, .h6) > * {
        margin-block: 0;
    }
.compare-at-price {
        opacity: 0.4;
        text-decoration-line: line-through;
        text-decoration-thickness: 1.5px;
    }
.price-item__group {
        display: inline-block;
    }
.price-item--sale {
        white-space: nowrap;
    }
.price__hidden {
        display: none;
    }
.size-style {
        width: var(--size-style-width-mobile, var(--size-style-width));
        height: var(--size-style-height-mobile, var(--size-style-height));
    }
.casa-input {
        width: 100%;
        border: 1px solid color-mix(in srgb, var(--casa-fg) 22%, transparent);
        border-radius: 0;
        background: transparent;
        padding: 13px 14px;
        color: var(--casa-heading);
        font-size: 15px;
        line-height: 1.4;
        outline: none;
    }
.casa-input::-moz-placeholder {
        color: color-mix(in srgb, var(--casa-fg) 45%, transparent);
    }
.casa-input::placeholder {
        color: color-mix(in srgb, var(--casa-fg) 45%, transparent);
    }
.casa-input:focus {
        border-color: var(--casa-heading);
    }
.casa-rte p {
        margin: 0;
        font-size: var(--casa-paragraph-size);
        line-height: var(--casa-paragraph-line-height);
    }
.casa-rte h1,
    .casa-rte h2,
    .casa-rte h3,
    .casa-rte h4,
    .casa-rte h5,
    .casa-rte h6 {
        margin: 0;
        font-weight: 300;
        line-height: 1.15;
    }
.casa-rte em {
        font-style: italic;
    }
.casa-link {
        font-family: var(--casa-accent);
        font-size: 12px;
        font-weight: 500;
        letter-spacing: 0.22em;
        line-height: 1;
        text-transform: uppercase;
        text-decoration: underline;
        text-underline-offset: 0.35em;
    }
.spacer-block {
        display: block;
    }
.layout-panel-flex--column > .spacer-block {
        width: 100%;
    }
.layout-panel-flex--row > .spacer-block {
        height: 100%;
    }
:is(.layout-panel-flex--row, .layout-panel-flex--column) > .spacer-block--size-percent {
        flex: 0 0 var(--spacer-size);
    }
.layout-panel-flex--column > .spacer-block--size-pixel {
        height: var(--spacer-size);
    }
body,
    .paragraph:not(.button),
    .paragraph > *,
    .text-block.paragraph :is(h1, h2, h3, h4, h5, h6) {
        font-family: var(--font-paragraph--family);
        font-style: var(--font-paragraph--style);
        font-weight: var(--font-paragraph--weight);
        font-size: var(--font-paragraph--size);
        line-height: var(--font-paragraph--line-height);
        text-transform: var(--font-paragraph--case);
        color: var(--color, var(--color-foreground));
    }
h1,
    .h1.h1,
    .text-block.h1 > *,
    .text-block.h1 :is(h1, h2, h3, h4, h5, h6) {
        font-family: var(--font-h1--family);
        font-style: var(--font-h1--style);
        font-weight: var(--font-h1--weight);
        font-size: var(--font-h1--size);
        line-height: var(--font-h1--line-height);
        letter-spacing: var(--font-h1--letter-spacing);
        text-transform: var(--font-h1--case);
        color: var(--color, var(--font-h1-color));
    }
h2,
    .h2.h2,
    .text-block.h2 > *,
    .text-block.h2 :is(h1, h2, h3, h4, h5, h6) {
        font-family: var(--font-h2--family);
        font-style: var(--font-h2--style);
        font-weight: var(--font-h2--weight);
        font-size: var(--font-h2--size);
        line-height: var(--font-h2--line-height);
        letter-spacing: var(--font-h2--letter-spacing);
        text-transform: var(--font-h2--case);
        color: var(--color, var(--font-h2-color));
    }
h3,
    .h3,
    .h3.h3,
    .text-block.h3 > *,
    .text-block.h3 :is(h1, h2, h3, h4, h5, h6) {
        font-family: var(--font-h3--family);
        font-style: var(--font-h3--style);
        font-weight: var(--font-h3--weight);
        font-size: var(--font-h3--size);
        line-height: var(--font-h3--line-height);
        letter-spacing: var(--font-h3--letter-spacing);
        text-transform: var(--font-h3--case);
        color: var(--color, var(--font-h3-color));
    }
h4,
    .h4.h4,
    .text-block.h4 > *,
    .text-block.h4 :is(h1, h2, h3, h4, h5, h6) {
        font-family: var(--font-h4--family);
        font-style: var(--font-h4--style);
        font-weight: var(--font-h4--weight);
        font-size: var(--font-h4--size);
        line-height: var(--font-h4--line-height);
        letter-spacing: var(--font-h4--letter-spacing);
        text-transform: var(--font-h4--case);
        color: var(--color, var(--font-h4-color));
    }
h5,
    .h5.h5,
    .text-block.h5 > *,
    .text-block.h5 :is(h1, h2, h3, h4, h5, h6) {
        font-family: var(--font-h5--family);
        font-style: var(--font-h5--style);
        font-weight: var(--font-h5--weight);
        font-size: var(--font-h5--size);
        line-height: var(--font-h5--line-height);
        letter-spacing: var(--font-h5--letter-spacing);
        text-transform: var(--font-h5--case);
        color: var(--color, var(--font-h5-color));
    }
h6,
    .h6.h6,
    .text-block.h6 > *,
    .text-block.h6 :is(h1, h2, h3, h4, h5, h6) {
        font-family: var(--font-h6--family);
        font-style: var(--font-h6--style);
        font-weight: var(--font-h6--weight);
        font-size: var(--font-h6--size);
        line-height: var(--font-h6--line-height);
        letter-spacing: var(--font-h6--letter-spacing);
        text-transform: var(--font-h6--case);
        color: var(--color, var(--font-h6-color));
    }
.text-block.custom-typography,
    .text-block.custom-typography :is(.casa-rte, h1, h2, h3, h4, h5, h6, p, span, em, strong, a) {
        font-family: var(--font-family);
        font-weight: var(--font-weight);
        text-transform: var(--text-transform);
        text-wrap: var(--text-wrap);
        letter-spacing: var(--letter-spacing);
        color: var(--color, currentColor);
    }
.text-block.custom-typography :is(.casa-rte, h1, h2, h3, h4, h5, h6, p) {
        line-height: var(--line-height);
    }
.text-block.custom-typography h1 {
        line-height: var(--line-height--display, var(--line-height));
    }
.text-block.custom-typography :is(h2, h3, h4) {
        line-height: var(--line-height--heading, var(--line-height));
    }
.text-block.custom-typography p {
        line-height: var(--line-height--body, var(--line-height));
    }
.text-block.custom-font-size,
    .text-block.custom-font-size :is(.casa-rte, h1, h2, h3, h4, h5, h6, p, span, em, strong, a) {
        font-size: var(--font-size);
    }
.text-block {
        width: var(--width, 100%);
        max-width: 100%;
        display: flex;
        flex-direction: column;
        align-items: var(--horizontal-alignment, flex-start);
    }
[style*='--horizontal-alignment: center'] .text-block,
    [style*='--horizontal-alignment:center'] .text-block {
        --text-align-default: center;
    }
[style*='--horizontal-alignment: flex-end'] .text-block,
    [style*='--horizontal-alignment:flex-end'] .text-block {
        --text-align-default: right;
    }
[style*='--horizontal-alignment: flex-start'] > .text-block,
    [style*='--horizontal-alignment:flex-start'] > .text-block {
        --text-align-default: left;
    }
[style*='--horizontal-alignment: center'] > .text-block,
    [style*='--horizontal-alignment:center'] > .text-block {
        --text-align-default: center;
    }
[style*='--horizontal-alignment: flex-end'] > .text-block,
    [style*='--horizontal-alignment:flex-end'] > .text-block {
        --text-align-default: right;
    }
.text-block > * {
        width: var(--width, 100%);
        max-inline-size: min(100%, var(--max-width, 100%));
        text-align: var(--text-align, var(--text-align-default, left));
        text-wrap: var(--text-wrap);
    }
.text-block:not(.text-block--full-width).rte,
    .text-block:not(.text-block--full-width).paragraph {
        text-wrap: balance;
        text-wrap: pretty;
    }
.text-block:not(.text-block--full-width):is(.h1, .h2, .h3, .h4, .h5, .h6) {
        text-wrap: balance;
    }
.text-block:is(.h1, .h2, .h3, .h4, .h5, .h6) a {
        text-decoration-color: transparent;
    }
.text-block h1,
    .text-block.h1 > * {
        margin-block: var(--font-h1--spacing);
    }
.text-block h2,
    .text-block.h2 > * {
        margin-block: var(--font-h2--spacing);
    }
.text-block h3,
    .text-block.h3 > * {
        margin-block: var(--font-h3--spacing);
    }
.text-block h4,
    .text-block.h4 > * {
        margin-block: var(--font-h4--spacing);
    }
.text-block h5,
    .text-block.h5 > * {
        margin-block: var(--font-h5--spacing);
    }
.text-block h6,
    .text-block.h6 > * {
        margin-block: var(--font-h6--spacing);
    }
.text-block p,
    .text-block.p > * {
        margin-block: var(--font-paragraph--spacing);
    }
.text-block > *:first-child,
    .text-block > *:first-child:empty + * {
        margin-block-start: 0;
    }
.text-block > *:last-child,
    .text-block > *:has(+ *:last-child:empty) {
        margin-block-end: 0;
    }
.text-block--align-left > * {
        align-self: flex-start;
        margin-inline-end: auto;
    }
.text-block--align-center,
    .text-block--align-center > * {
        margin-inline: auto;
    }
.text-block--align-center > * {
        align-self: center;
    }
.text-block--align-right,
    .text-block--align-right > * {
        margin-inline-start: auto;
    }
.text-block--align-right > * {
        align-self: flex-end;
    }
.text-block--background {
        background-color: var(--text-background-color);
        border-radius: var(--text-corner-radius);
        padding-block-start: max(var(--text-padding), var(--padding-block-start, 0));
        padding-block-end: max(var(--text-padding), var(--padding-block-end, 0));
        padding-inline-start: max(var(--text-padding), var(--padding-inline-start, 0));
        padding-inline-end: max(var(--text-padding), var(--padding-inline-end, 0));
    }
.custom-color,
    .custom-color > :is(h1, h2, h3, h4, h5, h6, p, *) {
        color: var(--color);
    }
.account-action.size-style {
        width: var(--size-style-width-mobile, var(--size-style-width));
    }
.account-section .section-content-wrapper {
        width: 100%;
    }
.account-panel-form {
        position: relative;
        display: grid;
        grid-template-rows: minmax(0, 1fr);
        width: 100%;
        min-height: var(--section-min-height, auto);
        max-width: none;
        border: var(--border-width, 0) var(--border-style, none) var(--border-color, currentColor);
        border-radius: var(--border-radius, 0);
        color: var(--color-foreground);
    }
.account-panel-form .account-step {
        display: block;
        grid-area: 1 / 1;
        align-self: stretch;
        justify-self: stretch;
        min-width: 0;
        min-height: inherit;
        width: 100%;
    }
.account-panel-form .account-step[hidden] {
        display: none;
    }
.account-panel-form .account-step > .group-block {
        display: flex;
        flex-direction: column;
        min-height: inherit;
        width: 100%;
    }
.account-panel-form .account-step > .group-block > .group-block-content {
        min-height: inherit;
        overflow: visible;
    }
.account-panel-form .account-step--email > .group-block > .group-block-content,
    .account-panel-form .account-step--code > .group-block > .group-block-content {
        width: min(100%, 760px);
        min-height: var(--section-min-height, 24rem);
        margin-inline: auto;
        align-content: center;
    }
.account-panel-form .account-step--signed-in > .group-block > .group-block-content {
        width: 100%;
        align-content: flex-start;
    }
.account-panel-form .account-step--signed-in .account-addresses {
        width: 100%;
    }
.account-step-intro {
        display: grid;
        gap: 8px;
        width: 100%;
        min-width: 0;
    }
.account-step-heading,
    .account-signed-in__heading {
        margin: 0;
        color: var(--color-foreground-heading);
    }
.account-step-heading {
        font-family: var(--font-h4--family);
        font-size: var(--font-h4--size);
        font-weight: var(--font-h4--weight);
        line-height: var(--font-h4--line-height);
        letter-spacing: var(--font-h4--letter-spacing);
        text-transform: var(--font-h4--case);
    }
.account-step-helper {
        margin: 0;
        color: rgb(var(--color-foreground-rgb) / 0.78);
    }
.account-code-actions-inline {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
        width: 100%;
        min-width: 0;
    }
.account-signed-in-card {
        display: grid;
        gap: 20px;
        width: 100%;
        min-width: 0;
        border: var(--account-card-border-width, 1px) solid var(--account-card-border-color, var(--color-border));
        border-radius: var(--account-card-border-radius, 0);
        background: var(--color-background);
        padding: 1rem;
    }
.account-signed-in-card--filled {
        background: color-mix(in srgb, var(--color-foreground) 6%, var(--color-background));
    }
.account-sign-out-row {
        display: flex;
        justify-content: flex-end;
        width: 100%;
        min-width: 0;
    }
.account-sign-out-row .account-action {
        width: 100%;
    }
.account-profile__row {
        display: grid;
        gap: 6px;
        min-width: 0;
    }
.account-profile__row > h3,
    .account-profile__row > p {
        margin: 0;
    }
.account-profile__row > h3 {
        font-family: var(--font-h4--family);
        font-size: var(--font-h4--size);
        font-weight: var(--font-h4--weight);
        line-height: var(--font-h4--line-height);
        color: var(--color-foreground-heading);
    }
.account-profile__row > p {
        overflow-wrap: anywhere;
        color: rgb(var(--color-foreground-rgb) / 0.82);
    }
.account-field {
        display: grid;
        gap: var(--account-field-gap, 8px);
        width: 100%;
        min-width: 0;
        padding-block-start: var(--account-field-padding-block-start, 0);
        padding-block-end: var(--account-field-padding-block-end, 0);
    }
.account-field__label {
        min-width: 0;
        font-family: var(--account-heading-font-family, var(--font-paragraph--family));
        font-weight: var(--account-heading-font-weight, var(--font-paragraph--weight));
        font-size: var(--account-heading-font-size, var(--font-paragraph--size));
        line-height: var(--account-heading-line-height, var(--font-paragraph--line-height));
        letter-spacing: var(--account-heading-letter-spacing, normal);
        text-transform: var(--account-heading-text-transform, none);
        color: var(--account-heading-color, rgb(var(--color-foreground-rgb) / 0.78));
    }
.account-field__input {
        box-sizing: border-box;
        -moz-appearance: none;
             appearance: none;
        -webkit-appearance: none;
        display: block;
        min-height: 48px;
        width: 100%;
        min-width: 0;
        border: var(--account-input-border-width, var(--style-border-width-inputs, 1px)) var(--account-input-border-style, solid) color-mix(in srgb, var(--color-input-border) var(--account-input-border-opacity-percent, 45%), transparent);
        border-radius: var(--account-input-border-radius, var(--style-border-radius-inputs, 0));
        background: var(--color-input-background);
        box-shadow: none;
        color: var(--color-input-text);
        font: inherit;
        padding: 0 14px;
    }
.account-field__input::-moz-placeholder {
        font-family: var(--account-placeholder-font-family, var(--font-paragraph--family));
        font-weight: var(--account-placeholder-font-weight, var(--font-paragraph--weight));
        font-size: var(--account-placeholder-font-size, var(--font-paragraph--size));
        line-height: var(--account-placeholder-line-height, var(--font-paragraph--line-height));
        letter-spacing: var(--account-placeholder-letter-spacing, normal);
        text-transform: var(--account-placeholder-text-transform, none);
        color: var(--account-placeholder-color, rgb(var(--color-foreground-rgb) / 0.42));
    }
.account-field__input::placeholder {
        font-family: var(--account-placeholder-font-family, var(--font-paragraph--family));
        font-weight: var(--account-placeholder-font-weight, var(--font-paragraph--weight));
        font-size: var(--account-placeholder-font-size, var(--font-paragraph--size));
        line-height: var(--account-placeholder-line-height, var(--font-paragraph--line-height));
        letter-spacing: var(--account-placeholder-letter-spacing, normal);
        text-transform: var(--account-placeholder-text-transform, none);
        color: var(--account-placeholder-color, rgb(var(--color-foreground-rgb) / 0.42));
    }
.account-field__input:focus-visible {
        border-color: var(--color-input-text);
        outline: none;
    }
.account-action {
        justify-content: center;
        min-height: 48px;
    }
.account-addresses {
        display: grid;
        gap: 16px;
        width: 100%;
        min-width: 0;
    }
.account-addresses__header {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: space-between;
        gap: 12px;
        min-width: 0;
    }
.account-addresses__title {
        margin: 0;
        font-family: var(--font-h4--family);
        font-size: var(--font-h4--size);
        font-weight: var(--font-h4--weight);
        line-height: var(--font-h4--line-height);
        color: var(--color-foreground-heading);
    }
.account-addresses__add {
        align-self: flex-start;
        min-height: 44px;
    }
.account-addresses__list {
        display: grid;
        gap: 10px;
        min-width: 0;
    }
.account-addresses__empty {
        margin: 0;
        color: rgb(var(--color-foreground-rgb) / 0.72);
    }
.account-addresses__card {
        display: grid;
        gap: 6px;
        min-width: 0;
        padding: 14px;
        border: 1px solid var(--color-border);
        border-radius: 0;
    }
.account-addresses__card-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        min-width: 0;
    }
.account-addresses__card-header span {
        flex: 0 0 auto;
        font-size: 0.75rem;
        color: rgb(var(--color-foreground-rgb) / 0.62);
    }
.account-addresses__card p {
        margin: 0;
        color: rgb(var(--color-foreground-rgb) / 0.72);
        overflow-wrap: anywhere;
    }
.account-address-dialog {
        width: min(720px, calc(100vw - 32px));
        max-height: min(88svh, 760px);
        padding: 0;
        border: 1px solid var(--color-border);
        border-radius: 0;
        background: var(--color-background);
        color: var(--color-foreground);
        overflow: auto;
    }
.account-address-dialog::backdrop {
        background: rgb(0 0 0 / 0.32);
    }
.account-address-dialog__header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        padding: 20px 20px 12px;
    }
.account-address-dialog__header h3 {
        margin: 0;
        font-family: var(--font-h3--family);
        font-size: var(--font-h3--size);
        font-weight: var(--font-h3--weight);
        line-height: var(--font-h3--line-height);
        color: var(--color-foreground-heading);
    }
.account-address-dialog__close {
        display: grid;
        place-items: center;
        width: 44px;
        height: 44px;
        border: 0;
        background: transparent;
        color: currentColor;
        cursor: pointer;
    }
.account-address-dialog__close-icon {
        width: 20px;
        height: 20px;
    }
.account-address-form {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
        padding: 0 20px 20px;
    }
.account-address-field.account-field {
        gap: 6px;
    }
.account-address-field [hidden] {
        display: none !important;
    }
.account-address-field .account-field__label {
        color: rgb(var(--color-foreground-rgb) / 0.72);
    }
.account-address-field .account-address-field__control {
        min-height: 52px;
        border-color: var(--color-input-border);
        border-radius: 0;
    }
.account-address-field .account-address-field__select {
        padding-inline-end: 40px;
        background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
        background-position: calc(100% - 18px) 50%, calc(100% - 12px) 50%;
        background-size: 6px 6px, 6px 6px;
        background-repeat: no-repeat;
    }
.account-address-field .account-address-field__control:focus-visible {
        border-color: var(--color-input-text);
        outline: 2px solid var(--color-input-text);
        outline-offset: 1px;
    }
.account-address-default {
        display: flex;
        align-items: center;
        gap: 10px;
        min-width: 0;
    }
.account-address-dialog__actions {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 12px;
        min-width: 0;
    }
.account-address-dialog__cancel,
    .account-address-dialog__save {
        min-height: 48px;
    }
@media (min-width: 750px) {
        .quick-add {
            --quick-add-offset: var(--padding-md);
        }

        .quick-add__button {
            display: var(--quick-add-display, flex);
            opacity: 0;
        }

        .button.quick-add__button {
            display: var(--quick-add-display, flex);
            opacity: 0;
        }

        .hidden--desktop {
            display: none;
        }

        .hidden--mobile {
            display: grid;
        }

        .resource-list--bento {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }

        .bento-box {
            grid-template-columns: repeat(12, 1fr);
            grid-template-areas:
                'A A A B B B B B B C C C'
                'D D D D D D E E E F F F'
                'G G G H H H I I I I I I'
                'J J J J K K K K L L L L';
        }

        .bento-box__item:nth-child(1) {
            grid-area: A;
        }

        .bento-box__item:nth-child(2) {
            grid-area: B;
        }

        .bento-box__item:nth-child(3) {
            grid-area: C;
        }

        .bento-box__item:nth-child(4) {
            grid-area: D;
        }

        .bento-box__item:nth-child(5) {
            grid-area: E;
        }

        .bento-box__item:nth-child(6) {
            grid-area: F;
        }

        .bento-box__item:nth-child(7) {
            grid-area: G;
        }

        .bento-box__item:nth-child(8) {
            grid-area: H;
        }

        .bento-box__item:nth-child(9) {
            grid-area: I;
        }

        .bento-box__item:nth-child(10) {
            grid-area: J;
        }

        .bento-box__item:nth-child(11) {
            grid-area: K;
        }

        .bento-box__item:nth-child(12) {
            grid-area: L;
        }

        .bento-box--items-1 {
            grid-template-areas: 'A A A A A A A A A A A A';
        }

        .bento-box--items-2 {
            grid-template-areas: 'A A A A A A B B B B B B';
        }

        .bento-box--items-4 {
            grid-template-areas:
                'A A A A B B B B B B B B'
                'C C C C C C C C D D D D';
        }

        .bento-box--items-5 {
            grid-template-areas:
                'A A A B B B B B B C C C'
                'D D D D D D E E E E E E';
        }

        .bento-box--items-7 {
            grid-template-areas:
                'A A A B B B B B B C C C'
                'D D D D D D D D D E E E'
                'F F F F F F G G G G G G';
        }

        .bento-box--items-8 {
            grid-template-areas:
                'A A A B B B B B B C C C'
                'D D D D D D E E E F F F'
                'G G G H H H H H H H H H';
        }

        .bento-box--items-10 {
            grid-template-areas:
                'A A A B B B B B B C C C'
                'D D D D D D E E E F F F'
                'G G G G G G G G G H H H'
                'I I I J J J J J J J J J';
        }

        .bento-box--items-11 {
            grid-template-areas:
                'A A A B B B B B B C C C'
                'D D D D D D E E E F F F'
                'G G G H H H I I I I I I'
                'J J J J K K K K K K K K';
        }

        .section--full-width.media-with-content {
            --media-with-content-grid-columns: 3.5fr 2.5fr;
            grid-template-areas: 'media content';
        }

        .section--full-width.media-with-content--media-right {
            --media-with-content-grid-columns: 2.5fr 3.5fr;
            grid-template-areas: 'content media';
        }

        .section--full-width.media-with-content--medium {
            --media-with-content-grid-columns: 1fr 1fr;
        }

        .section--full-width.media-with-content--narrow {
            --media-with-content-grid-columns: 2fr 4fr;
        }

        .section--full-width.media-with-content--narrow.media-with-content--media-right {
            --media-with-content-grid-columns: 4fr 2fr;
        }

        .section--page-width.media-with-content {
            --media-with-content-grid-columns: var(--full-page-grid-margin) calc((var(--full-page-grid-central-column-width) / 12) * 7) calc((var(--full-page-grid-central-column-width) / 12) * 5) var(--full-page-grid-margin);
            grid-template-areas: 'margin-left media content margin-right';
        }

        .section--page-width.media-with-content--media-right {
            --media-with-content-grid-columns: var(--full-page-grid-margin) calc((var(--full-page-grid-central-column-width) / 12) * 5) calc((var(--full-page-grid-central-column-width) / 12) * 7) var(--full-page-grid-margin);
            grid-template-areas: 'margin-left content media margin-right';
        }

        .section--page-width.media-with-content--medium {
            --media-with-content-grid-columns: var(--full-page-grid-margin) repeat(2, calc(var(--full-page-grid-central-column-width) / 2)) var(--full-page-grid-margin);
        }

        .section--page-width.media-with-content--narrow {
            --media-with-content-grid-columns: var(--full-page-grid-margin) calc(var(--full-page-grid-central-column-width) / 3) calc((var(--full-page-grid-central-column-width) / 3) * 2) var(--full-page-grid-margin);
        }

        .section--page-width.media-with-content--narrow.media-with-content--media-right {
            --media-with-content-grid-columns: var(--full-page-grid-margin) calc((var(--full-page-grid-central-column-width) / 3) * 2) calc(var(--full-page-grid-central-column-width) / 3) var(--full-page-grid-margin);
        }

        .media-with-content.media-with-content--media-extend {
            grid-template-columns: var(--media-with-content-grid-columns);
            grid-template-areas: 'media media content margin-right';
        }

        .media-with-content--media-extend.media-with-content--media-right {
            grid-template-areas: 'margin-left content media media';
        }

        .media-with-content .media-block {
            min-height: var(--media-height, auto);
        }

        .media-with-content__content > .group-block-content {
            padding-block: var(--page-margin);
        }

        .section--page-width .media-with-content__content > .group-block-content {
            padding-inline: 0;
            padding-inline-start: var(--page-margin);
        }

        .section--page-width.media-with-content--media-right .media-with-content__content > .group-block-content {
            padding-inline-end: var(--page-margin);
            padding-inline-start: 0;
        }

        .resource-list--carousel {
            grid-auto-columns: minmax(230px, calc(100% / var(--column-count, 4)));
        }

        .size-style {
            width: var(--size-style-width);
            height: var(--size-style-height);
        }

        .account-action.size-style {
            width: var(--size-style-width);
        }

        .layout-panel-flex {
            flex-direction: var(--flex-direction);
        }

        .casa-hero-button {
            width: var(--casa-button-width, -moz-fit-content);
            width: var(--casa-button-width, fit-content);
        }

        .account-section .section-content-wrapper {
            width: 100%;
        }

        .account-field {
            display: grid;
            gap: var(--account-field-gap, 8px);
            width: 100%;
            padding-block-start: var(--account-field-padding-block-start, 0);
            padding-block-end: var(--account-field-padding-block-end, 0);
        }

        .account-field__label {
            font-family: var(--account-heading-font-family, var(--font-paragraph--family));
            font-weight: var(--account-heading-font-weight, var(--font-paragraph--weight));
            font-size: var(--account-heading-font-size, var(--font-paragraph--size));
            line-height: var(--account-heading-line-height, var(--font-paragraph--line-height));
            letter-spacing: var(--account-heading-letter-spacing, normal);
            text-transform: var(--account-heading-text-transform, none);
            color: var(--account-heading-color, rgb(var(--color-foreground-rgb) / 0.78));
        }

        .account-field__input {
            box-sizing: border-box;
            -moz-appearance: none;
                 appearance: none;
            -webkit-appearance: none;
            display: block;
            min-height: 48px;
            width: 100%;
            min-width: 0;
            border: var(--account-input-border-width, var(--style-border-width-inputs, 1px)) var(--account-input-border-style, solid) color-mix(in srgb, var(--color-input-border) var(--account-input-border-opacity-percent, 45%), transparent);
            border-radius: var(--account-input-border-radius, var(--style-border-radius-inputs, 0));
            background: var(--color-input-background);
            box-shadow: none;
            color: var(--color-input-text);
            font: inherit;
            padding: 0 14px;
        }

        .account-field__input::-moz-placeholder {
            font-family: var(--account-placeholder-font-family, var(--font-paragraph--family));
            font-weight: var(--account-placeholder-font-weight, var(--font-paragraph--weight));
            font-size: var(--account-placeholder-font-size, var(--font-paragraph--size));
            line-height: var(--account-placeholder-line-height, var(--font-paragraph--line-height));
            letter-spacing: var(--account-placeholder-letter-spacing, normal);
            text-transform: var(--account-placeholder-text-transform, none);
            color: var(--account-placeholder-color, rgb(var(--color-foreground-rgb) / 0.42));
        }

        .account-field__input::placeholder {
            font-family: var(--account-placeholder-font-family, var(--font-paragraph--family));
            font-weight: var(--account-placeholder-font-weight, var(--font-paragraph--weight));
            font-size: var(--account-placeholder-font-size, var(--font-paragraph--size));
            line-height: var(--account-placeholder-line-height, var(--font-paragraph--line-height));
            letter-spacing: var(--account-placeholder-letter-spacing, normal);
            text-transform: var(--account-placeholder-text-transform, none);
            color: var(--account-placeholder-color, rgb(var(--color-foreground-rgb) / 0.42));
        }

        .account-field__input:focus-visible {
            border-color: var(--color-input-text);
            outline: none;
        }

        .account-action {
            justify-content: center;
            min-height: 48px;
        }

        .account-sign-out-row .account-action {
            width: 100%;
        }

        .account-panel-message {
            position: absolute;
            z-index: 1;
            inset-inline: 0;
            inset-block-end: 0;
            min-height: 1.4em;
            margin: 0;
            font-size: 0.875rem;
            line-height: 1.4;
            color: rgb(var(--color-foreground-rgb) / 0.72);
        }

        .account-panel-message[data-state="error"] {
            color: #9f1d1d;
        }

        .account-panel-message[data-state="success"] {
            color: #12663a;
        }

        .account-address-dialog {
            width: min(920px, calc(100vw - 48px));
        }

        .account-address-dialog__header {
            padding: 24px 24px 12px;
        }

        .account-address-form {
            grid-template-columns: repeat(6, minmax(0, 1fr));
            gap: 18px;
            padding: 0 24px 24px;
        }

        .account-address-field {
            grid-column: span 3;
        }

        .account-address-field--full,
        .account-address-default,
        .account-address-dialog__actions {
            grid-column: 1 / -1;
        }

        .account-address-field:nth-of-type(6),
        .account-address-field:nth-of-type(7),
        .account-address-field:nth-of-type(8) {
            grid-column: span 2;
        }
    }
@media (min-width: 990px) {
        .account-sign-out-row .account-action {
            width: -moz-fit-content;
            width: fit-content;
        }
    }
.checkout-page-section {
            --checkout-border: rgb(var(--color-foreground-rgb) / 0.14);
            --checkout-border-strong: rgb(var(--color-foreground-rgb) / 0.32);
            --checkout-muted: rgb(var(--color-foreground-rgb) / 0.62);
            --checkout-surface: rgb(var(--color-background-rgb));
            --checkout-soft-surface: rgb(var(--color-foreground-rgb) / 0.025);
            --checkout-panel-gap: 14px;
            --checkout-body-font-family: var(--font-paragraph--family);
            --checkout-body-font-style: var(--font-paragraph--style);
            --checkout-body-font-weight: var(--font-paragraph--weight);
            --checkout-body-font-size: var(--font-paragraph--size);
            --checkout-body-line-height: var(--font-paragraph--line-height);
            --checkout-body-letter-spacing: var(--font-paragraph--letter-spacing);
            --checkout-body-text-transform: var(--font-paragraph--case);
            --checkout-option-title-font-family: var(--font-subheading--family);
            --checkout-option-title-font-style: var(--font-subheading--style);
            --checkout-option-title-font-weight: var(--font-subheading--weight);
            --checkout-option-title-font-size: var(--font-paragraph--size);
            --checkout-option-title-line-height: var(--font-paragraph--line-height);
            --checkout-option-title-letter-spacing: var(--font-paragraph--letter-spacing);
            --checkout-option-title-text-transform: var(--font-paragraph--case);
            --checkout-price-font-family: var(--cart-primary-font-family);
            --checkout-price-font-style: var(--cart-primary-font-style);
            --checkout-price-font-weight: var(--cart-primary-font-weight);
            --checkout-price-font-size: var(--font-size--sm);
            --checkout-price-line-height: var(--line-height);
            --checkout-price-letter-spacing: normal;
            --checkout-price-text-transform: none;
            background: rgb(var(--color-background-rgb));
        }
.checkout-page-shell {
            margin-inline: auto;
        }
.checkout-editor-preview-state {
            width: 100%;
        }
.checkout-group--checkout-state {
            display: flex;
            flex-direction: column;
            height: auto;
            min-height: var(--checkout-state-min-height, auto);
        }
.checkout-group--checkout-state > .group-block-content {
            flex: 1 1 auto;
        }
.checkout-group--checkout-layout-group > .group-block-content {
            display: grid;
            grid-template-columns: minmax(0, 1fr);
            align-items: start;
            gap: var(--gap, clamp(22px, 5vw, 64px));
        }
.checkout-group--checkout-header-group .text-block {
            margin: 0;
        }
.checkout-group--checkout-summary .text-block {
            margin: 0;
        }
.checkout-summary__header,
        .checkout-summary__collapsible-content {
            display: contents;
        }
.checkout-summary__collapsed-totals,
        .checkout-summary__toggle {
            display: none;
        }
.checkout-panel {
            min-width: 0;
        }
.checkout-control-block {
            display: grid;
            gap: var(--checkout-control-gap, 14px);
            min-width: 0;
            padding-block-start: var(--checkout-control-padding-block-start, 0);
            padding-block-end: var(--checkout-control-padding-block-end, 0);
        }
.checkout-panel__content > :where(.checkout-control-block, .checkout-status-list, .checkout-submit-actions),
        .checkout-group--checkout-summary > .group-block-content > :where(.checkout-line-items, .checkout-totals),
        .checkout-summary__collapsible-content > :where(.checkout-line-items, .checkout-totals) {
            align-self: stretch;
            width: 100%;
            min-width: 0;
        }
.checkout-control-block > :where(.checkout-field-grid, .checkout-choice-grid, .checkout-payment-list, .checkout-location-list, .checkout-checkbox-list, .checkout-apply-row, .checkout-definition-list, .checkout-option-list, .checkout-shipment-groups, .checkout-unavailable-list, .checkout-state-box) {
            width: 100%;
            min-width: 0;
        }
.checkout-control-block > [hidden] {
            display: none !important;
        }
.checkout-apply-row > .checkout-field {
            min-width: 0;
        }
.checkout-panel__content > .text-block {
            margin: 0;
        }
.checkout-panel__header {
            display: grid;
            gap: 6px;
        }
.checkout-panel__header h2,
        .checkout-summary__header > .text-block,
        .checkout-summary__header > .text-block :is(h1, h2, h3, h4, h5, h6) {
            margin: 0;
            font-family: var(--font-h3--family);
            font-style: var(--font-h3--style);
            font-weight: var(--font-h3--weight);
            font-size: var(--font-h3--size);
            line-height: var(--font-h3--line-height);
            letter-spacing: var(--font-h3--letter-spacing);
            text-transform: var(--font-h3--case);
        }
.checkout-panel__header p,
        .checkout-message,
        .checkout-alert,
        .checkout-choice span,
        .checkout-checkbox,
        .checkout-definition-list {
            font-family: var(--checkout-body-font-family);
            font-style: var(--checkout-body-font-style);
            font-weight: var(--checkout-body-font-weight);
            font-size: var(--checkout-body-font-size);
            line-height: var(--checkout-body-line-height);
            letter-spacing: var(--checkout-body-letter-spacing);
            text-transform: var(--checkout-body-text-transform);
        }
.checkout-panel__header p,
        .checkout-message,
        .checkout-choice span,
        .checkout-checkbox,
        .checkout-definition-list dt {
            color: var(--checkout-muted);
        }
.checkout-field-grid {
            display: grid;
            gap: 14px;
            min-width: 0;
        }
.checkout-field {
            min-width: 0;
        }
.checkout-field.account-field {
            display: grid;
            gap: var(--account-field-gap, 8px);
            width: 100%;
            padding-block-start: var(--account-field-padding-block-start, 0);
            padding-block-end: var(--account-field-padding-block-end, 0);
        }
.checkout-field .account-field__label {
            font-family: var(--account-heading-font-family, var(--font-paragraph--family));
            font-weight: var(--account-heading-font-weight, var(--font-paragraph--weight));
            font-size: var(--account-heading-font-size, var(--font-paragraph--size));
            line-height: var(--account-heading-line-height, var(--font-paragraph--line-height));
            letter-spacing: var(--account-heading-letter-spacing, normal);
            text-transform: var(--account-heading-text-transform, none);
            color: var(--account-heading-color, rgb(var(--color-foreground-rgb) / 0.78));
        }
.checkout-input.account-field__input {
            box-sizing: border-box;
            -moz-appearance: none;
                 appearance: none;
            -webkit-appearance: none;
            display: block;
            min-height: 48px;
            width: 100%;
            min-width: 0;
            border: var(--account-input-border-width, var(--style-border-width-inputs, 1px)) var(--account-input-border-style, solid) color-mix(in srgb, var(--color-input-border) var(--account-input-border-opacity-percent, 45%), transparent);
            border-radius: var(--account-input-border-radius, var(--style-border-radius-inputs, 0));
            background: var(--color-input-background);
            box-shadow: none;
            color: var(--color-input-text);
            font: inherit;
            padding: 0 14px;
        }
.checkout-input.account-field__input::-moz-placeholder {
            font-family: var(--account-placeholder-font-family, var(--font-paragraph--family));
            font-weight: var(--account-placeholder-font-weight, var(--font-paragraph--weight));
            font-size: var(--account-placeholder-font-size, var(--font-paragraph--size));
            line-height: var(--account-placeholder-line-height, var(--font-paragraph--line-height));
            letter-spacing: var(--account-placeholder-letter-spacing, normal);
            text-transform: var(--account-placeholder-text-transform, none);
            color: var(--account-placeholder-color, rgb(var(--color-foreground-rgb) / 0.42));
        }
.checkout-input.account-field__input::placeholder {
            font-family: var(--account-placeholder-font-family, var(--font-paragraph--family));
            font-weight: var(--account-placeholder-font-weight, var(--font-paragraph--weight));
            font-size: var(--account-placeholder-font-size, var(--font-paragraph--size));
            line-height: var(--account-placeholder-line-height, var(--font-paragraph--line-height));
            letter-spacing: var(--account-placeholder-letter-spacing, normal);
            text-transform: var(--account-placeholder-text-transform, none);
            color: var(--account-placeholder-color, rgb(var(--color-foreground-rgb) / 0.42));
        }
.checkout-textarea {
            min-height: 96px;
            padding-block: 12px;
            resize: vertical;
        }
.checkout-input:focus-visible,
        .checkout-choice:focus-visible,
        .checkout-action:focus-visible {
            outline: 2px solid currentColor;
            outline-offset: 2px;
        }
.account-panel-form .checkout-input.account-field__input:focus-visible {
            border-color: var(--color-input-text);
            outline: none;
        }
.checkout-field--invalid .checkout-input.account-field__input {
            border-color: var(--color-input-text);
            outline: none;
        }
@keyframes checkout-field-validation-shake {
            0%, 100% { transform: translateX(0); }
            25% { transform: translateX(-4px); }
            50% { transform: translateX(4px); }
            75% { transform: translateX(-2px); }
        }
.checkout-choice-grid,
        .checkout-payment-list,
        .checkout-location-list,
        .checkout-option-list,
        .checkout-shipment-groups,
        .checkout-checkbox-list {
            display: grid;
            gap: 12px;
        }
.checkout-choice {
            display: grid;
            gap: 4px;
            position: relative;
            width: 100%;
            min-height: 56px;
            border: 1px solid var(--checkout-border);
            border-radius: 0;
            background: var(--checkout-soft-surface);
            color: var(--color-foreground);
            font-family: var(--checkout-body-font-family);
            font-style: var(--checkout-body-font-style);
            font-weight: var(--checkout-body-font-weight);
            font-size: var(--checkout-body-font-size);
            line-height: var(--checkout-body-line-height);
            letter-spacing: var(--checkout-body-letter-spacing);
            text-transform: var(--checkout-body-text-transform);
            padding: 14px 14px 14px 44px;
            text-align: left;
            transition: border-color 160ms ease, background-color 160ms ease;
        }
.checkout-choice--composite {
            padding: 0;
        }
.checkout-choice__trigger {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 16px;
            width: 100%;
            min-width: 0;
            border: 0;
            background: transparent;
            color: inherit;
            font: inherit;
            text-align: left;
            padding: 14px 14px 14px 44px;
            cursor: pointer;
        }
.checkout-choice__trigger:focus-visible {
            outline: 2px solid currentColor;
            outline-offset: 2px;
        }
.checkout-choice::before,
        .checkout-choice::after {
            content: "";
            position: absolute;
            border-radius: 999px;
        }
.checkout-choice::before {
            inset-block-start: 17px;
            inset-inline-start: 15px;
            width: 16px;
            height: 16px;
            border: 1px solid var(--checkout-border-strong);
            background: var(--checkout-surface);
        }
.checkout-choice::after {
            inset-block-start: 22px;
            inset-inline-start: 20px;
            width: 6px;
            height: 6px;
            background: transparent;
        }
.checkout-choice:hover:not(:disabled) {
            border-color: var(--checkout-border-strong);
            background: rgb(var(--color-foreground-rgb) / 0.04);
        }
.checkout-choice--composite:hover {
            border-color: var(--checkout-border-strong);
            background: rgb(var(--color-foreground-rgb) / 0.04);
        }
.checkout-choice--selected {
            border-color: rgb(var(--color-foreground-rgb) / 0.78);
            background: rgb(var(--color-foreground-rgb) / 0.055);
            box-shadow: none;
        }
.checkout-choice--selected::before {
            border-color: rgb(var(--color-foreground-rgb) / 0.88);
        }
.checkout-choice--selected::after {
            background: var(--color-foreground);
        }
.checkout-choice:disabled {
            cursor: not-allowed;
            opacity: 0.5;
        }
.checkout-choice__title {
            display: block;
            color: var(--color-foreground);
            font-family: var(--checkout-option-title-font-family);
            font-style: var(--checkout-option-title-font-style);
            font-weight: var(--checkout-option-title-font-weight);
            font-size: var(--checkout-option-title-font-size);
            line-height: var(--checkout-option-title-line-height);
            letter-spacing: var(--checkout-option-title-letter-spacing);
            text-transform: var(--checkout-option-title-text-transform);
        }
.checkout-choice__content,
        .checkout-choice__details {
            display: grid;
            gap: 2px;
            min-width: 0;
        }
.checkout-choice__details {
            color: var(--checkout-muted);
            text-transform: none;
        }
.checkout-choice__expanded-field .checkout-field {
            width: 100%;
        }
.checkout-phone-input {
            position: relative;
            display: grid;
            grid-template-columns: 46px minmax(0, 1fr);
            width: 100%;
            min-width: 0;
            min-height: 48px;
            overflow: hidden;
            border: var(--account-input-border-width, var(--style-border-width-inputs, 1px)) var(--account-input-border-style, solid) color-mix(in srgb, var(--color-input-border) var(--account-input-border-opacity-percent, 45%), transparent);
            border-radius: var(--account-input-border-radius, var(--style-border-radius-inputs, 0));
            background: var(--color-input-background);
        }
.checkout-phone-input::after {
            content: "";
            position: absolute;
            inset-block: 22%;
            inset-inline-start: 46px;
            width: 1px;
            background: color-mix(in srgb, var(--color-input-border) 55%, transparent);
            pointer-events: none;
        }
.checkout-phone-input:focus-within,
        .checkout-phone-field.checkout-field--invalid .checkout-phone-input {
            border-color: var(--color-input-text);
        }
.checkout-phone-input__country,
        .checkout-phone-input__number {
            min-width: 0;
        }
.checkout-phone-input__control {
            box-sizing: border-box;
            -moz-appearance: none;
                 appearance: none;
            -webkit-appearance: none;
            width: 100%;
            min-width: 0;
            min-height: 46px;
            border: 0;
            outline: 0;
            background: transparent;
            color: var(--color-input-text);
            font: inherit;
            padding: 0 14px;
        }
.checkout-phone-input__country-control {
            padding-inline: 5px;
            text-align: center;
        }
.checkout-phone-input__number-control::-moz-placeholder {
            color: var(--account-placeholder-color, rgb(var(--color-foreground-rgb) / 0.42));
        }
.checkout-phone-input__number-control::placeholder {
            color: var(--account-placeholder-color, rgb(var(--color-foreground-rgb) / 0.42));
        }
.checkout-choice__pickup-selection {
            display: grid;
            gap: 2px;
            margin-block-start: 10px;
            padding-block-start: 10px;
            border-block-start: 1px solid var(--checkout-border);
            color: var(--checkout-muted);
        }
.checkout-choice__pickup-selection[hidden] {
            display: none !important;
        }
.checkout-choice__pickup-name {
            color: var(--color-foreground);
            font-weight: 600;
        }
.checkout-choice > span {
            min-width: 0;
            width: 100%;
        }
.checkout-choice__row,
        .checkout-unavailable-item {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 16px;
            width: 100%;
            min-width: 0;
        }
.checkout-shipping-breakdown {
            display: grid;
            gap: 0;
            width: 100%;
            min-width: 0;
            margin-block-start: 10px;
            margin-inline-start: 0;
            border-radius: 0;
            background: rgb(var(--color-foreground-rgb) / 0.035);
            color: var(--checkout-muted);
            overflow: hidden;
        }
.checkout-shipping-breakdown__row {
            display: grid;
            grid-template-columns: 28px minmax(0, 1fr) auto;
            gap: 14px;
            align-items: start;
            min-width: 0;
            padding: 14px;
        }
.checkout-shipping-breakdown__row + .checkout-shipping-breakdown__row {
            border-top: 1px solid var(--checkout-border);
        }
.checkout-shipping-breakdown__icon {
            width: 22px;
            height: 22px;
            margin-block-start: 1px;
            color: var(--checkout-foreground);
            fill: none;
            stroke: currentColor;
            stroke-width: 1.8;
            stroke-linecap: round;
            stroke-linejoin: round;
        }
.checkout-shipping-breakdown__content {
            display: grid;
            gap: 2px;
            min-width: 0;
        }
.checkout-shipping-breakdown__label,
        .checkout-shipping-breakdown__title,
        .checkout-shipping-breakdown__price {
            color: var(--color-foreground);
        }
.checkout-shipping-breakdown__label--button {
            -moz-appearance: none;
                 appearance: none;
            -webkit-appearance: none;
            border: 0;
            background: transparent;
            color: var(--checkout-foreground);
            cursor: pointer;
            font: inherit;
            padding: 0;
            text-decoration: underline;
            text-underline-offset: 0.12em;
        }
.checkout-shipping-breakdown__label--button:focus-visible {
            outline: 2px solid currentColor;
            outline-offset: 2px;
        }
.checkout-shipping-breakdown__separator {
            margin-inline: 0.35em;
        }
.checkout-shipping-breakdown__subtitle {
            color: var(--checkout-muted);
        }
.checkout-shipping-breakdown__price {
            white-space: nowrap;
        }
.checkout-shipping-items-popup {
            position: fixed;
            inset: 0;
            z-index: 2147483647;
            display: grid;
            align-items: end;
            justify-items: stretch;
            isolation: isolate;
            opacity: 1;
        }
.checkout-shipping-items-popup[hidden] {
            display: none;
        }
.checkout-shipping-items-popup[data-upstorr-checkout-shipping-items-active="true"] {
            display: grid;
        }
.checkout-shipping-items-popup__backdrop {
            position: absolute;
            inset: 0;
            z-index: 0;
            border: 0;
            background: rgb(0 0 0 / 0.2);
            cursor: pointer;
        }
.checkout-shipping-items-popup__sheet {
            position: relative;
            z-index: 2;
            display: grid;
            gap: 22px;
            width: 100%;
            max-height: min(80dvh, 720px);
            margin: 0;
            overflow: auto;
            border: 1px solid var(--checkout-popup-border, var(--checkout-border));
            border-radius: 0;
            background: var(--checkout-popup-surface, var(--checkout-surface, rgb(var(--color-background-rgb, 255 255 255))));
            color: var(--checkout-popup-foreground, var(--color-foreground));
            padding: 24px;
            box-shadow: none;
            opacity: 1;
        }
.checkout-shipping-items-popup__header,
        .checkout-shipping-items-popup__rate {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 18px;
            min-width: 0;
        }
.checkout-shipping-items-popup__title {
            font-family: var(--checkout-heading-font-family);
            font-style: var(--checkout-heading-font-style);
            font-weight: var(--checkout-heading-font-weight);
            font-size: clamp(1.4rem, 4vw, 2rem);
            line-height: 1.1;
        }
.checkout-shipping-items-popup__close {
            display: grid;
            place-items: center;
            flex: 0 0 auto;
            width: 40px;
            height: 40px;
            border: 0;
            background: transparent;
            color: inherit;
            font: inherit;
            font-size: 2rem;
            line-height: 1;
            cursor: pointer;
        }
.checkout-shipping-items-popup__items {
            display: grid;
            gap: 12px;
            color: var(--color-foreground);
        }
.checkout-pickup-selector__sheet {
            grid-template-rows: auto auto minmax(0, 1fr);
            overflow: hidden;
        }
.checkout-pickup-selector__search,
        .checkout-pickup-selector__search search-page-input-component {
            width: 100%;
            max-width: none;
            margin: 0;
        }
.checkout-pickup-selector__search .search__reset-button {
            border: 0;
        }
.checkout-pickup-selector__locations {
            min-height: 0;
            overflow-y: auto;
            overscroll-behavior: contain;
            padding-right: 2px;
        }
.checkout-pickup-selector__empty {
            margin: 0;
            padding: 24px 0;
            color: var(--checkout-muted);
            text-align: center;
        }
.checkout-shipping-items-popup__item {
            display: grid;
            grid-template-columns: 72px minmax(0, 1fr);
            gap: 14px;
            align-items: center;
            min-width: 0;
        }
.checkout-shipping-items-popup__item-media {
            position: relative;
            display: block;
            width: 72px;
            height: 72px;
            min-width: 0;
            overflow: hidden;
            background: rgb(var(--color-foreground-rgb) / 0.05);
        }
.checkout-shipping-items-popup__item-media img {
            display: block;
            width: 100%;
            height: 100%;
            -o-object-fit: cover;
               object-fit: cover;
            -o-object-position: center;
               object-position: center;
            opacity: 1 !important;
            visibility: visible !important;
        }
.checkout-shipping-items-popup__rate {
            border-top: 1px solid var(--checkout-popup-border, var(--checkout-border));
            padding-block-start: 18px;
        }
.checkout-shipping-items-popup__rate > span:first-child {
            display: grid;
            gap: 4px;
        }
.checkout-shipping-items-popup__rate-title {
            color: var(--checkout-popup-foreground, var(--color-foreground));
        }
.checkout-shipping-items-popup__rate-subtitle {
            color: var(--checkout-muted);
        }
.checkout-shipping-options-popup {
            position: fixed;
            inset: 0;
            z-index: 2147483647;
            display: none;
            align-items: end;
            justify-items: stretch;
            isolation: isolate;
            opacity: 1;
            width: auto;
            height: auto;
            margin: 0;
            border: 0;
            padding: 0;
            background: transparent;
            color: inherit;
        }
.checkout-shipping-options-popup[hidden] {
            display: none;
        }
.checkout-shipping-options-popup:popover-open,
        .checkout-shipping-options-popup[data-upstorr-checkout-shipping-options-active="true"] {
            display: grid;
        }
.checkout-shipping-options-popup::backdrop {
            background: transparent;
        }
.checkout-shipping-options-popup__backdrop {
            position: absolute;
            inset: 0;
            z-index: 0;
            border: 0;
            background: rgb(0 0 0 / 0.2);
            cursor: pointer;
        }
.checkout-shipping-options-popup__sheet {
            position: relative;
            z-index: 2;
            display: grid;
            gap: 18px;
            width: 100%;
            max-height: min(86dvh, 760px);
            margin: 0;
            overflow: auto;
            border: 1px solid var(--checkout-popup-border, var(--checkout-border));
            border-radius: 0;
            background: var(--checkout-popup-surface, var(--checkout-surface, rgb(var(--color-background-rgb, 255 255 255))));
            color: var(--checkout-popup-foreground, var(--color-foreground));
            padding: 24px;
            box-shadow: none;
            opacity: 1;
        }
.checkout-shipping-options-popup__header {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 18px;
            min-width: 0;
        }
.checkout-shipping-options-popup__title {
            font-family: var(--checkout-heading-font-family);
            font-style: var(--checkout-heading-font-style);
            font-weight: var(--checkout-heading-font-weight);
            font-size: clamp(1.4rem, 4vw, 2rem);
            line-height: 1.1;
        }
.checkout-shipping-options-popup__close {
            display: grid;
            place-items: center;
            flex: 0 0 auto;
            width: 40px;
            height: 40px;
            border: 0;
            background: transparent;
            color: inherit;
            font: inherit;
            font-size: 2rem;
            line-height: 1;
            cursor: pointer;
        }
.checkout-shipping-options-popup__groups {
            display: grid;
            gap: 14px;
        }
.checkout-shipping-options-popup__group {
            display: grid;
            gap: 10px;
            width: 100%;
            min-width: 0;
            border: 1px solid var(--checkout-popup-border, var(--checkout-border));
            background: var(--checkout-popup-group-surface, var(--checkout-popup-surface, var(--checkout-surface, rgb(var(--color-background-rgb, 255 255 255)))));
            padding: 14px;
        }
@media (max-width: 749px) {
            .checkout-shipping-breakdown {
                margin-inline-start: 0;
            }

            .checkout-shipping-breakdown__row {
                grid-template-columns: 24px minmax(0, 1fr) auto;
                gap: 10px;
                padding: 12px;
            }

            .checkout-shipping-breakdown__icon {
                width: 20px;
                height: 20px;
            }

            .checkout-shipping-items-popup__sheet {
                width: 100%;
                max-height: 78dvh;
                border-radius: 0;
                padding: 20px;
            }

            .checkout-shipping-options-popup__sheet {
                width: 100%;
                max-height: 82dvh;
                border-radius: 0;
                padding: 20px;
            }
        }
@media (min-width: 990px) {
            .checkout-shipping-items-popup,
            .checkout-shipping-options-popup {
                align-items: center;
                justify-items: center;
            }

            .checkout-shipping-items-popup__sheet,
            .checkout-shipping-options-popup__sheet {
                width: min(720px, calc(100vw - 64px));
                max-height: min(80dvh, 720px);
            }
        }
.checkout-state-box,
        .checkout-shipment-group,
        .checkout-unavailable-list {
            display: grid;
            gap: 10px;
            width: 100%;
            min-width: 0;
            border: 1px solid var(--checkout-border);
            background: var(--checkout-soft-surface);
            padding: 14px;
        }
.checkout-state-box--center {
            min-height: 72px;
            place-items: center;
            text-align: center;
            color: var(--checkout-muted);
        }
.checkout-shipment-items {
            display: grid;
            gap: 4px;
            color: var(--checkout-muted);
        }
.checkout-choice--custom-shipping {
            cursor: pointer;
        }
.checkout-unavailable-item {
            border: 1px solid color-mix(in srgb, #9f1d1d 28%, transparent);
            background: var(--checkout-surface);
            padding: 12px;
        }
.checkout-unavailable-item > span {
            display: grid;
            gap: 4px;
            min-width: 0;
        }
.checkout-unavailable-item button {
            flex-shrink: 0;
            border: 1px solid currentColor;
            background: transparent;
            color: #9f1d1d;
            padding: 8px 12px;
            font: inherit;
            cursor: pointer;
        }
.checkout-unavailable-item button:disabled {
            cursor: not-allowed;
            opacity: 0.5;
        }
.checkout-choice__error,
        .checkout-message--error,
        .checkout-alert--error {
            color: #9f1d1d;
        }
.checkout-message--warning,
        .checkout-alert--warning {
            color: #7a4b00;
        }
.checkout-alert--success {
            color: #12663a;
        }
.checkout-checkbox {
            display: flex;
            align-items: center;
            gap: 12px;
            padding: 2px 0;
        }
.checkout-default-address-control {
            padding-block-start: 10px;
        }
.checkout-apply-row,
        .checkout-submit-actions {
            display: grid;
            gap: 12px;
        }
.checkout-apply-row {
            grid-template-columns: minmax(0, 1fr) auto;
            align-items: end;
        }
.checkout-action {
            grid-column: 1 / -1;
            justify-self: stretch;
            width: 100%;
            justify-content: center;
            min-height: 48px;
        }
.checkout-action__content {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 9px;
        }
.checkout-action__icon {
            width: 19px;
            height: 19px;
            flex: 0 0 auto;
        }
.checkout-action__icon circle,
        .checkout-action__icon path {
            stroke: currentColor;
            stroke-width: 1.6;
            stroke-linecap: round;
            stroke-linejoin: round;
        }
.checkout-success-state__icon {
            display: inline-grid;
            place-items: center;
            width: 74px;
            height: 74px;
            flex: 0 0 auto;
            color: var(--color-background);
            border-radius: 50%;
            background: var(--color-foreground);
            box-shadow: 0 0 0 8px color-mix(in srgb, var(--color-foreground) 8%, transparent);
        }
.checkout-success-state__icon svg {
            width: 40px;
            height: 40px;
        }
.checkout-success-state__check {
            stroke: currentColor;
            stroke-width: 2.6;
            stroke-linecap: round;
            stroke-linejoin: round;
        }
.checkout-action:disabled {
            cursor: not-allowed;
            opacity: 0.5;
        }
.checkout-delivery-fields .checkout-choice-grid {
            grid-template-columns: minmax(0, 1fr);
        }
.checkout-local-address {
            display: grid;
            gap: 10px;
        }
.checkout-local-address__search {
            display: grid;
            gap: 8px;
        }
.checkout-local-address__label-row {
            display: flex;
            align-items: baseline;
            justify-content: space-between;
            gap: 12px;
        }
.checkout-local-address__input-wrap {
            position: relative;
            min-width: 0;
        }
.checkout-local-address__input-wrap .checkout-input {
            padding-inline-end: 44px;
        }
.checkout-local-address__input-wrap .checkout-input::-webkit-search-cancel-button {
            display: none;
            -webkit-appearance: none;
                    appearance: none;
        }
.checkout-local-address__search-icon {
            position: absolute;
            z-index: 1;
            inset: 50% 14px auto auto;
            width: 20px;
            height: 20px;
            color: var(--checkout-muted);
            pointer-events: none;
            transform: translateY(-50%);
        }
.checkout-local-address__search-icon svg {
            display: block;
            width: 100%;
            height: 100%;
        }
.checkout-local-address__location {
            flex: 0 0 auto;
            border: 0;
            padding: 4px 0;
            background: transparent;
            color: var(--color-foreground);
            font: inherit;
            font-size: 0.82rem;
            text-decoration: underline;
            text-underline-offset: 4px;
            cursor: pointer;
        }
.checkout-local-address__location:disabled {
            cursor: wait;
            opacity: 0.5;
        }
.checkout-local-address__suggestions {
            position: absolute;
            z-index: 40;
            inset: calc(100% + 6px) 0 auto;
            display: grid;
            max-height: 280px;
            overflow: auto;
            overscroll-behavior: contain;
            border: 1px solid rgb(var(--color-foreground-rgb) / 0.16);
            background: var(--color-background);
            box-shadow: 0 12px 28px rgb(0 0 0 / 0.14);
        }
.checkout-local-address__suggestions[hidden] {
            display: none;
        }
.checkout-local-address__suggestions button {
            display: grid;
            gap: 3px;
            width: 100%;
            border: 0;
            border-bottom: 1px solid rgb(var(--color-foreground-rgb) / 0.1);
            padding: 12px;
            background: transparent;
            color: inherit;
            text-align: left;
            cursor: pointer;
        }
.checkout-local-address__suggestions button:last-child {
            border-bottom: 0;
        }
.checkout-local-address__suggestions span {
            color: var(--checkout-muted);
            font-size: 0.78rem;
        }
.checkout-line-items {
            display: grid;
            gap: 16px;
        }
.checkout-line-item {
            display: grid;
            grid-template-columns: 62px minmax(0, 1fr);
            grid-template-areas:
                "media details"
                "media price";
            -moz-column-gap: 12px;
                 column-gap: 12px;
            row-gap: 8px;
            align-items: start;
        }
.checkout-line-item__media {
            grid-area: media;
            position: relative;
            aspect-ratio: 4 / 5;
            background: rgb(var(--color-foreground-rgb) / 0.06);
            overflow: hidden;
        }
.checkout-line-item__media img {
            display: block;
            width: 100%;
            height: 100%;
            -o-object-fit: cover;
               object-fit: cover;
        }
.checkout-line-item__details {
            grid-area: details;
            display: grid;
            gap: 3px;
            min-width: 0;
        }
.checkout-line-item__price {
            grid-area: price;
            justify-self: start;
        }
.checkout-line-item__details span {
            font-family: var(--cart-primary-font-family);
            font-style: var(--cart-primary-font-style);
            font-weight: var(--cart-primary-font-weight);
            font-size: var(--checkout-body-font-size);
            line-height: var(--checkout-body-line-height);
            letter-spacing: var(--checkout-body-letter-spacing);
            text-transform: var(--checkout-body-text-transform);
        }
.checkout-price {
            font-family: var(--checkout-price-font-family);
            font-style: var(--checkout-price-font-style);
            font-weight: var(--checkout-price-font-weight);
            font-size: var(--checkout-price-font-size);
            line-height: var(--checkout-price-line-height);
            letter-spacing: var(--checkout-price-letter-spacing);
            text-transform: var(--checkout-price-text-transform);
        }
.checkout-total-line {
            font-family: var(--checkout-body-font-family);
            font-style: var(--checkout-body-font-style);
            font-weight: var(--checkout-body-font-weight);
            font-size: var(--checkout-body-font-size);
            line-height: var(--checkout-body-line-height);
            letter-spacing: var(--checkout-body-letter-spacing);
            text-transform: var(--checkout-body-text-transform);
        }
.checkout-line-item__details small {
            color: var(--checkout-muted);
            font-family: var(--checkout-body-font-family);
            font-style: var(--checkout-body-font-style);
            font-weight: var(--checkout-body-font-weight);
            font-size: var(--checkout-body-font-size);
            line-height: var(--checkout-body-line-height);
            letter-spacing: var(--checkout-body-letter-spacing);
            text-transform: var(--checkout-body-text-transform);
        }
.checkout-line-item__properties {
            display: grid;
            gap: 2px;
            margin: 0;
            color: var(--checkout-muted);
            font-size: var(--checkout-body-font-size);
            line-height: var(--checkout-body-line-height);
        }
.checkout-line-item__booking-slot {
            display: grid;
            gap: 2px;
        }
.checkout-line-item__deposit {
            color: var(--checkout-muted);
            font-family: var(--checkout-body-font-family);
            font-size: var(--checkout-body-font-size);
            line-height: var(--checkout-body-line-height);
        }
.checkout-line-item__deposit summary {
            cursor: pointer;
            list-style-position: inside;
        }
.checkout-line-item__deposit p {
            margin: 4px 0 0;
            overflow-wrap: anywhere;
        }
.checkout-line-item__property,
        .checkout-line-item__property dt,
        .checkout-line-item__property dd {
            display: inline;
            margin: 0;
        }
.checkout-line-item__property dd {
            overflow-wrap: anywhere;
        }
.checkout-totals {
            display: grid;
            gap: 11px;
            border-block-start: 1px solid var(--checkout-border);
            padding-block-start: 18px;
        }
.checkout-redemption {
            display: grid;
            gap: 8px;
            border-block-end: 1px solid var(--checkout-border);
            padding-block-end: 18px;
            margin-block-end: 4px;
        }
.checkout-redemption__button {
            box-sizing: border-box;
            height: 48px;
            min-height: 48px;
            justify-content: center;
            padding-inline: 18px;
            white-space: nowrap;
        }
.checkout-total-line {
            display: flex;
            justify-content: space-between;
            gap: 16px;
            color: var(--checkout-muted);
        }
.checkout-total-line--grand {
            border-block-start: 1px solid var(--checkout-border);
            margin-block-start: 6px;
            padding-block-start: 16px;
            color: var(--color-foreground);
        }
.checkout-price {
            color: var(--color-foreground);
        }
@keyframes checkout-total-shimmer {
            from { background-position: 100% 0; }
            to { background-position: -100% 0; }
        }
@media (min-width: 990px) {
        .spacing-style,
        .layout-panel-flex {
            --spacing-scale: var(--spacing-scale-default);
            --gap-scale: var(--spacing-scale-default);
        }

        .checkout-group--checkout-layout-group > .group-block-content {
            grid-template-columns: minmax(0, 720px) minmax(340px, 430px);
            justify-content: space-between;
        }

        .checkout-group--checkout-summary {
            position: sticky;
            top: 28px;
        }

        .checkout-field-grid--two {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .checkout-field-grid--three,
        .checkout-choice-grid {
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }

        .checkout-submit-actions {
            grid-template-columns: repeat(2, minmax(0, 1fr));
            justify-content: stretch;
        }

        .checkout-line-item {
            grid-template-columns: 64px minmax(0, 1fr) max-content;
            grid-template-areas: "media details price";
            gap: 12px;
            align-items: center;
        }

        .checkout-line-item__price {
            justify-self: end;
            text-align: right;
        }
    }
@media (max-width: 989px) {
        .checkout-phone-input {
            grid-template-columns: 44px minmax(0, 1fr);
        }

        .checkout-phone-input::after {
            inset-inline-start: 44px;
        }

        .checkout-group--checkout-form-column {
            display: contents;
        }

        .checkout-group--checkout-form-column > .group-block__media-wrapper {
            display: none;
        }

        .checkout-group--checkout-form-column > .group-block-content {
            display: contents;
        }

        .checkout-group--checkout-header-group {
            order: 1;
        }

        .checkout-group--checkout-summary {
            order: 2;
        }

        .checkout-summary__header {
            position: relative;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            width: 100%;
            min-height: 36px;
            padding-inline-end: 48px;
        }

        .checkout-summary__header > .text-block {
            flex: 1 1 auto;
            min-width: 0;
        }

        .checkout-summary__toggle {
            position: absolute;
            inset-block-start: 0;
            inset-inline-end: 0;
            display: inline-flex;
            flex: 0 0 auto;
            align-items: center;
            justify-content: flex-end;
            width: 100%;
            height: 100%;
            min-height: 36px;
            padding-inline-end: 10px;
            border: 0;
            border-radius: 999px;
            color: var(--color-foreground);
            background: transparent;
            cursor: pointer;
        }

        .checkout-summary__toggle-icon {
            width: 10px;
            height: 10px;
            border-inline-end: 1.5px solid currentColor;
            border-block-end: 1.5px solid currentColor;
            transform: rotate(-135deg) translateY(-2px);
            transition: transform 160ms ease;
        }

        .checkout-summary--collapsed .checkout-summary__toggle-icon {
            transform: rotate(45deg) translateY(-2px);
        }

        .checkout-summary__collapsible-content {
            display: grid;
            gap: var(--gap, 18px);
            width: 100%;
            min-width: 0;
        }

        .checkout-summary__collapsed-totals {
            display: none;
            width: 100%;
            min-width: 0;
        }

        .checkout-summary__collapsed-total-line {
            display: flex;
            align-items: baseline;
            justify-content: space-between;
            gap: 16px;
            color: var(--color-foreground);
        }

        .checkout-summary__collapsed-total-line--muted {
            color: var(--checkout-muted);
            font-size: 0.92em;
        }

        .checkout-summary--collapsed .checkout-summary__collapsible-content {
            display: none;
        }

        .checkout-summary--collapsed .checkout-summary__collapsed-totals {
            display: grid;
            gap: 8px;
        }

        .checkout-panel {
            order: 3;
        }
    }
@media screen and (max-width: 900px) {
        .bento-box {
            grid-template-columns: repeat(2, 1fr);
        }

        .bento-box__item:nth-child(3n + 1),
        .bento-box__item:nth-child(3n + 2) {
            grid-column: span 1;
        }

        .bento-box__item:nth-child(3n + 3) {
            grid-column: span 2;
        }

        .bento-box__item:last-child:nth-child(3n + 5) {
            grid-column: span 1;
        }

        .bento-box__item:last-child:nth-child(3n + 4) {
            grid-column: span 2;
        }
    }
@media (max-width: 749px) {
        .account-code-actions-inline {
            grid-template-columns: minmax(0, 1fr);
        }

        .mobile-column {
            flex-flow: column nowrap;
            align-items: var(--horizontal-alignment);
            justify-content: var(--vertical-alignment-mobile);
        }

        .section-content-wrapper.layout-panel-flex.mobile-column {
            flex-flow: column nowrap;
            align-items: var(--horizontal-alignment);
            justify-content: var(--vertical-alignment-mobile);
        }

        .group-block-content.layout-panel-flex--row.mobile-column {
            align-items: var(--horizontal-alignment);
            justify-content: var(--vertical-alignment-mobile);
        }

        .slideshow-section .slide__content .mobile-column {
            flex-flow: column nowrap;
            align-items: var(--horizontal-alignment);
            justify-content: var(--vertical-alignment-mobile);
        }

        .layout-panel-flex--row:not(.mobile-column) {
            flex-wrap: var(--flex-wrap-mobile);
            height: auto;
        }

        .layout-panel-flex--row:not(.mobile-column) > .group-block--height-fill {
            height: calc(var(--section-min-height, auto) - var(--section-height-offset, 0px));
        }

        .layout-panel-flex--row:not(.mobile-column) > .text-block {
            flex: 1 1 var(--max-width--display-tight);
        }

        .layout-panel-flex--row:not(.mobile-column) > .button {
            flex: 0 0 fit-content;
        }

        .account-panel-form {
            max-width: none;
        }

        .account-section .group-block--width-custom {
            width: 100%;
        }

        .spacer-block {
            height: auto;
            min-height: 0;
        }

        .layout-panel-flex--row:not(.mobile-column) > .spacer-block--size-mobile-percent {
            flex: 0 0 var(--spacer-size-mobile);
            height: 100%;
        }

        .layout-panel-flex--column > .spacer-block--size-mobile-percent,
        .mobile-column > .spacer-block--size-percent:not(.spacer-block--size-mobile-pixel) {
            width: 100%;
            flex: 0 0 var(--spacer-size-mobile);
        }

        .layout-panel-flex--row:not(.mobile-column) > .spacer-block--size-mobile-pixel {
            width: var(--spacer-size-mobile);
            height: 100%;
        }

        .layout-panel-flex--column > .spacer-block--size-mobile-pixel,
        .mobile-column > .spacer-block--size-mobile-pixel {
            width: 100%;
            flex: 0;
            height: var(--spacer-size-mobile);
        }
    }
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.visible {
  visibility: visible;
}
.static {
  position: static;
}
.fixed {
  position: fixed;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.sticky {
  position: sticky;
}
.inset-0 {
  inset: 0px;
}
.-left-\[8\%\] {
  left: -8%;
}
.-right-\[8\%\] {
  right: -8%;
}
.-top-\[15\%\] {
  top: -15%;
}
.bottom-0 {
  bottom: 0px;
}
.right-0 {
  right: 0px;
}
.isolate {
  isolation: isolate;
}
.z-10 {
  z-index: 10;
}
.z-\[1\] {
  z-index: 1;
}
.m-0 {
  margin: 0px;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.mb-3 {
  margin-bottom: 0.75rem;
}
.mb-4 {
  margin-bottom: 1rem;
}
.mb-5 {
  margin-bottom: 1.25rem;
}
.mb-6 {
  margin-bottom: 1.5rem;
}
.mb-8 {
  margin-bottom: 2rem;
}
.mt-2 {
  margin-top: 0.5rem;
}
.mt-3 {
  margin-top: 0.75rem;
}
.mt-4 {
  margin-top: 1rem;
}
.mt-5 {
  margin-top: 1.25rem;
}
.mt-6 {
  margin-top: 1.5rem;
}
.mt-7 {
  margin-top: 1.75rem;
}
.mt-8 {
  margin-top: 2rem;
}
.\!block {
  display: block !important;
}
.block {
  display: block;
}
.flex {
  display: flex;
}
.table {
  display: table;
}
.grid {
  display: grid;
}
.contents {
  display: contents;
}
.hidden {
  display: none;
}
.aspect-\[1\.6\/1\] {
  aspect-ratio: 1.6/1;
}
.aspect-\[16\/10\] {
  aspect-ratio: 16/10;
}
.aspect-\[4\/5\] {
  aspect-ratio: 4/5;
}
.h-14 {
  height: 3.5rem;
}
.h-7 {
  height: 1.75rem;
}
.h-\[42\%\] {
  height: 42%;
}
.h-\[55\%\] {
  height: 55%;
}
.h-\[70\%\] {
  height: 70%;
}
.h-full {
  height: 100%;
}
.min-h-\[420px\] {
  min-height: 420px;
}
.min-h-\[520px\] {
  min-height: 520px;
}
.min-h-\[88px\] {
  min-height: 88px;
}
.min-h-screen {
  min-height: 100vh;
}
.w-14 {
  width: 3.5rem;
}
.w-7 {
  width: 1.75rem;
}
.w-\[42\%\] {
  width: 42%;
}
.w-\[45\%\] {
  width: 45%;
}
.w-\[80\%\] {
  width: 80%;
}
.w-fit {
  width: -moz-fit-content;
  width: fit-content;
}
.w-full {
  width: 100%;
}
.min-w-0 {
  min-width: 0px;
}
.min-w-32 {
  min-width: 8rem;
}
.min-w-max {
  min-width: -moz-max-content;
  min-width: max-content;
}
.max-w-2xl {
  max-width: 42rem;
}
.max-w-3xl {
  max-width: 48rem;
}
.max-w-4xl {
  max-width: 56rem;
}
.max-w-7xl {
  max-width: 80rem;
}
.max-w-\[360px\] {
  max-width: 360px;
}
.max-w-\[560px\] {
  max-width: 560px;
}
.max-w-\[var\(--page-width\)\] {
  max-width: var(--page-width);
}
.max-w-none {
  max-width: none;
}
.max-w-sm {
  max-width: 24rem;
}
.max-w-xl {
  max-width: 36rem;
}
.flex-1 {
  flex: 1 1 0%;
}
.shrink-0 {
  flex-shrink: 0;
}
.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-cols-\[1fr_auto\] {
  grid-template-columns: 1fr auto;
}
.grid-cols-\[auto_1fr_auto\] {
  grid-template-columns: auto 1fr auto;
}
.flex-col {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.place-items-center {
  place-items: center;
}
.items-start {
  align-items: flex-start;
}
.items-end {
  align-items: flex-end;
}
.items-center {
  align-items: center;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.gap-1 {
  gap: 0.25rem;
}
.gap-2 {
  gap: 0.5rem;
}
.gap-3 {
  gap: 0.75rem;
}
.gap-4 {
  gap: 1rem;
}
.gap-5 {
  gap: 1.25rem;
}
.gap-6 {
  gap: 1.5rem;
}
.gap-8 {
  gap: 2rem;
}
.divide-y > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
}
.divide-black\/10 > :not([hidden]) ~ :not([hidden]) {
  border-color: rgb(0 0 0 / 0.1);
}
.overflow-hidden {
  overflow: hidden;
}
.whitespace-nowrap {
  white-space: nowrap;
}
.text-wrap {
  text-wrap: wrap;
}
.rounded {
  border-radius: 0.25rem;
}
.rounded-\[50\%\] {
  border-radius: 50%;
}
.rounded-\[inherit\] {
  border-radius: inherit;
}
.rounded-full {
  border-radius: 9999px;
}
.rounded-tl-full {
  border-top-left-radius: 9999px;
}
.border {
  border-width: 1px;
}
.border-0 {
  border-width: 0px;
}
.border-y {
  border-top-width: 1px;
  border-bottom-width: 1px;
}
.border-b {
  border-bottom-width: 1px;
}
.border-t {
  border-top-width: 1px;
}
.border-\[\#7d5449\] {
  --tw-border-opacity: 1;
  border-color: rgb(125 84 73 / var(--tw-border-opacity, 1));
}
.border-\[\#d9c9b6\] {
  --tw-border-opacity: 1;
  border-color: rgb(217 201 182 / var(--tw-border-opacity, 1));
}
.border-\[\#e2d6c8\] {
  --tw-border-opacity: 1;
  border-color: rgb(226 214 200 / var(--tw-border-opacity, 1));
}
.border-\[var\(--casa-border\)\] {
  border-color: var(--casa-border);
}
.border-black {
  --tw-border-opacity: 1;
  border-color: rgb(0 0 0 / var(--tw-border-opacity, 1));
}
.border-black\/10 {
  border-color: rgb(0 0 0 / 0.1);
}
.border-black\/20 {
  border-color: rgb(0 0 0 / 0.2);
}
.border-white\/80 {
  border-color: rgb(255 255 255 / 0.8);
}
.bg-\[\#6f787c\] {
  --tw-bg-opacity: 1;
  background-color: rgb(111 120 124 / var(--tw-bg-opacity, 1));
}
.bg-\[\#8f989d\] {
  --tw-bg-opacity: 1;
  background-color: rgb(143 152 157 / var(--tw-bg-opacity, 1));
}
.bg-\[\#a5adb2\] {
  --tw-bg-opacity: 1;
  background-color: rgb(165 173 178 / var(--tw-bg-opacity, 1));
}
.bg-\[\#f3a37f\] {
  --tw-bg-opacity: 1;
  background-color: rgb(243 163 127 / var(--tw-bg-opacity, 1));
}
.bg-\[\#f3f0ed\] {
  --tw-bg-opacity: 1;
  background-color: rgb(243 240 237 / var(--tw-bg-opacity, 1));
}
.bg-\[\#f7f3ec\] {
  --tw-bg-opacity: 1;
  background-color: rgb(247 243 236 / var(--tw-bg-opacity, 1));
}
.bg-\[\#fffaf4\] {
  --tw-bg-opacity: 1;
  background-color: rgb(255 250 244 / var(--tw-bg-opacity, 1));
}
.bg-\[var\(--casa-cream\)\] {
  background-color: var(--casa-cream);
}
.bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}
.bg-transparent {
  background-color: transparent;
}
.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}
.bg-white\/35 {
  background-color: rgb(255 255 255 / 0.35);
}
.bg-white\/70 {
  background-color: rgb(255 255 255 / 0.7);
}
.bg-\[radial-gradient\(circle_at_20\%_20\%\2c rgba\(255\2c 255\2c 255\2c 0\.22\)\2c transparent_30\%\)\2c radial-gradient\(circle_at_80\%_70\%\2c rgba\(255\2c 255\2c 255\2c 0\.16\)\2c transparent_34\%\)\] {
  background-image: radial-gradient(circle at 20% 20%,rgba(255,255,255,0.22),transparent 30%),radial-gradient(circle at 80% 70%,rgba(255,255,255,0.16),transparent 34%);
}
.bg-gradient-to-t {
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
}
.from-black\/45 {
  --tw-gradient-from: rgb(0 0 0 / 0.45) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.via-black\/10 {
  --tw-gradient-to: rgb(0 0 0 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(0 0 0 / 0.1) var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.to-transparent {
  --tw-gradient-to: transparent var(--tw-gradient-to-position);
}
.object-contain {
  -o-object-fit: contain;
     object-fit: contain;
}
.object-cover {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-4 {
  padding: 1rem;
}
.p-5 {
  padding: 1.25rem;
}
.p-6 {
  padding: 1.5rem;
}
.p-8 {
  padding: 2rem;
}
.px-0 {
  padding-left: 0px;
  padding-right: 0px;
}
.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.py-14 {
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
}
.py-16 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.py-5 {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.py-\[60px\] {
  padding-top: 60px;
  padding-bottom: 60px;
}
.pb-0 {
  padding-bottom: 0px;
}
.pb-12 {
  padding-bottom: 3rem;
}
.pb-3 {
  padding-bottom: 0.75rem;
}
.pb-4 {
  padding-bottom: 1rem;
}
.pt-6 {
  padding-top: 1.5rem;
}
.pt-8 {
  padding-top: 2rem;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.text-\[11px\] {
  font-size: 11px;
}
.text-\[12px\] {
  font-size: 12px;
}
.text-\[13px\] {
  font-size: 13px;
}
.text-\[15px\] {
  font-size: 15px;
}
.text-\[16px\] {
  font-size: 16px;
}
.text-\[17px\] {
  font-size: 17px;
}
.text-\[18px\] {
  font-size: 18px;
}
.text-\[20px\] {
  font-size: 20px;
}
.text-\[22px\] {
  font-size: 22px;
}
.text-\[24px\] {
  font-size: 24px;
}
.text-\[28px\] {
  font-size: 28px;
}
.text-\[34px\] {
  font-size: 34px;
}
.text-\[36px\] {
  font-size: 36px;
}
.text-\[40px\] {
  font-size: 40px;
}
.text-\[44px\] {
  font-size: 44px;
}
.text-\[48px\] {
  font-size: 48px;
}
.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}
.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.font-light {
  font-weight: 300;
}
.font-medium {
  font-weight: 500;
}
.font-normal {
  font-weight: 400;
}
.font-semibold {
  font-weight: 600;
}
.uppercase {
  text-transform: uppercase;
}
.lowercase {
  text-transform: lowercase;
}
.capitalize {
  text-transform: capitalize;
}
.italic {
  font-style: italic;
}
.leading-6 {
  line-height: 1.5rem;
}
.leading-7 {
  line-height: 1.75rem;
}
.leading-8 {
  line-height: 2rem;
}
.leading-\[0\.98\] {
  line-height: 0.98;
}
.leading-\[1\.15\] {
  line-height: 1.15;
}
.leading-\[1\.35\] {
  line-height: 1.35;
}
.leading-none {
  line-height: 1;
}
.leading-tight {
  line-height: 1.25;
}
.tracking-\[0\.18em\] {
  letter-spacing: 0.18em;
}
.tracking-\[0\.22em\] {
  letter-spacing: 0.22em;
}
.tracking-\[0\.24em\] {
  letter-spacing: 0.24em;
}
.tracking-\[0\.28em\] {
  letter-spacing: 0.28em;
}
.tracking-\[0\.2em\] {
  letter-spacing: 0.2em;
}
.tracking-\[0\.3em\] {
  letter-spacing: 0.3em;
}
.text-\[\#24170f\] {
  --tw-text-opacity: 1;
  color: rgb(36 23 15 / var(--tw-text-opacity, 1));
}
.text-\[\#5f4d3d\] {
  --tw-text-opacity: 1;
  color: rgb(95 77 61 / var(--tw-text-opacity, 1));
}
.text-\[\#6b5a4b\] {
  --tw-text-opacity: 1;
  color: rgb(107 90 75 / var(--tw-text-opacity, 1));
}
.text-\[\#6f5c49\] {
  --tw-text-opacity: 1;
  color: rgb(111 92 73 / var(--tw-text-opacity, 1));
}
.text-\[\#7d5449\] {
  --tw-text-opacity: 1;
  color: rgb(125 84 73 / var(--tw-text-opacity, 1));
}
.text-\[\#8a6a37\] {
  --tw-text-opacity: 1;
  color: rgb(138 106 55 / var(--tw-text-opacity, 1));
}
.text-\[var\(--casa-brown\)\] {
  color: var(--casa-brown);
}
.text-\[var\(--casa-fg\)\] {
  color: var(--casa-fg);
}
.text-black {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}
.text-black\/50 {
  color: rgb(0 0 0 / 0.5);
}
.text-black\/60 {
  color: rgb(0 0 0 / 0.6);
}
.text-black\/65 {
  color: rgb(0 0 0 / 0.65);
}
.text-black\/70 {
  color: rgb(0 0 0 / 0.7);
}
.text-black\/75 {
  color: rgb(0 0 0 / 0.75);
}
.text-current {
  color: currentColor;
}
.text-green-700 {
  --tw-text-opacity: 1;
  color: rgb(21 128 61 / var(--tw-text-opacity, 1));
}
.text-inherit {
  color: inherit;
}
.text-red-700 {
  --tw-text-opacity: 1;
  color: rgb(185 28 28 / var(--tw-text-opacity, 1));
}
.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.underline {
  text-decoration-line: underline;
}
.opacity-60 {
  opacity: 0.6;
}
.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-xl {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.outline-none {
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.outline {
  outline-style: solid;
}
.ring {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.maintenance-actions {
    display: flex;
    flex-direction: inherit;
    flex-wrap: wrap;
    justify-content: inherit;
    align-items: inherit;
    gap: inherit;
    width: 100%;
}

.maintenance-password-field {
    flex: 1 1 240px;
    width: auto;
}

.maintenance-actions:not([data-unlock-visible="true"]) .maintenance-password-field,
.maintenance-actions:not([data-unlock-visible="true"]) [data-upstorr-maintenance-action="submit"] {
    display: none;
}

.maintenance-actions[data-unlock-visible="true"] [data-upstorr-maintenance-action="reveal"] {
    display: none;
}

.maintenance-actions a[aria-disabled="true"] {
    pointer-events: none;
    opacity: 0.64;
}

.maintenance-unlock__message {
    display: none;
    flex-basis: 100%;
    min-height: 1.4em;
    margin: 10px 0 0;
    text-align: center;
}

.maintenance-unlock__message:not(:empty) {
    display: block;
}

.maintenance-unlock__message[data-tone="error"] {
    color: #b42318;
}

.maintenance-unlock__message[data-tone="success"] {
    color: #1e7841;
}

html.storefront-modal-open,
html.storefront-modal-open body {
    overflow: hidden !important;
    overscroll-behavior: none !important;
}

.orders-local-delivery {
  display: grid;
  gap: 12px;
  padding: 18px 0;
  border-top: 1px solid var(--casa-border);
}

.orders-local-delivery__list {
  display: grid;
  gap: 10px;
}

.orders-local-delivery__journey {
  border: 1px solid var(--casa-border);
  border-radius: 12px;
  overflow: hidden;
}

.orders-local-delivery__journey > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px;
  cursor: pointer;
  list-style: none;
}

.orders-local-delivery__journey > summary > span:first-child {
  display: grid;
  gap: 3px;
}

.orders-local-delivery__journey small {
  color: var(--casa-fg);
  font-size: 12px;
}

.orders-local-delivery__body {
  display: grid;
  gap: 10px;
  padding: 0 14px 14px;
}

.orders-local-delivery__body ol {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.orders-local-delivery__body li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

@media (max-width: 640px) {
  .orders-local-delivery__journey > summary,
  .orders-local-delivery__body li {
    align-items: flex-start;
    flex-direction: column;
  }
}

.orders-return-request {
  padding: 16px 0;
  border-top: 1px solid var(--casa-border);
}

.orders-return-request__trigger,
.orders-return-request__form > button:last-child {
  min-height: 44px;
  padding: 10px 16px;
  border: 1px solid var(--casa-primary-button-border);
  border-radius: var(--casa-primary-button-radius);
  background: var(--casa-primary-button-bg);
  color: var(--casa-primary-button-text);
}

.orders-return-request__form,
.orders-return-request__items {
  display: grid;
  gap: 12px;
}

.orders-return-request__header,
.orders-return-request__items label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.orders-return-request__header p {
  margin: 4px 0 0;
  color: var(--casa-fg);
  font-size: 13px;
}

.orders-return-request__items select {
  min-width: 64px;
  min-height: 40px;
  border: 1px solid var(--casa-border);
  border-radius: 8px;
  background: var(--casa-bg);
  color: var(--casa-heading);
}

.orders-return-request__reason {
  display: grid;
  gap: 6px;
}

.orders-return-request__reason textarea {
  min-height: 88px;
  resize: vertical;
  border: 1px solid var(--casa-border);
  border-radius: 8px;
  padding: 10px;
  background: var(--casa-bg);
  color: var(--casa-heading);
}

@media (max-width: 640px) {
  .orders-return-request__header {
    align-items: flex-start;
  }

  .orders-return-request__form > button:last-child {
    width: 100%;
  }
}

.last\:mb-0:last-child {
  margin-bottom: 0px;
}

.last\:border-b-0:last-child {
  border-bottom-width: 0px;
}

@media (min-width: 640px) {

  .sm\:flex-row {
    flex-direction: row;
  }

  .sm\:items-end {
    align-items: flex-end;
  }
}

@media (min-width: 768px) {

  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .md\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .md\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .md\:grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .md\:grid-cols-\[1\.1fr_0\.9fr\] {
    grid-template-columns: 1.1fr 0.9fr;
  }

  .md\:flex-row {
    flex-direction: row;
  }

  .md\:items-end {
    align-items: flex-end;
  }

  .md\:px-10 {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  .md\:py-20 {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .md\:text-\[32px\] {
    font-size: 32px;
  }

  .md\:text-\[72px\] {
    font-size: 72px;
  }
}

@media (min-width: 1280px) {

  .xl\:w-auto {
    width: auto;
  }

  .xl\:flex-none {
    flex: none;
  }

  .xl\:flex-row {
    flex-direction: row;
  }

  .xl\:items-start {
    align-items: flex-start;
  }

  .xl\:justify-end {
    justify-content: flex-end;
  }

  .xl\:justify-between {
    justify-content: space-between;
  }

  .xl\:px-8 {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
