/** Shopify CDN: Minification failed

Line 1482:2 Expected identifier but found "*"
Line 25678:24 Unexpected "{"
Line 25678:25 Expected identifier but found "%"
Line 25680:39 Unexpected "{"
Line 25680:40 Expected identifier but found "%"

**/
:root {
  --line-height-body: 1.71em;
  --line-height-heading-display: 1.25em;
  --line-height-heading-small: 1.35em;
  --line-height-heading: 1.3em;
  --line-height-heading-2: 1.3em;
  --line-height-overline: 1.8em;
  --line-height-quote: 1.42em;
  --line-height-quote-small: 1.3em;

  --spacing-unit: 4px;

  --spacing-none: 0px;
  --spacing-extra-small: var(--spacing-unit);
  --spacing-small: calc(var(--spacing-unit) * 3);
  --spacing-medium: calc(var(--spacing-unit) * 5);
  --spacing-large: calc(var(--spacing-unit) * 7);
  --spacing-extra-large: calc(var(--spacing-unit) * 10);
  --spacing-extra-extra-large: calc(var(--spacing-unit) * 20);

  --ease: ease-in-out;
  --cubic: cubic-bezier(0.32, 0.24, 0.15, 1);
  --cubic-quad: cubic-bezier(0.25, 1, 0.5, 1);

  --size-close-icon: 14px;
  --height-button: 48px;
  --height-nav-button: 44px;
  --max-width: 3000px;
  --max-width-medium: 775px;
  --max-width-small: 500px;
  --max-width-centered-copy: 600px;

  --z-index-header: 300;
  --z-index-header-overlay: 299;
  --z-index-drawer-overlay: 301;
  --z-index-flyouts: 400;
  --z-index-popup: 500;
  --z-index-lightbox: 600;
  --z-index-modal: 700;
  --z-index-theme-editor-offset: 2000;

  --radius-2: 2px;
  --shadow-1: 0px 2px 6px rgba(0, 0, 0, 0.2), 0px 0px 2px rgba(0, 0, 0, 0.25);
  --shadow-2: 0px 1px 1px rgba(0, 0, 0, 0.2);
  --shadow-3: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);

  --grid-medium: 46.85em;
  --grid-large: 61.85em;
  --grid-widescreen: 87.5em;
  --grid-max-width: 73.75em;
  --grid-gutter: 30px;
  --easing: cubic-bezier(0.33, 0, 0, 1);
  --duration-ultra-fast: 100ms;
  --duration-fast: 300ms;
  --duration-normal: 500ms;
  --duration-slow: 1200ms;
  --delay-small: 33ms;
  --delay-normal: 67ms;
  --delay-long: 133ms;
}

html {
  background-color: var(--color-background);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-family: var(--font-body);
  font-weight: var(--font-body-weight);
  font-style: var(--font-body-style);
  color: var(--color-text-body);
  background-color: var(--color-bg);
  -webkit-font-smoothing: antialiased;
}

body:not(.user-is-tabbing) .flickity-enabled:focus {
  outline: none;
}

body,
input,
textarea,
button {
  font-family: var(--font-body);
}

a {
  color: inherit;
}

.theme-editor-scroll-offset {
  position: fixed;
  height: var(--header-offset-height);
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  z-index: 2000;
  z-index: var(--z-index-theme-editor-offset);
  pointer-events: none;
}

.header-stuck .theme-editor-scroll-offset {
  height: calc(40px - 40px);
  height: calc(var(--header-height) - var(--utility-bar-height));
}

.grid {
  display: flex;
  flex-wrap: wrap;
  padding: calc(calc(4px * 5) * 0.5);
  padding: calc(var(--spacing-medium) * 0.5);
}

.grid__item {
  width: 100%;
  padding: calc(calc(4px * 5) * 0.5);
  padding: calc(var(--spacing-medium) * 0.5);
}

.grid__item--full {
  width: 100%;
}

.grid__item--one-half {
  width: 50%;
}

.grid__item--one-third {
  width: calc(1 / 3 * 100%);
}

.grid__item--one-quarter {
  width: 25%;
}

.grid__item--two-thirds {
  width: calc(2 / 3 * 100%);
}

.grid-display {
  display: grid;
  grid-gap: calc(4px * 5);
  gap: calc(4px * 5);
  grid-gap: var(--spacing-medium);
  gap: var(--spacing-medium);
  grid-template-columns: repeat(1, 1fr);
}

@media (min-width: 60em) {
  .grid-display {
    grid-row-gap: calc(4px * 10);
    row-gap: calc(4px * 10);
    grid-row-gap: var(--spacing-extra-large);
    row-gap: var(--spacing-extra-large);
  }
}

@media (max-width: 38em) {
  .grid-display.grid-display--mobile-one-half {
    /* grid-template-columns: repeat(2, 1fr); */
    grid-template-columns: repeat(2, calc(50% - 7px));
  }
}

@media (max-width: 38em) {
  .grid-display.grid-display--mobile-one-third {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (min-width: 38em) {
  .grid-display.grid-display--one-half {
     grid-template-columns: repeat(2, calc(50% - 10px)) ;
    /* grid-template-columns: repeat(2, 1fr); */
  }
}

@media (min-width: 8em) and (max-width: 60em) {
  .grid-display.grid-display--one-third {
    /* grid-template-columns: repeat(2, 1fr); */
    grid-template-columns: repeat(2, calc(50% - 10px)) ;
  }
}

@media (min-width: 60em) {
  .grid-display.grid-display--one-third {
    /* grid-template-columns: repeat(3, 1fr); */
    grid-template-columns: repeat(3, calc(33.33% - 15px));
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .grid-display.grid-display--one-quarter {
    grid-template-columns: repeat(3, calc(33.33% - 15px));
  }
}

@media (min-width: 60em) {
  .grid-display.grid-display--one-quarter {
    grid-template-columns: repeat(4, calc(25% - 15px));
  }
}

.grid-display.grid-display--has-products.grid-display--square .placeholder-svg,
.grid-display.grid-display--has-products.grid-display--landscape
  .placeholder-svg,
.grid-display.grid-display--has-products.grid-display--portrait
  .placeholder-svg {
  position: absolute;
  top: 50%;
  height: 100%;
  width: 100%;
  transform: translateY(-50%);
}

.grid-display.grid-display--has-products.grid-display--square
  .product-item__placeholder,
.grid-display.grid-display--has-products.grid-display--landscape
  .product-item__placeholder,
.grid-display.grid-display--has-products.grid-display--portrait
  .product-item__placeholder {
  position: relative;
  overflow: hidden;
}

.grid-display.grid-display--has-products.grid-display--square
  .product-item__placeholder {
  padding-top: 100%;
}

.grid-display.grid-display--has-products.grid-display--landscape
  .product-item__placeholder {
  padding-top: calc((2 / 3) * 100%);
}

.grid-display.grid-display--has-products.grid-display--portrait
  .product-item__placeholder {
  padding-top: calc((3 / 2) * 100%);
}

.grid-display.grid-display--no-products.grid-display--square
  .grid-display__image,
.grid-display.grid-display--no-products.grid-display--landscape
  .grid-display__image,
.grid-display.grid-display--no-products.grid-display--portrait
  .grid-display__image {
  position: relative;
  overflow: hidden;
}

.grid-display.grid-display--no-products.grid-display--square .image,
.grid-display.grid-display--no-products.grid-display--square .placeholder-svg,
.grid-display.grid-display--no-products.grid-display--landscape .image,
.grid-display.grid-display--no-products.grid-display--landscape
  .placeholder-svg,
.grid-display.grid-display--no-products.grid-display--portrait .image,
.grid-display.grid-display--no-products.grid-display--portrait
  .placeholder-svg {
  position: absolute;
  top: 50%;
  height: 100%;
  width: 100%;
  transform: translateY(-50%);
}

.grid-display.grid-display--no-products.grid-display--square
  .grid-display__image {
  padding-top: 100%;
}

.grid-display.grid-display--no-products.grid-display--landscape
  .grid-display__image {
  padding-top: calc((2 / 3) * 100%);
}

.grid-display.grid-display--no-products.grid-display--portrait
  .grid-display__image {
  padding-top: calc((3 / 2) * 100%);
}

.grid-display__item {
  width: 100%;
}

.visually-hidden {
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
}

.no-js:not(html) {
  display: none;
}

.no-js .no-js:not(html) {
  display: block;
}

.no-js .js {
  display: none;
}

.supports-no-cookies:not(html) {
  display: none;
}

html.supports-no-cookies .supports-no-cookies:not(html) {
  display: block;
}

html.supports-no-cookies .supports-cookies {
  display: none;
}

.hide {
  display: none !important;
}

/* .section-borderable + .section-borderable > .section--bordered{
  border-top:1px solid var(--color-border);
} */
.section {
  max-width: 3000px;
  max-width: var(--max-width);
  margin: 0 auto;
  padding: var(--section-vertical-spacing) calc(4px * 5);
  padding: var(--section-vertical-spacing) var(--spacing-medium);
  overflow: hidden;
  background-color: var(--color-bg);
}

@media (min-width: 38em) {
  .section {
    padding-top: var(--section-vertical-spacing-desktop);
    padding-bottom: var(--section-vertical-spacing-desktop);
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .section {
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .section {
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
  }
}

.section.section--contrast {
  z-index: 1;
  position: relative;
  margin-bottom: -1px;

  background-color: var(--color-contrast-bg);
  color: var(--color-contrast-text);
  border: 0;
}

.section.section--contrast .meta {
  color: var(--color-contrast-text-meta);
}

.section.section--contrast form label {
  background-color: var(--color-contrast-bg);
  color: var(--color-contrast-input-inactive-text);
}

.section.section--contrast form svg {
  color: var(--color-contrast-icon);
}

.section.section--contrast .input {
  background: var(--color-contrast-bg);
  color: var(--color-contrast-input-text);
  border-color: var(--color-contrast-border);
  transition: border-color 0.15s ease-in-out;
}

.section.section--contrast .input:hover {
  border-color: var(--color-contrast-border-darker);
}

.section.section--contrast .input:focus {
  border-radius: 0;
  border-color: var(--color-contrast-border-darkest);
}

.section.section--contrast input,
.section.section--contrast select,
.section.section--contrast textarea {
  background: var(--color-contrast-bg);
  color: var(--color-contrast-input-text);
  border-color: var(--color-contrast-border);
}

.section.section--contrast input:hover,
.section.section--contrast select:hover,
.section.section--contrast textarea:hover {
  border-color: var(--color-contrast-border-darker);
}

.section.section--contrast input:focus,
.section.section--contrast select:focus,
.section.section--contrast textarea:focus {
  border-color: var(--color-contrast-border-darkest);
}

.section.section--contrast input::-moz-placeholder,
.section.section--contrast select::-moz-placeholder,
.section.section--contrast textarea::-moz-placeholder {
  color: var(--color-contrast-input-inactive-text);
}

.section.section--contrast input:-ms-input-placeholder,
.section.section--contrast select:-ms-input-placeholder,
.section.section--contrast textarea:-ms-input-placeholder {
  color: var(--color-contrast-input-inactive-text);
}

input::-moz-placeholder,
select::-moz-placeholder,
textarea::-moz-placeholder {
  color: var(--color-contrast-input-inactive-text);
}

input:-ms-input-placeholder,
select:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: var(--color-contrast-input-inactive-text);
}

.section.section--contrast input::placeholder,
.section.section--contrast select::placeholder,
.section.section--contrast textarea::placeholder {
  color: var(--color-contrast-input-inactive-text);
}

.section.section--contrast .select-wrapper:after {
  border-top-color: var(--color-contrast-text);
}

.section.section--contrast .dot {
  background-color: var(--color-contrast-text);
}

.section.section--contrast .newsletter__submit-button {
  color: var(--color-contrast-text);
}

.secondary_button-style-solid .section.section--contrast .bttn--secondary {
  color: var(--color-contrast-bg);
  background-color: var(--color-contrast-secondary-button-bg);
}

.secondary_button-style-solid .section.section--contrast .bttn--secondary:hover,
.secondary_button-style-solid
  .section.section--contrast
  .bttn--secondary:focus {
  background-color: var(--color-contrast-secondary-button-meta);
}

.secondary_button-style-solid
  .section.section--contrast
  .bttn--secondary:disabled:hover {
  background-color: var(--color-contrast-secondary-button-bg);
}

.secondary_button-style-bordered .section.section--contrast .bttn--secondary {
  color: var(--color-contrast-secondary-button-bg);
  border-color: var(--color-contrast-secondary-button-border);
}

.secondary_button-style-bordered
  .section.section--contrast
  .bttn--secondary:before {
  background-color: var(--color-contrast-secondary-button-bg);
}

.secondary_button-style-bordered
  .section.section--contrast
  .bttn--secondary:hover {
  color: var(--color-contrast-bg);
}

.secondary_button-style-bordered
  .section.section--contrast
  .bttn--secondary:disabled:hover {
  color: var(--color-contrast-secondary-button-meta);
}

.section.section--spacing-tall {
  padding-top: var(--section-vertical-spacing-tall);
  padding-bottom: var(--section-vertical-spacing-tall);
}

@media (min-width: 38em) {
  .section.section--spacing-tall {
    padding-top: var(--section-vertical-spacing-tall-desktop);
    padding-bottom: var(--section-vertical-spacing-tall-desktop);
  }
}

.section.section--spacing-regular {
  padding-top: var(--section-vertical-spacing);
  padding-bottom: var(--section-vertical-spacing);
}

@media (min-width: 38em) {
  .section.section--spacing-regular {
    padding-top: var(--section-vertical-spacing-desktop);
    padding-bottom: var(--section-vertical-spacing-desktop);
  }
}

.section.section--full-width {
  position: relative;
  margin-bottom: -1px;

  padding: 0;
  border: 0;
}

.section--outline {
  border: 1px solid var(--color-border);
}

.accent-link {
  color: var(--color-accent);
  text-decoration: underline;
  transition: opacity 0.25s;
}

.accent-link:hover {
  opacity: 0.5;
  transition: opacity 0.25s;
}

.centered-content {
  width: 100%;
  max-width: 600px;
  max-width: var(--max-width-centered-copy);
  margin-left: auto;
  margin-right: auto;
}

.util-header-offset {
  margin-top: calc(40px * -1);
  margin-top: calc(var(--header-height) * -1);
}

html {
  font-size: 62.5%;
}

body {
  color: var(--color-text);
  font-family: var(--font-body);
  line-height: 1.71em;
  line-height: var(--line-height-body);
  font-weight: var(--font-body-weight);
  font-size: var(--font-size-body-base);
  font-style: var(--font-body-style);
  -webkit-font-smoothing: antialiased;
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: inherit;
  font-size: var(--font-size-body-base);
  font-weight: var(--font-body-weight);
  font-style: var(--font-body-style);
}

body,
input,
textarea,
button,
select {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

a:focus {
  color: inherit;
}

.overline {
  font-size: var(--font-size-body-extra-small);
  line-height: 1.8em;
  line-height: var(--line-height-overline);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.type-heading-dynamic {
  font-size: 46px;
  line-height: 1.25em;
  line-height: var(--line-height-heading-display);
  font-family: var(--font-heading), sans-serif;
  font-weight: var(--font-heading-weight);
  font-style: var(--font-heading-style);
}

@media (max-width: 38em) {
  .type-heading-dynamic {
    font-size: 32px;
  }
}

.shopify-policy__container h1,
.type-heading-1 {
  font-size: var(--font-size-heading-1);
  line-height: 1.3em;
  line-height: var(--line-height-heading);
  font-family: var(--font-heading), sans-serif;
  font-weight: var(--font-heading-weight);
  font-style: var(--font-heading-style);
}

@media (max-width: 38em) {
  .shopify-policy__container h1,
  .type-heading-1 {
    font-size: var(--font-size-heading-1-small);
    line-height: 1.35em;
    line-height: var(--line-height-heading-small);
  }
}

.type-heading-1-small {
  font-size: var(--font-size-heading-1-small);
  line-height: 1.35em;
  line-height: var(--line-height-heading-small);
  font-family: var(--font-heading), sans-serif;
  font-weight: var(--font-heading-weight);
  font-style: var(--font-heading-style);
}

.type-heading-2 {
  font-size: var(--font-size-heading-2);
  line-height: 1.3em;
  line-height: var(--line-height-heading-2);
  font-family: var(--font-heading), sans-serif;
  font-weight: var(--font-heading-weight);
  font-style: var(--font-heading-style);
}

.type-heading-2 > a {
  color: inherit;
}

.type-heading-3 {
  font-size: var(--font-size-heading-3);
  line-height: 1.3em;
  line-height: var(--line-height-heading);
  font-family: var(--font-heading), sans-serif;
  font-weight: var(--font-heading-weight);
  font-style: var(--font-heading-style);
}

.g-uppercase .type-heading-dynamic,
.g-uppercase .type-heading-1,
.g-uppercase .type-heading-1-small,
.g-uppercase .type-heading-2,
.g-uppercase .type-heading-3,
.g-uppercase .spr-header-title {
  text-transform: uppercase;
  letter-spacing: 1px;
}

.lowercase {
  text-transform: lowercase !important;
}

.type-heading-meta {
  font-size: var(--font-size-body-extra-small);
  text-transform: uppercase;
  letter-spacing: 0.125em;
}

.type-body-small {
  font-size: var(--font-size-body-small);
  line-height: 1.71em;
  line-height: var(--line-height-body);
  font-family: var(--font-body), georgia;
}

.type-body-regular {
  font-size: var(--font-size-body-base);
  line-height: 1.71em;
  line-height: var(--line-height-body);
  font-family: var(--font-body), georgia;
}

.type-body-large {
  font-size: var(--font-size-body-large);
  line-height: 1.71em;
  line-height: var(--line-height-body);
  font-family: var(--font-body), georgia;
}

.type-body-extra-large {
  font-size: var(--font-size-body-extra-large);
  line-height: 1.71em;
  line-height: var(--line-height-body);
  font-family: var(--font-body), georgia;
}

p a {
  color: var(--color-accent);
}

.rte {
  margin-top: 0;
  margin-bottom: 0;
}

.rte h1 {
  font-size: 2.2em;
  font-family: var(--font-heading);
  font-weight: var(--font-heading-weight);
  font-style: var(--font-heading-style);
  line-height: 1.3em;
  line-height: var(--line-height-heading);
}

.rte h2 {
  font-size: 1.8em;
  font-family: var(--font-heading);
  font-weight: var(--font-heading-weight);
  font-style: var(--font-heading-style);
  line-height: 1.3em;
  line-height: var(--line-height-heading-2);
}

.rte h3 {
  font-size: 1.4em;
  font-family: var(--font-heading);
  font-weight: var(--font-heading-weight);
  font-style: var(--font-heading-style);
}

.rte h4 {
  font-size: 1.2em;
  font-family: var(--font-heading);
  font-weight: var(--font-heading-weight);
  font-style: var(--font-heading-style);
}

.rte h5 {
  font-size: 1em;
  font-weight: var(--font-body-bold-weight);
}

.rte h6 {
  font-size: 0.8em;
  font-weight: var(--font-body-bold-weight);
  text-transform: uppercase;
}

.rte blockquote {
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  margin: calc(4px * 3) 0;
  margin: var(--spacing-small) 0;
  background-color: var(--color-contrast-bg);
  color: var(--color-contrast-text);
  box-shadow: inset 1px 0 0 var(--color-border);
}

.rte blockquote p:first-of-type {
  margin-top: 0;
}

.rte blockquote p:last-of-type {
  margin-bottom: 0;
}

.rte a {
  text-decoration: underline;
  color: var(--color-accent);
  cursor: pointer;
}

.rte a:hover {
  opacity: 0.5;
}

.rte iframe,
.rte video {
  width: 100%;
  display: block;
  margin: 2em 0;
}

.rte img {
  margin: 1em 0;
}

.rte div > iframe {
  margin: 0;
}

.rte img {
  max-width: 100%;
}

.rte table {
  opacity: 0;
  width: 100%;
  white-space: normal;
  border-collapse: collapse;
  white-space: nowrap;
}

.no-js .rte table {
  opacity: 1;
}

.rte th,
.rte td {
  border: 1px solid var(--color-border);
}

.rte td {
  padding: calc(4px * 3);
  padding: var(--spacing-small);
}

.rte ul,
.rte ol {
  margin: 0 0 calc(30px / 2) 0;
  margin: 0 0 calc(var(--grid-gutter) / 2) 0;
}

.rte strong {
  font-weight: var(--font-body-bold-weight);
}

.rte iframe {
  width: 100%;
  aspect-ratio: 16/9;
}

.rte hr {
  border-top: 0;
  border-right: 0;
  border-left: 0;
  border-bottom: 1px solid var(--color-border);
}

.rte .grid {
  --s-item-gutter: 10px;

  min-width: 100%;
  padding: 0;
  margin: calc(calc(4px * 7) - var(--s-item-gutter)) 0;
  margin: calc(var(--spacing-large) - var(--s-item-gutter)) 0;
  margin-left: calc(var(--s-item-gutter) * -1);
  margin-right: calc(var(--s-item-gutter) * -1);
}

.rte .grid:first-child {
  margin-top: calc(var(--s-item-gutter) * -1);
}

@media (min-width: 38em) {
  .rte .grid {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-top: calc(calc(4px * 10) - var(--s-item-gutter));
    margin-top: calc(var(--spacing-extra-large) - var(--s-item-gutter));
    margin-right: -50vw;
    margin-bottom: calc(calc(4px * 10) - var(--s-item-gutter));
    margin-bottom: calc(var(--spacing-extra-large) - var(--s-item-gutter));
    margin-left: -50vw;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .rte .grid {
    padding-right: calc(calc(4px * 10) - var(--s-item-gutter));
    padding-right: calc(var(--spacing-extra-large) - var(--s-item-gutter));
    padding-left: calc(calc(4px * 10) - var(--s-item-gutter));
    padding-left: calc(var(--spacing-extra-large) - var(--s-item-gutter));
  }
}

@media (min-width: 60em) {
  .rte .grid {
    padding-right: calc(calc(4px * 20) - var(--s-item-gutter));
    padding-right: calc(
      var(--spacing-extra-extra-large) - var(--s-item-gutter)
    );
    padding-left: calc(calc(4px * 20) - var(--s-item-gutter));
    padding-left: calc(var(--spacing-extra-extra-large) - var(--s-item-gutter));
  }
}

.rte .grid img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0;
}

.rte .grid img + img {
  margin-top: calc(var(--s-item-gutter) * 2);
}

.rte .grid > div,
.rte .grid > img,
.rte .grid > p {
  padding: var(--s-item-gutter);
  margin: 0;
  width: 100%;
}

.rte .grid .small {
  width: 50%;
}

.rte-table {
  overflow: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
}

.rte-table table {
  opacity: 1;
}

.rte__table-wrapper {
  overflow: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
}

.g-uppercase .rte h1,
.g-uppercase .rte h2,
.g-uppercase .rte h3,
.g-uppercase .rte h4 {
  text-transform: uppercase;
  letter-spacing: 1px;
}

form {
  margin: 0;
}

form label {
  color: var(--color-input-text);
}

form label.label--above {
  z-index: 1;
  position: absolute;
  top: calc(calc(4px * 3) * -1);
  top: calc(var(--spacing-small) * -1);
  left: calc(calc(4px * 5) - 4px);
  left: calc(var(--spacing-medium) - var(--spacing-unit));
  padding-right: 4px;
  padding-right: var(--spacing-unit);
  padding-left: 4px;
  padding-left: var(--spacing-unit);
  color: var(--color-input-inactive-text);
  font-size: var(--font-size-body-small);
  background-color: var(--color-bg);
  opacity: 0 !important;
  transition: opacity 0.25s ease-in-out !important;
  transition: opacity 0.25s var(--ease) !important;
}

a,
area,
button,
[role="button"],
input,
label,
select,
summary,
textarea {
  touch-action: manipulation;
}

button,
input[type="submit"],
label[for] {
  cursor: pointer;
}

textarea {
  min-height: 100px;
}

select::-ms-expand {
  display: none;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

option {
  background-color: var(--color-bg);
  color: var(--color-text);
}

.input-error {
  border-color: var(--color-error-message);
  color: var(--color-error-message);
}

input,
textarea,
select {
  background-color: var(--color-bg);
  color: var(--color-input);
  width: 100%;
  border: 1px solid var(--color-border);
  padding: calc(4px * 3) calc(4px * 4);
  padding: var(--spacing-small) calc(var(--spacing-unit) * 4);
  font-family: var(--font-body);
  font-weight: var(--font-body-weight);
  font-style: var(--font-body-style);
  line-height: 1.5em;
  transition: border-color 0.25s ease-in-out;
  font-size: var(--font-size-body-base);
  max-width: 100%;
  border-radius: var(--button-border-radius);
}

input[disabled],
textarea[disabled],
select[disabled] {
  border-color: var(--color-disabled-border);
  background-color: var(--color-disabled);
  cursor: default;
}

input::-moz-placeholder,
textarea::-moz-placeholder,
select::-moz-placeholder {
  color: var(--color-input-inactive-text);
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder,
select:-ms-input-placeholder {
  color: var(--color-input-inactive-text);
}

input::placeholder,
textarea::placeholder,
select::placeholder {
  color: var(--color-input-inactive-text);
}

input:not(:-moz-placeholder-shown) + .label--above,
textarea:not(:-moz-placeholder-shown) + .label--above,
select:not(:-moz-placeholder-shown) + .label--above {
  opacity: 1 !important;
}

input:not(:-ms-input-placeholder) + .label--above,
textarea:not(:-ms-input-placeholder) + .label--above,
select:not(:-ms-input-placeholder) + .label--above {
  opacity: 1 !important;
}

input:not(:placeholder-shown) + .label--above,
textarea:not(:placeholder-shown) + .label--above,
select:not(:placeholder-shown) + .label--above {
  opacity: 1 !important;
}

input:hover,
textarea:hover,
select:hover {
  border-color: var(--color-border-darker);
}

input:focus,
textarea:focus,
select:focus {
  border-radius: var(--button-border-radius);
  border-color: var(--color-border-darkest);
}

input:focus + .label--above,
textarea:focus + .label--above,
select:focus + .label--above {
  opacity: 1 !important;
}

input:focus::-moz-placeholder,
textarea:focus::-moz-placeholder,
select:focus::-moz-placeholder {
  opacity: 0;
}

input:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder,
select:focus:-ms-input-placeholder {
  opacity: 0;
}

input:focus::placeholder,
textarea:focus::placeholder,
select:focus::placeholder {
  opacity: 0;
}

select {
  cursor: pointer;
}

input,
select {
  height: 48px;
  height: var(--height-button);
}

.select-wrapper {
  position: relative;
}

.select-wrapper:after {
  content: "";
  pointer-events: none;
  width: 0;
  height: 0;
  position: absolute;
  top: 50%;
  margin-top: -3px;
  right: 15px;
}

.form-errors {
  color: var(--color-error-message);
  text-align: left;
  line-height: 1.71em;
  line-height: var(--line-height-body);
}

.form-errors ul {
  padding: 0 0 0 calc(4px * 5);
  padding: 0 0 0 var(--spacing-medium);
}

.form-message--error {
  color: var(--color-error-message);
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.form-message--success {
  color: var(--color-success-message);
}

.bg-center {
  background-repeat: no-repeat;
  background-position: center center;
}

.bg-top {
  background-repeat: no-repeat;
  background-position: top center;
}

.bg-right {
  background-repeat: no-repeat;
  background-position: center right;
}

.bg-bottom {
  background-repeat: no-repeat;
  background-position: bottom center;
}

.bg-left {
  background-repeat: no-repeat;
  background-position: center left;
}

@media (min-width: 38em) {
  .bg-center-ns {
    background-repeat: no-repeat;
    background-position: center center;
  }

  .bg-top-ns {
    background-repeat: no-repeat;
    background-position: top center;
  }

  .bg-right-ns {
    background-repeat: no-repeat;
    background-position: center right;
  }

  .bg-bottom-ns {
    background-repeat: no-repeat;
    background-position: bottom center;
  }

  .bg-left-ns {
    background-repeat: no-repeat;
    background-position: center left;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .bg-center-m {
    background-repeat: no-repeat;
    background-position: center center;
  }

  .bg-top-m {
    background-repeat: no-repeat;
    background-position: top center;
  }

  .bg-right-m {
    background-repeat: no-repeat;
    background-position: center right;
  }

  .bg-bottom-m {
    background-repeat: no-repeat;
    background-position: bottom center;
  }

  .bg-left-m {
    background-repeat: no-repeat;
    background-position: center left;
  }
}

@media (min-width: 60em) {
  .bg-center-l {
    background-repeat: no-repeat;
    background-position: center center;
  }

  .bg-top-l {
    background-repeat: no-repeat;
    background-position: top center;
  }

  .bg-right-l {
    background-repeat: no-repeat;
    background-position: center right;
  }

  .bg-bottom-l {
    background-repeat: no-repeat;
    background-position: bottom center;
  }

  .bg-left-l {
    background-repeat: no-repeat;
    background-position: center left;
  }
}

.cover {
  background-size: cover !important;
}

.contain {
  background-size: contain !important;
}

@media (min-width: 38em) {
  .cover-ns {
    background-size: cover !important;
  }

  .contain-ns {
    background-size: contain !important;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .cover-m {
    background-size: cover !important;
  }

  .contain-m {
    background-size: contain !important;
  }
}

@media (min-width: 60em) {
  .cover-l {
    background-size: cover !important;
  }

  .contain-l {
    background-size: contain !important;
  }
}

.b--default {
  border-color: var(--color-border);
}

.b--white {
  border-color: #ffffff;
}

.b--t {
  border-color: transparent;
}

.br0 {
  border-radius: 0;
}

.br1 {
  border-radius: 0.125rem;
}

.br2 {
  border-radius: 0.25rem;
}

.br3 {
  border-radius: 0.5rem;
}

.br4 {
  border-radius: 1rem;
}

.br-100 {
  border-radius: 100%;
}

.br-pill {
  border-radius: 9999px;
}

.br--bottom {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.br--top {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.br--right {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.br--left {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.b--dotted {
  border-style: dotted;
}

.b--dashed {
  border-style: dashed;
}

.b--solid {
  border-style: solid;
}

.b--none {
  border-style: none;
}

.ba {
  border-style: solid;
  border-width: 1px;
}

.bt {
  border-top-style: solid;
  border-top-width: 1px;
}

.br {
  border-right-style: solid;
  border-right-width: 1px;
}

.bb {
  border-bottom-style: solid;
  border-bottom-width: 1px;
}

.bl {
  border-left-style: solid;
  border-left-width: 1px;
}

.bn {
  border-style: none;
  border-width: 0;
}

.shadow-1 {
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2);
}

.shadow-2 {
  box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.2);
}

.shadow-3 {
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
}

.cf:before,
.cf:after {
  content: " ";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  *zoom: 1;
}

.cl {
  clear: left;
}

.cr {
  clear: right;
}

.cb {
  clear: both;
}

.cn {
  clear: none;
}

@media (min-width: 38em) {
  .cl-ns {
    clear: left;
  }

  .cr-ns {
    clear: right;
  }

  .cb-ns {
    clear: both;
  }

  .cn-ns {
    clear: none;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .cl-m {
    clear: left;
  }

  .cr-m {
    clear: right;
  }

  .cb-m {
    clear: both;
  }

  .cn-m {
    clear: none;
  }
}

@media (min-width: 60em) {
  .cl-l {
    clear: left;
  }

  .cr-l {
    clear: right;
  }

  .cb-l {
    clear: both;
  }

  .cn-l {
    clear: none;
  }
}

.color-inherit {
  color: inherit;
}

.white {
  color: #ffffff;
}

.default {
  color: var(--color-text);
}

.same-as-bg {
  color: var(--color-bg);
}

.meta {
  color: var(--color-text-meta);
}

.accent {
  color: var(--color-accent);
}

.sale-badge {
  color: var(--color-sale-badge-text);
  background-color: var(--color-sale-badge-bg);
}

.sold-badge {
  color: var(--color-sold-out-badge-text);
  background-color: var(--color-sold-out-badge-bg);
}

.bg-base {
  background-color: var(--color-bg);
}

.bg-white {
  background-color: var(--color-bg);
}

.bg-accent {
  background-color: var(--color-accent);
}

.bg-container {
  background-color: var(--color-contrast-bg);
}

.top-0 {
  top: 0;
}

.right-0 {
  right: 0;
}

.bottom-0 {
  bottom: 0;
}

.left-0 {
  left: 0;
}

.top-1 {
  top: 1rem;
}

.right-1 {
  right: 1rem;
}

.bottom-1 {
  bottom: 1rem;
}

.left-1 {
  left: 1rem;
}

.top-2 {
  top: 2rem;
}

.right-2 {
  right: 2rem;
}

.bottom-2 {
  bottom: 2rem;
}

.left-2 {
  left: 2rem;
}

.top--1 {
  top: -1rem;
}

.right--1 {
  right: -1rem;
}

.bottom--1 {
  bottom: -1rem;
}

.left--1 {
  left: -1rem;
}

.top--2 {
  top: -2rem;
}

.right--2 {
  right: -2rem;
}

.bottom--2 {
  bottom: -2rem;
}

.left--2 {
  left: -2rem;
}

.absolute--fill {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.dn {
  display: none;
}

.di {
  display: inline;
}

.db {
  display: block;
}

.dib {
  display: inline-block;
}

.dit {
  display: inline-table;
}

.dt {
  display: table;
}

.dtc {
  display: table-cell;
}

.dt-row {
  display: table-row;
}

.dt-row-group {
  display: table-row-group;
}

.dt-column {
  display: table-column;
}

.dt-column-group {
  display: table-column-group;
}

.dt--fixed {
  table-layout: fixed;
  width: 100%;
}

@media (min-width: 38em) {
  .dn-ns {
    display: none;
  }

  .di-ns {
    display: inline;
  }

  .db-ns {
    display: block;
  }

  .dib-ns {
    display: inline-block;
  }

  .dit-ns {
    display: inline-table;
  }

  .dt-ns {
    display: table;
  }

  .dtc-ns {
    display: table-cell;
  }

  .dt-row-ns {
    display: table-row;
  }

  .dt-row-group-ns {
    display: table-row-group;
  }

  .dt-column-ns {
    display: table-column;
  }

  .dt-column-group-ns {
    display: table-column-group;
  }

  .dt--fixed-ns {
    table-layout: fixed;
    width: 100%;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .dn-m {
    display: none;
  }

  .di-m {
    display: inline;
  }

  .db-m {
    display: block;
  }

  .dib-m {
    display: inline-block;
  }

  .dit-m {
    display: inline-table;
  }

  .dt-m {
    display: table;
  }

  .dtc-m {
    display: table-cell;
  }

  .dt-row-m {
    display: table-row;
  }

  .dt-row-group-m {
    display: table-row-group;
  }

  .dt-column-m {
    display: table-column;
  }

  .dt-column-group-m {
    display: table-column-group;
  }

  .dt--fixed-m {
    table-layout: fixed;
    width: 100%;
  }
}

@media (min-width: 60em) {
  .dn-l {
    display: none;
  }

  .di-l {
    display: inline;
  }

  .db-l {
    display: block;
  }

  .dib-l {
    display: inline-block;
  }

  .dit-l {
    display: inline-table;
  }

  .dt-l {
    display: table;
  }

  .dtc-l {
    display: table-cell;
  }

  .dt-row-l {
    display: table-row;
  }

  .dt-row-group-l {
    display: table-row-group;
  }

  .dt-column-l {
    display: table-column;
  }

  .dt-column-group-l {
    display: table-column-group;
  }

  .dt--fixed-l {
    table-layout: fixed;
    width: 100%;
  }
}

.flex {
  display: flex;
}

.inline-flex {
  display: inline-flex;
}

.flex-auto {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
}

.flex-none {
  flex: none;
}

.flex-column {
  flex-direction: column;
}

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

.flex-wrap {
  flex-wrap: wrap;
}

.flex-nowrap {
  flex-wrap: nowrap;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse;
}

.flex-column-reverse {
  flex-direction: column-reverse;
}

.flex-row-reverse {
  flex-direction: row-reverse;
}

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

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

.items-center {
  align-items: center;
}

.items-baseline {
  align-items: baseline;
}

.items-stretch {
  align-items: stretch;
}

.self-start {
  align-self: flex-start;
}

.self-end {
  align-self: flex-end;
}

.self-center {
  align-self: center;
}

.self-baseline {
  align-self: baseline;
}

.self-stretch {
  align-self: stretch;
}

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

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

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

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

.justify-around {
  justify-content: space-around;
}

.content-start {
  align-content: flex-start;
}

.content-end {
  align-content: flex-end;
}

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

.content-between {
  align-content: space-between;
}

.content-around {
  align-content: space-around;
}

.content-stretch {
  align-content: stretch;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-last {
  order: 99999;
}

.flex-grow-0 {
  flex-grow: 0;
}

.flex-grow-1 {
  flex-grow: 1;
}

.flex-shrink-0 {
  flex-shrink: 0;
}

.flex-shrink-1 {
  flex-shrink: 1;
}

@media (min-width: 38em) {
  .flex-ns {
    display: flex;
  }

  .inline-flex-ns {
    display: inline-flex;
  }

  .flex-auto-ns {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
  }

  .flex-none-ns {
    flex: none;
  }

  .flex-column-ns {
    flex-direction: column;
  }

  .flex-row-ns {
    flex-direction: row;
  }

  .flex-wrap-ns {
    flex-wrap: wrap;
  }

  .flex-nowrap-ns {
    flex-wrap: nowrap;
  }

  .flex-wrap-reverse-ns {
    flex-wrap: wrap-reverse;
  }

  .flex-column-reverse-ns {
    flex-direction: column-reverse;
  }

  .flex-row-reverse-ns {
    flex-direction: row-reverse;
  }

  .items-start-ns {
    align-items: flex-start;
  }

  .items-end-ns {
    align-items: flex-end;
  }

  .items-center-ns {
    align-items: center;
  }

  .items-baseline-ns {
    align-items: baseline;
  }

  .items-stretch-ns {
    align-items: stretch;
  }

  .self-start-ns {
    align-self: flex-start;
  }

  .self-end-ns {
    align-self: flex-end;
  }

  .self-center-ns {
    align-self: center;
  }

  .self-baseline-ns {
    align-self: baseline;
  }

  .self-stretch-ns {
    align-self: stretch;
  }

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

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

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

  .justify-between-ns {
    justify-content: space-between;
  }

  .justify-around-ns {
    justify-content: space-around;
  }

  .content-start-ns {
    align-content: flex-start;
  }

  .content-end-ns {
    align-content: flex-end;
  }

  .content-center-ns {
    align-content: center;
  }

  .content-between-ns {
    align-content: space-between;
  }

  .content-around-ns {
    align-content: space-around;
  }

  .content-stretch-ns {
    align-content: stretch;
  }

  .order-0-ns {
    order: 0;
  }

  .order-1-ns {
    order: 1;
  }

  .order-2-ns {
    order: 2;
  }

  .order-3-ns {
    order: 3;
  }

  .order-4-ns {
    order: 4;
  }

  .order-5-ns {
    order: 5;
  }

  .order-6-ns {
    order: 6;
  }

  .order-7-ns {
    order: 7;
  }

  .order-8-ns {
    order: 8;
  }

  .order-last-ns {
    order: 99999;
  }

  .flex-grow-0-ns {
    flex-grow: 0;
  }

  .flex-grow-1-ns {
    flex-grow: 1;
  }

  .flex-shrink-0-ns {
    flex-shrink: 0;
  }

  .flex-shrink-1-ns {
    flex-shrink: 1;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .flex-m {
    display: flex;
  }

  .inline-flex-m {
    display: inline-flex;
  }

  .flex-auto-m {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
  }

  .flex-none-m {
    flex: none;
  }

  .flex-column-m {
    flex-direction: column;
  }

  .flex-row-m {
    flex-direction: row;
  }

  .flex-wrap-m {
    flex-wrap: wrap;
  }

  .flex-nowrap-m {
    flex-wrap: nowrap;
  }

  .flex-wrap-reverse-m {
    flex-wrap: wrap-reverse;
  }

  .flex-column-reverse-m {
    flex-direction: column-reverse;
  }

  .flex-row-reverse-m {
    flex-direction: row-reverse;
  }

  .items-start-m {
    align-items: flex-start;
  }

  .items-end-m {
    align-items: flex-end;
  }

  .items-center-m {
    align-items: center;
  }

  .items-baseline-m {
    align-items: baseline;
  }

  .items-stretch-m {
    align-items: stretch;
  }

  .self-start-m {
    align-self: flex-start;
  }

  .self-end-m {
    align-self: flex-end;
  }

  .self-center-m {
    align-self: center;
  }

  .self-baseline-m {
    align-self: baseline;
  }

  .self-stretch-m {
    align-self: stretch;
  }

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

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

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

  .justify-between-m {
    justify-content: space-between;
  }

  .justify-around-m {
    justify-content: space-around;
  }

  .content-start-m {
    align-content: flex-start;
  }

  .content-end-m {
    align-content: flex-end;
  }

  .content-center-m {
    align-content: center;
  }

  .content-between-m {
    align-content: space-between;
  }

  .content-around-m {
    align-content: space-around;
  }

  .content-stretch-m {
    align-content: stretch;
  }

  .order-0-m {
    order: 0;
  }

  .order-1-m {
    order: 1;
  }

  .order-2-m {
    order: 2;
  }

  .order-3-m {
    order: 3;
  }

  .order-4-m {
    order: 4;
  }

  .order-5-m {
    order: 5;
  }

  .order-6-m {
    order: 6;
  }

  .order-7-m {
    order: 7;
  }

  .order-8-m {
    order: 8;
  }

  .order-last-m {
    order: 99999;
  }

  .flex-grow-0-m {
    flex-grow: 0;
  }

  .flex-grow-1-m {
    flex-grow: 1;
  }

  .flex-shrink-0-m {
    flex-shrink: 0;
  }

  .flex-shrink-1-m {
    flex-shrink: 1;
  }
}

@media (min-width: 60em) {
  .flex-l {
    display: flex;
  }

  .inline-flex-l {
    display: inline-flex;
  }

  .flex-auto-l {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
  }

  .flex-none-l {
    flex: none;
  }

  .flex-column-l {
    flex-direction: column;
  }

  .flex-row-l {
    flex-direction: row;
  }

  .flex-wrap-l {
    flex-wrap: wrap;
  }

  .flex-nowrap-l {
    flex-wrap: nowrap;
  }

  .flex-wrap-reverse-l {
    flex-wrap: wrap-reverse;
  }

  .flex-column-reverse-l {
    flex-direction: column-reverse;
  }

  .flex-row-reverse-l {
    flex-direction: row-reverse;
  }

  .items-start-l {
    align-items: flex-start;
  }

  .items-end-l {
    align-items: flex-end;
  }

  .items-center-l {
    align-items: center;
  }

  .items-baseline-l {
    align-items: baseline;
  }

  .items-stretch-l {
    align-items: stretch;
  }

  .self-start-l {
    align-self: flex-start;
  }

  .self-end-l {
    align-self: flex-end;
  }

  .self-center-l {
    align-self: center;
  }

  .self-baseline-l {
    align-self: baseline;
  }

  .self-stretch-l {
    align-self: stretch;
  }

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

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

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

  .justify-between-l {
    justify-content: space-between;
  }

  .justify-around-l {
    justify-content: space-around;
  }

  .content-start-l {
    align-content: flex-start;
  }

  .content-end-l {
    align-content: flex-end;
  }

  .content-center-l {
    align-content: center;
  }

  .content-between-l {
    align-content: space-between;
  }

  .content-around-l {
    align-content: space-around;
  }

  .content-stretch-l {
    align-content: stretch;
  }

  .order-0-l {
    order: 0;
  }

  .order-1-l {
    order: 1;
  }

  .order-2-l {
    order: 2;
  }

  .order-3-l {
    order: 3;
  }

  .order-4-l {
    order: 4;
  }

  .order-5-l {
    order: 5;
  }

  .order-6-l {
    order: 6;
  }

  .order-7-l {
    order: 7;
  }

  .order-8-l {
    order: 8;
  }

  .order-last-l {
    order: 99999;
  }

  .flex-grow-0-l {
    flex-grow: 0;
  }

  .flex-grow-1-l {
    flex-grow: 1;
  }

  .flex-shrink-0-l {
    flex-shrink: 0;
  }

  .flex-shrink-1-l {
    flex-shrink: 1;
  }
}

.fl {
  float: left;
  _display: inline;
}

.fr {
  float: right;
  _display: inline;
}

.fn {
  float: none;
}

@media (min-width: 38em) {
  .fl-ns {
    float: left;
    _display: inline;
  }

  .fr-ns {
    float: right;
    _display: inline;
  }

  .fn-ns {
    float: none;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .fl-m {
    float: left;
    _display: inline;
  }

  .fr-m {
    float: right;
    _display: inline;
  }

  .fn-m {
    float: none;
  }
}

@media (min-width: 60em) {
  .fl-l {
    float: left;
    _display: inline;
  }

  .fr-l {
    float: right;
    _display: inline;
  }

  .fn-l {
    float: none;
  }
}

.ff-1 {
  font-family: var(--font-body), sans-serif;
}

.ff-2 {
  font-family: var(--font-heading), sans-serif;
}

.normal {
  font-weight: normal;
}

.b {
  font-weight: bold;
}

.fw1 {
  font-weight: 100;
}

.fw2 {
  font-weight: 200;
}

.fw3 {
  font-weight: 300;
}

.fw4 {
  font-weight: 400;
}

.fw5 {
  font-weight: 500;
}

.fw6 {
  font-weight: 600;
}

.fw7 {
  font-weight: 700;
}

.fw8 {
  font-weight: 800;
}

.fw9 {
  font-weight: 900;
}

@media (min-width: 38em) {
  .normal-ns {
    font-weight: normal;
  }

  .b-ns {
    font-weight: bold;
  }

  .fw1-ns {
    font-weight: 100;
  }

  .fw2-ns {
    font-weight: 200;
  }

  .fw3-ns {
    font-weight: 300;
  }

  .fw4-ns {
    font-weight: 400;
  }

  .fw5-ns {
    font-weight: 500;
  }

  .fw6-ns {
    font-weight: 600;
  }

  .fw7-ns {
    font-weight: 700;
  }

  .fw8-ns {
    font-weight: 800;
  }

  .fw9-ns {
    font-weight: 900;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .normal-m {
    font-weight: normal;
  }

  .b-m {
    font-weight: bold;
  }

  .fw1-m {
    font-weight: 100;
  }

  .fw2-m {
    font-weight: 200;
  }

  .fw3-m {
    font-weight: 300;
  }

  .fw4-m {
    font-weight: 400;
  }

  .fw5-m {
    font-weight: 500;
  }

  .fw6-m {
    font-weight: 600;
  }

  .fw7-m {
    font-weight: 700;
  }

  .fw8-m {
    font-weight: 800;
  }

  .fw9-m {
    font-weight: 900;
  }
}

@media (min-width: 60em) {
  .normal-l {
    font-weight: normal;
  }

  .b-l {
    font-weight: bold;
  }

  .fw1-l {
    font-weight: 100;
  }

  .fw2-l {
    font-weight: 200;
  }

  .fw3-l {
    font-weight: 300;
  }

  .fw4-l {
    font-weight: 400;
  }

  .fw5-l {
    font-weight: 500;
  }

  .fw6-l {
    font-weight: 600;
  }

  .fw7-l {
    font-weight: 700;
  }

  .fw8-l {
    font-weight: 800;
  }

  .fw9-l {
    font-weight: 900;
  }
}

.input-reset {
  -webkit-appearance: none;
  -moz-appearance: none;
}

.button-reset::-moz-focus-inner,
.input-reset::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.tracked {
  letter-spacing: 0.1em;
}

.tracked-tight {
  letter-spacing: -0.05em;
}

.tracked-mega {
  letter-spacing: 0.25em;
}

@media (min-width: 38em) {
  .tracked-ns {
    letter-spacing: 0.1em;
  }

  .tracked-tight-ns {
    letter-spacing: -0.05em;
  }

  .tracked-mega-ns {
    letter-spacing: 0.25em;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .tracked-m {
    letter-spacing: 0.1em;
  }

  .tracked-tight-m {
    letter-spacing: -0.05em;
  }

  .tracked-mega-m {
    letter-spacing: 0.25em;
  }
}

@media (min-width: 60em) {
  .tracked-l {
    letter-spacing: 0.1em;
  }

  .tracked-tight-l {
    letter-spacing: -0.05em;
  }

  .tracked-mega-l {
    letter-spacing: 0.25em;
  }
}

.lh-solid {
  line-height: 1;
}

.lh-title {
  line-height: 1.25;
}

.lh-copy {
  line-height: 1.5;
}

.list {
  list-style-type: none;
}

.mw-c {
  max-width: 3000px;
  max-width: var(--max-width);
}

.mw-50 {
  max-width: 50%;
}

.mw-75 {
  max-width: 75%;
}

.mw-100 {
  max-width: 100%;
}

.mw1 {
  max-width: 1rem;
}

.mw2 {
  max-width: 2rem;
}

.mw3 {
  max-width: 4rem;
}

.mw4 {
  max-width: 8rem;
}

.mw5 {
  max-width: 16rem;
}

.mw6 {
  max-width: 32rem;
}

.mw7 {
  max-width: 48rem;
}

.mw8 {
  max-width: 64rem;
}

.mw9 {
  max-width: 96rem;
}

.mw-none {
  max-width: none;
}

@media (min-width: 38em) {
  .mw-100-ns {
    max-width: 100%;
  }

  .mw1-ns {
    max-width: 1rem;
  }

  .mw2-ns {
    max-width: 2rem;
  }

  .mw3-ns {
    max-width: 4rem;
  }

  .mw4-ns {
    max-width: 8rem;
  }

  .mw5-ns {
    max-width: 16rem;
  }

  .mw6-ns {
    max-width: 32rem;
  }

  .mw7-ns {
    max-width: 48rem;
  }

  .mw8-ns {
    max-width: 64rem;
  }

  .mw9-ns {
    max-width: 96rem;
  }

  .mw-none-ns {
    max-width: none;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .mw-100-m {
    max-width: 100%;
  }

  .mw1-m {
    max-width: 1rem;
  }

  .mw2-m {
    max-width: 2rem;
  }

  .mw3-m {
    max-width: 4rem;
  }

  .mw4-m {
    max-width: 8rem;
  }

  .mw5-m {
    max-width: 16rem;
  }

  .mw6-m {
    max-width: 32rem;
  }

  .mw7-m {
    max-width: 48rem;
  }

  .mw8-m {
    max-width: 64rem;
  }

  .mw9-m {
    max-width: 96rem;
  }

  .mw-none-m {
    max-width: none;
  }
}

@media (min-width: 60em) {
  .mw-100-l {
    max-width: 100%;
  }

  .mw1-l {
    max-width: 1rem;
  }

  .mw2-l {
    max-width: 2rem;
  }

  .mw3-l {
    max-width: 4rem;
  }

  .mw4-l {
    max-width: 8rem;
  }

  .mw5-l {
    max-width: 16rem;
  }

  .mw6-l {
    max-width: 32rem;
  }

  .mw7-l {
    max-width: 48rem;
  }

  .mw8-l {
    max-width: 64rem;
  }

  .mw9-l {
    max-width: 96rem;
  }

  .mw-none-l {
    max-width: none;
  }
}

.na1 {
  margin: calc(-1 * 4px);
  margin: calc(-1 * var(--spacing-extra-small));
}

.na2 {
  margin: calc(-1 * calc(4px * 3));
  margin: calc(-1 * var(--spacing-small));
}

.na3 {
  margin: calc(-1 * calc(4px * 5));
  margin: calc(-1 * var(--spacing-medium));
}

.na4 {
  margin: calc(-1 * calc(4px * 7));
  margin: calc(-1 * var(--spacing-large));
}

.na5 {
  margin: calc(-1 * calc(4px * 10));
  margin: calc(-1 * var(--spacing-extra-large));
}

.na6 {
  margin: calc(-1 * calc(4px * 20));
  margin: calc(-1 * var(--spacing-extra-extra-large));
}

.na7 {
  margin: calc(-1 * var(--spacing-extra-extra-extra-large));
}

.nl1 {
  margin-left: calc(-1 * 4px);
  margin-left: calc(-1 * var(--spacing-extra-small));
}

.nl2 {
  margin-left: calc(-1 * calc(4px * 3));
  margin-left: calc(-1 * var(--spacing-small));
}

.nl3 {
  margin-left: calc(-1 * calc(4px * 5));
  margin-left: calc(-1 * var(--spacing-medium));
}

.nl4 {
  margin-left: calc(-1 * calc(4px * 7));
  margin-left: calc(-1 * var(--spacing-large));
}

.nl5 {
  margin-left: calc(-1 * calc(4px * 10));
  margin-left: calc(-1 * var(--spacing-extra-large));
}

.nl6 {
  margin-left: calc(-1 * calc(4px * 20));
  margin-left: calc(-1 * var(--spacing-extra-extra-large));
}

.nl7 {
  margin-left: calc(-1 * var(--spacing-extra-extra-extra-large));
}

.nr1 {
  margin-right: calc(-1 * 4px);
  margin-right: calc(-1 * var(--spacing-extra-small));
}

.nr2 {
  margin-right: calc(-1 * calc(4px * 3));
  margin-right: calc(-1 * var(--spacing-small));
}

.nr3 {
  margin-right: calc(-1 * calc(4px * 5));
  margin-right: calc(-1 * var(--spacing-medium));
}

.nr4 {
  margin-right: calc(-1 * calc(4px * 7));
  margin-right: calc(-1 * var(--spacing-large));
}

.nr5 {
  margin-right: calc(-1 * calc(4px * 10));
  margin-right: calc(-1 * var(--spacing-extra-large));
}

.nr6 {
  margin-right: calc(-1 * calc(4px * 20));
  margin-right: calc(-1 * var(--spacing-extra-extra-large));
}

.nr7 {
  margin-right: calc(-1 * var(--spacing-extra-extra-extra-large));
}

.nb1 {
  margin-bottom: calc(-1 * 4px);
  margin-bottom: calc(-1 * var(--spacing-extra-small));
}

.nb2 {
  margin-bottom: calc(-1 * calc(4px * 3));
  margin-bottom: calc(-1 * var(--spacing-small));
}

.nb3 {
  margin-bottom: calc(-1 * calc(4px * 5));
  margin-bottom: calc(-1 * var(--spacing-medium));
}

.nb4 {
  margin-bottom: calc(-1 * calc(4px * 7));
  margin-bottom: calc(-1 * var(--spacing-large));
}

.nb5 {
  margin-bottom: calc(-1 * calc(4px * 10));
  margin-bottom: calc(-1 * var(--spacing-extra-large));
}

.nb6 {
  margin-bottom: calc(-1 * calc(4px * 20));
  margin-bottom: calc(-1 * var(--spacing-extra-extra-large));
}

.nb7 {
  margin-bottom: calc(-1 * var(--spacing-extra-extra-extra-large));
}

.nt1 {
  margin-top: calc(-1 * 4px);
  margin-top: calc(-1 * var(--spacing-extra-small));
}

.nt2 {
  margin-top: calc(-1 * calc(4px * 3));
  margin-top: calc(-1 * var(--spacing-small));
}

.nt3 {
  margin-top: calc(-1 * calc(4px * 5));
  margin-top: calc(-1 * var(--spacing-medium));
}

.nt4 {
  margin-top: calc(-1 * calc(4px * 7));
  margin-top: calc(-1 * var(--spacing-large));
}

.nt5 {
  margin-top: calc(-1 * calc(4px * 10));
  margin-top: calc(-1 * var(--spacing-extra-large));
}

.nt6 {
  margin-top: calc(-1 * calc(4px * 20));
  margin-top: calc(-1 * var(--spacing-extra-extra-large));
}

.nt7 {
  margin-top: calc(-1 * var(--spacing-extra-extra-extra-large));
}

@media (min-width: 38em) {
  .na1-ns {
    margin: calc(-1 * 4px);
    margin: calc(-1 * var(--spacing-extra-small));
  }

  .na2-ns {
    margin: calc(-1 * calc(4px * 3));
    margin: calc(-1 * var(--spacing-small));
  }

  .na3-ns {
    margin: calc(-1 * calc(4px * 5));
    margin: calc(-1 * var(--spacing-medium));
  }

  .na4-ns {
    margin: calc(-1 * calc(4px * 7));
    margin: calc(-1 * var(--spacing-large));
  }

  .na5-ns {
    margin: calc(-1 * calc(4px * 10));
    margin: calc(-1 * var(--spacing-extra-large));
  }

  .na6-ns {
    margin: calc(-1 * calc(4px * 20));
    margin: calc(-1 * var(--spacing-extra-extra-large));
  }

  .na7-ns {
    margin: calc(-1 * var(--spacing-extra-extra-extra-large));
  }

  .nl1-ns {
    margin-left: calc(-1 * 4px);
    margin-left: calc(-1 * var(--spacing-extra-small));
  }

  .nl2-ns {
    margin-left: calc(-1 * calc(4px * 3));
    margin-left: calc(-1 * var(--spacing-small));
  }

  .nl3-ns {
    margin-left: calc(-1 * calc(4px * 5));
    margin-left: calc(-1 * var(--spacing-medium));
  }

  .nl4-ns {
    margin-left: calc(-1 * calc(4px * 7));
    margin-left: calc(-1 * var(--spacing-large));
  }

  .nl5-ns {
    margin-left: calc(-1 * calc(4px * 10));
    margin-left: calc(-1 * var(--spacing-extra-large));
  }

  .nl6-ns {
    margin-left: calc(-1 * calc(4px * 20));
    margin-left: calc(-1 * var(--spacing-extra-extra-large));
  }

  .nl7-ns {
    margin-left: calc(-1 * var(--spacing-extra-extra-extra-large));
  }

  .nr1-ns {
    margin-right: calc(-1 * 4px);
    margin-right: calc(-1 * var(--spacing-extra-small));
  }

  .nr2-ns {
    margin-right: calc(-1 * calc(4px * 3));
    margin-right: calc(-1 * var(--spacing-small));
  }

  .nr3-ns {
    margin-right: calc(-1 * calc(4px * 5));
    margin-right: calc(-1 * var(--spacing-medium));
  }

  .nr4-ns {
    margin-right: calc(-1 * calc(4px * 7));
    margin-right: calc(-1 * var(--spacing-large));
  }

  .nr5-ns {
    margin-right: calc(-1 * calc(4px * 10));
    margin-right: calc(-1 * var(--spacing-extra-large));
  }

  .nr6-ns {
    margin-right: calc(-1 * calc(4px * 20));
    margin-right: calc(-1 * var(--spacing-extra-extra-large));
  }

  .nr7-ns {
    margin-right: calc(-1 * var(--spacing-extra-extra-extra-large));
  }

  .nb1-ns {
    margin-bottom: calc(-1 * 4px);
    margin-bottom: calc(-1 * var(--spacing-extra-small));
  }

  .nb2-ns {
    margin-bottom: calc(-1 * calc(4px * 3));
    margin-bottom: calc(-1 * var(--spacing-small));
  }

  .nb3-ns {
    margin-bottom: calc(-1 * calc(4px * 5));
    margin-bottom: calc(-1 * var(--spacing-medium));
  }

  .nb4-ns {
    margin-bottom: calc(-1 * calc(4px * 7));
    margin-bottom: calc(-1 * var(--spacing-large));
  }

  .nb5-ns {
    margin-bottom: calc(-1 * calc(4px * 10));
    margin-bottom: calc(-1 * var(--spacing-extra-large));
  }

  .nb6-ns {
    margin-bottom: calc(-1 * calc(4px * 20));
    margin-bottom: calc(-1 * var(--spacing-extra-extra-large));
  }

  .nb7-ns {
    margin-bottom: calc(-1 * var(--spacing-extra-extra-extra-large));
  }

  .nt1-ns {
    margin-top: calc(-1 * 4px);
    margin-top: calc(-1 * var(--spacing-extra-small));
  }

  .nt2-ns {
    margin-top: calc(-1 * calc(4px * 3));
    margin-top: calc(-1 * var(--spacing-small));
  }

  .nt3-ns {
    margin-top: calc(-1 * calc(4px * 5));
    margin-top: calc(-1 * var(--spacing-medium));
  }

  .nt4-ns {
    margin-top: calc(-1 * calc(4px * 7));
    margin-top: calc(-1 * var(--spacing-large));
  }

  .nt5-ns {
    margin-top: calc(-1 * calc(4px * 10));
    margin-top: calc(-1 * var(--spacing-extra-large));
  }

  .nt6-ns {
    margin-top: calc(-1 * calc(4px * 20));
    margin-top: calc(-1 * var(--spacing-extra-extra-large));
  }

  .nt7-ns {
    margin-top: calc(-1 * var(--spacing-extra-extra-extra-large));
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .na1-m {
    margin: calc(-1 * 4px);
    margin: calc(-1 * var(--spacing-extra-small));
  }

  .na2-m {
    margin: calc(-1 * calc(4px * 3));
    margin: calc(-1 * var(--spacing-small));
  }

  .na3-m {
    margin: calc(-1 * calc(4px * 5));
    margin: calc(-1 * var(--spacing-medium));
  }

  .na4-m {
    margin: calc(-1 * calc(4px * 7));
    margin: calc(-1 * var(--spacing-large));
  }

  .na5-m {
    margin: calc(-1 * calc(4px * 10));
    margin: calc(-1 * var(--spacing-extra-large));
  }

  .na6-m {
    margin: calc(-1 * calc(4px * 20));
    margin: calc(-1 * var(--spacing-extra-extra-large));
  }

  .na7-m {
    margin: calc(-1 * var(--spacing-extra-extra-extra-large));
  }

  .nl1-m {
    margin-left: calc(-1 * 4px);
    margin-left: calc(-1 * var(--spacing-extra-small));
  }

  .nl2-m {
    margin-left: calc(-1 * calc(4px * 3));
    margin-left: calc(-1 * var(--spacing-small));
  }

  .nl3-m {
    margin-left: calc(-1 * calc(4px * 5));
    margin-left: calc(-1 * var(--spacing-medium));
  }

  .nl4-m {
    margin-left: calc(-1 * calc(4px * 7));
    margin-left: calc(-1 * var(--spacing-large));
  }

  .nl5-m {
    margin-left: calc(-1 * calc(4px * 10));
    margin-left: calc(-1 * var(--spacing-extra-large));
  }

  .nl6-m {
    margin-left: calc(-1 * calc(4px * 20));
    margin-left: calc(-1 * var(--spacing-extra-extra-large));
  }

  .nl7-m {
    margin-left: calc(-1 * var(--spacing-extra-extra-extra-large));
  }

  .nr1-m {
    margin-right: calc(-1 * 4px);
    margin-right: calc(-1 * var(--spacing-extra-small));
  }

  .nr2-m {
    margin-right: calc(-1 * calc(4px * 3));
    margin-right: calc(-1 * var(--spacing-small));
  }

  .nr3-m {
    margin-right: calc(-1 * calc(4px * 5));
    margin-right: calc(-1 * var(--spacing-medium));
  }

  .nr4-m {
    margin-right: calc(-1 * calc(4px * 7));
    margin-right: calc(-1 * var(--spacing-large));
  }

  .nr5-m {
    margin-right: calc(-1 * calc(4px * 10));
    margin-right: calc(-1 * var(--spacing-extra-large));
  }

  .nr6-m {
    margin-right: calc(-1 * calc(4px * 20));
    margin-right: calc(-1 * var(--spacing-extra-extra-large));
  }

  .nr7-m {
    margin-right: calc(-1 * var(--spacing-extra-extra-extra-large));
  }

  .nb1-m {
    margin-bottom: calc(-1 * 4px);
    margin-bottom: calc(-1 * var(--spacing-extra-small));
  }

  .nb2-m {
    margin-bottom: calc(-1 * calc(4px * 3));
    margin-bottom: calc(-1 * var(--spacing-small));
  }

  .nb3-m {
    margin-bottom: calc(-1 * calc(4px * 5));
    margin-bottom: calc(-1 * var(--spacing-medium));
  }

  .nb4-m {
    margin-bottom: calc(-1 * calc(4px * 7));
    margin-bottom: calc(-1 * var(--spacing-large));
  }

  .nb5-m {
    margin-bottom: calc(-1 * calc(4px * 10));
    margin-bottom: calc(-1 * var(--spacing-extra-large));
  }

  .nb6-m {
    margin-bottom: calc(-1 * calc(4px * 20));
    margin-bottom: calc(-1 * var(--spacing-extra-extra-large));
  }

  .nb7-m {
    margin-bottom: calc(-1 * var(--spacing-extra-extra-extra-large));
  }

  .nt1-m {
    margin-top: calc(-1 * 4px);
    margin-top: calc(-1 * var(--spacing-extra-small));
  }

  .nt2-m {
    margin-top: calc(-1 * calc(4px * 3));
    margin-top: calc(-1 * var(--spacing-small));
  }

  .nt3-m {
    margin-top: calc(-1 * calc(4px * 5));
    margin-top: calc(-1 * var(--spacing-medium));
  }

  .nt4-m {
    margin-top: calc(-1 * calc(4px * 7));
    margin-top: calc(-1 * var(--spacing-large));
  }

  .nt5-m {
    margin-top: calc(-1 * calc(4px * 10));
    margin-top: calc(-1 * var(--spacing-extra-large));
  }

  .nt6-m {
    margin-top: calc(-1 * calc(4px * 20));
    margin-top: calc(-1 * var(--spacing-extra-extra-large));
  }

  .nt7-m {
    margin-top: calc(-1 * var(--spacing-extra-extra-extra-large));
  }
}

@media (min-width: 60em) {
  .na1-l {
    margin: calc(-1 * 4px);
    margin: calc(-1 * var(--spacing-extra-small));
  }

  .na2-l {
    margin: calc(-1 * calc(4px * 3));
    margin: calc(-1 * var(--spacing-small));
  }

  .na3-l {
    margin: calc(-1 * calc(4px * 5));
    margin: calc(-1 * var(--spacing-medium));
  }

  .na4-l {
    margin: calc(-1 * calc(4px * 7));
    margin: calc(-1 * var(--spacing-large));
  }

  .na5-l {
    margin: calc(-1 * calc(4px * 10));
    margin: calc(-1 * var(--spacing-extra-large));
  }

  .na6-l {
    margin: calc(-1 * calc(4px * 20));
    margin: calc(-1 * var(--spacing-extra-extra-large));
  }

  .na7-l {
    margin: calc(-1 * var(--spacing-extra-extra-extra-large));
  }

  .nl1-l {
    margin-left: calc(-1 * 4px);
    margin-left: calc(-1 * var(--spacing-extra-small));
  }

  .nl2-l {
    margin-left: calc(-1 * calc(4px * 3));
    margin-left: calc(-1 * var(--spacing-small));
  }

  .nl3-l {
    margin-left: calc(-1 * calc(4px * 5));
    margin-left: calc(-1 * var(--spacing-medium));
  }

  .nl4-l {
    margin-left: calc(-1 * calc(4px * 7));
    margin-left: calc(-1 * var(--spacing-large));
  }

  .nl5-l {
    margin-left: calc(-1 * calc(4px * 10));
    margin-left: calc(-1 * var(--spacing-extra-large));
  }

  .nl6-l {
    margin-left: calc(-1 * calc(4px * 20));
    margin-left: calc(-1 * var(--spacing-extra-extra-large));
  }

  .nl7-l {
    margin-left: calc(-1 * var(--spacing-extra-extra-extra-large));
  }

  .nr1-l {
    margin-right: calc(-1 * 4px);
    margin-right: calc(-1 * var(--spacing-extra-small));
  }

  .nr2-l {
    margin-right: calc(-1 * calc(4px * 3));
    margin-right: calc(-1 * var(--spacing-small));
  }

  .nr3-l {
    margin-right: calc(-1 * calc(4px * 5));
    margin-right: calc(-1 * var(--spacing-medium));
  }

  .nr4-l {
    margin-right: calc(-1 * calc(4px * 7));
    margin-right: calc(-1 * var(--spacing-large));
  }

  .nr5-l {
    margin-right: calc(-1 * calc(4px * 10));
    margin-right: calc(-1 * var(--spacing-extra-large));
  }

  .nr6-l {
    margin-right: calc(-1 * calc(4px * 20));
    margin-right: calc(-1 * var(--spacing-extra-extra-large));
  }

  .nr7-l {
    margin-right: calc(-1 * var(--spacing-extra-extra-extra-large));
  }

  .nb1-l {
    margin-bottom: calc(-1 * 4px);
    margin-bottom: calc(-1 * var(--spacing-extra-small));
  }

  .nb2-l {
    margin-bottom: calc(-1 * calc(4px * 3));
    margin-bottom: calc(-1 * var(--spacing-small));
  }

  .nb3-l {
    margin-bottom: calc(-1 * calc(4px * 5));
    margin-bottom: calc(-1 * var(--spacing-medium));
  }

  .nb4-l {
    margin-bottom: calc(-1 * calc(4px * 7));
    margin-bottom: calc(-1 * var(--spacing-large));
  }

  .nb5-l {
    margin-bottom: calc(-1 * calc(4px * 10));
    margin-bottom: calc(-1 * var(--spacing-extra-large));
  }

  .nb6-l {
    margin-bottom: calc(-1 * calc(4px * 20));
    margin-bottom: calc(-1 * var(--spacing-extra-extra-large));
  }

  .nb7-l {
    margin-bottom: calc(-1 * var(--spacing-extra-extra-extra-large));
  }

  .nt1-l {
    margin-top: calc(-1 * 4px);
    margin-top: calc(-1 * var(--spacing-extra-small));
  }

  .nt2-l {
    margin-top: calc(-1 * calc(4px * 3));
    margin-top: calc(-1 * var(--spacing-small));
  }

  .nt3-l {
    margin-top: calc(-1 * calc(4px * 5));
    margin-top: calc(-1 * var(--spacing-medium));
  }

  .nt4-l {
    margin-top: calc(-1 * calc(4px * 7));
    margin-top: calc(-1 * var(--spacing-large));
  }

  .nt5-l {
    margin-top: calc(-1 * calc(4px * 10));
    margin-top: calc(-1 * var(--spacing-extra-large));
  }

  .nt6-l {
    margin-top: calc(-1 * calc(4px * 20));
    margin-top: calc(-1 * var(--spacing-extra-extra-large));
  }

  .nt7-l {
    margin-top: calc(-1 * var(--spacing-extra-extra-extra-large));
  }
}

.o-100 {
  opacity: 1;
}

.o-90 {
  opacity: 0.9;
}

.o-80 {
  opacity: 0.8;
}

.o-70 {
  opacity: 0.7;
}

.o-60 {
  opacity: 0.6;
}

.o-50 {
  opacity: 0.5;
}

.o-40 {
  opacity: 0.4;
}

.o-30 {
  opacity: 0.3;
}

.o-20 {
  opacity: 0.2;
}

.o-10 {
  opacity: 0.1;
}

.o-05 {
  opacity: 0.05;
}

.o-025 {
  opacity: 0.025;
}

.o-0 {
  opacity: 0;
}

.static {
  position: static;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.fixed {
  position: fixed;
}

.pa0 {
  padding: 0px;
  padding: var(--spacing-none);
}

.pa1 {
  padding: 4px;
  padding: var(--spacing-extra-small);
}

.pa2 {
  padding: calc(4px * 3);
  padding: var(--spacing-small);
}

.pa3 {
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

.pa4 {
  padding: calc(4px * 7);
  padding: var(--spacing-large);
}

.pa5 {
  padding: calc(4px * 10);
  padding: var(--spacing-extra-large);
}

.pa6 {
  padding: calc(4px * 20);
  padding: var(--spacing-extra-extra-large);
}

.pa7 {
  padding: var(--spacing-extra-extra-extra-large);
}

.pl0 {
  padding-left: 0px;
  padding-left: var(--spacing-none);
}

.pl1 {
  padding-left: 4px;
  padding-left: var(--spacing-extra-small);
}

.pl2 {
  padding-left: calc(4px * 3);
  padding-left: var(--spacing-small);
}

.pl3 {
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
}

.pl4 {
  padding-left: calc(4px * 7);
  padding-left: var(--spacing-large);
}

.pl5 {
  padding-left: calc(4px * 10);
  padding-left: var(--spacing-extra-large);
}

.pl6 {
  padding-left: calc(4px * 20);
  padding-left: var(--spacing-extra-extra-large);
}

.pl7 {
  padding-left: var(--spacing-extra-extra-extra-large);
}

.pr0 {
  padding-right: 0px;
  padding-right: var(--spacing-none);
}

.pr1 {
  padding-right: 4px;
  padding-right: var(--spacing-extra-small);
}

.pr2 {
  padding-right: calc(4px * 3);
  padding-right: var(--spacing-small);
}

.pr3 {
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
}

.pr4 {
  padding-right: calc(4px * 7);
  padding-right: var(--spacing-large);
}

.pr5 {
  padding-right: calc(4px * 10);
  padding-right: var(--spacing-extra-large);
}

.pr6 {
  padding-right: calc(4px * 20);
  padding-right: var(--spacing-extra-extra-large);
}

.pr7 {
  padding-right: var(--spacing-extra-extra-extra-large);
}

.pb0 {
  padding-bottom: 0px;
  padding-bottom: var(--spacing-none);
}

.pb1 {
  padding-bottom: 4px;
  padding-bottom: var(--spacing-extra-small);
}

.pb2 {
  padding-bottom: calc(4px * 3);
  padding-bottom: var(--spacing-small);
}

.pb3 {
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
}

.pb4 {
  padding-bottom: calc(4px * 7);
  padding-bottom: var(--spacing-large);
}

.pb5 {
  padding-bottom: calc(4px * 10);
  padding-bottom: var(--spacing-extra-large);
}

.pb6 {
  padding-bottom: calc(4px * 20);
  padding-bottom: var(--spacing-extra-extra-large);
}

.pb7 {
  padding-bottom: var(--spacing-extra-extra-extra-large);
}

.pt0 {
  padding-top: 0px;
  padding-top: var(--spacing-none);
}

.pt0point5 {
  padding-top: 4px;
  padding-top: var(--spacing-unit);
}

.pt1 {
  padding-top: 4px;
  padding-top: var(--spacing-extra-small);
}

.pt2 {
  padding-top: calc(4px * 3);
  padding-top: var(--spacing-small);
}

.pt3 {
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
}

.pt4 {
  padding-top: calc(4px * 7);
  padding-top: var(--spacing-large);
}

.pt5 {
  padding-top: calc(4px * 10);
  padding-top: var(--spacing-extra-large);
}

.pt6 {
  padding-top: calc(4px * 20);
  padding-top: var(--spacing-extra-extra-large);
}

.pt7 {
  padding-top: var(--spacing-extra-extra-extra-large);
}

.pv0 {
  padding-top: 0px;
  padding-top: var(--spacing-none);
  padding-bottom: 0px;
  padding-bottom: var(--spacing-none);
}

.pv1 {
  padding-top: 4px;
  padding-top: var(--spacing-extra-small);
  padding-bottom: 4px;
  padding-bottom: var(--spacing-extra-small);
}

.pv2 {
  padding-top: calc(4px * 3);
  padding-top: var(--spacing-small);
  padding-bottom: calc(4px * 3);
  padding-bottom: var(--spacing-small);
}

.pv3 {
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
}

.pv4 {
  padding-top: calc(4px * 7);
  padding-top: var(--spacing-large);
  padding-bottom: calc(4px * 7);
  padding-bottom: var(--spacing-large);
}

.pv5 {
  padding-top: calc(4px * 10);
  padding-top: var(--spacing-extra-large);
  padding-bottom: calc(4px * 10);
  padding-bottom: var(--spacing-extra-large);
}

.pv6 {
  padding-top: calc(4px * 20);
  padding-top: var(--spacing-extra-extra-large);
  padding-bottom: calc(4px * 20);
  padding-bottom: var(--spacing-extra-extra-large);
}

.pv7 {
  padding-top: var(--spacing-extra-extra-extra-large);
  padding-bottom: var(--spacing-extra-extra-extra-large);
}

.ph0 {
  padding-left: 0px;
  padding-left: var(--spacing-none);
  padding-right: 0px;
  padding-right: var(--spacing-none);
}

.ph1 {
  padding-left: 4px;
  padding-left: var(--spacing-extra-small);
  padding-right: 4px;
  padding-right: var(--spacing-extra-small);
}

.ph2 {
  padding-left: calc(4px * 3);
  padding-left: var(--spacing-small);
  padding-right: calc(4px * 3);
  padding-right: var(--spacing-small);
}

.ph3 {
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
}

.ph4 {
  padding-left: calc(4px * 7);
  padding-left: var(--spacing-large);
  padding-right: calc(4px * 7);
  padding-right: var(--spacing-large);
}

.ph5 {
  padding-left: calc(4px * 10);
  padding-left: var(--spacing-extra-large);
  padding-right: calc(4px * 10);
  padding-right: var(--spacing-extra-large);
}

.ph6 {
  padding-left: calc(4px * 20);
  padding-left: var(--spacing-extra-extra-large);
  padding-right: calc(4px * 20);
  padding-right: var(--spacing-extra-extra-large);
}

.ph7 {
  padding-left: var(--spacing-extra-extra-extra-large);
  padding-right: var(--spacing-extra-extra-extra-large);
}

.ma0 {
  margin: 0px;
  margin: var(--spacing-none);
}

.ma1 {
  margin: 4px;
  margin: var(--spacing-extra-small);
}

.ma2 {
  margin: calc(4px * 3);
  margin: var(--spacing-small);
}

.ma3 {
  margin: calc(4px * 5);
  margin: var(--spacing-medium);
}

.ma4 {
  margin: calc(4px * 7);
  margin: var(--spacing-large);
}

.ma5 {
  margin: calc(4px * 10);
  margin: var(--spacing-extra-large);
}

.ma6 {
  margin: calc(4px * 20);
  margin: var(--spacing-extra-extra-large);
}

.ma7 {
  margin: var(--spacing-extra-extra-extra-large);
}

.ml0 {
  margin-left: 0px;
  margin-left: var(--spacing-none);
}

.ml1 {
  margin-left: 4px;
  margin-left: var(--spacing-extra-small);
}

.ml2 {
  margin-left: calc(4px * 3);
  margin-left: var(--spacing-small);
}

.ml3 {
  margin-left: calc(4px * 5);
  margin-left: var(--spacing-medium);
}

.ml4 {
  margin-left: calc(4px * 7);
  margin-left: var(--spacing-large);
}

.ml5 {
  margin-left: calc(4px * 10);
  margin-left: var(--spacing-extra-large);
}

.ml6 {
  margin-left: calc(4px * 20);
  margin-left: var(--spacing-extra-extra-large);
}

.ml7 {
  margin-left: var(--spacing-extra-extra-extra-large);
}

.mr0 {
  margin-right: 0px;
  margin-right: var(--spacing-none);
}

.mr1 {
  margin-right: 4px;
  margin-right: var(--spacing-extra-small);
}

.mr2 {
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
}

.mr3 {
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
}

.mr4 {
  margin-right: calc(4px * 7);
  margin-right: var(--spacing-large);
}

.mr5 {
  margin-right: calc(4px * 10);
  margin-right: var(--spacing-extra-large);
}

.mr6 {
  margin-right: calc(4px * 20);
  margin-right: var(--spacing-extra-extra-large);
}

.mr7 {
  margin-right: var(--spacing-extra-extra-extra-large);
}

.mb0 {
  margin-bottom: 0px;
  margin-bottom: var(--spacing-none);
}

.mb1 {
  margin-bottom: 4px;
  margin-bottom: var(--spacing-extra-small);
}

.mb2 {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.mb3 {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.mb4 {
  margin-bottom: calc(4px * 7);
  margin-bottom: var(--spacing-large);
}

.mb5 {
  margin-bottom: calc(4px * 10);
  margin-bottom: var(--spacing-extra-large);
}

.mb6 {
  margin-bottom: calc(4px * 20);
  margin-bottom: var(--spacing-extra-extra-large);
}

.mb7 {
  margin-bottom: var(--spacing-extra-extra-extra-large);
}

.mt0 {
  margin-top: 0px;
  margin-top: var(--spacing-none);
}

.mt1 {
  margin-top: 4px;
  margin-top: var(--spacing-extra-small);
}

.mt2 {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.mt3 {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.mt4 {
  margin-top: calc(4px * 7);
  margin-top: var(--spacing-large);
}

.mt5 {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-extra-large);
}

.mt6 {
  margin-top: calc(4px * 20);
  margin-top: var(--spacing-extra-extra-large);
}

.mt7 {
  margin-top: var(--spacing-extra-extra-extra-large);
}

.mv0 {
  margin-top: 0px;
  margin-top: var(--spacing-none);
  margin-bottom: 0px;
  margin-bottom: var(--spacing-none);
}

.mv1 {
  margin-top: 4px;
  margin-top: var(--spacing-extra-small);
  margin-bottom: 4px;
  margin-bottom: var(--spacing-extra-small);
}

.mv2 {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.mv3 {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.mv4 {
  margin-top: calc(4px * 7);
  margin-top: var(--spacing-large);
  margin-bottom: calc(4px * 7);
  margin-bottom: var(--spacing-large);
}

.mv5 {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-extra-large);
  margin-bottom: calc(4px * 10);
  margin-bottom: var(--spacing-extra-large);
}

.mv6 {
  margin-top: calc(4px * 20);
  margin-top: var(--spacing-extra-extra-large);
  margin-bottom: calc(4px * 20);
  margin-bottom: var(--spacing-extra-extra-large);
}

.mv7 {
  margin-top: var(--spacing-extra-extra-extra-large);
  margin-bottom: var(--spacing-extra-extra-extra-large);
}

.mh0 {
  margin-left: 0px;
  margin-left: var(--spacing-none);
  margin-right: 0px;
  margin-right: var(--spacing-none);
}

.mh1 {
  margin-left: 4px;
  margin-left: var(--spacing-extra-small);
  margin-right: 4px;
  margin-right: var(--spacing-extra-small);
}

.mh2 {
  margin-left: calc(4px * 3);
  margin-left: var(--spacing-small);
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
}

.mh3 {
  margin-left: calc(4px * 5);
  margin-left: var(--spacing-medium);
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
}

.mh4 {
  margin-left: calc(4px * 7);
  margin-left: var(--spacing-large);
  margin-right: calc(4px * 7);
  margin-right: var(--spacing-large);
}

.mh5 {
  margin-left: calc(4px * 10);
  margin-left: var(--spacing-extra-large);
  margin-right: calc(4px * 10);
  margin-right: var(--spacing-extra-large);
}

.mh6 {
  margin-left: calc(4px * 20);
  margin-left: var(--spacing-extra-extra-large);
  margin-right: calc(4px * 20);
  margin-right: var(--spacing-extra-extra-large);
}

.mh7 {
  margin-left: var(--spacing-extra-extra-extra-large);
  margin-right: var(--spacing-extra-extra-extra-large);
}

@media (min-width: 38em) {
  .pa0-ns {
    padding: 0px;
    padding: var(--spacing-none);
  }

  .pa1-ns {
    padding: 4px;
    padding: var(--spacing-extra-small);
  }

  .pa2-ns {
    padding: calc(4px * 3);
    padding: var(--spacing-small);
  }

  .pa3-ns {
    padding: calc(4px * 5);
    padding: var(--spacing-medium);
  }

  .pa4-ns {
    padding: calc(4px * 7);
    padding: var(--spacing-large);
  }

  .pa5-ns {
    padding: calc(4px * 10);
    padding: var(--spacing-extra-large);
  }

  .pa6-ns {
    padding: calc(4px * 20);
    padding: var(--spacing-extra-extra-large);
  }

  .pa7-ns {
    padding: var(--spacing-extra-extra-extra-large);
  }

  .pl0-ns {
    padding-left: 0px;
    padding-left: var(--spacing-none);
  }

  .pl1-ns {
    padding-left: 4px;
    padding-left: var(--spacing-extra-small);
  }

  .pl2-ns {
    padding-left: calc(4px * 3);
    padding-left: var(--spacing-small);
  }

  .pl3-ns {
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
  }

  .pl4-ns {
    padding-left: calc(4px * 7);
    padding-left: var(--spacing-large);
  }

  .pl5-ns {
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
  }

  .pl6-ns {
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
  }

  .pl7-ns {
    padding-left: var(--spacing-extra-extra-extra-large);
  }

  .pr0-ns {
    padding-right: 0px;
    padding-right: var(--spacing-none);
  }

  .pr1-ns {
    padding-right: 4px;
    padding-right: var(--spacing-extra-small);
  }

  .pr2-ns {
    padding-right: calc(4px * 3);
    padding-right: var(--spacing-small);
  }

  .pr3-ns {
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
  }

  .pr4-ns {
    padding-right: calc(4px * 7);
    padding-right: var(--spacing-large);
  }

  .pr5-ns {
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
  }

  .pr6-ns {
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
  }

  .pr7-ns {
    padding-right: var(--spacing-extra-extra-extra-large);
  }

  .pb0-ns {
    padding-bottom: 0px;
    padding-bottom: var(--spacing-none);
  }

  .pb1-ns {
    padding-bottom: 4px;
    padding-bottom: var(--spacing-extra-small);
  }

  .pb2-ns {
    padding-bottom: calc(4px * 3);
    padding-bottom: var(--spacing-small);
  }

  .pb3-ns {
    padding-bottom: calc(4px * 5);
    padding-bottom: var(--spacing-medium);
  }

  .pb4-ns {
    padding-bottom: calc(4px * 7);
    padding-bottom: var(--spacing-large);
  }

  .pb5-ns {
    padding-bottom: calc(4px * 10);
    padding-bottom: var(--spacing-extra-large);
  }

  .pb6-ns {
    padding-bottom: calc(4px * 20);
    padding-bottom: var(--spacing-extra-extra-large);
  }

  .pb7-ns {
    padding-bottom: var(--spacing-extra-extra-extra-large);
  }

  .pt0-ns {
    padding-top: 0px;
    padding-top: var(--spacing-none);
  }

  .pt1-ns {
    padding-top: 4px;
    padding-top: var(--spacing-extra-small);
  }

  .pt2-ns {
    padding-top: calc(4px * 3);
    padding-top: var(--spacing-small);
  }

  .pt3-ns {
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
  }

  .pt4-ns {
    padding-top: calc(4px * 7);
    padding-top: var(--spacing-large);
  }

  .pt5-ns {
    padding-top: calc(4px * 10);
    padding-top: var(--spacing-extra-large);
  }

  .pt6-ns {
    padding-top: calc(4px * 20);
    padding-top: var(--spacing-extra-extra-large);
  }

  .pt7-ns {
    padding-top: var(--spacing-extra-extra-extra-large);
  }

  .pv0-ns {
    padding-top: 0px;
    padding-top: var(--spacing-none);
    padding-bottom: 0px;
    padding-bottom: var(--spacing-none);
  }

  .pv1-ns {
    padding-top: 4px;
    padding-top: var(--spacing-extra-small);
    padding-bottom: 4px;
    padding-bottom: var(--spacing-extra-small);
  }

  .pv2-ns {
    padding-top: calc(4px * 3);
    padding-top: var(--spacing-small);
    padding-bottom: calc(4px * 3);
    padding-bottom: var(--spacing-small);
  }

  .pv3-ns {
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
    padding-bottom: calc(4px * 5);
    padding-bottom: var(--spacing-medium);
  }

  .pv4-ns {
    padding-top: calc(4px * 7);
    padding-top: var(--spacing-large);
    padding-bottom: calc(4px * 7);
    padding-bottom: var(--spacing-large);
  }

  .pv5-ns {
    padding-top: calc(4px * 10);
    padding-top: var(--spacing-extra-large);
    padding-bottom: calc(4px * 10);
    padding-bottom: var(--spacing-extra-large);
  }

  .pv6-ns {
    padding-top: calc(4px * 20);
    padding-top: var(--spacing-extra-extra-large);
    padding-bottom: calc(4px * 20);
    padding-bottom: var(--spacing-extra-extra-large);
  }

  .pv7-ns {
    padding-top: var(--spacing-extra-extra-extra-large);
    padding-bottom: var(--spacing-extra-extra-extra-large);
  }

  .ph0-ns {
    padding-left: 0px;
    padding-left: var(--spacing-none);
    padding-right: 0px;
    padding-right: var(--spacing-none);
  }

  .ph1-ns {
    padding-left: 4px;
    padding-left: var(--spacing-extra-small);
    padding-right: 4px;
    padding-right: var(--spacing-extra-small);
  }

  .ph2-ns {
    padding-left: calc(4px * 3);
    padding-left: var(--spacing-small);
    padding-right: calc(4px * 3);
    padding-right: var(--spacing-small);
  }

  .ph3-ns {
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
  }

  .ph4-ns {
    padding-left: calc(4px * 7);
    padding-left: var(--spacing-large);
    padding-right: calc(4px * 7);
    padding-right: var(--spacing-large);
  }

  .ph5-ns {
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
  }

  .ph6-ns {
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
  }

  .ph7-ns {
    padding-left: var(--spacing-extra-extra-extra-large);
    padding-right: var(--spacing-extra-extra-extra-large);
  }

  .ma0-ns {
    margin: 0px;
    margin: var(--spacing-none);
  }

  .ma1-ns {
    margin: 4px;
    margin: var(--spacing-extra-small);
  }

  .ma2-ns {
    margin: calc(4px * 3);
    margin: var(--spacing-small);
  }

  .ma3-ns {
    margin: calc(4px * 5);
    margin: var(--spacing-medium);
  }

  .ma4-ns {
    margin: calc(4px * 7);
    margin: var(--spacing-large);
  }

  .ma5-ns {
    margin: calc(4px * 10);
    margin: var(--spacing-extra-large);
  }

  .ma6-ns {
    margin: calc(4px * 20);
    margin: var(--spacing-extra-extra-large);
  }

  .ma7-ns {
    margin: var(--spacing-extra-extra-extra-large);
  }

  .ml0-ns {
    margin-left: 0px;
    margin-left: var(--spacing-none);
  }

  .ml1-ns {
    margin-left: 4px;
    margin-left: var(--spacing-extra-small);
  }

  .ml2-ns {
    margin-left: calc(4px * 3);
    margin-left: var(--spacing-small);
  }

  .ml3-ns {
    margin-left: calc(4px * 5);
    margin-left: var(--spacing-medium);
  }

  .ml4-ns {
    margin-left: calc(4px * 7);
    margin-left: var(--spacing-large);
  }

  .ml5-ns {
    margin-left: calc(4px * 10);
    margin-left: var(--spacing-extra-large);
  }

  .ml6-ns {
    margin-left: calc(4px * 20);
    margin-left: var(--spacing-extra-extra-large);
  }

  .ml7-ns {
    margin-left: var(--spacing-extra-extra-extra-large);
  }

  .mr0-ns {
    margin-right: 0px;
    margin-right: var(--spacing-none);
  }

  .mr1-ns {
    margin-right: 4px;
    margin-right: var(--spacing-extra-small);
  }

  .mr2-ns {
    margin-right: calc(4px * 3);
    margin-right: var(--spacing-small);
  }

  .mr3-ns {
    margin-right: calc(4px * 5);
    margin-right: var(--spacing-medium);
  }

  .mr4-ns {
    margin-right: calc(4px * 7);
    margin-right: var(--spacing-large);
  }

  .mr5-ns {
    margin-right: calc(4px * 10);
    margin-right: var(--spacing-extra-large);
  }

  .mr6-ns {
    margin-right: calc(4px * 20);
    margin-right: var(--spacing-extra-extra-large);
  }

  .mr7-ns {
    margin-right: var(--spacing-extra-extra-extra-large);
  }

  .mb0-ns {
    margin-bottom: 0px;
    margin-bottom: var(--spacing-none);
  }

  .mb1-ns {
    margin-bottom: 4px;
    margin-bottom: var(--spacing-extra-small);
  }

  .mb2-ns {
    margin-bottom: calc(4px * 3);
    margin-bottom: var(--spacing-small);
  }

  .mb3-ns {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }

  .mb4-ns {
    margin-bottom: calc(4px * 7);
    margin-bottom: var(--spacing-large);
  }

  .mb5-ns {
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-extra-large);
  }

  .mb6-ns {
    margin-bottom: calc(4px * 20);
    margin-bottom: var(--spacing-extra-extra-large);
  }

  .mb7-ns {
    margin-bottom: var(--spacing-extra-extra-extra-large);
  }

  .mt0-ns {
    margin-top: 0px;
    margin-top: var(--spacing-none);
  }

  .mt1-ns {
    margin-top: 4px;
    margin-top: var(--spacing-extra-small);
  }

  .mt2-ns {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small);
  }

  .mt3-ns {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }

  .mt4-ns {
    margin-top: calc(4px * 7);
    margin-top: var(--spacing-large);
  }

  .mt5-ns {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-extra-large);
  }

  .mt6-ns {
    margin-top: calc(4px * 20);
    margin-top: var(--spacing-extra-extra-large);
  }

  .mt7-ns {
    margin-top: var(--spacing-extra-extra-extra-large);
  }

  .mv0-ns {
    margin-top: 0px;
    margin-top: var(--spacing-none);
    margin-bottom: 0px;
    margin-bottom: var(--spacing-none);
  }

  .mv1-ns {
    margin-top: 4px;
    margin-top: var(--spacing-extra-small);
    margin-bottom: 4px;
    margin-bottom: var(--spacing-extra-small);
  }

  .mv2-ns {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small);
    margin-bottom: calc(4px * 3);
    margin-bottom: var(--spacing-small);
  }

  .mv3-ns {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }

  .mv4-ns {
    margin-top: calc(4px * 7);
    margin-top: var(--spacing-large);
    margin-bottom: calc(4px * 7);
    margin-bottom: var(--spacing-large);
  }

  .mv5-ns {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-extra-large);
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-extra-large);
  }

  .mv6-ns {
    margin-top: calc(4px * 20);
    margin-top: var(--spacing-extra-extra-large);
    margin-bottom: calc(4px * 20);
    margin-bottom: var(--spacing-extra-extra-large);
  }

  .mv7-ns {
    margin-top: var(--spacing-extra-extra-extra-large);
    margin-bottom: var(--spacing-extra-extra-extra-large);
  }

  .mh0-ns {
    margin-left: 0px;
    margin-left: var(--spacing-none);
    margin-right: 0px;
    margin-right: var(--spacing-none);
  }

  .mh1-ns {
    margin-left: 4px;
    margin-left: var(--spacing-extra-small);
    margin-right: 4px;
    margin-right: var(--spacing-extra-small);
  }

  .mh2-ns {
    margin-left: calc(4px * 3);
    margin-left: var(--spacing-small);
    margin-right: calc(4px * 3);
    margin-right: var(--spacing-small);
  }

  .mh3-ns {
    margin-left: calc(4px * 5);
    margin-left: var(--spacing-medium);
    margin-right: calc(4px * 5);
    margin-right: var(--spacing-medium);
  }

  .mh4-ns {
    margin-left: calc(4px * 7);
    margin-left: var(--spacing-large);
    margin-right: calc(4px * 7);
    margin-right: var(--spacing-large);
  }

  .mh5-ns {
    margin-left: calc(4px * 10);
    margin-left: var(--spacing-extra-large);
    margin-right: calc(4px * 10);
    margin-right: var(--spacing-extra-large);
  }

  .mh6-ns {
    margin-left: calc(4px * 20);
    margin-left: var(--spacing-extra-extra-large);
    margin-right: calc(4px * 20);
    margin-right: var(--spacing-extra-extra-large);
  }

  .mh7-ns {
    margin-left: var(--spacing-extra-extra-extra-large);
    margin-right: var(--spacing-extra-extra-extra-large);
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .pa0-m {
    padding: 0px;
    padding: var(--spacing-none);
  }

  .pa1-m {
    padding: 4px;
    padding: var(--spacing-extra-small);
  }

  .pa2-m {
    padding: calc(4px * 3);
    padding: var(--spacing-small);
  }

  .pa3-m {
    padding: calc(4px * 5);
    padding: var(--spacing-medium);
  }

  .pa4-m {
    padding: calc(4px * 7);
    padding: var(--spacing-large);
  }

  .pa5-m {
    padding: calc(4px * 10);
    padding: var(--spacing-extra-large);
  }

  .pa6-m {
    padding: calc(4px * 20);
    padding: var(--spacing-extra-extra-large);
  }

  .pa7-m {
    padding: var(--spacing-extra-extra-extra-large);
  }

  .pl0-m {
    padding-left: 0px;
    padding-left: var(--spacing-none);
  }

  .pl1-m {
    padding-left: 4px;
    padding-left: var(--spacing-extra-small);
  }

  .pl2-m {
    padding-left: calc(4px * 3);
    padding-left: var(--spacing-small);
  }

  .pl3-m {
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
  }

  .pl4-m {
    padding-left: calc(4px * 7);
    padding-left: var(--spacing-large);
  }

  .pl5-m {
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
  }

  .pl6-m {
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
  }

  .pl7-m {
    padding-left: var(--spacing-extra-extra-extra-large);
  }

  .pr0-m {
    padding-right: 0px;
    padding-right: var(--spacing-none);
  }

  .pr1-m {
    padding-right: 4px;
    padding-right: var(--spacing-extra-small);
  }

  .pr2-m {
    padding-right: calc(4px * 3);
    padding-right: var(--spacing-small);
  }

  .pr3-m {
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
  }

  .pr4-m {
    padding-right: calc(4px * 7);
    padding-right: var(--spacing-large);
  }

  .pr5-m {
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
  }

  .pr6-m {
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
  }

  .pr7-m {
    padding-right: var(--spacing-extra-extra-extra-large);
  }

  .pb0-m {
    padding-bottom: 0px;
    padding-bottom: var(--spacing-none);
  }

  .pb1-m {
    padding-bottom: 4px;
    padding-bottom: var(--spacing-extra-small);
  }

  .pb2-m {
    padding-bottom: calc(4px * 3);
    padding-bottom: var(--spacing-small);
  }

  .pb3-m {
    padding-bottom: calc(4px * 5);
    padding-bottom: var(--spacing-medium);
  }

  .pb4-m {
    padding-bottom: calc(4px * 7);
    padding-bottom: var(--spacing-large);
  }

  .pb5-m {
    padding-bottom: calc(4px * 10);
    padding-bottom: var(--spacing-extra-large);
  }

  .pb6-m {
    padding-bottom: calc(4px * 20);
    padding-bottom: var(--spacing-extra-extra-large);
  }

  .pb7-m {
    padding-bottom: var(--spacing-extra-extra-extra-large);
  }

  .pt0-m {
    padding-top: 0px;
    padding-top: var(--spacing-none);
  }

  .pt1-m {
    padding-top: 4px;
    padding-top: var(--spacing-extra-small);
  }

  .pt2-m {
    padding-top: calc(4px * 3);
    padding-top: var(--spacing-small);
  }

  .pt3-m {
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
  }

  .pt4-m {
    padding-top: calc(4px * 7);
    padding-top: var(--spacing-large);
  }

  .pt5-m {
    padding-top: calc(4px * 10);
    padding-top: var(--spacing-extra-large);
  }

  .pt6-m {
    padding-top: calc(4px * 20);
    padding-top: var(--spacing-extra-extra-large);
  }

  .pt7-m {
    padding-top: var(--spacing-extra-extra-extra-large);
  }

  .pv0-m {
    padding-top: 0px;
    padding-top: var(--spacing-none);
    padding-bottom: 0px;
    padding-bottom: var(--spacing-none);
  }

  .pv1-m {
    padding-top: 4px;
    padding-top: var(--spacing-extra-small);
    padding-bottom: 4px;
    padding-bottom: var(--spacing-extra-small);
  }

  .pv2-m {
    padding-top: calc(4px * 3);
    padding-top: var(--spacing-small);
    padding-bottom: calc(4px * 3);
    padding-bottom: var(--spacing-small);
  }

  .pv3-m {
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
    padding-bottom: calc(4px * 5);
    padding-bottom: var(--spacing-medium);
  }

  .pv4-m {
    padding-top: calc(4px * 7);
    padding-top: var(--spacing-large);
    padding-bottom: calc(4px * 7);
    padding-bottom: var(--spacing-large);
  }

  .pv5-m {
    padding-top: calc(4px * 10);
    padding-top: var(--spacing-extra-large);
    padding-bottom: calc(4px * 10);
    padding-bottom: var(--spacing-extra-large);
  }

  .pv6-m {
    padding-top: calc(4px * 20);
    padding-top: var(--spacing-extra-extra-large);
    padding-bottom: calc(4px * 20);
    padding-bottom: var(--spacing-extra-extra-large);
  }

  .pv7-m {
    padding-top: var(--spacing-extra-extra-extra-large);
    padding-bottom: var(--spacing-extra-extra-extra-large);
  }

  .ph0-m {
    padding-left: 0px;
    padding-left: var(--spacing-none);
    padding-right: 0px;
    padding-right: var(--spacing-none);
  }

  .ph1-m {
    padding-left: 4px;
    padding-left: var(--spacing-extra-small);
    padding-right: 4px;
    padding-right: var(--spacing-extra-small);
  }

  .ph2-m {
    padding-left: calc(4px * 3);
    padding-left: var(--spacing-small);
    padding-right: calc(4px * 3);
    padding-right: var(--spacing-small);
  }

  .ph3-m {
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
  }

  .ph4-m {
    padding-left: calc(4px * 7);
    padding-left: var(--spacing-large);
    padding-right: calc(4px * 7);
    padding-right: var(--spacing-large);
  }

  .ph5-m {
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
  }

  .ph6-m {
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
  }

  .ph7-m {
    padding-left: var(--spacing-extra-extra-extra-large);
    padding-right: var(--spacing-extra-extra-extra-large);
  }

  .ma0-m {
    margin: 0px;
    margin: var(--spacing-none);
  }

  .ma1-m {
    margin: 4px;
    margin: var(--spacing-extra-small);
  }

  .ma2-m {
    margin: calc(4px * 3);
    margin: var(--spacing-small);
  }

  .ma3-m {
    margin: calc(4px * 5);
    margin: var(--spacing-medium);
  }

  .ma4-m {
    margin: calc(4px * 7);
    margin: var(--spacing-large);
  }

  .ma5-m {
    margin: calc(4px * 10);
    margin: var(--spacing-extra-large);
  }

  .ma6-m {
    margin: calc(4px * 20);
    margin: var(--spacing-extra-extra-large);
  }

  .ma7-m {
    margin: var(--spacing-extra-extra-extra-large);
  }

  .ml0-m {
    margin-left: 0px;
    margin-left: var(--spacing-none);
  }

  .ml1-m {
    margin-left: 4px;
    margin-left: var(--spacing-extra-small);
  }

  .ml2-m {
    margin-left: calc(4px * 3);
    margin-left: var(--spacing-small);
  }

  .ml3-m {
    margin-left: calc(4px * 5);
    margin-left: var(--spacing-medium);
  }

  .ml4-m {
    margin-left: calc(4px * 7);
    margin-left: var(--spacing-large);
  }

  .ml5-m {
    margin-left: calc(4px * 10);
    margin-left: var(--spacing-extra-large);
  }

  .ml6-m {
    margin-left: calc(4px * 20);
    margin-left: var(--spacing-extra-extra-large);
  }

  .ml7-m {
    margin-left: var(--spacing-extra-extra-extra-large);
  }

  .mr0-m {
    margin-right: 0px;
    margin-right: var(--spacing-none);
  }

  .mr1-m {
    margin-right: 4px;
    margin-right: var(--spacing-extra-small);
  }

  .mr2-m {
    margin-right: calc(4px * 3);
    margin-right: var(--spacing-small);
  }

  .mr3-m {
    margin-right: calc(4px * 5);
    margin-right: var(--spacing-medium);
  }

  .mr4-m {
    margin-right: calc(4px * 7);
    margin-right: var(--spacing-large);
  }

  .mr5-m {
    margin-right: calc(4px * 10);
    margin-right: var(--spacing-extra-large);
  }

  .mr6-m {
    margin-right: calc(4px * 20);
    margin-right: var(--spacing-extra-extra-large);
  }

  .mr7-m {
    margin-right: var(--spacing-extra-extra-extra-large);
  }

  .mb0-m {
    margin-bottom: 0px;
    margin-bottom: var(--spacing-none);
  }

  .mb1-m {
    margin-bottom: 4px;
    margin-bottom: var(--spacing-extra-small);
  }

  .mb2-m {
    margin-bottom: calc(4px * 3);
    margin-bottom: var(--spacing-small);
  }

  .mb3-m {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }

  .mb4-m {
    margin-bottom: calc(4px * 7);
    margin-bottom: var(--spacing-large);
  }

  .mb5-m {
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-extra-large);
  }

  .mb6-m {
    margin-bottom: calc(4px * 20);
    margin-bottom: var(--spacing-extra-extra-large);
  }

  .mb7-m {
    margin-bottom: var(--spacing-extra-extra-extra-large);
  }

  .mt0-m {
    margin-top: 0px;
    margin-top: var(--spacing-none);
  }

  .mt1-m {
    margin-top: 4px;
    margin-top: var(--spacing-extra-small);
  }

  .mt2-m {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small);
  }

  .mt3-m {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }

  .mt4-m {
    margin-top: calc(4px * 7);
    margin-top: var(--spacing-large);
  }

  .mt5-m {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-extra-large);
  }

  .mt6-m {
    margin-top: calc(4px * 20);
    margin-top: var(--spacing-extra-extra-large);
  }

  .mt7-m {
    margin-top: var(--spacing-extra-extra-extra-large);
  }

  .mv0-m {
    margin-top: 0px;
    margin-top: var(--spacing-none);
    margin-bottom: 0px;
    margin-bottom: var(--spacing-none);
  }

  .mv1-m {
    margin-top: 4px;
    margin-top: var(--spacing-extra-small);
    margin-bottom: 4px;
    margin-bottom: var(--spacing-extra-small);
  }

  .mv2-m {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small);
    margin-bottom: calc(4px * 3);
    margin-bottom: var(--spacing-small);
  }

  .mv3-m {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }

  .mv4-m {
    margin-top: calc(4px * 7);
    margin-top: var(--spacing-large);
    margin-bottom: calc(4px * 7);
    margin-bottom: var(--spacing-large);
  }

  .mv5-m {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-extra-large);
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-extra-large);
  }

  .mv6-m {
    margin-top: calc(4px * 20);
    margin-top: var(--spacing-extra-extra-large);
    margin-bottom: calc(4px * 20);
    margin-bottom: var(--spacing-extra-extra-large);
  }

  .mv7-m {
    margin-top: var(--spacing-extra-extra-extra-large);
    margin-bottom: var(--spacing-extra-extra-extra-large);
  }

  .mh0-m {
    margin-left: 0px;
    margin-left: var(--spacing-none);
    margin-right: 0px;
    margin-right: var(--spacing-none);
  }

  .mh1-m {
    margin-left: 4px;
    margin-left: var(--spacing-extra-small);
    margin-right: 4px;
    margin-right: var(--spacing-extra-small);
  }

  .mh2-m {
    margin-left: calc(4px * 3);
    margin-left: var(--spacing-small);
    margin-right: calc(4px * 3);
    margin-right: var(--spacing-small);
  }

  .mh3-m {
    margin-left: calc(4px * 5);
    margin-left: var(--spacing-medium);
    margin-right: calc(4px * 5);
    margin-right: var(--spacing-medium);
  }

  .mh4-m {
    margin-left: calc(4px * 7);
    margin-left: var(--spacing-large);
    margin-right: calc(4px * 7);
    margin-right: var(--spacing-large);
  }

  .mh5-m {
    margin-left: calc(4px * 10);
    margin-left: var(--spacing-extra-large);
    margin-right: calc(4px * 10);
    margin-right: var(--spacing-extra-large);
  }

  .mh6-m {
    margin-left: calc(4px * 20);
    margin-left: var(--spacing-extra-extra-large);
    margin-right: calc(4px * 20);
    margin-right: var(--spacing-extra-extra-large);
  }

  .mh7-m {
    margin-left: var(--spacing-extra-extra-extra-large);
    margin-right: var(--spacing-extra-extra-extra-large);
  }
}

@media (min-width: 60em) {
  .pa0-l {
    padding: 0px;
    padding: var(--spacing-none);
  }

  .pa1-l {
    padding: 4px;
    padding: var(--spacing-extra-small);
  }

  .pa2-l {
    padding: calc(4px * 3);
    padding: var(--spacing-small);
  }

  .pa3-l {
    padding: calc(4px * 5);
    padding: var(--spacing-medium);
  }

  .pa4-l {
    padding: calc(4px * 7);
    padding: var(--spacing-large);
  }

  .pa5-l {
    padding: calc(4px * 10);
    padding: var(--spacing-extra-large);
  }

  .pa6-l {
    padding: calc(4px * 20);
    padding: var(--spacing-extra-extra-large);
  }

  .pa7-l {
    padding: var(--spacing-extra-extra-extra-large);
  }

  .pl0-l {
    padding-left: 0px;
    padding-left: var(--spacing-none);
  }

  .pl1-l {
    padding-left: 4px;
    padding-left: var(--spacing-extra-small);
  }

  .pl2-l {
    padding-left: calc(4px * 3);
    padding-left: var(--spacing-small);
  }

  .pl3-l {
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
  }

  .pl4-l {
    padding-left: calc(4px * 7);
    padding-left: var(--spacing-large);
  }

  .pl5-l {
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
  }

  .pl6-l {
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
  }

  .pl7-l {
    padding-left: var(--spacing-extra-extra-extra-large);
  }

  .pr0-l {
    padding-right: 0px;
    padding-right: var(--spacing-none);
  }

  .pr1-l {
    padding-right: 4px;
    padding-right: var(--spacing-extra-small);
  }

  .pr2-l {
    padding-right: calc(4px * 3);
    padding-right: var(--spacing-small);
  }

  .pr3-l {
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
  }

  .pr4-l {
    padding-right: calc(4px * 7);
    padding-right: var(--spacing-large);
  }

  .pr5-l {
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
  }

  .pr6-l {
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
  }

  .pr7-l {
    padding-right: var(--spacing-extra-extra-extra-large);
  }

  .pb0-l {
    padding-bottom: 0px;
    padding-bottom: var(--spacing-none);
  }

  .pb1-l {
    padding-bottom: 4px;
    padding-bottom: var(--spacing-extra-small);
  }

  .pb2-l {
    padding-bottom: calc(4px * 3);
    padding-bottom: var(--spacing-small);
  }

  .pb3-l {
    padding-bottom: calc(4px * 5);
    padding-bottom: var(--spacing-medium);
  }

  .pb4-l {
    padding-bottom: calc(4px * 7);
    padding-bottom: var(--spacing-large);
  }

  .pb5-l {
    padding-bottom: calc(4px * 10);
    padding-bottom: var(--spacing-extra-large);
  }

  .pb6-l {
    padding-bottom: calc(4px * 20);
    padding-bottom: var(--spacing-extra-extra-large);
  }

  .pb7-l {
    padding-bottom: var(--spacing-extra-extra-extra-large);
  }

  .pt0-l {
    padding-top: 0px;
    padding-top: var(--spacing-none);
  }

  .pt1-l {
    padding-top: 4px;
    padding-top: var(--spacing-extra-small);
  }

  .pt2-l {
    padding-top: calc(4px * 3);
    padding-top: var(--spacing-small);
  }

  .pt3-l {
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
  }

  .pt4-l {
    padding-top: calc(4px * 7);
    padding-top: var(--spacing-large);
  }

  .pt5-l {
    padding-top: calc(4px * 10);
    padding-top: var(--spacing-extra-large);
  }

  .pt6-l {
    padding-top: calc(4px * 20);
    padding-top: var(--spacing-extra-extra-large);
  }

  .pt7-l {
    padding-top: var(--spacing-extra-extra-extra-large);
  }

  .pv0-l {
    padding-top: 0px;
    padding-top: var(--spacing-none);
    padding-bottom: 0px;
    padding-bottom: var(--spacing-none);
  }

  .pv1-l {
    padding-top: 4px;
    padding-top: var(--spacing-extra-small);
    padding-bottom: 4px;
    padding-bottom: var(--spacing-extra-small);
  }

  .pv2-l {
    padding-top: calc(4px * 3);
    padding-top: var(--spacing-small);
    padding-bottom: calc(4px * 3);
    padding-bottom: var(--spacing-small);
  }

  .pv3-l {
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
    padding-bottom: calc(4px * 5);
    padding-bottom: var(--spacing-medium);
  }

  .pv4-l {
    padding-top: calc(4px * 7);
    padding-top: var(--spacing-large);
    padding-bottom: calc(4px * 7);
    padding-bottom: var(--spacing-large);
  }

  .pv5-l {
    padding-top: calc(4px * 10);
    padding-top: var(--spacing-extra-large);
    padding-bottom: calc(4px * 10);
    padding-bottom: var(--spacing-extra-large);
  }

  .pv6-l {
    padding-top: calc(4px * 20);
    padding-top: var(--spacing-extra-extra-large);
    padding-bottom: calc(4px * 20);
    padding-bottom: var(--spacing-extra-extra-large);
  }

  .pv7-l {
    padding-top: var(--spacing-extra-extra-extra-large);
    padding-bottom: var(--spacing-extra-extra-extra-large);
  }

  .ph0-l {
    padding-left: 0px;
    padding-left: var(--spacing-none);
    padding-right: 0px;
    padding-right: var(--spacing-none);
  }

  .ph1-l {
    padding-left: 4px;
    padding-left: var(--spacing-extra-small);
    padding-right: 4px;
    padding-right: var(--spacing-extra-small);
  }

  .ph2-l {
    padding-left: calc(4px * 3);
    padding-left: var(--spacing-small);
    padding-right: calc(4px * 3);
    padding-right: var(--spacing-small);
  }

  .ph3-l {
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
  }

  .ph4-l {
    padding-left: calc(4px * 7);
    padding-left: var(--spacing-large);
    padding-right: calc(4px * 7);
    padding-right: var(--spacing-large);
  }

  .ph5-l {
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
  }

  .ph6-l {
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
  }

  .ph7-l {
    padding-left: var(--spacing-extra-extra-extra-large);
    padding-right: var(--spacing-extra-extra-extra-large);
  }

  .ma0-l {
    margin: 0px;
    margin: var(--spacing-none);
  }

  .ma1-l {
    margin: 4px;
    margin: var(--spacing-extra-small);
  }

  .ma2-l {
    margin: calc(4px * 3);
    margin: var(--spacing-small);
  }

  .ma3-l {
    margin: calc(4px * 5);
    margin: var(--spacing-medium);
  }

  .ma4-l {
    margin: calc(4px * 7);
    margin: var(--spacing-large);
  }

  .ma5-l {
    margin: calc(4px * 10);
    margin: var(--spacing-extra-large);
  }

  .ma6-l {
    margin: calc(4px * 20);
    margin: var(--spacing-extra-extra-large);
  }

  .ma7-l {
    margin: var(--spacing-extra-extra-extra-large);
  }

  .ml0-l {
    margin-left: 0px;
    margin-left: var(--spacing-none);
  }

  .ml1-l {
    margin-left: 4px;
    margin-left: var(--spacing-extra-small);
  }

  .ml2-l {
    margin-left: calc(4px * 3);
    margin-left: var(--spacing-small);
  }

  .ml3-l {
    margin-left: calc(4px * 5);
    margin-left: var(--spacing-medium);
  }

  .ml4-l {
    margin-left: calc(4px * 7);
    margin-left: var(--spacing-large);
  }

  .ml5-l {
    margin-left: calc(4px * 10);
    margin-left: var(--spacing-extra-large);
  }

  .ml6-l {
    margin-left: calc(4px * 20);
    margin-left: var(--spacing-extra-extra-large);
  }

  .ml7-l {
    margin-left: var(--spacing-extra-extra-extra-large);
  }

  .mr0-l {
    margin-right: 0px;
    margin-right: var(--spacing-none);
  }

  .mr1-l {
    margin-right: 4px;
    margin-right: var(--spacing-extra-small);
  }

  .mr2-l {
    margin-right: calc(4px * 3);
    margin-right: var(--spacing-small);
  }

  .mr3-l {
    margin-right: calc(4px * 5);
    margin-right: var(--spacing-medium);
  }

  .mr4-l {
    margin-right: calc(4px * 7);
    margin-right: var(--spacing-large);
  }

  .mr5-l {
    margin-right: calc(4px * 10);
    margin-right: var(--spacing-extra-large);
  }

  .mr6-l {
    margin-right: calc(4px * 20);
    margin-right: var(--spacing-extra-extra-large);
  }

  .mr7-l {
    margin-right: var(--spacing-extra-extra-extra-large);
  }

  .mb0-l {
    margin-bottom: 0px;
    margin-bottom: var(--spacing-none);
  }

  .mb1-l {
    margin-bottom: 4px;
    margin-bottom: var(--spacing-extra-small);
  }

  .mb2-l {
    margin-bottom: calc(4px * 3);
    margin-bottom: var(--spacing-small);
  }

  .mb3-l {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }

  .mb4-l {
    margin-bottom: calc(4px * 7);
    margin-bottom: var(--spacing-large);
  }

  .mb5-l {
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-extra-large);
  }

  .mb6-l {
    margin-bottom: calc(4px * 20);
    margin-bottom: var(--spacing-extra-extra-large);
  }

  .mb7-l {
    margin-bottom: var(--spacing-extra-extra-extra-large);
  }

  .mt0-l {
    margin-top: 0px;
    margin-top: var(--spacing-none);
  }

  .mt1-l {
    margin-top: 4px;
    margin-top: var(--spacing-extra-small);
  }

  .mt2-l {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small);
  }

  .mt3-l {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }

  .mt4-l {
    margin-top: calc(4px * 7);
    margin-top: var(--spacing-large);
  }

  .mt5-l {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-extra-large);
  }

  .mt6-l {
    margin-top: calc(4px * 20);
    margin-top: var(--spacing-extra-extra-large);
  }

  .mt7-l {
    margin-top: var(--spacing-extra-extra-extra-large);
  }

  .mv0-l {
    margin-top: 0px;
    margin-top: var(--spacing-none);
    margin-bottom: 0px;
    margin-bottom: var(--spacing-none);
  }

  .mv1-l {
    margin-top: 4px;
    margin-top: var(--spacing-extra-small);
    margin-bottom: 4px;
    margin-bottom: var(--spacing-extra-small);
  }

  .mv2-l {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small);
    margin-bottom: calc(4px * 3);
    margin-bottom: var(--spacing-small);
  }

  .mv3-l {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }

  .mv4-l {
    margin-top: calc(4px * 7);
    margin-top: var(--spacing-large);
    margin-bottom: calc(4px * 7);
    margin-bottom: var(--spacing-large);
  }

  .mv5-l {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-extra-large);
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-extra-large);
  }

  .mv6-l {
    margin-top: calc(4px * 20);
    margin-top: var(--spacing-extra-extra-large);
    margin-bottom: calc(4px * 20);
    margin-bottom: var(--spacing-extra-extra-large);
  }

  .mv7-l {
    margin-top: var(--spacing-extra-extra-extra-large);
    margin-bottom: var(--spacing-extra-extra-extra-large);
  }

  .mh0-l {
    margin-left: 0px;
    margin-left: var(--spacing-none);
    margin-right: 0px;
    margin-right: var(--spacing-none);
  }

  .mh1-l {
    margin-left: 4px;
    margin-left: var(--spacing-extra-small);
    margin-right: 4px;
    margin-right: var(--spacing-extra-small);
  }

  .mh2-l {
    margin-left: calc(4px * 3);
    margin-left: var(--spacing-small);
    margin-right: calc(4px * 3);
    margin-right: var(--spacing-small);
  }

  .mh3-l {
    margin-left: calc(4px * 5);
    margin-left: var(--spacing-medium);
    margin-right: calc(4px * 5);
    margin-right: var(--spacing-medium);
  }

  .mh4-l {
    margin-left: calc(4px * 7);
    margin-left: var(--spacing-large);
    margin-right: calc(4px * 7);
    margin-right: var(--spacing-large);
  }

  .mh5-l {
    margin-left: calc(4px * 10);
    margin-left: var(--spacing-extra-large);
    margin-right: calc(4px * 10);
    margin-right: var(--spacing-extra-large);
  }

  .mh6-l {
    margin-left: calc(4px * 20);
    margin-left: var(--spacing-extra-extra-large);
    margin-right: calc(4px * 20);
    margin-right: var(--spacing-extra-extra-large);
  }

  .mh7-l {
    margin-left: var(--spacing-extra-extra-extra-large);
    margin-right: var(--spacing-extra-extra-extra-large);
  }
}

.tl {
  text-align: left;
}

.tr {
  text-align: right;
}

.tc {
  text-align: center;
}

.tj {
  text-align: justify;
}

@media (min-width: 38em) {
  .tl-ns {
    text-align: left;
  }

  .tr-ns {
    text-align: right;
  }

  .tc-ns {
    text-align: center;
  }

  .tj-ns {
    text-align: justify;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .tl-m {
    text-align: left;
  }

  .tr-m {
    text-align: right;
  }

  .tc-m {
    text-align: center;
  }

  .tj-m {
    text-align: justify;
  }
}

@media (min-width: 60em) {
  .tl-l {
    text-align: left;
  }

  .tr-l {
    text-align: right;
  }

  .tc-l {
    text-align: center;
  }

  .tj-l {
    text-align: justify;
  }
}

.strike {
  text-decoration: line-through;
}

.underline {
  text-decoration: underline;
}

.no-underline {
  text-decoration: none;
}

.ttc {
  text-transform: capitalize;
}

.ttl {
  text-transform: lowercase;
}

.ttu {
  text-transform: uppercase;
}

.ttn {
  text-transform: none;
}

.measure {
  max-width: 34em;
}

.measure-wide {
  max-width: 40em;
}

.measure-narrow {
  max-width: 20em;
}

.center {
  margin-right: auto;
  margin-left: auto;
}

.ml-auto {
  margin-left: auto;
}

.mr-auto {
  margin-right: auto;
}

.w1 {
  width: 1rem;
}

.w2 {
  width: 2rem;
}

.w3 {
  width: 4rem;
}

.w4 {
  width: 8rem;
}

.w5 {
  width: 16rem;
}

.w-10 {
  width: 10%;
}

.w-20 {
  width: 20%;
}

.w-25 {
  width: 25%;
}

.w-30 {
  width: 30%;
}

.w-33 {
  width: 33%;
}

.w-34 {
  width: 34%;
}

.w-40 {
  width: 40%;
}

.w-50 {
  width: 50%;
}

.w-60 {
  width: 60%;
}

.w-70 {
  width: 70%;
}

.w-75 {
  width: 75%;
}

.w-80 {
  width: 80%;
}

.w-90 {
  width: 90%;
}

.w-100 {
  width: 100%;
}

.w-third {
  width: calc(100% / 3);
}

.w-two-thirds {
  width: calc(100% / 1.5);
}

.w-auto {
  width: auto;
}

@media (min-width: 38em) {
  .w1-ns {
    width: 1rem;
  }

  .w2-ns {
    width: 2rem;
  }

  .w3-ns {
    width: 4rem;
  }

  .w4-ns {
    width: 8rem;
  }

  .w5-ns {
    width: 16rem;
  }

  .w-10-ns {
    width: 10%;
  }

  .w-20-ns {
    width: 20%;
  }

  .w-25-ns {
    width: 25%;
  }

  .w-30-ns {
    width: 30%;
  }

  .w-33-ns {
    width: 33%;
  }

  .w-34-ns {
    width: 34%;
  }

  .w-40-ns {
    width: 40%;
  }

  .w-50-ns {
    width: 50%;
  }

  .w-60-ns {
    width: 60%;
  }

  .w-70-ns {
    width: 70%;
  }

  .w-75-ns {
    width: 75%;
  }

  .w-80-ns {
    width: 80%;
  }

  .w-90-ns {
    width: 90%;
  }

  .w-100-ns {
    width: 100%;
  }

  .w-third-ns {
    width: calc(100% / 3);
  }

  .w-two-thirds-ns {
    width: calc(100% / 1.5);
  }

  .w-auto-ns {
    width: auto;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .w1-m {
    width: 1rem;
  }

  .w2-m {
    width: 2rem;
  }

  .w3-m {
    width: 4rem;
  }

  .w4-m {
    width: 8rem;
  }

  .w5-m {
    width: 16rem;
  }

  .w-10-m {
    width: 10%;
  }

  .w-20-m {
    width: 20%;
  }

  .w-25-m {
    width: 25%;
  }

  .w-30-m {
    width: 30%;
  }

  .w-33-m {
    width: 33%;
  }

  .w-34-m {
    width: 34%;
  }

  .w-40-m {
    width: 40%;
  }

  .w-50-m {
    width: 50%;
  }

  .w-60-m {
    width: 60%;
  }

  .w-70-m {
    width: 70%;
  }

  .w-75-m {
    width: 75%;
  }

  .w-80-m {
    width: 80%;
  }

  .w-90-m {
    width: 90%;
  }

  .w-100-m {
    width: 100%;
  }

  .w-third-m {
    width: calc(100% / 3);
  }

  .w-two-thirds-m {
    width: calc(100% / 1.5);
  }

  .w-auto-m {
    width: auto;
  }
}

@media (min-width: 60em) {
  .w1-l {
    width: 1rem;
  }

  .w2-l {
    width: 2rem;
  }

  .w3-l {
    width: 4rem;
  }

  .w4-l {
    width: 8rem;
  }

  .w5-l {
    width: 16rem;
  }

  .w-10-l {
    width: 10%;
  }

  .w-20-l {
    width: 20%;
  }

  .w-25-l {
    width: 25%;
  }

  .w-30-l {
    width: 30%;
  }

  .w-33-l {
    width: 33%;
  }

  .w-34-l {
    width: 34%;
  }

  .w-40-l {
    width: 40%;
  }

  .w-50-l {
    width: 50%;
  }

  .w-60-l {
    width: 60%;
  }

  .w-70-l {
    width: 70%;
  }

  .w-75-l {
    width: 75%;
  }

  .w-80-l {
    width: 80%;
  }

  .w-90-l {
    width: 90%;
  }

  .w-100-l {
    width: 100%;
  }

  .w-third-l {
    width: calc(100% / 3);
  }

  .w-two-thirds-l {
    width: calc(100% / 1.5);
  }

  .w-auto-l {
    width: auto;
  }
}

.z-0 {
  z-index: 0;
}

.z-1 {
  z-index: 1;
}

.z-2 {
  z-index: 2;
}

.z-3 {
  z-index: 3;
}

.z-4 {
  z-index: 4;
}

.z-5 {
  z-index: 5;
}

.z-999 {
  z-index: 999;
}

.z-9999 {
  z-index: 9999;
}

.z-max {
  z-index: 2147483647;
}

.z-inherit {
  z-index: inherit;
}

.z-initial {
  z-index: auto;
  z-index: initial;
}

.z-unset {
  z-index: unset;
}

.footer {
  background-color: var(--color-footer-bg);
  color: var(--color-footer-text);
  padding-top: calc(4px * 10);
  padding-top: var(--spacing-extra-large);
  padding-bottom: calc(4px * 10);
  padding-bottom: var(--spacing-extra-large);
}

@media (min-width: 60em) {
  .footer {
    padding-top: calc(4px * 20);
    padding-top: var(--spacing-extra-extra-large);
    padding-bottom: calc(4px * 20);
    padding-bottom: var(--spacing-extra-extra-large);
  }
}

.footer__container {
  max-width: 3000px;
  max-width: var(--max-width);
  margin: 0 auto;
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
}

@media (min-width: 38em) and (max-width: 60em) {
  .footer__container {
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .footer__container {
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
  }
}

.footer__payment-icon {
  display: inline-block;
  width: 40px;
  margin-right: 6px;
}

.footer__payment-icon:last-of-type {
  margin-right: 0;
}

.footer__payment-icon svg {
  display: block;
  width: 100%;
  margin-top: -1px;
  margin-bottom: -1px;
}

.footer .input {
  color: var(--color-footer-text);
  border-color: var(--color-footer-border);
}

.footer .input::-moz-placeholder {
  color: var(--color-footer-text);
  opacity: 0.7;
}

.footer .input:-ms-input-placeholder {
  color: var(--color-footer-text);
  opacity: 0.7;
}

.input::-moz-placeholder {
  color: var(--color-footer-text);
  opacity: 0.7;
}

.input:-ms-input-placeholder {
  color: var(--color-footer-text);
  opacity: 0.7;
}

.footer .input::placeholder {
  color: var(--color-footer-text);
  opacity: 0.7;
}

.footer .input:focus::-moz-placeholder {
  opacity: 0;
}

.footer .input:focus:-ms-input-placeholder {
  opacity: 0;
}

.input:focus::-moz-placeholder {
  opacity: 0;
}

.input:focus:-ms-input-placeholder {
  opacity: 0;
}

.footer .input:focus::placeholder {
  opacity: 0;
}

.footer .disclosure .input {
  background-color: var(--color-footer-button-bg);
  color: var(--color-footer-button-text);
}

.footer .disclosure .input:focus {
  background-color: var(--color-footer-button-bg-lighter);
}

.footer .newsletter__input-container {
  position: relative;
}

@media (min-width: 60em) {
  .footer .newsletter__input-container {
    max-width: 100%;
  }
}

.footer .newsletter__input-container label {
  background-color: var(--color-footer-bg);
  color: var(--color-footer-text);
}

.footer__bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  grid-gap: calc(4px * 3);
  gap: calc(4px * 3);
  grid-gap: var(--spacing-small);
  gap: var(--spacing-small);
}

@media (min-width: 38em) {
  .footer__bottom {
    flex-wrap: nowrap;
  }
}

.footer__bottom:empty {
  display: none;
}

.footer__currency-payments {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  min-height: 30px;
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

@media (min-width: 38em) {
  .footer__currency-payments {
    flex-wrap: nowrap;
  }
}

.footer__payment-icons {
  width: 100%;
  flex-grow: 1;
}

.footer__newsletter {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.footer__newsletter .input {
  background-color: var(--color-footer-bg);
}

.footer__signup-text {
  width: 100%;
}

.footer__input-wrap {
  width: 100%;
}

.footer__input-wrap .newsletter__input-container {
  max-width: 100%;
}

.footer__newsletter-button {
  position: absolute;
  right: calc(4px * 3);
  right: var(--spacing-small);
  top: 0;
  background: transparent;
  display: flex;
  align-items: center;
  border: 0;
  color: var(--color-footer-text);
  height: 48px;
  height: var(--height-button);
}

.footer__newsletter-button svg {
  width: 11px;
}

.footer__groups {
  display: flex;
  flex-direction: column;
}

@media (min-width: 38em) {
  .footer__groups {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
}

.footer__group {
  width: 100%;
  border-bottom: 1px solid var(--color-background-input);
  line-height: 1.8em;
}

.footer__group:last-of-type {
  border-bottom: none;
}

@media (min-width: 38em) {
  .footer__group {
    border-bottom: none;
    width: var(--desktop-width);
    padding: 0;
    padding-right: var(--desktop-padding);
    padding-bottom: calc(4px * 5);
    padding-bottom: var(--spacing-medium);
    flex-shrink: 0;
    flex-grow: 0;
  }
}

.footer__group.hide-title-on-desktop
  .footer__group-content
  .footer_text:first-child {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

@media (min-width: 38em) {
  .footer__group.hide-title-on-desktop .footer__header {
    display: none;
  }
}

@media (max-width: 38em) {
  .footer__group.footer__group--text .footer__text {
    margin-bottom: 0;
  }
}

@media (max-width: 38em) {
  .footer__group.footer__group--spacer {
    display: none;
  }
}

.footer__group > p:first-child {
  margin-top: 0;
}

.footer__group p {
  margin-bottom: 0;
}

.footer__group a:hover {
  opacity: 0.5;
}

.footer__group .rte a {
  color: inherit;
}

.footer__header {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 0;
  margin-bottom: 0;
  padding: calc(4px * 3) 0;
  padding: var(--spacing-small) 0;
  transition: padding 0.2s ease;
  text-align: left;
  color: var(--color-footer-text-meta);
}

@media (max-width: 38em) {
  .footer__header.footer__header--collapsed {
    display: none;
  }
}

.footer__header.footer__header--mobile {
  padding: calc(4px * 3) 0;
  padding: var(--spacing-small) 0;
  border: 0;
  background: transparent;
}

.footer__group--collapse .footer__header {
  cursor: pointer;
}

.footer__header.open .footer__arrow {
  opacity: 1;
  transform: rotateX(-180deg);
  transition: transform 0.25s, opacity 0.25s;
}

@media (min-width: 38em) {
  .footer__header {
    display: none;
    padding: 0;
    margin-bottom: calc(4px * 3);
    margin-bottom: var(--spacing-small);
    pointer-events: none;
  }

  h4.footer__header {
    display: block;
    pointer-events: all;
    cursor: auto;
    cursor: initial;
  }

  .footer__group--collapse .footer__header {
    cursor: auto;
    cursor: initial;
  }
}

.footer__arrow {
  display: block;
  transition: transform 0.25s;
  color: var(--color-footer-text-meta);
  opacity: 0.7;
  transform-origin: center;
}

@media (min-width: 38em) {
  .footer__arrow {
    display: none;
  }
}

.footer__arrow .icon {
  width: 14px;
  height: 14px;
  display: flex;
  align-items: center;
}

.footer__group-content {
  padding-top: calc(4px * 3);
  padding-top: var(--spacing-small);
  padding-bottom: calc(4px * 3);
  padding-bottom: var(--spacing-small);
}

.footer__group--collapse .footer__group-content {
  display: none;
}

.footer__header + .footer__group-content {
  padding-top: 0;
}

@media (min-width: 38em) {
  .footer__group-content {
    display: block !important;
    padding: 0;
    width: 100%;
  }

  .footer__group--collapse .footer__group-content {
    display: block !important;
  }
}

.footer__group-content .footer__follow-on-shop {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.footer__text p:first-of-type {
  margin-top: 0;
}

.footer__text a {
  text-decoration: underline;
}

.footer__image--wrapper {
  max-width: var(--image-max-width);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.footer__text + .footer__image--wrapper {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: 0;
}

.footer__links {
  display: flex;
}

.footer__links .list-item:first-of-type {
  margin-top: 0;
}

.footer__links a:hover,
.footer__links a:focus {
  opacity: 0.5;
}

.footer__divider {
  border-bottom: 1px solid var(--color-footer-border);
}

.footer__copyright {
  color: var(--color-footer-text-meta);
  display: block;
  font-size: var(--font-size-body-small);
}

.footer__copyright a {
  color: var(--color-footer-text-meta);
  transition: opacity 0.25s;
}

.footer__copyright a:hover {
  opacity: 0.5;
  transition: opacity 0.25s;
}

.footer__copyright p {
  margin: 0;
}

.footer__selectors {
  display: flex;
  width: 100%;
  width: auto;
}

.selectors-form__item + .selectors-form__item {
  margin-top: 0;
  margin-left: calc(4px * 3);
  margin-left: var(--spacing-small);
}

.footer__social-icons ul {
  display: flex;
  align-items: center;
}

.footer__social-icons ul li {
  line-height: 25px;
  height: 15px;
}

.footer__social-icons svg {
  fill: var(--color-footer-text);
  width: 15px;
  height: 15px;
}

:root {
  --header-height: 40px;
  --submenu-width: 200px;
}

.header {
  padding: 10px 0;
  position: relative;
  z-index: 300;
  z-index: var(--z-index-header);
  color: var(--color-header-text);
  border-bottom: 1px solid;
  border-color: var(--color-header-border);
}

.header:not(.header--transparent) {
  color: var(--color-header-text);
  background-color: var(--color-header-bg);
}

.first-section-is-full-width .header:not(.header--transparent),
.header--no-border:not(.header--transparent) {
  border-bottom: 0;
}

.header .header__logo-wrapper {
  margin: 0;
  justify-content: flex-start;
  display: flex;
}

@media (max-width: 60em) {
  .header .header__logo-wrapper {
    flex: 1 !important;
    display: flex;
    justify-content: center;
  }
}

@media (min-width: 60em) {
  .header .header__logo-wrapper {
    order: -1;
  }
}

.header .header__nav {
  display: none;
}

@media (min-width: 60em) {
  .header:not(.header--always-mobile) .header__logo-image {
    margin: 0;
  }
}

.header.header--always-mobile .header__logo-wrapper {
  order: unset;
  flex: 1;
}

@media (min-width: 60em) {
  .header.header--always-mobile .header__logo-wrapper {
    display: flex;
    justify-content: center;
  }
}

@media (min-width: 60em) {
  .header.header--always-mobile .header__icon-wrapper {
    flex: 1;
  }
}

@media (min-width: 60em) {
  .header.header--default .header__logo-wrapper {
    text-align: left;
  }
}

@media (min-width: 60em) {
  .header.header--default.header--alignment-left .header__logo-wrapper {
    justify-content: center;
    order: unset;
    text-align: center;
  }
}

@media (min-width: 60em) {
  .header.header--default.header--alignment-left .header__nav {
    justify-content: flex-start;
    text-align: left;
  }
}

.header.header--default.header--alignment-left .header__nav .nav--depth-1 {
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
}

@media (min-width: 60em) {
  .header.header--default.header--alignment-left .header__icon-wrapper {
    flex: 1;
  }
}

@media (min-width: 60em) {
  .header.header--default.header--alignment-left .nav__item-home {
    padding-left: 2px;
  }
}

@media (min-width: 60em) {
  .header.header--default.header--alignment-right .header__logo-wrapper {
    justify-content: flex-start;
  }
}

@media (min-width: 60em) {
  .header.header--default.header--alignment-right .header__nav {
    justify-content: flex-end;
    text-align: right;
  }
}

.header.header--default.header--alignment-right .header__nav .nav--depth-1 {
  margin-left: calc(4px * 5);
  margin-left: var(--spacing-medium);
}

@media (min-width: 60em) {
  .header.header--default.header--alignment-right .header__icon-wrapper {
    flex: unset;
  }
}

@media (min-width: 60em) {
  .header.header--always-mobile .header__logo-wrapper {
    text-align: center;
  }
}

.header .disclosure {
  position: static;
}

.header .disclosure__toggle {
  background-color: transparent;
  color: var(--color-header-text);
  padding: 0;
  transition: opacity 0.25s ease-in-out;
  height: 44px;
  height: var(--height-nav-button);
}

.header .disclosure__toggle:hover,
.header .disclosure__toggle:focus {
  opacity: 0.5;
  background-color: transparent;
}

.header .disclosure__toggle .arrow {
  margin-left: 5px;
}

.header .disclosure-list {
  z-index: 4;
  top: calc(40px - 40px);
  top: calc(var(--header-height) - var(--utility-bar-height));
  bottom: auto;
  border-radius: 0;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: var(--shadow-3);
}

.is-sticky .header .disclosure-list {
  border-top: 1px solid var(--color-header-border);
}

.header.header--has-transparent-logo .header__logo,
.header.header--has-transparent-logo .header__logo-text {
  display: none;
}

.header.header--has-transparent-logo .header__transparent-logo {
  display: block;
}

.header-stuck .header.header--has-transparent-logo .header__logo,
.header-stuck .header.header--has-transparent-logo .header__logo-text {
  display: block;
}

.header-stuck .header.header--has-transparent-logo .header__transparent-logo {
  display: none;
}

.header .header__transparent-logo {
  display: none;
}

.header .icon-header-button {
  --color: var(--color-header-text);
}

.header__content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin: 0 auto;
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
  font-size: var(--font-size-navigation);
  letter-spacing: var(--font-letter-spacing-navigation);
}

@media (min-width: 38em) {
  .header__content {
    padding: 0 calc(4px * 10);
    padding: 0 var(--spacing-extra-large);
  }
}

.header--content-bold .header__content {
  font-weight: var(--font-body-bold-weight);
}

.header--content-uppercase .header__content .header__nav,
.header--content-uppercase .header__content .header__icon-list {
  text-transform: uppercase;
}

@media (min-width: 60em) {
  .header--default .header__content {
    display: block;
  }
}

@media (min-width: 60em) {
  .header__content--centered .header__logo-wrapper {
    display: flex;
    justify-content: center;
  }
}

@media (min-width: 60em) {
  .header--always-mobile .header__content [data-primary-navigation]::before {
    display: none;
  }
}

.header__below-nav {
  display: none;
}

@media (min-width: 60em) {
  .header__below-nav {
    display: flex;
  }
}

.header__below-nav .list.nav--depth-1 {
  margin: 0;
}

.header__below-nav .quick-search {
  display: none;
}

.header--has-logo .header__below-nav {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.header--position-below .header__content-inner .list.nav.nav--depth-1 {
  display: none;
}

.header--position-below .header__content-inner .header__nav {
  overflow: visible;
}

@media (min-width: 60em) {
  .header--position-below.header--alignment-right
    .header__content-inner
    .header__icon-wrapper,
  .header--position-below.header--alignment-right
    .header__content-inner
    .header__nav,
  .header--position-below.header--alignment-center
    .header__content-inner
    .header__icon-wrapper,
  .header--position-below.header--alignment-center
    .header__content-inner
    .header__nav {
    flex: 1;
  }
}

@media (min-width: 60em) {
  .header--position-below.header--alignment-right
    .header__content-inner
    .header__nav,
  .header--position-below.header--alignment-center
    .header__content-inner
    .header__nav {
    order: -1;
    justify-content: flex-start;
  }
}

@media (min-width: 60em) {
  .header--position-below.header--alignment-right
    .header__content-inner
    .header__logo-wrapper,
  .header--position-below.header--alignment-center
    .header__content-inner
    .header__logo-wrapper {
    order: unset;
    flex-basis: unset;
  }
}

@media (min-width: 60em) {
  .header--default .header__nav {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }
}

.header__nav .nav--depth-1 {
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.header__nav .nav--depth-1::-webkit-scrollbar {
  width: 0;
  height: 0;
}

.header__logo-text {
  font-family: var(--font-logo);
  font-weight: var(--font-logo-weight);
  font-style: var(--font-logo-style);
  letter-spacing: 0;
}

@media (max-width: 60em) {
  .header__logo-text {
    text-align: center;
  }
}

.header__menu-icon {
  display: flex;
  align-items: center;
  transition: opacity 0.25s ease-in-out;
}

@media (min-width: 60em) {
  .header--default .header__menu-icon {
    display: none;
  }
}

.header__logo-image {
  display: flex;
  align-items: center;
  overflow: hidden;
  transition: width 0.25s ease, height 0.25s ease;
}

.header__logo-image.logo-orientation--width img {
  width: 100%;
  height: auto;
}

.header__logo-image.logo-orientation--height img {
  width: auto;
  height: 100%;
}

.header__icon-wrapper {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  color: var(--color-header-icon);
  min-width: 36px;
}

.header__icon-list {
  display: flex;
  align-items: center;
  padding: 0;
  margin: 0;
}

.header__icon-list li {
  list-style: none;
}

.header__icon {
  color: inherit;
  display: inline-block;
}

@media (min-width: 60em) {
  .header__icon {
    margin-left: calc(4px * 5);
    margin-left: var(--spacing-medium);
  }
}

@media (min-width: 60em) {
  .header__icon:first-of-type {
    margin-left: 0;
  }
}

.header--cart-icon-hidden .header__icon--cart {
  visibility: hidden;
}

@media (min-width: 60em) {
  .header--cart-icon-hidden .header__icon--cart {
    visibility: visible;
    display: none;
  }
}

.header__icon--account,
.header__icon--currency,
.header__icon--language {
  display: none;
}

@media (min-width: 60em) {
  .header--default .header__icon--account,
  .header--default .header__icon--currency,
  .header--default .header__icon--language {
    display: inline-block;
  }
}

#header.header:not(.header--has-mobile-search-icon).header--always-mobile
  .header__icon--search,
#header.header:not(.header--has-mobile-search-icon).header--always-mobile
  .header__search-left {
  display: none;
}

@media (max-width: 60em) {
  #header.header:not(.header--has-mobile-search-icon) .header__icon--search {
    display: none;
  }
}

@media (max-width: 60em) {
  #header.header:not(.header--has-mobile-search-icon) .header__search-left {
    display: none;
  }
}

@media (max-width: 60em) {
  .header--has-mobile-search-icon
    .mobile-only-icon
    ~ .quick-search__trigger-text {
    display: none;
  }
}

@media (min-width: 60em) {
  .header--has-mobile-search-icon .mobile-only-icon {
    display: none;
  }
}

@media (max-width: 60em) {
  .header--has-mobile-search-icon:not(.header--style-is-icon)
    .header__icon-wrapper {
    margin-left: 32px;
  }
}

@media (max-width: 60em) {
  .header--has-mobile-search-icon:not(.header--style-is-icon)
    .header__search-left {
    margin-left: 4px;
    margin-left: var(--spacing-extra-small);
  }
}

@media (max-width: 60em) {
  .header--has-mobile-search-icon.header--style-is-icon .mobile-nav {
    margin-right: 32px;
  }
}

@media (max-width: 60em) {
  .header--has-mobile-search-icon.header--style-is-icon .header__icon--search {
    margin-right: calc(4px * 3);
    margin-right: var(--spacing-small);
  }
}

.header__icon--search {
  display: none;
}

@media (min-width: 60em) {
  .header__icon--search {
    display: inline-block;
  }
}

.header--style-is-icon .header__icon--search {
  display: inline-block;
}

.header--style-is-icon.header--position-below.header--alignment-center
  .header__icon--search {
  display: inline-block;
}

@media (min-width: 60em) {
  .header--style-is-icon.header--position-below.header--alignment-center
    .header__icon--search {
    display: none;
  }
}

.header--always-mobile.header--position-below.header--alignment-center
  .header__icon--search {
  display: inline-block;
}

.header--position-below.header--alignment-center .header__icon--search {
  display: none;
}

.header__search-left {
  align-self: center;
}

.header__search-left .quick-search__trigger {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.header__search-left {
  display: inline-block;
}

@media (min-width: 60em) {
  .header__search-left {
    display: none;
    flex: 1;
  }
}

.header--style-is-icon .header__search-left {
  display: none;
}

@media (min-width: 60em) {
  .header--style-is-icon.header--position-below.header--alignment-center
    .header__search-left {
    display: inline-block;
  }
}

.header--always-mobile.header--position-below.header--alignment-center
  .header__search-left {
  display: none;
}

@media (min-width: 60em) {
  .header--position-below.header--alignment-center .header__search-left {
    display: inline-block;
  }
}

.quick-search__trigger {
  height: 44px;
  height: var(--height-nav-button);
  display: flex;
  align-items: center;
  transition: opacity 0.25s ease-in-out;
}

.header:not(.header--style-is-icon) .quick-search__trigger:hover {
  opacity: 0.5;
}

.header__icon--account a {
  height: 44px;
  height: var(--height-nav-button);
  display: flex;
  align-items: center;
  transition: opacity 0.25s ease-in-out;
}

.header:not(.header--style-is-icon) .header__icon--account a:hover {
  opacity: 0.5;
}

.nav .nav__submenu {
  visibility: hidden;
  display: block;
  width: 200px;
  position: absolute;
  top: calc(40px - 40px);
  top: calc(var(--header-height) - var(--utility-bar-height));
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: var(--shadow-3);
  z-index: 5;
  line-height: 2em;
  background-color: var(--color-navigation-bg);
  opacity: 0;
  transition: opacity 300ms cubic-bezier(0.33, 0, 0, 1), visibility 0s 300ms;
  transition: opacity var(--duration-fast) var(--easing),
    visibility 0s var(--duration-fast);
  text-transform: none;
  text-transform: initial;
}

.nav .nav__submenu.visible {
  visibility: visible;
  opacity: 1;
  transition: opacity 300ms cubic-bezier(0.33, 0, 0, 1), visibility 0s 0s;
  transition: opacity var(--duration-fast) var(--easing), visibility 0s 0s;
}

.nav .nav__submenu a {
  color: var(--color-navigation-text);
}

.nav .nav__submenu.nav__meganav {
  background-color: transparent;
  width: 100%;
  box-shadow: none;
}

.nav .nav__submenu.nav__meganav .nav {
  width: auto;
}

.nav .nav__submenu.nav--depth-3 {
  top: unset;
  margin-top: calc((calc(4px * 5) + 2em) * -1);
  margin-top: calc((var(--spacing-medium) + 2em) * -1);
}

.nav .nav__submenu.nav--depth-3.overflows {
  left: unset;
  margin-left: calc((200px + calc(4px * 5)) * -1);
  margin-left: calc((var(--submenu-width) + var(--spacing-medium)) * -1);
}

.nav a {
  transition: opacity 0.25s ease-in-out;
}

.nav a:hover {
  opacity: 0.5;
}

.nav .active {
  opacity: 0.5;
}

@media (min-width: 60em) {
  .header--alignment-right.header--position-inline .nav.nav--depth-1 {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-right: calc(calc(4px * 5) / 2);
    margin-right: calc(var(--spacing-medium) / 2);
  }
}

.header--alignment-right.header--position-inline .nav.nav--depth-1 > li {
  margin-right: calc(calc(4px * 5) / 2);
  margin-right: calc(var(--spacing-medium) / 2);
  margin-left: calc(calc(4px * 5) / 2);
  margin-left: calc(var(--spacing-medium) / 2);
}

@media (min-width: 60em) {
  .header--alignment-center.header--position-inline .nav.nav--depth-1 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}

.nav.nav--depth-1 > li {
  display: inline-block;
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
}

.nav.nav--depth-1 > li:last-of-type {
  margin-right: 0;
}

.nav.nav--depth-2 {
  min-width: 200px;
  min-width: var(--submenu-width);
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  margin-left: calc(var(--navigation-scroll-offset) * -1);
}

.is-sticky .nav.nav--depth-2 {
  border-top: 1px solid var(--color-header-border);
}

.nav.nav--depth-3 {
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  top: 0;
  left: 200px;
  left: var(--submenu-width);
}

.nav .nav__item {
  text-align: left;
  word-wrap: break-word;
  word-wrap: break-word;
  word-break: break-all;
  word-break: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

.nav .nav__item-primary {
  height: 44px;
  height: var(--height-nav-button);
  display: flex;
  align-items: center;
}

.nav .arrow {
  margin-left: 5px;
  pointer-events: none;
}

.no-js-menu {
  display: none;
}

.no-js .header .header__logo-wrapper {
  text-align: left;
}

.no-js .header__nav {
  display: none;
}

.no-js .no-js-menu {
  line-height: 1.71em;
  line-height: var(--line-height-body);
}

.no-js .no-js-menu--mobile {
  display: block;
  width: 100%;
  padding: calc(4px * 3) calc(4px * 5) 0 calc(4px * 5);
  padding: var(--spacing-small) var(--spacing-medium) 0 var(--spacing-medium);
}

@media (min-width: 38em) and (max-width: 60em) {
  .no-js .no-js-menu--mobile {
    padding: calc(4px * 3) calc(4px * 7) 0 calc(4px * 7);
    padding: var(--spacing-small) var(--spacing-large) 0 var(--spacing-large);
  }
}

@media (min-width: 60em) {
  .no-js .no-js-menu--mobile {
    display: none;
  }
}

@media (min-width: 60em) {
  .no-js .no-js-menu--desktop {
    display: block;
    width: 80%;
  }
}

.no-js .no-js-menu a:hover {
  text-decoration: underline;
}

.no-js .no-js-menu ul {
  margin: 0;
  padding: 0;
  width: 100%;
}

.no-js .no-js-menu li {
  display: inline-block;
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
}

.mobile-nav {
  color: var(--color-header-icon);
  width: 36px;
  margin: 0;
  justify-content: flex-start;
  display: flex;
  align-items: center;
}

@media (min-width: 60em) {
  .mobile-nav {
    flex: 1;
  }
}

@media (min-width: 60em) {
  .header--default .mobile-nav {
    display: none;
  }
}

.mobile-nav__trigger {
  height: 44px;
  height: var(--height-nav-button);
  display: flex;
  align-items: center;
}

.header-section {
  width: 100%;
}

.header-container {
  top: 0;
  right: 0;
  left: 0;
  z-index: 300;
  z-index: var(--z-index-header);
  display: flex;
  flex-direction: column;
}

.header-transparent .header-container,
.header-sticky .header-container {
  position: relative;
}

.header-container.is-sticky {
  position: fixed;
}

.header-container.is-sticky .header {
  background-color: var(--color-header-bg);
  transition: background-color 0.25s ease-in-out;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);
  box-shadow: var(--shadow-2);
  border-color: transparent;
}

.header-transparent.header-stuck {
  padding-top: 40px;
  padding-top: var(--utility-bar-height);
}

.header-sticky.header-stuck {
  padding-top: 40px;
  padding-top: var(--header-height);
}

.popup {
  position: fixed;
  top: var(--header-offset-height);
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  padding: calc(4px * 3);
  padding: var(--spacing-small);
  z-index: 500;
  z-index: var(--z-index-popup);
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s 300ms, opacity 300ms cubic-bezier(0.33, 0, 0, 1);
  transition: visibility 0s var(--duration-fast),
    opacity var(--duration-fast) var(--easing);
}

@media (min-width: 38em) {
  .popup {
    padding: calc(4px * 10);
    padding: var(--spacing-extra-large);
  }
}

.header-stuck .popup {
  top: calc(40px - 40px);
  top: calc(var(--header-height) - var(--utility-bar-height));
}

.popup .popup__content {
  transform: translateY(calc(4px * 5));
  transform: translateY(var(--spacing-medium));
  transition: transform 300ms cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-fast) var(--easing);
}

.popup.visible {
  visibility: visible;
  opacity: 1;
  transition: visibility 0s 0s, opacity 300ms cubic-bezier(0.33, 0, 0, 1);
  transition: visibility 0s 0s, opacity var(--duration-fast) var(--easing);
}

.popup.visible .popup__overlay {
  opacity: 0.9;
  opacity: var(--overlay-opacity, 0.9);
}

.popup.visible .popup__content {
  pointer-events: all;
  transform: translateY(0);
}

.popup.visible.popup--age_popup {
  pointer-events: all;
}

@media (min-width: 38em) {
  .popup--top-right,
  .popup--top-left {
    align-items: flex-start;
  }

  .popup--top-right .popup__content,
  .popup--top-left .popup__content {
    transform: translateY(calc(calc(4px * 5) * -1));
    transform: translateY(calc(var(--spacing-medium) * -1));
  }

  .popup--top-right.visible .popup__content,
  .popup--top-left.visible .popup__content {
    transform: translateY(0);
  }
}

@media (min-width: 38em) {
  .popup--bottom-right,
  .popup--bottom-left {
    align-items: flex-end;
  }
}

@media (min-width: 38em) {
  .popup--top-right,
  .popup--bottom-right {
    justify-content: flex-end;
  }
}

@media (min-width: 38em) {
  .popup--top-left,
  .popup--bottom-left {
    justify-content: flex-start;
  }
}

.popup.popup--age_popup {
  top: 0;
  align-items: center;
  justify-content: center;
}

.header-stuck .popup.popup--age_popup {
  top: 0;
}

.popup__overlay {
  background-color: #000;
  background-color: var(--color-overlay, #000);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  transition: opacity 300ms cubic-bezier(0.33, 0, 0, 1);
  transition: opacity var(--duration-fast) var(--easing);
}

.theme-editor .popup__overlay {
  transition-duration: 0s;
}

.popup__content {
  width: 100%;
  position: relative;
  background: var(--color-bg);
  background: var(--gradient-bg, var(--color-bg));
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: var(--shadow-3);
  overflow: hidden;
  flex-grow: 0;
  color: var(--color-text);
}

@media (min-width: 38em) {
  .popup__content {
    max-width: 335px;
    padding: 0;
  }
}

.popup__inner {
  position: relative;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

.popup__image {
  display: none;
  pointer-events: none;
  padding-top: 66%;
  background-size: cover;
  background-position: center;
  background-color: var(--color-contrast-bg);
}

@media (min-width: 38em) {
  .popup__image {
    display: block;
  }
}

.popup__image img {
  width: 100%;
}

.popup__heading {
  width: 100%;
  text-align: center;
  margin-top: 0;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  font-weight: var(--font-body-bold-weight);
}

.popup__message {
  width: 100%;
  text-align: center;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.popup__footer-text {
  width: 100%;
  text-align: center;
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.popup__footer-text p:last-of-type {
  margin-bottom: 0;
}

.popup__form {
  width: 100%;
  position: relative;
}

.popup__form label {
  background-color: var(--color-bg);
  color: var(--color-text);
}

.popup__form .input {
  height: 42px;
  outline: none;
  border-color: var(--color-border);
  background-color: var(--color-bg);
  color: var(--color-text);
}

.popup__form .input::-moz-placeholder {
  color: var(--color-input-text-lightened);
}

.popup__form .input:-ms-input-placeholder {
  color: var(--color-input-text-lightened);
}

.input::-moz-placeholder {
  color: var(--color-input-text-lightened);
}

.input:-ms-input-placeholder {
  color: var(--color-input-text-lightened);
}

.popup__form .input::placeholder {
  color: var(--color-input-text-lightened);
}

.popup__form form {
  width: 100%;
  position: relative;
}

.popup__form-input-container {
  width: 100%;
  position: relative;
}

.popup__button {
  position: absolute;
  right: calc(4px * 3);
  right: var(--spacing-small);
  top: 2px;
  bottom: 2px;
  display: flex;
  align-items: center;
  border: none;
  background: none;
  color: var(--color-text);
  transition: opacity 300ms;
  transition: opacity var(--duration-fast);
}

.popup__button:hover {
  opacity: 0.5;
  transition: opacity 300ms;
  transition: opacity var(--duration-fast);
}

.popup__button svg {
  width: 10px;
}

.popup__close {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  border: none;
  background: none;
  color: var(--color-text);
}

.popup__close .icon {
  width: 8px;
  height: 8px;
}

.popup__input {
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

.popup__verify-age-buttons {
  text-align: center;
}

.popup__verify-age {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.popup__decline-age {
  display: inline-block;
}

.drawer-menu {
  --menu-width: 355px;
  --menu-max-width: calc(100vw - 50px);
  --header-height: 84px;
  --item-height: 48px;

  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
}

.drawer-menu.active {
  display: block;
}

.drawer-menu.visible .drawer-menu__overlay {
  opacity: 1;
}

.drawer-menu.visible .drawer-menu__panel {
  transform: translateX(0);
}

.drawer-menu__overlay {
  background-color: var(--color-bg-overlay);
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  transition: opacity 300ms cubic-bezier(0.33, 0, 0, 1);
  transition: opacity var(--duration-fast) var(--easing);
}

.drawer-menu__panel {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  z-index: 100;
  color: var(--color-drawer-text);
  background-color: var(--color-drawer-bg);
  width: var(--menu-width);
  max-width: var(--menu-max-width);
  transform: translateX(-100%);
  transition: transform 300ms cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-fast) var(--easing);
  display: flex;
  flex-direction: column;
}

.drawer-menu__header {
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
  padding-bottom: calc(4px * 7);
  padding-bottom: var(--spacing-large);
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
  font-family: var(--font-logo);
  font-weight: var(--font-logo-weight);
  font-style: var(--font-logo-style);
  font-size: 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.drawer-menu__logo:focus {
  outline: none;
}

.drawer-menu__logo.has-custom-logo.logo-orientation--width img {
  width: 100%;
  height: auto;
}

.drawer-menu__logo.has-custom-logo.logo-orientation--height img {
  width: auto;
  height: 100%;
}

.drawer-menu__close {
  height: 24px;
  width: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.drawer-menu__close .icon {
  display: flex;
}

.drawer-menu__bottom {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.drawer-menu__all-links {
  position: relative;
  display: flex;
  flex-direction: column;
  transition: transform 0.5s;
  height: 100%;
}

.drawer-menu__all-links[data-depth="0"] {
  transform: translateX(0);
}

.drawer-menu__all-links[data-depth="1"] {
  transform: translateX(-100%);
}

.drawer-menu__all-links ul {
  margin: 0;
  padding: 2px;
}

.drawer-menu__contents {
  flex-shrink: 1;
  overflow-y: scroll;
}

.drawer-menu__main {
  transition: height 0.35s;
  overflow: hidden;
}

.drawer-menu__primary-links {
  position: relative;
  transition: transform 0.5s;
}

.drawer-menu__primary-links[data-depth="0"] {
  transform: translateX(0);
}

.drawer-menu__primary-links[data-depth="1"] {
  transform: translateX(-100%);
}

.drawer-menu__primary-links[data-depth="2"] {
  transform: translateX(-200%);
}

.drawer-menu__primary-links[data-depth="3"] {
  transform: translateX(-300%);
}

.drawer-menu__primary-links[data-depth="4"] {
  transform: translateX(-400%);
}

.drawer-menu__list {
  width: var(--menu-width);
  max-width: var(--menu-max-width);
}

.drawer-menu__list--sub {
  position: absolute;
  top: 0;
  left: 100%;

  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: visibility 1s, opacity 0.35s;
}

.drawer-menu__list--sub.visible {
  opacity: 1;
  transition: visibility 0s, opacity 0.35s;
  pointer-events: all;
  visibility: visible;
}

.drawer-menu__list--country-selector,
.drawer-menu__list--language-selector {
  height: 100%;
  overflow: auto;
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
}

.drawer-menu__item {
  list-style: none;
  margin: 0;
  padding: 0;
  word-wrap: break-word;
  word-wrap: break-word;
  word-break: break-all;
  word-break: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

.drawer-menu__item .icon {
  width: 16px;
  height: 16px;
}

.drawer-menu__item.drawer-menu__item--heading {
  padding-bottom: 16px;
}

.drawer-menu__item.drawer-menu__item--heading:after {
  content: "";
  height: 1px;
  background-color: var(--color-drawer-border);
  position: absolute;
  left: 0;
  right: 0;
  margin-top: 4px;
  margin-top: var(--spacing-extra-small);
}

.drawer-menu__item.drawer-menu__item--social-links .list:not(:empty) {
  display: flex;
  flex-wrap: wrap;
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
  margin: 12px 0 0 -7px;
}

.drawer-menu__item.drawer-menu__item--social-links .list:empty {
  display: none;
}

.drawer-menu__item.drawer-menu__item--social-links li {
  display: flex;
  flex-shrink: 0;
  margin: calc(4px * 3) 0;
  margin: var(--spacing-small) 0;
  padding-right: 7px;
  padding-left: 7px;
}

.drawer-menu__item.drawer-menu__item--social-links .icon {
  fill: var(--color-drawer-text);
  height: 20px;
  width: 20px;
  transition: fill 0.2s ease;
}

.drawer-menu__link {
  height: var(--item-height);
  min-width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
  font-family: inherit;
  font-size: inherit;

  background-color: transparent;
  color: inherit;
  border: none;
}

.drawer-menu__link:hover {
  opacity: 0.75;
}

.drawer-menu__link--cb {
  justify-content: flex-start;
}

.drawer-menu__footer {
  flex-shrink: 0;
  margin-top: 4px;
  margin-top: var(--spacing-extra-small);
  padding-top: 4px;
  padding-top: var(--spacing-extra-small);
  padding-bottom: 4px;
  padding-bottom: var(--spacing-extra-small);
}

.drawer-menu__footer:before {
  content: "";
  height: 1px;
  background-color: var(--color-drawer-border);
  position: absolute;
  left: 0;
  right: 0;
}

.drawer-menu__footer > .drawer-menu__item + .drawer-menu__item--search,
.drawer-menu__footer
  > .drawer-menu__item
  + .drawer-menu__item--social-links
  .list:not(:empty),
.drawer-menu__footer
  > form
  + .drawer-menu__item--social-links
  .list:not(:empty),
.drawer-menu__footer > form + .drawer-menu__item--search {
  margin-top: 12px;
}

.drawer-menu__footer > .drawer-menu__item + .drawer-menu__item--search:before,
.drawer-menu__footer
  > .drawer-menu__item
  + .drawer-menu__item--social-links
  .list:not(:empty):before,
.drawer-menu__footer
  > form
  + .drawer-menu__item--social-links
  .list:not(:empty):before,
.drawer-menu__footer > form + .drawer-menu__item--search:before {
  content: "";
  height: 1px;
  background-color: var(--color-drawer-border);
  position: absolute;
  left: 0;
  right: 0;
  margin-top: -6px;
}

.drawer-menu__radio {
  width: 12px;
  height: 12px;
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
  background-color: var(--color-drawer-text);
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.drawer-menu__radio > div {
  width: 6px;
  height: 6px;
  background-color: var(--color-drawer-bg);
  border-radius: 100%;
}

.drawer-menu__search-overlay {
  --qs-background-hover: var(--color-drawer-bg-hover);

  background-color: var(--color-drawer-bg);
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
}

.drawer-menu__search-overlay.visible {
  display: block;
}

.drawer-menu__search-overlay .quick-search__view-all {
  border-top: 1px solid var(--color-drawer-border);
  padding-top: 15px;
}

.drawer-menu__search-bar {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  border-bottom: 1px solid var(--color-drawer-border);
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

.drawer-menu__search-submit {
  background-color: transparent;
  border: none;
  color: inherit;
  padding: 0;
}

.drawer-menu__search-submit:hover {
  opacity: 0.5;
}

.drawer-menu__search-input {
  width: 100%;
  background-color: var(--color-background-input-drawer);
  color: var(--color-text-input-drawer);
  padding: 0 calc(4px * 5) 0 calc(4px * 3);
  padding: 0 var(--spacing-medium) 0 var(--spacing-small);
  border-radius: var(--item-height);
  border: none;
  outline: none;
}

.drawer-menu__search-input::-moz-placeholder {
  color: var(--color-drawer-text-meta);
}

.drawer-menu__search-input:-ms-input-placeholder {
  color: var(--color-drawer-text-meta);
}

.drawer-menu__search-input::placeholder {
  color: var(--color-drawer-text-meta);
}

.drawer-menu__search-clear {
  font-size: var(--font-size-body-extra-small);
  text-transform: uppercase;
  padding-right: calc(4px * 3);
  padding-right: var(--spacing-small);
  letter-spacing: 0.5px;
  display: none;
}

.drawer-menu__search-clear.visible {
  display: block;
}

.drawer-menu__search-clear:hover {
  opacity: 0.5;
}

.drawer-menu__search-close {
  display: flex;
}

.drawer-menu__search-close:hover {
  opacity: 0.5;
}

.drawer-menu__search-close .icon {
  width: 16px;
  height: 16px;
}

.drawer-menu__search-results {
  overflow-y: scroll;
}

.scroll-lock {
  position: fixed;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

:root {
  --utility-bar-height: 40px;
}

.utility-bar-section {
  z-index: calc(300 + 1);
  z-index: calc(var(--z-index-header) + 1);
  position: relative;
  order: -1;
  margin-left: -1px;
}

.utility-bar-section .flickity-slider {
  transform: none !important;
}

.utility-bar {
  min-height: 40px;
  min-height: var(--utility-bar-height);
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
  background-color: var(--s-color-background);
  color: var(--s-color-text);
  display: flex;
  justify-content: space-between;
}

@media (min-width: 38em) {
  .utility-bar {
    padding: 0 calc(4px * 10);
    padding: 0 var(--spacing-extra-large);
  }
}

@media (max-width: 60em) {
  .utility-bar.utility-bar--no-announcements {
    display: none;
  }
}

.utility-bar.is-hidden {
  display: none;
}

.utility-bar.utility-bar--has-border:after {
  content: "";
  height: 1px;
  position: absolute;
  right: calc(4px * 5);
  right: var(--spacing-medium);
  left: calc(4px * 5);
  left: var(--spacing-medium);
  bottom: 0;
  background-color: var(--color-header-border);
}

@media (min-width: 38em) {
  .utility-bar.utility-bar--has-border:after {
    right: calc(4px * 10);
    right: var(--spacing-extra-large);
    left: calc(4px * 10);
    left: var(--spacing-extra-large);
  }
}

.header-transparent .utility-bar.utility-bar--has-border:after {
  display: none;
}

.utlity-bar__social-icons,
.utility-bar__disclosure-container {
  flex-shrink: 0;
}

@media (max-width: 60em) {
  .utlity-bar__social-icons,
  .utility-bar__disclosure-container {
    display: none;
  }
}

.utlity-bar__social-icons .list {
  display: flex;
  align-items: center;
  height: 100%;
}

.utlity-bar__social-icons .list a {
  display: flex;
  align-items: center;
  opacity: 0.8;
  transition: opacity 0.2s ease;
}

.utlity-bar__social-icons .list a:hover,
.utlity-bar__social-icons .list a:focus {
  opacity: 1;
}

.utlity-bar__social-icons .list .icon {
  fill: var(--s-color-text);
  height: 14px;
  width: 14px;
  transition: fill 0.2s ease;
}

.utility-bar__disclosure-container {
  font-size: var(--font-size-body-small);
  line-height: 1.71em;
  line-height: var(--line-height-body);
  font-family: var(--font-body), georgia;
}

.utility-bar__selectors {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: 40px;
  height: var(--utility-bar-height);
}

.utility-bar__selectors .disclosure__toggle {
  padding: 0;
  background-color: transparent;
  color: var(--s-color-text);
  font-size: var(--font-size-body-small);
  line-height: 1.71em;
  line-height: var(--line-height-body);
  font-family: var(--font-body), georgia;
  opacity: 0.7;
  transition: opacity 0.2s ease;
}

.utility-bar__selectors .disclosure__toggle:hover,
.utility-bar__selectors .disclosure__toggle:active,
.utility-bar__selectors .disclosure__toggle:focus {
  background-color: transparent;
  opacity: 1;
}

.utility-bar__selectors .disclosure-list {
  z-index: 1;
  bottom: unset;
  right: 0;
  margin: 0;
  background-color: var(--color-drawer-bg);
}

.utility-bar__selectors .disclosure-list .disclosure-list__option {
  color: var(--color-drawer-text);
  transition: color 0.2s ease;
}

.utility-bar__selectors .disclosure-list .disclosure-list__option:hover {
  color: var(--color-drawer-text-meta);
}

.disclosure-list__item--current
  .utility-bar__selectors
  .disclosure-list
  .disclosure-list__option {
  color: var(--color-drawer-text-meta);
}

.utility-bar__selectors .disclosure-list__item + .disclosure-list__item {
  margin: 0;
}

.utility-bar__announcements,
.utility-bar__announcements-container {
  position: relative;
  width: 100%;
  display: block;
}

.utility-bar__announcement-item {
  text-align: center;
  width: 100%;
  height: 40px;
  height: var(--utility-bar-height);
  display: none;
  justify-content: center;
  overflow: hidden;
  pointer-events: none;
  left: 0 !important;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

@media (min-width: 60em) {
  .utility-bar__announcement-item {
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
  }
}

@media (prefers-reduced-motion) {
  .utility-bar__announcement-item {
    transition-property: none;
  }
}

.utility-bar__announcement-item.is-selected {
  opacity: 1;
  pointer-events: all;
}

.flickity-enabled .utility-bar__announcement-item {
  display: flex;
}

.utility-bar__announcement-item:first-of-type {
  display: flex;
}

.utility-bar__announcement-item a {
  transition: color 0.25s ease;
}

.utility-bar__announcement-item a:hover,
.utility-bar__announcement-item a:focus {
  color: var(--s-color-text-meta);
}

@-webkit-keyframes inFromBottom {
  from {
    transform: translateY(calc(4px * 7));
    transform: translateY(var(--spacing-large));
    opacity: 0;
  }

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

@keyframes inFromBottom {
  from {
    transform: translateY(calc(4px * 7));
    transform: translateY(var(--spacing-large));
    opacity: 0;
  }

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

.utility-bar__announcement-item-content {
  display: flex;
  align-items: center;
  padding-right: calc(4px * 2);
  padding-right: calc(var(--spacing-unit) * 2);
  padding-left: calc(4px * 2);
  padding-left: calc(var(--spacing-unit) * 2);
  white-space: nowrap;
  overflow-x: scroll;

  -ms-overflow-style: none;
  scrollbar-width: none;
}

.utility-bar__announcement-item-content::-webkit-scrollbar {
  display: none;
}

.is-active .utility-bar__announcement-item-content {
  -webkit-animation: 0.75s ease-in-out inFromBottom;
  animation: 0.75s ease-in-out inFromBottom;
  -webkit-animation: 0.75s var(--ease) inFromBottom;
  animation: 0.75s var(--ease) inFromBottom;
}

.utility-bar__link {
  position: relative;
  margin-top: -1px;
}

.utility-bar__link:after {
  content: "";
  display: block;
  height: 1px;
  width: 100%;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  background-color: var(--s-color-text);
  opacity: 0.3;
}

.utility-bar__link:before {
  content: "";
  height: 1px;
  width: 0%;
  background-color: var(--s-color-text);
  position: absolute;
  left: 0;
  bottom: -1px;
  opacity: 0;
  transition: opacity 0.1s, width 0.5s;
}

.utility-bar__link:hover:before {
  width: 100%;
  opacity: 1;
}

.announcement-bar__gradient-gap {
  position: absolute;
  top: 0;
  height: 100%;
  width: calc(4px * 5);
  width: var(--spacing-medium);
}

@media (min-width: 60em) {
  .announcement-bar__gradient-gap {
    width: calc(4px * 7);
    width: var(--spacing-large);
  }
}

.announcement-bar__gradient-gap.announcement-bar__gradient-gap--right {
  right: calc(calc(4px * 3) * -1);
  right: calc(var(--spacing-small) * -1);
  background: linear-gradient(
    to right,
    var(--s-color-gradient-overlay-transparent) 0%,
    var(--s-color-gradient-overlay) 40%
  );
}

@media (min-width: 60em) {
  .announcement-bar__gradient-gap.announcement-bar__gradient-gap--right {
    right: 4px;
    right: var(--spacing-extra-small);
  }
}

.announcement-bar__gradient-gap.announcement-bar__gradient-gap--left {
  left: calc(calc(4px * 3) * -1);
  left: calc(var(--spacing-small) * -1);
  background: linear-gradient(
    to left,
    var(--s-color-gradient-overlay-transparent) 0%,
    var(--s-color-gradient-overlay) 40%
  );
}

@media (min-width: 60em) {
  .announcement-bar__gradient-gap.announcement-bar__gradient-gap--left {
    left: 4px;
    left: var(--spacing-extra-small);
  }
}

.utility-bar__border-bottom {
  height: 1px;
  position: absolute;
  right: calc(4px * 5);
  right: var(--spacing-medium);
  left: calc(4px * 5);
  left: var(--spacing-medium);
  bottom: 0;
  background-color: var(--color-header-border);
}

@media (min-width: 38em) {
  .utility-bar__border-bottom {
    right: calc(4px * 10);
    right: var(--spacing-extra-large);
    left: calc(4px * 10);
    left: var(--spacing-extra-large);
  }
}

.header-transparent .utility-bar__border-bottom {
  display: none;
}

.fof {
  width: 100%;
  max-width: 3000px;
  max-width: var(--max-width);
  margin: calc(4px * 20) auto;
  margin: var(--spacing-extra-extra-large) auto;
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
  text-align: center;
}

.fof__heading {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.fof__message {
  margin: 0 auto;
}

.article__published-date,
.article__heading,
.article__content,
.article__comments {
  max-width: 500px;
  max-width: var(--max-width-small);
}

.article__header-share {
  max-width: 300px;
}

.article__header-share .product__share-container {
  justify-content: center;
  margin-right: auto;
  margin-left: auto;
}

.article__content,
.article__pagination,
.article__tags,
.article__comments,
.article__content-share,
.article__image {
  max-width: var(--content-max-width);
}

.article__image-constraint {
  position: relative;
  background-size: cover;
  display: block;
  overflow: hidden;
}

.article__image--aspect-ratio-square .article__image-constraint .image,
.article__image--aspect-ratio-square
  .article__image-constraint
  .placeholder-svg,
.article__image--aspect-ratio-portrait .article__image-constraint .image,
.article__image--aspect-ratio-portrait
  .article__image-constraint
  .placeholder-svg,
.article__image--aspect-ratio-landscape .article__image-constraint .image,
.article__image--aspect-ratio-landscape
  .article__image-constraint
  .placeholder-svg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.article__image--aspect-ratio-square .article__image-constraint {
  padding-top: 100%;
}

.article__image--aspect-ratio-landscape .article__image-constraint {
  padding-top: calc((2 / 3) * 100%);
}

.article__image--aspect-ratio-portrait .article__image-constraint {
  padding-top: calc((3 / 2) * 100%);
}

.article__content-share .product__share-container {
  max-width: 300px;
}

.article__tags a {
  color: var(--color-accent);
  text-decoration: underline;
}

.article__pagination {
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
  border-top: 1px solid var(--color-border);
}

.article__pagination .article__pagination-next {
  margin-left: auto;
}

.article__pagination a {
  color: var(--color-accent);
}

.blog {
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
  margin: calc(4px * 10) auto;
  margin: var(--spacing-extra-large) auto;
}

@media (min-width: 38em) and (max-width: 60em) {
  .blog {
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .blog {
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
    margin-top: calc(4px * 20);
    margin-top: var(--spacing-extra-extra-large);
    margin-bottom: calc(4px * 20);
    margin-bottom: var(--spacing-extra-extra-large);
  }
}

@media (max-width: 38em) {
  .blog .pagination {
    flex-direction: column;
  }
}

@media (min-width: 38em) {
  .blog .pagination {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }
}

@media (max-width: 38em) {
  .blog .pagination p {
    margin-top: calc(4px * 2);
    margin-top: calc(var(--spacing-unit) * 2);
    margin-bottom: 0;
  }
}

.blog__heading {
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
  border-bottom: 1px solid var(--color-border);
}

@media (min-width: 38em) {
  .blog__heading {
    padding-bottom: calc(4px * 10);
    padding-bottom: var(--spacing-extra-large);
  }
}

.blog__articles-container {
  overflow: hidden;
}

@media (min-width: 38em) {
  .blog__articles {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    width: calc(100% + (calc(4px * 5) * 2));
    width: calc(100% + (var(--spacing-medium) * 2));
    margin-left: calc(calc(4px * 5) * -1);
    margin-left: calc(var(--spacing-medium) * -1);
  }
}

.blog__article {
  padding-bottom: calc(4px * 10);
  padding-bottom: var(--spacing-extra-large);
}

@media (min-width: 38em) {
  .blog__article {
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
    border-right: 1px solid var(--color-border);
    padding-bottom: calc(4px * 20);
    padding-bottom: var(--spacing-extra-extra-large);
  }
}

.blog__article.has-image .blog__article-heading {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

@media (min-width: 38em) {
  .blog__article.has-image .blog__article-heading {
    margin-top: calc(4px * 7);
    margin-top: var(--spacing-large);
  }
}

@media (min-width: 38em) {
  .blog__article.is-featured {
    grid-column: span 2;
  }
}

.blog__article.is-featured {
}

.blog__article-image-constraint {
  position: relative;
  background-size: cover;
  display: block;
  overflow: hidden;
}

.blog__article-image--aspect-ratio-square
  .blog__article-image-constraint
  .image,
.blog__article-image--aspect-ratio-square
  .blog__article-image-constraint
  .placeholder-svg,
.blog__article-image--aspect-ratio-portrait
  .blog__article-image-constraint
  .image,
.blog__article-image--aspect-ratio-portrait
  .blog__article-image-constraint
  .placeholder-svg,
.blog__article-image--aspect-ratio-landscape
  .blog__article-image-constraint
  .image,
.blog__article-image--aspect-ratio-landscape
  .blog__article-image-constraint
  .placeholder-svg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.blog__article-image--aspect-ratio-square .blog__article-image-constraint {
  padding-top: 100%;
}

.blog__article-image--aspect-ratio-landscape .blog__article-image-constraint {
  padding-top: calc((2 / 3) * 100%);
}

.blog__article-image--aspect-ratio-portrait .blog__article-image-constraint {
  padding-top: calc((3 / 2) * 100%);
}

.blog__article-featured-badge {
  pointer-events: none;
  letter-spacing: 0.05em;
  font-size: var(--font-size-body-extra-small);
  position: absolute;
  top: calc(4px * 5);
  top: var(--spacing-medium);
  left: calc(4px * 5);
  left: var(--spacing-medium);
  padding: 12px 14px;
}

@media (min-width: 38em) {
  .blog__article-featured-badge {
    left: calc(4px * 10);
    left: var(--spacing-extra-large);
  }
}

.blog__article-heading {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: 0;
}

@media (min-width: 38em) {
  .blog__article-heading {
    padding-left: 1px;
  }
}

@media (max-width: 38em) {
  .blog__article-heading {
    margin-top: 0;
  }
}

.blog__article-excerpt,
.blog__article-title {
  max-width: calc(500px + calc(4px * 5));
  max-width: calc(var(--max-width-small) + var(--spacing-medium));
}

.cart-template__item {
  background-color: var(--color-background-meta);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.cart-template__item .meta {
  color: var(--color-text-meta);
}

@media (min-width: 38em) {
  .cart-template__item {
    flex-wrap: nowrap;
  }
}

.cart-template__image {
  width: 100%;
  flex-shrink: 0;
}

.cart-template__image img {
  display: block;
  width: 100%;
}

@media (min-width: 38em) {
  .cart-template__image {
    padding: calc(4px * 5);
    padding: var(--spacing-medium);
    width: 140px;
  }
}

.cart-template__text {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

@media (min-width: 38em) {
  .cart-template__text {
    padding-left: 0;
  }
}

@media (max-width: 38em) {
  .cart-template__text {
    flex-direction: column;
    align-items: flex-start;
  }
}

.cart-template__details {
  width: 100%;
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
  line-height: 1.71em;
  line-height: var(--line-height-body);
}

@media (min-width: 38em) {
  .cart-template__details {
    width: 50%;
  }
}

@media (min-width: 60em) {
  .cart-template__details {
    margin-bottom: 0;
  }
}

.cart-template__quantity {
  width: calc((1 / 3) * 100%);
}

@media (min-width: 38em) {
  .cart-template__quantity {
    width: 25%;
  }
}

@media (min-width: 60em) {
  .cart-template__quantity {
    width: calc((1 / 6) * 100%);
  }
}

.cart-template__quantity input {
  width: 100%;
  background: transparent;
}

.cart-template__line-price {
  width: calc((1 / 3) * 100%);
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

@media (min-width: 38em) {
  .cart-template__line-price {
    width: 25%;
    text-align: center;
    margin-top: 0;
  }
}

@media (min-width: 60em) {
  .cart-template__line-price {
    width: calc((1 / 6) * 100%);
  }
}

.cart-template__remove {
  width: auto;
  text-align: left;
}

@media (min-width: 60em) {
  .cart-template__remove {
    text-align: center;
    width: calc((1 / 6) * 100%);
  }
}

.cart__special-instruction textarea {
  box-shadow: none;
}

.cart-template__footer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 7);
  margin-bottom: var(--spacing-large);
}

.cart-template__footer-left {
  width: 100%;
}

@media (min-width: 60em) {
  .cart-template__footer-left {
    width: 35%;
  }
}

.cart-template__footer-right {
  width: 100%;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

@media (min-width: 60em) {
  .cart-template__footer-right {
    width: 65%;
    text-align: right;
  }
}

.cart-template__footer-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
  width: 100%;
}

.cart-template__footer-actions .bttn {
  margin-left: 0;
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

@media (min-width: 60em) {
  .cart-template__footer-actions {
    justify-content: flex-end;
  }

  .cart-template__footer-actions .bttn {
    margin-left: calc(4px * 3);
    margin-left: var(--spacing-small);
    margin-right: 0;
  }
}

.cart__line-item-discounts {
  font-size: var(--font-size-body-extra-small);
  margin: calc(4px * 3) 0 0 0;
  margin: var(--spacing-small) 0 0 0;
  padding: 0;
  list-style: none;
  text-transform: uppercase;
}

.cart__line-item-discounts li {
  line-height: 1.4em;
}

.cart__discounts {
  font-size: var(--font-size-body-small);
  color: var(--color-text-meta);
  margin: calc(4px * 3) 0 calc(4px * 5) 0;
  margin: var(--spacing-small) 0 var(--spacing-medium) 0;
  padding: 0;
  list-style: none;
  text-transform: uppercase;
}

.cart__discounts li {
  line-height: 1.4em;
}

.supports-cookies a {
  color: var(--color-accent);
  text-decoration: underline;
}

.cart-template__dynamic-checkout-buttons shopify-accelerated-checkout-cart {
  --shopify-accelerated-checkout-button-border-radius: var(
    --button-border-radius
  );
  --shopify-accelerated-checkout-inline-alignment: flex-end;
}

.cart-template__dynamic-checkout-buttons[\:not-has\(shopify-accelerated-checkout-cart\)] {
  width: 100%;
  display: flex;
}

.cart-template__dynamic-checkout-buttons:not(
    :has(shopify-accelerated-checkout-cart)
  ) {
  width: 100%;
  display: flex;
}

@media (min-width: 60em) {
  .cart-template__dynamic-checkout-buttons[\:not-has\(shopify-accelerated-checkout-cart\)] {
    justify-content: flex-end;
  }

  .cart-template__dynamic-checkout-buttons:not(
      :has(shopify-accelerated-checkout-cart)
    ) {
    justify-content: flex-end;
  }
}

.cart-template__dynamic-checkout-buttons[\:not-has\(shopify-accelerated-checkout-cart\)]
  div[role="button"] {
  border-radius: var(--button-border-radius) !important;
}

.cart-template__dynamic-checkout-buttons[\:not-has\(shopify-accelerated-checkout-cart\)]
  ul[role="list"] {
  flex-wrap: nowrap !important;
}

.cart-template__dynamic-checkout-buttons:not(
    :has(shopify-accelerated-checkout-cart)
  )
  div[role="button"] {
  border-radius: var(--button-border-radius) !important;
}

.cart-template__dynamic-checkout-buttons:not(
    :has(shopify-accelerated-checkout-cart)
  )
  ul[role="list"] {
  flex-wrap: nowrap !important;
}

[data-shopify-buttoncontainer] {
  justify-content: flex-end;
}

.cart-template__loading {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: cetner;
  background-color: var(--color-bg-transparent);
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s;
  text-align: center;
}

.cart-template__loading.is-active {
  opacity: 1;
  pointer-events: all;
  transition: opacity 0.25s;
}

.cart-template__quantity-error {
  display: none;
  margin: 4px 0 0;
  margin: var(--spacing-unit) 0 0;
  color: var(--color-text-error);
  font-size: var(--font-size-body-small);
}

.cart-template__quantity-error.cart-template__quantity-error--active {
  display: block;
}

:root {
  --collection-element-height: 40px;
  --collection-header-max-height: 480px;
}

.collection__container,
.collection-banner__container {
  max-width: 3000px;
  max-width: var(--max-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: calc(2px * 5);
  padding-right: calc(2px * 5);
}

@media (min-width: 38em) and (max-width: 60em) {
  .collection__container,
  .collection-banner__container {
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .collection__container,
  .collection-banner__container {
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
  }
}

.collection__container,
.collection-banner__container {
}

.collection__button,
.collection-banner__button {
  display: inline-flex;
  align-items: center;
  border: 0;
  background-color: transparent;
  color: var(--color-text);
  height: 40px;
  height: var(--collection-element-height);
  font-family: var(--font-body);
  font-weight: var(--font-body-weight);
  font-style: var(--font-body-style);
  white-space: nowrap;
  padding: 0 calc(4px * 3);
  padding: 0 var(--spacing-small);
  margin-right: calc(4px * 2);
  margin-right: calc(var(--spacing-extra-small) * 2);
  border-radius: 0;
  border: 1px solid var(--color-border);
  transition: border-color 0.25s ease-in-out;
}

.collection__button:hover,
.collection__button:active,
.collection-banner__button:hover,
.collection-banner__button:active {
  border-color: var(--color-border-darker);
}

.collection__button svg,
.collection-banner__button svg {
  color: var(--color-icon);
  width: 11px;
  height: 11px;
  margin-top: 3px;
  margin-left: calc(4px * 3);
  margin-left: var(--spacing-small);
}

.collection__tag,
.collection-banner__tag {
  display: flex;
  border-radius: 2px;
  border-radius: var(--radius-2);
  border: 1px solid var(--color-border);
  padding-left: calc(4px * 3);
  padding-left: var(--spacing-small);
  padding-right: calc(4px * 3);
  padding-right: var(--spacing-small);
  margin-right: calc(4px * 2);
  margin-right: calc(var(--spacing-extra-small) * 2);
  align-items: center;
  height: 40px;
  height: var(--collection-element-height);
  background-color: var(--color-bg);
  border-radius: 30px;
  flex-shrink: 0;
  transition: background-color 0.2s ease;
}

.collection__tag:hover,
.collection-banner__tag:hover {
  background-color: var(--color-background-meta);
}

.collection__tag:hover svg,
.collection-banner__tag:hover svg {
  color: var(--color-icon-darkest);
}

.collection__tag svg,
.collection-banner__tag svg {
  margin-left: 5px;
  pointer-events: none;
  color: var(--color-icon-darker);
  margin-top: 1px;
  transform: scale(0.8);
  transition: color 0.2s ease;
}

.collection__tag span,
.collection-banner__tag span {
  line-height: 0;
  pointer-events: none;
}

.collection {
  margin-bottom: calc(4px * 10);
  margin-bottom: var(--spacing-extra-large);
}

@media (min-width: 60em) {
  .collection {
    margin-bottom: calc(4px * 20);
    margin-bottom: var(--spacing-extra-extra-large);
  }
}

.collection__breadcrumbs {
  margin-top: calc(calc(4px * 3) * -1);
  margin-top: calc(var(--spacing-small) * -1);
  margin-bottom: calc(4px * 7);
  margin-bottom: var(--spacing-large);
}

@media (min-width: 38em) {
  .collection__breadcrumbs {
    margin-top: calc(calc(4px * 3) * -1);
    margin-top: calc(var(--spacing-small) * -1);
    margin-bottom: calc(4px * 7);
    margin-bottom: var(--spacing-large);
  }
}

.collection-banner {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-extra-large);
}

@media (min-width: 60em) {
  .collection-banner {
    margin-top: calc(4px * 20);
    margin-top: var(--spacing-extra-extra-large);
  }
}

.collection__header {
  position: relative;
  margin-bottom: calc(4px * 7);
  margin-bottom: var(--spacing-large);
  overflow: hidden;
}

.collection-banner--has-border .collection__header {
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  border-bottom: 1px solid var(--color-border);
}

@media (min-width: 38em) {
  .collection-banner--has-border .collection__header {
    padding-bottom: calc(4px * 10);
    padding-bottom: var(--spacing-extra-large);
  }
}

.collection__details {
  width: 100%;
  z-index: 1;
}

@media (min-width: 38em) {
  .collection__details:not(.collection__details--no-image) {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
}

.collection-banner--has-border
  .collection__details:not(.collection__details--no-image)
  .text-block {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

@media (min-width: 38em) {
  .collection-banner--has-border
    .collection__details:not(.collection__details--no-image)
    .text-block {
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-extra-large);
  }
}

@media (max-width: 38em) {
  .collection__details:not(.collection__details--no-image) .text-block {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }
}

@media (min-width: 38em) {
  .collection__details:not(.collection__details--no-image)
    .text-block.text-block--left {
    margin-left: calc(4px * 10);
    margin-left: var(--spacing-extra-large);
  }
}

@media (max-width: 38em) {
  .collection-banner--has-border .collection__details .text-block {
    margin-bottom: calc(4px * 7);
    margin-bottom: var(--spacing-large);
  }
}

.collection__image {
  height: calc(480px / 2);
  height: calc(var(--collection-header-max-height) / 2);
}

@media (min-width: 38em) {
  .collection__image {
    height: 480px;
    height: var(--collection-header-max-height);
  }
}

.collection__image-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: calc(480px / 2);
  height: calc(var(--collection-header-max-height) / 2);
}

@media (min-width: 38em) {
  .collection__image-overlay {
    height: 480px;
    height: var(--collection-header-max-height);
  }
}

@media (max-width: 38em) {
  .collection__image-overlay {
    display: none;
  }
}

.collection__products .grid-display {
  grid-column-gap: calc(4px * 5);
  -moz-column-gap: calc(4px * 5);
  column-gap: calc(4px * 5);
  grid-column-gap: var(--spacing-medium);
  -moz-column-gap: var(--spacing-medium);
  column-gap: var(--spacing-medium);
  grid-row-gap: calc(4px * 10);
  row-gap: calc(4px * 10);
  grid-row-gap: var(--spacing-extra-large);
  row-gap: var(--spacing-extra-large);
}

@media (max-width: 38em) {
  .collection__products .grid-display {
    grid-column-gap: calc(4px * 3);
    -moz-column-gap: calc(4px * 3);
    column-gap: calc(4px * 3);
    grid-column-gap: var(--spacing-small);
    -moz-column-gap: var(--spacing-small);
    column-gap: var(--spacing-small);
    grid-row-gap: calc(4px * 5);
    row-gap: calc(4px * 5);
    grid-row-gap: var(--spacing-medium);
    row-gap: var(--spacing-medium);
  }
}

.collection__content {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  display: block;
}

.collection--has-sidebar .collection__content {
  display: flex;
}

.collection__infinite-trigger {
  display: none;
}

.collection--pagination-click .collection__infinite-trigger {
  display: block;
  margin: calc(4px * 10) auto 0;
  margin: var(--spacing-extra-large) auto 0;
  width: 10%;
}

.collection__sidebar {
  display: none;
  width: 241px;
  margin-right: 20px;
  flex-shrink: 0;
}

@media (min-width: 60em) {
  .collection__sidebar {
    display: block;
  }
}

.collection__main-area {
  flex-grow: 1;
}

@media (max-width: 38em) {
  .collection__main-area {
    max-width: 100%;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .collection__main-area {
    max-width: calc(100vw - 80px);
  }
}

.collection__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 100px;
}

@media (min-width: 38em) and (max-width: 60em) {
  .grid-display--one-quarter .collection__empty {
    grid-column: 1 / 4;
  }
}

@media (min-width: 60em) {
  .grid-display--one-quarter .collection__empty {
    grid-column: 1 / 5;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .grid-display--one-third .collection__empty {
    grid-column: 1 / 3;
  }
}

@media (min-width: 60em) {
  .grid-display--one-third .collection__empty {
    grid-column: 1 / 4;
  }
}

@media (min-width: 38em) {
  .grid-display--one-half .collection__empty {
    grid-column: 1 / 3;
  }
}

.collection__empty a {
  color: var(--color-accent);
  text-decoration: underline;
  cursor: pointer;
}

.collection__empty a:hover {
  opacity: 0.5;
}

.collection__window {
  position: relative;
}

.collection__loading {
  position: absolute;
  top: 1px;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--color-bg-transparent);
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s;
  text-align: center;
  margin-top: -1px;
}

.collection__loading.is-active {
  opacity: 1;
  pointer-events: all;
  transition: opacity 0.25s;
}

.list-collections--title-center .list-collections--columns__title,
.list-collections--title-center .list-collections--columns__product-count {
  text-align: center;
}

.list-collections__image {
  width: 100%;
}

.list-collections__title,
.list-collections__product-count {
  width: 100%;
}

.page__header {
  max-width: 500px;
  max-width: var(--max-width-small);
}

.page__content {
  max-width: var(--content-max-width);
}

.search-template {
  margin: 0 auto;
  width: 100%;
  max-width: 3000px;
  max-width: var(--max-width);
  padding: calc(4px * 10) calc(4px * 5);
  padding: var(--spacing-extra-large) var(--spacing-medium);
  overflow: hidden;
  background-color: var(--color-bg);
}

@media (min-width: 38em) and (max-width: 60em) {
  .search-template {
    padding: calc(4px * 10);
    padding: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .search-template {
    padding: calc(4px * 20);
    padding: var(--spacing-extra-extra-large);
  }
}

.search-template form {
  position: relative;
  max-width: 500px;
  margin-right: auto;
  margin-left: auto;
}

.search-template input {
  border: none;
  border: 1px solid var(--color-border);
  font-family: inherit;
  line-height: 1.5em;
}

.search-template input::-moz-placeholder {
  color: var(--color-text-meta);
}

.search-template input:-ms-input-placeholder {
  color: var(--color-text-meta);
}

input::-moz-placeholder {
  color: var(--color-text-meta);
}

input:-ms-input-placeholder {
  color: var(--color-text-meta);
}

.search-template input::placeholder {
  color: var(--color-text-meta);
}

.search-template input {
  width: 100%;
}

.search-template__submit-button {
  position: absolute;
  top: 0;
  right: 0;
}

.search-template__heading {
  text-align: center;
}

.search-template__no-results {
  text-align: center;
  margin-top: calc(4px * 7);
  margin-top: var(--spacing-large);
  margin-bottom: calc(4px * 20);
  margin-bottom: var(--spacing-extra-extra-large);
}

.search-template__results {
  margin: calc(4px * 10) 0 calc(4px * 20) 0;
  margin: var(--spacing-extra-large) 0 var(--spacing-extra-extra-large) 0;
  padding: 0;
  list-style-type: none;
}

.search-template__item {
  display: block;
  flex-wrap: wrap;
  width: 100%;
  max-width: 800px;
  margin: 0 auto calc(4px * 5) auto;
  margin: 0 auto var(--spacing-medium) auto;
}

.search-template__item-link {
  display: block;
  width: 100%;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  border: 1px solid var(--color-border);
}

@media (min-width: 38em) {
  .search-template__item-link {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 0 calc(4px * 5);
    gap: 0 calc(4px * 5);
    grid-gap: 0 var(--spacing-medium);
    gap: 0 var(--spacing-medium);
  }
}

.search-template__image {
  flex: 0 1 200px;
  display: inline-block;
  width: 100%;
  flex-shrink: 0;
}

.search-template__image img {
  display: block;
  width: 100%;
}

.search-template__image svg {
  width: 100%;
}

.search-template__content {
  display: inline-block;
}

.search-template__pagination {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}

.search-template__filter-buttons {
  max-width: 800px;
  margin: calc(4px * 10) auto calc(4px * 5);
  margin: var(--spacing-extra-large) auto var(--spacing-medium);
}

.search-template__filter-buttons .collection-top-bar__filters {
  padding-bottom: 0;
}

.search-template__top-row:not(:empty) {
  max-width: 800px;
  margin: calc(4px * 5) auto calc(4px * 10);
  margin: var(--spacing-medium) auto var(--spacing-extra-large);
}

.search-template__loading {
  position: absolute;
  top: 1px;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--color-bg-transparent);
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s;
  text-align: center;
  margin-top: -1px;
}

.search-template__loading.is-active {
  opacity: 1;
  pointer-events: all;
  transition: opacity 0.25s;
}

@media (min-width: 60em) {
  .product-page-wrapper,
  .page-width {
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
  }
}

.product-page-wrapper .interactive-media,
.page-width .interactive-media {
  position: relative;
  width: 100%;
}

@media (min-width: 60em) {
  .product-page-wrapper .interactive-media,
  .page-width .interactive-media {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }
}

.product-page-wrapper .product__view-in-space,
.page-width .product__view-in-space {
  display: none;
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

@media (min-width: 60em) {
  .product-page-wrapper .product__view-in-space,
  .page-width .product__view-in-space {
    width: 70%;
  }
}

.product-page-wrapper .product__view-in-space.visible,
.page-width .product__view-in-space.visible {
  display: flex;
}

.product-page-wrapper .product__view-in-space > span,
.page-width .product__view-in-space > span {
  display: flex;
  align-items: center;
}

.product-page-wrapper .product__view-in-space svg,
.page-width .product__view-in-space svg {
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
}

.product-page-wrapper .media-wrapper,
.product-page-wrapper .interactive-media,
.page-width .media-wrapper,
.page-width .interactive-media {
  display: block;
  width: calc(100% - 1px);
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
}

@media (min-width: 38em) and (max-width: 60em) {
  .product-page-wrapper .media-wrapper,
  .product-page-wrapper .interactive-media,
  .page-width .media-wrapper,
  .page-width .interactive-media {
    margin-right: calc(4px * 5);
    margin-right: var(--spacing-medium);
  }
}

@media (min-width: 60em) {
  .product-page-wrapper .media-wrapper,
  .product-page-wrapper .interactive-media,
  .page-width .media-wrapper,
  .page-width .interactive-media {
    width: 100%;
    margin-right: 0;
  }
}

@media (min-width: 60em) {
  .product-page-wrapper .media-wrapper:last-of-type,
  .product-page-wrapper .interactive-media:last-of-type,
  .page-width .media-wrapper:last-of-type,
  .page-width .interactive-media:last-of-type {
    margin-bottom: 0;
  }
}

@media (min-width: 60em) {
  .product-page-wrapper
    .media-wrapper:not(.hidden)
    + .media-wrapper:not(.hidden),
  .page-width .media-wrapper:not(.hidden) + .media-wrapper:not(.hidden) {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }
}

.product-page-wrapper .accordion,
.page-width .accordion {
  background-color: transparent;
  padding: 0;
}

.product-page-wrapper .accordion .accordion:first-of-type,
.page-width .accordion .accordion:first-of-type {
  margin-top: calc(calc(4px * 3) / 2);
  margin-top: calc(var(--spacing-small) / 2);
}

.product-page-wrapper .accordion__label,
.page-width .accordion__label {
  color: var(--color-text);
}

.product-page-wrapper .accordion__label:hover,
.page-width .accordion__label:hover {
  background-color: var(--color-background-meta);
}

.product-page-wrapper .accordion__label:after,
.product-page-wrapper .accordion__label:before,
.page-width .accordion__label:after,
.page-width .accordion__label:before {
  background-color: var(--color-text);
}

.product-page-wrapper .accordion__text,
.page-width .accordion__text {
  color: var(--color-text);
}

.product-page-wrapper .accordion__group .accordion__group,
.product-page-wrapper .product__description .accordion__group,
.page-width .accordion__group .accordion__group,
.page-width .product__description .accordion__group {
  margin-top: calc(calc(4px * 5) - (calc(4px * 3) / 2));
  margin-top: calc(var(--spacing-medium) - (var(--spacing-small) / 2));
  margin-bottom: calc(calc(4px * 5) - (calc(4px * 3) / 2));
  margin-bottom: calc(var(--spacing-medium) - (var(--spacing-small) / 2));
}

.product-page-wrapper .accordion__text,
.page-width .accordion__text {
  padding-bottom: 0;
}

@media (min-width: 60em) {
  .product-page-wrapper .media-wrapper.hidden,
  .page-width .media-wrapper.hidden {
    display: none;
  }
}

.product--featured .media-wrapper.hidden {
  display: none;
}

.product--featured .accordion .accordion__label {
  color: var(--color-text);
}

.product--featured .accordion .accordion__label:hover {
  background-color: var(--color-background-meta);
}

.product--featured .accordion .accordion__label:after,
.product--featured .accordion .accordion__label:before {
  background-color: var(--color-text);
}

.product-page-wrapper__inner {
  position: relative;
  padding: calc(4px * 10) calc(4px * 5) 0;
  padding: var(--spacing-extra-large) var(--spacing-medium) 0;
  max-width: 1280px;
}

.product--full-width .product-page-wrapper__inner {
  max-width: unset;
}

@media (max-width: 60em) {
  .product-page-wrapper__inner {
    overflow: hidden;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .product-page-wrapper__inner {
    padding: calc(4px * 10);
    padding: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .product-page-wrapper__inner {
    padding: 0;
    margin: calc(4px * 20) auto;
    margin: var(--spacing-extra-extra-large) auto;
  }
}

.page-width .shopify-block {
  position: relative;
  padding: calc(4px * 10) calc(4px * 5);
  padding: var(--spacing-extra-large) var(--spacing-medium);
  max-width: 1280px;
}

@media (max-width: 60em) {
  .page-width .shopify-block {
    overflow: hidden;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .page-width .shopify-block {
    padding: calc(4px * 10);
    padding: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .page-width .shopify-block {
    padding: 0;
    margin: 0 auto;
  }
}

.product {
  padding-bottom: calc(4px * 10);
  padding-bottom: var(--spacing-extra-large);
  opacity: 0;
}

@media (min-width: 60em) {
  .product {
    display: flex;
    align-items: flex-start;
    justify-content: center;
  }

  .product.product--featured {
    align-items: center;
  }
}

.no-js .product,
.product.product--loaded {
  opacity: 1;
}

@media (min-width: 60em) {
  .product.product--has-thumbs .media-wrapper,
  .product.product--has-thumbs .interactive-media {
    margin-bottom: 0;
  }
}

.product__breadcrumbs {
  overflow: hidden;
  margin-top: calc(calc(4px * 3) * -1);
  margin-top: calc(var(--spacing-small) * -1);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

@media (min-width: 38em) {
  .product__breadcrumbs {
    margin-top: calc(calc(4px * 3) * -1);
    margin-top: calc(var(--spacing-small) * -1);
    margin-bottom: calc(4px * 7);
    margin-bottom: var(--spacing-large);
  }
}

.product__media-container {
  position: relative;
}

@media (min-width: 60em) {
  .product__media-container {
    flex: 0 0 var(--product-image-container-width);
    width: var(--product-image-container-width);
    display: flex;
    flex-wrap: wrap;
  }
}

@media (min-width: 60em) {
  .product--thumbnails-horizontal .product__media-container {
    display: block;
  }
}

.product__media {
  width: 100%;
}

@media (min-width: 60em) {
  .product--has-thumbs.product--thumbnails-vertical.product--thumbnails-small
    .product__media {
    width: calc(100% - (calc(4px * 5) + 60px));
    width: calc(100% - (var(--spacing-medium) + 60px));
  }
}

@media (min-width: 60em) {
  .product--has-thumbs.product--thumbnails-vertical.product--thumbnails-medium
    .product__media {
    width: calc(100% - (calc(4px * 5) + 80px));
    width: calc(100% - (var(--spacing-medium) + 80px));
  }
}

@media (min-width: 60em) {
  .product--has-thumbs.product--thumbnails-vertical.product--thumbnails-large
    .product__media {
    width: calc(100% - (calc(4px * 5) + 100px));
    width: calc(100% - (var(--spacing-medium) + 100px));
  }
}

@media (min-width: 60em) {
  .product--has-thumbs.product--thumbnails-horizontal .product__media {
    width: 100%;
  }
}

.product--thumbnails-vertical
  .product__media
  + .product-feature-widget.product-feature-widget--left {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-extra-large);
}

.product__media:after {
  content: "flickity";
  display: none;
}

@media (min-width: 60em) {
  .product__media:after {
    content: "";
  }
}

.product__media .flickity-viewport {
  overflow: visible;
}

.product__media .flickity-prev-next-button.previous {
  margin-left: calc(calc(4px * 5) * -1);
  margin-left: calc(var(--spacing-medium) * -1);
}

@media (min-width: 38em) and (max-width: 60em) {
  .product__media .flickity-prev-next-button.previous {
    margin-left: calc(calc(4px * 10) * -1);
    margin-left: calc(var(--spacing-extra-large) * -1);
  }
}

.product__media .flickity-prev-next-button.next {
  margin-right: calc(calc(4px * 5) * -1);
  margin-right: calc(var(--spacing-medium) * -1);
}

@media (min-width: 38em) and (max-width: 60em) {
  .product__media .flickity-prev-next-button.next {
    margin-right: calc(calc(4px * 10) * -1);
    margin-right: calc(var(--spacing-extra-large) * -1);
  }
}

.product__media-action {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  justify-content: flex-end;
  z-index: 1;
  pointer-events: none;
}

@media (max-width: 60em) {
  .product__media-action {
    display: none;
  }
}

.product__media-action .product__media-action-button {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
  color: var(--color-text);
  width: 35px;
  height: 35px;
  border-radius: 100%;
  background-color: var(--color-bg);
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);
  box-shadow: var(--shadow-2);
  border: 0;
  pointer-events: all;
  transition: box-shadow 0.1s ease-in-out;
}

.product__media-action .product__media-action-button:hover,
.product__media-action .product__media-action-button:focus {
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: var(--shadow-3);
}

.product__media-action .product__price,
.product__media-action .unit-price {
  margin-bottom: 6px;
}

@media (min-width: 60em) {
  .product__meta {
    flex: 0 0 35%;
    width: 35%;
    align-self: stretch;
    min-width: 200px;
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
  }

  .product--featured .product__meta {
    position: static;
    top: auto;
    display: flex;
  }
}

.product--featured .product__meta-inner {
}

@media (min-width: 60em) {
  .product__meta-inner {
    position: -webkit-sticky;
    position: sticky;
    top: 40px;
    top: var(--header-height);
  }

  .product--has-sticky-scroll .product__meta-inner {
    top: var(--product-details-top);
  }

  .product--featured .product__meta-inner {
    position: static;
    top: auto;
    width: 100%;
    margin-top: auto;
    margin-bottom: auto;
  }
}

@media (min-width: 38em) {
  .product__title {
    font-size: var(--title-font-size);
  }
}

@media (min-width: 38em) {
  .product__price {
    font-size: var(--price-font-size);
  }
}

.product__title,
.product__vendor,
.product__sku,
.product__rating,
.product__price,
.product__description,
.product__feature-widget,
.product__quantity-error,
.product__liquid {
  margin-top: calc((4px / 2) + 4px);
  margin-top: calc((var(--spacing-unit) / 2) + var(--spacing-unit));
  margin-bottom: calc((4px / 2) + 4px);
  margin-bottom: calc((var(--spacing-unit) / 2) + var(--spacing-unit));
}

.product__title:first-child,
.product__vendor:first-child,
.product__sku:first-child,
.product__rating:first-child,
.product__price:first-child,
.product__description:first-child,
.product__feature-widget:first-child,
.product__quantity-error:first-child,
.product__liquid:first-child {
  margin-top: 0;
}

.product__title:empty,
.product__vendor:empty,
.product__sku:empty,
.product__rating:empty,
.product__price:empty,
.product__description:empty,
.product__feature-widget:empty,
.product__quantity-error:empty,
.product__liquid:empty {
  margin-top: 0;
  margin-bottom: 0;
}

.product__title.hidden,
.product__vendor.hidden,
.product__sku.hidden,
.product__rating.hidden,
.product__price.hidden,
.product__description.hidden,
.product__feature-widget.hidden,
.product__quantity-error.hidden,
.product__liquid.hidden {
  display: none;
}

.product__quantity-error {
  color: var(--color-text-error);
}

.product__vendor a {
  color: var(--color-text);
  transition: opacity 0.2s ease;
}

.product__vendor a:hover {
  opacity: 0.7;
}

.section--contrast .product__vendor a {
  color: var(--color-contrast-text);
}

.product__border {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  border: 0;
  border-top: solid 1px var(--color-border);
}

.product__border:first-child {
  margin-top: 0;
}

.product__reviews {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.product__reviews.hidden {
  display: none;
}

.product__reviews-label {
  width: 100%;
  margin-bottom: calc(4px * 2);
  margin-bottom: calc(var(--spacing-unit) * 2);
}

@media (max-width: 60em) {
  .product__reviews-label {
    display: none;
  }
}

.product__reviews-stars {
  margin-right: 4px;
  margin-right: var(--spacing-unit);
}

.product__reviews-stars.hidden {
  display: none;
}

.product__reviews-stars .spr-summary-starrating {
  margin: 0;
}

.product__reviews-trigger,
.variant-popup__trigger {
  color: var(--color-accent);
  text-decoration: underline;
}

.product__reviews-trigger:hover,
.variant-popup__trigger:hover {
  opacity: 0.5;
}

.product__reviews-trigger:active,
.product__reviews-trigger:focus,
.variant-popup__trigger:active,
.variant-popup__trigger:focus {
  color: var(--color-accent);
}

.product__description .accordion {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.product__description .accordion:first-child {
  margin-top: 0;
}

.product__description p:first-of-type {
  margin-top: 0;
}

.product__description p:last-of-type {
  margin-bottom: 0;
}

.product__social-sharing {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.product__social-sharing.hidden {
  display: none;
}

div[data-media-type="external_video"] {
  padding-top: 57.5%;
  position: relative;
}

div[data-media-type="external_video"] iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
}

.product__share-container {
  display: flex;
  justify-content: flex-start;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  max-width: 220px;
}

.product__feature-widget {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.product__share {
  flex-grow: 0;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: auto;
  height: 48px;
  height: var(--height-button);
  margin: 0;
  padding-top: 0;
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
  padding-bottom: 0;
  padding-left: calc(calc(4px * 5) - (4px / 2));
  padding-left: calc(var(--spacing-medium) - (var(--spacing-unit) / 2));
  border: 1px solid var(--color-border);
  border-radius: var(--button-border-radius);
  background-color: transparent;
  color: var(--color-text);
  font-size: var(--font-size-body-base);
  transition: flex-grow 0.3s ease, border-color 0.15s ease-in-out;
}

.product__share:hover {
  border-color: var(--color-border-darker);
  color: var(--color-text);
}

.product__share.active {
  flex-grow: 1;
}

.product__share-text {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  transition: padding 0.3s ease;
  pointer-events: none;
}

.product__share-text .icon {
  display: block;
  width: 20px;
  height: 20px;
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
  color: var(--color-secondary-button-text);
}

.product__share-icons {
  visibility: hidden;
  position: absolute;
  right: calc(4px * 4);
  right: calc(var(--spacing-unit) * 4);
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
  margin-left: calc(4px * 5);
  margin-left: var(--spacing-medium);
  opacity: 0;
  transition: visibility 0.1s 0s ease-in-out, opacity 0.1s 0s;
  pointer-events: none;
}

.active .product__share-icons {
  opacity: 1;
  visibility: visible;
  transition: visibility 0.1s 0.1s ease-in-out, opacity 0.3s 0.1s;
}

.active .product__share-icons a {
  pointer-events: all;
}

.product__share-icons .share-icons {
  display: flex;
  align-items: center;
}

.product__share-icons a {
  display: block;
}

.product__share-icons .icon {
  display: block;
  width: calc(4px * 5);
  width: var(--spacing-medium);
  height: calc(4px * 5);
  height: var(--spacing-medium);
  color: var(--color-text);
  transition: color 0.2s ease;
}

.product__share-icons .icon:hover {
  color: var(--color-text-meta);
}

.product__share-icons a + a {
  margin-left: calc(4px * 3);
  margin-left: var(--spacing-small);
}

.plyr__controls {
  background-color: var(--color-bg) !important;
}

.plyr__control {
  background-color: var(--color-bg) !important;
}

.plyr__control.plyr__control--overlaid {
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2), 0px 0px 2px rgba(0, 0, 0, 0.25);
  box-shadow: var(--shadow-1);
}

.plyr__control.plyr__control--overlaid svg {
  opacity: 0.6;
  transition: opacity 0.25s;
}

.plyr__control.plyr__control--overlaid:hover svg {
  opacity: 1;
  transition: opacity 0.25s;
}

.plyr__control,
.plyr__progress__buffer,
.plyr__progress input[type="range"] {
  color: var(--color-text) !important;
}

.variant-popup__content {
  display: none;
}

.product-form__gift-card-recipient {
  margin-bottom: calc(4px * 7);
  margin-bottom: var(--spacing-large);
}

.no-js .product-form__gift-card-recipient {
  margin-top: calc(4px * 7);
  margin-top: var(--spacing-large);
}

.checkbox-input__wrapper {
  display: flex;
  align-items: center;
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
  border-radius: 2px;
  transition: background-color 0.3s;
  cursor: pointer;
}

.checkbox-input__wrapper:hover {
  background-color: var(--color-background-meta);
  transition: background-color 0.3s;
}

.checkbox-input__wrapper:hover .checkbox-input__icon {
  border-color: var(--color-border-darkest);
}

.checkbox-input__wrapper:active .checkbox-input__icon {
  transform: scale(0.9);
  transition: transform 0.2s;
}

.no-js .checkbox-input__wrapper {
  display: none;
}

.checkbox-input__input:checked ~ .checkbox-input__icon {
  transition: transform 0.2s, background-color 0.3s;
  background-color: var(--color-text);
  border: 1px solid var(--color-text);
}

.checkbox-input__input:checked ~ .checkbox-input__icon svg {
  transition: opacity 0.3s;
  opacity: 1;
}

.checkbox-input__input:focus ~ .checkbox-input__icon {
  outline: 2px solid var(--color-border-darkest);
}

.checkbox-input__icon {
  display: flex;
  align-items: center;
  justify-content: space-around;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  color: var(--color-bg);
  border: 1px solid var(--color-border-medium);
  border-radius: 2px;
  transition: transform 0.2s, color 0.3s;
}

.checkbox-input__icon svg {
  display: flex;
  width: 12px;
  height: 12px;
  opacity: 0;
}

.checkbox-input__label {
  display: block;
  padding-left: calc(4px * 3);
  padding-left: var(--spacing-small);
}

.gift-card-recipient__form-errors {
  color: var(--color-error-message);
}

.gift-card-recipient-fields .input {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.gift-card-recipient-fields .input.input-error {
  border: 1px solid var(--color-error-message);
  color: var(--color-error-message);
}

.gift-card-recipient-fields textarea.input {
  margin-bottom: 0;
}

.gift-card-recipient-fields .textarea-note {
  margin-top: calc(calc(4px * 3) * -0.5);
  margin-top: calc(var(--spacing-small) * -0.5);
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.password {
  text-align: center;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
}

.password .password__background-image,
.password .password__background-image-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.password__login-button {
  position: fixed;
  top: calc(4px * 10);
  top: var(--spacing-extra-large);
  right: calc(4px * 10);
  right: var(--spacing-extra-large);
  --button-size: 48px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  width: var(--button-size);
  height: var(--button-size);
  background-color: var(--color-bg-contrast);
  box-shadow: 0px 2px 4px rgba(26, 26, 26, 0.1), 0px 1px 2px rgba(0, 0, 0, 0.12);
  cursor: pointer;
  pointer-events: all;
}

.password__heading {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.password__content {
  width: 100%;
  max-width: 500px;
  padding: 0 var(--spacing-extra-);
}

.password:not(.welcome) .password__content[data-content="default"] {
  display: none;
}

.password:not(.welcome) .lock {
  display: none;
}

.password.welcome .password__content[data-content="login"] {
  display: none;
}

.password.welcome .close {
  display: none;
}

.password__login-heading {
  margin-bottom: calc(4px * 7);
  margin-bottom: var(--spacing-large);
}

.password__subheading {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 8);
  margin-bottom: calc(var(--spacing-unit) * 8);
}

.password__text {
  margin: calc(4px * 8) calc(4px * 5) calc(4px * 5) calc(4px * 5);
  margin: calc(var(--spacing-unit) * 8) var(--spacing-medium)
    var(--spacing-medium) var(--spacing-medium);
}

.password__notify-form,
.password__login-form {
  display: flex;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  flex-wrap: wrap;
  justify-content: center;
}

@media (min-width: 38em) {
  .password__notify-form,
  .password__login-form {
    flex-wrap: nowrap;
  }
}

.password__notify-form .input,
.password__login-form .input {
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
}

@media (max-width: 38em) {
  .password__notify-form .input,
  .password__login-form .input {
    margin-left: calc(4px * 5);
    margin-left: var(--spacing-medium);
  }
}

.password__notify-form .bttn,
.password__login-form .bttn {
  flex-shrink: 0;
}

@media (max-width: 38em) {
  .password__notify-form .bttn,
  .password__login-form .bttn {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }
}

.form-errors {
  font-size: var(--font-size-body-base);
  line-height: var(--line-height-body-base);
  margin: calc(4px * 5) 0;
  margin: var(--spacing-medium) 0;
  color: var(--color-text-error);
}

.form-errors ul {
  margin: 0;
  padding: 0;
}

.form-errors li {
  list-style: none;
}

.password__success {
  opacity: 0.75;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.password__share {
  margin-top: calc(4px * 7);
  margin-top: var(--spacing-large);
}

.login {
  width: 100%;
  max-width: 460px;
  margin: calc(4px * 7) auto;
  margin: var(--spacing-large) auto;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  text-align: center;
  border: 1px solid var(--color-border);
}

@media (min-width: 38em) {
  .login {
    margin-right: auto;
    margin-left: auto;
    padding: calc(4px * 7);
    padding: var(--spacing-large);
  }
}

.login__heading {
  margin-top: 0;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.login__meta {
  line-height: 1.71em;
  line-height: var(--line-height-body);
}

.login__links {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.login input {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.login__links a {
  color: var(--color-accent);
  text-decoration: underline;
}

.login__links a:hover {
  opacity: 0.5;
}

.login .form-success {
  text-align: center;
}

.account a {
  color: var(--color-accent);
}

.account a:hover {
  opacity: 0.5;
}

.account__heading {
  text-align: center;
}

.account__section-heading {
  text-align: center;
}

.account__table {
  margin-bottom: calc(4px * 7);
  margin-bottom: var(--spacing-large);
}

@media (min-width: 38em) {
  .account__table {
    padding: calc(4px * 5);
    padding: var(--spacing-medium);
  }
}

.account__order-meta {
  text-align: center;
  line-height: 1.71em;
  line-height: var(--line-height-body);
}

@media (min-width: 38em) {
  .account__address-list {
    display: grid;
    grid-gap: calc(4px * 5);
    grid-gap: var(--spacing-medium);
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .account__address-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 60em) {
  .account__address-list {
    grid-template-columns: repeat(3, 1fr);
  }
}

.account__address-inner {
  width: 100%;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  line-height: 1.71em;
  line-height: var(--line-height-body);
  border: 1px solid var(--color-border);
}

.account__logout {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-extra-large);
  font-style: italic;
  text-align: center;
  color: var(--color-text-meta);
}

.account .responsive-table {
  width: 100%;
}

.account .responsive-table th {
  text-align: left;
  padding: calc(4px * 3) 4px;
  padding: var(--spacing-small) var(--spacing-extra-small);
}

.account .responsive-table td {
  padding: calc(4px * 3) 4px;
  padding: var(--spacing-small) var(--spacing-extra-small);
}

@media (max-width: 38em) {
  .account .responsive-table,
  .account .responsive-table tbody {
    display: block;
    width: 100%;
  }

  .account .responsive-table a,
  .account .responsive-table tbody a {
    text-decoration: underline;
  }

  .account .responsive-table thead {
    display: none;
  }

  .account .responsive-table tr,
  .account .responsive-table th,
  .account .responsive-table td {
    display: block;
    padding: 0;
    text-align: left;
    white-space: normal;
  }

  .account .responsive-table tr {
    padding: calc(4px * 3) 0;
    padding: var(--spacing-small) 0;
    margin-top: calc(4px * 3) 0;
    margin-top: var(--spacing-small) 0;
  }

  .account .responsive-table tr + tr {
    border-top: 1px solid var(--color-border);
  }

  .account .responsive-table th[data-label]:before,
  .account .responsive-table td[data-label]:before {
    content: attr(data-label) ":\00A0";
    font-weight: bold;
  }

  .account .responsive-table td {
    border: none;
  }

  .account .responsive-table td:empty {
    display: none;
  }

  .account .responsive-table td:first-child {
    margin-bottom: 4px;
    margin-bottom: var(--spacing-unit);
  }

  .account .responsive-table td:first-child:before {
    content: "";
  }
}

@media (max-width: 38em) {
  .account .responsive-table .small--hide {
    display: none;
  }
}

.account .input {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.account select {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.account .form-success {
  text-align: center;
}

.account__auth-wrapper {
  width: 100%;
  max-width: 460px;
  margin-right: auto;
  margin-left: auto;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  text-align: center;
  border: 1px solid var(--color-border);
}

@media (min-width: 38em) {
  .account__auth-wrapper {
    padding: calc(4px * 7);
    padding: var(--spacing-large);
  }
}

.account__auth-wrapper-heading {
  margin-top: 0;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.shopify-challenge__container {
  width: 100%;
  max-width: 460px;
  margin: calc(4px * 7) auto;
  margin: var(--spacing-large) auto;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  text-align: center;
}

.shopify-challenge__container ul {
  margin: 0;
  padding: 0;
}

.shopify-challenge__container .shopify-challenge__button {
  text-transform: uppercase;
  font-family: var(--font-body);
  font-weight: var(--font-body-weight);
  font-size: var(--font-size-body-small);
  letter-spacing: 0.05em;
  text-align: center;
  height: 48px;
  height: var(--height-button);
  padding: 0 25px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  line-height: 1.5em;
  border-radius: 1px;
  background-color: var(--color-accent);
  color: var(--color-button-text);
  border: none;
}

.account__address-default {
  position: absolute;
  top: calc(4px * 5);
  top: var(--spacing-medium);
  right: calc(4px * 5);
  right: var(--spacing-medium);
  font-weight: var(--font-body-bold-weight);
}

.account__address-set-as-default input {
  width: unset;
}

.contact__inner {
  max-width: var(--content-max-width);
  margin-right: auto;
  margin-left: auto;
}

.contact--has-image .contact__inner {
  max-width: unset;
  margin: 0;
}

@media (min-width: 60em) {
  .contact--has-image .contact__container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: calc(4px * 10);
    grid-gap: var(--spacing-extra-large);
  }
}

.contact__image {
  width: 100%;
}

@media (max-width: 60em) {
  .contact__image {
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-extra-large);
  }
}

.contact__image .image {
  height: 100%;
}

.contact__content {
  width: 100%;
}

@media (min-width: 60em) {
  .contact__content {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

.contact__content-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media (min-width: 60em) {
  .contact__content-inner {
    max-width: var(--content-max-width);
  }
}

.contact__text {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.contact__text p:first-of-type {
  margin-top: 0;
}

.contact__text p:last-of-type {
  margin-bottom: 0;
}

.contact__form .input {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

@media (min-width: 38em) {
  .contact--has-image .contact__form-input-side-by-side {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: calc(4px * 3);
    grid-gap: var(--spacing-small);
  }
}

.contact__success {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.about__grid {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

@media (min-width: 38em) {
  .about__grid {
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .about__grid {
    display: grid;
    grid-gap: calc(4px * 5);
    grid-gap: var(--spacing-medium);
  }
}

.about__grid--1 .about__block--1 {
  padding-top: 150%;
}

@media (min-width: 60em) {
  .about__grid--1 .about__block--1 {
    padding-top: 50%;
  }
}

.about__grid--2 {
  grid-template-columns: repeat(2, 1fr);
}

.about__grid--2 .about__block--1,
.about__grid--2 .about__block--2 {
  padding-top: 100%;
}

.about__grid--3 {
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
}

.about__grid--3 .about__block--1 {
  grid-row: 1 / 3;
  padding-top: 150%;
}

@media (max-width: 60em) {
  .about__grid--3 .about__block--2,
  .about__grid--3 .about__block--3 {
    padding-top: 75%;
  }
}

.about__grid--4 {
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(3, 1fr);
}

.about__grid--4 .about__block--1 {
  grid-row: 1 / span 2;
  padding-top: 120%;
}

@media (max-width: 60em) {
  .about__grid--4 .about__block--2,
  .about__grid--4 .about__block--4 {
    padding-top: 70%;
  }
}

.about__grid--4 .about__block--3 {
  grid-row: 2 / span 2;
  padding-top: 120%;
}

.about__grid--5 {
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(5, 1fr);
}

.about__grid--5 .about__block--1 {
  grid-column: 1 / span 2;
  grid-row: 1 / span 3;

  padding-top: 100%;
}

.about__grid--5 .about__block--2 {
  grid-row: 1 / span 2;
}

@media (max-width: 60em) {
  .about__grid--5 .about__block--2 {
    padding-top: 140%;
  }
}

@media (max-width: 60em) {
  .about__grid--5 .about__block--3 {
    padding-top: 75%;
  }
}

.about__grid--5 .about__block--4 {
  grid-column: 1 / span 2;
  grid-row: span 2;
}

@media (max-width: 60em) {
  .about__grid--5 .about__block--4 {
    padding-top: 66%;
  }
}

.about__grid--5 .about__block--5 {
  grid-row: span 2;
}

@media (max-width: 60em) {
  .about__grid--5 .about__block--5 {
    padding-top: 135%;
  }
}

.about__block {
  position: relative;
  overflow: hidden;
  background-color: var(--color-meta-background);
}

@media (max-width: 60em) {
  .about__block {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }
}

.about__block .image,
.about__block .placeholder-image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.about__block .image svg,
.about__block .placeholder-image svg {
  width: 100%;
  height: 100%;
}

.about__block-video {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
}

.gift-card {
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  text-align: center;
}

@media (min-width: 38em) {
  .gift-card {
    padding: calc(4px * 7);
    padding: var(--spacing-large);
  }
}

.gift-card__store-name {
  display: flex;
  align-items: center;
  justify-content: center;
}

.gift-card__logo-image {
  display: inline-block;
}

.gift-card__title {
  margin-top: 0;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.gift-card__container {
  max-width: 560px;
  margin: 0 auto;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

@media (min-width: 38em) {
  .gift-card__container {
    padding: calc(4px * 7);
    padding: var(--spacing-large);
  }
}

.gift-card__graphic img {
  width: 100%;
  display: block;
}

.gift-card__initial-balance {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.gift-card__shopping-link {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.print-giftcard {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  color: var(--color-accent);
  text-decoration: underline;
}

#qr-code {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  display: flex;
  justify-content: center;
}

@media (min-width: 38em) {
  #qr-code {
    margin-top: calc(4px * 7);
    margin-top: var(--spacing-large);
  }
}

.apple-wallet-image {
  display: block;
  margin: 0 auto;
}

@media print {
  @page {
    margin: 0.5cm;
  }

  p {
    orphans: 3;
    widows: 3;
  }

  .print-giftcard,
  .apple-wallet {
    display: none;
  }
}

.collapsible-row-list__inner {
  color: var(--color-text);
  background-color: var(--color-bg);
  margin: 0 auto;
  max-width: var(--section-max-width);
}

.section--contrast .collapsible-row-list__inner {
  color: var(--color-contrast-text);
  background-color: var(--color-contrast-bg);
}

.collapsible-row-list-item {
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
}

.collapsible-row-list-item:first-of-type {
  padding-top: 0;
}

.collapsible-row-list-item:last-of-type {
  padding-bottom: 0;
}

.collapsible-row-list__title + .collapsible-row-list-item,
.collapsible-row-list-item + .collapsible-row-list-item {
  border-top: 1px solid var(--color-border);
}

.section--contrast .collapsible-row-list__title + .collapsible-row-list-item,
.section--contrast .collapsible-row-list-item + .collapsible-row-list-item {
  border-top-color: var(--color-contrast-border);
}

.collapsible-row-list-item__label {
  display: flex;
  position: relative;
  width: 100%;
  background-color: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
  text-align: left;
  color: inherit;
}

.collapsible-row-list-item__label[aria-expanded="true"] > :after {
  transform: rotate(90deg);
}

.collapsible-row-list-item__label .collapsible-row-list-item__label-icon {
  padding-left: calc(4px * 10);
  padding-left: var(--spacing-extra-large);
}

.collapsible-row-list-item__label .collapsible-row-list-item__label-icon:after {
  content: "";
  position: absolute;
  right: 4px;
  right: var(--spacing-extra-small);
  top: 50%;
  height: 10px;
  width: 1px;
  border-radius: 1px;
  margin-right: 5px;
  margin-top: -5px;
  transition: transform 0.3s ease;
  pointer-events: none;
  background-color: var(--color-text);
}

.collapsible-row-list-item__label
  .collapsible-row-list-item__label-icon:before {
  content: "";
  position: absolute;
  right: 4px;
  right: var(--spacing-extra-small);
  top: 50%;
  height: 1px;
  width: 11px;
  border-radius: 1px;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
  pointer-events: none;
  background-color: var(--color-text);
}

.section--contrast
  .collapsible-row-list-item__label
  .collapsible-row-list-item__label-icon:before,
.section--contrast
  .collapsible-row-list-item__label
  .collapsible-row-list-item__label-icon:after {
  background-color: var(--color-contrast-text);
}

.collapsible-row-list-item__text {
  display: none;
  padding-top: calc(4px * 3);
  padding-top: var(--spacing-small);
  max-width: var(--text-max-width);
}

.collapsible-row-list-item__text p:first-of-type {
  margin-top: 0;
}

.collapsible-row-list-item__text p:last-of-type {
  margin-bottom: 0;
}

.featured-collection--square .placeholder-svg,
.featured-collection--landscape .placeholder-svg,
.featured-collection--portrait .placeholder-svg {
  position: absolute;
  top: 50%;
  height: 100%;
  width: 100%;
  transform: translateY(-50%);
}

.featured-collection--square .product-item__placeholder,
.featured-collection--landscape .product-item__placeholder,
.featured-collection--portrait .product-item__placeholder {
  position: relative;
  overflow: hidden;
}

.featured-collection--square .product-item__placeholder {
  padding-top: 100%;
}

.featured-collection--landscape .product-item__placeholder {
  padding-top: calc((2 / 3) * 100%);
}

.featured-collection--portrait .product-item__placeholder {
  padding-top: calc((3 / 2) * 100%);
}

@media (max-width: 38em) {
  .featured-collection-row .text-block--right .text-block__subheading,
  .featured-collection-row .text-block--right .text-block__heading {
    margin-right: auto;
    margin-left: unset;
  }
}

.featured-collection-row--square .placeholder-svg,
.featured-collection-row--landscape .placeholder-svg,
.featured-collection-row--portrait .placeholder-svg {
  position: absolute;
  top: 50%;
  height: 100%;
  width: 100%;
  transform: translateY(-50%);
}

.featured-collection-row--square .product-item__placeholder,
.featured-collection-row--landscape .product-item__placeholder,
.featured-collection-row--portrait .product-item__placeholder {
  position: relative;
  overflow: hidden;
}

.featured-collection-row--square .product-item__placeholder {
  padding-top: 100%;
}

.featured-collection-row--landscape .product-item__placeholder {
  padding-top: calc((2 / 3) * 100%);
}

.featured-collection-row--portrait .product-item__placeholder {
  padding-top: calc((3 / 2) * 100%);
}

.featured-product {
  display: flex;
  flex-direction: column;
  border: 1px solid red;
}

@media (min-width: 60em) {
  .featured-product {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-gap: calc(4px * 10);
    grid-gap: var(--spacing-extra-large);
  }
}

.featured-product .interactive-media {
  position: relative;
  width: 100%;
}

.featured-product .accordion__group:last-of-type {
  border-bottom: 0;
}

@media (min-width: 60em) {
  .featured-product__media {
    grid-column: 1 / span 4;
  }
}

.featured-product__media .image {
  width: 100%;
}

.featured-product__media script {
  display: none;
}

.featured-product__media .media.hidden {
  display: none;
}

.featured-product__image,
.interactive-media {
  display: block;
  width: calc(100% - 1px);
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
}

@media (min-width: 38em) and (max-width: 60em) {
  .featured-product__image,
  .interactive-media {
    margin-right: calc(4px * 5);
    margin-right: var(--spacing-medium);
  }
}

@media (min-width: 60em) {
  .featured-product__image,
  .interactive-media {
    width: 100%;
    margin-right: 0;
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }
}

@media (min-width: 60em) {
  .featured-product__image:last-of-type,
  .interactive-media:last-of-type {
    margin-bottom: 0;
  }
}

.featured-product__meta {
  width: 100%;
}

@media (min-width: 60em) {
  .featured-product__meta {
    grid-column: 5 / span 2;
    display: flex;
    align-items: center;
  }
}

.featured-product__meta-inner {
  width: 100%;
}

.featured-product__header {
  display: none;
}

@media (min-width: 60em) {
  .featured-product__header {
    display: block;
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-extra-large);
  }
}

.featured-product__mobile-header {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

@media (min-width: 60em) {
  .featured-product__mobile-header {
    display: none;
  }
}

.featured-product__description > .accordion:first-child {
  margin-top: calc(calc(4px * 5) * -1);
  margin-top: calc(var(--spacing-medium) * -1);
}

.featured-product__description .accordion {
  background-color: transparent;
  padding: 0;
  margin: 0;
  color: var(--color-text);
}

.featured-product__description .accordion__group {
  border-color: var(--color-border);
}

.featured-product__description .accordion__group:after {
  background-color: var(--color-icon);
}

.featured-product__description .accordion__label {
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
  color: var(--color-text);
}

.featured-product__description p:first-of-type {
  margin-top: 0;
}

.featured-product__description p:last-of-type {
  margin-bottom: 0;
}

.product__share-accordion .accordion__group {
  border-top: 1px solid var(--color-border);
}

.product__share-accordion .accordion__group .share__icon {
  text-decoration: none;
}

.product__share-accordion .share {
  margin-top: 0;
}

.featured-product__share-accordion .accordion__group {
  border-top: 1px solid var(--color-border);
}

.featured-product__share-accordion .accordion__group .share__icon {
  text-decoration: none;
}

.featured-product__share-accordion .share {
  margin-top: 0;
}

.featured-product__social-sharing {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.featured-product__social-sharing.hidden {
  display: none;
}

.featured-product__cta {
  display: inline-block;
}

.featured-product__cta:hover {
  opacity: 0.5;
}

.image-with-text.section--full-height {
  padding-top: 0;
  padding-bottom: 0;
  position: relative;
  margin-bottom: -1px;
}

@media (max-width: 60em) {
  .image-with-text.section--full-height {
    padding: 0;
  }
}

@media (max-width: 60em) {
  .image-with-text.section--full-height.image-with-text--background-transparent
    .image-with-text__text-block {
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-extra-large);
  }
}

@media (max-width: 38em) {
  .image-with-text.section--full-height.image-with-text--background-transparent
    .image-with-text__text-block {
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .image-with-text.section--full-height.image-with-text--background-transparent
    .image-with-text__text-block {
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
  }
}

@media (max-width: 60em) {
  .image-with-text.section--full-height:not(
      .image-with-text--background-transparent
    )
    .image-with-text__text-block {
    padding-top: calc(4px * 10);
    padding-top: var(--spacing-extra-large);
    padding-bottom: calc(4px * 10);
    padding-bottom: var(--spacing-extra-large);
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .image-with-text.section--full-height:not(
      .image-with-text--background-transparent
    )
    .image-with-text__text-block {
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .image-with-text.section--full-height.image-with-text--image-position-right
    .image-with-text__image {
    margin-right: calc(calc(4px * 20) * -1);
    margin-right: calc(var(--spacing-extra-extra-large) * -1);
    margin-left: 0;
  }
}

@media (min-width: 60em) {
  .image-with-text.section--full-height.image-with-text--image-position-left
    .image-with-text__image {
    margin-right: 0;
    margin-left: calc(calc(4px * 20) * -1);
    margin-left: calc(var(--spacing-extra-extra-large) * -1);
  }
}

@media (max-width: 60em) {
  .image-with-text.image-with-text--image-position-right
    .image-with-text__text-container {
    order: 2;
  }
}

.image-with-text__inner {
  position: relative;
  display: flex;
  flex-direction: column;
}

@media (min-width: 60em) {
  .image-with-text__inner {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
  }
}

.image-with-text__text-container {
  width: 100%;
}

@media (min-width: 60em) {
  .image-with-text--image-position-left .image-with-text__text-container,
  .image-with-text--image-position-right .image-with-text__text-container,
  .image-with-text--background-transparent .image-with-text__text-container {
    grid-row: 1;
    grid-column: 1 / 7;
    display: flex;
  }
}

@media (max-width: 60em) {
  .image-with-text--background-transparent .image-with-text__text-container {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .image-with-text--image-position-right.image-with-text--image-width-one-half
    .image-with-text__text-container,
  .image-with-text--image-position-right.image-with-text--image-width-two-third
    .image-with-text__text-container {
    display: flex;
    align-items: center;
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
  }
}

@media (min-width: 60em) {
  .image-with-text--image-position-right.image-with-text--image-width-one-half
    .image-with-text__text-container {
    grid-column: 1 / 4;
  }
}

@media (min-width: 60em) {
  .image-with-text--image-position-right.image-with-text--image-width-two-third
    .image-with-text__text-container {
    grid-column: 1 / 3;
  }
}

@media (min-width: 60em) {
  .image-with-text--image-position-left.image-with-text--image-width-one-half
    .image-with-text__text-container,
  .image-with-text--image-position-left.image-with-text--image-width-two-third
    .image-with-text__text-container {
    display: flex;
    align-items: center;
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
  }
}

@media (min-width: 60em) {
  .image-with-text--image-position-left.image-with-text--image-width-one-half
    .image-with-text__text-container {
    grid-column: 4 / 7;
  }
}

@media (min-width: 60em) {
  .image-with-text--image-position-left.image-with-text--image-width-two-third
    .image-with-text__text-container {
    grid-column: 5 / 7;
  }
}

.image-with-text--text-alignment-left .image-with-text__text-container {
  justify-content: flex-start;
}

.image-with-text--text-alignment-center .image-with-text__text-container {
  justify-content: center;
}

.image-with-text--text-alignment-right .image-with-text__text-container {
  justify-content: flex-end;
}

.image-with-text__text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.image-with-text__text .text-block {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.image-with-text--image-position-right .image-with-text__text .text-block {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

@media (min-width: 60em) {
  .image-with-text__text .text-block {
    margin: 0;
  }
}

.image-with-text__image {
  position: relative;
  overflow: hidden;
  height: 100%;
}

@media (min-width: 60em) {
  .image-with-text__image {
    grid-row: 1;
  }
}

.image-with-text--image-position-right.image-with-text--image-width-one-half
  .image-with-text__image {
  grid-column: 4 / 7;
}

.image-with-text--image-position-left.image-with-text--image-width-one-half
  .image-with-text__image {
  grid-column: 1 / 4;
}

.image-with-text--image-position-right.image-with-text--image-width-two-third
  .image-with-text__image {
  grid-column: 3 / 7;
}

.image-with-text--image-position-left.image-with-text--image-width-two-third
  .image-with-text__image {
  grid-column: 1 / 5;
}

.image-with-text--aspect-ratio-square .image-with-text__image .image,
.image-with-text--aspect-ratio-square .image-with-text__image .placeholder-svg,
.image-with-text--aspect-ratio-landscape .image-with-text__image .image,
.image-with-text--aspect-ratio-landscape
  .image-with-text__image
  .placeholder-svg,
.image-with-text--aspect-ratio-portrait .image-with-text__image .image,
.image-with-text--aspect-ratio-portrait
  .image-with-text__image
  .placeholder-svg {
  position: absolute;
  top: 50%;
  height: 100%;
  width: 100%;
  transform: translateY(-50%);
}

.image-with-text--aspect-ratio-square .image-with-text__image {
  padding-top: 100%;
}

.image-with-text--aspect-ratio-landscape .image-with-text__image {
  padding-top: calc((2 / 3) * 100%);
}

.image-with-text--aspect-ratio-portrait .image-with-text__image {
  padding-top: calc((3 / 2) * 100%);
}

.image-with-text__image .image {
  height: 100%;
}

.image-with-text__image video.image {
  width: 100%;
}

.image-with-text__text-block {
  color: var(--text-color);
  background: var(--background-color);
  background: var(--background-gradient, var(--background-color));
  will-change: transform;
}

@media (max-width: 60em) {
  .image-with-text__text-block {
    width: 100%;
  }
}

@media (min-width: 60em) {
  .image-with-text--image-position-left .image-with-text__text-block {
    margin-left: auto;
  }
}

.image-with-text__text-block--center {
  text-align: center;
}

.image-with-text__text-block--center .text-block__subheading,
.image-with-text__text-block--center .text-block__heading {
  margin-right: auto;
  margin-left: auto;
}

.image-with-text__text-block--right {
  text-align: right;
}

.image-with-text__text-block--right .text-block__subheading,
.image-with-text__text-block--right .text-block__heading {
  margin-left: auto;
}

.image-with-text__text-block .text-block__subheading p:first-of-type {
  margin-top: 0;
}

.image-with-text__text-block .text-block__subheading p:last-of-type {
  margin-bottom: 0;
}

.image-with-text__video {
  display: flex;
  justify-content: center;
}

.image-with-text__video video {
  width: 100%;
  height: 100%;
}

.image-with-text--aspect-ratio-square .image-with-text__video,
.image-with-text--aspect-ratio-landscape .image-with-text__video,
.image-with-text--aspect-ratio-portrait .image-with-text__video {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.image-with-text--aspect-ratio-square .image-with-text__video video,
.image-with-text--aspect-ratio-landscape .image-with-text__video video,
.image-with-text--aspect-ratio-portrait .image-with-text__video video {
  -o-object-fit: cover;
  object-fit: cover;
}

.image-with-text-split {
  display: flex;
  background: var(--background-color);
  background: var(--background-gradient, var(--background-color));
}

@media (max-width: 38em) {
  .image-with-text-split {
    flex-direction: column;
  }
}

.image-with-text-split--feature-text-above
  .image-with-text-split__featured-content {
  order: -1;
  margin-top: 0;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.image-with-text-split--feature-text-center
  .image-with-text-split__featured-content {
  text-align: center;
}

.image-with-text-split--feature-text-right
  .image-with-text-split__featured-content {
  text-align: right;
}

.image-with-text-split__featured {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: calc(4px * 5) calc(4px * 5) calc(4px * 10);
  padding: var(--spacing-medium) var(--spacing-medium)
    var(--spacing-extra-large);
}

@media (min-width: 38em) {
  .image-with-text-split__featured {
    width: 50%;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .image-with-text-split__featured {
    padding: 60px;
  }
}

@media (min-width: 60em) {
  .image-with-text-split__featured {
    padding: 120px;
  }
}

.image-with-text-split__featured-content {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.image-with-text-split__featured-content p:first-of-type {
  margin-top: 0;
}

.image-with-text-split__featured-content p:last-of-type {
  margin-bottom: 0;
}

.image-with-text-split__image-wrapper {
  position: relative;
}

@media (min-width: 38em) {
  .image-with-text-split__image-wrapper {
    width: 50%;
  }
}

.image-with-text-split__image-wrapper .content-overlay .rte {
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
  margin-left: calc(4px * 5);
  margin-left: var(--spacing-medium);
}

.image-with-text-split__image-wrapper .content-overlay .rte a {
  color: inherit;
}

.image-with-text-split__image-wrapper .image-with-text-split__placeholder {
  height: 100%;
}

@media (min-width: 38em) {
  .image-with-text-split__image {
    position: relative;
    width: 100%;
    height: 100%;
    padding-top: 0 !important;
  }
}

.image-with-text-split__gradient-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.newsletter {
  text-align: center;
}

.newsletter__overline {
  margin: 0 auto calc(4px * 5) auto;
  margin: 0 auto var(--spacing-medium) auto;
}

.newsletter__heading {
  margin: 0 auto calc(4px * 5) auto;
  margin: 0 auto var(--spacing-medium) auto;
  max-width: 550px;
  display: block;
}

@media (max-width: 38em) {
  .newsletter__heading {
    padding: 0 calc(4px * 5);
    padding: 0 var(--spacing-medium);
  }
}

.newsletter__subheading {
  margin: 0 auto calc(4px * 7) auto;
  margin: 0 auto var(--spacing-large) auto;
}

@media (max-width: 38em) {
  .newsletter__subheading {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }
}

.newsletter__input-container {
  width: 100%;
  max-width: 350px;
  position: relative;
  margin: 0 auto;
}

.newsletter__input {
  width: 100%;
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
}

.newsletter__submit-button {
  position: absolute;
  display: flex;
  align-items: center;
  right: calc(4px * 3);
  right: var(--spacing-small);
  top: 2px;
  bottom: 2px;
  font-size: var(--font-size-body-base);
  font-family: var(--font-body);
  color: var(--color-text);
  border: none;
  background: none;
  transition: opacity 0.25s;
}

.newsletter__submit-button:hover {
  opacity: 0.5;
  transition: opacity 0.25s;
}

.newsletter__submit-button svg {
  width: 11px;
}

.newsletter .form-errors {
  display: flex;
  justify-content: center;
}

.newsletter .form-errors ul {
  margin-top: 0;
}

.product-recommendations__inner {
  padding: calc(4px * 10) calc(4px * 5);
  padding: var(--spacing-extra-large) var(--spacing-medium);
  border-top: 1px solid var(--color-border);
}

@media (min-width: 38em) and (max-width: 60em) {
  .product-recommendations__inner {
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .product-recommendations__inner {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 60em) {
  .product--full-width .product-recommendations__inner {
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
  }
}

.product-recommendations__products {
  display: flex;
  width: calc(100% + calc(4px * 3));
  width: calc(100% + var(--spacing-small));
}

@media (min-width: 38em) {
  .product-recommendations__products {
    width: calc(100% + calc(4px * 5));
    width: calc(100% + var(--spacing-medium));
  }
}

.product-recommendations__products .flickity-viewport {
  width: 100%;
}

@media (max-width: 38em) {
  .product-recommendations__products .flickity-viewport {
    overflow: visible;
  }
}

.product-recommendations__product {
  padding-right: calc(4px * 3);
  padding-right: var(--spacing-small);
  width: 50%;
}

@media (min-width: 38em) {
  .product-recommendations__product {
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
  }
}

@media (min-width: 38em) {
  .product-recommendations--column-3 .product-recommendations__product {
    width: calc(100% / 3);
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .product-recommendations--column-4 .product-recommendations__product {
    width: calc(100% / 3);
  }
}

@media (min-width: 60em) {
  .product-recommendations--column-4 .product-recommendations__product {
    width: 25%;
  }
}

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

.rich-text--center .rich-text__subheading,
.rich-text--center .rich-text__title {
  margin-right: auto;
  margin-left: auto;
}

.slideshow {
  position: relative;
  transition: opacity 0.5s;
  width: 100%;
}

.header-transparent .slideshow.first-full-height .slideshow__slide {
  padding-top: calc(var(--mobile-height) - 40px);
  padding-top: calc(var(--mobile-height) - var(--utility-bar-height));
}

@media (min-width: 38em) {
  .header-transparent .slideshow.first-full-height .slideshow__slide {
    padding-top: calc(var(--desktop-height) - 40px);
    padding-top: calc(var(--desktop-height) - var(--utility-bar-height));
  }
}

.header-transparent
  .slideshow.first-full-height
  .slideshow__slide.slideshow__slide--aspect-original.slideshow__slide--has-image {
  padding-top: unset;
}

.header-transparent .slideshow.first-full-height .slideshow__content-wrap {
  margin-top: calc(var(--header-initial-height) - 40px);
  margin-top: calc(var(--header-initial-height) - var(--utility-bar-height));
}

.slideshow__slide-link {
  display: block !important;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: transparent;
}

.slideshow__slide {
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
  overflow: hidden;
  display: none;
  padding-top: calc(var(--mobile-height) - (40px - 40px));
  padding-top: calc(
    var(--mobile-height) - (var(--header-height) - var(--utility-bar-height))
  );
}

@media (min-width: 38em) {
  .slideshow__slide {
    padding-top: calc(var(--desktop-height) - (40px - 40px));
    padding-top: calc(
      var(--desktop-height) - (var(--header-height) - var(--utility-bar-height))
    );
  }
}

.slideshow__slide.slideshow__slide--aspect-original.slideshow__slide--has-image {
  padding-top: unset;
}

.flickity-enabled .slideshow__slide {
  display: block;
}

.slideshow__slide:first-of-type {
  display: block;
}

.user-is-tabbing .slideshow__slide[aria-hidden="true"] {
  visibility: hidden;
}

.slideshow__slide .slideshow__video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.slideshow__slide .slideshow__image {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
}

.slideshow__slide .slideshow__image.slideshow__image--aspect-original {
  position: relative;
}

.slideshow__slide .slideshow__image .image__img {
  position: absolute;
  -o-object-fit: cover;
  object-fit: cover;
  height: 100% !important;
}

.slideshow__slide .slideshow__placeholder {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}

.slideshow__video {
  width: 100%;
  display: block;
}

.slideshow__placeholder {
  width: 100%;
  height: 60vh;
}

.slideshow__overlay {
  background: var(--overlay-background);
  background: var(--overlay-gradient, var(--overlay-background));
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9;
}

.slideshow__content-wrap {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  z-index: 10;
  display: flex;
  flex-direction: column;
}

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

.slideshow__content-wrap--bottom {
  justify-content: flex-end;
}

.slideshow__content {
  visibility: hidden;
  width: 100%;
  max-width: 3000px;
  max-width: var(--max-width);
  margin: 0 auto;
  padding: calc(calc(4px * 7) + calc(4px * 5)) calc(4px * 5);
  padding: calc(var(--spacing-large) + var(--spacing-medium))
    var(--spacing-medium);
}

@media (max-width: 38em) {
  .slideshow__content-wrap--top .slideshow__content {
    padding-top: 0;
  }

  .slideshow__content-wrap--bottom .slideshow__content {
    padding-bottom: calc(4px * 5);
    padding-bottom: var(--spacing-medium);
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .slideshow__content {
    padding: calc(calc(4px * 7) + calc(4px * 5)) calc(4px * 10);
    padding: calc(var(--spacing-large) + var(--spacing-medium))
      var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .slideshow__content {
    padding: calc(calc(4px * 7) + calc(4px * 5)) calc(4px * 20);
    padding: calc(var(--spacing-large) + var(--spacing-medium))
      var(--spacing-extra-extra-large);
  }
}

.is-selected .slideshow__content {
  visibility: visible;
}

.slideshow__content-inner {
  display: flex;
  flex-direction: column;
  padding: calc(4px * 5) 0;
  padding: var(--spacing-medium) 0;
  transition: opacity 0.25s ease;
}

.slideshow__content-inner--left > * {
  margin-right: auto;
}

.slideshow__content-inner--center {
  text-align: center;
}

.slideshow__content-inner--center > *,
.slideshow__content-inner--center .slideshow__content-inner-container > * {
  margin-left: auto;
  margin-right: auto;
}

.slideshow__content-inner--right {
  text-align: right;
}

.slideshow__content-inner--right > *,
.slideshow__content-inner--right .slideshow__content-inner-container > * {
  margin-left: auto;
}

.slideshow__content-inner * + * {
  margin-top: calc(4px * 3) !important;
  margin-top: var(--spacing-small) !important;
}

.slideshow__content-inner .slideshow__link {
  margin-top: calc(4px * 6) !important;
  margin-top: calc(var(--spacing-unit) * 6) !important;
  margin-bottom: 0;
  color: var(--button-text-color);
  background-color: var(--button-text-background);
  transition: background-color 0.2s ease;
}

.slideshow__content-inner .slideshow__link:hover,
.slideshow__content-inner .slideshow__link:active,
.slideshow__content-inner .slideshow__link:focus {
  background-color: var(--button-text-background-hover);
}

.slideshow__content-inner-container {
  background-color: var(--text-container-background);
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

.slideshow .slideshow__image,
.slideshow .image__img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: 100% !important;
  height: 100% !important;
}

.slideshow .image .image__img {
  transition: transform ease, opacity 0.5s;
}

.user-is-tabbing .js-slideshow:focus {
  border: 3px solid #19f;
}

.slideshow__overline {
  color: var(--content-color);
  margin-top: 0;
  margin-bottom: 0;
  max-width: var(--text-max-width);
}

.slideshow__heading {
  color: var(--content-color);
  margin-top: 0;
  margin-bottom: 0;
  max-width: var(--heading-max-width);
}

@media (min-width: 38em) {
  .slideshow__heading {
    font-size: var(--heading-font-size);
  }
}

.slideshow__subheading {
  color: var(--content-color);
  margin-top: 0;
  margin-bottom: 0;
  max-width: var(--text-max-width);
}

@media (min-width: 38em) {
  .slideshow__subheading {
    font-size: var(--subheading-font-size);
  }
}

.slideshow__subheading p {
  margin: 0;
}

.no-js .slideshow.hidden {
  opacity: 1 !important;
}

@media (max-width: 38em) {
  .slideshow__slide--has-mobile-image .slideshow__image--desktop {
    display: none;
  }
}

@media (min-width: 38em) {
  .slideshow__slide--has-mobile-image .slideshow__image--mobile {
    display: none;
  }
}

@media (max-width: 38em) {
  .slideshow__video.slideshow__image--desktop {
    display: block;
  }
}

@media (min-width: 38em) {
  .slideshow__video.slideshow__image--mobile {
    display: block;
  }
}

.slideshow-split {
  transition: opacity 0.5s;
  width: 100%;
  position: relative;
}

.slideshow-split .flickity-viewport {
  width: 100%;
}

.header-transparent
  .slideshow-split.first-full-height
  .slideshow-split__content {
  margin-top: calc(var(--header-initial-height) - 40px);
  margin-top: calc(var(--header-initial-height) - var(--utility-bar-height));
}

.slideshow-split.first-full-height .slideshow-split__slide {
  padding-top: calc(var(--mobile-height) - 40px);
  padding-top: calc(var(--mobile-height) - var(--header-height));
}

@media (min-width: 38em) {
  .slideshow-split.first-full-height .slideshow-split__slide {
    padding-top: calc(var(--desktop-height) - 40px);
    padding-top: calc(var(--desktop-height) - var(--header-height));
  }
}

.header-transparent .slideshow-split.first-full-height .slideshow-split__slide {
  padding-top: calc(var(--mobile-height) - 40px);
  padding-top: calc(var(--mobile-height) - var(--utility-bar-height));
}

@media (min-width: 38em) {
  .header-transparent
    .slideshow-split.first-full-height
    .slideshow-split__slide {
    padding-top: calc(var(--desktop-height) - 40px);
    padding-top: calc(var(--desktop-height) - var(--utility-bar-height));
  }
}

.slideshow-split__slideshow {
  height: 100%;
  display: flex;
}

.user-is-tabbing .slideshow-split__slideshow:focus {
  border: 3px solid #19f;
}

.slideshow-split__image {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
}

.slideshow-split__image .image {
  height: 100%;
}

.slideshow-split__image--mobile {
  display: block;
}

@media (min-width: 38em) {
  .slideshow-split__image--mobile {
    display: none;
  }
}

.slideshow-split__video,
.slideshow-split__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.slideshow-split__slide {
  width: 50%;
  position: relative;
  margin: 0;
  padding: 0;
  overflow: hidden;
  display: none;
  padding-top: calc(var(--mobile-height) - (40px - 40px));
  padding-top: calc(
    var(--mobile-height) - (var(--header-height) - var(--utility-bar-height))
  );
}

@media (min-width: 38em) {
  .slideshow-split__slide {
    padding-top: calc(var(--desktop-height) - (40px - 40px));
    padding-top: calc(
      var(--desktop-height) - (var(--header-height) - var(--utility-bar-height))
    );
  }
}

.flickity-enabled .slideshow-split__slide {
  display: block;
}

.slideshow-split__slide:first-of-type {
  display: block;
}

.slideshow-split__slide:nth-of-type(2) {
  display: block;
}

.slideshow-split--is-single .slideshow-split__slide {
  width: 100%;
}

.user-is-tabbing .slideshow-split__slide[aria-hidden="true"] {
  visibility: hidden;
}

.slideshow-split__content {
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  max-width: 3000px;
  max-width: var(--max-width);
  margin: 0 auto;
  pointer-events: none;
  padding: calc(calc(4px * 7) + calc(4px * 5)) calc(4px * 5);
  padding: calc(var(--spacing-large) + var(--spacing-medium))
    var(--spacing-medium);
}

@media (max-width: 38em) {
  .slideshow-split--align-top .slideshow-split__content {
    padding-bottom: 0;
  }

  .slideshow-split--align-center .slideshow-split__content {
    padding-top: 0;
    padding-bottom: 0;
  }

  .slideshow-split--align-bottom .slideshow-split__content {
    padding-top: 0;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .slideshow-split__content {
    padding: calc(calc(4px * 7) + calc(4px * 5)) calc(4px * 10);
    padding: calc(var(--spacing-large) + var(--spacing-medium))
      var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .slideshow-split__content {
    padding: calc(calc(4px * 7) + calc(4px * 5)) calc(4px * 20);
    padding: calc(var(--spacing-large) + var(--spacing-medium))
      var(--spacing-extra-extra-large);
  }
}

.slideshow-split--justify-left
  .slideshow-split__content
  .slideshow-split__link {
  margin-left: unset;
}

.slideshow-split--justify-right .slideshow-split__content {
  justify-content: flex-end;
  text-align: right;
}

.slideshow-split--justify-right
  .slideshow-split__content
  .slideshow-split__link {
  margin-right: unset;
}

.slideshow-split--justify-right
  .slideshow-split__content
  .slideshow-split__heading,
.slideshow-split--justify-right
  .slideshow-split__content
  .slideshow-split__subheading {
  margin-left: auto;
}

.slideshow-split--justify-center .slideshow-split__content {
  justify-content: center;
  text-align: center;
}

.slideshow-split--justify-center
  .slideshow-split__content
  .slideshow-split__heading,
.slideshow-split--justify-center
  .slideshow-split__content
  .slideshow-split__subheading {
  margin-right: auto;
  margin-left: auto;
}

.slideshow-split__content-inner {
  display: flex;
  flex-direction: column;
  padding: calc(4px * 5) 0;
  padding: var(--spacing-medium) 0;
  transition: opacity 0.25s ease;
  margin-bottom: auto;
  pointer-events: all;
}

@media (max-width: 38em) {
  .slideshow-split--align-top .slideshow-split__content-inner {
    padding-top: 0;
    padding-bottom: 0;
  }

  .slideshow-split--align-center .slideshow-split__content-inner {
    padding-top: 0;
    padding-bottom: 0;
  }

  .slideshow-split--align-bottom .slideshow-split__content-inner {
    padding-top: 0;
  }
}

.slideshow-split__content-inner * + * {
  margin-top: calc(4px * 3) !important;
  margin-top: var(--spacing-small) !important;
}

.slideshow-split__content-inner .slideshow-split__link {
  margin-top: calc(4px * 6) !important;
  margin-top: calc(var(--spacing-unit) * 6) !important;
  margin-bottom: 0;
}

.slideshow-split--align-center .slideshow-split__content-inner {
  margin-top: auto;
  margin-bottom: auto;
}

.slideshow-split--align-bottom .slideshow-split__content-inner {
  margin-top: auto;
  margin-bottom: 0;
}

.slideshow-split__content-inner-container {
  background-color: var(--text-container-background);
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

@media (max-width: 38em) {
  .slideshow-split__content-inner-container {
    padding-top: 0;
    padding-bottom: 0;
  }
}

.slideshow-split__overline {
  margin-top: 0;
  margin-bottom: 0;
}

.slideshow-split__heading {
  margin-top: 0;
  margin-bottom: 0;
  font-weight: var(--font-heading-bold-weight);
}

@media (min-width: 38em) {
  .slideshow-split__heading {
    font-size: var(--heading-font-size);
  }
}

.slideshow-split__subheading {
  margin-top: 0;
  margin-bottom: 0;
}

@media (min-width: 38em) {
  .slideshow-split__subheading {
    font-size: var(--subheading-font-size);
  }
}

.slideshow-split__subheading p {
  margin: 0;
}

.slideshow-split__link {
  margin-right: auto;
  margin-left: auto;
}

.no-js .slideshow-split.hidden {
  opacity: 1 !important;
}

.slideshow-split__overlay,
.slideshow-split__underlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: none;
}

.slideshow-split__overlay {
  background: var(--overlay-background);
  background: var(--overlay-gradient, var(--overlay-background));
}

.slideshow-split__pseudo-dots {
  position: absolute;
  width: 100%;
  bottom: 40px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
  z-index: 99;
}

.slideshow-split__pseudo-dots.hidden {
  display: none;
}

.slideshow-split__pseudo-dots .slideshow-split__pseudo-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background-color: rgba(255, 255, 255, 0.4);
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.slideshow-split__pseudo-dots .slideshow-split__pseudo-dot.is-selected {
  border: 2px solid white;
  opacity: 1;
}

.video__heading {
  margin: 0 auto;
}

.video__heading + .video__subheading {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.video__subheading {
  margin: 0 auto;
}

.video__wrapper {
  position: relative !important;
  max-width: 100%;
  padding-top: 56.25%;
}

.video__meta-text {
  position: absolute;
  z-index: 5;
  left: 0;
  right: 0;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  max-width: 30em;
}

.video .video__play-button {
  background: var(--color-bg);
  width: 76px;
  height: 76px;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  cursor: pointer;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2), 0px 0px 2px rgba(0, 0, 0, 0.25);
  box-shadow: var(--shadow-1);
}

.video .video__play-button svg {
  width: 46px;
  height: 46px;
  fill: var(--color-bg);
}

.video .video__play-button svg:hover,
.video .video__play-button svg:focus {
  opacity: 0.9;
}

.video .video__container {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}

.video .video__container iframe {
  display: block;
  position: absolute;
  top: 0;
}

.video .video__player {
  width: 100%;
}

.video__overlay {
  opacity: 0;
  transition: opacity 0.25s;
  z-index: 1;
}

.video__overlay.visible {
  opacity: 1;
  transition: opacity 0.25s;
  pointer-events: all;
}

.video__wash {
  z-index: 2;
}

.video__image {
  background-size: cover;
  z-index: 2;
}

.video__placeholder,
.video__placeholder-image {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}

.video__meta-text {
  position: absolute;
  top: 0;
}

.text-columns .responsive-image__wrapper {
  margin: 0;
}

.text-columns__intro {
  margin-bottom: calc(4px * 10);
  margin-bottom: var(--spacing-extra-large);
}

@media (min-width: 38em) {
  .text-columns__intro {
    margin-bottom: calc(4px * 20);
    margin-bottom: var(--spacing-extra-extra-large);
  }
}

.text-columns__content {
  display: grid;
  grid-row-gap: calc(4px * 10);
  row-gap: calc(4px * 10);
  grid-row-gap: var(--spacing-extra-large);
  row-gap: var(--spacing-extra-large);
  width: 100%;
}

@media (min-width: 38em) {
  .text-columns__content {
  }
}

.text-columns__content:after {
  content: "flickity";
  display: none;
}

@media (min-width: 38em) {
  .text-columns__content:after {
    content: "";
  }
}

.text-columns__content .flickity-viewport {
  width: 100%;
}

.text-columns__content .flickity-prev-next-button.previous {
  left: calc(calc(4px * 5) * -1);
  left: calc(var(--spacing-medium) * -1);
}

.text-columns__content .flickity-prev-next-button.next {
  right: calc(calc(4px * 5) * -1);
  right: calc(var(--spacing-medium) * -1);
}

.text-columns--alignment-center .text-columns__image {
  display: flex;
  justify-content: center;
}

.text-columns__feature {
  width: 100%;
}

.text-columns--alignment-center .text-columns__feature {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
}

.text-columns--alignment-center .text-columns__feature .image {
  width: 100%;
}

.text-columns--alignment-center .text-columns__feature p,
.text-columns--alignment-center .text-columns__feature h3 {
  text-align: center;
}

.collection-list-grid__image {
  width: 100%;
}

.collection-list-grid__title,
.collection-list-grid__product-count {
  width: 100%;
}

.quote {
  position: relative;
  display: flex;
  flex-direction: column;
  text-align: center;
}

.quote .flickity-slider {
  display: flex;
  align-items: center;
  transform: none !important;
}

@media (min-width: 38em) {
  .user-is-tabbing .quote .carousel__navigation {
    opacity: 1;
    transform: translateX(0);
  }
}

.quote__item {
  width: 100%;
  height: auto;
  margin: auto 0;
  left: 0 !important;
  pointer-events: none;
}

.quote__item.is-selected {
  pointer-events: all;
}

.quote:not(.animation) .quote__item {
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

.quote:not(.animation) .quote__item.is-selected {
  opacity: 1;
}

.quote__text {
  font-size: 38px;
  line-height: 1.3;
  font-family: var(--font-heading), sans-serif;
  font-weight: 700;
  font-style: var(--font-heading-style);
}

@media (max-width: 38em) {
  .quote__text {
    font-size: 32px;
  }
}

.quote__author {
  display: inline-block;
}

.gallery--square .gallery__image,
.gallery--landscape .gallery__image,
.gallery--portrait .gallery__image {
  overflow: hidden;
}

.gallery--square .image,
.gallery--square .placeholder-svg,
.gallery--landscape .image,
.gallery--landscape .placeholder-svg,
.gallery--portrait .image,
.gallery--portrait .placeholder-svg {
  position: absolute;
  top: 50%;
  height: 100%;
  width: 100%;
  transform: translateY(-50%);
}

.gallery--square .gallery__image {
  padding-top: 100%;
}

.gallery--landscape .gallery__image {
  padding-top: calc((2 / 3) * 100%);
}

.gallery--portrait .gallery__image {
  padding-top: calc((3 / 2) * 100%);
}

.gallery__image {
  position: relative;
  display: block;
}

.gallery-grid {
  width: calc(100% + calc(4px * 10));
  width: calc(100% + var(--spacing-extra-large));
  margin-left: calc(calc(4px * 5) * -1);
  margin-left: calc(var(--spacing-medium) * -1);
  padding: calc(4px * 10) calc(4px * 5);
  padding: var(--spacing-extra-large) var(--spacing-medium);
  border-top: 1px solid var(--color-border);
}

@media (min-width: 38em) and (max-width: 60em) {
  .gallery-grid {
    width: calc(100% + calc(4px * 20));
    width: calc(100% + var(--spacing-extra-extra-large));
    margin-left: calc(calc(4px * 10) * -1);
    margin-left: calc(var(--spacing-extra-large) * -1);
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .gallery-grid {
    width: 65%;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 60em) {
  .product--full-width .gallery-grid {
    width: calc(65% + calc(4px * 20));
    width: calc(65% + var(--spacing-extra-extra-large));
    margin-left: calc(calc(4px * 20) * -1);
    margin-left: calc(var(--spacing-extra-extra-large) * -1);
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
  }
}

@media (max-width: 38em) {
  .gallery-grid__image-wrapper {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: calc(4px * 3);
    gap: calc(4px * 3);
    grid-gap: var(--spacing-small);
    gap: var(--spacing-small);
  }
}

.gallery-grid__image-wrapper {
  grid-row-gap: calc(4px * 5);

  row-gap: calc(4px * 5);

  grid-row-gap: var(--spacing-medium);

  row-gap: var(--spacing-medium);
}

.static-text__footer {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  padding: calc(4px * 3) calc(4px * 5);
  padding: var(--spacing-small) var(--spacing-medium);
  background-color: var(--color-bg-darker);
}

.static-text__footer p:first-of-type {
  margin-top: 0;
}

.static-text__footer p:last-of-type {
  margin-bottom: 0;
}

.location__store-info {
  display: flex;
}

.location--alignment-center .location__store-info {
  justify-content: center;
}

.location__store-info-inner {
  display: grid;
}

@media (min-width: 38em) {
  .location__store-info-inner {
    grid-template-columns: 1fr 1fr;
  }
}

.location__store-address,
.location__store-hours {
  padding: 0 60px;
}

.location--alignment-center .location__store-address,
.location--alignment-center .location__store-hours {
  text-align: center;
}

.location__store-address .rte p,
.location__store-hours .rte p {
  margin: 0;
}

.location__store-address {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-extra-large);
}

@media (min-width: 38em) {
  .location__store-address {
    border-left: 1px solid var(--color-border);
    margin-top: 0;
  }
}

.location__store-address:empty {
  border-left: 0;
}

.location--alignment-left .location__store-hours {
  padding-left: 0;
}

@media (max-width: 38em) {
  .location--alignment-left .location__store-address {
    padding-left: 0;
  }
}

.location__map {
  position: relative;
}

.location__image {
  display: none;
}

@media (min-width: 38em) {
  .location__image {
    display: block;
  }
}

.location__map-container {
  width: 100%;
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
}

@media (min-width: 38em) {
  .location--has-image .location__map-container {
    position: absolute;
    bottom: calc(4px * 10);
    bottom: var(--spacing-extra-large);
    left: calc(4px * 10);
    left: var(--spacing-extra-large);
    padding-bottom: 0;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .location--has-image .location__map-container {
    width: calc(50% - calc(4px * 10));
    width: calc(50% - var(--spacing-extra-large));
    height: calc(50% - calc(4px * 5));
    height: calc(50% - var(--spacing-medium));
  }
}

@media (min-width: 60em) {
  .location--has-image .location__map-container {
    width: calc((100% / 3) - calc(4px * 10));
    width: calc((100% / 3) - var(--spacing-extra-large));
    height: calc((100% / 3) - calc(4px * 5));
    height: calc((100% / 3) - var(--spacing-medium));
  }
}

@media (min-width: 38em) {
  .location--has-image .location__map-container.active {
    border: calc(4px * 3) solid var(--color-bg);
    border: var(--spacing-small) solid var(--color-bg);
  }
}

.location__map-element-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.location__map-cta {
  display: block;
  width: 100%;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  background-color: var(--color-button-bg);
}

@media (min-width: 38em) {
  .location__map-cta {
    display: inline-block;
    position: absolute;
    bottom: calc(4px * 10);
    bottom: var(--spacing-extra-large);
    left: calc(4px * 10);
    left: var(--spacing-extra-large);
    width: unset;
  }
}

@media (min-width: 38em) {
  .location--has-image.location--has-map .location__map-cta {
    display: none;
  }
}

.testimonials__reviewer-image {
  width: 40px;
  height: 40px;
  margin-right: calc(4px * 4);
  margin-right: calc(var(--spacing-unit) * 4);
  border-radius: 50%;
  overflow: hidden;
}

.testimonials__reviewer-image .image {
  width: 100%;
  height: 100%;
}

.testimonials__reviewer-placeholder {
  border: 1px solid var(--color-border);
}

.testimonials__reviewer-placeholder .placeholder-svg {
  transform: scale(2.5);
  border: 0;
}

.testimonials__stars {
  color: var(--color-accent);
}

.testimonials__review p {
  display: inline;
  margin-top: 0;
  margin-bottom: 0;
}

.static-text {
  width: calc(100% + calc(4px * 10));
  width: calc(100% + var(--spacing-extra-large));
  margin-left: calc(calc(4px * 5) * -1);
  margin-left: calc(var(--spacing-medium) * -1);
  padding: calc(4px * 10) calc(4px * 5);
  padding: var(--spacing-extra-large) var(--spacing-medium);
  border-top: 1px solid var(--color-border);
}

@media (min-width: 38em) and (max-width: 60em) {
  .static-text {
    width: calc(100% + calc(4px * 20));
    width: calc(100% + var(--spacing-extra-extra-large));
    margin-left: calc(calc(4px * 10) * -1);
    margin-left: calc(var(--spacing-extra-large) * -1);
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .static-text {
    width: 65%;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 60em) {
  .product--full-width .static-text {
    width: calc(65% + calc(4px * 20));
    width: calc(65% + var(--spacing-extra-extra-large));
    margin-left: calc(calc(4px * 20) * -1);
    margin-left: calc(var(--spacing-extra-extra-large) * -1);
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
  }
}

.static-text__text p:last-of-type {
  margin-bottom: 0;
}

.comments .input {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.comments__count {
  padding-bottom: calc(4px * 4);
  padding-bottom: calc(var(--spacing-unit) * 4);
  margin-bottom: 0;
  border-bottom: 1px solid var(--color-border);
}

.comments__success-message {
  color: var(--color-success-message);
}

.comments__list {
  margin: 0;
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
  padding-left: 0;
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
  list-style: none;
  border-bottom: 1px solid var(--color-border);
}

.comment__content {
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
  background-color: var(--color-contrast-bg);
  color: var(--color-contrast-text);
  box-shadow: inset 1px 0px 0px var(--color-border);
}

.comment__content p:first-of-type {
  margin-top: 0;
}

.comment__content p:last-of-type {
  margin-bottom: 0;
}

.comments__leave-comment-title {
  margin-bottom: calc(4px * 4);
  margin-bottom: calc(var(--spacing-unit) * 4);
}

.comments__moderated-message {
  line-height: 1.71em;
  line-height: var(--line-height-body);
}

.comments__error {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
  color: var(--color-error-message);
}

.store-availability-container__wrapper {
  margin-top: calc(4px * 2);
  margin-top: calc(var(--spacing-unit) * 2);
  margin-bottom: calc(4px * 7);
  margin-bottom: var(--spacing-large);
}

.store-availability-container__wrapper:empty {
  margin-top: 0;
  margin-bottom: 0;
}

.store-availability {
  position: relative;
  display: flex;
  padding: calc(4px * 3) calc(4px * 5);
  padding: var(--spacing-small) var(--spacing-medium);
  border: solid 1px var(--color-border);
}

.store-availability.store-availability--available
  .store-availability__information-stock
  svg {
  color: var(--color-success-message);
}

.store-availability__information-title,
.store-availability__information-stock,
.store-availability__information-stores {
  margin-top: 0;
  margin-bottom: 0;
}

.store-availability__information-title span {
  font-weight: var(--font-body-bold-weight);
}

.store-availability__information-stock svg {
  color: var(--color-error-message);
  margin-right: 4px;
  margin-right: var(--spacing-unit);
}

.store-availability__information-link {
  color: var(--color-accent);
  text-decoration: underline;
}

.store-availability__information-link:hover {
  opacity: 0.5;
}

.store-availability__information-link:active,
.store-availability__information-link:focus {
  color: var(--color-accent);
}

.store-availability__store-list-wrapper {
  display: none;
}

.store-availability__store-list-title {
  margin-bottom: calc(4px * 4);
  margin-bottom: calc(var(--spacing-unit) * 4);
}

.store-availability-list__item {
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
  border-top: 1px solid var(--color-drawer-border);
}

.store-availability-list__item p:last-of-type {
  margin-bottom: 0;
}

.store-availability-list__item--available .store-availability-list__stock svg {
  color: var(--color-success-message);
}

.store-availability-list__item-inner {
  padding-right: 0;
  padding-left: 0;
}

.store-availability-list__item-inner p {
  color: var(--color-drawer-text-meta);
}

.store-availability-list__stock {
  display: flex;
  align-items: center;
}

.store-availability-list__stock svg {
  color: var(--color-error-message);
  margin-right: 4px;
  margin-right: var(--spacing-unit);
}

@media (min-width: 60em) {
  .mosaic-grid-2-column__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: calc(4px * 5);
    gap: calc(4px * 5);
    grid-gap: var(--spacing-medium);
    gap: var(--spacing-medium);
  }
}

@media (min-width: 60em) {
  .mosaic-grid__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: calc(4px * 5);
    gap: calc(4px * 5);
    grid-gap: var(--spacing-medium);
    gap: var(--spacing-medium);
  }
}

.mosaic-grid__item {
  position: relative;
  display: block;
}

@media (max-width: 38em) {
  .mosaic-grid__item {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .mosaic-grid__item {
    margin-bottom: calc(4px * 7);
    margin-bottom: var(--spacing-large);
  }
}

.mosaic-grid__item:last-of-type {
  margin-bottom: 0;
}

.mosaic-grid__item.mosaic-grid__item--small-square,
.mosaic-grid__item.mosaic-grid__item--medium-square,
.mosaic-grid__item.mosaic-grid__item--large-square {
  padding-top: 100%;
}

.mosaic-grid__item.mosaic-grid__item--small-square {
  grid-row: span 1;
  grid-column: span 1;
}

.mosaic-grid__item.mosaic-grid__item--medium-square {
  grid-row: span 2;
  grid-column: span 2;
}

.mosaic-grid__item.mosaic-grid__item--large-square {
  grid-row: span 3;
  grid-column: span 3;
}

.mosaic-grid__item.mosaic-grid__item--medium-horizontal-rect {
  grid-row: span 1;
  grid-column: span 2;
  padding-top: 50%;
}

.mosaic-grid__item.mosaic-grid__item--medium-vertical-rect {
  grid-row: span 2;
  grid-column: span 1;
  padding-top: 200%;
}

.mosaic-grid__item.mosaic-grid__item--large-horizontal-rect {
  grid-row: span 2;
  grid-column: span 3;
  padding-top: calc(100% * (2 / 3));
}

.mosaic-grid__item.mosaic-grid__item--large-vertical-rect {
  grid-row: span 3;
  grid-column: span 2;
  padding-top: 150%;
}

.mosaic-grid__item .mosaic-grid__item-image,
.mosaic-grid__item .mosaic-grid__item-video {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.mosaic-grid__item .mosaic-grid__item-image svg,
.mosaic-grid__item .mosaic-grid__item-video svg {
  width: 100%;
  height: 100%;
}

.mosaic-grid__item .mosaic-grid__item-video {
  -o-object-fit: var(--video-fit);
  object-fit: var(--video-fit);
  -o-object-position: var(--video-focal-alignment);
  object-position: var(--video-focal-alignment);
}

.mosaic-grid__item-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  padding: calc(4px * 7);
  padding: var(--spacing-large);
  background-color: var(--color-background);
  overflow: hidden;
}

.mosaic-grid__item-inner.mosaic-grid__item-inner--h-align-center {
  justify-content: center;
}

.mosaic-grid__item-inner.mosaic-grid__item-inner--h-align-left {
  justify-content: flex-start;
}

.mosaic-grid__item-inner.mosaic-grid__item-inner--h-align-right {
  justify-content: flex-end;
}

.mosaic-grid__item-inner.mosaic-grid__item-inner--v-align-top {
  align-items: flex-start;
}

.mosaic-grid__item-inner.mosaic-grid__item-inner--v-align-center {
  align-items: center;
}

.mosaic-grid__item-inner.mosaic-grid__item-inner--v-align-bottom {
  align-items: flex-end;
}

.mosaic-grid__item-fill {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: var(--color-overlay-color);
  background: var(--overlay-gradient, var(--color-overlay-color));
  opacity: var(--overlay-opacity);
}

.mosaic-grid__text-container {
  z-index: 1;
}

.mosaic-grid__text-container.mosaic-grid__text-container--has-background-color {
  padding: calc(calc(4px * 7) - 8px) calc(4px * 7);
  padding: calc(var(--spacing-large) - 8px) var(--spacing-large);
}

.mosaic-grid__text-container.mosaic-grid__text-container--text-align-left
  .mosaic-grid__overline,
.mosaic-grid__text-container.mosaic-grid__text-container--text-align-left
  .mosaic-grid__heading,
.mosaic-grid__text-container.mosaic-grid__text-container--text-align-left
  .mosaic-grid__subheading {
  text-align: left;
}

.mosaic-grid__text-container.mosaic-grid__text-container--text-align-center
  .mosaic-grid__overline,
.mosaic-grid__text-container.mosaic-grid__text-container--text-align-center
  .mosaic-grid__heading,
.mosaic-grid__text-container.mosaic-grid__text-container--text-align-center
  .mosaic-grid__subheading {
  text-align: center;
}

.mosaic-grid__text-container.mosaic-grid__text-container--text-align-center
  .mosaic-grid__button-wrapper {
  justify-content: center;
}

.mosaic-grid__text-container.mosaic-grid__text-container--text-align-right
  .mosaic-grid__overline,
.mosaic-grid__text-container.mosaic-grid__text-container--text-align-right
  .mosaic-grid__heading,
.mosaic-grid__text-container.mosaic-grid__text-container--text-align-right
  .mosaic-grid__subheading {
  text-align: right;
}

.mosaic-grid__text-container.mosaic-grid__text-container--text-align-right
  .mosaic-grid__button-wrapper {
  justify-content: flex-end;
}

.mosaic-grid__item-inner .mosaic-grid__text-container {
  background-color: var(--s-color-text-container-background);
}

.mosaic-grid__item-inner .mosaic-grid__overline,
.mosaic-grid__item-inner .mosaic-grid__heading,
.mosaic-grid__item-inner .mosaic-grid__subheading {
  color: var(--s-color-text);
  max-width: var(--text-max-width);
}

.mosaic-grid__item-inner .mosaic-grid__overline a,
.mosaic-grid__item-inner .mosaic-grid__heading a,
.mosaic-grid__item-inner .mosaic-grid__subheading a {
  color: var(--s-color-text);
}

.mosaic-grid__item-inner .mosaic-grid__button.bttn.bttn--secondary {
  background-color: var(--s-color-background-button);
  color: var(--s-color-text-button);
  border: 0;
}

.mosaic-grid__item-inner .mosaic-grid__button.bttn.bttn--secondary:hover {
  background-color: var(--s-color-background-button-hover);
  color: var(--s-color-text-button);
}

.mosaic-grid__item-inner .mosaic-grid__button.bttn.bttn--secondary:before {
  display: none;
}

.mosaic-grid__overline p:first-of-type,
.mosaic-grid__heading p:first-of-type,
.mosaic-grid__subheading p:first-of-type {
  margin-top: 0;
}

.mosaic-grid__overline p:last-of-type,
.mosaic-grid__heading p:last-of-type,
.mosaic-grid__subheading p:last-of-type {
  margin-bottom: 0;
}

.mosaic-grid__button-wrapper {
  display: flex;
}

@media (max-width: 38em) {
  .mosaic-grid__grid--mobile-content-within .mosaic-grid__item {
    padding-top: 0;
  }

  .mosaic-grid__grid--mobile-content-within
    .mosaic-grid__item
    .mosaic-grid__item-inner {
    min-height: calc(100vw - calc(4px * 5));
    min-height: calc(100vw - var(--spacing-medium * 2));
    position: relative;
  }

  .mosaic-grid__grid--mobile-content-within
    .mosaic-grid__item
    .mosaic-grid__item-inner
    .mosaic-grid__text-container {
    display: block;
  }
}

.mosaic-grid__item + .mosaic-grid__text-container {
  display: none;
  margin: calc(4px * 5) calc(calc(4px * 5) * -1);
  margin: var(--spacing-medium) calc(var(--spacing-medium) * -1);
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
}

.mosaic-grid__item + .mosaic-grid__text-container .mosaic-grid__overline,
.mosaic-grid__item + .mosaic-grid__text-container .mosaic-grid__heading,
.mosaic-grid__item + .mosaic-grid__text-container .mosaic-grid__subheading {
  text-align: left;
}

.mosaic-grid__item + .mosaic-grid__text-container .mosaic-grid__button-wrapper {
  justify-content: flex-start;
}

@media (max-width: 38em) {
  .mosaic-grid__grid--mobile-content-after
    .mosaic-grid__item
    + .mosaic-grid__text-container {
    display: block;
  }

  .mosaic-grid__grid--mobile-content-after
    .mosaic-grid__item
    .mosaic-grid__item-inner
    .mosaic-grid__text-container {
    display: none;
  }

  .mosaic-grid__grid--mobile-content-after
    .mosaic-grid__text-container--mobile-text-align-left
    .mosaic-grid__overline,
  .mosaic-grid__grid--mobile-content-after
    .mosaic-grid__text-container--mobile-text-align-left
    .mosaic-grid__heading,
  .mosaic-grid__grid--mobile-content-after
    .mosaic-grid__text-container--mobile-text-align-left
    .mosaic-grid__subheading {
    text-align: left;
  }

  .mosaic-grid__grid--mobile-content-after
    .mosaic-grid__text-container--mobile-text-align-left
    .mosaic-grid__button-wrapper {
    justify-content: flex-start;
  }

  .mosaic-grid__grid--mobile-content-after
    .mosaic-grid__text-container--mobile-text-align-center
    .mosaic-grid__overline,
  .mosaic-grid__grid--mobile-content-after
    .mosaic-grid__text-container--mobile-text-align-center
    .mosaic-grid__heading,
  .mosaic-grid__grid--mobile-content-after
    .mosaic-grid__text-container--mobile-text-align-center
    .mosaic-grid__subheading {
    text-align: center;
  }

  .mosaic-grid__grid--mobile-content-after
    .mosaic-grid__text-container--mobile-text-align-center
    .mosaic-grid__button-wrapper {
    justify-content: center;
  }
}

.mosaic-grid__overline + .mosaic-grid__heading,
.mosaic-grid__overline + .mosaic-grid__subheading,
.mosaic-grid__heading + .mosaic-grid__subheading {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.mosaic-grid__overline + .mosaic-grid__button-wrapper,
.mosaic-grid__heading + .mosaic-grid__button-wrapper,
.mosaic-grid__subheading + .mosaic-grid__button-wrapper {
  margin-top: calc(4px * 6);
  margin-top: calc(var(--spacing-unit) * 6);
}

.shoppable-image--square .shoppable-image__image-wrapper,
.shoppable-image--landscape .shoppable-image__image-wrapper,
.shoppable-image--portrait .shoppable-image__image-wrapper {
  position: relative;
  overflow: hidden;
  display: block;
}

.shoppable-image--square .shoppable-image__image,
.shoppable-image--square .placeholder-svg,
.shoppable-image--landscape .shoppable-image__image,
.shoppable-image--landscape .placeholder-svg,
.shoppable-image--portrait .shoppable-image__image,
.shoppable-image--portrait .placeholder-svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.shoppable-image--square .shoppable-image__image,
.shoppable-image--landscape .shoppable-image__image,
.shoppable-image--portrait .shoppable-image__image {
  height: 100%;
  width: 100%;
}

.shoppable-image--square .shoppable-image__image-wrapper {
  padding-top: 100%;
}

.shoppable-image--landscape .shoppable-image__image-wrapper {
  padding-top: calc((2 / 3) * 100%);
}

.shoppable-image--portrait .shoppable-image__image-wrapper {
  padding-top: calc((3 / 2) * 100%);
}

.shoppable-image__image-container {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}

.shoppable-image__image-container-inner {
  width: 100%;
}

.shoppable-image__image-container-inner img {
  display: block;
}

.shoppable-image__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--color-overlay);
  background: var(--overlay-gradient, var(--color-overlay));
  opacity: var(--overlay-opacity);
}

.shoppable-feature.section--full-height {
  padding-top: 0;
  padding-bottom: 0;
  position: relative;
}

@media (max-width: 60em) {
  .shoppable-feature.section--full-height {
    padding: 0;
  }
}

@media (min-width: 60em) {
  .shoppable-feature.section--full-height .shoppable-feature__image-container {
    width: calc(50% + calc(4px * 20));
    width: calc(50% + var(--spacing-extra-extra-large));
  }
}

@media (min-width: 60em) {
  .shoppable-feature.section--full-height.shoppable-feature--image-two-thirds
    .shoppable-feature__image-container {
    width: calc(((2 / 3) * 100%) + calc(4px * 20));
    width: calc(((2 / 3) * 100%) + var(--spacing-extra-extra-large));
  }
}

@media (max-width: 60em) {
  .shoppable-feature.section--full-height.shoppable-feature--background-transparent
    .shoppable-feature__text-container-inner {
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-extra-large);
  }
}

@media (max-width: 38em) {
  .shoppable-feature.section--full-height.shoppable-feature--background-transparent
    .shoppable-feature__text-container-inner {
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .shoppable-feature.section--full-height.shoppable-feature--background-transparent
    .shoppable-feature__text-container-inner {
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
  }
}

@media (max-width: 60em) {
  .shoppable-feature.section--full-height:not(
      .shoppable-feature--background-transparent
    )
    .shoppable-feature__text-container-inner {
    padding-top: calc(4px * 10);
    padding-top: var(--spacing-extra-large);
    padding-bottom: calc(4px * 10);
    padding-bottom: var(--spacing-extra-large);
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .shoppable-feature.section--full-height:not(
      .shoppable-feature--background-transparent
    )
    .shoppable-feature__text-container-inner {
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .shoppable-feature.section--full-height.shoppable-feature--image-right
    .shoppable-feature__image-container {
    margin-right: calc(calc(4px * 20) * -1);
    margin-right: calc(var(--spacing-extra-extra-large) * -1);
    margin-left: 0;
  }
}

@media (min-width: 60em) {
  .shoppable-feature.section--full-height.shoppable-feature--image-left
    .shoppable-feature__image-container {
    margin-right: 0;
    margin-left: calc(calc(4px * 20) * -1);
    margin-left: calc(var(--spacing-extra-extra-large) * -1);
  }
}

.shoppable-feature__inner {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

@media (min-width: 60em) {
  .shoppable-feature__inner {
    flex-direction: row;
  }
}

.shoppable-feature--square .shoppable-feature__image-wrapper,
.shoppable-feature--landscape .shoppable-feature__image-wrapper,
.shoppable-feature--portrait .shoppable-feature__image-wrapper {
  position: relative;
  overflow: hidden;
  display: block;
}

.shoppable-feature--square .shoppable-feature__image,
.shoppable-feature--square .placeholder-svg,
.shoppable-feature--landscape .shoppable-feature__image,
.shoppable-feature--landscape .placeholder-svg,
.shoppable-feature--portrait .shoppable-feature__image,
.shoppable-feature--portrait .placeholder-svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.shoppable-feature--square .shoppable-feature__image,
.shoppable-feature--landscape .shoppable-feature__image,
.shoppable-feature--portrait .shoppable-feature__image {
  height: 100%;
  width: 100%;
}

.shoppable-feature--square .shoppable-feature__image-wrapper {
  padding-top: 100%;
}

.shoppable-feature--landscape .shoppable-feature__image-wrapper {
  padding-top: calc((2 / 3) * 100%);
}

.shoppable-feature--portrait .shoppable-feature__image-wrapper {
  padding-top: calc((3 / 2) * 100%);
}

.shoppable-feature__text-container {
  width: 100%;
}

@media (max-width: 60em) {
  .shoppable-feature--background-transparent
    .shoppable-feature__text-container {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .shoppable-feature__text-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 50%;
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .shoppable-feature--image-right .shoppable-feature__text-container {
    order: -1;
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
    padding-left: 0;
  }
}

@media (min-width: 60em) {
  .shoppable-feature--align-left .shoppable-feature__text-container {
    align-items: flex-start;
  }
}

.shoppable-feature--align-left
  .shoppable-feature__text-container
  .shoppable-feature__button {
  margin-right: auto;
}

@media (min-width: 60em) {
  .shoppable-feature--align-center .shoppable-feature__text-container {
    text-align: center;
    align-items: center;
  }
}

@media (min-width: 60em) {
  .shoppable-feature--align-center
    .shoppable-feature__text-container
    .shoppable-feature__button {
    margin-right: auto;
    margin-left: auto;
  }
}

@media (min-width: 60em) {
  .shoppable-feature--align-right .shoppable-feature__text-container {
    text-align: right;
    align-items: flex-end;
  }
}

@media (min-width: 60em) {
  .shoppable-feature--align-right
    .shoppable-feature__text-container
    .shoppable-feature__button {
    margin-left: auto;
  }
}

@media (min-width: 60em) {
  .shoppable-feature--image-two-thirds .shoppable-feature__text-container {
    width: calc(100% / 3);
  }
}

.shoppable-feature__text-container-inner {
  color: var(--s-text-color);
  background-color: var(--s-text-container-color);
}

@media (min-width: 60em) {
  .shoppable-feature__text-container-inner {
    display: flex;
    flex-direction: column;
  }
}

.shoppable-feature--background-transparent
  .shoppable-feature__text-container-inner {
  background-color: transparent;
}

.shoppable-feature__image-container {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}

@media (min-width: 60em) {
  .shoppable-feature--has-text-content .shoppable-feature__image-container {
    width: 50%;
  }
}

@media (min-width: 60em) {
  .shoppable-feature--image-two-thirds .shoppable-feature__image-container {
    width: calc((2 / 3) * 100%);
  }
}

.shoppable-feature__image-container-inner {
  width: 100%;
}

.shoppable-feature__image-container-inner img {
  display: block;
}

.shoppable-feature__subheading p:first-of-type {
  margin-top: 0;
}

.shoppable-feature__subheading p:last-of-type {
  margin-bottom: 0;
}

.shoppable-feature__overline,
.shoppable-feature__heading,
.shoppable-feature__subheading {
  max-width: var(--text-max-width);
}

.shoppable-feature__overline + .shoppable-feature__heading,
.shoppable-feature__overline + .shoppable-feature__subheading,
.shoppable-feature__heading + .shoppable-feature__subheading,
.shoppable-feature__subheading + .shoppable-feature__heading {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.shoppable-feature__overline + .shoppable-feature__button,
.shoppable-feature__heading + .shoppable-feature__button,
.shoppable-feature__subheading + .shoppable-feature__button {
  margin-top: calc(4px * 6);
  margin-top: calc(var(--spacing-unit) * 6);
}

.shoppable-feature__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--color-overlay);
  background: var(--overlay-gradient, var(--color-overlay));
  opacity: var(--overlay-opacity);
}

.image-hero {
  position: relative;
  transition: opacity 0.5s;
  width: 100%;
}

.header-transparent .image-hero.first-full-height .image-hero__inner {
  padding-top: calc(var(--mobile-height) - 40px);
  padding-top: calc(var(--mobile-height) - var(--utility-bar-height));
}

@media (min-width: 38em) {
  .header-transparent .image-hero.first-full-height .image-hero__inner {
    padding-top: calc(var(--desktop-height) - 40px);
    padding-top: calc(var(--desktop-height) - var(--utility-bar-height));
  }
}

.header-transparent .image-hero.first-full-height .image-hero__content {
  margin-top: calc(var(--header-initial-height) - 40px);
  margin-top: calc(var(--header-initial-height) - var(--utility-bar-height));
}

.image-hero.image-hero--aspect-original.image-hero--has-image
  .image-hero__inner {
  padding-top: unset;
}

@media (max-width: 38em) {
  .image-hero.image-hero--has-mobile-image .image-hero__image--desktop {
    display: none;
  }
}

@media (min-width: 38em) {
  .image-hero.image-hero--has-mobile-image .image-hero__image--mobile {
    display: none;
  }
}

.image-hero__inner {
  display: block;
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
  overflow: hidden;
  padding-top: calc(var(--mobile-height) - (40px - 40px));
  padding-top: calc(
    var(--mobile-height) - (var(--header-height) - var(--utility-bar-height))
  );
}

@media (min-width: 38em) {
  .image-hero__inner {
    padding-top: calc(var(--desktop-height) - (40px - 40px));
    padding-top: calc(
      var(--desktop-height) - (var(--header-height) - var(--utility-bar-height))
    );
  }
}

.image-hero__inner .image-hero__image {
  position: absolute;
}

.visual-preview .image-hero__inner {
  height: calc(var(--desktop-height) * 1.5) !important;
}

@media (max-width: 38em) {
  .visual-preview .image-hero__inner {
    height: calc(var(--mobile-height) * 1.1) !important;
  }
}

.image-hero__image {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
}

.image-hero--aspect-original.image-hero--has-image .image-hero__image {
  position: relative;
}

.image-hero__image .image__img {
  position: absolute;
  -o-object-fit: cover;
  object-fit: cover;
  height: 100% !important;
}

.image-hero__placeholder {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}

.image-hero__content-container {
  z-index: 1;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  color: var(--text-color);
  padding: calc(calc(4px * 7) + calc(4px * 5)) calc(4px * 5);
  padding: calc(var(--spacing-large) + var(--spacing-medium))
    var(--spacing-medium);
}

@media (min-width: 38em) {
  .image-hero__content-container {
    padding: calc(calc(4px * 7) + calc(4px * 5)) calc(4px * 20);
    padding: calc(var(--spacing-large) + var(--spacing-medium))
      var(--spacing-extra-extra-large);
  }
}

.image-hero--text-horizontal-align-left .image-hero__content-container {
  justify-content: flex-start;
}

.image-hero--text-horizontal-align-center .image-hero__content-container {
  justify-content: center;
  text-align: center;
}

.image-hero--text-horizontal-align-center
  .image-hero__content-container
  .image-hero__heading,
.image-hero--text-horizontal-align-center
  .image-hero__content-container
  .image-hero__subheading {
  margin-left: auto;
  margin-right: auto;
}

.image-hero--text-horizontal-align-right .image-hero__content-container {
  justify-content: flex-end;
  text-align: right;
}

.image-hero--text-horizontal-align-right
  .image-hero__content-container
  .image-hero__heading,
.image-hero--text-horizontal-align-right
  .image-hero__content-container
  .image-hero__subheading {
  margin-left: auto;
}

.image-hero--text-vertical-align-top .image-hero__content-container {
  align-items: flex-start;
}

.image-hero--text-vertical-align-center .image-hero__content-container {
  align-items: center;
}

.image-hero--text-vertical-align-bottom .image-hero__content-container {
  align-items: flex-end;
}

.image-hero__content {
  background-color: var(--text-container-background);
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

.image-hero__overline,
.image-hero__heading,
.image-hero__subheading {
  margin-top: 0;
  margin-bottom: 0;
  max-width: var(--text-max-width);
}

.image-hero__link.bttn {
  color: var(--button-text-color);
  background-color: var(--button-text-background);
  transition: background-color 0.2s ease;
}

.image-hero__link.bttn:hover,
.image-hero__link.bttn:active,
.image-hero__link.bttn:focus {
  background-color: var(--button-text-background-hover);
}

@media (min-width: 38em) {
  .image-hero__heading {
    font-size: var(--heading-font-size);
  }
}

.image-hero__subheading p {
  margin: 0;
}

@media (min-width: 38em) {
  .image-hero__subheading {
    font-size: var(--subheading-font-size);
  }
}

.image-hero__overlay {
  background: var(--overlay-background);
  background: var(--overlay-gradient, var(--overlay-background));
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.image-hero__overline + .image-hero__heading,
.image-hero__overline + .image-hero__subheading,
.image-hero__heading + .image-hero__subheading,
.image-hero__heading + .image-hero__overline,
.image-hero__subheading + .image-hero__heading,
.image-hero__subheading + .image-hero__overline,
.image-hero__link + .image-hero__heading,
.image-hero__link + .image-hero__subheading,
.image-hero__link + .image-hero__overline {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.image-hero__overline + .image-hero__link,
.image-hero__heading + .image-hero__link,
.image-hero__subheading + .image-hero__link {
  margin-top: calc(4px * 6);
  margin-top: calc(var(--spacing-unit) * 6);
}

.video-hero {
  position: relative;
  transition: opacity 0.5s;
  width: 100%;
}

.header-transparent .video-hero.first-full-height .video-hero__inner {
  padding-top: calc(var(--mobile-height) - 40px);
  padding-top: calc(var(--mobile-height) - var(--utility-bar-height));
}

@media (min-width: 38em) {
  .header-transparent .video-hero.first-full-height .video-hero__inner {
    padding-top: calc(var(--desktop-height) - 40px);
    padding-top: calc(var(--desktop-height) - var(--utility-bar-height));
  }
}

.header-transparent .video-hero.first-full-height .video-hero__content {
  margin-top: calc(var(--header-initial-height) - 40px);
  margin-top: calc(var(--header-initial-height) - var(--utility-bar-height));
}

.video-hero__inner {
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
  overflow: hidden;
  padding-top: calc(var(--mobile-height) - (40px - 40px));
  padding-top: calc(
    var(--mobile-height) - (var(--header-height) - var(--utility-bar-height))
  );
}

@media (min-width: 38em) {
  .video-hero__inner {
    padding-top: calc(var(--desktop-height) - (40px - 40px));
    padding-top: calc(
      var(--desktop-height) - (var(--header-height) - var(--utility-bar-height))
    );
  }
}

.video-hero--aspect-original.video-hero--has-image .video-hero__inner,
.video-hero--aspect-original.video-hero--has-video .video-hero__inner {
  padding-top: unset;
}

.video-hero__inner .video-hero__image {
  position: absolute;
}

.visual-preview .video-hero__inner {
  height: calc(var(--desktop-height) * 1.5) !important;
}

@media (max-width: 38em) {
  .visual-preview .video-hero__inner {
    height: calc(var(--mobile-height) * 1.1) !important;
  }
}

.video-hero__video {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: var(--video-focal-alignment);
  object-position: var(--video-focal-alignment);
}

.video-hero--aspect-original.video-hero--has-video .video-hero__video {
  position: relative;
}

.video-hero__image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.video-hero--aspect-original.video-hero--has-image:not(.video-hero--has-video)
  .video-hero__image {
  position: relative;
}

.video-hero__image .image__img {
  position: absolute;
  -o-object-fit: cover;
  object-fit: cover;
  height: 100% !important;
}

.video-hero__placeholder {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}

.video-hero__content-container {
  z-index: 1;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  color: var(--text-color);
  padding: calc(calc(4px * 7) + calc(4px * 5)) calc(4px * 5);
  padding: calc(var(--spacing-large) + var(--spacing-medium))
    var(--spacing-medium);
}

@media (min-width: 38em) {
  .video-hero__content-container {
    padding: calc(calc(4px * 7) + calc(4px * 5)) calc(4px * 20);
    padding: calc(var(--spacing-large) + var(--spacing-medium))
      var(--spacing-extra-extra-large);
  }
}

.video-hero--text-horizontal-align-left .video-hero__content-container {
  justify-content: flex-start;
}

.video-hero--text-horizontal-align-center .video-hero__content-container {
  justify-content: center;
  text-align: center;
}

.video-hero--text-horizontal-align-center
  .video-hero__content-container
  .video-hero__heading,
.video-hero--text-horizontal-align-center
  .video-hero__content-container
  .video-hero__subheading {
  margin-left: auto;
  margin-right: auto;
}

.video-hero--text-horizontal-align-right .video-hero__content-container {
  justify-content: flex-end;
  text-align: right;
}

.video-hero--text-horizontal-align-right
  .video-hero__content-container
  .video-hero__heading,
.video-hero--text-horizontal-align-right
  .video-hero__content-container
  .video-hero__subheading {
  margin-left: auto;
}

.video-hero--text-vertical-align-top .video-hero__content-container {
  align-items: flex-start;
}

.video-hero--text-vertical-align-center .video-hero__content-container {
  align-items: center;
}

.video-hero--text-vertical-align-bottom .video-hero__content-container {
  align-items: flex-end;
}

.video-hero__content {
  background-color: var(--text-container-background);
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

.video-hero__overline,
.video-hero__heading,
.video-hero__subheading {
  margin-top: 0;
  margin-bottom: 0;
  max-width: var(--text-max-width);
}

.video-hero__link.bttn {
  color: var(--button-text-color);
  background-color: var(--button-text-background);
  transition: background-color 0.2s ease;
}

.video-hero__link.bttn:hover,
.video-hero__link.bttn:active,
.video-hero__link.bttn:focus {
  background-color: var(--button-text-background-hover);
}

@media (min-width: 38em) {
  .video-hero__heading {
    font-size: var(--heading-font-size);
  }
}

.video-hero__subheading p {
  margin: 0;
}

@media (min-width: 38em) {
  .video-hero__subheading {
    font-size: var(--subheading-font-size);
  }
}

.video-hero__overlay {
  background: var(--overlay-background);
  background: var(--overlay-gradient, var(--overlay-background));
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.video-hero__overline + .video-hero__heading,
.video-hero__overline + .video-hero__subheading,
.video-hero__heading + .video-hero__subheading,
.video-hero__heading + .video-hero__overline,
.video-hero__subheading + .video-hero__heading,
.video-hero__subheading + .video-hero__overline,
.video-hero__link + .video-hero__heading,
.video-hero__link + .video-hero__subheading,
.video-hero__link + .video-hero__overline {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.video-hero__overline + .video-hero__link,
.video-hero__heading + .video-hero__link,
.video-hero__subheading + .video-hero__link {
  margin-top: calc(4px * 6);
  margin-top: calc(var(--spacing-unit) * 6);
}

.disclosure {
  position: relative;
}

.disclosure__toggle {
  display: flex;
  align-items: center;
  white-space: nowrap;
  height: 28px;
  padding: 0 8px 0 8px;
  border: 0;
}

.disclosure__toggle:focus {
  background-color: black;
}

.disclosure__toggle .arrow {
  margin-left: 6px;
  pointer-events: none;
}

.disclosure__toggle .arrow svg {
  width: 8px;
  display: inline-block;
}

.disclosure-list {
  background-color: var(--color-navigation-bg);
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: var(--shadow-3);
  bottom: 115%;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  position: absolute;
  display: none;
  min-width: 100px;
  max-height: 300px;
  overflow-y: auto;
}

.disclosure-list--visible {
  display: block;
}

.disclosure-list__item {
  border-bottom: 1px solid transparent;
  white-space: nowrap;
  line-height: 2em;
  padding: 0;
  text-align: left;
  list-style: none;
}

.disclosure-list__item + .disclosure-list__item {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.disclosure-list__option {
  color: var(--color-navigation-text);
}

.disclosure-list__option:focus {
  color: var(--color-accent);
}

.disclosure-list__option:hover {
  color: var(--color-navigation-text-meta);
}

.disclosure-list__item--current .disclosure-list__option {
  color: var(--color-navigation-text-meta);
}

.disclosure-list__item--current .disclosure-list__option:focus {
  color: var(--color-accent);
}

.icon {
  width: 24px;
  height: 24px;
  display: inline-block;
  color: var(--color-icon);
}

.image {
  position: relative;
}

.image__img,
.image__shimmer {
  display: block;
  position: absolute;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-fit: var(--object-fit, cover);
  object-fit: var(--object-fit, cover);
  -o-object-position: center center;
  object-position: center center;
  -o-object-position: var(--focal-alignment, center center);
  object-position: var(--focal-alignment, center center);
  top: 0;
  width: 100%;
  height: 100%;
}

.image__img.lazyload,
.image__img.lazyloading {
  opacity: 0;
}

.image__img.lazyloaded {
  opacity: 1;
  transition: opacity 0.5s;
}

.no-js .image__img {
  opacity: 1;
}

.image__shimmer {
  background-color: hsla(0, 0%, 92%, 1);
  pointer-events: none;
  overflow: hidden;
}

.section--contrast .image__shimmer {
  background-color: hsla(0, 0%, 90%, 1);
}

.lazyloading ~ .image__shimmer::after,
.lazyloading ~ .image__shimmer::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 40%;
  height: 10%;
  transform: translate3d(0, -2000%, 0) rotate(45deg) scale(10, 10);
  background: linear-gradient(
    180deg,
    hsla(0, 0%, 100%, 0) 0,
    hsla(0, 0%, 100%, 0) 5%,
    hsla(0, 0%, 99%, 1) 50%,
    hsla(0, 0%, 100%, 0) 95%,
    hsla(0, 0%, 100%, 0)
  );
  -webkit-animation: shimmer 1500ms cubic-bezier(0.33, 0, 0.67, 1) infinite;
  animation: shimmer 1500ms cubic-bezier(0.33, 0, 0.67, 1) infinite;
  content: "";
}

.lazyloading ~ .image__shimmer::before {
  -webkit-animation-delay: 650ms;
  animation-delay: 650ms;
}

.image__img.lazyloaded + .image__shimmer {
  opacity: 0;
  visibility: hidden;
  transition: opacity 100ms calc(67ms * 0) cubic-bezier(0.33, 0, 0, 1),
    visibility 0s calc(67ms * 0 + 100ms);
  transition: opacity var(--duration-ultra-fast)
      calc(var(--delay-normal) * var(--delay-offset-multiplier, 0))
      var(--easing),
    visibility 0s
      calc(
        var(--delay-normal) * var(--delay-offset-multiplier, 0) +
          var(--duration-ultra-fast)
      );
}

@-webkit-keyframes shimmer {
  0% {
    transform: translate3d(-30%, 2000%, 0) rotate(45deg) scale(10, 10);
  }

  100% {
    transform: translate3d(-30%, -1200%, 0) rotate(45deg) scale(10, 10);
  }
}

@keyframes shimmer {
  0% {
    transform: translate3d(-30%, 2000%, 0) rotate(45deg) scale(10, 10);
  }

  100% {
    transform: translate3d(-30%, -1200%, 0) rotate(45deg) scale(10, 10);
  }
}

.responsive__img.lazyload,
.responsive__img.lazyloading {
  filter: blur(1px);
}

.responsive__img.lazyloaded {
  filter: blur(0);
  transition: filter 0.4s;
}

.media {
  position: relative;
}

.media img {
  max-width: 100%;
}

.media[data-media-type="external_video"] {
  padding-top: 57.5%;
  position: relative;
}

.media[data-media-type="external_video"] iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
}

.media[data-media-type="model"] {
  height: 50vh;
}

.media video {
  width: 100%;
}

.media .plyr__poster-enabled:focus {
  position: relative;
}

.media .plyr__poster-enabled:focus:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 1px solid var(--color-text-body);
}

.price {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: 0;
  margin-bottom: 0;
}

.price dl {
  margin-top: 0;
}

.price dd {
  margin: 0 0.5em 0 0;
}

.price--unavailable {
  visibility: hidden;
}

.price--compare-price-hidden .price__compare {
  display: none;
}

.price__pricing-group {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.price__regular {
  display: block;
}

.price__regular,
.price__sale {
  margin-right: 0.625rem;
}

.price--on-sale .price__regular,
.price--on-sale .price__availability {
  display: none;
}

.price__availability {
  display: none;
  @include product-vendor;
}

.price--sold-out .price__availability {
  display: block;
}

.price__sale {
  display: none;
}

.price--on-sale .price__sale {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.price__unit {
  display: none;
}

.price--unit-available .price__unit {
  display: block;
}

@media (max-width: 60em) {
  .product-form {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small);
  }
}

.product-form__variants {
  display: none;
}

.no-js .product-form__variants {
  display: block;
}

.product-form__controls-group {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.product-form__controls-group:first-child {
  margin-top: 0;
}

.product-form__controls-group:first-child .product-form__option:first-child {
  margin-top: 0;
}

.no-js .product-form__controls-group.product-form__controls-group--options {
  display: none;
}

.product-form__controls-group.product-form__controls-group--submit {
  margin-top: calc(4px * 7);
  margin-top: var(--spacing-large);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.product-form__controls-group.product-form__controls-group--submit:first-child {
  margin-top: 0;
}

.product-form__controls-group.hidden {
  display: none;
}

.accordion + .product-form__controls-group,
.accordion + .product-form__controls-group .product-form__option {
  margin-top: calc(calc(4px * 5) - (calc(4px * 3)));
  margin-top: calc(var(--spacing-medium) - (var(--spacing-small)));
}

.product-form__controls-label-wraper {
  margin-bottom: calc(4px * 2);
  margin-bottom: calc(var(--spacing-unit) * 2);
}

.product-form__controls-label-wraper label {
  color: var(--color-text);
}

.section--contrast .product-form__controls-label-wraper label {
  color: var(--color-contrast-text);
}

.product-form__option {
  position: relative;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.product-form__option-select-wrapper {
  position: relative;
  margin-top: calc(4px * 2);
  margin-top: calc(var(--spacing-unit) * 2);
}

.product-form__option-select-wrapper:hover svg {
  color: var(--color-icon-darker);
}

.product-form__option-select {
  -webkit-appearance: none;
  -moz-appearance: none;

  width: 100%;
  height: 48px;
  height: var(--height-button);
  border: 1px solid var(--color-border);
  padding: calc(4px * 3) calc(4px * 4);
  padding: var(--spacing-small) calc(var(--spacing-unit) * 4);
  cursor: pointer;
  transition: border-color 0.15s ease-in-out;
}

.product-form__option-select:hover {
  border-color: var(--color-border-darker);
}

.product-form__option-select.hidden {
  display: none;
}

.product-form__option-select.hidden + svg {
  display: none;
}

.no-js .product-form__option-select {
  -webkit-appearance: auto;
  -moz-appearance: auto;
}

.product-form__option-select-icon {
  height: 48px;
  height: var(--height-button);
  position: absolute;
  top: 0;
  right: 0;
  pointer-events: none;
}

.product-form__option-select-icon svg {
  position: absolute;
  top: 50%;
  right: 18px;
  transform: translateY(-50%);
  color: var(--color-icon);
}

.product-form__chip-wrapper,
.product-form__color-swatches {
  display: flex;
  flex-wrap: wrap;
}

.no-js .product-form__chip-wrapper,
.no-js .product-form__color-swatches {
  display: none;
}

.product-form__chip-wrapper select,
.product-form__color-swatches select {
  display: none;
}

.product-form__chip-wrapper {
  grid-gap: 4px;
  gap: 4px;
  grid-gap: var(--spacing-unit);
  gap: var(--spacing-unit);
}

.product-form__chip-wrapper .product-form__option-label-wrapper {
  margin-bottom: 4px;
  margin-bottom: var(--spacing-unit);
}

.product-form__color-swatches {
  grid-gap: calc(4px * 2 - 2px) 4px;
  gap: calc(4px * 2 - 2px) 4px;
  grid-gap: calc(var(--spacing-unit) * 2 - 2px) var(--spacing-unit);
  gap: calc(var(--spacing-unit) * 2 - 2px) var(--spacing-unit);
}

.product-form__color-swatches .product-form__option-label-wrapper {
  margin-bottom: calc(4px / 2);
  margin-bottom: calc(var(--spacing-unit) / 2);
}

.product-form__option-swatches-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin: calc(4px * -1);
  margin: calc(var(--spacing-unit) * -1);
}

.product-form__option-label-wrapper {
  flex: 1 0 100%;
  display: flex;
  width: 100%;
  align-items: baseline;
}

.product-form__option-label-wrapper .product-form__option-selected,
.product-form__option-label-wrapper .variant-popup__trigger {
  margin-left: calc(4px * 2);
  margin-left: calc(var(--spacing-unit) * 2);
}

.product-form__option-label-wrapper label {
  color: var(--color-text);
}

.section--contrast .product-form__option-label-wrapper label {
  color: var(--color-contrast-text);
}

.product-form__color-swatches-selected {
  width: 100%;
  margin-bottom: 10px;
}

.product-form__color-swatch {
  width: 40px;
  height: 40px;
  margin: 4px;
  margin: var(--spacing-unit);
  border-radius: 100%;
  box-shadow: 0 0 0 1px var(--color-border);
  border: 4px solid var(--color-bg);
  cursor: pointer;
  background-color: var(--color-bg);
  background-position: center !important;
  background-size: cover !important;
  transition: box-shadow 0.15s ease-in-out;
}

.product-form__color-swatch:hover {
  box-shadow: 0 0 0 1px var(--color-border-darker);
}

.product-form__color-swatch:focus {
  outline: none;
  box-shadow: 0 0 0 1px var(--color-text);
}

.product-form__color-swatch.selected {
  box-shadow: 0 0 0 1px var(--color-text);
}

.product-form__color-swatch {
}

.product-form__color-swatch[dynamic-variant-button].disabled {
  position: relative;
  box-shadow: 0 0 0 1px var(--color-border-darker);
  border: 4px solid var(--color-bg);
  cursor: pointer;
  background-color: var(--color-bg);
}

.product-form__color-swatch[dynamic-variant-button].disabled.selected {
  box-shadow: 0 0 0 1px var(--color-text);
}

.product-form__color-swatch[dynamic-variant-button].disabled::after {
  content: "";
  position: absolute;
  left: -4px;
  right: -4px;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  height: 1px;
  background-color: var(--color-text);
}

.product-form__chip-selected {
  width: 100%;
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.product-form__chip {
  position: relative;
  height: 48px;
  height: var(--height-button);
  border: 1px solid var(--color-border);
  border-radius: 2px;
  padding: calc(4px * 3) calc(4px * 4);
  padding: var(--spacing-small) calc(var(--spacing-unit) * 4);
  background-color: transparent;
  font-size: var(--font-size-body-base);
  transition: border-color 0.15s ease-in-out, background-color 0.15s ease-in-out;
  color: var(--color-text);
}

.product-form__chip label {
  color: var(--color-text);
}

.product-form__chip:hover {
  border-color: var(--color-border-darker);
}

.product-form__chip.selected {
  border-color: var(--color-text);
}

.product-form__chip {
}

.product-form__chip[dynamic-variant-button].disabled {
  background-color: var(--color-background-meta);
  border-color: var(--color-background-meta);
  color: var(--color-text-meta);
  text-decoration: line-through;
}

.product-form__chip[dynamic-variant-button].disabled.selected {
  border-color: var(--color-border-darker);
}

.product-form__quantity {
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: var(--button-border-radius);
  padding-top: calc(4px * 3);
  padding-top: var(--spacing-small);
  padding-bottom: calc(4px * 3);
  padding-bottom: var(--spacing-small);
  height: 48px;
  height: var(--height-button);
  transition: border-color 0.2s ease;
}

.product-form__quantity:hover {
  border-color: var(--color-border-darker);
}

.product-form__quantity label {
  display: block;
}

.product-form__quantity input {
  height: unset;
  text-align: center;
  border: 0;
  border-radius: 0;
  width: 30px;
  padding: 4px 0;
  padding: var(--spacing-unit) 0;
}

.product-form__quantity-button {
  height: calc(48px - 2px);
  height: calc(var(--height-button) - 2px);
  display: flex;
  align-items: center;
  padding: calc(4px * 3) calc(4px * 4);
  padding: var(--spacing-small) calc(var(--spacing-unit) * 4);
  cursor: pointer;
  color: var(--color-icon);
  display: flex;
  background-color: transparent;
  border: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out;
}

.product-form__quantity-button:hover,
.product-form__quantity-button:focus {
  color: var(--color-icon-darker);
  background-color: var(--color-background-meta);
}

.product-form__quantity-add-item {
  border-top-right-radius: var(--button-border-radius);
  border-bottom-right-radius: var(--button-border-radius);
}

.product-form__quantity-subtract-item {
  border-top-left-radius: var(--button-border-radius);
  border-bottom-left-radius: var(--button-border-radius);
}

.product-form__submit-button-wrapper .product-form__controls-group {
}

.product-form__submit-button-wrapper .product-form__cart-submit {
  display: block;
  width: 100%;
}

.product-form__item--payment-button
  .shopify-payment-button
  shopify-accelerated-checkout {
  --shopify-accelerated-checkout-button-border-radius: var(
    --button-border-radius
  );
  --shopify-accelerated-checkout-button-block-size: var(--height-button);
}

.product-form__shop-pay {
  padding: calc(4px * 3) calc(4px * 4);
  padding: var(--spacing-small) calc(var(--spacing-unit) * 4);
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
  border: 1px solid var(--color-border);
}

.product-form__shop-pay:empty {
  padding: 0;
  margin-top: 0;
  border: 0;
}

.product__link {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
  margin-bottom: 0;
  color: var(--color-accent);
  text-decoration: underline;
}

.product__link:hover {
  opacity: 0.5;
}

.section--contrast .product-form .accordion,
.section--contrast .product-form .accordion__label,
.section--contrast .product-form .accordion__text,
.section--contrast .product-form .product__share-text {
  color: var(--color-contrast-text);
}

.section--contrast .product-form .accordion__label:after,
.section--contrast .product-form .accordion__label:before {
  background-color: var(--color-contrast-text);
}

.section--contrast .product-form .accordion__label:hover {
  background-color: var(--color-contrast-bg-meta);
}

.section--contrast .product-form .accordion__group {
  border-color: var(--color-contrast-border) !important;
}

.section--contrast .product-form .product-form__quantity,
.section--contrast .product-form .product-form__chip-label,
.section--contrast .product-form .product-form__color-swatches {
  border-color: var(--color-contrast-border);
}

.section--contrast .product-form .product-form__chip {
  border-color: var(--color-contrast-border);
  color: var(--color-contrast-text);
}

.section--contrast .product-form .product-form__chip.selected {
  border-color: var(--color-contrast-text);
}

.section--contrast .product-form .product-form__chip.selected:hover {
  border-color: var(--color-contrast-text);
}

.section--contrast .product-form .product-form__chip:hover {
  border-color: var(--color-contrast-border-darker);
  color: var(--color-contrast-text);
}

.section--contrast .product-form .product-form__chip {
}

.section--contrast
  .product-form
  .product-form__chip[dynamic-variant-button].disabled {
  background-color: var(--color-contrast-bg-meta);
  border-color: var(--color-contrast-bg-meta);
  color: var(--color-contrast-text-meta);
}

.section--contrast
  .product-form
  .product-form__chip[dynamic-variant-button].disabled.selected {
  border-color: var(--color-contrast-border-darker);
}

.section--contrast .product-form .product-form__option-label {
  color: var(--color-contrast-input-text);
}

.section--contrast .product-form .product-form__chip-label {
  color: var(--color-contrast-text);
}

.section--contrast .product-form .product-form__color-swatch {
  background-color: var(--color-contrast-bg);
  box-shadow: 0 0 0 1px var(--color-contrast-border);
  border: 3px solid var(--color-contrast-bg);
  background-color: var(--color-contrast-bg);
}

.section--contrast .product-form .product-form__color-swatch.selected {
  box-shadow: 0 0 0 1px var(--color-contrast-text);
}

.section--contrast .product-form .product-form__color-swatch:hover {
  box-shadow: 0 0 0 1px var(--color-contrast-border-darker);
}

.section--contrast .product-form .product-form__color-swatch:focus {
  box-shadow: 0 0 0 1px var(--color-contrast-text);
}

.section--contrast .product-form .product-form__color-swatch {
}

.section--contrast
  .product-form
  .product-form__color-swatch[dynamic-variant-button].disabled {
  box-shadow: 0 0 0 1px var(--color-contrast-border-darker);
  border: 4px solid var(--color-contrast-bg);
  background-color: var(--color-contrast-bg);
}

.section--contrast
  .product-form
  .product-form__color-swatch[dynamic-variant-button].disabled.selected {
  box-shadow: 0 0 0 1px var(--color-contrast-text);
}

.section--contrast
  .product-form
  .product-form__color-swatch[dynamic-variant-button].disabled::after {
  background-color: var(--color-contrast-text);
}

.section--contrast .product-form .product-form__quantity-button:hover,
.section--contrast .product-form .product-form__quantity-button:focus {
  background-color: var(--color-contrast-bg-meta);
}

.section--contrast .product-form .product__share .product__share-text svg {
  color: var(--color-contrast-text);
}

.section--contrast .product-form .product__share .share-icons .icon {
  color: var(--color-contrast-text);
}

.section--contrast .product-form .product__share .share-icons .icon:hover {
  color: var(--color-contrast-text-meta);
}

.product-item {
  position: relative;
}

.product-item .product-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: right;
  align-items: center;
}

.product-item .badge {
  margin: 0 0 calc(4px * 3) calc(4px * 3);
  margin: 0 0 var(--spacing-small) var(--spacing-small);
  padding: 12px 14px;
  pointer-events: none;
  letter-spacing: 0.05em;
  font-size: var(--font-size-body-extra-small);
}

.product-item .first {
  position: absolute;
  opacity: 1;
  transition: opacity 0.35s;
  top: 0;
}

.product-item .not-first {
  position: absolute;
  top: 0;
  z-index: 0;
  height: 100%;
  opacity: 0;
  transition: opacity 0.35s;
  background-color: var(--color-bg);
}

.product-item .not-first .image {
  width: 100%;
  height: 100%;
}

.product-item .flickity-button {
  color: var(--color-text-meta);
}

.product-item .flickity-prev-next-button {
  display: flex;
  align-items: center;
  justify-content: space-around;
  width: 28px;
  height: 28px;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2), 0px 0px 2px rgba(0, 0, 0, 0.25);
  box-shadow: var(--shadow-1);
  opacity: 0;
  transition: opacity 0.25s;
}

.product-item .flickity-prev-next-button .flickity-button-icon {
  position: static;
  width: 14px;
  height: 14px;
}

@media (min-width: 38em) {
  .product-item:hover .product-item__swatches-wrapper,
  .product-item:hover .product-item__swatch {
    opacity: 1;
  }
}

.product-item .quick-shop {
  display: none;
}

.product-item--sold-out .product-item__image-wrapper:after {
  content: "";
  width: 20px;
  height: 20px;
  background-color: red;
}

.product-item--square .product-item__image-wrapper,
.product-item--landscape .product-item__image-wrapper,
.product-item--portrait .product-item__image-wrapper {
  overflow: hidden;
}

.product-item--square .product-item__images,
.product-item--square .product-item__image,
.product-item--square .product-item__sizer,
.product-item--landscape .product-item__images,
.product-item--landscape .product-item__image,
.product-item--landscape .product-item__sizer,
.product-item--portrait .product-item__images,
.product-item--portrait .product-item__image,
.product-item--portrait .product-item__sizer {
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
}

.product-item--square .image,
.product-item--landscape .image,
.product-item--portrait .image {
  height: 100%;
}

.product-item--square .product-item__image-wrapper {
  padding-top: 100%;
}

.product-item--landscape .product-item__image-wrapper {
  padding-top: calc((2 / 3) * 100%);
}

.product-item--portrait .product-item__image-wrapper {
  padding-top: calc((3 / 2) * 100%);
}

.product-item__image-wrapper {
  position: relative;
  overflow: hidden;
}

@media (max-width: 38em) {
  .product-item__image-wrapper .product-item__quick-shop-button {
    display: none;
  }
}

.product-item__image-wrapper .product-item__quick-shop-button {
  z-index: 1;
  position: absolute;
  bottom: 0;
  padding: 0 10px;
  margin: calc(4px * 5);
  margin: var(--spacing-medium);
  width: calc(100% - (calc(4px * 5) * 2));
  width: calc(100% - (var(--spacing-medium) * 2));
  opacity: 0;
  transition: opacity 0.35s;
}

.is-mobile .product-item__image-wrapper .product-item__quick-shop-button {
  display: none;
}

.product-item__image-wrapper:hover .product-item__quick-shop-button,
.product-item__image-wrapper:focus .product-item__quick-shop-button,
.product-item__image-wrapper[focus-within] .product-item__quick-shop-button {
  opacity: 1;
}

.product-item__image-wrapper:hover .product-item__image.not-first,
.product-item__image-wrapper:focus .product-item__image.not-first,
.product-item__image-wrapper[focus-within] .product-item__image.not-first {
  opacity: 1;
  transition: opacity 0.35s;
}

.product-item__image-wrapper:hover .product-item__quick-shop-button,
.product-item__image-wrapper:focus .product-item__quick-shop-button,
.product-item__image-wrapper:focus-within .product-item__quick-shop-button {
  opacity: 1;
}

.product-item__image-wrapper:hover .product-item__image.not-first,
.product-item__image-wrapper:focus .product-item__image.not-first,
.product-item__image-wrapper:focus-within .product-item__image.not-first {
  opacity: 1;
  transition: opacity 0.35s;
}

.product-item__sizer {
  opacity: 0;
  pointer-events: none;
}

.product-item__images {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.product-item__images .product-item__image {
  pointer-events: none;
}

.product-item__images .visible {
  opacity: 1;
  transition: opacity 0.35s;
}

.product-item__images .hidden {
  opacity: 0;
  transition: opacity 0.35s;
}

.product-item__image {
  width: 100%;
}

.product-item__images .product-item__image {
  position: absolute;
}

.product-item__swatches-wrapper {
  display: flex;
  flex-direction: column;
  width: 100%;
  opacity: 0;
  transition: opacity 0.25s;
  background-color: var(--color-bg);
}

.product-item__swatches {
  display: flex;
  flex-wrap: wrap;
  grid-gap: calc(4px * 2);
  gap: calc(4px * 2);
  grid-gap: calc(var(--spacing-unit) * 2);
  gap: calc(var(--spacing-unit) * 2);
  padding-top: 4px;
  padding-top: var(--spacing-unit);
  padding-bottom: 4px;
  padding-bottom: var(--spacing-unit);
}

.product-item__swatch {
  width: 10px;
  height: 10px;
  border-radius: 100%;
  cursor: pointer;
  background-color: var(--color-bg);
  background-position: center !important;
  background-size: cover !important;
  box-shadow: 0 0 0 0.5px var(--color-border);
  opacity: 0;
}

.product-item__details-wrapper .price > *,
.product-item__details-wrapper dd:last-of-type {
  margin-right: 0;
}

.product-item__details-wrapper[data-alignment="center"] {
  text-align: center;
}

.product-item__details-wrapper[data-alignment="center"]
  .product-item__swatches {
  justify-content: center;
}

.product-item__details-wrapper[data-alignment="center"] .price {
  align-items: center;
}

.product-item__details-wrapper[data-alignment="center"] .price__sale {
  justify-content: center;
}

.product-item__details-wrapper[data-alignment="right"] {
  text-align: right;
}

.product-item__details-wrapper[data-alignment="right"] .product-item__swatches {
  justify-content: flex-end;
}

.product-item__details-wrapper[data-alignment="right"] .price {
  align-items: flex-end;
}

.product-item__details-wrapper[data-alignment="right"] .price__sale {
  justify-content: flex-end;
}

.button {
  display: inline-block;
  vertical-align: middle;
  width: auto;
  border: 0;
  text-align: center;
  white-space: nowrap;
  text-decoration: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.button:disabled {
  opacity: 0.4;
  cursor: default;
}

.bttn,
#shopify-product-reviews .spr-summary-actions-newreview,
.product__reviews .spr-summary-actions-newreview,
#shopify-product-reviews .spr-summary-actions-,
.product__reviews .spr-summary-actions-,
#shopify-product-reviews .spr-button-primary,
.product__reviews .spr-button-primary {
  text-transform: var(--button-text-transform);
  font-family: var(--font-body);
  font-weight: var(--font-body-weight);
  font-size: var(--font-size-button);
  letter-spacing: var(--font-letter-spacing-button);
  text-align: center;
  height: 48px;
  height: var(--height-button);
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.81em;
  background-color: var(--color-primary-button-bg);
  color: var(--color-bg);
  border: none;
  border-radius: var(--button-border-radius);

  opacity: 1;
  transition: color 0.25s ease, border-color 0.25s ease;
}

.bttn:hover,
#shopify-product-reviews .spr-summary-actions-newreview:hover,
.product__reviews .spr-summary-actions-newreview:hover,
#shopify-product-reviews .spr-summary-actions-:hover,
.product__reviews .spr-summary-actions-:hover,
#shopify-product-reviews .spr-button-primary:hover,
.product__reviews .spr-button-primary:hover {
  background-color: var(--color-primary-button-active-bg);
  transition: background-color 0.25s ease;
}

.bttn:disabled,
#shopify-product-reviews .spr-summary-actions-newreview:disabled,
.product__reviews .spr-summary-actions-newreview:disabled,
#shopify-product-reviews .spr-summary-actions-:disabled,
.product__reviews .spr-summary-actions-:disabled,
#shopify-product-reviews .spr-button-primary:disabled,
.product__reviews .spr-button-primary:disabled {
  opacity: 0.4;
  cursor: default;
}

.bttn--secondary,
.bttnnewreview,
#shopify-product-reviews .spr-summary-actions-newreview--secondary,
#shopify-product-reviews .spr-summary-actions-newreviewnewreview,
.product__reviews .spr-summary-actions-newreview--secondary,
.product__reviews .spr-summary-actions-newreviewnewreview,
#shopify-product-reviews .spr-summary-actions---secondary,
#shopify-product-reviews .spr-summary-actions-newreview,
.product__reviews .spr-summary-actions---secondary,
.product__reviews .spr-summary-actions-newreview,
#shopify-product-reviews .spr-button-primary--secondary,
#shopify-product-reviews .spr-button-primarynewreview,
.product__reviews .spr-button-primary--secondary,
.product__reviews .spr-button-primarynewreview {
  position: relative;
  background-color: transparent;
  z-index: 1;
}

.secondary_button-style-solid .bttn--secondary,
.secondary_button-style-solid .bttnnewreview,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions-newreview--secondary,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions-newreviewnewreview,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions-newreview--secondary,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions-newreviewnewreview,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions---secondary,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions-newreview,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions---secondary,
.secondary_button-style-solid .product__reviews .spr-summary-actions-newreview,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-button-primary--secondary,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-button-primarynewreview,
.secondary_button-style-solid .product__reviews .spr-button-primary--secondary,
.secondary_button-style-solid .product__reviews .spr-button-primarynewreview {
  color: var(--color-bg);
  background-color: var(--color-secondary-button-bg);
  transition: background-color 0.2s ease;
}

.secondary_button-style-solid .bttn--secondary:hover,
.secondary_button-style-solid .bttn--secondary:focus,
.secondary_button-style-solid .bttnnewreview:hover,
.secondary_button-style-solid .bttnnewreview:focus,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions-newreview--secondary:hover,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions-newreview--secondary:focus,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions-newreviewnewreview:hover,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions-newreviewnewreview:focus,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions-newreview--secondary:hover,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions-newreview--secondary:focus,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions-newreviewnewreview:hover,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions-newreviewnewreview:focus,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions---secondary:hover,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions---secondary:focus,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions-newreview:hover,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions-newreview:focus,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions---secondary:hover,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions---secondary:focus,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions-newreview:hover,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions-newreview:focus,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-button-primary--secondary:hover,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-button-primary--secondary:focus,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-button-primarynewreview:hover,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-button-primarynewreview:focus,
.secondary_button-style-solid
  .product__reviews
  .spr-button-primary--secondary:hover,
.secondary_button-style-solid
  .product__reviews
  .spr-button-primary--secondary:focus,
.secondary_button-style-solid
  .product__reviews
  .spr-button-primarynewreview:hover,
.secondary_button-style-solid
  .product__reviews
  .spr-button-primarynewreview:focus {
  background-color: var(--color-secondary-button-meta);
}

.secondary_button-style-solid .bttn--secondary:disabled:hover,
.secondary_button-style-solid .bttnnewreview:disabled:hover,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions-newreview--secondary:disabled:hover,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions-newreviewnewreview:disabled:hover,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions-newreview--secondary:disabled:hover,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions-newreviewnewreview:disabled:hover,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions---secondary:disabled:hover,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-summary-actions-newreview:disabled:hover,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions---secondary:disabled:hover,
.secondary_button-style-solid
  .product__reviews
  .spr-summary-actions-newreview:disabled:hover,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-button-primary--secondary:disabled:hover,
.secondary_button-style-solid
  #shopify-product-reviews
  .spr-button-primarynewreview:disabled:hover,
.secondary_button-style-solid
  .product__reviews
  .spr-button-primary--secondary:disabled:hover,
.secondary_button-style-solid
  .product__reviews
  .spr-button-primarynewreview:disabled:hover {
  background-color: var(--color-secondary-button-bg);
}

.secondary_button-style-bordered .bttn--secondary,
.secondary_button-style-bordered .bttnnewreview,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreview--secondary,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreviewnewreview,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreview--secondary,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreviewnewreview,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions---secondary,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreview,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions---secondary,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreview,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-button-primary--secondary,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-button-primarynewreview,
.secondary_button-style-bordered
  .product__reviews
  .spr-button-primary--secondary,
.secondary_button-style-bordered
  .product__reviews
  .spr-button-primarynewreview {
  color: var(--color-secondary-button-bg);
  border: 1px solid var(--color-secondary-button-border);
}

.secondary_button-style-bordered .bttn--secondary:before,
.secondary_button-style-bordered .bttnnewreview:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreview--secondary:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreviewnewreview:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreview--secondary:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreviewnewreview:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions---secondary:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreview:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions---secondary:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreview:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-button-primary--secondary:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-button-primarynewreview:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-button-primary--secondary:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-button-primarynewreview:before {
  content: "";
  position: absolute;
  z-index: -1;
  width: calc(100% + 4px);
  height: 0;
  top: 50%;
  left: 50%;
  background: var(--color-secondary-button-bg);
  border-radius: var(--button-border-radius);
  opacity: 0;
  transform: translateX(-50%) translateY(-50%);
  transition: height 0.25s cubic-bezier(0.32, 0.24, 0.15, 1);
  transition: height 0.25s var(--cubic);
}

.secondary_button-style-bordered .bttn--secondary:hover,
.secondary_button-style-bordered .bttnnewreview:hover,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreview--secondary:hover,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreviewnewreview:hover,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreview--secondary:hover,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreviewnewreview:hover,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions---secondary:hover,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreview:hover,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions---secondary:hover,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreview:hover,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-button-primary--secondary:hover,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-button-primarynewreview:hover,
.secondary_button-style-bordered
  .product__reviews
  .spr-button-primary--secondary:hover,
.secondary_button-style-bordered
  .product__reviews
  .spr-button-primarynewreview:hover {
  background-color: transparent;
  color: var(--color-bg);
}

.secondary_button-style-bordered .bttn--secondary:hover:before,
.secondary_button-style-bordered .bttnnewreview:hover:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreview--secondary:hover:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreviewnewreview:hover:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreview--secondary:hover:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreviewnewreview:hover:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions---secondary:hover:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreview:hover:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions---secondary:hover:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreview:hover:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-button-primary--secondary:hover:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-button-primarynewreview:hover:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-button-primary--secondary:hover:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-button-primarynewreview:hover:before {
  opacity: 1;
  height: 48px;
  height: var(--height-button);
}

.secondary_button-style-bordered .bttn--secondary:disabled:hover,
.secondary_button-style-bordered .bttnnewreview:disabled:hover,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreview--secondary:disabled:hover,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreviewnewreview:disabled:hover,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreview--secondary:disabled:hover,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreviewnewreview:disabled:hover,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions---secondary:disabled:hover,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreview:disabled:hover,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions---secondary:disabled:hover,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreview:disabled:hover,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-button-primary--secondary:disabled:hover,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-button-primarynewreview:disabled:hover,
.secondary_button-style-bordered
  .product__reviews
  .spr-button-primary--secondary:disabled:hover,
.secondary_button-style-bordered
  .product__reviews
  .spr-button-primarynewreview:disabled:hover {
  color: var(--color-secondary-button-text);
  border: 1px solid var(--color-border);
}

.secondary_button-style-bordered .bttn--secondary:disabled:before,
.secondary_button-style-bordered .bttnnewreview:disabled:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreview--secondary:disabled:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreviewnewreview:disabled:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreview--secondary:disabled:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreviewnewreview:disabled:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions---secondary:disabled:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-summary-actions-newreview:disabled:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions---secondary:disabled:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-summary-actions-newreview:disabled:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-button-primary--secondary:disabled:before,
.secondary_button-style-bordered
  #shopify-product-reviews
  .spr-button-primarynewreview:disabled:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-button-primary--secondary:disabled:before,
.secondary_button-style-bordered
  .product__reviews
  .spr-button-primarynewreview:disabled:before {
  opacity: 0;
}

.bttn--inline,
#shopify-product-reviews .spr-summary-actions-newreview--inline,
.product__reviews .spr-summary-actions-newreview--inline,
#shopify-product-reviews .spr-summary-actions---inline,
.product__reviews .spr-summary-actions---inline,
#shopify-product-reviews .spr-button-primary--inline,
.product__reviews .spr-button-primary--inline {
  display: inline-flex;
}

.bttn--full,
#shopify-product-reviews .spr-summary-actions-newreview--full,
.product__reviews .spr-summary-actions-newreview--full,
#shopify-product-reviews .spr-summary-actions---full,
.product__reviews .spr-summary-actions---full,
#shopify-product-reviews .spr-button-primary--full,
.product__reviews .spr-button-primary--full {
  width: 100%;
}

.bttn--small,
#shopify-product-reviews .spr-summary-actions-newreview--small,
.product__reviews .spr-summary-actions-newreview--small,
#shopify-product-reviews .spr-summary-actions---small,
.product__reviews .spr-summary-actions---small,
#shopify-product-reviews .spr-button-primary--small,
.product__reviews .spr-button-primary--small {
  height: 42px;
  font-size: var(--font-size-body-extra-small);
}

.bttn__spinner {
  display: none;
  width: 20px;
  height: 20px;
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
  color: inherit;
}

.bttn--loading .bttn__spinner {
  display: inline-block;
}

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

.text-block--center .text-block__subheading,
.text-block--center .text-block__heading {
  margin-right: auto;
  margin-left: auto;
}

.text-block--right {
  text-align: right;
}

.text-block--right .text-block__subheading,
.text-block--right .text-block__heading {
  margin-left: auto;
}

.testimonials .text-block--right .text-block__subheading,
.testimonials .text-block--right .text-block__heading {
  margin-left: 0;
}

@media (min-width: 60em) {
  .testimonials .text-block--right .text-block__subheading,
  .testimonials .text-block--right .text-block__heading {
    margin-left: auto;
  }
}

.text-block__subheading p:first-child,
.text-block__heading p:first-child {
  margin-top: 0;
}

.text-block__subheading p:last-child,
.text-block__heading p:last-child {
  margin-bottom: 0;
}

.text-block__heading {
  margin-top: 0;
}

.text-block__subheading {
  margin-top: 0;
}

.text-block__item {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.text-block__item:last-child {
  margin-bottom: 0;
}

.text-block__subheading + .text-block__item {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.text-block__subheading + .text-block__button {
  margin-top: calc(4px * 6);
  margin-top: calc(var(--spacing-unit) * 6);
}

.drawer {
  background-color: var(--color-drawer-bg);
  color: var(--color-drawer-text);
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: var(--shadow-3);
}

.drawer input,
.drawer textarea,
.drawer select {
  background-color: var(--color-drawer-bg);
  color: var(--color-drawer-text);
  border-color: var(--color-drawer-border);
  transition: border-color 0.25s ease-in-out;
}

.drawer input::-moz-placeholder,
.drawer textarea::-moz-placeholder,
.drawer select::-moz-placeholder {
  color: var(--color-drawer-input-inactive-text);
}

.drawer input:-ms-input-placeholder,
.drawer textarea:-ms-input-placeholder,
.drawer select:-ms-input-placeholder {
  color: var(--color-drawer-input-inactive-text);
}

input::-moz-placeholder,
textarea::-moz-placeholder,
select::-moz-placeholder {
  color: var(--color-drawer-input-inactive-text);
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder,
select:-ms-input-placeholder {
  color: var(--color-drawer-input-inactive-text);
}

.drawer input::placeholder,
.drawer textarea::placeholder,
.drawer select::placeholder {
  color: var(--color-drawer-input-inactive-text);
}

.drawer input:hover,
.drawer textarea:hover,
.drawer select:hover {
  opacity: 0.9;
}

.drawer input:focus,
.drawer textarea:focus,
.drawer select:focus {
  border-radius: 0;
  border-color: var(--color-drawer-border-darkest);
}

.drawer label {
  color: var(--color-drawer-input-inactive-text);
}

.drawer .meta {
  color: var(--color-drawer-text-meta);
}

.content-overlay__container {
  width: 100%;
  max-width: 3000px;
  max-width: var(--max-width);
  margin: 0 auto;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

@media (min-width: 38em) {
  .content-overlay__container {
    padding: calc(4px * 7);
    padding: var(--spacing-large);
  }
}

.content-overlay__inner {
  display: flex;
  flex-direction: column;
}

.content-overlay__heading {
  margin-top: 0;
  margin-bottom: 0;
}

.content-overlay__subheading {
  margin-top: 0;
  margin-bottom: 0;
}

.content-overlay * + * {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.content-overlay__button {
  margin-top: calc(4px * 7);
  margin-top: var(--spacing-large);
}

:root {
  --flyout-width: 335px;
  --checkbox-width: 10px;
}

.reviews-flyout {
  width: 335px;
  width: var(--flyout-width);
  position: fixed;
  top: 0;
  right: calc(335px * -1);
  right: calc(var(--flyout-width) * -1);
  bottom: 0;
  z-index: 400;
  z-index: var(--z-index-flyouts);
  display: flex;
  flex-direction: column;
  transition: right 0.3s ease;
}

.reviews-flyout.is-visible {
  right: 0;
}

.reviews-flyout__header {
  position: absolute;
  top: 0;
  right: 0;
  padding: calc(4px * 3) calc(4px * 5);
  padding: var(--spacing-small) var(--spacing-medium);
  font-size: var(--font-size-body-base);
  margin-top: 0;
  margin-bottom: 0.5em;
}

.reviews-flyout__header svg {
  width: 12px;
  height: 12px;
}

.pagination {
  --pagination-button-size: 40px;

  display: flex;
  justify-content: space-between;
}

@media (max-width: 38em) {
  .pagination {
    flex-direction: column-reverse;
  }
}

@media (max-width: 38em) {
  .pagination p {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }
}

.pagination__list {
  margin: calc(4px * -1);
  margin: calc(var(--spacing-unit) * -1);
}

.pagination__item {
  display: inline-flex;
  margin: 4px;
  margin: var(--spacing-unit);
}

.pagination__item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: var(--pagination-button-size);
  height: var(--pagination-button-size);
  border: 1px solid var(--color-border);
  border-radius: 100%;
  line-height: 1;
  transition: border-color 0.15s ease-in-out;
}

.pagination__item a:hover {
  border-color: var(--color-border-darker);
}

.pagination__item span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: var(--pagination-button-size);
  height: var(--pagination-button-size);
  border: 1px solid var(--color-accent);
  background-color: var(--color-accent);
  border-color: var(--color-accent);
  color: var(--color-bg);
  border-radius: 100%;
}

.pagination__ellip {
  display: inline-flex;
  align-items: center;
  margin: 4px;
  margin: var(--spacing-unit);
  color: var(--color-text);
}

.pagination__previous svg,
.pagination__next svg {
  width: 11px;
}

.pagination__previous {
  transform: rotate(180deg);
}

.placeholder-svg {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  border: 1px solid var(--color-border);
  fill: var(--color-border);
  background-color: var(--color-placeholder-bg);
}

.section--standard .placeholder-svg {
  border: 1px solid var(--color-contrast-border);
  fill: var(--color-contrast-border);
}

.placeholder-svg--small {
  width: 480px;
}

.placeholder-noblocks {
  padding: 40px;
  text-align: center;
}

.placeholder-background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.placeholder-background .icon {
  border: 0;
}

.carousel {
  position: relative;
}

@media (min-width: 38em) {
  .carousel:hover .carousel__navigation,
  .carousel:focus .carousel__navigation,
  .user-is-tabbing .carousel .carousel__navigation {
    transform: translateX(0);
  }
}

.carousel--columns-mobile-1 .carousel__slide {
  width: 100%;
}

.carousel--columns-mobile-2 .carousel__slide {
  width: 50%;
}

@media (min-width: 38em) and (max-width: 60em) {
  .carousel--columns-3.carousel--items-2 .carousel__navigation,
  .carousel--columns-4.carousel--items-2 .carousel__navigation {
    display: none;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .carousel--columns-3 .carousel__slide,
  .carousel--columns-4 .carousel__slide {
    width: 50%;
  }
}

@media (min-width: 60em) {
  .carousel--columns-2.carousel--items-2 .carousel__navigation {
    display: none;
  }
}

@media (min-width: 60em) {
  .carousel--columns-2 .carousel__slide {
    width: 50%;
  }
}

@media (min-width: 60em) {
  .carousel--columns-3.carousel--items-2 .carousel__navigation,
  .carousel--columns-3.carousel--items-3 .carousel__navigation {
    display: none;
  }
}

@media (min-width: 60em) {
  .carousel--columns-3 .carousel__slide {
    width: calc(100% / 3);
  }
}

@media (min-width: 60em) {
  .carousel--columns-4.carousel--items-2 .carousel__navigation,
  .carousel--columns-4.carousel--items-3 .carousel__navigation,
  .carousel--columns-4.carousel--items-4 .carousel__navigation {
    display: none;
  }
}

@media (min-width: 60em) {
  .carousel--columns-4 .carousel__slide {
    width: 25%;
  }
}

@media (min-width: 60em) {
  @media (min-width: 60em) {
    .carousel.carousel--columns-2.carousel--text-position-middle.carousel--items-2
      .carousel__navigation {
      display: block;
    }
  }
}

@media (min-width: 60em) {
  @media (min-width: 60em) {
    .carousel.carousel--columns-3.carousel--text-position-middle.carousel--items-3
      .carousel__navigation {
      display: block;
    }
  }
}

@media (min-width: 60em) {
  @media (min-width: 60em) {
    .carousel.carousel--columns-4.carousel--text-position-middle.carousel--items-4
      .carousel__navigation {
      display: block;
    }
  }
}

@media (min-width: 38em) {
  .carousel.carousel--text-position-top.carousel--columns-3 .carousel__slides,
  .carousel.carousel--text-position-top.carousel--columns-4 .carousel__slides {
    width: calc(100% + calc(4px * 5));
    width: calc(100% + var(--spacing-medium));
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .carousel.carousel--text-position-top.carousel--columns-3 .carousel__slide,
  .carousel.carousel--text-position-top.carousel--columns-4 .carousel__slide {
    width: 50%;
  }
}

@media (min-width: 38em) {
  .carousel.carousel--text-position-top.carousel--columns-2 .carousel__slides {
    width: calc(100% + calc(4px * 5));
    width: calc(100% + var(--spacing-medium));
  }
}

@media (min-width: 38em) {
  .carousel.carousel--text-position-top.carousel--columns-2 .carousel__slide {
    width: 50%;
  }
}

@media (min-width: 38em) {
  .carousel.carousel--text-position-top.carousel--columns-3 .carousel__slides {
    width: calc(100% + calc(4px * 5));
    width: calc(100% + var(--spacing-medium));
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-top.carousel--columns-3 .carousel__slide {
    width: calc(100% / 3);
  }
}

@media (min-width: 38em) {
  .carousel.carousel--text-position-top.carousel--columns-4 .carousel__slides {
    width: calc(100% + calc(4px * 5));
    width: calc(100% + var(--spacing-medium));
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-top.carousel--columns-4 .carousel__slide {
    width: 25%;
  }
}

@media (min-width: 38em) {
  .carousel.carousel--text-position-top.carousel--columns-3.carousel--columns-wrap-around
    .carousel__slides,
  .carousel.carousel--text-position-top.carousel--columns-4.carousel--columns-wrap-around
    .carousel__slides {
    width: calc(100% + (calc(4px * 5) + 3px));
    width: calc(100% + (var(--spacing-medium) + 3px));
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .carousel.carousel--text-position-top.carousel--columns-3.carousel--columns-wrap-around
    .carousel__slide,
  .carousel.carousel--text-position-top.carousel--columns-4.carousel--columns-wrap-around
    .carousel__slide {
    width: calc(50% - 1px);
  }
}

@media (min-width: 38em) {
  .carousel.carousel--text-position-top.carousel--columns-2.carousel--columns-wrap-around
    .carousel__slides {
    width: calc(100% + (calc(4px * 5) + 3px));
    width: calc(100% + (var(--spacing-medium) + 3px));
  }
}

@media (min-width: 38em) {
  .carousel.carousel--text-position-top.carousel--columns-2.carousel--columns-wrap-around
    .carousel__slide {
    width: calc(50% - 1px);
  }
}

@media (min-width: 38em) {
  .carousel.carousel--text-position-top.carousel--columns-3.carousel--columns-wrap-around
    .carousel__slides {
    width: calc(100% + (calc(4px * 5) + 4px));
    width: calc(100% + (var(--spacing-medium) + 4px));
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-top.carousel--columns-3.carousel--columns-wrap-around
    .carousel__slide {
    width: calc((100% / 3) - 1px);
  }
}

@media (min-width: 38em) {
  .carousel.carousel--text-position-top.carousel--columns-4.carousel--columns-wrap-around
    .carousel__slides {
    width: calc(100% + (calc(4px * 5) + 5px));
    width: calc(100% + (var(--spacing-medium) + 5px));
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-top.carousel--columns-4.carousel--columns-wrap-around
    .carousel__slide {
    width: calc(25% - 1px);
  }
}

@media (min-width: 38em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right {
    display: flex;
    flex-wrap: wrap;
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left
    .text-block,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .text-block {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-bottom: 0;
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left
    .text-block.out-of-view
    .text-block__overline,
  .carousel.carousel--text-position-middle.carousel--text-alignment-left
    .text-block.out-of-view
    .text-block__heading,
  .carousel.carousel--text-position-middle.carousel--text-alignment-left
    .text-block.out-of-view
    .text-block__subheading,
  .carousel.carousel--text-position-middle.carousel--text-alignment-left
    .text-block.out-of-view
    .text-block__button,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .text-block.out-of-view
    .text-block__overline,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .text-block.out-of-view
    .text-block__heading,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .text-block.out-of-view
    .text-block__subheading,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .text-block.out-of-view
    .text-block__button {
    opacity: 0;
    transition: opacity 0.45s;
  }
}

.carousel.carousel--text-position-middle.carousel--text-alignment-right
  .text-block {
  text-align: left;
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .text-block {
    padding-left: calc(calc(4px * 20) - calc(4px * 5));
    padding-left: calc(
      var(--spacing-extra-extra-large) - var(--spacing-medium)
    );
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .text-block
    .text-block__heading,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .text-block
    .text-block__subheading,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .text-block
    .text-block__button {
    margin-left: 0;
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .text-block
    .text-block__button {
    margin-right: auto;
  }
}

@media (max-width: 38em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .carousel__slides {
    margin-left: calc(calc(4px * 3) * -1);
    margin-left: calc(var(--spacing-small) * -1);
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .carousel__slides {
    margin-left: calc(calc(4px * 5) * -1);
    margin-left: calc(var(--spacing-medium) * -1);
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .carousel__slides {
    order: -1;
    transform: translateX(calc(calc(4px * 5) * -1));
    transform: translateX(calc(var(--spacing-medium) * -1));
  }
}

.carousel.carousel--text-position-middle.carousel--text-alignment-right
  .carousel__slide {
  padding-right: 0;
  padding-left: calc(4px * 3);
  padding-left: var(--spacing-small);
}

@media (min-width: 38em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .carousel__slide {
    padding-right: 0;
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-right
    .text-block__button {
    margin-left: auto;
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left
    .text-block {
    padding-right: calc(calc(4px * 20) - calc(4px * 5));
    padding-right: calc(
      var(--spacing-extra-extra-large) - var(--spacing-medium)
    );
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left
    .text-block__button {
    margin-right: auto;
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left
    .carousel__slides {
    transform: translateX(calc(4px * 5));
    transform: translateX(var(--spacing-medium));
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left.carousel--columns-2
    .carousel__slides {
    padding-left: 10px;
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left.carousel--columns-3
    .carousel__slides,
  .carousel.carousel--text-position-middle.carousel--text-alignment-left.carousel--columns-4
    .carousel__slides {
    padding-left: 6px;
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-right.carousel--columns-2
    .carousel__slides {
    padding-right: 10px;
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-right.carousel--columns-3
    .carousel__slides,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right.carousel--columns-4
    .carousel__slides {
    padding-right: 6px;
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left.carousel--columns-2
    .text-block,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right.carousel--columns-2
    .text-block {
    width: calc(50% - calc(4px * 5));
    width: calc(50% - var(--spacing-medium));
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left.carousel--columns-2
    .carousel__slides,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right.carousel--columns-2
    .carousel__slides {
    width: calc(50% + calc(4px * 5));
    width: calc(50% + var(--spacing-medium));
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left.carousel--columns-2
    .carousel__slide,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right.carousel--columns-2
    .carousel__slide {
    width: 100%;
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left.carousel--columns-3
    .text-block,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right.carousel--columns-3
    .text-block {
    width: calc((100% / 3) - calc(4px * 5));
    width: calc((100% / 3) - var(--spacing-medium));
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left.carousel--columns-3
    .carousel__slides,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right.carousel--columns-3
    .carousel__slides {
    width: calc((100% / 1.5) + calc(4px * 5));
    width: calc((100% / 1.5) + var(--spacing-medium));
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left.carousel--columns-3
    .carousel__slide,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right.carousel--columns-3
    .carousel__slide {
    width: 50%;
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left.carousel--columns-4
    .text-block,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right.carousel--columns-4
    .text-block {
    width: calc(25% - calc(4px * 5));
    width: calc(25% - var(--spacing-medium));
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left.carousel--columns-4
    .carousel__slides,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right.carousel--columns-4
    .carousel__slides {
    width: calc(75% + calc(4px * 5));
    width: calc(75% + var(--spacing-medium));
  }
}

@media (min-width: 60em) {
  .carousel.carousel--text-position-middle.carousel--text-alignment-left.carousel--columns-4
    .carousel__slide,
  .carousel.carousel--text-position-middle.carousel--text-alignment-right.carousel--columns-4
    .carousel__slide {
    width: calc(100% / 3);
  }
}

.carousel__slides {
  position: relative;
  display: flex;
  width: calc(100% + calc(4px * 3));
  width: calc(100% + var(--spacing-small));
}

@media (min-width: 38em) {
  .carousel__slides {
    width: calc(100% + calc(4px * 5));
    width: calc(100% + var(--spacing-medium));
  }
}

.carousel__slides .flickity-viewport {
  width: 100%;
  overflow: visible;
}

@media (min-width: 38em) {
  .carousel__slides .flickity-viewport {
    margin-bottom: 0;
  }
}

.user-is-tabbing .carousel__slides .flickity-viewport {
  overflow: hidden;
}

html:not(.no-js)
  .carousel__slides:not(.flickity-enabled)
  .carousel__slide:nth-child(n + 2) {
  display: none;
}

@media (min-width: 38em) {
  .carousel--columns-2
    html:not(.no-js)
    .carousel__slides:not(.flickity-enabled)
    .carousel__slide:nth-child(n + 3) {
    display: none;
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .carousel--columns-3
    html:not(.no-js)
    .carousel__slides:not(.flickity-enabled)
    .carousel__slide:nth-child(n + 3),
  .carousel--columns-4
    html:not(.no-js)
    .carousel__slides:not(.flickity-enabled)
    .carousel__slide:nth-child(n + 3) {
    display: none;
  }
}

@media (min-width: 60em) {
  .carousel--columns-3
    html:not(.no-js)
    .carousel__slides:not(.flickity-enabled)
    .carousel__slide:nth-child(n + 4) {
    display: none;
  }
}

@media (min-width: 60em) {
  .carousel--columns-4
    html:not(.no-js)
    .carousel__slides:not(.flickity-enabled)
    .carousel__slide:nth-child(n + 5) {
    display: none;
  }
}

.carousel__slide {
  width: 100%;
  padding-right: calc(4px * 3);
  padding-right: var(--spacing-small);
}

@media (min-width: 38em) {
  .carousel__slide {
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
  }
}

.user-is-tabbing .carousel__slide[aria-hidden="true"] {
  visibility: hidden;
}

.carousel__slide:focus {
  outline-offset: -1px;
}

.carousel__slide-image {
  position: relative;
  background-size: cover;
  display: block;
  overflow: hidden;
}

.carousel--aspect-ratio-square .carousel__slide-image .image,
.carousel--aspect-ratio-square .carousel__slide-image .placeholder-svg,
.carousel--aspect-ratio-portrait .carousel__slide-image .image,
.carousel--aspect-ratio-portrait .carousel__slide-image .placeholder-svg,
.carousel--aspect-ratio-landscape .carousel__slide-image .image,
.carousel--aspect-ratio-landscape .carousel__slide-image .placeholder-svg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.carousel--aspect-ratio-square .carousel__slide-image {
  padding-top: 100%;
}

.carousel--aspect-ratio-landscape .carousel__slide-image {
  padding-top: calc((2 / 3) * 100%);
}

.carousel--aspect-ratio-portrait .carousel__slide-image {
  padding-top: calc((3 / 2) * 100%);
}

.carousel__navigation {
  opacity: 1;
}

.carousel--items-1 .carousel__navigation {
  display: none;
}

.user-is-tabbing .carousel__navigation {
  display: block;
}

.carousel__navigation.hidden {
  opacity: 0;
}

.carousel__next-button,
.carousel__previous-button {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background: var(--color-bg);
  border: none;
  opacity: 1;
  color: var(--color-text);
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);
  box-shadow: var(--shadow-2);
  transition: transform 0.45s cubic-bezier(0.32, 0.24, 0.15, 1),
    opacity 0.15s cubic-bezier(0.32, 0.24, 0.15, 1);
  transition: transform 0.45s var(--cubic), opacity 0.15s var(--cubic);
}

@media (prefers-reduced-motion) {
  .carousel__next-button,
  .carousel__previous-button {
    transition-property: none;
  }
}

.carousel__next-button:disabled,
.carousel__previous-button:disabled {
  display: none !important;
}

.carousel__next-button svg,
.carousel__previous-button svg {
  width: 12px;
}

.section--contrast .carousel__next-button,
.section--contrast .carousel__previous-button {
  background-color: var(--color-contrast-bg);
  color: var(--color-contrast-text);
}

.carousel__next-button {
  right: 0;
}

@media (min-width: 38em) {
  .carousel__next-button {
    transform: translateX(calc(4px * 10));
    transform: translateX(var(--spacing-extra-large));
  }
}

.carousel__previous-button {
  left: 0;
}

@media (min-width: 38em) {
  .carousel__previous-button {
    transform: translateX(calc(calc(4px * 10) * -1));
    transform: translateX(calc(var(--spacing-extra-large) * -1));
  }
}

.carousel__previous-button svg {
  transform: rotate(180deg);
}

.shopify-payment-button {
  margin-top: calc(4px * 2);
  margin-top: calc(var(--spacing-unit) * 2);
}

.shopify-payment-button__button {
  font-family: inherit;
  text-transform: var(--button-text-transform);
  font-family: inherit !important;
  font-weight: var(--font-body-weight) !important;
  line-height: 1.5em;
  font-size: var(--font-size-button) !important;
  letter-spacing: var(--font-letter-spacing-button);
  border: none;
  border-radius: var(--button-border-radius) !important;
  overflow: hidden;
  height: 48px !important;
  height: var(--height-button) !important;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  transition: opacity 0.25s;
}

.shopify-payment-button__button:hover {
  opacity: 0.7 !important;
  transition: opacity 0.25s;
}

.shopify-payment-button__button--unbranded {
  text-transform: var(--button-text-transform);
  font-family: var(--font-body);
  font-weight: var(--font-body-weight);
  font-size: var(--font-size-button) !important;
  letter-spacing: var(--font-letter-spacing-button);
  text-align: center;
  height: 48px;
  height: var(--height-button);
  padding: 0 25px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  line-height: 1.5em;
  border-radius: var(--button-border-radius) !important;
  overflow: hidden;
  border: none;

  background-color: var(--color-accent) !important;
  color: var(--color-bg) !important;
}

.shopify-payment-button__button--unbranded:hover {
  background-color: var(--color-accent) !important;
}

.shopify-payment-button__button--branded {
}

.shopify-payment-button__more-options {
  font-family: var(--font-body), sans-serif;
}

.shopify-payment-button__button--hidden {
  display: none !important;
}

.shopify-payment-button__more-options {
  width: auto !important;
  padding: 0 !important;
  margin: calc(4px * 3) auto 0 !important;
  margin: var(--spacing-small) auto 0 !important;
  font-size: var(--font-size-button) !important;
  letter-spacing: var(--font-letter-spacing-button);
  line-height: 1.71em !important;
  line-height: var(--line-height-body) !important;
  font-family: var(--font-body), georgia !important;
  color: var(--color-accent);
  text-decoration: underline;
  text-transform: var(--button-text-transform);
}

.shopify-payment-button__more-options:hover {
  opacity: 0.5;
}

.share {
  color: var(--color-icon);
  color: red;
}

.share__icon {
  display: inline-block;
  width: 16px;
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
  transition: color 0.08s;
}

.share__icon svg {
  width: 100%;
}

.share__icon:hover {
  color: var(--color-meta);
  transition: color 0.08s;
}

.mega-navigation-wrapper {
  font-family: var(--font-body);
  line-height: 1.71em;
  line-height: var(--line-height-body);
  font-weight: var(--font-body-weight);
  font-size: var(--font-size-body-base);
  font-style: var(--font-body-style);
  letter-spacing: 0;
  text-transform: none;
  background-color: var(--color-navigation-bg);
}

.is-sticky .mega-navigation-wrapper {
  border-top: 1px solid var(--color-header-border);
}

.mega-navigation {
  display: grid;
  grid-column-gap: calc(4px * 5);
  -moz-column-gap: calc(4px * 5);
  column-gap: calc(4px * 5);
  grid-column-gap: var(--spacing-medium);
  -moz-column-gap: var(--spacing-medium);
  column-gap: var(--spacing-medium);
  grid-template-columns: repeat(6, 1fr);
  list-style-type: none;
  margin: 0;
  padding: calc(4px * 10);
  padding: var(--spacing-extra-large);
}

.mega-navigation__list-heading {
  color: var(--color-navigation-text-meta);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.mega-navigation__list-heading a {
  color: inherit !important;
}

.mega-navigation__featured {
  grid-column: 5 / span 2;
  grid-row: 1;
}

.mega-navigation__featured-heading {
  margin: 0;
  color: var(--color-navigation-text);
}

.mega-navigation__featured-link {
  color: var(--color-accent) !important;
  text-decoration: underline;
  transition: opacity 0.25s;
}

.mega-navigation__featured-link:hover {
  opacity: 0;
  transition: opacity 0.25s;
}

.mega-navigation .nav__item {
  color: var(--color-navigation-text);
}

.mega-navigation__list-container {
  grid-column: 1 / span 4;
}

.mega-navigation__list-container.full-width {
  grid-column: 1 / span 6;
}

.mega-navigation__list-container.full-width .mega-navigation__list-parent {
  grid-template-columns: repeat(6, 1fr);
}

.mega-navigation__list-parent {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-column-gap: calc(4px * 5);
  -moz-column-gap: calc(4px * 5);
  column-gap: calc(4px * 5);
  grid-column-gap: var(--spacing-medium);
  -moz-column-gap: var(--spacing-medium);
  column-gap: var(--spacing-medium);
  grid-row-gap: calc(4px * 10);
  row-gap: calc(4px * 10);
  grid-row-gap: var(--spacing-extra-large);
  row-gap: var(--spacing-extra-large);
  padding: 0;
  list-style-type: none;
}

.mega-navigation__list .nav__link {
  line-height: 2.29em;
}

.mega-navigation__feature-text {
  padding: calc(4px * 5) calc(4px * 10);
  padding: var(--spacing-medium) var(--spacing-extra-large);
  background-color: var(--color-drawer-background-meta);
  color: var(--color-navigation-text);
}

.mega-navigation__feature-text p {
  white-space: pre-wrap;
}

.mega-navigation__feature-text p:first-of-type {
  margin-top: 0;
}

.mega-navigation__feature-text p:last-of-type {
  margin-bottom: 0;
}

.mega-navigation__feature-text a {
  text-decoration: underline;
  color: var(--color-accent) !important;
}

.mega-navigation__feature-text a:hover {
  color: var(--color-text);
}

.quick-cart__indicator {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 100%;
  border: 1px solid var(--color-header-border);
}

.quick-cart__indicator:hover {
  border-color: var(--color-header-border-darken);
}

.header--transparent .quick-cart__indicator:hover {
  background-color: transparent;
}

.quick-cart__icon-indicator {
  z-index: 10;
  width: 16px;
  height: 16px;
  background-color: var(--color-header-text);
  color: var(--color-header-bg);
  border-radius: 16px;
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 9px;
  right: -1px;
  font-size: 9px;
  font-family: Arial, Helvetica, sans-serif;
  letter-spacing: 0;
  line-height: 1;
  pointer-events: none;
  box-shadow: 0 0 0 2px var(--color-header-bg);
}

.header-transparent:not(.header-stuck) .quick-cart__icon-indicator {
  box-shadow: 0 0 0 2px transparent;
}

.quick-cart__icon-indicator.hidden {
  display: none;
}

.quick-cart__trigger {
  position: relative;
  height: 44px;
  height: var(--height-nav-button);
  display: flex;
  align-items: center;
}

.quick-cart__indicator-inner {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
  background-color: transparent;
  transition: background-color 0.25s;
  line-height: 0;
}

.quick-cart__popup img {
  display: block;
}

.quick-cart__items {
  padding: calc(4px * 5) calc(4px * 5) 0;
  padding: var(--spacing-medium) var(--spacing-medium) 0;
  flex-grow: 1;
  overflow-y: scroll;
  overflow-x: hidden;
}

.quick-cart__item-discounts {
  margin: 4px 0 0 0;
  margin: var(--spacing-extra-small) 0 0 0;
  padding: 0;
  font-size: var(--font-size-body-extra-small);
  color: var(--color-drawer-text-meta);
  text-transform: uppercase;
  list-style: none;
}

.quick-cart__item-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.quick-cart__quantity {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100px;
  margin-top: calc(4px * 2);
  margin-top: calc(var(--spacing-unit) * 2);
  border: 1px solid var(--color-drawer-border);
}

.quick-cart__quantity-button {
  background-color: transparent;
  width: 33px;
  height: 28px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  color: var(--color-drawer-icon);
  transition: color 0.15s ease-in-out;
  border: 0;
}

.quick-cart__quantity-button:hover,
.quick-cart__quantity-button:focus {
  color: var(--color-drawer-icon-darker);
}

.quick-cart__item-total {
  width: 32px;
  height: 21px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.quick-cart__footer {
  border-top: 1px solid var(--color-drawer-border);
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  display: none;
}

.quick-cart__footer.active {
  display: block;
}

.quick-cart__discounts {
  padding: 0;
  font-size: var(--font-size-body-extra-small);
  color: var(--color-drawer-text-meta);
  text-transform: uppercase;
  display: none;
}

.quick-cart__discounts.active {
  display: block;
}

.quick-cart__empty-state {
  color: var(--color-drawer-text);
  margin-top: 0;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

@-webkit-keyframes fadeOutItem {
  from {
    background-color: var(--color-drawer-bg-darker);
  }

  to {
    background-color: transparent;
  }
}

@keyframes fadeOutItem {
  from {
    background-color: var(--color-drawer-bg-darker);
  }

  to {
    background-color: transparent;
  }
}

.cart__item {
  width: 100%;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.cart__item--highlight {
  -webkit-animation: fadeOutItem 2s linear;
  animation: fadeOutItem 2s linear;
  margin-left: calc((calc(4px * 5) / 2) * -1);
  margin-left: calc((var(--spacing-medium) / 2) * -1);
  margin-top: calc((calc(4px * 5) / 2) * -1);
  margin-top: calc((var(--spacing-medium) / 2) * -1);
  margin-bottom: calc(calc(4px * 5) / 2);
  margin-bottom: calc(var(--spacing-medium) / 2);
  width: calc(100% + calc(4px * 5));
  width: calc(100% + var(--spacing-medium));
  padding: calc(calc(4px * 5) / 2);
  padding: calc(var(--spacing-medium) / 2);
}

.cart__item-content {
  display: flex;
}

.quick-cart__tabs {
  display: flex;
  align-items: center;
  margin: 0;
  padding: calc(calc(4px * 5) / 2);
  padding: calc(var(--spacing-medium) / 2);
  border-bottom: 1px solid var(--color-drawer-border);
  position: relative;
}

.quick-cart__tab-item {
  display: inline-block;
  padding: calc(calc(4px * 5) / 2);
  padding: calc(var(--spacing-medium) / 2);
  color: var(--color-drawer-text-meta);
}

.quick-cart__tab-item.quick-cart__tab-item--close {
  margin-left: auto;
  padding: 0;
}

.quick-cart__tab-item a {
  color: inherit;
  transition: color 0.25s ease-in-out;
}

.quick-cart__tab-item a:hover {
  color: var(--color-drawer-text);
}

.quick-cart__tab-item a.active {
  color: var(--color-drawer-text);
}

.quick-cart__close-button {
  display: flex;
  width: 100%;
  padding: calc(calc(4px * 5) / 2);
  padding: calc(var(--spacing-medium) / 2);
  border: 0;
  background: transparent;
}

.quick-cart__close-button svg {
  margin: auto;
  color: var(--color-drawer-text);
  transition: opacity 0.25s ease-in-out;
}

.quick-cart__close-button svg:hover {
  opacity: 0.5;
}

.quick-cart__image {
  width: 90px;
  flex-shrink: 0;
  overflow: hidden;
}

.quick-cart__image .placeholder {
  padding-top: 100%;
}

.quick-cart__image img {
  width: 90px;
  -o-object-fit: cover;
  object-fit: cover;
}

.quick-cart__product-details {
  flex-grow: 1;
  margin-left: calc(4px * 5);
  margin-left: var(--spacing-medium);
  display: flex;
  flex-direction: column;
}

.quick-cart__product-details a {
  color: var(--color-drawer-text);
}

.quick-cart__product-details .unit-price__price {
  margin-left: 0;
}

.quick-cart__product-price-value {
  margin-right: calc(4px * 2);
  margin-right: calc(var(--spacing-unit) * 2);
}

.quick-cart__checkout-button {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.search {
  --search-input-height: 50px;

  display: none;
  z-index: 11;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.is-active .search {
  display: block;
}

.search__container {
  margin-top: var(--testing);
  position: absolute;
  width: 100%;
  left: 50%;
  top: calc(50% - (var(--search-input-height) / 2));
  transform: translateX(-50%);

  max-width: 775px;

  max-width: var(--max-width-medium);
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
}

@media (min-width: 38em) {
  .search__container {
    padding-left: calc(4px * 7);
    padding-left: var(--spacing-large);
    padding-right: calc(4px * 7);
    padding-right: var(--spacing-large);
  }
}

.search__input-container {
  position: relative;
}

.search__input-actions {
  position: absolute;
  top: 10px;
  right: 10px;
  height: 30px;
  display: flex;
  align-items: center;
}

.search__input {
  border-radius: 1px;
  border: none;
  background-color: var(--color-navigation-bg);
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: var(--shadow-3);
  font-family: inherit;
  line-height: 1.5em;
  border-bottom: 1px solid transparent;
  color: var(--color-navigation-text);

  width: 100%;
  height: var(--search-input-height);
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
}

.search__input:focus {
  border-radius: 1px;
}

.search__input {
}

.search__input[type="search"]::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}

.search__input[type="search"]::-ms-reveal {
  display: none;
  width: 0;
  height: 0;
}

.search__input {
}

.search__input[type="search"]::-webkit-search-decoration,
.search__input[type="search"]::-webkit-search-cancel-button,
.search__input[type="search"]::-webkit-search-results-button,
.search__input[type="search"]::-webkit-search-results-decoration {
  display: none;
}

.has-suggestions .search__input {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  box-shadow: none;
}

.search__input-clear {
  display: none;
  margin-right: 4px;
  margin-right: var(--spacing-unit);
  margin-bottom: 2px;
}

.has-active-query .search__input-clear {
  display: flex;
}

.search__input-clear:hover {
  opacity: 0.5;
}

.search__input-clear .icon {
  width: 14px;
  height: 14px;
  display: flex;
}

.search__submit-button {
  background-color: transparent;
  padding: calc(4px * 3);
  padding: var(--spacing-small);
  border: 0;
  color: var(--color-navigation-text);
}

.search__submit-button svg {
  width: 11px;
}

.search__submit-button:hover {
  opacity: 0.5;
}

.search__input-close {
  position: absolute;
  right: calc((calc(4px * 7) * 2) * -1);
  right: calc((var(--spacing-large) * 2) * -1);
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(4px * 7);
  width: var(--spacing-large);
  height: calc(4px * 7);
  height: var(--spacing-large);
  color: var(--color-navigation-text);
  background-color: var(--color-navigation-bg);
  border-radius: 100%;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: var(--shadow-3);
}

.search__input-close .icon {
  width: 14px;
  height: 14px;
  display: flex;
}

.search__input-close:hover svg {
  opacity: 0.5;
}

.search__input-close:focus {
  color: var(--color-navigation-text);
}

.search__results {
  --qs-background-hover: var(--color-input-bg-hover);

  border-radius: 1px;
  border: none;
  background-color: var(--color-navigation-bg);
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: var(--shadow-3);
  font-family: inherit;
  line-height: 1.5em;
}

.search__results::-moz-placeholder {
  color: var(--color-navigation-text);
}

.search__results:-ms-input-placeholder {
  color: var(--color-navigation-text);
}

.search__results::placeholder {
  color: var(--color-navigation-text);
}

.search__results {
  color: var(--color-navigation-text);
  border-top-right-radius: 0;
  border-top-left-radius: 0;
  overflow: auto;
  max-height: calc(100vh - var(--header-offset-height));
}

.has-suggestions .search__results {
  display: block;
}

.search__overlay {
  position: fixed;
  background-color: var(--color-bg-overlay);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;

  visibility: hidden;
  opacity: 0;
  z-index: 8;
  transition: opacity 0.3s ease;
}

.is-active .search__overlay {
  opacity: 1;
  visibility: visible;
}

.quick-search__container {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.quick-search__header {
  padding: calc(calc(4px * 5) / 2) calc(4px * 5);
  padding: calc(var(--spacing-medium) / 2) var(--spacing-medium);
}

.quick-search__header:first-of-type {
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
}

.quick-search__result {
  display: block;
  padding: calc(calc(4px * 5) / 2) calc(4px * 5);
  padding: calc(var(--spacing-medium) / 2) var(--spacing-medium);
  display: flex;
  align-items: center;
  border: 1px solid transparent;
  background-color: transparent;
  transition: background-color 0.25s;
}

.quick-search__result:focus {
  outline: none;
  border: 1px dotted var(--color-drawer-text);
}

.quick-search__result:hover {
  background-color: var(--color-navigation-bg-darker);
}

.quick-search__result.quick-search__result--query {
  padding-top: 4px;
  padding-top: var(--spacing-extra-small);
  padding-bottom: 4px;
  padding-bottom: var(--spacing-extra-small);
}

.quick-search__result-image,
.quick-search__result-placeholder-image {
  width: 60px;
  height: 60px;
  min-width: 60px;
  min-height: 60px;
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
}

.quick-search__result-image {
  position: relative;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-around;
  overflow: hidden;
  background-color: var(--color-contrast-bg);
}

.quick-search__result-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

.quick-search__result-image svg {
  opacity: 0.8;
}

.quick-search__result-placeholder-image {
  border: 1px solid var(--color-border);
}

.quick-search__result-details {
  width: 100%;
  overflow: hidden;
}

.quick-search__result-query {
  margin: 0;
}

.quick-search__result-query mark {
  background-color: transparent;
  color: inherit;
}

.quick-search__result-query span {
  font-weight: var(--font-body-bold-weight);
}

.quick-search__result-heading {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 80%;
}

.quick-search__result-subheading {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 80%;
  opacity: 0.5;
}

.quick-search__view-all {
  display: flex;
  border-top: 1px solid var(--color-border);
  margin-top: calc(calc(4px * 5) / 2);
  margin-top: calc(var(--spacing-medium) / 2);
  padding: calc(4px * 3) calc(4px * 5);
  padding: var(--spacing-small) var(--spacing-medium);
}

.quick-search__view-all > button {
  text-decoration: underline;
  outline: none;
  background-color: transparent;
  border: none;
  color: inherit;
  padding: 0;
}

.quick-search__view-all > button:focus {
  color: var(--color-text-link);
}

.quick-search__no-results {
  padding: calc(4px * 3) calc(4px * 4);
  padding: var(--spacing-small) calc(var(--spacing-unit) * 4);
}

.header-overlay {
  visibility: hidden;
  z-index: 299;
  z-index: var(--z-index-header-overlay);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  background-color: var(--color-bg-overlay);
  transition: opacity 500ms cubic-bezier(0.33, 0, 0, 1), visibility 0s 500ms;
  transition: opacity var(--duration-normal) var(--easing),
    visibility 0s var(--duration-normal);
}

.header-overlay.visible {
  visibility: visible;
  opacity: 1;
  transition: opacity 500ms cubic-bezier(0.33, 0, 0, 1), visibility 0s 0s;
  transition: opacity var(--duration-normal) var(--easing), visibility 0s 0s;
}

.drawer-overlay {
  display: none;
}

.drawer-overlay.is-active {
  display: block;
}

.drawer-overlay__inner {
  z-index: 301;
  z-index: var(--z-index-drawer-overlay);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  background-color: var(--color-bg-overlay);
  transition: opacity 0.15s ease-in-out;
}

.drawer-overlay__inner.is-visible {
  opacity: 1;
  transition: opacity 0.25s ease-in-out;
}

:root {
  --flyout-width: 335px;
  --checkbox-width: 10px;
}

.cart-flyout {
  width: 335px;
  width: var(--flyout-width);
  position: fixed;
  top: 0;
  right: calc(335px * -1);
  right: calc(var(--flyout-width) * -1);
  bottom: 0;
  z-index: 400;
  z-index: var(--z-index-flyouts);
  display: flex;
  transition: transform 300ms cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-fast) var(--easing);
}

.cart-flyout.is-visible {
  transform: translateX(-100%);
}

.cart-flyout__inner {
  width: 100%;
  display: none;
}

.is-visible .cart-flyout__inner {
  display: flex;
  flex-direction: column;
}

.lightbox {
  --image-size: 80px;
  --button-size: 40px;

  position: fixed;
  background-color: var(--color-bg);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 600;
  z-index: var(--z-index-lightbox);
  max-width: 100vw;
  max-height: 100vh;

  visibility: hidden;
  opacity: 0;
  transition: opacity 0.3s;
}

@media (min-width: 38em) {
  .lightbox {
    --button-size: 48px;
    --image-size: 100px;
  }
}

.lightbox.active {
  visibility: visible;
}

.lightbox.visible {
  opacity: 1;
}

.lightbox__image-nav {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  display: flex;
  margin: calc(4px * 5);
  margin: var(--spacing-medium);
}

.lightbox__image-nav-inner {
  display: flex;
  margin: 0 auto;
  overflow-x: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.lightbox__image-nav-inner::-webkit-scrollbar {
  display: none;
}

.lightbox__image-nav-image {
  display: block;
  flex-shrink: 0;
  width: calc(100vw / 6);
  height: calc(100vw / 6);
  padding-right: calc(4px * 3);
  padding-right: var(--spacing-small);
  padding-left: calc(4px * 3);
  padding-left: var(--spacing-small);
  pointer-events: all;
  border: 0;
  background-color: transparent;
}

@media (min-width: 38em) {
  .lightbox__image-nav-image {
    width: var(--image-size);
    height: var(--image-size);
  }
}

.lightbox__image-nav-image.active .image {
  border: 1px solid hsl(0, 100%, 0%);
}

.lightbox__image-nav-image .image {
  padding-top: 100%;
  border: 1px solid hsla(0, 100%, 0%, 0.15);
}

.lightbox__nav {
  position: absolute;
  bottom: calc(4px * 5);
  bottom: var(--spacing-medium);
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  display: flex;
}

.lightbox__button {
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
  width: var(--button-size);
  height: var(--button-size);
  margin: 4px;
  margin: var(--spacing-extra-small);
  background: var(--color-bg);
  border: 0;
  border-radius: 50%;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);
  box-shadow: var(--shadow-2);
  opacity: 1;
  color: var(--color-text);
  transition: transform 0.2s ease;
}

.lightbox__button:disabled {
  opacity: 0.3;
}

.lightbox__button.hidden {
  display: none;
}

.lightbox__button .icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.lightbox__button:hover {
  transform: scale(1.1);
}

.lightbox__close {
  position: fixed;
  top: calc(4px * 5);
  top: var(--spacing-medium);
  right: calc(4px * 5);
  right: var(--spacing-medium);
  z-index: 1;
  border: 1px solid transparent;
}

.lightbox__close:focus {
  border-color: var(--color-text-body);
}

.lightbox__images-wrapper {
  display: flex;
  align-items: center;
  height: 100vh;
  width: 100vw;
  overflow: auto;
}

.lightbox__images {
  width: 100vw;
  height: 100vh;
  margin-top: auto;
  margin-bottom: auto;
}

.lightbox__images .flickity-viewport {
  transition: height 0.3s ease-in-out;
  height: 100vh;
  max-width: 100vw;
}

.lightbox__image {
  height: 100%;
  width: 100%;
  max-height: 100vh;
  max-width: 100vw;
  margin: 0 auto;
  transition: transform 0.35s ease;
  cursor: zoom-in;
}

.lightbox__image.zoom {
  cursor: zoom-out;
}

.lightbox__image .image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  max-height: 100vh;
  max-width: 100vw;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: auto;
}

.lightbox__image .image__img {
  width: auto;
  max-width: 100%;
  position: relative;
  padding: calc(4px * 10);
  padding: var(--spacing-extra-large);
  -o-object-fit: contain;
  object-fit: contain;
}

@media (max-width: 38em) {
  .lightbox__image .image__img {
    width: 100vw;
    height: auto;
    padding: 0;
  }
}

.modal {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 400;
  z-index: var(--z-index-flyouts);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--section-vertical-spacing) calc(4px * 5);
  padding: var(--section-vertical-spacing) var(--spacing-medium);
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.25s ease-in-out;
}

@media (min-width: 38em) {
  .modal {
    padding-top: var(--section-vertical-spacing-desktop);
    padding-bottom: var(--section-vertical-spacing-desktop);
  }
}

@media (min-width: 38em) and (max-width: 60em) {
  .modal {
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large);
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large);
  }
}

@media (min-width: 60em) {
  .modal {
    padding-right: calc(4px * 20);
    padding-right: var(--spacing-extra-extra-large);
    padding-left: calc(4px * 20);
    padding-left: var(--spacing-extra-extra-large);
  }
}

.modal.is-visible {
  opacity: 1;
  visibility: visible;
}

.modal.is-visible .modal-content {
  display: block;
}

.modal__close-icon {
  position: absolute;
  right: calc(4px * 5);
  right: var(--spacing-medium);
  top: calc(4px * 5);
  top: var(--spacing-medium);
}

.modal__inner {
  position: relative;
  width: calc(500px + (calc(4px * 5) * 2));
  width: calc(var(--max-width-small) + (var(--spacing-medium) * 2));
  max-height: calc(100vh - (var(--section-vertical-spacing) * 2));
  margin: auto;
  background-color: var(--color-bg);
  pointer-events: all;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: var(--shadow-3);
  overflow: auto;
  opacity: 0;
  transform: translateY(50px);
  transition: transform 0.25s ease-in-out, opacity 0.15s ease-in-out;
}

@media (min-width: 38em) {
  .modal__inner {
    width: calc(500px + (calc(4px * 10) * 2));
    width: calc(var(--max-width-small) + (var(--spacing-extra-large) * 2));
    padding: calc(4px * 10);
    padding: var(--spacing-extra-large);
    max-height: calc(100vh - (var(--section-vertical-spacing-desktop) * 2));
  }
}

.is-visible .modal__inner {
  opacity: 1;
  transform: translateY(0);
}

.unit-price {
  display: none;
  color: var(--color-text-meta);
}

.unit-price--available {
  display: inline-block;
}

.unit-price__price {
  margin-left: calc(4px * 2);
  margin-left: calc(var(--spacing-unit) * 2);
  display: none;
}

.unit-price--available .unit-price__price {
  display: block;
}

:root {
  --flyout-width: 335px;
  --availability-image-width: 80px;
}

.store-availability-flyout {
  width: 335px;
  width: var(--flyout-width);
  position: fixed;
  top: 0;
  right: calc(335px * -1);
  right: calc(var(--flyout-width) * -1);
  bottom: 0;
  z-index: 400;
  z-index: var(--z-index-flyouts);
  display: flex;
  transition: transform 300ms cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-fast) var(--easing);
}

.store-availability-flyout.is-visible {
  transform: translateX(-100%);
}

.store-availability-flyout .unit-price__price {
  margin-left: 0;
  color: unset;
}

.store-availability-flyout__header a {
  position: absolute;
  right: calc(4px * 5);
  right: var(--spacing-medium);
}

.store-availability-flyout__inner {
  width: 100%;
  display: none;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  overflow: auto;
}

.is-visible .store-availability-flyout__inner {
  display: flex;
  flex-direction: column;
}

.store-availability-flyout__close {
  background-color: transparent;
  border: 0;
}

.store-availability-flyout__header {
  display: flex;
  justify-content: space-between;
}

.store-availability-flyout__content .store-availability__store-list-wrapper {
  display: block;
}

.store-availability-flyout__product-card {
  display: flex;
  margin-top: calc(4px * 4);
  margin-top: calc(var(--spacing-unit) * 4);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.store-availability-flyout__product-card-image {
  width: 80px;
  width: var(--availability-image-width);
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
  flex-shrink: 0;
}

.store-availability-flyout__product-card-image img {
  display: block;
  width: 100%;
}

.store-availability-flyout__product-price {
  margin-right: calc(4px * 2);
  margin-right: calc(var(--spacing-unit) * 2);
}

.store-availability-flyout__product-price-wrapper,
.store-availability-flyout__product-card-options {
  color: var(--color-drawer-text-meta);
}

.collection-sidebar {
  --height-item: 32px;
}

.collection-sidebar__group {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.collection-sidebar__group ul {
  margin: 0 0 0 calc(calc(4px * 3) * -1);
  margin: 0 0 0 calc(var(--spacing-small) * -1);
  padding: 0;
}

.collection-sidebar__group + .collection-sidebar__group {
  border-top: 1px solid var(--color-border);
  padding-top: calc(4px * 3);
  padding-top: var(--spacing-small);
}

.collection-sidebar__heading {
  height: var(--height-item);
  padding: 0 10px 0 calc(4px * 3);
  padding: 0 10px 0 var(--spacing-small);
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  border-radius: 2px;
  transition: background-color 0.3s, color 0.3s;
  margin: 0 0 0 calc(calc(4px * 3) * -1);
  margin: 0 0 0 calc(var(--spacing-small) * -1);
  color: var(--color-input-text);
}

.collection-sidebar__heading:hover,
.collection-sidebar__heading:hover:focus {
  color: var(--color-text);
  background-color: var(--color-background-meta);
  transition: background-color 0.3s, color 0.3s;
}

.collection-sidebar__heading:hover svg,
.collection-sidebar__heading:hover:focus svg {
  opacity: 0.5;
}

.collection-sidebar__heading:focus {
  color: var(--color-input-text);
}

.collection-sidebar__heading > * {
  pointer-events: none;
}

.collection-sidebar__heading svg {
  opacity: 0;
  transform: rotate(0deg);
  transition: transform 0.3s, opacity 0.3s;
}

.collection-sidebar__heading.closed svg {
  transform: rotate(-90deg);
  transition: transform 0.3s, opacity 0.3s;
}

.collection-sidebar__heading {
}

.filter-drawer__list.filter-drawer__list--chip,
.filter-drawer__list.filter-drawer__list--swatch {
  display: flex;
  flex-wrap: wrap;
  grid-gap: calc(4px * 3) 4px;
  gap: calc(4px * 3) 4px;
  grid-gap: var(--spacing-small) var(--spacing-unit);
  gap: var(--spacing-small) var(--spacing-unit);
  padding: calc(4px * 2) calc(4px * 3);
  padding: calc(var(--spacing-unit) * 2) var(--spacing-small);
}

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

.filter-item__input:checked + .filter-item__checkbox,
.filter-item__input:checked + .filter-item__radio {
  transition: transform 0.2s, background-color 0.3s;
  background-color: var(--color-text);
  border: 1px solid var(--color-text);
}

.filter-item__input:checked + .filter-item__checkbox svg,
.filter-item__input:checked + .filter-item__checkbox .indicator,
.filter-item__input:checked + .filter-item__radio svg,
.filter-item__input:checked + .filter-item__radio .indicator {
  transition: opacity 0.3s;
  opacity: 1;
}

.filter-item__input:checked + .filter-item__chip {
  border-color: var(--color-text);
}

.filter-item__input:checked + .filter-item__swatch {
  box-shadow: 0 0 0 1px var(--color-text);
}

.filter-item__input:focus + .filter-item__checkbox,
.filter-item__input:focus + .filter-item__radio,
.filter-item__input:focus + .filter-item__chip,
.filter-item__input:focus + .filter-item__swatch {
  outline: 2px solid var(--color-border-darkest);
}

.filter-item__content {
  display: flex;
  align-items: center;
  height: var(--height-item);
  padding: 0 calc(4px * 3);
  padding: 0 var(--spacing-small);
  border-radius: 2px;
  transition: background-color 0.3s;
}

.filter-item__content.filter-item__content--disabled {
  pointer-events: none;
  opacity: 0.6;
}

.filter-item__content:hover {
  background-color: var(--color-background-meta);
  transition: background-color 0.3s;
}

.filter-item__content:hover .filter-item__checkbox,
.filter-item__content:hover .filter-item__radio {
  border-color: var(--color-border-darkest);
}

.filter-item__content > * {
  pointer-events: none;
}

.filter-item__content.filter-item__content--chip,
.filter-item__content.filter-item__content--swatch {
  height: auto;
  padding: 0;
  border-radius: 0;
}

.filter-item__content.filter-item__content--chip:hover,
.filter-item__content.filter-item__content--swatch:hover {
  background-color: transparent;
}

.filter-item__content.filter-item__content--chip > *,
.filter-item__content.filter-item__content--swatch > * {
  pointer-events: all;
}

.filter-item__checkbox,
.filter-item__radio {
  width: 16px;
  height: 16px;
  border: 1px solid var(--color-border-medium);
  border-radius: 2px;
  color: var(--color-bg);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-around;
  transition: transform 0.2s, color 0.3s, border-color 0.3s;
}

.filter-item__checkbox svg,
.filter-item__radio svg {
  opacity: 0;
}

.filter-item__checkbox .icon,
.filter-item__radio .icon {
  width: 12px;
  height: 12px;
  opacity: 0;
}

.filter-item__radio {
  border-radius: 100%;
}

.filter-item__radio .indicator {
  width: 6px;
  height: 6px;
  background-color: var(--color-bg);
  border-radius: 100%;
  opacity: 0;
}

.filter-item__chip {
  position: relative;
  border: 1px solid var(--color-border-medium);
  border-radius: 2px;
  padding: calc(4px * 2) calc(4px * 3);
  padding: calc(var(--spacing-unit) * 2) calc(var(--spacing-unit) * 3);
  background-color: transparent;
  font-size: var(--font-size-body-base);
  letter-spacing: var(--font-letter-spacing-button);
  transition: border-color 0.15s ease-in-out;
  color: var(--color-text);
}

.filter-item__chip label {
  color: var(--color-text);
}

.filter-item__chip:hover {
  border-color: var(--color-border-darkest);
}

.filter-item__chip.selected {
  border-color: var(--color-text);
}

.filter-item__swatch {
  width: 40px;
  height: 40px;
  border-radius: 100%;
  margin-right: 2px;
  box-shadow: 0 0 0 1px var(--color-border-medium);
  border: 4px solid var(--color-bg);
  cursor: pointer;
  background-color: var(--color-bg);
  background-position: center !important;
  background-size: cover !important;
  transition: box-shadow 0.15s ease-in-out;
}

.filter-item__swatch:hover {
  box-shadow: 0 0 0 1px var(--color-border-darkest);
}

.filter-item__label,
.filter-item__count {
  display: block;
  padding-left: calc(4px * 3);
  padding-left: var(--spacing-small);
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  color: var(--color-text);
}

.filter-item__count {
  margin-left: auto;
  color: var(--color-input-text);
}

.filter-drawer__price-range {
  padding-bottom: calc(4px * 2);
  padding-bottom: calc(var(--spacing-unit) * 2);
}

.collection-flyout__content .filter-drawer__price-range {
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
}

.filter-drawer__price-range-title {
  margin-top: 0;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.filter-drawer__price-range-input-wrapper {
  display: flex;
  justify-content: space-between;
  position: relative;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.filter-drawer__price-range-input-wrapper .input {
  text-align: right;
  min-width: 100px;
  height: 40px;
  height: var(--collection-element-height);
  padding: calc(4px * 3) calc(4px * 3);
  padding: var(--spacing-small) var(--spacing-small);
  border-color: var(--color-border-medium);
}

.filter-drawer__price-range-input-wrapper .input:hover {
  border-color: var(--color-border-darkest);
}

.filter-drawer__price-range-input {
  position: relative;
}

.filter-drawer__price-range-separator {
  display: flex;
  align-items: center;
}

.filter-drawer__price-range-currency {
  position: absolute;
  top: 50%;
  left: 12px;
  transform: translateY(-50%);
}

.loader {
  width: 100%;
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: space-around;
}

@media (min-width: 38em) {
  .loader {
    height: 400px;
  }
}

.loader__wrap {
  width: 100%;
  max-width: 100px;
  height: 2px;
  overflow: hidden;
}

.loader__bar {
  width: 100%;
  height: 2px;
  -webkit-animation: loaderLine 1.4s ease-in-out infinite;
  animation: loaderLine 1.4s ease-in-out infinite;
  background-color: var(--color-text);
}

@-webkit-keyframes loaderLine {
  0% {
    transform: translateX(-150%);
  }

  45% {
    transform: translateX(0);
  }

  55% {
    transform: translateX(0);
  }

  to {
    transform: translateX(150%);
  }
}

@keyframes loaderLine {
  0% {
    transform: translateX(-150%);
  }

  45% {
    transform: translateX(0);
  }

  55% {
    transform: translateX(0);
  }

  to {
    transform: translateX(150%);
  }
}


/* ==========================================================================
   COLLECTION FILTER STYLE - MATERIAL 3 ADAPTIVE
   Author: Kacper Stankiewicz
   Description: Fully adaptive, scrollable, and elegant filter pill buttons
   with Material 3 hover states, transparency, and smooth UX on all devices.
========================================================================== */

/* =========================
   Section Container Styling
========================= */
.collection-top-bar {
  width: 100%;
  overflow: hidden;
}

.collection--has-filters .collection-top-bar {
  padding-bottom: var(--spacing-medium);
  margin-top: calc(var(--spacing-unit) * -2);
}

@media (min-width: 60em) {
  .collection--has-sidebar .collection-top-bar {
    padding-bottom: var(--spacing-medium);
    margin-top: 0;
  }
}

/* =========================
   Filters Wrapper Styling
========================= */
.collection-top-bar__filters {
  display: none !important;
  display: flex;
  gap: 8px;
  justify-content: center;
  padding: 16px 0;
  flex-wrap: wrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none; /* Firefox */
}

/* Hide scrollbar on Webkit */
.collection-top-bar__filters::-webkit-scrollbar {
  display: none;
}

/* =========================
   Filter Pills - Default
========================= */
.collection-top-bar__filters > a {
  border: 1px solid rgba(61, 26, 41, 0.4); /* Subtle border with transparency */
  color: #3D1A29;
  background-color: #FFFFFF;
  border-radius: 100px;
  padding: 8px 16px;
  font-weight: 500;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  min-width: 50px;
  max-width: 50px;
  flex-shrink: 0;
  transition:
    background-color 0.2s ease,
    color 0.2s ease,
    border-color 0.2s ease;
}

/* =========================
   Filter Pills - Hover State
========================= */
.collection-top-bar__filters > a:hover {
  background-color: rgba(61, 26, 41, 0.05); /* Soft Material hover */
  border-color: rgba(61, 26, 41, 0.6); /* Slightly stronger border */
}

/* =========================
   Filter Pills - Active State
========================= */
.collection-top-bar__filters > a[aria-expanded="true"],
.collection-top-bar__filters > a.active {
  background-color: #3D1A29;
  color: white;
  border-color: #3D1A29;
}

/* =========================
   Active Filter Chips Below
========================= */
.collection-top-bar__active-elements {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}

/* Active Chips Styling */
.collection-top-bar__active-elements > a {
  border: 1px solid rgba(61, 26, 41, 0.4);
  background-color: #FFFFFF;
  color: #3D1A29;
  border-radius: 100px;
  padding: 6px 12px;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  transition:
    background-color 0.2s ease,
    color 0.2s ease,
    border-color 0.2s ease;
}

/* Active Chips Hover */
.collection-top-bar__active-elements > a:hover {
  background-color: rgba(61, 26, 41, 0.05);
  border-color: rgba(61, 26, 41, 0.6);
}

/* Icon Color Inside Chips */
.collection-top-bar__active-elements > a .icon {
  fill: #3D1A29;
}




@media (min-width: 60em) {
  .collection--has-sidebar .collection-top-bar__filters {
    display: none;
  }
}

.collection-top-bar__active-elements {
  display: flex;
}

@media (min-width: 38em) {
  .collection-top-bar__active-elements {
    padding-left: 0;
  }
}

.collection-top-bar__active-elements > a {
  margin-right: 4px;
}

.collection-top-bar__active-elements > a:last-of-type {
  margin-right: 0;
}

.collection-flyout {
  visibility: hidden;
  display: flex;
  flex-direction: column;
  background-color: var(--color-drawer-bg);
  width: 335px;
  width: var(--flyout-width);
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 400;
  z-index: var(--z-index-flyouts);
  color: var(--color-drawer-text);
  opacity: 0;
  transform: translateX(335px);
  transform: translateX(var(--flyout-width));
  transition: transform 300ms cubic-bezier(0.33, 0, 0, 1),
    opacity 300ms cubic-bezier(0.33, 0, 0, 1), visibility 0s 300ms;
  transition: transform var(--duration-fast) var(--easing),
    opacity var(--duration-fast) var(--easing),
    visibility 0s var(--duration-fast);
}

.collection-flyout.active {
  visibility: visible;
  opacity: 1;
  transform: translateY(0px);
  transition: transform 300ms cubic-bezier(0.33, 0, 0, 1),
    opacity 300ms cubic-bezier(0.33, 0, 0, 1), visibility 0s 0s;
  transition: transform var(--duration-fast) var(--easing),
    opacity var(--duration-fast) var(--easing), visibility 0s 0s;
}

.collection-flyout .filter-item__input:checked + .filter-item__checkbox {
  background-color: var(--color-drawer-text);
  border: 1px solid var(--color-drawer-text);
}

.collection-flyout .filter-item__input:checked + .filter-item__radio {
  background-color: var(--color-drawer-text);
}

.collection-flyout .filter-item__input:checked + .filter-item__chip {
  border-color: var(--color-drawer-text);
}

.collection-flyout .filter-item__input:checked + .filter-item__swatch {
  box-shadow: 0 0 0 1px var(--color-drawer-text);
}

.collection-flyout .filter-item__input:focus + .filter-item__chip,
.collection-flyout .filter-item__input:focus + .filter-item__swatch {
  outline: none;
}

.collection-flyout .filter-item__content:hover {
  background-color: var(--color-drawer-background-meta);
}

.collection-flyout .filter-item__content.filter-item__content--chip:hover,
.collection-flyout .filter-item__content.filter-item__content--swatch:hover {
  background-color: transparent;
}

.collection-flyout .filter-item__checkbox {
  border: 1px solid var(--color-drawer-border);
  color: var(--color-drawer-bg);
}

.collection-flyout .filter-item__checkbox.filter-item__radio {
  background-color: var(--color-drawer-bg);
}

.collection-flyout .filter-item__radio {
  border: 1px solid var(--color-drawer-border);
  color: var(--color-drawer-bg);
}

.collection-flyout .filter-item__radio .indicator {
  background-color: var(--color-drawer-bg);
}

.collection-flyout .filter-item__chip {
  border-color: var(--color-drawer-border);
}

.collection-flyout .filter-item__swatch {
  border-color: var(--color-drawer-bg);
  box-shadow: 0 0 0 1px var(--color-drawer-border);
}

.collection-flyout .filter-item__label {
  color: var(--color-drawer-text);
}

.collection-flyout .filter-item__count {
  color: var(--color-drawer-input-text);
}

.collection-flyout__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  z-index: 10;
}

.collection-flyout__close {
  display: block;
  padding: 4px;
  padding: var(--spacing-extra-small);
}

.collection-flyout__content {
  height: 100%;
  margin: 0;
  overflow-y: auto;
  z-index: 5;
}

.collection-flyout__content .filter-drawer__list {
  margin: 0;
  padding: 0;
}

.collection-flyout__content .filter-drawer__list.filter-drawer__list--chip,
.collection-flyout__content .filter-drawer__list.filter-drawer__list--swatch {
  padding: 4px calc(4px * 5);
  padding: var(--spacing-extra-small) var(--spacing-medium);
}

.collection-flyout__content .filter-item {
  margin-bottom: 0;
}

.collection-flyout__content .filter-item__content {
  padding: 4px calc(4px * 5);
  padding: var(--spacing-extra-small) var(--spacing-medium);
}

.collection-flyout__content .filter-item__content.filter-item__content--chip,
.collection-flyout__content .filter-item__content.filter-item__content--swatch {
  padding: 0;
}

.collection-flyout__content .filter-item__chip {
  color: var(--color-drawer-text);
}

.collection-flyout__content li {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.collection-flyout__footer {
  background-color: var(--color-drawer-bg);
  flex-shrink: 0;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  z-index: 10;
}

.collection-flyout__footer > * {
  margin: 0 calc(calc(4px * 3) / 2);
  margin: 0 calc(var(--spacing-small) / 2);
}

.collection-flyout__footer .bttn--secondary {
  color: var(--color-drawer-text);
  border: 1px solid var(--color-drawer-text);
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.collection-flyout__footer .bttn--secondary:before {
  background-color: var(--color-drawer-text);
}

.collection-flyout__footer .bttn--secondary:hover {
  color: var(--color-drawer-bg);
}

.collection-flyout__wash {
  visibility: hidden;
  background-color: var(--color-bg-overlay);
  opacity: 0;
  position: fixed;
  z-index: calc(400 - 1);
  z-index: calc(var(--z-index-flyouts) - 1);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: none;
  transition: opacity 300ms cubic-bezier(0.33, 0, 0, 1), visibility 0s 300ms;
  transition: opacity var(--duration-fast) var(--easing),
    visibility 0s var(--duration-fast);
  cursor: pointer;
}

.collection-flyout__wash.active {
  visibility: visible;
  pointer-events: all;
  opacity: 1;
  transition: opacity 300ms cubic-bezier(0.33, 0, 0, 1), visibility 0s 0s;
  transition: opacity var(--duration-fast) var(--easing), visibility 0s 0s;
}


.form-status {
  max-width: 600px;
  max-width: var(--max-width-centered-copy);
  margin: calc(4px * 5) auto;
  margin: var(--spacing-medium) auto;
}

.form-status__message--error {
  color: var(--color-error-message);
}

.form-status__message--success {
  color: var(--color-success-message);
}

.form-status__message ul {
  list-style-type: none;
  padding: 0;
}

.form-status__message a {
  text-decoration: underline;
}

.video-pause {
  display: none;
  position: absolute;
  top: calc(4px * 3);
  top: var(--spacing-small);
  right: calc(4px * 3);
  right: var(--spacing-small);
  z-index: 10;
}

.video-pause.video-pause--left {
  right: unset;
  left: calc(4px * 3);
  left: var(--spacing-small);
}

.user-is-tabbing .video-pause {
  display: block;
}

.page-dots {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  bottom: 40px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
  z-index: 99;
}

.page-dots.hidden {
  display: none;
}

.page-dots .page-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  padding: 0;
  margin: 0 8px;
  background-color: rgba(255, 255, 255, 0.4);
  border: 0;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.page-dots .page-dot.is-selected {
  border: 2px solid white;
  opacity: 1;
}

@media (max-width: 60em) {
  .product-thumbnails {
    display: none;
  }
}

.product--thumbnails-horizontal .product-thumbnails {
  width: 100%;
}

.product--thumbnails-horizontal
  .product-thumbnails
  + .product-feature-widget.product-feature-widget--left {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-extra-large);
}

.product-thumbnails__list {
  position: -webkit-sticky;
  position: sticky;
  top: 40px;
  top: var(--header-height);
  display: flex;
  flex-direction: column;
  padding: 0;
  margin-top: 0;
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
  margin-bottom: 0;
}

.product--thumbnails-horizontal .product-thumbnails__list {
  position: static;
  display: grid;
  grid-gap: calc(4px * 3);
  grid-gap: var(--spacing-small);
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
  margin-right: 0;
}

.product--thumbnails-vertical.product--thumbnails-small
  .product-thumbnails__list {
  width: 60px;
}

.product--thumbnails-vertical.product--thumbnails-medium
  .product-thumbnails__list {
  width: 80px;
}

.product--thumbnails-vertical.product--thumbnails-large
  .product-thumbnails__list {
  width: 100px;
}

.product--thumbnails-horizontal.product--thumbnails-small
  .product-thumbnails__list {
  grid-template-columns: repeat(8, 1fr);
}

.product--thumbnails-horizontal.product--thumbnails-medium
  .product-thumbnails__list {
  grid-template-columns: repeat(7, 1fr);
}

.product--thumbnails-horizontal.product--thumbnails-large
  .product-thumbnails__list {
  grid-template-columns: repeat(6, 1fr);
}

.product-thumbnails__item {
  list-style: none;
  position: relative;
}

.product-thumbnails__item + .product-thumbnails__item {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.product--thumbnails-horizontal
  .product-thumbnails__item
  + .product-thumbnails__item {
  margin-top: 0;
}

.product-thumbnails__item-link {
  display: block;
  position: relative;
  width: 100%;
  padding-right: 0;
  padding-left: 0;
  border: 0;
  background-color: transparent;
}

.product-thumbnails__item-link.active .image__img {
  box-shadow: 0 0 0 2px var(--color-accent);
}

.product--thumbsnails-aspect-square .product-thumbnails__item-link {
  padding-top: 100%;
}

.product--thumbsnails-aspect-landscape .product-thumbnails__item-link {
  padding-top: calc((2 / 3) * 100%);
}

.product--thumbsnails-aspect-portrait .product-thumbnails__item-link {
  padding-top: calc((3 / 2) * 100%);
}

.product-thumbnails__item-image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.product--thumbsnails-aspect-natural .product-thumbnails__item-image {
  position: relative;
}

.product-thumbnails__item-badge {
  position: absolute;
  top: 4px;
  top: var(--spacing-unit);
  right: 4px;
  right: var(--spacing-unit);
  z-index: 1;
  width: 24px;
  height: 24px;
  color: var(--color-text);
}

.product-thumbnails__item-badge svg {
  width: 20px;
  height: 20px;
}

.accordion {
  background-color: var(--color-contrast-bg);
  padding: calc(4px * 3) calc(4px * 5);
  padding: var(--spacing-small) var(--spacing-medium);
  margin-top: calc(calc(4px * 5) - calc(4px * 3));
  margin-top: calc(var(--spacing-medium) - var(--spacing-small));
  margin-bottom: calc(calc(4px * 5) - calc(4px * 3));
  margin-bottom: calc(var(--spacing-medium) - var(--spacing-small));
  color: var(--color-contrast-text);
}

.accordion__heading {
  font-weight: var(--font-body-bold-weight);
  padding-top: calc(calc(4px * 3) / 2);
  padding-top: calc(var(--spacing-small) / 2);
  padding-bottom: calc(calc(4px * 3) / 2);
  padding-bottom: calc(var(--spacing-small) / 2);
  padding-right: calc(4px * 2);
  padding-right: calc(var(--spacing-unit) * 2);
}

.accordion__label,
.rte .accordion__label {
  position: relative;
  display: block;
  width: calc(100% + (4px * 4));
  width: calc(100% + (var(--spacing-unit) * 4));
  cursor: pointer;
  margin-right: calc(4px * -2);
  margin-right: calc(var(--spacing-unit) * -2);
  margin-left: calc(4px * -2);
  margin-left: calc(var(--spacing-unit) * -2);
  padding-top: calc(calc(4px * 3) / 2);
  padding-top: calc(var(--spacing-small) / 2);
  padding-bottom: calc(calc(4px * 3) / 2);
  padding-bottom: calc(var(--spacing-small) / 2);
  padding-right: calc(4px * 2);
  padding-right: calc(var(--spacing-unit) * 2);
  padding-left: calc(4px * 2);
  padding-left: calc(var(--spacing-unit) * 2);
  background-color: transparent;
  border: 0;
  border-radius: 0;
  text-align: left;
  text-decoration: none;
  color: var(--color-contrast-text);
  transition: background-color 0.3s, color 0.3s;
}

.accordion__label:hover,
.rte .accordion__label:hover {
  background-color: var(--color-contrast-bg-meta);
  opacity: 1;
}

.accordion__label:after,
.rte .accordion__label:after {
  content: "";
  position: absolute;
  right: calc(4px * 3);
  right: var(--spacing-small);
  display: block;
  top: 50%;

  height: 10px;
  width: 1px;
  border-radius: 1px;
  margin-right: 5px;
  margin-top: -5px;
  transition: transform 0.3s ease;
  pointer-events: none;
  background-color: var(--color-contrast-text);
}

.accordion__label:before,
.rte .accordion__label:before {
  content: "";
  position: absolute;
  right: calc(4px * 3);
  right: var(--spacing-small);
  top: 50%;
  display: block;
  height: 1px;
  width: 11px;
  border-radius: 1px;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
  pointer-events: none;
  background-color: var(--color-contrast-text);
}

.accordion__label[aria-expanded="true"]:after,
.rte .accordion__label[aria-expanded="true"]:after {
  transform: rotate(90deg);
}

.accordion__text {
  display: none;
  padding-top: 14px;
  padding-bottom: 14px;
}

.accordion__text p:first-of-type {
  margin-top: 0;
}

.accordion__text p:last-of-type {
  margin-bottom: 0;
}

.rating {
  display: inline-block;
  margin: 0;
}

.product .rating-star,
.featured-product .rating-star {
  --letter-spacing: 0.1;
  --font-size: 1.5;
}

.rating-star {
  --percent: calc(
    (
        var(--rating) / var(--rating-max) + var(--rating-decimal) *
          var(--font-size) /
          (var(--rating-max) * (var(--letter-spacing) + var(--font-size)))
      ) * 100%
  );
  letter-spacing: calc(var(--letter-spacing) * 1rem);
  font-size: calc(var(--font-size) * 1rem);
  line-height: 1;
  display: inline-block;
  font-family: Times;
  margin: 0;
}

.rating-star::before {
  content: "★★★★★";
  background: linear-gradient(
    90deg,
    var(--star-color) var(--percent),
    var(--star-color-transparent) var(--percent)
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.rating-count {
  display: inline-block;
  margin: 0;
}

.inventory-counter {
  display: none;
}

.inventory-counter.active {
  display: block !important;
}

.inventory-counter__message-wrapper {
  display: flex;
  align-items: baseline;
}

.inventory-counter__message {
  color: var(--color-text);
}

[data-stock-category="unavailable"] .inventory-counter__message {
  color: var(--color-text-meta);
}

.section--contrast .inventory-counter__message {
  color: var(--color-contrast-text);
}

.section--contrast
  [data-stock-category="unavailable"]
  .inventory-counter__message {
  color: var(--color-contrast-text-meta);
}

.inventory-counter__label {
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
  color: var(--color-text);
}

.section--contrast .inventory-counter__label {
  color: var(--color-contrast-text);
}

.inventory-counter__bar {
  position: relative;
  display: block;
  height: 4px;
  margin-top: calc(4px * 2);
  margin-top: calc(var(--spacing-unit) * 2);
  border: solid 1px var(--color-border);
}

.inventory-counter__bar.hidden {
  display: none;
}

.inventory-counter__bar-progress {
  position: absolute;
  top: -1px;
  left: -1px;
  display: block;
  height: 4px;
  width: calc(100% + 2px);
  background-color: var(--color-text-success);
  transition: width 0.75s ease 0.45s, background-color 0.5s ease 0.2s;
}

.inventory--low .inventory-counter__bar-progress {
  background-color: var(--color-text-error);
}

.shoppable-item {
  --card-max-width: 240px;
  --hotspot-size: 40px;
}

.shoppable-item.shoppable-item--is-placeholder.shoppable-item--index-1
  .shoppable-item__hotspot-position {
  --horizontal-position: 38%;
}

.shoppable-item.shoppable-item--is-placeholder.shoppable-item--index-1.shoppable-item--square
  .shoppable-item__hotspot-position {
  --vertical-position: 34%;
  --horizontal-position: 32%;
}

.shoppable-item.shoppable-item--is-placeholder.shoppable-item--index-1.shoppable-item--landscape
  .shoppable-item__hotspot-position {
  --vertical-position: 33%;
  --horizontal-position: 38%;
}

.shoppable-item.shoppable-item--is-placeholder.shoppable-item--index-1.shoppable-item--portrait
  .shoppable-item__hotspot-position {
  --vertical-position: 41%;
  --horizontal-position: 32%;
}

.shoppable-item.shoppable-item--is-placeholder.shoppable-item--index-2.shoppable-item--square
  .shoppable-item__hotspot-position {
  --vertical-position: 30%;
  --horizontal-position: 72%;
}

.shoppable-item.shoppable-item--is-placeholder.shoppable-item--index-2.shoppable-item--landscape
  .shoppable-item__hotspot-position {
  --vertical-position: 32%;
  --horizontal-position: 65%;
}

.shoppable-item.shoppable-item--is-placeholder.shoppable-item--index-2.shoppable-item--portrait
  .shoppable-item__hotspot-position {
  --vertical-position: 37%;
  --horizontal-position: 73%;
}

.shoppable-item.shoppable-item--is-placeholder.shoppable-item--index-3.shoppable-item--square
  .shoppable-item__hotspot-position {
  --vertical-position: 64%;
  --horizontal-position: 55%;
}

.shoppable-item.shoppable-item--is-placeholder.shoppable-item--index-3.shoppable-item--landscape
  .shoppable-item__hotspot-position {
  --vertical-position: 63%;
  --horizontal-position: 55%;
}

.shoppable-item.shoppable-item--is-placeholder.shoppable-item--index-3.shoppable-item--portrait
  .shoppable-item__hotspot-position {
  --vertical-position: 59%;
  --horizontal-position: 55%;
}

.shoppable-item__hotspot-position {
  position: absolute;
  top: calc(var(--vertical-position) - (var(--hotspot-size) / 2));
  left: calc(var(--horizontal-position) - (var(--hotspot-size) / 2));
  width: var(--hotspot-size);
  height: var(--hotspot-size);
}

.shoppable-item__hotspot {
  width: var(--hotspot-size);
  height: var(--hotspot-size);
  margin: 0;
  padding: 0;
  background-color: transparent;
  border-radius: 100%;
  border: 12px solid var(--transparent-hotspot-background);
  box-shadow: 0 0 0 1px var(--color-bg);
  transition: transform 0.25s ease, border-color 0.25s ease;
  cursor: pointer;
  pointer-events: all;
}

.section--contrast .shoppable-item__hotspot {
  box-shadow: 0 0 0 1px var(--color-bg-contrast);
  transition: transform 0.25s ease, border-color-contrast 0.25s ease;
}

.section--contrast .shoppable-item__hotspot::before {
  background-color: var(--color-bg-contrast);
}

.shoppable-item--animating .shoppable-item__hotspot {
  -webkit-animation: scale 1.25s ease 0s infinite;
  animation: scale 1.25s ease 0s infinite;
  -webkit-animation-duration: var(--animation-delay);
  animation-duration: var(--animation-delay);
}

.shoppable-item__hotspot::before {
  content: "";
  display: block;
  height: 16px;
  width: 16px;
  border-radius: 100%;
  background-color: var(--color-bg);
}

.shoppable-item__hotspot:hover,
.active .shoppable-item__hotspot {
  transform: scale(1.3);
  border-color: var(--transparent-hotspot-background-darker);
}

@media (min-width: 38em) {
  .shoppable-item__hotspot:hover,
  .active .shoppable-item__hotspot {
    transform: scale(1.1);
  }
}

@-webkit-keyframes scale {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.1);
  }

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

@keyframes scale {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.1);
  }

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

.shoppable-item__product-card {
  z-index: calc(300 - 1);
  z-index: calc(var(--z-index-header) - 1);
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  background-color: var(--color-drawer-bg);
  color: var(--color-drawer-text);
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: var(--shadow-3);
  transition: transform 0.2s ease, opacity 0.2s ease, visibility 0.2s ease;
}

@media (min-width: 38em) {
  .shoppable-item__product-card {
    position: absolute;
    bottom: unset;
    right: unset;
    top: calc(var(--vertical-position) - (var(--card-height) / 2));
    left: calc(var(--horizontal-position) + var(--hotspot-size));
    display: flex;
    padding: 0;
    color: var(--color-text);
    max-width: var(--card-max-width);
    background-color: var(--color-bg);
    pointer-events: all;
    transition: transform 0.4s ease, opacity 0.2s ease, visibility 0.25s ease;
  }
}

@media (min-width: 38em) {
  .section--contrast .shoppable-item__product-card {
    color: var(--color-contrast-text);
    background-color: var(--color-bg-contrast);
  }
}

.shoppable-item__product-card.hidden {
  opacity: 0;
  visibility: hidden;
  transform: translateY(100%);
}

@media (min-width: 38em) {
  .shoppable-item__product-card.hidden {
    transform: translateY(10%);
  }
}

@media (min-width: 38em) {
  .shoppable-item__product-card.shoppable-item__product-card--align-right {
    left: calc(
      (var(--horizontal-position) - var(--hotspot-size)) - var(--card-width)
    );
  }
}

@media (min-width: 38em) {
  .shoppable-item--position-unset
    .shoppable-item__product-card.shoppable-item__product-card--align-right {
    right: 0;
  }
}

@media (min-width: 38em) {
  .shoppable-item__product-card-inner {
    padding: calc(4px * 5);
    padding: var(--spacing-medium);
  }
}

.shoppable-item__close {
  position: absolute;
  top: calc(4px * 3);
  top: var(--spacing-small);
  right: calc(4px * 3);
  right: var(--spacing-small);
  margin: 0;
  padding: calc(4px * 3);
  padding: var(--spacing-small);
  background-color: transparent;
  border: 0;
}

@media (min-width: 38em) {
  .shoppable-item__close {
    display: none;
  }
}

.shoppable-item__close .icon-header-button {
  color: var(--color-drawer-text);
}

.shoppable-item__image-link {
  display: block;
  width: 80px;
  margin: 0 auto;
}

@media (min-width: 38em) {
  .shoppable-item__image-link {
    display: none;
  }
}

@media (max-width: 38em) {
  .shoppable-item__meta {
    text-align: center;
  }
}

@media (max-width: 38em) {
  .shoppable-item__product-card--has-image .shoppable-item__meta {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }
}

.icon-header-button {
  --color: var(--color-text);

  width: 28px;
  height: 28px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-around;
  transition: transform 0.005s;
}

.icon-header-button:hover .icon-header-button__icon:before {
  opacity: 0.1;
  transform: scale(1.4);
}

.popover .icon-header-button:hover .icon-header-button__icon:before {
  opacity: 1;
}

.icon-header-button:active {
  transform: scale(0.9);
}

.icon-header-button__icon {
  position: relative;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  border-radius: 100%;
  z-index: 2;
}

.icon-header-button__icon:before {
  content: "";
  background-color: var(--color);
  opacity: 0;
  border-radius: 100%;
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: 2;
  transform: scale(0.8);
  transition: opacity 0.25s, transform 0.15s ease-in-out;
}

.icon-header-button__icon .icon {
  width: 20px;
  height: 20px;
  position: relative;
  z-index: 10;
  color: var(--color);
}

.icon-header-button__icon .icon svg {
  overflow: visible;
}

.product-feature-widget {
  position: relative;
  display: block;
  width: 100%;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  background: var(--s-color-background);
  background: var(--s-gradient-background, var(--s-color-background));
  color: var(--s-color-text);
}

.product-feature-widget.product-feature-widget--left {
  padding: calc(4px * 7);
  padding: var(--spacing-large);
}

@media (max-width: 60em) {
  .product-feature-widget.product-feature-widget--left {
    display: none;
  }
}

@media (min-width: 60em) {
  .product-feature-widget.product-feature-widget--left {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }
}

.product-feature-widget.product-feature-widget--left
  .product-feature-widget__heading-wrapper
  + .product-feature-widget__text {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.product__meta .product-feature-widget.product-feature-widget--left {
  display: block;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

@media (min-width: 60em) {
  .product__meta .product-feature-widget.product-feature-widget--left {
    display: none;
  }
}

.product__meta
  .product-feature-widget.product-feature-widget--left
  .product-feature-widget__heading-wrapper
  + .product-feature-widget__text {
  margin-top: 10px;
}

.product-feature-widget__image,
.product-feature-widget__video {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.product-feature-widget--has-image.product-feature-widget--height-media.product-feature-widget--natural
  .product-feature-widget__image,
.product-feature-widget--has-image.product-feature-widget--height-media.product-feature-widget--natural
  .product-feature-widget__video {
  position: relative;
}

.product-feature-widget__video {
  -o-object-fit: var(--media-fit);
  object-fit: var(--media-fit);
  -o-object-position: var(--media-focal-alignment);
  object-position: var(--media-focal-alignment);
}

.product-feature-widget--has-image.product-feature-widget--height-media
  .product-feature-widget__media {
  position: relative;
  margin: calc(calc(4px * 5) * -1);
  margin: calc(var(--spacing-medium) * -1);
}

@media (min-width: 60em) {
  .product-feature-widget--has-image.product-feature-widget--height-media.product-feature-widget--left
    .product-feature-widget__media {
    margin: calc(calc(4px * 7) * -1);
    margin: calc(var(--spacing-large) * -1);
  }
}

.product-feature-widget--has-image.product-feature-widget--height-media.product-feature-widget--square
  .product-feature-widget__media {
  padding-top: 100%;
}

.product-feature-widget--has-image.product-feature-widget--height-media.product-feature-widget--portrait
  .product-feature-widget__media {
  padding-top: calc((3 / 2) * 100%);
}

.product-feature-widget--has-image.product-feature-widget--height-media.product-feature-widget--landscape
  .product-feature-widget__media {
  padding-top: calc((2 / 3) * 100%);
}

.product-feature-widget__fill {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: var(--color-overlay-color);
  background: var(--overlay-gradient, var(--color-overlay-color));
  opacity: var(--overlay-opacity);
}

.product-feature-widget__text-container {
  display: flex;
  flex-direction: column;
}

.product-feature-widget--has-image.product-feature-widget--height-media
  .product-feature-widget__text-container {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

@media (min-width: 60em) {
  .product-feature-widget--has-image.product-feature-widget--height-media.product-feature-widget--left
    .product-feature-widget__text-container {
    padding: calc(4px * 7);
    padding: var(--spacing-large);
  }
}

.product-feature-widget--text-vertical-center
  .product-feature-widget__text-container {
  justify-content: center;
}

.product-feature-widget--text-vertical-bottom
  .product-feature-widget__text-container {
  justify-content: flex-end;
}

.product-feature-widget--text-hortizontal-center
  .product-feature-widget__text-container {
  align-items: center;
  text-align: center;
}

.product-feature-widget--text-hortizontal-right
  .product-feature-widget__text-container {
  align-items: flex-end;
  text-align: right;
}

.product-feature-widget__heading-wrapper,
.product-feature-widget__text {
  z-index: 1;
}

.product-feature-widget__heading {
  max-width: var(--s-heading-max-width);
}

.product-feature-widget__text {
  max-width: var(--s-text-max-width);
}

.product-feature-widget__text p:first-of-type {
  margin-top: 0;
}

.product-feature-widget__text p:last-of-type {
  margin-bottom: 0;
}

.product-feature-widget__button-wrapper {
  display: flex;
}

.product-feature-widget__button-wrapper.hidden {
  display: none;
}

.product-feature-widget__button.bttn.bttn--secondary {
  background-color: var(--s-color-background-button);
  color: var(--s-color-text-button);
  border: 0;
}

.product-feature-widget__button.bttn.bttn--secondary:hover {
  background-color: var(--s-color-background-button-hover);
  color: var(--s-color-text-button);
}

.product-feature-widget__button.bttn.bttn--secondary:before {
  display: none;
}

.product-feature-widget__payment-icon {
  display: inline-block;
  width: 38px;
  margin-right: 6px;
}

.product-feature-widget__payment-icon svg {
  display: block;
  width: 100%;
  margin-top: -1px;
  margin-bottom: -1px;
}

.product-feature-widget__heading-wrapper + .product-feature-widget__text {
  margin-top: 10px;
}

.product-feature-widget__heading-wrapper
  + .product-feature-widget__button-wrapper,
.product-feature-widget__text + .product-feature-widget__button-wrapper,
.product-feature-widget__button-wrapper
  + .product-feature-widget__button-wrapper {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.shipping-estimator-modal {
  z-index: 700;
  z-index: var(--z-index-modal);
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  display: none;
  align-items: center;
  justify-content: center;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  visibility: hidden;
  pointer-events: none;
}

.shipping-estimator-modal.is-fixed {
  display: flex;
  position: fixed;
  visibility: visible;
}

.shipping-estimator-modal .shipping-estimator-modal__form-wrapper {
  width: 100%;
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.shipping-estimator-modal
  .shipping-estimator-modal__form-wrapper
  .shipping-estimator-modal__select-wrapper
  + .shipping-estimator-modal__select-wrapper,
.shipping-estimator-modal
  .shipping-estimator-modal__form-wrapper
  .shipping-estimator-modal__select-wrapper
  + .shipping-estimator-modal__postal-wrapper {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.shipping-estimator-modal .shipping-estimator-modal__form-wrapper .btn {
  position: relative;
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.shipping-estimator-modal .shipping-estimator-modal__form-wrapper input,
.shipping-estimator-modal .shipping-estimator-modal__form-wrapper select {
  border-color: var(--color-drawer-border);
}

.shipping-estimator-modal .shipping-estimator-modal__form-wrapper input:hover,
.shipping-estimator-modal .shipping-estimator-modal__form-wrapper input:focus,
.shipping-estimator-modal .shipping-estimator-modal__form-wrapper select:hover,
.shipping-estimator-modal .shipping-estimator-modal__form-wrapper select:focus {
  border-color: var(--color-drawer-border-darker);
}

.shipping-estimator-modal__inner {
  z-index: 700;
  z-index: var(--z-index-modal);
  position: relative;
  width: 100%;
  max-width: 335px;
  max-width: var(--flyout-width);
  max-height: calc(100vh - (calc(4px * 7) * 2));
  max-height: calc(100vh - (var(--spacing-large) * 2));
  margin: auto;
  color: var(--color-drawer-text);
  background-color: var(--color-drawer-bg);
  pointer-events: all;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2), 0px 0px 2px rgba(0, 0, 0, 0.25);
  box-shadow: var(--shadow-1);
  overflow: auto;
  opacity: 0;
  transform: translateY(4px);
  transform: translateY(var(--spacing-extra-small));
  transition: transform 0.3s ease, opacity 0.3s ease;
}

.is-visible .shipping-estimator-modal__inner {
  opacity: 1;
  transform: translateY(0);
}

.shipping-estimator-modal__close {
  position: absolute;
  top: calc(4px * 5);
  top: var(--spacing-medium);
  right: calc(4px * 5);
  right: var(--spacing-medium);
  background-color: transparent;
  border: 0;
  z-index: 10;
}

@media (min-width: 38em) {
  .shipping-estimator-modal__close {
    top: calc(4px * 7);
    top: var(--spacing-large);
    right: calc(4px * 7);
    right: var(--spacing-large);
  }
}

.shipping-estimator-modal__close .icon-button__icon .icon {
  width: 40px;
  height: 40px;
}

.shipping-estimator-modal__heading {
  margin-bottom: calc(4px * 7);
  margin-bottom: var(--spacing-large);
}

.shipping-estimator-modal__content {
  height: auto;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  margin: 0;
  z-index: 5;
}

@media (min-width: 38em) {
  .shipping-estimator-modal__content {
    padding: calc(4px * 10);
    padding: var(--spacing-extra-large);
  }
}

.shipping-estimator-modal__select-wrapper {
  position: relative;
}

.shipping-estimator-modal__select-wrapper.hidden {
  display: none;
}

.shipping-estimator-modal__select-wrapper select {
  -webkit-appearance: none;
  -moz-appearance: none;
  text-indent: 1px;
  text-overflow: "";
}

.shipping-estimator-modal__select-wrapper svg {
  position: absolute;
  right: calc(4px * 4);
  right: calc(var(--spacing-unit) * 4);
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-drawer-border);
}

.shipping-estimator-modal__select-wrapper:hover svg,
.shipping-estimator-modal__select-wrapper:focus svg {
  color: var(--color-drawer-border-darker);
}

.shipping-estimator-modal__error,
.shipping-estimator-modal__success {
  display: flex;
  flex-direction: column;
  padding: 0;
  list-style: none;
}

.shipping-estimator-modal__success {
  background-color: var(--color-drawer-background-meta);
  padding: var(--spacing-medium-large);
  display: none;
  margin-top: calc(4px * 7);
  margin-top: var(--spacing-large);
}

.shipping-estimator-modal__success.active {
  display: flex;
}

.shipping-estimator-modal__error-item {
  color: var(--color-text-error);
}

.shipping-estimator-modal__error-item span {
  text-transform: capitalize;
}

.shipping-estimator-modal__success-item {
  padding: calc(4px * 3);
  padding: var(--spacing-small);
}

.shipping-estimator-modal__success-item
  + .shipping-estimator-modal__success-item {
  padding-top: calc(4px * 3);
  padding-top: var(--spacing-small);
  border-top: 1px solid var(--color-drawer-border);
}

.shipping-estimator-modal__wash {
  background-color: var(--color-bg-overlay);
  opacity: 0;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
  cursor: pointer;
}

.active .shipping-estimator-modal__wash {
  pointer-events: all;
  opacity: 0.9;
  transition: opacity 0.3s ease;
}

.quick-add {
  position: fixed;
  top: var(--header-offset-height);
  right: calc(4px * 5);
  right: var(--spacing-medium);
  bottom: 0;
  left: 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  pointer-events: none;
  padding: 0;
  visibility: hidden;
  transition: visibility 0s 0.3s;
  z-index: 300;
  z-index: var(--z-index-header);
}

@media (min-width: 38em) {
  .quick-add {
    right: calc(4px * 10);
    right: var(--spacing-extra-large);
  }
}

.header-stuck .quick-add {
  top: calc(40px - 40px);
  top: calc(var(--header-height) - var(--utility-bar-height));
}

.quick-add.visible {
  transition: visibility 0s 0s;
  visibility: visible;
}

.quick-add .product__quantity-error {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.quick-add.hidden {
  display: none;
}

.quick-add .product-form__controls-group,
.quick-add .product-form__option {
  margin-top: 15px;
}

.quick-add .product-form__option-label,
.quick-add .product-form__controls-label-wraper label {
  color: var(--color-drawer-text);
}

.quick-add .product-form__option select,
.quick-add .product-form__option input,
.quick-add .product-form__option button {
  color: var(--color-drawer-input-text);
}

.quick-add .product-form__option-select-icon svg {
  color: var(--color-drawer-icon);
}

.quick-add .product-form__controls-group--submit {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: 0;
}

.quick-add .product-form__color-swatch {
  border-color: var(--color-drawer-bg);
}

.quick-add .product-form__color-swatch.selected {
  box-shadow: 0 0 0 1px var(--color-drawer-text);
}

.quick-add .product-form__chip {
  color: var(--color-drawer-text);
  border-color: var(--color-drawer-border);
}

.quick-add .product-form__chip.selected {
  border-color: var(--color-drawer-text);
}

.quick-add .product-form__quantity {
  border-color: var(--color-drawer-border);
}

.quick-add .product-form__quantity-button {
  color: var(--color-drawer-icon);
}

.quick-add .product-form__quantity-button:hover {
  background-color: var(--color-drawer-background-meta);
}

.quick-add .product-form__cart-submit {
  display: flex;
}

.quick-add .product-form__option-swatches-wrapper {
  margin-left: -3px;
}

.quick-add .unit-price {
  margin-top: 0;
  margin-bottom: 0;
}

.quick-add__close {
  position: absolute;
  top: calc(4px * 5);
  top: var(--spacing-medium);
  right: calc(4px * 5);
  right: var(--spacing-medium);
  background-color: transparent;
  border: 0;
  transition: opacity 300ms cubic-bezier(0.33, 0, 0, 1);
  transition: opacity var(--duration-fast) var(--easing);
  color: var(--color-drawer-text);
}

.quick-add__close:hover,
.quick-add__close:focus {
  opacity: 0.5;
}

.quick-add__inner {
  z-index: 1;
  width: 100%;
  max-width: 380px;
  max-height: calc(100vh - (var(--header-offset-height) + (calc(4px * 7) * 2)));
  max-height: calc(
    100vh - (var(--header-offset-height) + (var(--spacing-large) * 2))
  );
  overflow-y: auto;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  margin-top: calc(4px * 7);
  margin-top: var(--spacing-large);
  opacity: 0;
  pointer-events: all;
  background-color: var(--color-drawer-bg);
  color: var(--color-drawer-text);
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15), 0px 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: var(--shadow-3);
  transform: translateY(calc(4px * 5));
  transform: translateY(var(--spacing-medium));
  transition: opacity 300ms cubic-bezier(0.33, 0, 0, 1),
    transform 300ms cubic-bezier(0.33, 0, 0, 1);
  transition: opacity var(--duration-fast) var(--easing),
    transform var(--duration-fast) var(--easing);
}

@media (max-width: 38em) {
  .quick-add__inner {
    margin-left: calc(4px * 5);
    margin-left: var(--spacing-medium);
  }
}

.header-stuck .quick-add__inner {
  max-height: calc(100vh - ((40px - 40px) + (calc(4px * 7) * 2)));
  max-height: calc(
    100vh -
      (
        (var(--header-height) - var(--utility-bar-height)) +
          (var(--spacing-large) * 2)
      )
  );
}

.visible .quick-add__inner {
  transform: translateY(0);
  opacity: 1;
}

.quick-add__inner input,
.quick-add__inner textarea,
.quick-add__inner select {
  background-color: var(--color-drawer-bg);
  color: var(--color-drawer-text);
  border-color: var(--color-drawer-border);
  transition: border-color 0.25s ease-in-out;
}

.quick-add__inner input::-moz-placeholder,
.quick-add__inner textarea::-moz-placeholder,
.quick-add__inner select::-moz-placeholder {
  color: var(--color-drawer-input-inactive-text);
}

.quick-add__inner input:-ms-input-placeholder,
.quick-add__inner textarea:-ms-input-placeholder,
.quick-add__inner select:-ms-input-placeholder {
  color: var(--color-drawer-input-inactive-text);
}

input::-moz-placeholder,
textarea::-moz-placeholder,
select::-moz-placeholder {
  color: var(--color-drawer-input-inactive-text);
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder,
select:-ms-input-placeholder {
  color: var(--color-drawer-input-inactive-text);
}

.quick-add__inner input::placeholder,
.quick-add__inner textarea::placeholder,
.quick-add__inner select::placeholder {
  color: var(--color-drawer-input-inactive-text);
}

.quick-add__inner input:hover,
.quick-add__inner textarea:hover,
.quick-add__inner select:hover {
  opacity: 0.9;
}

.quick-add__inner input:focus,
.quick-add__inner textarea:focus,
.quick-add__inner select:focus {
  border-radius: 0;
  border-color: var(--color-drawer-border-darkest);
}

.quick-add__inner .meta {
  color: var(--color-drawer-text-meta);
}

.quick-add__content {
  overflow: hidden;
}

.quick-add__product {
  display: flex;
}

.quick-add__image {
  width: 100px;
}

.quick-add__image a,
.quick-add__image .image {
  display: block;
  width: 100%;
  height: 100%;
}

.quick-add__details {
  margin-left: calc(4px * 5);
  margin-left: var(--spacing-medium);
}

.quick-add__product-title {
  margin-top: 0;
  margin-bottom: 0;
  padding-right: calc(4px * 7);
  padding-right: var(--spacing-large);
}

.quick-add__price {
  color: var(--color-drawer-text-meta);
}

.quick-add__loading {
  position: absolute;
  top: 1px;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--color-drawer-bg-transparent);
  z-index: 1;
  opacity: 1;
  pointer-events: none;
  text-align: center;
  margin-top: -1px;
  transition: opacity 300ms 300ms;
  transition: opacity var(--duration-fast) var(--duration-fast);
}

.quick-add__loading .loader__bar {
  background-color: var(--color-drawer-text);
}

.quick-add__loading .loader {
  height: 100%;
}

.loaded .quick-add__loading {
  opacity: 0;
  transition: opacity 0s 0s;
}

.quick-add__wash {
  visibility: hidden;
  background-color: var(--color-bg-overlay);
  opacity: 0;
  position: fixed;
  top: var(--header-offset-height);
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: none;
  transition: opacity var(var(--duration-fast)) cubic-bezier(0.33, 0, 0, 1),
    visibility 0s var(var(--duration-fast));
  transition: opacity var(var(--duration-fast)) var(--easing),
    visibility 0s var(var(--duration-fast));
  cursor: pointer;
}

.header-stuck .quick-add__wash {
  top: calc(40px - 40px);
  top: calc(var(--header-height) - var(--utility-bar-height));
}

.visible .quick-add__wash {
  visibility: visible;
  pointer-events: all;
  opacity: 1;
  transition: opacity var(var(--duration-fast)) cubic-bezier(0.33, 0, 0, 1),
    visibility 0s 0s;
  transition: opacity var(var(--duration-fast)) var(--easing), visibility 0s 0s;
}

.complementary-products {
  width: 100%;
}

.product__bottom .complementary-products {
  padding: calc(4px * 5) var(--space-outer);
  padding: var(--spacing-medium) var(--space-outer);
}

.complementary-products.hidden {
  display: none;
}

@media (max-width: 60em) {
  .complementary-products--left {
    display: none;
  }
}

@media (min-width: 60em) {
  .complementary-products--left {
    margin-top: calc(4px * 7);
    margin-top: var(--spacing-large);
  }
}

.product__meta .complementary-products--left {
  display: block;
}

@media (min-width: 60em) {
  .product__meta .complementary-products--left {
    display: none;
  }
}

.complementary-products__content-wrapper {
  position: relative;
}

.complementary-products__content-wrapper.carousel {
  overflow: hidden;
}

.complementary-products__content {
  padding-top: calc(4px * 3);
  padding-top: var(--spacing-small);
}

.complementary-products__content.complementary-products__content--has-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-column-gap: calc(4px * 3);
  -moz-column-gap: calc(4px * 3);
  column-gap: calc(4px * 3);
  grid-column-gap: var(--spacing-small);
  -moz-column-gap: var(--spacing-small);
  column-gap: var(--spacing-small);
  grid-row-gap: calc(4px * 5);
  row-gap: calc(4px * 5);
  grid-row-gap: var(--spacing-medium);
  row-gap: var(--spacing-medium);
}

@media (min-width: 38em) {
  .complementary-products__content.complementary-products__content--has-grid {
    grid-column-gap: calc(4px * 5);
    -moz-column-gap: calc(4px * 5);
    column-gap: calc(4px * 5);
    grid-column-gap: var(--spacing-medium);
    -moz-column-gap: var(--spacing-medium);
    column-gap: var(--spacing-medium);
    grid-row-gap: calc(4px * 10);
    row-gap: calc(4px * 10);
    grid-row-gap: var(--spacing-extra-large);
    row-gap: var(--spacing-extra-large);
  }
}

.complementary-products__content.complementary-products__content--has-grid.complementary-products__content--columns-2 {
  grid-template-columns: repeat(2, 1fr);
}

.complementary-products--right
  .complementary-products__content.complementary-products__content--has-grid.complementary-products__content--columns-2 {
  grid-column-gap: calc(4px * 3);
  -moz-column-gap: calc(4px * 3);
  column-gap: calc(4px * 3);
  grid-column-gap: var(--spacing-small);
  -moz-column-gap: var(--spacing-small);
  column-gap: var(--spacing-small);
  grid-row-gap: calc(4px * 5);
  row-gap: calc(4px * 5);
  grid-row-gap: var(--spacing-medium);
  row-gap: var(--spacing-medium);
}

.complementary-products__content.complementary-products__content--has-grid.complementary-products__content--columns-3 {
  grid-template-columns: repeat(3, 1fr);
}

.complementary-products--right
  .complementary-products__content.complementary-products__content--has-grid.complementary-products__content--columns-3 {
  grid-column-gap: calc(4px * 3);
  -moz-column-gap: calc(4px * 3);
  column-gap: calc(4px * 3);
  grid-column-gap: var(--spacing-small);
  -moz-column-gap: var(--spacing-small);
  column-gap: var(--spacing-small);
  grid-row-gap: calc(4px * 5);
  row-gap: calc(4px * 5);
  grid-row-gap: var(--spacing-medium);
  row-gap: var(--spacing-medium);
}

.complementary-products__content.complementary-products__content--has-slider
  .complementary-products__slide {
  width: 100%;
}

.complementary-products__content.complementary-products__content--has-slider.complementary-products__content--columns-2
  .complementary-products__slide {
  width: 50%;
}

.complementary-products__content.complementary-products__content--has-slider.complementary-products__content--columns-3
  .complementary-products__slide {
  width: calc(100% / 3);
}

.complementary-products--right
  .complementary-products__content.complementary-products__content--columns-3
  .product-item__quick-shop-button {
  width: calc(100% - (calc(4px * 3) * 2));
  width: calc(100% - (var(--spacing-small) * 2));
  margin: calc(4px * 3);
  margin: var(--spacing-small);
  height: calc(4px * 10);
  height: var(--spacing-extra-large);
}

.complementary-products--right
  .complementary-products__content.complementary-products__content--columns-3
  .badge {
  padding: 8px 12px;
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.breadcrumbs {
  display: flex;
}

.breadcrumbs__list,
.navigation-buttons__list {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.breadcrumbs__item,
.navigation-buttons__item {
  display: inline-block;
  position: relative;
}

.breadcrumbs__item svg,
.navigation-buttons__item svg {
  width: 10px;
  height: 10px;
  opacity: 0.6;
}

.breadcrumbs__icon {
  display: block;
  position: absolute;
  right: -5px;
  bottom: 0;
}

.breadcrumbs__link {
  color: var(--color-text-link);
  transition: opacity 0.25s;
}

.breadcrumbs__link:hover {
  opacity: 0.6;
}

.breadcrumbs__item {
  margin-right: calc(4px * 3);
  margin-right: var(--spacing-small);
  padding-right: calc(4px * 3);
  padding-right: var(--spacing-small);
}

.breadcrumbs__current {
  opacity: 0.7;
}

.navigation-buttons__list {
  display: flex;
  align-items: flex-start;
  margin-left: auto;
  white-space: nowrap;
}

.navigation-buttons__item span {
  opacity: 0.6;
}

.navigation-buttons__item a {
  color: var(--color-text-link);
  transition: opacity 0.25s;
}

.navigation-buttons__item a:hover {
  opacity: 0.6;
}

.breadcrumbs__list + .navigation-buttons__list {
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
}

.navigation-buttons__item + .navigation-buttons__item {
  margin-left: calc(4px * 3);
  margin-left: var(--spacing-small);
  padding-left: calc(4px * 3);
  padding-left: var(--spacing-small);
}

.navigation-buttons__item + .navigation-buttons__item::before {
  content: "";
  width: 1px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 1em;
  background: currentColor;
  opacity: 0.5;
}

/*! Flickity v2.2.1
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative;
}

.flickity-enabled:hover .flickity-prev-next-button {
  opacity: 1;
}

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-overflow-scrolling: touch;
}

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.flickity-button {
  position: absolute;
  background: var(--color-bg);
  border: none;
  color: var(--color-text);
}

.flickity-button:hover {
  cursor: pointer;
}

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19f;
}

.flickity-button:active {
  opacity: 0.6;
}

.flickity-button:disabled {
  display: none !important;
  cursor: auto;
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

.flickity-prev-next-button {
  top: calc(50% - 20px);
  width: 40px;
  height: 40px;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);
  box-shadow: var(--shadow-2);
  transition: transform 0.45s cubic-bezier(0.32, 0.24, 0.15, 1);
  transition: transform 0.45s var(--cubic);
}

.flickity-prev-next-button.previous {
  left: 0;
}

.flickity-prev-next-button.next {
  right: 0;
}

.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: 40px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background-color: rgba(255, 255, 255, 0.4);
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  border: 2px solid white;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}

.flickity-enabled.is-fade .flickity-slider > * {
  pointer-events: none;
  z-index: 0;
}

.flickity-enabled.is-fade .flickity-slider > .is-selected {
  pointer-events: auto;
  z-index: 1;
}

.rc_widget__option__plans {
  padding-left: 0 !important;
}

.rc_widget__option {
  padding: 0 !important;
}

.rc_widget__option__plans__dropdown {
  width: 100% !important;
  background-image: linear-gradient(
      45deg,
      transparent 50%,
      var(--color-icon) 50%
    ),
    linear-gradient(135deg, var(--color-icon) 50%, transparent 50%);
  background-position: calc(100% - 20px) calc(1em + 7px),
    calc(100% - 15px) calc(1em + 7px), calc(100% - 2.5em) 0.5em;
  background-size: 5px 5px, 5px 5px, 1px 1.5em;
  background-repeat: no-repeat;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.rc_popup__block__footer img.rc_popup__badge {
  margin-left: 0 !important;
}

.paywhirl-plan-selector .paywhirl-plan-selector-group {
  margin: 0 !important;
}

.paywhirl-plan-selector .paywhirl-plan-selector-plan {
  margin-left: 0 !important;
}

.paywhirl-plan-selector-plan {
  position: relative !important;
}

.paywhirl-plan-selector-plan label {
  z-index: 1;
  position: absolute;
  top: calc(calc(4px * 3) * -1);
  top: calc(var(--spacing-small) * -1);
  left: calc(4px * 3);
  left: var(--spacing-small);
  width: auto;
  padding-right: 4px;
  padding-right: var(--spacing-unit);
  padding-left: 4px;
  padding-left: var(--spacing-unit);
  color: var(--color-input-text);
  font-size: var(--font-size-body-small);
  background-color: var(--color-bg);
}

.paywhirl-plan-selector-plan select {
  width: 100% !important;
  background-image: linear-gradient(
      45deg,
      transparent 50%,
      var(--color-icon) 50%
    ),
    linear-gradient(135deg, var(--color-icon) 50%, transparent 50%);
  background-position: calc(100% - 20px) calc(1em + 7px),
    calc(100% - 15px) calc(1em + 7px), calc(100% - 2.5em) 0.5em;
  background-size: 5px 5px, 5px 5px, 1px 1.5em;
  background-repeat: no-repeat;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.paywhirl-plan-selector .paywhirl-plan-selector-description {
  margin-bottom: 0 !important;
  font-size: var(--font-size-body-small);
  line-height: 1.71em;
  line-height: var(--line-height-body);
  font-family: var(--font-body), georgia;
  text-align: center !important;
}

.noUi-target,
.noUi-target * {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  box-sizing: border-box;
}

.noUi-target {
  position: relative;
}

.noUi-base,
.noUi-connects {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}

.noUi-connects {
  overflow: hidden;
  z-index: 0;
}

.noUi-connect,
.noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  -ms-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -webkit-transform-style: preserve-3d;
  transform-origin: 0 0;
  transform-style: flat;
}

.noUi-connect {
  height: 100%;
  width: 100%;
}

.noUi-origin {
  height: 10%;
  width: 100%;
}

.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
  left: 0;
  right: auto;
}

.noUi-vertical .noUi-origin {
  width: 0;
}

.noUi-horizontal .noUi-origin {
  height: 0;
}

.noUi-handle {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  position: absolute;
}

.noUi-touch-area {
  position: absolute;
  top: 50%;
  left: 50%;
  height: 200%;
  width: 200%;
  transform: translate(-50%, -50%);
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
  transition: transform 0.3s;
}

.noUi-state-drag * {
  cursor: inherit !important;
}

.noUi-horizontal {
  height: 4px;
}

.noUi-horizontal .noUi-handle {
  width: 18px;
  height: 18px;
  border-radius: 18px;
  top: -8px;
}

.noUi-horizontal .noUi-handle.noUi-handle-lower {
  right: -16px;
}

.noUi-horizontal .noUi-handle.noUi-handle-upper {
  right: 0;
}

.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {
  left: -17px;
  right: auto;
}

.noUi-target {
  position: relative;
  background: transparent;
}

.noUi-target:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color-border-medium);
  z-index: -1;
}

.noUi-connects {
  border-radius: 3px;
}

.noUi-connect {
  background: var(--color-accent);
}

.noUi-draggable {
  cursor: ew-resize;
}

.noUi-vertical .noUi-draggable {
  cursor: ns-resize;
}

.noUi-handle {
  border: 1px solid var(--color-border-medium);
  border-radius: 3px;
  background: var(--color-bg);
  cursor: default;
}

[disabled] .noUi-connect {
  background: #b8b8b8;
}

[disabled].noUi-target,
[disabled].noUi-handle,
[disabled] .noUi-handle {
  cursor: not-allowed;
}

.noUi-pips,
.noUi-pips * {
  box-sizing: border-box;
}

.noUi-pips {
  position: absolute;
  color: #999;
}

.noUi-value {
  position: absolute;
  white-space: nowrap;
  text-align: center;
}

.noUi-value-sub {
  color: #ccc;
  font-size: 10px;
}

.noUi-marker {
  position: absolute;
  background: #ccc;
}

.noUi-marker-sub {
  background: #aaa;
}

.noUi-marker-large {
  background: #aaa;
}

.noUi-pips-horizontal {
  padding: 10px 0;
  height: 80px;
  top: 100%;
  left: 0;
  width: 100%;
}

.noUi-value-horizontal {
  transform: translate(-50%, 50%);
}

.noUi-rtl .noUi-value-horizontal {
  transform: translate(50%, 50%);
}

.noUi-marker-horizontal.noUi-marker {
  margin-left: -1px;
  width: 2px;
  height: 5px;
}

.noUi-marker-horizontal.noUi-marker-sub {
  height: 10px;
}

.noUi-marker-horizontal.noUi-marker-large {
  height: 15px;
}

.noUi-tooltip {
  display: block;
  position: absolute;
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
  color: #000;
  padding: 5px;
  text-align: center;
  white-space: nowrap;
}

.noUi-horizontal .noUi-tooltip {
  transform: translate(-50%, 0);
  left: 50%;
  bottom: 120%;
}

.noUi-vertical .noUi-tooltip {
  transform: translate(0, -50%);
  top: 50%;
  right: 120%;
}

.noUi-horizontal .noUi-origin > .noUi-tooltip {
  transform: translate(50%, 0);
  left: auto;
  bottom: 10px;
}

.noUi-vertical .noUi-origin > .noUi-tooltip {
  transform: translate(0, -18px);
  top: auto;
  right: 28px;
}

.shopify-product-reviews-wrapper {
  width: 100%;
}

#shopify-product-reviews {
  width: 100%;
  overflow: auto !important;
  margin: 0 !important;
  padding: calc(4px * 5) !important;
  padding: var(--spacing-medium) !important;
}

.shopify-block #shopify-product-reviews {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

#shopify-product-reviews .spr-container,
.product__reviews .spr-container {
  width: 100%;
  border: none;
  padding: 0 0 0 0;
}

#shopify-product-reviews .spr-header,
.product__reviews .spr-header {
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
}

#shopify-product-reviews .spr-header-title,
.product__reviews .spr-header-title {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  font-size: var(--font-size-heading-1);
  line-height: 1.3em;
  line-height: var(--line-height-heading);
  font-family: var(--font-heading), sans-serif;
  font-weight: var(--font-heading-weight);
  font-style: var(--font-heading-style);
  text-align: left !important;
}

#shopify-product-reviews .spr-header-title > a,
.product__reviews .spr-header-title > a {
  color: inherit;
}

#shopify-product-reviews .spr-summary,
.product__reviews .spr-summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

#shopify-product-reviews .spr-summary .spr-starrating,
.product__reviews .spr-summary .spr-starrating {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

#shopify-product-reviews .spr-summary-caption,
.product__reviews .spr-summary-caption {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  margin-left: 4px;
  margin-left: var(--spacing-unit);
}

#shopify-product-reviews .spr-summary-actions,
.product__reviews .spr-summary-actions {
  width: 100%;
}

#shopify-product-reviews .spr-summary-actions a,
.product__reviews .spr-summary-actions a {
  margin-top: 0;
}

#shopify-product-reviews .spr-summary-actions-togglereviews,
.product__reviews .spr-summary-actions-togglereviews {
  pointer-events: none;
}

#shopify-product-reviews .spr-reviews,
.product__reviews .spr-reviews {
  margin: 0;
  display: block !important;
}

#shopify-product-reviews .spr-summary-actions-newreview,
.product__reviews .spr-summary-actions-newreview {
  float: none;
  width: 100%;
  text-decoration: none;
}

#shopify-product-reviews .spr-button-primary,
.product__reviews .spr-button-primary {
  float: none;
  width: 100%;
}

#shopify-product-reviews .spr-form,
.product__reviews .spr-form {
  width: 100%;
  border: none;
  margin: 0;
  border: 0;
  padding-top: 0;
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
  border-top: 1px solid var(--color-border);
}

#shopify-product-reviews .spr-form .spr-starrating,
.product__reviews .spr-form .spr-starrating {
  border: 0;
}

#shopify-product-reviews .spr-form-title,
.product__reviews .spr-form-title {
  display: none;
}

#shopify-product-reviews fieldset > div,
.product__reviews fieldset > div {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

#shopify-product-reviews .spr-form-label,
.product__reviews .spr-form-label {
  display: inline-block;
  font-size: var(--font-size-body-small);
  margin-left: calc(calc(4px * 5) - 4px);
  margin-left: calc(var(--spacing-medium) - var(--spacing-unit));
}

#shopify-product-reviews .spr-form-input,
.product__reviews .spr-form-input {
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: var(--color-drawer-bg);
  color: var(--color-input-text);
  width: 100%;
  height: 48px;
  height: var(--height-button);
  border: 1px solid var(--color-border);
  padding: calc(4px * 3) calc(4px * 5);
  padding: var(--spacing-small) var(--spacing-medium);
  font-family: var(--font-body);
  font-weight: var(--font-body-weight);
  font-style: var(--font-body-style);
  line-height: 1.5em;
  transition: color 0.25s ease-in-out;
}

#shopify-product-reviews .spr-form-input::-moz-placeholder,
.product__reviews .spr-form-input::-moz-placeholder {
  color: var(--color-input-inactive-text);
}

#shopify-product-reviews .spr-form-input:-ms-input-placeholder,
.product__reviews .spr-form-input:-ms-input-placeholder {
  color: var(--color-input-inactive-text);
}

#shopify-product-reviews .spr-form-input::placeholder,
.product__reviews .spr-form-input::placeholder {
  color: var(--color-input-inactive-text);
}

#shopify-product-reviews .spr-form-input:hover,
.product__reviews .spr-form-input:hover {
  border-color: var(--color-border-darker);
}

#shopify-product-reviews .spr-form-input:focus,
.product__reviews .spr-form-input:focus {
  border-radius: 0;
  border-color: var(--color-border-darkest);
  outline: none;
}

#shopify-product-reviews .spr-form-review-body > .spr-form-input,
.product__reviews .spr-form-review-body > .spr-form-input {
  background-color: none;
  box-shadow: none;
  height: auto;
  padding: 0;
  line-height: 0;
}

#shopify-product-reviews
  .spr-form-review-body
  > .spr-form-input
  .spr-form-input-textarea,
.product__reviews
  .spr-form-review-body
  > .spr-form-input
  .spr-form-input-textarea {
  line-height: 1.71em;
  line-height: var(--line-height-body);
}

#shopify-product-reviews .spr-form-review-rating,
.product__reviews .spr-form-review-rating {
  border: 1px solid var(--color-border);
}

#shopify-product-reviews .spr-form-review-rating .spr-form-input,
.product__reviews .spr-form-review-rating .spr-form-input {
  display: flex;
  align-items: center;
  box-shadow: none;
  background: none;
  padding: calc(4px * 3) calc(4px * 5);
  padding: var(--spacing-small) var(--spacing-medium);
}

#shopify-product-reviews .spr-icon,
.product__reviews .spr-icon {
  font-size: 100%;
  margin-right: 2px;
}

#shopify-product-reviews .spr-icon-star,
#shopify-product-reviews .spr-icon-star-half-alt,
#shopify-product-reviews .spr-icon-star-empty,
.product__reviews .spr-icon-star,
.product__reviews .spr-icon-star-half-alt,
.product__reviews .spr-icon-star-empty {
  color: var(--color-accent);
}

#shopify-product-reviews .spr-review,
.product__reviews .spr-review {
  width: 100%;
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
  border-top: 0;
  border-top: 1px solid var(--color-border);
}

#shopify-product-reviews .spr-review:first-child,
.product__reviews .spr-review:first-child {
  margin-top: 0;
}

#shopify-product-reviews .spr-review-header-byline,
.product__reviews .spr-review-header-byline {
  font-style: normal;
  opacity: 1;
  font-size: var(--font-size-body-extra-small);
  line-height: 1.8em;
  line-height: var(--line-height-overline);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

#shopify-product-reviews .spr-review-header-byline strong,
.product__reviews .spr-review-header-byline strong {
  font-weight: normal;
}

#shopify-product-reviews .spr-review-content,
.product__reviews .spr-review-content {
  margin-top: 8px;
}

#shopify-product-reviews .spr-review-content-body,
.product__reviews .spr-review-content-body {
  color: var(--color-drawer-text);
  font-size: var(--font-size-body-base);
  line-height: 1.71em;
  line-height: var(--line-height-body);
}

#shopify-product-reviews .spr-form-message-error,
.product__reviews .spr-form-message-error {
  color: var(--color-error-message);
  background: none;
  padding-left: 0;
}

#shopify-product-reviews .spr-review-reportreview,
.product__reviews .spr-review-reportreview {
  text-decoration: underline;
  color: var(--color-accent);
  float: left;
  font-size: var(--font-size-body-base);
}

#shopify-product-reviews .spr-review-header-title,
.product__reviews .spr-review-header-title {
  font-family: var(--font-heading), sans-serif;
  font-weight: var(--font-heading-weight);
  font-style: var(--font-heading-style);
}

.spr-pagination {
  width: 100%;
  text-align: left;
  padding-top: calc(4px * 5) !important;
  padding-top: var(--spacing-medium) !important;
}

.spr-pagination div {
  text-align: left;
}

.spr-pagination-page,
.spr-pagination-prev,
.spr-pagination-next {
  position: static !important;
  display: inline-block;
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
  color: var(--color-accent);
  text-decoration: underline;
}

.spr-pagination-page.is-active,
.spr-pagination-prev.is-active,
.spr-pagination-next.is-active {
  color: var(--color-drawer-text);
  text-decoration: none;
  font-weight: normal !important;
}

.spr-form-contact-name,
.spr-form-contact-email,
.spr-form-review-rating,
.spr-form-review-title,
.spr-form-review-body {
  position: relative;
}

.spr-form-contact-name .spr-form-label,
.spr-form-contact-email .spr-form-label,
.spr-form-review-rating .spr-form-label,
.spr-form-review-title .spr-form-label,
.spr-form-review-body .spr-form-label {
  position: absolute;
  top: -10px;
  padding-right: 4px;
  padding-right: var(--spacing-unit);
  padding-left: 4px;
  padding-left: var(--spacing-unit);
  background-color: var(--color-drawer-bg);
}

.spr-form-review-rating {
  overflow: visible !important;
}

.spr-form-review-body .spr-form-input {
  border: 0 !important;
}

.spr-form-review-body .spr-form-input.spr-form-input-textarea {
  border: 1px solid var(--color-border) !important;
}

.spr-form-review-body .spr-form-input.spr-form-input-textarea:hover {
  border-color: var(--color-border-darker) !important;
}

.spr-form-review-body .spr-form-input.spr-form-input-textarea:focus {
  border-color: var(--color-border-darkest) !important;
}

@media (min-width: 60em) {
  .shopify-section #shopify-product-reviews .spr-header-title,
  .shopify-section .product__reviews .spr-header-title {
    margin-bottom: calc(4px * 3);
    margin-bottom: var(--spacing-small);
  }

  .shopify-section #shopify-product-reviews .spr-starrating,
  .shopify-section .product__reviews .spr-starrating {
    margin-bottom: 0;
  }

  .shopify-section #shopify-product-reviews .spr-summary-caption,
  .shopify-section .product__reviews .spr-summary-caption {
    margin-bottom: 0;
  }

  .shopify-section #shopify-product-reviews .spr-summary-actions,
  .shopify-section .product__reviews .spr-summary-actions {
    flex: 1 0 auto;
    display: flex;
    justify-content: flex-end;
    width: auto;
  }

  .shopify-section #shopify-product-reviews .spr-summary-actions-newreview,
  .shopify-section #shopify-product-reviews .spr-button-primary,
  .shopify-section .product__reviews .spr-summary-actions-newreview,
  .shopify-section .product__reviews .spr-button-primary {
    display: inline-flex;
    width: auto;
  }

  .shopify-section #shopify-product-reviews .spr-form form,
  .shopify-section .product__reviews .spr-form form {
    width: 65%;
  }

  .shopify-section #shopify-product-reviews .spr-review-header,
  .shopify-section #shopify-product-reviews .spr-review-content,
  .shopify-section #shopify-product-reviews .spr-review-footer,
  .shopify-section .product__reviews .spr-review-header,
  .shopify-section .product__reviews .spr-review-content,
  .shopify-section .product__reviews .spr-review-footer {
    width: 65%;
  }
}

model-viewer {
  width: 100%;
  height: 50vh;
}

.shopify-model-viewer-ui {
  height: 100%;
  transition: all 0.1s ease-in;
  opacity: 0;
  visibility: hidden;
}

.model-active .shopify-model-viewer-ui {
  opacity: 1;
  visibility: visible;
}

.shopify-model-viewer-ui__controls-area {
  position: absolute;
  width: 40px;
  bottom: 10px;
  right: 10px;
}

@media (min-width: 38em) {
  .shopify-model-viewer-ui__controls-area {
    width: 44px;
    bottom: 20px;
    right: 20px;
  }
}

.shopify-model-viewer-ui__button {
  display: inline-block;
  margin: 0;
  text-align: center;
  white-space: no-wrap;
  cursor: pointer;
  width: 40px;
  height: 40px;
  padding: 0;
  box-sizing: content-box;
  background: var(--color-bg);
  border-radius: 3px;
  border: 0px;
  color: var(--color-text);
  margin-top: 10px;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2), 0px 0px 2px rgba(0, 0, 0, 0.25);
  box-shadow: var(--shadow-1);
}

.shopify-model-viewer-ui__button svg {
  opacity: 0.6;
  transition: opacity 0.25s;
  display: block;
}

@media (min-width: 38em) {
  .shopify-model-viewer-ui__button {
    width: 44px;
    height: 44px;
  }

  .shopify-model-viewer-ui__button svg {
    width: 44px;
    height: 44px;
  }
}

.shopify-model-viewer-ui__button:hover svg,
.shopify-model-viewer-ui__button:focus svg {
  opacity: 0.5;
  transition: opacity 0.25s;
}

.shopify-model-viewer-ui__poster-control-icon,
.shopify-model-viewer-ui__control-icon {
  width: 40px;
  height: 40px;
}

@media (min-width: 38em) {
  .shopify-model-viewer-ui__poster-control-icon,
  .shopify-model-viewer-ui__control-icon {
    width: 40px;
    height: 40px;
  }
}

.shopify-model-viewer-ui--fullscreen
  .shopify-model-viewer-ui__control-icon--enter-fullscreen {
  display: none !important;
}

.shopify-model-viewer-ui__control-icon--exit-fullscreen {
  display: none !important;
}

.shopify-model-viewer-ui--fullscreen
  .shopify-model-viewer-ui__control-icon--exit-fullscreen {
  display: block !important;
}

.shopify-model-viewer-ui__button--poster {
  position: absolute;
  width: 40px;
  top: 0px;
  right: 10px;
}

@media (min-width: 38em) {
  .shopify-model-viewer-ui__button--poster {
    width: 44px;
    top: 20px;
    right: 20px;
  }
}

.shopify-model-viewer-ui__sr-only {
  visibility: hidden;
  position: absolute;
}

.shopify-model-viewer-ui--fullscreen model-viewer {
  height: 100vh;
}

.model-poster {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  display: block;
  width: 100%;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  transition: all 0.1s ease-in;
}

.model-active .model-poster {
  opacity: 0;
  visibility: hidden;
}

.model-poster .media-badge {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: space-around;
  opacity: 0.7;
}

.model-poster:focus {
  outline: auto;
}

.model-poster:focus .media-badge.in-poster svg {
  outline: auto;
  border: 1px solid black;
}

.model-poster:focus .media-badge,
.model-poster:hover .media-badge {
  opacity: 1;
}

.model-poster svg {
  border-radius: 3px;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2), 0px 0px 2px rgba(0, 0, 0, 0.25);
  box-shadow: var(--shadow-1);
}

.model-poster svg .bg {
  fill: var(--color-bg);
  stroke: var(--color-bg);
}

.model-poster svg path {
  opacity: 0.6;
  transition: opacity 0.25s;
}

.model-poster svg:hover path {
  opacity: 1;
  transition: opacity 0.25s;
}

.shopify-model-viewer-ui__button--poster {
  display: none !important;
}

.shopify-challenge__container {
  width: 100%;
  max-width: 460px;
  margin: calc(4px * 7) auto;
  margin: var(--spacing-large) auto;
  padding: calc(4px * 10);
  padding: var(--spacing-extra-large);
  text-align: center;
}

.shopify-challenge__container ul {
  margin: 0;
  padding: 0;
}

.shopify-challenge__container .shopify-challenge__message {
  margin-top: 0;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.shopify-challenge__container #g-recaptcha {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.shopify-challenge__container .shopify-challenge__button {
  font-family: var(--font-body);
  font-weight: var(--font-body-weight);
  font-size: var(--font-size-button);
  letter-spacing: var(--font-letter-spacing-button);
  text-align: center;
  height: 48px;
  height: var(--height-button);
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.81em;
  text-transform: var(--button-text-transform);
  background-color: var(--color-primary-button-bg);
  color: var(--color-bg);
  border: none;
  border-radius: var(--button-border-radius);
  width: auto;

  margin-top: calc(4px * 5);

  margin-top: var(--spacing-medium);
  opacity: 1;
  transition: color 0.25s ease;
}

.shopify-challenge__container .shopify-challenge__button:hover {
  background-color: var(--color-primary-button-active-bg);
  transition: background-color 0.25s ease;
}

.shopify-challenge__container .shopify-challenge__button:disabled {
  opacity: 0.4;
  cursor: default;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation
  .animation--section-introduction-background {
  opacity: 0;
  transition: opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: opacity var(--duration-normal) var(--easing);
  transition-delay: calc(67ms * 0);
  transition-delay: calc(
    var(--delay-normal) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation
  .animation--section-introduction
  > * {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.is-visible
  .animation--section-introduction-background {
  opacity: 1;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.is-visible
  .animation--section-introduction
  > * {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion) .animation .image.image--animate {
  overflow: hidden;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation
  .image.image--animate
  .image__img {
  transform: scale(1.1);
  opacity: 0;
  transition: transform 500ms cubic-bezier(0.33, 0, 0, 1),
    opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-normal) var(--easing),
    opacity var(--duration-normal) var(--easing);
  transition-delay: calc(67ms * 0);
  transition-delay: calc(
    var(--delay-normal) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion) .animation .placeholder-svg {
  opacity: 0;
  transition: opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: opacity var(--duration-normal) var(--easing);
  transition-delay: calc(67ms * 0);
  transition-delay: calc(
    var(--delay-normal) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .is-visible
  .image
  .image__img.lazyloaded {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion) .is-visible .placeholder-svg {
  opacity: 1;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.is-visible
  .media--animate[data-media-type="model"],
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.is-visible
  .media--animate[data-media-type="video"],
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.is-visible
  .media--animate[data-media-type="external_video"] {
  opacity: 1;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation
  .media--animate[data-media-type="model"],
html:not(.no-js):not(.prefers-reduced-motion)
  .animation
  .media--animate[data-media-type="video"],
html:not(.no-js):not(.prefers-reduced-motion)
  .animation
  .media--animate[data-media-type="external_video"] {
  opacity: 0;
  transition: opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: opacity var(--duration-normal) var(--easing);
  transition-delay: calc(67ms * 0);
  transition-delay: calc(
    var(--delay-normal) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collapsible-row-list.is-visible
  .collapsible-row-list-item {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collapsible-row-list
  .collapsible-row-list-item {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection-list.is-visible
  .collection-list__slide
  .collection-list__title,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection-list.is-visible
  .collection-list__slide
  .collection-list__product-count {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection-list
  .collection-list__slide
  .collection-list__title,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection-list
  .collection-list__slide
  .collection-list__product-count {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection-list-grid.is-visible
  .collection-list-grid__collection
  .collection-list-grid__title,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection-list-grid.is-visible
  .collection-list-grid__collection
  .collection-list-grid__product-count {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection-list-grid
  .collection-list-grid__collection
  .collection-list-grid__title,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection-list-grid
  .collection-list-grid__collection
  .collection-list-grid__product-count {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation:not(.animation--collection).is-visible
  .product-item {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation:not(.animation--collection)
  .product-item {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--gallery.is-visible
  .gallery__description {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--gallery
  .gallery__description {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--image-with-text-split.is-visible
  .image-with-text-split__featured-content,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--image-with-text-split.is-visible
  .image-with-text-split__image-wrapper
  .content-overlay__subheading {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--image-with-text-split
  .image-with-text-split__featured-content,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--image-with-text-split
  .image-with-text-split__image-wrapper
  .content-overlay__subheading {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--location.location--has-image.is-visible
  .location__map-container.active {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--location.location--has-image
  .location__map-container {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--location:not(.location--has-image).is-visible
  .location__map-container.active
  .location__map-element-wrapper {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--location:not(.location--has-image)
  .location__map-container
  .location__map-element-wrapper {
  transform: scale(1.1);
  opacity: 0;
  transition: transform 500ms cubic-bezier(0.33, 0, 0, 1),
    opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-normal) var(--easing),
    opacity var(--duration-normal) var(--easing);
  transition-delay: calc(67ms * 0);
  transition-delay: calc(
    var(--delay-normal) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--location.is-visible
  .location__map-container.active
  + .location__map-cta {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--location.is-visible.location--has-image
  .location__map-cta {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--location
  .location__map-cta {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mosaic-grid.is-visible
  .mosaic-grid__item,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mosaic-grid.is-visible
  .mosaic-grid__item
  + .mosaic-grid__text-container {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mosaic-grid
  .mosaic-grid__item,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mosaic-grid
  .mosaic-grid__item
  + .mosaic-grid__text-container {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--quote
  .quote__item
  > * {
  opacity: 0;
  transform: translateX(-20px);
  transition: transform 500ms cubic-bezier(0.33, 0, 0, 1),
    opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-normal) var(--easing),
    opacity var(--duration-normal) var(--easing);
  transition-delay: calc(67ms * 0 + 500ms), calc(67ms * 0);
  transition-delay: calc(
      var(--delay-normal) * var(--delay-offset-multiplier, 0) +
        var(--duration-normal)
    ),
    calc(var(--delay-normal) * var(--delay-offset-multiplier, 0));
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--quote.is-visible
  .quote__item.is-selected
  > * {
  opacity: 1;
  transform: unset;
  transition-delay: calc(67ms * 0);
  transition-delay: calc(
    var(--delay-normal) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--shoppable.is-visible
  .shoppable-item__hotspot-position {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--shoppable
  .shoppable-item__hotspot-position {
  transform: scale(0.9);
  opacity: 0;
  transition: transform 500ms cubic-bezier(0.33, 0, 0, 1),
    opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-normal) var(--easing),
    opacity var(--duration-normal) var(--easing);
  transition-delay: calc(67ms * 0);
  transition-delay: calc(
    var(--delay-normal) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--testimonials.is-visible
  .testimonials__slide {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--testimonials
  .testimonials__slide {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--text-columns-with-images.is-visible
  .text-columns__feature {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--text-columns-with-images
  .text-columns__feature {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--video-hero.is-visible
  .video-hero__video {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--video-hero
  .video-hero__video {
  transform: scale(1.3);
  opacity: 0;
  transition: transform 500ms cubic-bezier(0.33, 0, 0, 1),
    opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-normal) var(--easing),
    opacity var(--duration-normal) var(--easing);
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--video-hero
  .video-hero__image {
  --delay-offset-multiplier: 3;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--slideshow
  .slideshow__content-inner-container--has-background {
  opacity: 0;
  transition: opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: opacity var(--duration-normal) var(--easing);
  transition-delay: calc(67ms * 0);
  transition-delay: calc(
    var(--delay-normal) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--slideshow
  .slideshow__content-inner-container
  > * {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--slideshow.is-visible
  .is-selected
  .slideshow__content-inner-container--has-background {
  opacity: 1;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--slideshow.is-visible
  .is-selected
  .slideshow__content-inner-container
  > * {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--slideshow-split.is-visible
  .image,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--slideshow-split.is-visible
  .slideshow-split__video {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--slideshow-split
  .image,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--slideshow-split
  .slideshow-split__video {
  transform: scale(1.3);
  opacity: 0;
  transition: transform 500ms cubic-bezier(0.33, 0, 0, 1),
    opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-normal) var(--easing),
    opacity var(--duration-normal) var(--easing);
  transition-delay: calc(67ms * 0);
  transition-delay: calc(
    var(--delay-normal) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--slideshow-split
  .slideshow-split__slide--has-video
  .image {
  --delay-offset-multiplier: 3;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--blog.is-visible
  .blog__article-content,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--blog.is-visible
  .blog__heading-inner,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--blog.is-visible
  .blog__pagination {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--blog
  .blog__heading-inner,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--blog
  .blog__pagination {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--blog
  .blog__article-content {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__header
  > * {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__header.is-visible
  > * {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__image
  .image__img {
  transition-duration: 1200ms;
  transition-duration: var(--duration-slow);
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__content,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__content-share,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__tags,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__pagination,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__comments {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__content.is-visible,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__content-share.is-visible,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__tags.is-visible,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__pagination.is-visible,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--article
  .article__comments.is-visible {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection
  .animation--collection-products-hide {
  opacity: 0;
  transition: opacity 100ms;
  transition: opacity var(--duration-ultra-fast);
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection
  .product-item {
  opacity: 0;
  transform: translateY(40px);
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection
  .collection-top-bar__filters,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection
  .collection__sidebar {
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection.is-visible
  .collection-top-bar__filters,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection.is-visible
  .collection__sidebar {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--collection.is-visible
  .product-item.animation--item-revealed {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-fast);
  opacity: 0;
  transform: translateY(40px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--list-collections.is-visible
  .list-collections__heading,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--list-collections.is-visible
  .list-collections--columns__collection {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--list-collections
  .list-collections__heading {
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--list-collections
  .list-collections--columns__collection {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-fast);
  opacity: 0;
  transform: translateY(40px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--page
  .page__content,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--page
  .contact__text,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--page
  .contact__heading,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--page
  .contact__form
  > * {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(10px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--page
  .about__block {
  overflow: hidden;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--page
  .about__block
  .about__block-video {
  transform: scale(1.1);
  opacity: 0;
  transition: transform 500ms cubic-bezier(0.33, 0, 0, 1),
    opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-normal) var(--easing),
    opacity var(--duration-normal) var(--easing);
  transition-delay: calc(67ms * 0);
  transition-delay: calc(
    var(--delay-normal) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--page.is-visible
  .page__content,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--page.is-visible
  .contact__text,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--page.is-visible
  .contact__heading,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--page.is-visible
  .contact__form
  > * {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--page.is-visible
  .about__block
  .about__block-video {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--password
  .password__header
  > .overline,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--password
  .password__heading,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--password
  .password__subheading,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--password
  .password__text,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--password
  .password__notify-form,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--password
  .password__share {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--password.is-visible
  .password__header
  > .overline,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--password.is-visible
  .password__heading,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--password.is-visible
  .password__subheading,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--password.is-visible
  .password__text,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--password.is-visible
  .password__notify-form,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--password.is-visible
  .password__share {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--search
  .animation--search-items-hide {
  opacity: 0;
  transition: opacity 100ms;
  transition: opacity var(--duration-ultra-fast);
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--search
  .search-template__item {
  opacity: 0;
  transform: translateY(40px);
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--search
  .search-template__heading
  > *,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--search
  .search-template__filter-buttons,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--search
  .search-template__top-row,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--search
  .search-template__pagination {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--search.is-visible
  .search-template__heading
  > *,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--search.is-visible
  .search-template__filter-buttons,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--search.is-visible
  .search-template__top-row,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--search.is-visible
  .search-template__pagination {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--search.is-visible
  .search-template__item.animation--item-revealed {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-fast);
  opacity: 0;
  transform: translateY(40px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--drawer-menu.visible
  .drawer-menu__contents,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--drawer-menu.visible
  .drawer-menu__footer {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--drawer-menu
  .drawer-menu__contents,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--drawer-menu
  .drawer-menu__footer {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--cart-drawer.animation--revealed
  .quick-cart__items
  > *,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--cart-drawer.animation--revealed
  .quick-cart__footer {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--cart-drawer
  .quick-cart__items
  > *,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--cart-drawer
  .quick-cart__footer {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--filter-flyout.active
  .collection-flyout__content,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--filter-flyout.active
  .collection-flyout__footer {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--filter-flyout
  .collection-flyout__content,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--filter-flyout
  .collection-flyout__footer {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mega-navigation.animation--revealed
  .mega-navigation__list-parent,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mega-navigation.animation--revealed
  .mega-navigation__featured-content,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mega-navigation.animation--revealed
  .mega-navigation__feature-text {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mega-navigation.animation--revealed
  .image
  .image__img.lazyloaded {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mega-navigation
  .mega-navigation__list-parent,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mega-navigation
  .mega-navigation__featured-content {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mega-navigation
  .mega-navigation__feature-text {
  opacity: 0;
  transition: opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: opacity var(--duration-normal) var(--easing);
  transition-delay: calc(67ms * 0);
  transition-delay: calc(
    var(--delay-normal) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mega-navigation
  .image {
  overflow: hidden;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--mega-navigation
  .image
  .image__img {
  transform: scale(1.1);
  opacity: 0;
  transition: transform 500ms cubic-bezier(0.33, 0, 0, 1),
    opacity 500ms cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-normal) var(--easing),
    opacity var(--duration-normal) var(--easing);
  transition-delay: calc(67ms * 0);
  transition-delay: calc(
    var(--delay-normal) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--quick-add.animation--revealed
  .quick-add__product,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--quick-add.animation--revealed
  .product-form__controls-group,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--quick-add.animation--revealed
  .product__policies,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--quick-add.animation--revealed
  .store-availability-container__wrapper {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--quick-add
  .quick-add__product,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--quick-add
  .product-form__controls-group,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--quick-add
  .product__policies,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--quick-add
  .store-availability-container__wrapper {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--store-availability.animation--revealed
  .store-availability-flyout__product,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--store-availability.animation--revealed
  .store-availability__store-list-title,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--store-availability.animation--revealed
  .store-availability-list__item {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--store-availability
  .store-availability-flyout__product,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--store-availability
  .store-availability__store-list-title,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--store-availability
  .store-availability-list__item {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--popup.animation--revealed
  .popup__heading,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--popup.animation--revealed
  .popup__message,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--popup.animation--revealed
  .popup__form,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--popup.animation--revealed
  .popup__verify-age,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--popup.animation--revealed
  .popup__decline-age,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--popup.animation--revealed
  .popup__footer-text {
  opacity: 1;
  transform: unset;
}

html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--popup
  .popup__heading,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--popup
  .popup__message,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--popup
  .popup__form,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--popup
  .popup__verify-age,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--popup
  .popup__decline-age,
html:not(.no-js):not(.prefers-reduced-motion)
  .animation.animation--popup
  .popup__footer-text {
  --delay-amount: var(--delay-normal);
  --duration-amount: var(--duration-normal);
  opacity: 0;
  transform: translateY(20px);
  transition: transform var(--duration-amount) cubic-bezier(0.33, 0, 0, 1),
    opacity var(--duration-amount) cubic-bezier(0.33, 0, 0, 1);
  transition: transform var(--duration-amount) var(--easing),
    opacity var(--duration-amount) var(--easing);
  transition-delay: calc(var(--delay-amount) * 0);
  transition-delay: calc(
    var(--delay-amount) * var(--delay-offset-multiplier, 0)
  );
}

@media (min-width: 768px) {
  .slideshow__slide {
    padding-top: unset !important;
    height: auto !important;
    display: flex !important;
    justify-content: center;
    align-items: center;
  }

  .slideshow__image--desktop {
    position: relative !important;
    width: 100% !important;
    height: auto !important;
  }

  .slideshow__image--desktop .image__img {
    object-fit: contain !important;
    width: 100% !important;
    height: auto !important;
    display: block;
    position: relative !important;
  }

  .slideshow__content-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
  }
}

/* A little bit of color to the discounted products — COLLECTION/LISTING */
.price.price--listing.price--on-sale .price-item--sale {
  background: -webkit-linear-gradient(transparent 60%, #B7FF5A 0) !important;
  background: linear-gradient(to bottom, transparent 60%, #B7FF5A 0) !important;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  display: inline !important;
  padding: 0 .12em;
}
/* Don't highlight unit price in listing */
.price.price--listing.price--on-sale .price-item--sale [data-unit-price],
.price.price--listing.price--on-sale .price-item--sale [data-unit-base] {
  background: none !important;
}

/* A little bit of color to the discounted products — PDP (structure in your file) */
.product__price s[data-compare-price]:not(.hide) + span[data-product-price] {
  background: -webkit-linear-gradient(transparent 60%, #B7FF5A 0) !important;
  background: linear-gradient(to bottom, transparent 60%, #B7FF5A 0) !important;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  display: inline !important;
  padding: 0 .12em;
}
/* Don't highlight unit price on PDP */
.product__price s[data-compare-price]:not(.hide) + span[data-product-price] [data-unit-price],
.product__price s[data-compare-price]:not(.hide) + span[data-product-price] [data-unit-base] {
  background: none !important;
}

.metafield-button{
  text-align: center;
    padding: 14px 16px;
    border-radius: 10px;
    display: flex;
    font-size: 14px;
    line-height: 1.3;
    font-weight: bold;
    margin-top: 15px;
}

.auto-add-checkbox label{
  display: flex;
  align-items: center;
      gap: 10px;
    color: rgb(61, 26, 41);
    text-transform: uppercase;
    padding: 10px 0;
    cursor: pointer;
}
.auto-add-checkbox label > input{
  width: 18px !important;
  height: 18px !important;
}
.has-external-link{
  display: none;
}
@media (max-width: 500px){
  .grid-display.grid-display--one-quarter{
    grid-template-columns: repeat(2, calc(50% - 10px)) !important;
  }
  .grid-display__item{
    grid-area: span 1 / span 1;
  }
}
.quick-cart__compare-price{
      font-size: 12px;
    text-decoration: line-through;
    margin-right: 8px;
}
/* .has-compare-price .quick-cart__product-price-value .quick-cart__price > lomoney span.money {
    position: relative;
}

.has-compare-price .quick-cart__product-price-value .quick-cart__price > lomoney span.money::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 40%;
    background-color: #b7ff5a;
    z-index: -1;
} */
.quick-cart__price{
    position: relative;
    display: inline-block;

}
.quick-cart__price.no-compare-price::after{
  all: unset !important;
}
.quick-cart__price::after{
      content: "";
    position: absolute;
    bottom: 2px;
    left: 0;
    width: 100%;
    height: 40%;
    background-color: #b7ff5a;
    z-index: -1;
}
.t-subdued{
  margin-right: .5em;
}

.product-item__details .money.sale{
  position:relative;
}
.product-item__details .money.sale::after{
  content:"";
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:40%;
  background-color:#b7ff5a;
  z-index:-1;
}
.t-subdued.mb_price{
color: var(--color-text-meta);
}
.price__item__mb.sale{
  position:relative;
  display: inline-block !important;
  z-index: 1;
    width: max-content;
    color: #7a636d;
}
.price__item__mb.sale::after{
  content:"";
  position:absolute;
  bottom:2px;
  left:0;
  width:100%;
  height:30%;
  background-color:#b7ff5a;
  z-index:-1;
}
/* .nav__link.active{
  opacity: 1 !important;
  font-weight: bold !important;
  
} */
.nav__link.nav__menu--active{
    opacity: 1 !important;
  font-weight: bold !important;
  text-decoration: underline;
}
.nav__link.active{
      opacity: 1 !important;
  font-weight: bold !important;
  text-decoration: underline;
}
.date_estimated{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.estimated__delivery, .estimate_time{
  font-size: 12px;
}
.nav__item-parent:has(.active) .nav__link.nav__link-parent{
  font-weight: bold;
}

.nav__link, .nav__item-primary{
  position: relative;
}
.nav__link::after{
  content: "";
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 1px;
    background:rgb(0, 0, 0);
    transform: scaleX(0);
    transform-origin: right;
    transition: transform 0.2s;
}
.nav__link.nav__item-primary::after{
  bottom: 12px !important;
}
.nav__link:hover::after {
  transform: scaleX(1); 
  transform-origin: left; 
}
.collection__infinite-trigger:has(.main[href]) .second {
  display: none;
}

.collection__infinite-trigger:not(:has(.main[href])) .main {
  display: none;
}
@media (max-width: 768px){

#BackToTop{
  display: none;
}
#chat-button{
      right: 10px !important;
    left: unset !important;
    bottom: 80px !important;
    z-index: 298 !important;
}
.accessease-widget-bottomleft #accessease-icon{
  bottom: 80px !important;
  z-index: 298 !important;
}
}
.pagi__dots{
  display: none;
}
@media (max-width: 768px){
  .pagi__dots{
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 10px;
  gap: 7px
}
.pagi_dot{
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #d0d0d0;
  cursor: pointer;
}
.pagi_dot.active{
  background-color: black;
}
}
.second::before{
  border-radius: 9999px !important;
}

                      .size-guide-block {
                        padding: 14px 0 0 0;
                      }
                      .guide__link{
                            display: flex
                      ;
                          align-items: center;
                          gap: 5px;
                      }
                      a.heading-two{
                        position: relative;
                      }
                      a.heading-two::after{
                        content: "";
                          position: absolute;
                          left: 0;
                          bottom: 3px;
                          width: 100%;
                          height: 1px;
                          background:rgb(0, 0, 0);
                          transform: scaleX(0);
                          transform-origin: right;
                          transition: transform 0.2s;
                      }
                      a.heading-two:hover::after {
                        transform: scaleX(1);
                        transform-origin: left;
                      }
                      .size-guide-inner {
                        display: flex;
                        align-items: center;
                        column-gap: 10px;
                        flex-wrap: wrap;
                      }

                      .top-headings {
                        display: flex;
                        gap: 8px;
                        align-items: center;
                      }

                      .heading-one,
                      .heading-two {
                        {% comment %} font-size: 14px;
                        font-weight: 600;
                        margin: 4px 0; {% endcomment %}
                        font-family: Lora, serif, sans-serif;
                      font-size: 16px;
                      font-weight: 400;
                      line-height: 22.1px;
                      color: rgb(61, 26, 41);
                        text-transform: capitalize;
                      }
                      .heading-one{
                       text-decoration: underline;
                      }
                      .heading-two {
                        cursor: pointer;
                      }

                      .icon-wrapper img {
                        display: block;
                      }

                      .bottom-heading {
                        width: 100%;
                        font-size: 12px;
                        margin-top: 0px;
                      }
                      .product-form__option-label-wrapper{
                        justify-content: space-between !important;
                      }