/** Shopify CDN: Minification failed

Line 2118:0 Unexpected "}"
Line 3538:0 Expected "}" to go with "{"

**/
* {
  box-sizing: border-box;
}

body {
  color: var(--color-foreground);
  background: var(--color-background);
  display: flex;
  flex-direction: column;
  margin: 0;
  min-height: 100svh;
  font-variation-settings: 'slnt' 0;
}

:root {
  --hover-transition-duration: 0.25s;
  --hover-transition-timing: ease-out;
  --submenu-animation-speed: 360ms;
}

html {
  /* Firefox */
  scrollbar-width: thin;
  scrollbar-color: rgb(var(--color-foreground-rgb) / var(--opacity-40)) var(--color-background);
  scroll-behavior: smooth;
}

@media (min-width: 990px) {
  html:has(.page-wrapper),
  html:has(.page-wrapper) body {
    height: 100dvh;
    overflow: hidden;
  }
}

html[scroll-lock],
html[scroll-lock] .page-wrapper {
  overflow: hidden;
}

.page-wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100dvh;
  transition: margin-inline-end var(--animation-speed) var(--animation-timing-fade-out);
}

@media (min-width: 990px) {
  .page-wrapper {
    height: 100dvh;
    overflow-y: auto;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    scrollbar-color: rgb(var(--color-foreground-rgb) / var(--opacity-40)) var(--color-background);
  }

  .page-wrapper--drawer-open shopify-account::part(dialog) {
    translate: calc(-1 * var(--theme-drawer-width, var(--sidebar-width)));
  }

  /* The theme drawer opens from the inline-end edge, so the shift mirrors in RTL */
  [dir='rtl'] .page-wrapper--drawer-open shopify-account::part(dialog) {
    translate: var(--theme-drawer-width, var(--sidebar-width));
  }
}

.page-wrapper--drawer-open {
  margin-inline-end: var(--theme-drawer-width, var(--sidebar-width));
  transition-timing-function: var(--animation-timing-fade-in);
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

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

input,
textarea,
select {
  font: inherit;
  border-radius: var(--style-border-radius-inputs);
}

/** override ios and firefox defaults */
select {
  background-color: var(--color-background);
  color: currentcolor;
}

.product-card,
.collection-card,
.predictive-search-results__card--product,
.predictive-search-results__card {
  position: relative;
  transition: transform var(--hover-transition-duration) var(--hover-transition-timing),
    box-shadow var(--hover-transition-duration) var(--hover-transition-timing);
  z-index: var(--layer-flat);
}

.product-card__link {
  position: absolute;
  inset: 0;
}

.product-card__content {
  position: relative;
  cursor: pointer;
}

dialog {
  /* the ::backdrop inherits from the originating element, custom properties must be set on the dialog element */
  --backdrop-color-rgb: var(--color-shadow-rgb);

  background-color: var(--color-background);
  color: var(--color-foreground);
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

.wrap-text {
  overflow-wrap: break-word;
  word-break: break-word;
  hyphens: auto;
}

p:empty {
  display: none;
}

:first-child:is(p, h1, h2, h3, h4, h5, h6),
:first-child:empty + :where(p, h1, h2, h3, h4, h5, h6) {
  margin-block-start: 0;
}

/* Remove bottom margin from last text item, or previous to last if the last is empty */
:last-child:is(p, h1, h2, h3, h4, h5, h6),
:where(p, h1, h2, h3, h4, h5, h6):nth-child(2):has(+ :last-child:empty) {
  margin-block-end: 0;
}

/* view transitions */

/*
 * The cross-document (MPA) opt-in `@view-transition { navigation: auto }` is declared per-layout
 * (layout/theme.liquid and layout/password.liquid), because this stylesheet is shared by both layouts
 * and a static stylesheet can't read theme settings.
 * It is gated on the same `settings.page_transition_enabled or settings.transition_to_main_product` condition as the
 * render blocker, so the opt-in and its opt-out switch can never disagree. The rules below only
 * take effect once an `@view-transition` opt-in is active, so they are inert without it.
 */
@media (prefers-reduced-motion: no-preference) {
  /* Keep page interactive while view transitions are running */
  :root {
    view-transition-name: none;
  }

  /* Have the root transition during page navigation */
  html:active-view-transition-type(page-navigation),
  html:active-view-transition-type(product-image-transition) {
    view-transition-name: root-custom;
  }

  ::view-transition {
    pointer-events: none;
  }

  html:active-view-transition-type(page-navigation) main[data-page-transition-enabled='true'] {
    view-transition-name: main-content;
  }

  html:active-view-transition-type(page-navigation) main[data-product-transition='true'][data-template*='product'] {
    view-transition-name: none;
  }

  ::view-transition-old(main-content) {
    animation: var(--view-transition-old-main-content);
  }

  ::view-transition-new(main-content) {
    animation: var(--view-transition-new-main-content);
  }

  html:active-view-transition-type(product-image-transition) {
    [data-view-transition-type='product-image-transition'] {
      view-transition-name: product-image-transition;
    }

    [data-view-transition-type='product-details'] {
      view-transition-name: product-details;
    }
  }

  ::view-transition-group(product-image-transition) {
    z-index: 1;
  }

  ::view-transition-group(product-image-transition),
  ::view-transition-group(product-details) {
    animation-duration: var(--animation-speed);
    animation-timing-function: var(--animation-easing);
  }

  ::view-transition-old(product-image-transition),
  ::view-transition-new(product-image-transition) {
    block-size: 100%;
    overflow: hidden;
    object-fit: cover;
    animation-duration: 0.25s;
    animation-timing-function: var(--animation-easing);
  }

  ::view-transition-new(product-details) {
    animation: var(--view-transition-new-main-content);
  }
}

/* Focus */
*:focus-visible {
  outline: var(--focus-outline-width) solid currentcolor;
  outline-offset: var(--focus-outline-offset);
}

@supports not selector(:focus-visible) {
  *:focus {
    outline: var(--focus-outline-width) solid currentcolor;
    outline-offset: var(--focus-outline-offset);
  }
}

.focus-inset {
  outline-offset: calc(var(--focus-outline-width) * -1);
}

/* Layout */
.content-for-layout {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.content-for-layout > .shopify-section:last-child {
  flex-grow: 1;
}

/* Set up page widths & margins. Gutters grow to the device safe-area insets (viewport-fit=cover)
   so section backgrounds bleed edge-to-edge while content stays clear of the notch; taking the
   larger of both insets keeps the centered page grid symmetric. */
.page-width-wide,
.page-width-normal,
.page-width-narrow,
.page-width-content {
  --page-margin: max(16px, var(--safe-area-inset-left, 0px), var(--safe-area-inset-right, 0px));
}

@media screen and (min-width: 750px) {
  .page-width-wide,
  .page-width-normal,
  .page-width-narrow,
  .page-width-content {
    --page-margin: max(40px, var(--safe-area-inset-left, 0px), var(--safe-area-inset-right, 0px));
  }
}

.page-width-wide {
  /* NOTE: This results in a page width of 2400px because of how we set up margins with grid */
  --page-content-width: var(--wide-page-width);
  --page-width: calc(var(--page-content-width) + (var(--page-margin) * 2));
}

.page-width-normal {
  --page-content-width: var(--normal-page-width);
  --page-width: calc(var(--page-content-width) + (var(--page-margin) * 2));
}

.page-width-narrow {
  /* NOTE: This results in a page width of 1400px because of how we set up margins with grid */
  --page-content-width: var(--narrow-page-width);
  --page-width: calc(var(--page-content-width) + (var(--page-margin) * 2));
}

.page-width-content {
  --page-content-width: var(--normal-content-width);
  --page-width: calc(var(--page-content-width) + (var(--page-margin) * 2));
}

/* Section width full vs. page
   The reason we use a grid to contain the section is to allow for the section to have a
   full-width background image even if the section content is constrained by the page width. Do not try
   to rewrite this to max-width: --page-width; margin: 0 auto;, it doesn't work. */
.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);

  /* Utility variable gives the grid's first column width. Provides an offset width for components like carousels */
  --util-page-margin-offset: max(
    var(--page-margin),
    calc((100% - min(var(--page-content-width), 100% - var(--page-margin) * 2)) / 2)
  );

  /* Offset for full-width sections to account for the page margin,
  used for Marquee — note that --util-page-margin-offset doesn't work here */
  --full-page-margin-inline-offset: calc(((100vw - var(--full-page-grid-central-column-width)) / 2) * -1);

  width: 100%;

  /* This is required to make background images work, which are <img> rendered absolutely */
  position: relative;

  /* Set up the grid */
  display: grid;
  grid-template-columns: var(--full-page-grid-with-margins);
  min-height: var(--section-min-height, 'auto');
}

/* Place all direct children in the center column by default */
.section > * {
  grid-column: 2;
}

/* Make the actual section background transparent, and instead apply it to a separate sibling element to enable stacking with hero shadow  */
.shopify-section:not(.header-section) :is(.section, .cart-summary) {
  background: transparent;
}

.shopify-section:not(.header-section):has(.section) {
  position: relative;
}

.shopify-section:not(.header-section) .section-background {
  content: '';
  position: absolute;
  inset: 0;
  z-index: var(--layer-section-background);
  background-color: var(--color-background);
}

/* For page-width sections, all content goes in the center column */
.section--page-width > * {
  grid-column: 2;
}

/* For full-width sections, content spans all columns */
.section--full-width > * {
  grid-column: 1 / -1;
}

@media screen and (max-width: 749px) {
  .section--mobile-full-width > * {
    grid-column: 1 / -1;
  }
}

/* For full-width sections with margin, content still spans full width but with space on the sides */
.section--full-width.section--full-width-margin > * {
  grid-column: 1 / -1;

  @media screen and (min-width: 750px) {
    padding-inline: var(--page-margin);
  }
}

/* Some section content break out to full width of the page */
.section > .force-full-width {
  grid-column: 1 / -1;
}

.section--height-small {
  --section-min-height: var(--section-height-small);
}

.section--height-medium {
  --section-min-height: var(--section-height-medium);
}

.section--height-large {
  --section-min-height: var(--section-height-large);
}

.section--height-full-screen {
  --section-min-height: 100svh;
}

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

/* Utility */

.hidden {
  /* stylelint-disable-next-line declaration-no-important */
  display: none !important;
}

@media screen and (max-width: 749px) {
  .hidden--mobile,
  .mobile\:hidden {
    /* stylelint-disable-next-line declaration-no-important */
    display: none !important;
  }
}

@media screen and (min-width: 750px) {
  .hidden--desktop,
  .desktop\:hidden {
    /* stylelint-disable-next-line declaration-no-important */
    display: none !important;
  }
}

.hide-when-empty:empty {
  /* stylelint-disable-next-line declaration-no-important */
  display: none !important;
}

.visually-hidden:not(:focus, :active) {
  /* stylelint-disable-next-line declaration-no-important */
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  /* stylelint-disable-next-line declaration-no-important */
  word-wrap: normal !important;
}

.contents {
  display: contents;
}

.flex {
  display: flex;
  gap: var(--gap-md);
}

.grid {
  --centered-column-number: 12;
  --full-width-column-number: 14;
  --centered: column-1 / span var(--centered-column-number);
  --full-width: column-0 / span var(--full-width-column-number);

  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 750px) {
  .grid {
    display: grid;
    gap: 0;
    grid-template-columns: var(--margin-4xl) repeat(var(--centered-column-number), minmax(0, 1fr)) var(--margin-4xl);
    grid-template-areas: 'column-0 column-1 column-2 column-3 column-4 column-5 column-6 column-7 column-8 column-9 column-10 column-11 column-12 column-13';
  }
}

@media screen and (min-width: 1400px) {
  .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;
  }
}

.flip-x {
  scale: -1 1;
}

.list-unstyled {
  margin: 0;
  padding: 0;
  list-style: none;
}

.text-left {
  --text-align: start;

  text-align: start;
}

.text-center {
  --text-align: center;

  text-align: center;
}

.text-right {
  --text-align: end;

  text-align: end;
}

.text-inherit {
  color: inherit;
}

.user-select-text {
  user-select: text;
}

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

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

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

.svg-wrapper {
  color: currentcolor;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: var(--icon-size-sm);
  height: var(--icon-size-sm);
  pointer-events: none;
}

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

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

.svg-wrapper > svg {
  width: var(--icon-size-sm);
  height: var(--icon-size-sm);
}

.relative {
  position: relative;
}

/* Icons */
.icon-success,
.icon-error {
  width: var(--icon-size-md);
  height: var(--icon-size-md);
  flex-shrink: 0;
}

.icon-success {
  color: var(--color-success);
}

.icon-error {
  fill: var(--color-error);
}

.icon-default {
  fill: currentColor;
}

[data-placeholder='true'] * {
  cursor: default;
}

/* Base text and heading styles */
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);
  -webkit-font-smoothing: antialiased;
  color: var(--color, var(--color-foreground));
}

/* Ensure inputs with type presets maintain minimum 16px on mobile to prevent iOS zoom */
@media screen and (max-width: 1200px) {
  input.paragraph.paragraph,
  input.paragraph.paragraph:not([type]),
  textarea.paragraph.paragraph,
  select.paragraph.paragraph {
    font-size: max(1rem, var(--font-paragraph--size));
  }
}

.paragraph > small {
  font-size: smaller;
}

/* Typography presets */

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

@media screen and (max-width: 1200px) {
  input.h1.h1,
  textarea.h1.h1,
  select.h1.h1 {
    font-size: max(1rem, var(--font-h1--size));
  }
}

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

@media screen and (max-width: 1200px) {
  input.h2.h2,
  textarea.h2.h2,
  select.h2.h2 {
    font-size: max(1rem, var(--font-h2--size));
  }
}

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

@media screen and (max-width: 1200px) {
  input.h3,
  textarea.h3,
  select.h3 {
    font-size: max(1rem, var(--font-h3--size));
  }
}

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

@media screen and (max-width: 1200px) {
  input.h4.h4,
  textarea.h4.h4,
  select.h4.h4 {
    font-size: max(1rem, var(--font-h4--size));
  }
}

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

@media screen and (max-width: 1200px) {
  input.h5.h5,
  textarea.h5.h5,
  select.h5.h5 {
    font-size: max(1rem, var(--font-h5--size));
  }
}

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

@media screen and (max-width: 1200px) {
  input.h6.h6,
  textarea.h6.h6,
  select.h6.h6 {
    font-size: max(1rem, var(--font-h6--size));
  }
}

:first-child:is(.h1, .h2, .h3, .h4, .h5, .h6) {
  margin-block-start: 0;
}

:last-child:is(.h1, .h2, .h3, .h4, .h5, .h6) {
  margin-block-end: 0;
}

/* Links */
a {
  color: currentcolor;
  text-decoration-color: transparent;
  text-decoration-thickness: 0.075em;
  text-underline-offset: 0.125em;
  transition: text-decoration-color var(--animation-speed) var(--animation-easing),
    color var(--animation-speed) var(--animation-easing);
}

:is(h1, h2, h3, h4, h5, h6, p) > a:hover {
  color: rgb(var(--color-rgb, var(--color-foreground-rgb)) / 0.7);
}

/* Add underline to text using our paragraph styles only. */
p:not(.h1, .h2, .h3, .h4, .h5, .h6) a:where(:not(.button, .button-secondary)),
.rte :is(p, ul, ol, table):not(.h1, .h2, .h3, .h4, .h5, .h6) a:where(:not(.button, .button-secondary)) {
  text-decoration-color: currentcolor;

  &:hover {
    text-decoration-color: currentcolor;
    color: rgb(var(--color-rgb, var(--color-foreground-rgb)) / 0.7);
  }
}

.container-background-image {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

/* iOS fix: hide the default arrow on the summary */
summary::-webkit-details-marker {
  display: none;
}

/* Buttons */
.button,
.button-secondary,
.button-custom,
button.shopify-payment-button__button--unbranded {
  --text-align: center;

  display: grid;
  align-content: center;
  text-decoration: none;
  text-align: var(--text-align);
  color: var(--button-color);
  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 var(--animation-speed) var(--animation-easing),
    box-shadow var(--animation-speed) var(--animation-easing),
    background-color var(--animation-speed) var(--animation-easing);
  cursor: pointer;
  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 {
  font-family: var(--button-font-family-primary);
  text-transform: var(--button-text-case-primary);
  border-radius: var(--style-border-radius-buttons-primary);
}

.button:not(.button-secondary, .button-unstyled) {
  outline-color: var(--button-focus-outline-color, var(--button-background-color));
}

.button-secondary {
  font-family: var(--button-font-family-secondary);
  text-transform: var(--button-text-case-secondary);
  border-radius: var(--style-border-radius-buttons-secondary);
}

button.shopify-payment-button__button--unbranded {
  font-family: var(--button-font-family-primary);
  text-transform: var(--button-text-case-primary);
}

textarea,
input:not([type='checkbox'], [type='radio']) {
  background-color: var(--color-input-background);
  border-color: var(--color-input-border);
}

textarea::placeholder,
input::placeholder {
  color: rgb(var(--color-input-text-rgb) / var(--opacity-muted-text));
}

textarea:not(:placeholder-shown)::placeholder,
input:not(:placeholder-shown)::placeholder {
  opacity: 0;
}

/* The declaration above is messing with buttons that have an attribute of hidden as it overwrites the display value */
.button[hidden] {
  display: none;
}

.button[aria-disabled='true'],
.button-secondary[aria-disabled='true'],
.button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.button,
button.shopify-payment-button__button--unbranded {
  --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);
  --button-focus-outline-color: var(--color-primary-button-focus-outline);
}

.button:hover,
button.shopify-payment-button__button--unbranded:hover:not([disabled]) {
  --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-secondary {
  --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);
}

.button-secondary: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);
}

.button-custom {
  --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-secondary);
  --button-focus-outline-color: var(--color-primary-button-focus-outline);

  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-focus-outline-color, var(--button-background-color));
}

.button-custom: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);
}

/* Needed to override the default Shopify styles */
button.shopify-payment-button__button--unbranded:hover:not([disabled]) {
  background-color: var(--button-background-color);
}

.button-unstyled {
  display: block;
  padding: 0;
  background-color: inherit;
  color: var(--color-foreground);
  border: 0;
  border-radius: 0;
  overflow: hidden;
  box-shadow: none;
  font-family: var(--font-paragraph--family);
  font-style: var(--font-paragraph--style);
  font-size: var(--font-paragraph--size);
}

.button-unstyled:hover {
  background-color: inherit;
}

/* Default hover dim for link-style buttons, scoped via :where() so component-specific
   hover rules (.facets__clear-all-link, .header-actions__action, etc.) still win. */
:where(.button-unstyled):hover {
  --hover-color-rgb: var(--color-foreground-rgb);

  color: rgb(var(--hover-color-rgb) / var(--opacity-70));
}

.button-unstyled--with-icon {
  color: var(--color-foreground);
  display: flex;
  gap: var(--gap-2xs);
  align-items: center;
}

.button-unstyled--transparent {
  background-color: transparent;
  box-shadow: none;
}

/* Caret icon transition */
.icon-caret svg {
  transition: transform var(--animation-speed) var(--animation-easing);
}

summary {
  display: flex;
  align-items: center;
  cursor: pointer;
  list-style: none;
  padding-block: var(--padding-sm);
}

summary:hover {
  color: rgb(var(--color-foreground-rgb) / var(--opacity-80));
}

/* Animate the UI elements in only after the view transition is complete */
.close-button {
  position: fixed;

  /* Keep the fixed close button clear of the status bar and inline-end notch (viewport-fit=cover) */
  top: max(var(--margin-lg), var(--safe-area-inset-top, 0px));
  inset-inline-end: max(var(--margin-lg), var(--safe-area-inset-right, 0px));
  width: var(--minimum-touch-target);
  height: var(--minimum-touch-target);
  z-index: var(--layer-flat);
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: center;

  /* For the outline radius */
  border-radius: 50%;
}

/* Safe-area env() values are physical; in RTL the button sits by the left-side notch */
[dir='rtl'] .close-button {
  inset-inline-end: max(var(--margin-lg), var(--safe-area-inset-left, 0px));
}

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

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

  .close-button:focus-visible {
    outline: none;
    overflow: visible;
  }

  .close-button:focus-visible::after {
    content: '';
    position: absolute;
    inset: calc(-1 * var(--focus-outline-offset));
    border: var(--focus-outline-width) solid currentColor;
    border-radius: 50%;
    display: inherit;
  }
}

.dialog--closed .close-button {
  animation: elementSlideOutBottom calc(var(--animation-speed) * 0.5) var(--animation-easing) forwards;
}

.close-button:hover {
  background-color: transparent;
  opacity: 0.8;
}

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

/* Product media */
.product-media {
  display: flex;
  flex: 1;
}

.sticky-content {
  position: sticky;
  top: var(--sticky-header-offset, 0);
  z-index: var(--layer-flat);
}

@media screen and (min-width: 750px) {
  .sticky-content--desktop,
  .sticky-content--desktop.full-height--desktop > .group-block {
    position: sticky;
    top: var(--sticky-header-offset, 0);
    z-index: var(--layer-flat);
  }
}

/* Spacing style */
.spacing-style {
  --spacing-scale: var(--spacing-scale-md);

  @media screen and (min-width: 990px) {
    --spacing-scale: var(--spacing-scale-default);
  }

  /* Must disable this, when you use these with calc and another unit type, things break — see logo.liquid */
  /* stylelint-disable length-zero-no-unit */
  --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);

  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 */
.size-style {
  width: var(--size-style-width-mobile, var(--size-style-width));
  height: var(--size-style-height-mobile, var(--size-style-height));

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

/* Custom Typography style */
.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));
  }

  h2,
  h3,
  h4 {
    line-height: var(--line-height--heading, var(--line-height));
  }

  p {
    line-height: var(--line-height--body, var(--line-height));
  }
}

.custom-font-size,
.custom-font-size > * {
  font-size: var(--font-size);
}

.custom-font-weight,
.custom-font-weight > * {
  font-weight: var(--font-weight);
}

/* Border override style */
.border-style {
  border-width: var(--border-width);
  border-style: var(--border-style);
  border-color: var(--border-color);
  border-radius: var(--border-radius);
}

/* Gap scaling style */
.gap-style,
.layout-panel-flex {
  --gap-scale: var(--spacing-scale-md);

  @media screen and (min-width: 990px) {
    --gap-scale: var(--spacing-scale-default);
  }
}

.layout-panel-flex {
  display: flex;
  gap: var(--gap);
  height: 100%;
}

.shopify-block:has(> [shopify-block-empty]) {
  display: none;
}

.layout-panel-flex--row {
  flex-flow: row var(--flex-wrap);
  justify-content: var(--horizontal-alignment);
  align-items: var(--vertical-alignment);
}

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

@media screen and (max-width: 749px) {
  .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;

    > .menu {
      flex: 1 1 min-content;
    }

    > .text-block {
      flex: 1 1 var(--max-width--display-tight);
    }

    > .image-block {
      flex: 1 1 var(--size-style-width-mobile-min);
    }

    > .button {
      flex: 0 0 fit-content;
    }

    > .group-block--height-fill {
      height: calc(var(--section-min-height, auto) - var(--section-height-offset, 0px));
    }
  }
}

@media screen and (min-width: 750px) {
  .layout-panel-flex {
    flex-direction: var(--flex-direction);
  }
}

/* Form fields */
.field {
  position: relative;
  width: 100%;
  display: flex;
  transition: box-shadow var(--animation-speed) ease;
}

.field__input {
  flex-grow: 1;
  text-align: start;
  border-radius: var(--style-border-radius-inputs);
  transition: box-shadow var(--animation-speed) ease, background-color var(--animation-speed) ease;
  padding: var(--input-padding);
  box-shadow: var(--input-box-shadow);
  background-color: var(--color-input-background);
  color: var(--color-input-text);
  border: none;
  outline: none;
  font-size: var(--font-paragraph--size);

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

.field__input:focus {
  box-shadow: var(--input-box-shadow-focus);
}

.field__input--button-radius {
  border-radius: var(--style-border-radius-buttons-primary);
}

.field__input--button-padding {
  padding-inline: var(--padding-3xl);
}

.field__label {
  color: rgb(var(--color-input-text-rgb) / var(--opacity-80));
  font-size: var(--font-paragraph--size);
  inset-inline-start: var(--input-padding-x);
  top: 50%;
  transform: translateY(-50%);
  margin-bottom: 0;
  pointer-events: none;
  position: absolute;
  transition: top var(--animation-speed) ease, font-size var(--animation-speed) ease;
}

/* RTE styles */
.rte,
.shopify-policy__title {
  :is(h1, h2, h3, h4, h5, h6) {
    margin-block: clamp(1.5rem, 1em * 3.3, 2.5rem) var(--font-heading--spacing);
  }

  :first-child:is(p, h1, h2, h3, h4, h5, h6),
  :first-child:empty + :is(p, h1, h2, h3, h4, h5, h6) {
    margin-block-start: 0;
  }

  ul,
  ol {
    margin-block-start: 0;
    padding-inline-start: 1.5em;
  }

  /* Only apply margin-block-end to the higher level list, not nested lists */
  :is(ul, ol):not(:is(ul, ol) :is(ul, ol)) {
    margin-block-end: 1em;
  }

  blockquote {
    margin-inline: 1.5em 2.3em;
    margin-block: 3.8em;
    padding-inline-start: 0.8em;
    border-inline-start: 1.5px solid rgb(var(--color-foreground-rgb) / var(--opacity-25));
    font-style: italic;
    font-weight: 500;
  }

  .rte-table-wrapper {
    overflow-x: auto;
  }

  table {
    /* stylelint-disable-next-line declaration-no-important */
    width: 100% !important;
    border-collapse: collapse;
  }

  tr:not(:has(td)),
  thead {
    background-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
    font-weight: bold;
    text-transform: uppercase;
  }

  tr:has(td) {
    border-bottom: 1px solid rgb(var(--color-foreground-rgb) / var(--opacity-10));
  }

  th,
  td {
    text-align: start;
    padding-inline: var(--padding-md);
    padding-block: var(--padding-sm);
  }
}

.shopify-policy__container {
  padding-block: var(--padding-xl);
}

/* Radio buttons and checkboxes - shared base styles */
:where(input[type='radio']),
:where(input[type='checkbox']) {
  width: var(--checkbox-size);
  height: var(--checkbox-size);
  aspect-ratio: 1;
  margin: 0;
  margin-inline-end: var(--padding-3xs);
  padding: 0;
  border: var(--checkbox-border);
  appearance: none;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
}

/* Radio buttons */
input[type='radio'] {
  border-radius: var(--style-border-radius-50);
  background: transparent;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}

:where(input[type='radio']):checked {
  border-color: var(--color-foreground);
  background: var(--color-background);
}

:where(input[type='radio']):checked::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%; /* stylelint-disable-line csstools/use-logical -- centring pair with a physical translate(-50%) */
  transform: translate(-50%, -50%);
  width: calc(var(--checkbox-size) / 2);
  height: calc(var(--checkbox-size) / 2);
  background: var(--color-foreground);
  border-radius: var(--style-border-radius-50);
  transition: background 0.2s ease;
}

:where(input[type='radio']):disabled {
  border-color: var(--input-disabled-border-color);
  background-color: var(--input-disabled-background-color);
  cursor: not-allowed;
}

:where(input[type='radio']):disabled:checked::after {
  background: var(--input-disabled-background-color);
}

:where(input[type='radio']):not(:disabled):hover {
  border-color: rgb(var(--color-foreground-rgb) / var(--opacity-40-60));
  background-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
}

:where(input[type='radio']):not(:disabled):hover:checked {
  border-color: var(--color-foreground);
  background-color: var(--color-background);
}

:where(input[type='radio']):not(:disabled):hover:checked::after {
  background: rgb(var(--color-foreground-rgb) / var(--opacity-85));
}

/* Checkboxes */
:where(input[type='checkbox']) {
  border-radius: var(--checkbox-border-radius);
  background-color: var(--color-background);
  transition: border-color 0.2s ease, background-color 0.2s ease;
}

:where(input[type='checkbox']):checked {
  background-color: var(--color-foreground);
  border-color: var(--color-foreground);
}

:where(input[type='checkbox']):checked::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%; /* stylelint-disable-line csstools/use-logical -- centring pair with a physical translate(-50%) */
  transform: translate(-50%, -50%);
  width: var(--checkbox-size);
  height: var(--checkbox-size);
  background-color: var(--color-background);
  mask-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.75439 10.7485L7.68601 14.5888C7.79288 14.7288 7.84632 14.7988 7.91174 14.8242C7.96907 14.8466 8.03262 14.8469 8.09022 14.8253C8.15596 14.8007 8.21026 14.7314 8.31886 14.5927L15.2475 5.74658' stroke='black' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
}

:where(input[type='checkbox']):not(:disabled):hover {
  border-color: rgb(var(--color-foreground-rgb) / var(--opacity-40-60));
  background-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
}

:where(input[type='checkbox']):not(:disabled):hover:checked {
  border-color: var(--color-foreground);
  background-color: rgb(var(--color-foreground-rgb) / var(--opacity-85));
}

:where(input[type='checkbox']):disabled {
  background-color: var(--input-disabled-background-color);
  border-color: var(--input-disabled-border-color);
  cursor: not-allowed;
}

:where(input[type='checkbox']):disabled:checked::after {
  background-color: var(--input-disabled-text-color);
}

/* Shared styles for radio buttons and checkboxes */
:where(input[type='radio']) + label,
:where(input[type='checkbox']) + label {
  display: inline;
  vertical-align: middle;
  cursor: pointer;
}

:where(input[type='radio']):disabled + label,
:where(input[type='checkbox']):disabled + label {
  color: var(--input-disabled-text-color);
  cursor: not-allowed;
}

/* Animation declarations - to be kept at the bottom of the file for ease of find */
@keyframes grow {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.2);
  }

  100% {
    transform: scale(1);
  }
}

@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 slideInTopViewTransition {
  from {
    transform: translateY(100px);
  }
}

@keyframes elementSlideInTop {
  from {
    margin-top: var(--padding-sm);
    opacity: 0;
  }

  to {
    margin-top: 0;
    opacity: 1;
  }
}

@keyframes elementSlideOutTop {
  from {
    transform: translateY(0);
    opacity: 1;
  }

  to {
    transform: translateY(var(--padding-sm));
    opacity: 0;
  }
}

@keyframes elementSlideOutBottom {
  from {
    transform: translateY(0);
    opacity: 1;
  }

  to {
    transform: translateY(calc(-1 * var(--padding-sm)));
    opacity: 0;
  }
}

@keyframes thumbnailsSlideInTop {
  from {
    transform: translateY(calc(-50% + var(--margin-lg)));
    opacity: 0;
  }

  to {
    transform: translateY(-50%);
    opacity: 1;
  }
}

@keyframes thumbnailsSlideOutTop {
  from {
    transform: translateY(-50%);
    opacity: 1;
  }

  to {
    transform: translateY(calc(-50% + var(--margin-lg)));
    opacity: 0;
  }
}

@keyframes thumbnailsSlideInBottom {
  from {
    transform: translateY(100%);
    opacity: 0;
  }

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

@keyframes thumbnailsSlideOutBottom {
  from {
    transform: translateY(0);
    opacity: 1;
  }

  to {
    transform: translateY(100%);
    opacity: 0;
  }
}

@keyframes search-element-slide-in-bottom {
  0% {
    transform: translateY(20px);
    opacity: 0;
  }

  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes search-element-slide-out-bottom {
  0% {
    transform: translateY(0);
    opacity: 1;
  }

  100% {
    transform: translateY(20px);
    opacity: 0;
  }
}

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

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

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes modalSlideInTop {
  from {
    transform: translateY(var(--padding-sm));
    opacity: 0;
  }

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

@keyframes modalSlideOutTop {
  from {
    transform: translateY(0);
    opacity: 1;
  }

  to {
    transform: translateY(var(--padding-sm));
    opacity: 0;
  }
}

/* Slideshow Arrow Hover Animation - must stay in base.css for proper CSS cascade */

slideshow-container[animate-arrows]:hover > slideshow-arrows .slideshow-control,
slideshow-component:focus-within > slideshow-container[animate-arrows] > slideshow-arrows .slideshow-control {
  animation: arrowsSlideIn var(--animation-speed) var(--animation-easing) forwards;
}

@keyframes arrowsSlideIn {
  from {
    transform: translate(var(--padding-sm), 0);
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.section-resource-list,
.section-carousel {
  row-gap: var(--gap);
}

.section-resource-list__content {
  display: flex;
  flex-direction: column;
  align-items: var(--horizontal-alignment);
  gap: var(--gap);
  width: 100%;
}

.section-resource-list__header:is(:empty, :has(.group-block-content:empty)),
.section-resource-list__content:empty {
  display: none;
}

:where(.section-resource-list.section--full-width) product-card[data-product-transition] > .group-block,
:where(.section-carousel.section--full-width) product-card[data-product-transition] > .group-block {
  @media screen and (max-width: 749px) {
    padding-inline: max(var(--padding-xs), var(--padding-inline-start))
      max(var(--padding-xs), var(--padding-inline-end));
  }
}

/* Base styles */
.group-block,
.group-block-content {
  position: relative;
}

.group-block:has(> video-background-component) {
  overflow: hidden;
}

.group-block-content {
  height: 100%;
  width: 100%;
}

/* Container styles */
.section-content-wrapper.section-content-wrapper:where(.layout-panel-flex) .group-block--fill {
  flex: 1;
}

/* Flex behavior for width variants */
.layout-panel-flex--row > .group-block--width-fit {
  flex: 0;
}

.layout-panel-flex--row > .group-block--width-fill {
  flex: 1;
}

.layout-panel-flex--row > .group-block--width-custom {
  flex-basis: var(--size-style-width);
}

/* Dimension utilities - Height */
.group-block--height-fit {
  height: auto;
}

.group-block--height-custom,
.group-block--height-fill {
  height: var(--size-style-height);
}

/* Flex behavior for height variants */
.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);
}

/* Global scrollbar styles */

/* Webkit browsers */
::-webkit-scrollbar {
  width: 20px;
}

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

::-webkit-scrollbar-thumb {
  background-color: rgb(var(--color-foreground-rgb) / var(--opacity-40));
  border-radius: 20px;
  border: 6px solid transparent;
  background-clip: content-box;
  transition: background-color 0.2s;
}

::-webkit-scrollbar-thumb:hover {
  background-color: rgb(var(--color-foreground-rgb) / var(--opacity-60));
}

/* Prevent iOS zoom on input focus by ensuring minimum 16px font size on mobile */
@media screen and (max-width: 1200px) {
  input,
  textarea,
  select,
  /* Higher specificity to override type preset classes like .paragraph, .h1, etc. */
  .paragraph.paragraph input,
  .paragraph.paragraph textarea,
  .paragraph.paragraph select,
  .h1.h1 input,
  .h1.h1 textarea,
  .h1.h1 select,
  .h2.h2 input,
  .h2.h2 textarea,
  .h2.h2 select,
  .h3.h3 input,
  .h3.h3 textarea,
  .h3.h3 select,
  .h4.h4 input,
  .h4.h4 textarea,
  .h4.h4 select,
  .h5.h5 input,
  .h5.h5 textarea,
  .h5.h5 select,
  .h6.h6 input,
  .h6.h6 textarea,
  .h6.h6 select {
    font-size: max(1rem, 100%);
  }
}

/* When the header is transparent, and when there is no header-section below it, offset the first main-section with
 * the height of the header
 */
main > .shopify-section:first-child .section:not(.disable-section-top-offset) {
  &.spacing-style,
  .spacing-style {
    --section-top-offset: calc(var(--header-height) * var(--transparent-header-offset-boolean));

    /* Any nested sections should not be offset */
    .spacing-style {
      --section-top-offset: 0px;
    }
  }

  /* Make sticky content immediately stick to the top of the page */
  .sticky-content {
    margin-top: calc(var(--header-height) * var(--transparent-header-offset-boolean) * -1);
  }
}
/* MIA MORITZ EDITORIAL POLICY PAGES */

.mm-policy {
  max-width: 980px;
  margin: 0 auto;
  padding: 24px 12px 60px;
}

.mm-policy * {
  box-sizing: border-box;
}

.mm-policy p,
.mm-policy li {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 1.9;
  color: #4a4a4a;
}

.mm-policy h1,
.mm-policy h2,
.mm-policy h3 {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
}

.mm-policy h1 {
  font-size: clamp(42px, 6vw, 68px);
  line-height: 1.05;
  text-align: center;
  margin: 0 0 18px;
  color: #3f3535;
}

.mm-policy h2 {
  font-size: 29px;
  line-height: 1.2;
  text-align: center;
  margin: 58px 0 24px;
  color: #3f3535;
}

.mm-policy h3 {
  font-size: 20px;
  line-height: 1.4;
  font-style: italic;
  color: #76545c;
  margin: 30px 0 10px;
}

.mm-policy a {
  color: #a96573;
  text-decoration: none;
  border-bottom: 1px solid #d8adb6;
}

.mm-policy a:hover {
  color: #7f4f59;
  border-bottom-color: #7f4f59;
}

.mm-policy strong {
  font-weight: 600;
  letter-spacing: 0.04em;
}

.mm-policy ul {
  padding-left: 24px;
  margin: 12px 0 24px;
}

.mm-policy li {
  margin-bottom: 8px;
}

.mm-policy hr {
  border: 0;
  border-top: 1px solid #d8b7be;
  margin: 50px auto;
  width: 74%;
}

.mm-policy-eyebrow {
  text-align: center;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: #9b6671;
  margin-bottom: 15px;
}

.mm-policy-intro {
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}

.mm-policy-intro p {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
  line-height: 1.7;
  letter-spacing: 0;
  color: #655759;
}

.mm-policy-divider {
  width: 72px;
  height: 1px;
  background: #c79ba4;
  margin: 28px auto 0;
}

.mm-policy-content {
  max-width: 820px;
  margin: 0 auto;
}

.mm-policy-box {
  background: #f7edef;
  border: 1px solid #e0c6cc;
  padding: 28px 32px;
  margin: 32px 0;
}

.mm-policy-box h3 {
  margin-top: 0;
}

.mm-policy-box p:last-child {
  margin-bottom: 0;
}

.mm-policy-note {
  border-left: 2px solid #b77a87;
  padding: 20px 24px;
  background: #faf7f7;
  margin: 30px 0;
}

.mm-policy-note p:last-child {
  margin-bottom: 0;
}

.mm-rate-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin: 30px 0;
}

.mm-rate-card {
  border: 1px solid #dfc2c8;
  background: #f9f1f3;
  padding: 30px 24px;
  text-align: center;
}

.mm-rate-card .price {
  display: block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
  font-style: italic;
  color: #76545c;
  margin-bottom: 10px;
}

.mm-rate-card .description {
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 10px;
  line-height: 1.7;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #5d5556;
}

.mm-contact-box {
  max-width: 620px;
  margin: 34px auto;
  padding: 28px;
  text-align: center;
  border-top: 1px solid #d8b7be;
  border-bottom: 1px solid #d8b7be;
}

.mm-contact-box h3 {
  margin-top: 0;
  text-align: center;
}

.mm-contact-box p {
  margin: 7px 0;
}

.mm-subject {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  font-style: italic;
  letter-spacing: 0 !important;
  color: #8d626a !important;
}

.mm-policy-closing {
  margin: 58px auto 0;
  text-align: center;
  max-width: 720px;
}

.mm-policy-closing p {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
  line-height: 1.7;
  letter-spacing: 0;
  color: #76545c;
}

@media (max-width: 749px) {

  .mm-policy {
    padding: 14px 6px 45px;
  }

  .mm-policy h1 {
    font-size: 42px;
  }

  .mm-policy h2 {
    font-size: 25px;
    margin-top: 46px;
  }

  .mm-policy h3 {
    font-size: 19px;
  }

  .mm-policy p,
  .mm-policy li {
    font-size: 13px;
    letter-spacing: 0.055em;
    line-height: 1.8;
  }

  .mm-policy-intro p {
    font-size: 17px;
  }

  .mm-policy-box {
    padding: 24px 20px;
  }

  .mm-rate-grid {
    grid-template-columns: 1fr;
  }

  .mm-policy hr {
    width: 90%;
  }

}/* POLICY PAGE WIDTH FIX */
.shopify-policy__container {
  max-width: 1200px !important;
  width: calc(100% - 48px) !important;
}

.shopify-policy__body {
  width: 100%;
}

}/* MIA MORITZ - SINGLE COLUMN SHOP NOW DROPDOWN */

@media (min-width: 750px) {
.header-menu .menu-list__list-item.mm-pinned-open>.menu-list__submenu{
--submenu-content-opacity:1!important;
visibility:visible!important
}/* MIA MORITZ EDITORIAL POLICY STYLING */

.shopify-policy__container{
  max-width:1200px!important;
  width:calc(100% - 48px)!important;
  margin:0 auto;
  padding:35px 20px 70px;
}

.shopify-policy__title{
  max-width:900px;
  margin:0 auto 35px;
  text-align:center;
}

.shopify-policy__title h1{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(42px,6vw,68px);
  font-weight:400;
  line-height:1.05;
  letter-spacing:.01em;
  color:#3f3535;
}

.shopify-policy__body{
  max-width:980px;
  margin:0 auto;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:14px;
  line-height:1.9;
  letter-spacing:.06em;
  color:#4a4a4a;
}

.shopify-policy__body h2,
.shopify-policy__body h3,
.shopify-policy__body h4{
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400;
  color:#3f3535;
}

.shopify-policy__body h2{
  font-size:29px;
  text-align:center;
  margin:58px 0 24px;
}

.shopify-policy__body h3{
  font-size:20px;
  font-style:italic;
  color:#76545c;
  margin:30px 0 12px;
}

.shopify-policy__body a{
  color:#a96573;
  text-decoration:none;
  border-bottom:1px solid #d8adb6;
}

.shopify-policy__body a:hover{
  color:#7f4f59;
  border-bottom-color:#7f4f59;
}

.shopify-policy__body strong{
  font-weight:600;
  letter-spacing:.04em;
}

.shopify-policy__body ul,
.shopify-policy__body ol{
  padding-left:24px;
  margin:14px 0 24px;
}

.shopify-policy__body li{
  margin-bottom:8px;
}

.shopify-policy__body hr{
  border:0;
  border-top:1px solid #d8b7be;
  width:74%;
  margin:50px auto;
}

@media(max-width:749px){
  .shopify-policy__container{
    width:calc(100% - 24px)!important;
    padding:24px 12px 50px;
  }

  .shopify-policy__title h1{
    font-size:42px;
  }

  .shopify-policy__body{
    font-size:13px;
    line-height:1.8;
    letter-spacing:.05em;
  }

  .shopify-policy__body h2{
    font-size:25px;
    margin-top:46px;
  }

  .shopify-policy__body h3{
    font-size:19px;
  }
}/* MIA MORITZ — CART DRAWER RECOMMENDATIONS */

.mm-cart-recommendations {
  display: block;
  padding: 24px 42px 26px;
  margin: 0;
  border-top: 1px solid rgba(63, 53, 53, 0.14);
}

.mm-cart-recommendations__header {
  margin-bottom: 15px;
}

.mm-cart-recommendations__header span {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: #76545c;
}

.mm-cart-recommendations__products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.mm-cart-rec-card {
  display: block;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.mm-cart-rec-card img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  margin-bottom: 10px;
}

.mm-cart-rec-card__info {
  min-width: 0;
}

.mm-cart-rec-card__title {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 13px;
  line-height: 1.3;
  color: #3f3535;
  margin-bottom: 5px;
}

.mm-cart-rec-card__price {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 11px;
  letter-spacing: 0.04em;
  color: #6f6465;
  margin-bottom: 7px;
}

.mm-cart-rec-card__shop {
  display: inline-block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.16em;
  color: #9b6671;
  border-bottom: 1px solid #c99ba5;
  padding-bottom: 2px;
}

.mm-cart-rec-card:hover .mm-cart-rec-card__shop {
  color: #6f5057;
  border-bottom-color: #6f5057;

/* MIA MORITZ — SMALLER CART NOTE BOX */

.cart-drawer__summary .cart-note textarea {
  min-height: 90px !important;
  height: 90px !important;
  resize: vertical;
}/* MIA MORITZ — COMPACT CART GIFT MESSAGE */

#cart-drawer textarea,
cart-drawer-component textarea,
.theme-drawer__dialog textarea {
  height: 78px !important;
  min-height: 78px !important;
  max-height: 78px !important;
  block-size: 78px !important;
  min-block-size: 78px !important;
  padding: 12px 14px !important;
  resize: none !important;
}/* MIA MORITZ — CART ACTIONS EDITORIAL DETAILS */

.mm-gift-card-note {
  padding: 18px 0 6px;
}

.mm-gift-card-note__eyebrow {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .18em;
  color: #9b6671;
  margin-bottom: 6px;
}
.cart-discount__label,
.cart-note__label {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 600 !important;
  font-size: 18px !important;
  letter-spacing: 0 !important;
  color: #3f3535 !important;
}/* MIA MORITZ — EDITORIAL CART TOTAL */

.mm-cart-total {
  align-items: flex-end !important;
  gap: 20px;
}

.mm-cart-total .cart-totals__total-label {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  color: #3f3535 !important;
}

.mm-cart-total__original {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  color: #8f8586;
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}

.mm-cart-total__current {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 26px !important;
  font-weight: 600 !important;
  line-height: 1.1 !important;
  color: #3f3535 !important;
}

.mm-cart-gift-card-note {
  margin: 7px 0 12px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 13px;
  line-height: 1.5;
  font-style: italic;
  color: #8d626a;
}
/* MIA MORITZ — COMPACT CART RECOMMENDATIONS */

.mm-cart-recommendations {
  padding: 20px 48px 22px !important;
}

.mm-cart-recommendations__header {
  margin-bottom: 12px !important;
}

.mm-cart-recommendations__products {
  gap: 16px !important;
}

.mm-cart-rec-card img {
  width: 100% !important;
  height: 185px !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
  object-position: center !important;
  margin-bottom: 8px !important;
}

.mm-cart-rec-card__title {
  font-size: 12px !important;
  line-height: 1.25 !important;
}

.mm-cart-rec-card__price {
  font-size: 10px !important;
  margin-bottom: 5px !important;
}

.mm-cart-rec-card__shop {
  font-size: 9px !important;
}/* MIA MORITZ — CART TOTAL */

.mm-cart-total {
  align-items: flex-start !important;
}

.mm-cart-total .cart-totals__total-label {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  color: #3f3535 !important;
}

.mm-cart-total__current {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  line-height: 1.05 !important;
  color: #3f3535 !important;
}

.mm-cart-gift-card-note {
  margin: 8px 0 14px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 13px;
  font-style: italic;
  line-height: 1.45;
  color: #8d626a;

/* Stronger dusty rose recommendation heading */
.mm-cart-recommendations__header span {
  color: #8d626a !important;
}

/* Stronger accordion titles */
.cart-discount__label,
.cart-note__label {
  font-weight: 600 !important;
  color: #3f3535 !important;
}

/* Total / checkout area */
.cart-totals__container {
  background: #faf6f2;
  padding: 24px !important;
  border-top: 1px solid #d8b7be;
}

/* Keep informational text softer */
.cart-totals__installments,
.cart-totals__tax-note {
  color: #6f6264 !important;
}
/* MIA MORITZ — CLEAN CART TOTAL */

.mm-cart-total {
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 20px !important;
}

.mm-cart-total .cart-totals__total-label {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 21px !important;
  font-weight: 600 !important;
  color: #3f3535 !important;
}

.mm-cart-total__current {
  display: inline-block !important;
  margin-left: auto !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  color: #3f3535 !important;
}
.mm-cart-gift-card-note em {
  font-family: Georgia, "Times New Roman", serif !important;
  font-style: italic !important;
  font-weight: 400 !important;
  color: #8d626a !important;
}
/* =========================================================
   MIA MORITZ — FINAL EDITORIAL CART DRAWER
   ========================================================= */


/* ---------- MAIN DRAWER ---------- */

.theme-drawer__dialog.color-custom-drawer {
  background: #f6e7ea !important;
  color: #3f3535 !important;
}


/* ---------- CART HEADER ---------- */

.theme-drawer__header {
  background: #f6e7ea;
  border-bottom: 1px solid rgba(117, 84, 92, 0.16);
}

.theme-drawer__title {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 400 !important;
  color: #332d2d !important;
}


/* ---------- PRODUCTS IN CART ---------- */

.cart-drawer__items {
  background: #f6e7ea;
}

.cart-drawer__items a,
.cart-drawer__items p,
.cart-drawer__items span {
  color: #403637;
}


/* ---------- YOU MAY ALSO LOVE ---------- */

.mm-cart-recommendations {
  background: #fbf6f1 !important;
  padding: 22px 48px 24px !important;
  border-top: 1px solid #d9bec4 !important;
  border-bottom: 1px solid #d9bec4 !important;
}

.mm-cart-recommendations__header {
  margin-bottom: 14px !important;
}

.mm-cart-recommendations__header span {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  color: #966572 !important;
}

.mm-cart-rec-card__title {
  font-family: Georgia, "Times New Roman", serif !important;
  color: #3f3535 !important;
}

.mm-cart-rec-card__price {
  color: #75696b !important;
}

.mm-cart-rec-card__shop {
  color: #9b6671 !important;
  border-bottom-color: #c99ba5 !important;
}


/* ---------- DISCOUNT + GIFT MESSAGE ---------- */

.cart-actions__divider {
  background: rgba(117, 84, 92, .17) !important;
}

.cart-discount__summary,
.cart-note__summary {
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}

.cart-discount__label,
.cart-note__label {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #403536 !important;
}

.cart-discount__summary .cart-totals__icon,
.cart-note__summary .cart-totals__icon {
  color: #76545c !important;
}


/* Inputs when accordions open */

.cart-discount__input,
.cart-note__instructions {
  background: #fffaf8 !important;
  border: 1px solid #d0aeb6 !important;
  border-radius: 0 !important;
  color: #403536 !important;
}

.cart-discount__input:focus,
.cart-note__instructions:focus {
  border-color: #9b6671 !important;
  box-shadow: none !important;
}


/* ---------- TOTAL / CHECKOUT AREA ---------- */

.cart-totals__container {
  background: #faf6f1 !important;
  padding: 26px 28px 24px !important;
  border-top: 1px solid #d7b7be !important;
}


/* Bigger editorial total */

.mm-cart-total {
  padding-top: 2px !important;
  margin-bottom: 0 !important;
}

.mm-cart-total .cart-totals__total-label {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  color: #352f2f !important;
}

.mm-cart-total__current {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 30px !important;
  font-weight: 600 !important;
  color: #352f2f !important;
}


/* Gift card note */

.mm-cart-gift-card-note {
  margin: 7px 0 16px !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  color: #966572 !important;
}

.mm-cart-gift-card-note em {
  font-family: Georgia, "Times New Roman", serif !important;
  font-style: italic !important;
  font-weight: 400 !important;
}


/* Installments + tax/shipping */

.cart-totals__installments {
  font-size: 12px !important;
  color: #625859 !important;
  margin-top: 10px !important;
}

.cart-totals__tax-note {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 12px !important;
  color: #75696b !important;
}


/* ---------- CHECKOUT BUTTON AREA ---------- */

.cart__ctas {
  background: #faf6f1 !important;
  padding-left: 28px !important;
  padding-right: 28px !important;
  padding-bottom: 26px !important;
}


/* Standard checkout button */

.cart__ctas > .button,
.cart__ctas button[type="submit"] {
  border-radius: 999px !important;
  border: 1px solid #252222 !important;
  background: #252222 !important;
  color: #ffffff !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  min-height: 54px !important;
}


/* ---------- MOBILE ---------- */

@media (max-width: 749px) {

  .mm-cart-recommendations {
    padding: 20px 24px 22px !important;
  }

  .cart-actions {
    padding-inline: 22px !important;
  }

  .cart-totals__container,
  .cart__ctas {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .mm-cart-total .cart-totals__total-label {
    font-size: 20px !important;
  }

  .mm-cart-total__current {
    font-size: 27px !important;
  }
}
/* MIA MORITZ — CART DRAWER COLOR OVERRIDES */

/* Main cart drawer */
#cart-drawer,
#cart-drawer .theme-drawer__dialog,
#cart-drawer .cart-drawer__content {
  background: #f6e7ea !important;
}

/* YOU MAY ALSO LOVE */
#cart-drawer .mm-cart-recommendations {
  background: #fbf5ef !important;
  border-top: 1px solid #d5adb6 !important;
  border-bottom: 1px solid #d5adb6 !important;
}

/* Give the accordion area breathing room */
#cart-drawer .cart-actions {
  padding: 6px 28px !important;
}

/* Total / payment area */
#cart-drawer .cart-totals__container {
  background: #faf4ee !important;
  padding: 26px 28px !important;
}

/* Discount + gift headings */
#cart-drawer .cart-discount__label,
#cart-drawer .cart-note__label {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 600 !important;
  color: #3f3535 !important;
}

/* Total */
#cart-drawer .mm-cart-total .cart-totals__total-label {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 22px !important;
  font-weight: 600 !important;
}

#cart-drawer .mm-cart-total__current {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 30px !important;
  font-weight: 600 !important;
}

/* Gift card note */
#cart-drawer .mm-cart-gift-card-note,
#cart-drawer .mm-cart-gift-card-note em {
  color: #9b6671 !important;
}

/* Checkout area */
#cart-drawer .cart__ctas {
  background: #faf4ee !important;
}
/* MIA MORITZ — EDITORIAL TOTAL PANEL */

#cart-drawer .mm-cart-checkout-panel {
  background: #faf4ee !important;
  padding: 26px 28px 22px !important;
  border-top: 1px solid #d5adb6 !important;
}

#cart-drawer .cart__ctas {
  background: #faf4ee !important;
  padding-left: 28px !important;
  padding-right: 28px !important;
  padding-bottom: 28px !important;
}
/* =====================================================
   MIA MORITZ — FINAL CART EDITORIAL LAYOUT
   ===================================================== */
}

#cart-drawer .cart-discount__summary,
#cart-drawer .cart-note__summary {
  padding: 19px 0 !important;
}

#cart-drawer .cart-discount__label,
#cart-drawer .cart-note__label {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #3f3535 !important;
}


/* ESTIMATED TOTAL — SEPARATE IVORY PANEL */
#cart-drawer .mm-cart-checkout-panel {
  background: #faf5ee !important;
  padding: 28px 28px 24px !important;
  margin: 0 0 18px !important;
  border-top: 1px solid #d5adb6 !important;
  border-bottom: 1px solid #d5adb6 !important;
}


/* LARGE EDITORIAL TOTAL */
#cart-drawer .mm-cart-total {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  gap: 24px !important;
}

#cart-drawer .mm-cart-total .cart-totals__total-label {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 29px !important;
  line-height: 1.05 !important;
  font-weight: 400 !important;
  color: #352f2f !important;
}

#cart-drawer .mm-cart-total__current {
  margin-left: auto !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 28px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  color: #352f2f !important;
}


/* GIFT CARD NOTE */
#cart-drawer .mm-cart-gift-card-note {
  margin: 11px 0 0 !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  color: #966572 !important;
}

#cart-drawer .mm-cart-gift-card-note em {
  font-family: Georgia, "Times New Roman", serif !important;
  font-style: italic !important;
  font-weight: 400 !important;
}


/* SHOP INSTALLMENTS + TAX INFO STAY OUTSIDE TOTAL PANEL */
#cart-drawer .cart-totals__installments {
  margin: 0 28px 8px !important;
  font-size: 12px !important;
  color: #544b4d !important;
}

#cart-drawer .cart-totals__tax-note {
  margin: 0 28px 20px !important;
  font-size: 12px !important;
  color: #716466 !important;
}


/* CHECKOUT AREA RETURNS TO MAIN BLUSH */
#cart-drawer .cart__ctas {
  background: transparent !important;
  padding-left: 28px !important;
  padding-right: 28px !important;
  padding-bottom: 28px !important;
}
/* CART ACTIONS — CLEAN EDITORIAL */

#cart-drawer .cart-actions {
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

#cart-drawer .cart-discount__label,
#cart-drawer .cart-note__label {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #352f2f !important;
}
/* MIA MORITZ — EDITORIAL CHECKOUT BUTTON */

#cart-drawer #checkout,
#cart-drawer .cart__checkout-button {
  width: 100% !important;
  min-height: 60px !important;

  background: #000000 !important;
  color: #ffffff !important;

  border: 1px solid #000000 !important;
  border-radius: 0 !important;

  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;

  padding: 18px 24px !important;
  margin-top: 14px !important;

  box-shadow: none !important;
}

#cart-drawer #checkout:hover,
#cart-drawer .cart__checkout-button:hover {
  background: #222222 !important;
  border-color: #222222 !important;
  color: #ffffff !important;
}/* MIA MORITZ — CART PRODUCT IMAGE */

}/* =====================================================
   MIA MORITZ — FINAL CART PRODUCT ROW
   ===================================================== */

/* 2. SMALLER DISCOUNT CODE / DISCOUNT TEXT */
#cart-drawer .cart-discounts,
#cart-drawer .cart-discounts__item,
#cart-drawer .cart-discounts__label,
#cart-drawer .cart-discount__pill,
#cart-drawer .cart-discount__pill-code {
  font-size: 11px !important;
  line-height: 1.3 !important;
  letter-spacing: .04em !important;
}

/* 3. CLEAN QUANTITY — REMOVE WHITE BOX */
#cart-drawer quantity-selector,
#cart-drawer .quantity-selector,
#cart-drawer .cart-items__quantity-controls quantity-selector {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  width: auto !important;
  min-width: 0 !important;
}

#cart-drawer quantity-selector button,
#cart-drawer quantity-selector input,
#cart-drawer .quantity-selector button,
#cart-drawer .quantity-selector input {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

#cart-drawer quantity-selector input,
#cart-drawer .quantity-selector input {
  width: 34px !important;
  min-width: 34px !important;
  padding: 0 !important;
  text-align: center !important;
}

#cart-drawer quantity-selector button,
#cart-drawer .quantity-selector button {
  width: 28px !important;
  min-width: 28px !important;
  padding: 0 !important;
}


/* 4. QUANTITY + REMOVE STACKED LIKE REFERENCE */
#cart-drawer .cart-items__quantity-controls {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 7px !important;
}


/* Smaller Remove underneath quantity */
#cart-drawer .mm-cart-item-actions {
  display: block !important;
  margin: 0 !important;
}

#cart-drawer .cart-items__remove {
  display: inline-block !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: 400 !important;
  letter-spacing: .02em !important;
  text-transform: none !important;
  color: #74696b !important;
}

#cart-drawer .cart-items__details {
  padding-left: 18px !important;
  min-width: 0 !important;
}
/* MIA MORITZ — CART PRODUCT FINAL TWEAKS */

/* Bring Remove closer to quantity */
#cart-drawer .cart-items__quantity-controls {
  gap: 2px !important;
}

#cart-drawer .mm-cart-item-actions {
  margin-top: 0 !important;
}

#cart-drawer .cart-items__remove {
  font-size: 10px !important;
  line-height: 1.1 !important;
  margin-top: 2px !important;
}

/* Make applied discount code smaller */
#cart-drawer .cart-discounts__label,
#cart-drawer .cart-discounts__item {
  font-size: 10px !important;
  line-height: 1.2 !important;
  letter-spacing: .03em !important;
}

/* CART IMAGE — WHITE POLAROID FRAME */
#cart-drawer .cart-items__media,
#cart-drawer .cart-items__media-container{
  width:145px!important;
  min-width:145px!important;
  max-width:145px!important;
}

#cart-drawer .cart-items__media-container{
  aspect-ratio:.8!important;
  background-color:#fff!important;
  padding:9px 9px 14px!important;
  border:1px solid #e4dddd!important;
  box-shadow:0 3px 8px rgba(0,0,0,.05)!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

#cart-drawer .cart-items__media-image{
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
  border:0!important;
  box-sizing:border-box!important;
}

/* More breathing room below cart item before recommendations */
#cart-drawer .cart-items__table-row {
  padding-bottom: 28px !important;
  margin-bottom: 24px !important;
}

/* Extra space above YOU MAY ALSO LOVE */
#cart-drawer .mm-cart-recommendations {
  margin-top: 18px !important;
  padding-top: 28px !important;
}
/* Smaller line-item discount code */
#cart-drawer .cart-items__variants-wrapper ul.list-unstyled,
#cart-drawer .cart-items__variants-wrapper ul.list-unstyled li,
#cart-drawer .cart-items__variants-wrapper ul.list-unstyled bdi {
  font-size: 10px !important;
  line-height: 1.25 !important;
  letter-spacing: .04em !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}
/* CART LINE DISCOUNT SPACING */
#cart-drawer .cart-items__variants-wrapper ul.list-unstyled {
  margin-top: 8px !important;
  margin-bottom: 8px !important;
}

#cart-drawer .cart-items__variants-wrapper ul.list-unstyled li {
  font-size: 10px !important;
  line-height: 1.2 !important;
}

/* CART PRICE ORDER */
#cart-drawer .cart-items__product-info .price {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

#cart-drawer .cart-items__product-info .price s,
#cart-drawer .cart-items__product-info .compare-at-price {
  order: 1 !important;
}

#cart-drawer .cart-items__product-info .price:not(s),
#cart-drawer .cart-items__product-info .price__current,
#cart-drawer .cart-items__product-info .price-item--sale {
  order: 2 !important;
}
/* MIA MORITZ — SMALLER CART QUANTITY */

#cart-drawer .cart-items__quantity .quantity-selector {
  font-size: 14px !important;
}

#cart-drawer .cart-items__quantity .quantity-selector button {
  width: 24px !important;
  min-width: 24px !important;
  height: 28px !important;
  min-height: 28px !important;
  padding: 0 !important;
}

#cart-drawer .cart-items__quantity .quantity-selector input {
  width: 28px !important;
  min-width: 28px !important;
  height: 28px !important;
  font-size: 14px !important;
  padding: 0 !important;
}
/* MIA MORITZ — FREE SHIPPING PROGRESS */

#cart-drawer .mm-free-shipping {
  padding: 4px 28px 24px;
}

#cart-drawer .mm-free-shipping__text {
  margin: 0 0 10px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #76545c;
}

#cart-drawer .mm-free-shipping__text strong {
  font-weight: 700;
}

#cart-drawer .mm-free-shipping__track {
  width: 100%;
  height: 3px;
  background: #ead4d8;
  overflow: hidden;
}

#cart-drawer .mm-free-shipping__progress {
  height: 100%;
  background: #9b6671;
  transition: width .35s ease;
}

#cart-drawer .mm-free-shipping__text--unlocked {
  color: #76545c;
}
.swatch{border:1px solid rgba(255,255,255,.45)!important}
.product-card .price {
  font-size: 16px !important;
}
/* MIA MORITZ — CENTERED EDITORIAL HEADER */
@media screen and (min-width: 750px) {

  .header__row--top {
    position: relative !important;
    height: 105px !important;
    min-height: 105px !important;
    overflow: visible !important;
  }

  .header__row--bottom {
    position: relative !important;
    height: 42px !important;
    min-height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 22px !important;
  }

  .header__row--bottom .header__column--left,
  .header__row--bottom .header__column--center,
  .header__row--bottom .header__column--right {
    width: auto !important;
    flex: 0 0 auto !important;
    gap: 22px !important;
  }

  .header__row--bottom header-menu,
  .header__row--bottom nav {
    width: auto !important;
    margin: 0 !important;
  }

  header-menu::part(list) {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    gap: 22px !important;
  }

  /* Move account/cart down beside search */
  .header__row--top header-actions {
    position: absolute !important;
    left: calc(50% + 170px) !important;
    bottom: -42px !important;
    z-index: 10 !important;
    margin: 0 !important;
  }

  .header__row--bottom .search-action {
    margin-left: 20px !important;
    position: relative !important;
  }

  /* Vertical divider before SEARCH */
  .header__row--bottom .search-action::before {
    content: "|" !important;
    position: absolute !important;
    left: -22px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
  }

  .menu-list__link-title,
  .header-actions__text-style,
  .search-action {
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }
}

/* MIA MORITZ — WHITE HEADER */
#header-component{
  --color-background-top-row:#fff!important;
  --color-background-bottom-row:#fff!important;
}

#header-component .header__underlay-closed{
  background:#fff!important;
}

#header-component .header__underlay-open{
  background:linear-gradient(
    #fff 0 var(--header-height),
    #fff var(--header-height) 100%
  )!important;
}

.main-collection-grid__title,
.main-collection-grid__title * {
  text-transform: uppercase !important;
}

#cart-drawer .mm-cart-recommendation-card__view{
  display:inline-block;
  margin-top:10px;
  color:#9b6671;
  font-size:10px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  border-bottom:1px solid #9b6671;
  padding-bottom:2px;
}
/* MIA MORITZ — CART RECOMMENDATIONS FINAL LAYOUT */

#cart-drawer .mm-cart-recommendations {
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 28px 28px 32px !important;
  border-top: 1px solid #d8adb6 !important;
  border-bottom: 1px solid #d8adb6 !important;
}

#cart-drawer .mm-cart-recommendations__heading {
  margin: 0 0 18px !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: #76545c !important;
}

#cart-drawer [data-recommendations-list] {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
}

#cart-drawer .mm-cart-recommendation-card {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  color: inherit !important;
  text-decoration: none !important;
}

#cart-drawer .mm-cart-recommendation-card__image {
  width: 100% !important;
  aspect-ratio: 4 / 5 !important;
  overflow: hidden !important;
  margin-bottom: 10px !important;
  background: #fff !important;
}

#cart-drawer .mm-cart-recommendation-card__image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

#cart-drawer .mm-cart-recommendation-card__info {
  width: 100% !important;
}

#cart-drawer .mm-cart-recommendation-card__title {
  margin: 0 0 5px !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  color: #332b2b !important;
}

#cart-drawer .mm-cart-recommendation-card__price {
  margin: 0 !important;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  color: #6f6262 !important;
}
/* MIA MORITZ — WHITE CART ITEM CARDS */
#cart-drawer .cart-items__table-row{
  background:#fff!important;
  border:1px solid #e5dada!important;
  padding:18px!important;
  margin:0 18px 22px!important;
  box-shadow:0 3px 10px rgba(0,0,0,.04)!important;
  box-sizing:border-box!important;
}

#cart-drawer .cart-items__media-container{
  background-color:#fff!important;
  border:0!important;
}

#cart-drawer .cart-items__media-image{
  border:0!important;
}

/* MIA MORITZ — FINAL WHITE HEADER + DROPDOWN */
#header-component,
#header-component .header,
#header-component .header__row--top,
#header-component .header__row--bottom,
#header-component .header__underlay-open,
#header-component .header__underlay-closed{
  background:#fff!important;
}

header-menu .menu-list__submenu,
header-menu .menu-list__submenu-inner,
header-menu .mega-menu,
header-menu .mega-menu__grid{
  background:#fff!important;
}

header-menu .menu-list__submenu{
  border-bottom:0!important;
  box-shadow:none!important;
}

/* MORE SPACE UNDER HEADER LOGO */
#header-component .header-logo,
#header-component .header__heading,
#header-component .header__heading-link{
  margin-bottom:24px!important;
}
@media (max-width: 749px) {
  footer .footer__menu,
  footer .footer-block__details-content,
  footer .list-menu {
    text-align:center!important;
  }

  footer .footer__menu li,
  footer .footer-block__details-content li,
  footer .list-menu li {
    text-align:center!important;
  }

  footer .footer__menu a,
  footer .footer-block__details-content a,
  footer .list-menu a {
    display:block!important;
    width:100%!important;
    text-align:center!important;
  }
}
/* MIA MORITZ — CLEAN MOBILE CART IMAGE */
.mm-cart-mobile-image {
  display: none;
}

@media screen and (max-width: 749px) {

  /* Completely remove old desktop cart image */
  #cart-drawer a.cart-items__media-container.mm-cart-desktop-image {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
  }

  /* Use clean mobile image instead */
  #cart-drawer a.mm-cart-mobile-image {
    display: block !important;
    width: 112px !important;
    min-width: 112px !important;
    max-width: 112px !important;
    padding: 7px !important;
    margin: 0 !important;
    background: #fff !important;
    border: 1px solid #e4dddd !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
  }

  #cart-drawer a.mm-cart-mobile-image img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    opacity: 1 !important;
    visibility: visible !important;
    position: static !important;
    transform: none !important;
    object-fit: contain !important;
  }
}
/* MIA MORITZ — CLEAN CART PRODUCT IMAGE */
#cart-drawer .mm-cart-clean-image {
  display: block !important;
  width: 145px !important;
  min-width: 145px !important;
  max-width: 145px !important;
  padding: 9px 9px 14px !important;
  margin: 0 !important;
  background: #fff !important;
  border: 1px solid #e4dddd !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

#cart-drawer .mm-cart-clean-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: static !important;
  transform: none !important;
  object-fit: contain !important;
}

@media screen and (max-width: 749px) {
  #cart-drawer .mm-cart-clean-image {
    width: 112px !important;
    min-width: 112px !important;
    max-width: 112px !important;
    padding: 7px 7px 10px !important;
  }
}

