/** Shopify CDN: Minification failed

Line 1469:2 Expected identifier but found "*"
Line 17545:0 Unexpected "{"
Line 17546:0 Expected identifier but found "."

**/
/* Core */

: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-exit-intent: 500;
  --z-index-lightbox: 600;
  --z-index-announcement-bar: 100;
  --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;
}
@font-face {
    font-family: "Assistant";
    src: url("/cdn/shop/files/Domaine_Sans_Display_Regular_Regular.ttf?v=1635234783") format("opentype");
}
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(var(--header-height) - var(--announcement-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 (min-width: 38em) {

.grid-display.grid-display--one-half {
      grid-template-columns: repeat(2, 1fr)
  }
    }

@media (min-width: 38em) and (max-width: 60em) {

.grid-display.grid-display--one-third {
      grid-template-columns: repeat(2, 1fr)
  }
    }

@media (min-width: 60em) {

.grid-display.grid-display--one-third {
      grid-template-columns: repeat(3, 1fr)
  }
    }

@media (min-width: 38em) and (max-width: 60em) {

.grid-display.grid-display--one-quarter {
      grid-template-columns: repeat(3, 1fr)
  }
    }

@media (min-width: 60em) {

.grid-display.grid-display--one-quarter {
      grid-template-columns: repeat(4, 1fr)
  }
    }

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

/* Only show when JS is not supported */

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

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

/* Only show when JS is supported */

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

/* Only show when browser cookies are not supported */

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

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

/* Only show when browser cookies are supported */

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

.hide {
  /* stylelint-disable declaration-no-important */
  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 {
    /* Hide section borders */
    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);
      }

.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 .bttn--secondary {
      color: var(--color-contrast-text);
      border-color: var(--color-contrast-border);
    }

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

.section.section--contrast .bttn--secondary:disabled:hover {
          color: var(--color-contrast-text);
        }

.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--full-width {
    /* Hide section borders */
    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(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-display {
  font-size: var(--font-size-heading-display);
  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-display {
    font-size: var(--font-size-heading-1-small);
    line-height: 1.35em;
    line-height: var(--line-height-heading-small)
}
  }

.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) {

.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-display,
  .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;
}

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

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

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

.rte .accordion {
    background-color: var(--color-contrast-bg);
    padding: calc(4px * 5) calc(4px * 5) 4px;
    padding: var(--spacing-medium) var(--spacing-medium) var(--spacing-unit);
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
    color: var(--color-contrast-text);
  }

.rte .accordion__heading {
    font-weight: var(--font-body-bold-weight);
    margin-bottom: calc(4px * 2);
    margin-bottom: calc(var(--spacing-unit) * 2);
  }

.rte .accordion__group {
    position: relative;
    border-bottom: 1px solid var(--color-contrast-border);
  }

.rte .accordion__group:after {
      content: '';
      position: absolute;
      right: 0;
      top: calc(4px * 7);
      top: var(--spacing-large);
      display: block;
      height: 10px;
      width: 10px;
      transform: rotate(0deg);
      transition: transform 0.3s ease;
      pointer-events: none;
      background-color: var(--color-contrast-icon);
    }

.active .rte .accordion__group:after {
        top: 300px;
      }

.rte .accordion__group[data-open='true']:after {
        transform: rotate(90deg);
      }

.rte .accordion__group:last-of-type {
      border-bottom: 0;
    }

.rte .accordion__label {
    display: block;
    cursor: pointer;
    padding-top: calc(4px * 4);
    padding-top: calc(var(--spacing-unit) * 4);
    padding-bottom: calc(4px * 4);
    padding-bottom: calc(var(--spacing-unit) * 4);
    text-decoration: none;
    color: var(--color-contrast-text);
  }

.rte .accordion__text {
    display: none;
    overflow: hidden;
    padding-bottom: 20px;
  }

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

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

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

/*  Allow table to scroll for tables in the RTE since we don't know
    how many columns they will contain. Class added by JS. */

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

.rte-table table {
    opacity: 1;
  }

/*  This class is wrapped around YouTube/Vimeo embeds in the RTE
    to make them responsive and prevent layout breaking */

.rte__video-wrapper {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  height: 0;
  height: auto;
  padding-bottom: 56.25%;
}

.rte__video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

/*  This class is wrapped around tables in the RTE
    to prevent layout breaking with a scrollable parent */

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

/* Force option color (affects IE only) */

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

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: 0;
    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;
  }

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

.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 {
  color: var(--color-sale-badge);
}

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

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

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

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

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

/* @import 'debug.css'; */

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

/*
  This will set table to full width and then
  all cells will be equal width
*/

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

/* 1. Fix for Chrome 44 bug.
 * https://code.google.com/p/chromium/issues/detail?id=506893 */

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

.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; /* 1 */
    min-height: 0; /* 1 */
  }
  .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; /* 1 */
    min-height: 0; /* 1 */
  }
  .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; /* 1 */
    min-height: 0; /* 1 */
  }
  .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);
}

/* Max Width Percentages */

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

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

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

/* Max Width Scale */

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

/* Max Width String Properties */

.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 is limited to ~66 characters */

.measure {
  max-width: 34em;
}

/* Measure is limited to ~80 characters */

.measure-wide {
  max-width: 40em;
}

/* Measure is limited to ~45 characters */

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

/* Frame sections */

.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.footer--hide-titles .footer__col-title {
      display: none;
    }

.footer.footer--hide-titles .footer__col-text p:first-of-type {
          margin-top: 0;
        }

.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: 35px;
    height: 22px;
    margin-right: 6px;
  }

.footer__payment-icon:last-of-type {
      margin-right: 0;
    }

.footer__payment-icon svg {
      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;
    }

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

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

@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 {
  grid-column: span 2;
  display: flex;
  flex-direction: column;
  width: 100%;
}

@media (min-width: 60em) {

.footer__newsletter {
    grid-row: 1;
    grid-column: 5 / span 2
}
  }

.footer__newsletter .input {
    background-color: var(--color-footer-bg);
  }

.footer__signup-text {
  width: 100%;
}

.footer__input-wrap {
  width: 100%;
}

@media (max-width: 60em) {

.footer__input-wrap {
    max-width: 350px
}
  }

.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__cols {
  display: flex;
  flex-wrap: wrap;
}

@media (min-width: 38em) {

.footer__cols {
    display: grid;
    grid-column-gap: calc(4px * 10);
    -moz-column-gap: calc(4px * 10);
         column-gap: calc(4px * 10);
    grid-column-gap: var(--spacing-extra-large);
    -moz-column-gap: var(--spacing-extra-large);
         column-gap: var(--spacing-extra-large);
    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 (min-width: 38em) and (max-width: 60em) {

.footer__cols {
    grid-template-columns: repeat(4, 1fr)
}
  }

@media (min-width: 60em) {

.footer__cols {
    grid-template-columns: repeat(6, 1fr)
}
  }

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

.footer__col-text,
.footer__col-list,
.footer__signup-text {
  line-height: 1.8em;
}

.footer__col-text {
  grid-column: span 2;
  width: 100%;
}

@media (max-width: 38em) {

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

.footer__col-text p {
    margin-bottom: 0;
  }

.footer__col-text a:hover {
      color: var(--color-accent);
      opacity: 0.5;
    }

.footer__col-text .rte a {
      color: inherit;
    }

@media (max-width: 38em) {

.footer__col-list {
    flex: 1;
    order: -1;
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
    padding-right: calc(4px * 10);
    padding-right: var(--spacing-extra-large)
}
  }

@media (min-width: 38em) {

.footer__col-list {
    width: auto
}
  }

.footer__col-list .list-item:first-of-type {
      margin-top: 0;
    }

.footer__col-list a:hover,
    .footer__col-list 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 {
    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 {
  --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);
  }

.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
        top: 20px
    }
      }

.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
        top: 20px

    }
      }

@media (min-width: 60em) {

.header.header--always-mobile .header__icon-wrapper {
        flex: 1
        top: 20px
    }
      }

@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-center:not(.header--detect-menu-length) .nav--depth-1 {
          display: flex;
          flex-wrap: wrap;
          justify-content: center;
          text-align: center
      }
        }

@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(var(--header-height) - var(--announcement-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__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);
}

@media (min-width: 38em) {

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

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

@media (min-width: 60em) {

.header--default .header__nav {
      flex: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden
  }
    }

@media (min-width: 60em) {

.header--detect-menu-length .header__nav {
      white-space: nowrap
  }
    }

.header__nav .nav--depth-1 {
    overflow-x: auto;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* Internet Explorer 10+ */
  }

.header__nav .nav--depth-1::-webkit-scrollbar {
    /* WebKit */
    width: 0;
    height: 0;
  }

.header__logo-text {
  font-family: var(--font-logo);
  font-weight: var(--font-logo-weight);
  font-style: var(--font-logo-style);
}

@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__menu-icon:hover {
    opacity: 0.5;
  }

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

.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__icon--search,
  .header__icon--account,
  .header__icon--currency,
  .header__icon--language {
    display: none;
  }

@media (min-width: 60em) {

.header--default .header__icon--search, .header--default .header__icon--account, .header--default .header__icon--currency, .header--default .header__icon--language {
        display: inline-block;
        width: var(--header-icon-width)
    }
      }

.quick-search__trigger {
  height: 44px;
  height: var(--height-nav-button);
  display: flex;
  align-items: center;
  transition: opacity 0.25s ease-in-out;
}

.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__icon--account a:hover {
      opacity: 0.5;
    }

.nav .nav__submenu {
    width: 200px;
    position: absolute;
    top: calc(var(--header-height) - var(--announcement-height));
    display: none;

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

.nav .nav__submenu.visible {
      display: block;
    }

.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 a {
    transition: opacity 0.25s ease-in-out;
  }

.nav a:hover {
      opacity: 0.5;
    }

.nav .active {
    opacity: 0.5;
  }

@media (min-width: 60em) {

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

.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 {
    width: 200px;
    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;
  }

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

.header-transparent .header-container,
  .header-sticky .header-container {
    position: relative;
  }

.header-container.is-sticky {
    position: sticky;
  }

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

@-webkit-keyframes intentOutFromBottom {
  from {
    transform: translateY(0px);
    opacity: 1;
  }
  to {
    transform: translateY(calc(4px * 5));
    transform: translateY(var(--spacing-medium));
    opacity: 0;
  }
}

@keyframes intentOutFromBottom {
  from {
    transform: translateY(0px);
    opacity: 1;
  }
  to {
    transform: translateY(calc(4px * 5));
    transform: translateY(var(--spacing-medium));
    opacity: 0;
  }
}

@-webkit-keyframes intentInFromBottom {
  from {
    transform: translateY(calc(4px * 5));
    transform: translateY(var(--spacing-medium));
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes intentInFromBottom {
  from {
    transform: translateY(calc(4px * 5));
    transform: translateY(var(--spacing-medium));
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@-webkit-keyframes intentOutFromTop {
  from {
    transform: translateY(0px);
    opacity: 1;
  }
  to {
    transform: translateY(calc(calc(4px * 5) * -1));
    transform: translateY(calc(var(--spacing-medium) * -1));
    opacity: 0;
  }
}

@keyframes intentOutFromTop {
  from {
    transform: translateY(0px);
    opacity: 1;
  }
  to {
    transform: translateY(calc(calc(4px * 5) * -1));
    transform: translateY(calc(var(--spacing-medium) * -1));
    opacity: 0;
  }
}

@-webkit-keyframes intentInFromTop {
  from {
    transform: translateY(calc(calc(4px * 5) * -1));
    transform: translateY(calc(var(--spacing-medium) * -1));
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes intentInFromTop {
  from {
    transform: translateY(calc(calc(4px * 5) * -1));
    transform: translateY(calc(var(--spacing-medium) * -1));
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

#shopify-section-exit-intent,
.exit-intent {
  position: fixed;
  z-index: 500;
  z-index: var(--z-index-exit-intent);
}

#shopify-section-exit-intent {
  top: 0;
}

.exit-intent {
  position: fixed;
  top: var(--header-offset-height);
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  pointer-events: none;
  opacity: 0;
  padding: 0;
  visibility: hidden;
}

@media (min-width: 38em) {

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

.header-stuck .exit-intent {
    top: calc(var(--header-height) - var(--announcement-height));
  }

.exit-intent.animating {
    visibility: visible;
  }

.exit-intent.visible {
    opacity: 1;
    -webkit-animation: 0.25s ease-in-out intentInFromTop;
            animation: 0.25s ease-in-out intentInFromTop;
    -webkit-animation: 0.25s var(--ease) intentInFromTop;
            animation: 0.25s var(--ease) intentInFromTop;
  }

.exit-intent.visible .exit-intent__content {
      pointer-events: auto;
    }

.exit-intent.hidden {
    -webkit-animation: 0.25s ease-in-out intentOutFromTop;
            animation: 0.25s ease-in-out intentOutFromTop;
    -webkit-animation: 0.25s var(--ease) intentOutFromTop;
            animation: 0.25s var(--ease) intentOutFromTop;
  }

@media (min-width: 38em) {

.exit-intent--top-right,
  .exit-intent--top-left {
      align-items: flex-start
  }
    }

@media (min-width: 38em) {

.exit-intent--bottom-right,
  .exit-intent--bottom-left {
      align-items: flex-end
  }
    }

@media (min-width: 38em) {

.exit-intent--bottom-right.hidden, .exit-intent--bottom-left.hidden {
        -webkit-animation: 0.25s ease-in-out intentOutFromBottom;
                animation: 0.25s ease-in-out intentOutFromBottom;
        -webkit-animation: 0.25s var(--ease) intentOutFromBottom;
                animation: 0.25s var(--ease) intentOutFromBottom
    }
      }

@media (min-width: 38em) {

.exit-intent--bottom-right.visible, .exit-intent--bottom-left.visible {
        -webkit-animation: 0.25s ease-in-out intentInFromBottom;
                animation: 0.25s ease-in-out intentInFromBottom;
        -webkit-animation: 0.25s var(--ease) intentInFromBottom;
                animation: 0.25s var(--ease) intentInFromBottom
    }
      }

@media (min-width: 38em) {

.exit-intent--top-right,
  .exit-intent--bottom-right {
      justify-content: flex-end
  }
    }

@media (min-width: 38em) {

.exit-intent--top-left,
  .exit-intent--bottom-left {
      justify-content: flex-start
  }
    }

.exit-intent__content {
  width: 100%;
  position: relative;
  background-color: 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;
}

@media (min-width: 38em) {

.exit-intent__content {
    max-width: 335px;
    padding: 0
}
  }

.exit-intent__inner {
  position: relative;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

.exit-intent__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) {

.exit-intent__image {
    display: block
}
  }

.exit-intent__image img {
    width: 100%;
  }

.exit-intent__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);
}

.exit-intent__message {
  width: 100%;
  text-align: center;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.exit-intent__form {
  width: 100%;
  position: relative;
}

.exit-intent__form .input {
    height: 42px;
    outline: none;
  }

.exit-intent__form .input::-moz-placeholder {
      color: var(--color-contrast-text-meta);
    }

.exit-intent__form .input:-ms-input-placeholder {
      color: var(--color-contrast-text-meta);
    }

.exit-intent__form .input::placeholder {
      color: var(--color-contrast-text-meta);
    }

.exit-intent__form form {
    width: 100%;
    position: relative;
  }

.exit-intent__button {
  position: absolute;
  right: calc(4px * 3);
  right: var(--spacing-small);
  top: 2px;
  bottom: 2px;
  display: flex;
  align-items: center;
  border: none;
  background: none;
  transition: opacity 0.25s;
}

.exit-intent__button:hover {
    opacity: 0.5;
    transition: opacity 0.25s;
  }

.exit-intent__button svg {
    width: 10px;
  }

.exit-intent__close {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

.exit-intent__close .icon {
    width: 8px;
    height: 8px;
  }

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

.announcement-bar-section {
  z-index: 300;
  z-index: var(--z-index-header);
  position: relative;
  /* Fix flickity inconsistency */
  margin-left: -1px;
}

.announcement-bar-section .flickity-slider {
    transform: none !important;
  }

.announcement-bar {
  font-size: var(--font-size-body-small);
  text-align: center;
  padding: 4px calc(4px * 5);
  padding: var(--spacing-unit) var(--spacing-medium);
  width: 100%;
  height: 40px;
  display: none;
  overflow: hidden;
  background-color: var(--color-accent);
  pointer-events: none;
  left: 0 !important;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

.announcement-bar.is-selected {
    opacity: 1;
    pointer-events: all;
  }

.flickity-enabled .announcement-bar {
    display: inline-flex;
  }

.announcement-bar:first-of-type {
    display: inline-flex;
  }

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

.announcement-bar__content {
  white-space: nowrap;
  overflow-x: scroll;

  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none;
}

/* Firefox */

.announcement-bar__content::-webkit-scrollbar {
    display: none;
  }

.is-active .announcement-bar__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;
  }

.drawer-menu {
  --menu-width: 355px;
  --menu-max-width: calc(100vw - 50px);
  --header-height: 84px;
  --item-height: 48px;
  --animation-duration: 0.35s;
  --animation-timing: ease-in-out;

  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 var(--animation-duration) var(--animation-timing);
}

.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 var(--animation-duration) var(--animation-timing);
  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: flex-start;
}

.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;
  /* justify-content: flex-end; */
  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: 0;
  }

.drawer-menu__contents {
  flex-shrink: 1;
  overflow-y: scroll;
}

/* This one gets dynamic sizing */

.drawer-menu__main {
  transition: height 0.35s;
  overflow: hidden;
}

/* This one gets shifted over */

.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__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 {
    /* background-color: orange; */
    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__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;
    margin-top: calc(4px * -1);
    margin-top: calc(var(--spacing-extra-small) * -1);
  }

.drawer-menu__footer > .drawer-menu__item + .drawer-menu__item--search,
  .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 > 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;
  }

/* Overwrites for drawer specific styling */

.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 {
  opacity: 0;
  pointer-events: none;
}

.drawer-menu__search-results.visible {
    opacity: 1;
    pointer-events: all;
    overflow-y: scroll;
  }

/* Pages */

.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__tags,
.article__pagination,
.article__comments {
  max-width: 500px;
  max-width: var(--max-width-small);
}

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

@media (min-width: 38em) {

.blog__article.is-featured .blog__article-image {
        padding-top: 60%
    }
      }

.blog__article-image {
  padding-top: 63.5%;
  background-size: cover;
  background-position: center;
}

.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 {
    /* Account for outline cutoff */
    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-contrast-bg);
  color: var(--color-contrast-text);
  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-contrast-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%;
  }

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

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

:root {
  --collection-element-height: 40px;
  --collection-header-max-height: 480px;
}

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

@media (min-width: 60em) {

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

.collection__container {
    max-width: 3000px;
    max-width: var(--max-width);
    margin-left: auto;
    margin-right: auto;
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
    /* center-content mixin above */
  }

@media (min-width: 38em) and (max-width: 60em) {

.collection__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 {
      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__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);
    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 {
      border-color: var(--color-border-darker);
    }

.collection__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 {
    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-button-bg);
    border-radius: 30px;
    flex-shrink: 0;
    transition: background-color 0.2s ease;
  }

.collection__tag:hover {
      background-color: var(--color-button-hover-bg);
    }

.collection__tag:hover svg {
        color: var(--color-icon-darkest);
      }

.collection__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 {
      line-height: 0;
      pointer-events: none;
    }

.collection__header {
  position: relative;

  overflow: hidden;

  /* .collection__image {
    height: 100%;
  } */
}

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

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

@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-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 * 7);
  margin-top: var(--spacing-large);
  display: flex;
}

.collection--has-border .collection__content {
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
    border-top: 1px solid var(--color-border);
  }

@media (min-width: 38em) {

.collection--has-border .collection__content {
      margin-top: calc(4px * 10);
      margin-top: var(--spacing-extra-large)
  }
    }

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

.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: calc(100vw - 40px)
}
  }

@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 {
    text-align: center;
  }

.list-collections__image {
  width: 100%;
}

.list-collections__title,
.list-collections__product-count {
  width: 100%;
}

.list-collections__collection.animates {
    opacity: 0;
  }

.no-js .list-collections__collection.animates {
      opacity: 1;
    }

.page__header,
.page__content {
  max-width: 500px;
  max-width: var(--max-width-medium);
}

.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-radius: 1px;
    border: none;
    border: 1px solid var(--color-border);
    font-family: inherit;
    line-height: 1.5em;
    /* input mixin above */
    padding: calc(4px * 3);
    padding: var(--spacing-small);
    width: 100%;
  }

.search-template input::-moz-placeholder {
      color: var(--color-text-meta);
    }

.search-template input:-ms-input-placeholder {
      color: var(--color-text-meta);
    }

.search-template input::placeholder {
      color: var(--color-text-meta);
    }

.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 {
  width: 100%;
  max-width: 800px;
  margin: 0 auto calc(4px * 5) auto;
  margin: 0 auto var(--spacing-medium) auto;
  display: flex;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  border: 1px solid var(--color-border);
}

.search-template__image {
  width: 200px;
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
  flex-shrink: 0;
}

.search-template__image img {
    display: block;
    width: 100%;
  }

.search-template__image svg {
    width: calc(200px - calc(4px * 5));
    width: calc(200px - var(--spacing-medium));
    height: 100%;
  }

.search-template__pagination {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 60em) {

.product-page-wrapper {
    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 {
    position: relative;
    width: 100%;
  }

@media (min-width: 60em) {

.product-page-wrapper .interactive-media {
      margin-top: calc(4px * 5);
      margin-top: var(--spacing-medium)
  }
    }

.product-page-wrapper .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 {
      width: 70%
  }
    }

.product-page-wrapper .product__view-in-space.visible {
      display: flex;
    }

.product-page-wrapper .product__view-in-space > span {
      display: flex;
      align-items: center;
    }

.product-page-wrapper .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 {
    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 {
      margin-right: calc(4px * 5);
      margin-right: var(--spacing-medium)
  }
    }

@media (min-width: 60em) {

.product-page-wrapper .media-wrapper,
  .product-page-wrapper .interactive-media {
      width: 100%;
      margin-right: 0;
      margin-bottom: calc(4px * 5);
      margin-bottom: var(--spacing-medium)
  }
    }

@media (min-width: 60em) {

.product-page-wrapper .media-wrapper:last-of-type, .product-page-wrapper .interactive-media:last-of-type {
        margin-bottom: 0
    }
      }

.product-page-wrapper .accordion__group:last-of-type {
      border-bottom: 0;
    }

@media (min-width: 60em) {

.product-page-wrapper .media-wrapper.hidden {
        display: none
    }
      }

.product-page-wrapper__inner {
  position: relative;
  padding: calc(4px * 10) calc(4px * 5);
  padding: var(--spacing-extra-large) var(--spacing-medium);
  min-height: var(--product-page-height);
  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
}
  }

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

.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__media-container {
  position: relative;
}

@media (min-width: 60em) {

.product__media-container {
    width: 65%;
    display: flex
}
  }

@media (min-width: 60em) {

.product--thumbnails-horizontal .product__media-container {
      display: block
  }
    }

.product__media {
  width: 100%;
}

.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;
  width: 65%;
  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 {
    position: absolute;
    right: 0;
    top: 0;
    width: 35%;
    height: 100%;
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-extra-large)
}
  }

@media (min-width: 60em) {

.product__meta-inner {
    position: sticky;
    top: var(--header-height)
}
  }

.product__vendor {
  margin-bottom: calc(4px * 2);
  margin-bottom: calc(var(--spacing-unit) * 2);
}

.product__vendor a:hover {
    opacity: 0.5;
  }

.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 {
  font-size: var(--font-size-body-small);
  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__header {
  display: none;
}

@media (min-width: 60em) {

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

@media (min-width: 60em) {

.product__mobile-header {
    display: none
}
  }

.product__mobile-header .product__price,
  .product__mobile-header .unit-price {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }

.product__mobile-header .product__reviews {
    margin-top: calc((4px * 4) * -1);
    margin-top: calc((var(--spacing-unit) * 4) * -1);
  }

.product__description > .accordion:first-child {
    margin-top: calc(calc(4px * 5) * -1);
    margin-top: calc(var(--spacing-medium) * -1);
  }

.product__description .accordion {
    background-color: transparent;
    padding: 0;
    margin: 0;
    color: var(--color-text);
  }

.product__description .accordion__group {
    border-color: var(--color-border);
  }

.product__description .accordion__group:after {
      background-color: var(--color-icon);
    }

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

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

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

.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__trigger {
  position: absolute;
  right: calc(4px * 10);
  right: var(--spacing-extra-large);
  top: 50%;
  transform: translateY(-50%);
}

.variant-popup__content {
  display: none;
}

.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-top: calc(4px * 8);
  margin-top: calc(var(--spacing-unit) * 8);
  margin-bottom: calc(4px * 5);
  margin-bottom: 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)
  }
    }

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

.errors ul {
    margin: 0;
    padding: 0;
  }

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

@media (min-width: 38em) {
      .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);
      }
    }

.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;
    /* button mixin above */
  }

.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: 500px;
  max-width: var(--max-width-small);
  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: 500px;
    max-width: var(--max-width-small)
}
  }

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

/* Required content sections */

.blog-posts__slide.animates {
    opacity: 0;
  }

.no-js .blog-posts__slide.animates {
      opacity: 1;
    }

.collection-list__slide.animates {
    opacity: 0;
  }

.no-js .collection-list__slide.animates {
      opacity: 1;
    }

.featured-collection__slide.animates {
    opacity: 0;
  }

.no-js .featured-collection__slide.animates {
      opacity: 1;
    }

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

.featured-collection-grid .grid-display__item.animates {
      opacity: 0;
    }

.no-js .featured-collection-grid .grid-display__item.animates {
        opacity: 1;
      }

.featured-product {
  display: flex;
  flex-direction: column;
}

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

.featured-product.section--contrast .accordion,
    .featured-product.section--contrast .accordion__label {
      color: var(--color-contrast-text);
    }

.featured-product.section--contrast .accordion__group {
      border-color: var(--color-contrast-border) !important;
    }

.featured-product.section--contrast .accordion__group:after {
        background-color: var(--color-contrast-border);
      }

.featured-product.section--contrast .product-form__quantity,
    .featured-product.section--contrast .product-form__chip-label,
    .featured-product.section--contrast .product-form__color-swatches {
      border-color: var(--color-contrast-border);
    }

.featured-product.section--contrast .product-form__chip-wrapper {
      border: 1px solid var(--color-contrast-border);
    }

.featured-product.section--contrast .product-form__chip {
      border-color: var(--color-contrast-border);
    }

.featured-product.section--contrast .product-form__chip.selected {
        border-color: var(--color-contrast-border-darkest);
      }

.featured-product.section--contrast .product-form__chip:hover,
      .featured-product.section--contrast .product-form__chip:focus {
        border-color: var(--color-contrast-border-darker);
        color: var(--color-contrast-text);
      }

.featured-product.section--contrast .product-form__option-label {
      color: var(--color-contrast-input-text);
    }

.featured-product.section--contrast .product-form__chip-label {
      color: var(--color-contrast-text);
    }

.featured-product.section--contrast .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);
    }

.featured-product.section--contrast .product-form__color-swatch.selected {
        box-shadow: 0 0 0 1px var(--color-contrast-text);
      }

.featured-product.section--contrast .product-form__color-swatch:hover {
        box-shadow: 0 0 0 1px var(--color-contrast-border-darker);
      }

.featured-product.section--contrast .product-form__color-swatch:focus {
        box-shadow: 0 0 0 1px var(--color-contrast-text);
      }

.featured-product.section--contrast .accordion__group:after {
        background-color: var(--color-contrast-icon);
      }

@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__vendor {
  margin-bottom: calc(4px * 2);
  margin-bottom: calc(var(--spacing-unit) * 2);
}

.featured-product__vendor a:hover {
    opacity: 0.5;
  }

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

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

/* Images right */

@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 * 10);
      padding-right: 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 {
      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
  }
    }

/* Images left */

@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 * 10);
      padding-left: var(--spacing-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
  }
    }

/* Text alignment */

@media (min-width: 60em) {

.image-with-text--text-alignment-left .image-with-text__text-container {
      justify-content: flex-start
  }
    }

@media (min-width: 60em) {

.image-with-text--text-alignment-center .image-with-text__text-container {
      justify-content: center
  }
    }

@media (min-width: 60em) {

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

.image-with-text__image video.image {
    width: 100%;
  }

.image-with-text__text-block {
  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
  }
    }

@media (min-width: 60em) {

.image-with-text__text-block--center {
      text-align: center
  }
    }

@media (min-width: 60em) {

.image-with-text__text-block--center .text-block__subheading,
    .image-with-text__text-block--center .text-block__heading {
        margin-right: auto;
        margin-left: auto
    }
      }

@media (min-width: 60em) {

.image-with-text__text-block--right {
      text-align: right
  }
    }

@media (min-width: 60em) {

.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__text-block .text-block__button:hover {
      color: var(--color-bg) !important;
    }

.image-with-text__video {
  display: flex;
  justify-content: center;
  position: relative;
}

.image-with-text-split {
  display: flex;
}

@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 {
  width: 100%;
  height: 100%;
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
}

.image-with-text-split__image .image-with-text-split__placeholder {
    height: 100%;
  }

@media (min-width: 38em) {

.image-with-text-split__image-mobile {
    display: none
}
  }

.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-accent); */
    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 .errors {
    display: flex;
    justify-content: center;
  }

.newsletter .errors ul {
      margin-top: 0;
    }

.product-recommendations__inner {
  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) {

.product-recommendations__inner {
    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) {

.product-recommendations__inner {
    width: 65%;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0
}
  }

@media (min-width: 60em) {

.product--full-width .product-recommendations__inner {
      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)
  }
    }

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

.slideshow.first-full-height .slideshow__slide--full_height {
      padding-top: calc(var(--mobile-height) - var(--header-0-height));
      padding-top: calc(var(--mobile-height) - var(--header-initial-height));
    }

@media (min-width: 38em) {

.slideshow.first-full-height .slideshow__slide--full_height {
        padding-top: calc(var(--desktop-height) - var(--header-0-height));
        padding-top: calc(var(--desktop-height) - var(--header-initial-height))
    }
      }

.header-transparent .slideshow.first-full-height .slideshow__slide {
        padding-top: calc(var(--mobile-height) - var(--announcement-height));
      }

@media (min-width: 38em) {

.header-transparent .slideshow.first-full-height .slideshow__slide {
          padding-top: calc(var(--desktop-height) - var(--announcement-height))
      }
        }

.header-transparent .slideshow.first-full-height .slideshow__content-wrap {
        margin-top: calc(
          var(--header-0-height) - var(--announcement-height)
        );
        margin-top: calc(
          var(--header-initial-height) - var(--announcement-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) - (var(--header-height) - var(--announcement-height))
    );
  }

@media (min-width: 38em) {

.slideshow__slide {
      padding-top: calc(
        var(--desktop-height) -
          (var(--header-height) - var(--announcement-height))
      )
  }
    }

.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 .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-color: 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--middle {
      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 (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 > * {
        margin-left: auto;
        margin-right: auto;
      }

.slideshow__content-inner--right {
      text-align: right;
    }

.slideshow__content-inner--right > * {
        margin-left: auto;
      }

.slideshow__content-inner * + * {
      margin-top: calc(4px * 5) !important;
      margin-top: var(--spacing-medium) !important;
    }

.slideshow__content-inner .slideshow__link {
      margin-top: calc(4px * 7) !important;
      margin-top: var(--spacing-large) !important;
      margin-bottom: 0;
    }

.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(--content-max-width);
}

.slideshow__heading {
  color: var(--content-color);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: var(--font-heading-bold-weight);
  max-width: var(--content-max-width);
}

.slideshow__subheading {
  color: var(--content-color);
  margin-top: 0;
  margin-bottom: 0;
  max-width: var(--content-max-width);
}

.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-0-height) - var(--announcement-height)
        );
        margin-top: calc(
          var(--header-initial-height) - var(--announcement-height)
        );
      }

.slideshow-split.first-full-height .slideshow-split__slide {
      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) - var(--header-height))
    }
      }

.header-transparent .slideshow-split.first-full-height .slideshow-split__slide {
        padding-top: calc(var(--mobile-height) - var(--announcement-height));
      }

@media (min-width: 38em) {

.header-transparent .slideshow-split.first-full-height .slideshow-split__slide {
          padding-top: calc(var(--desktop-height) - var(--announcement-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) - (var(--header-height) - var(--announcement-height))
  );
}

@media (min-width: 38em) {

.slideshow-split__slide {
    padding-top: calc(
      var(--desktop-height) -
        (var(--header-height) - var(--announcement-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 (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;
}

.slideshow-split__content-inner * + * {
    margin-top: calc(4px * 5) !important;
    margin-top: var(--spacing-medium) !important;
  }

.slideshow-split__content-inner .slideshow-split__link {
    margin-top: calc(4px * 7) !important;
    margin-top: var(--spacing-large) !important;
    margin-bottom: 0;
  }

.slideshow-split--align-middle .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);
  }

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

.slideshow-split__subheading {
  margin-top: 0;
  margin-bottom: 0;
}

.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__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%;
    opacity: 0;
    transition: opacity 1.3s cubic-bezier(0.32, 0.24, 0.15, 1) 1.1s;
    transition: opacity 1.3s var(--cubic) 1.1s;
  }

.in-view .video__wrapper {
      opacity: 1;
    }

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

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

.collection-list-grid__collection.animates {
    opacity: 0;
  }

.no-js .collection-list-grid__collection.animates {
      opacity: 1;
    }

.quote {
  position: relative;
  display: flex;
  flex-direction: column;
  text-align: center;
  opacity: 0;
  transition: opacity 1.3s cubic-bezier(0.32, 0.24, 0.15, 1);
  transition: opacity 1.3s var(--cubic);
}

.quote.in-view {
    opacity: 1;
  }

.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;
  opacity: 0;
  left: 0 !important;
  transition: opacity 1s ease-in-out;
  pointer-events: none;
}

.quote__item.is-selected {
    opacity: 1;
    pointer-events: all;
  }

.quote__text {
  font-size: 28px;
  line-height: 1.3;
  font-family: var(--font-heading), sans-serif;
  font-weight: 700;
  font-style: var(--font-heading-style);
}

.collage {
  display: grid;
  grid-gap: calc(4px * 5);
  grid-gap: var(--spacing-medium);
  grid-auto-flow: dense;
}

@media (min-width: 38em) {

.collage {
    grid-template-columns: repeat(2, 1fr)
}
  }

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

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

@media (max-width: 38em) {

.collage .content-overlay__inner {
      display: none
  }
    }

.collage .content-overlay__inner:first-child {
      margin-top: 0;
    }

.collage .content-overlay__button:hover {
      color: var(--color-bg) !important;
    }

@media (min-width: 38em) {

.collage .text-block {
      display: none
  }
    }

.collage__item {
  overflow: hidden;
}

@media (min-width: 38em) {

.collage__item--small {
      grid-column: span 1;
      grid-row: span 1
  }
    }

@media (min-width: 38em) {

.collage__item--vertical {
      grid-column: span 1;
      grid-row: span 2
  }
    }

@media (min-width: 38em) {

.collage__item--vertical .collage__item-inner {
        padding-top: 200%
    }
      }

@media (min-width: 38em) {

.collage__item--horizontal {
      grid-column: span 2;
      grid-row: span 1
  }
    }

@media (min-width: 38em) {

.collage__item--horizontal .collage__item-inner {
        padding-top: 50%
    }
      }

@media (min-width: 38em) {

.collage__item--large {
      grid-column: span 2;
      grid-row: span 2
  }
    }

@media (min-width: 60em) {

.collage__item--has-placeholder {
      border: 1px solid var(--color-border)
  }
    }

.collage__item .placeholder-svg {
    border: 0;
  }

.collage__item.animates {
    opacity: 0;
  }

.no-js .collage__item.animates {
      opacity: 1;
    }

.collage__item-inner-wrapper {
  position: relative;
}

@media (min-width: 38em) {

.collage__item-inner-wrapper {
    height: 100%
}
  }

.collage__item-inner {
  background-color: var(--color-contrast-bg);
  position: relative;
  background-size: cover;
  background-position: center;
  overflow: hidden;
  padding-top: 100%;
  height: 100%;
  transform-origin: bottom;
  will-change: transform;
}

.collage__placeholder,
.collage__video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.gallery__slide.animates {
    opacity: 0;
  }

.no-js .gallery__slide.animates {
      opacity: 1;
    }

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

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

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

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

.location__map {
  position: relative;
}

.location__image {
  display: none;
  opacity: 0;
  transition: opacity 1.3s cubic-bezier(0.32, 0.24, 0.15, 1) 1.1s;
  transition: opacity 1.3s var(--cubic) 1.1s;
}

@media (min-width: 38em) {

.location__image {
    display: block
}
  }

.in-view .location__image {
    opacity: 1;
  }

.location__map-container {
  width: 100%;
  position: relative;
  padding-bottom: 56.25%;
}

@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__slide.animates {
    opacity: 0;
  }

.no-js .testimonials__slide.animates {
      opacity: 1;
    }

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

.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 !important;
  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 * 7);
  margin-top: var(--spacing-large);
}

.store-availability-container__wrapper:empty {
    margin-top: 0;
  }

.store-availability {
  position: relative;
  display: flex;
  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);
}

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

/* Components */

.disclosure {
  position: relative;
}

.disclosure__toggle {
  display: flex;
  align-items: center;
  white-space: nowrap;
  height: 28px;
  padding: 0 8px 0 8px;
  border: 0;
  line-height: 0;
}

.disclosure__toggle:focus {
    background-color: black;
  }

.disclosure__toggle .arrow {
    margin-top: 1px;
    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;
  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 {
  display: block;
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: 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;
  }

.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 .label-above {
    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);
  }

.product-form__variants select#variant-selector {
    display: none;
  }

.no-js .product-form__variants select#variant-selector {
      display: block;
    }

.product-form__controls-group.hidden {
    display: none;
  }

.product-form__controls-group label {
    pointer-events: none;
  }

.no-js .product-form__controls-group-options {
    display: none;
  }

.product-form__option {
  position: relative;
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.product-form__option:hover svg {
      color: var(--color-icon-darker);
    }

.product-form__option-label {
  width: 100%;
  margin-bottom: 10px;
}

.product-form__option-select {
  /* reset */
  -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;
    }

.product-form__option-select + 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);
  }

.no-js .product-form__option-select {
    -webkit-appearance: auto;
    -moz-appearance: auto;
  }

.product-form__option-select-icon {
  height: 48px;
  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 select, .product-form__color-swatches select {
    display: none;
  }

.product-form__color-swatches {
  display: flex;
  flex-wrap: wrap;
  padding: calc(4px * 3) 16px 8px 16px;
  padding: var(--spacing-small) 16px 8px 16px;
  border: 1px solid var(--color-border);
}

.product-form__color-swatches .product-form__option-label {
    margin-bottom: calc(4px * 2);
    margin-bottom: calc(var(--spacing-unit) * 2);
  }

.no-js .product-form__color-swatches {
    display: none;
  }

.product-form__color-swatches-selected {
  width: 100%;
  margin-bottom: 10px;
}

.product-form__color-swatch {
  width: 32px;
  height: 32px;
  border-radius: 100%;
  background-color: var(--color-bg);
  margin-right: 6px;
  margin-bottom: calc(4px * 2);
  margin-bottom: calc(var(--spacing-unit) * 2);
  box-shadow: 0 0 0 1px var(--color-border);
  border: 3px 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.selected {
    box-shadow: 0 0 0 1px var(--color-text);
  }

.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__chip-wrapper {
  display: flex;
  flex-wrap: wrap;
  padding: calc(4px * 3) 16px 10px 16px;
  padding: var(--spacing-small) 16px 10px 16px;
  border: 1px solid var(--color-border);
}

.product-form__chip-wrapper .variant-popup__trigger {
    position: absolute;
    top: 12px;
    right: 16px;
    margin-bottom: 0;
    transform: translateY(0);
  }

.product-form__chip-selected {
  width: 100%;
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.product-form__chip {
  position: relative;
  margin-right: 6px;
  margin-bottom: 6px;
  border: 1px solid var(--color-border);
  padding: calc(4px * 2) calc(4px * 4);
  padding: calc(var(--spacing-unit) * 2) calc(var(--spacing-unit) * 4);
  background-color: transparent;
  transition: border-color 0.15s ease-in-out;
}

.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__quantity {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  border: 1px solid var(--color-border);
  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);
}

.product-form__quantity label {
    display: block;
  }

.product-form__quantity input {
    height: unset;
    text-align: center;
    border: 0;
    width: 30px;
    padding: 4px 0;
    padding: var(--spacing-unit) 0;
  }

.product-form__quantity-button {
  height: 48px;
  height: var(--height-button);
  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;
}

.product-form__quantity-button:hover,
  .product-form__quantity-button:focus {
    color: var(--color-icon-darker);
  }

.product-form__submit-button-wrapper {
  display: inline-flex;
  flex-wrap: wrap;
  margin: calc(calc(4px * 3) * -1) 0 0 -10px;
  margin: calc(var(--spacing-small) * -1) 0 0 -10px;
  width: calc(100% + calc(4px * 3));
  width: calc(100% + var(--spacing-small));
}

.product-form__submit-button-wrapper .product-form__controls-group {
    flex-grow: 1;
    margin: calc(4px * 3) 0 0 10px;
    margin: var(--spacing-small) 0 0 10px;
  }

.product-form__submit-button-wrapper .product-form__cart-submit {
    flex-grow: 999;
    margin: calc(4px * 3) 0 0 10px;
    margin: var(--spacing-small) 0 0 10px;
  }

.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-form__shop-pay:not(:empty)
  + .store-availability-container__wrapper:not(:empty) {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.product-item {
  position: relative;
}

.product-item .badge {
    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: 50%;
    height: 100%;
    width: 100%;
    transform: translateY(-50%);
  }

.product-item--square .image, .product-item--landscape .image, .product-item--portrait .image {
    height: 100%;
  }

.product-item--square .image__img, .product-item--landscape .image__img, .product-item--portrait .image__img {
    top: 50%;
    transform: translateY(-50%);
  }

.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__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__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;
  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%;
  margin-right: calc(4px * 2);
  margin-right: calc(var(--spacing-unit) * 2);
  cursor: pointer;
  background-color: var(--color-bg);
  background-position: center !important;
  background-size: cover !important;
  opacity: 0;
}

.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 {
  text-transform: uppercase;
  font-family: var(--font-body);
  font-weight: var(--font-body-weight);
  font-size: var(--font-size-body-extra-small);
  letter-spacing: 0.1em;
  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;
  /* button mixin above */

  opacity: 1;
  transition: color 0.25s ease;
}

.bttn:hover {
    background-color: var(--color-primary-button-active-bg);
    transition: background-color 0.25s ease;
  }

.bttn:disabled {
    opacity: 0.4;
    cursor: default;
  }

.bttn--secondary {
    position: relative;
    background-color: transparent;
    z-index: 1;
    color: var(--color-secondary-button-text);
    border: 1px solid var(--color-border);
  }

.bttn--secondary:before {
      content: '';
      position: absolute;
      z-index: -1;
      width: calc(100% + 4px);
      height: 0;
      top: 50%;
      left: 50%;
      background: var(--color-text);
      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);
    }

.bttn--secondary:hover {
      background-color: transparent;
      color: var(--color-bg);
    }

.bttn--secondary:hover:before {
        opacity: 1;
        height: 48px;
        height: var(--height-button);
      }

.bttn--secondary:disabled:hover {
        color: var(--color-secondary-button-text);
        border: 1px solid var(--color-border);
      }

.bttn--secondary:disabled:before {
        opacity: 0;
      }

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

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

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

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

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

.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: 4px;
      margin-bottom: var(--spacing-extra-small)
  }
    }

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

/* Mimic a background image by wrapping the placeholder svg with this class */

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

@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: 38em) {

.carousel--columns-2.carousel--items-2 .carousel__navigation {
          display: none
      }
        }

@media (min-width: 38em) {

.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) and (min-width: 60em) {
        .carousel.carousel--columns-2.carousel--text-position-middle.carousel--items-2 .carousel__navigation {
            display: block
        }
          }

@media (min-width: 60em) and (min-width: 60em) {
        .carousel.carousel--columns-3.carousel--text-position-middle.carousel--items-3 .carousel__navigation {
            display: block
        }
          }

@media (min-width: 60em) and (min-width: 60em) {
        .carousel.carousel--columns-4.carousel--text-position-middle.carousel--items-4 .carousel__navigation {
            display: block
        }
          }

.carousel.carousel--text-position-top .carousel__slide {
      width: calc(100% - 1px);
    }

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

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

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

/* show navigation if user is tabbing */

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

.carousel__next-button:disabled, .carousel__previous-button:disabled {
    display: none !important;
  }

.carousel__next-button svg, .carousel__previous-button svg {
    width: 12px;
  }

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

/* Applies to test within slideshows */

.animation__staggered-children-fade-in :nth-child(1),
  .animation__staggered-children-fade-in :nth-child(2),
  .animation__staggered-children-fade-in :nth-child(3),
  .animation__staggered-children-fade-in :nth-child(4) {
    opacity: 0;
    transition: opacity 0.25s cubic-bezier(0.32, 0.24, 0.15, 1);
    transition: opacity 0.25s var(--cubic);
  }

.no-js .animation__staggered-children-fade-in :nth-child(1), .no-js .animation__staggered-children-fade-in :nth-child(2), .no-js .animation__staggered-children-fade-in :nth-child(3), .no-js .animation__staggered-children-fade-in :nth-child(4) {
      opacity: 1;
    }

.is-selected .animation__staggered-children-fade-in :nth-child(1),
    .is-selected .animation__staggered-children-fade-in :nth-child(2),
    .is-selected .animation__staggered-children-fade-in :nth-child(3),
    .is-selected .animation__staggered-children-fade-in :nth-child(4),
    .in-view .animation__staggered-children-fade-in :nth-child(1),
    .in-view .animation__staggered-children-fade-in :nth-child(2),
    .in-view .animation__staggered-children-fade-in :nth-child(3),
    .in-view .animation__staggered-children-fade-in :nth-child(4) {
      opacity: 1;
    }

/* Applies to slideshow slides */

.is-selected .animation__staggered-children-fade-in :nth-child(1) {
      transition: opacity 1.3s cubic-bezier(0.32, 0.24, 0.15, 1) 0.8s;
      transition: opacity 1.3s var(--cubic) 0.8s;
    }

.is-selected .animation__staggered-children-fade-in :nth-child(2) {
      transition: opacity 1.3s cubic-bezier(0.32, 0.24, 0.15, 1) 0.9s;
      transition: opacity 1.3s var(--cubic) 0.9s;
    }

.is-selected .animation__staggered-children-fade-in :nth-child(3) {
      transition: opacity 1.3s cubic-bezier(0.32, 0.24, 0.15, 1) 1s;
      transition: opacity 1.3s var(--cubic) 1s;
    }

.is-selected .animation__staggered-children-fade-in :nth-child(4) {
      transition: opacity 1.3s cubic-bezier(0.32, 0.24, 0.15, 1) 1.1s;
      transition: opacity 1.3s var(--cubic) 1.1s;
    }

/* Applies to section text on scroll */

.in-view .animation__staggered-children-fade-in :nth-child(1) {
      transition: opacity 1.1s cubic-bezier(0.32, 0.24, 0.15, 1) 0.35s;
      transition: opacity 1.1s var(--cubic) 0.35s;
    }

.in-view .animation__staggered-children-fade-in :nth-child(2) {
      transition: opacity 1.1s cubic-bezier(0.32, 0.24, 0.15, 1) 0.45s;
      transition: opacity 1.1s var(--cubic) 0.45s;
    }

.in-view .animation__staggered-children-fade-in :nth-child(3) {
      transition: opacity 1.1s cubic-bezier(0.32, 0.24, 0.15, 1) 0.55s;
      transition: opacity 1.1s var(--cubic) 0.55s;
    }

.in-view .animation__staggered-children-fade-in :nth-child(4) {
      transition: opacity 1.1s cubic-bezier(0.32, 0.24, 0.15, 1) 0.65s;
      transition: opacity 1.1s var(--cubic) 0.65s;
    }

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

.shopify-payment-button__button {
  font-family: inherit;
  text-transform: uppercase;
  font-family: inherit !important;
  font-weight: var(--font-body-weight) !important;
  line-height: 1.5em;
  letter-spacing: 0.025em;
  font-size: var(--font-size-body-extra-small) !important;
  border: none;
  border-radius: 1px !important;
  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: uppercase;
  font-family: var(--font-body);
  font-weight: var(--font-body-weight);
  font-size: var(--font-size-body-extra-small) !important;
  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: 0 !important;
  border: none;
  /* button mixin above */

  background-color: var(--color-accent) !important;
  color: var(--color-button-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-body-small) !important;
  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;
}

.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 {
  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__quick-shop-product {
  display: none;
}

.has-quick-shop-product .quick-cart__quick-shop-product {
    display: block;
  }

.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__trigger {
  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;
}

.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: 120px;
  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: 33px;
  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 {
  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__tabs > li {
    display: inline-block;
    padding: calc(calc(4px * 5) / 2);
    padding: calc(var(--spacing-medium) / 2);
    color: var(--color-drawer-text-meta);
  }

.quick-cart__tabs > li a {
      color: inherit;
      transition: color 0.25s ease-in-out;
    }

.quick-cart__tabs > li a:hover {
        color: var(--color-drawer-text);
      }

.quick-cart__tabs > li a.active {
        color: var(--color-drawer-text);
      }

.quick-cart__image {
  width: 120px;
  flex-shrink: 0;
  overflow: hidden;
}

.quick-cart__image .placeholder {
    padding-top: 100%;
  }

.quick-cart__image img {
    width: 120px;
    -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);
}

.quick-shop {
  top: 0;
  width: calc(100% + calc(4px * 5));
  width: calc(100% + var(--spacing-medium));
  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);
  padding: calc(4px * 3);
  padding: var(--spacing-small);
  overflow: auto;
  background-color: var(--color-drawer-bg-darker);
}

.quick-shop select[name='id'] {
    display: none;
  }

.quick-shop .no-js select[name='id'] {
    display: block;
  }

.quick-shop input,
  .quick-shop select {
    background-color: transparent;
    color: var(--color-drawer-text);
  }

.quick-shop label {
    position: absolute;
    background-color: var(--color-drawer-bg-darker);
    font-size: var(--font-size-body-small);
    top: calc(calc(4px * 3) * -1);
    top: calc(var(--spacing-small) * -1);
    z-index: 1;
    left: calc(4px * 4);
    left: calc(var(--spacing-unit) * 4);
    padding-right: 4px;
    padding-right: var(--spacing-unit);
    padding-left: 4px;
    padding-left: var(--spacing-unit);
    margin-left: calc(4px * -1);
    margin-left: calc(var(--spacing-unit) * -1);
  }

.quick-shop .select-wrapper svg {
      position: absolute;
      right: calc(4px * 5);
      right: var(--spacing-medium);
      top: 50%;
      transform: translateY(-50%);
      color: var(--color-drawer-icon);
      pointer-events: none;
    }

.quick-shop__option,
.quick-shop__input {
  position: relative;
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.quick-shop__heading {
  display: flex;
  margin-bottom: calc(4px * 4);
  margin-bottom: calc(var(--spacing-unit) * 4);
}

.quick-shop__image {
  height: 100%;
  width: 120px;
  flex-shrink: 0;
}

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

.quick-shop__product-details .unit-price__price {
    margin-left: 0;
  }

.quick-shop__product-price-wrapper {
  margin-right: calc(4px * 2);
  margin-right: calc(var(--spacing-unit) * 2);
}

.quick-shop__product-price,
.quick-cart__product-price {
  color: var(--color-drawer-text-meta);
}

.quick-shop__add-to-cart-button {
  width: 100%;
}

.quick-cart__close {
  position: absolute;
  right: calc(4px * 3);
  right: var(--spacing-small);
  margin-top: 1px;
  cursor: pointer;
}

.quick-cart__close svg {
    color: var(--color-drawer-text);
    transition: opacity 0.25s ease-in-out;
  }

.quick-cart__close svg:hover {
      opacity: 0.5;
    }

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

/* clears the 'X' from Internet Explorer */

.search__input[type='search']::-ms-clear {
    display: none;
    width: 0;
    height: 0;
  }

.search__input[type='search']::-ms-reveal {
    display: none;
    width: 0;
    height: 0;
  }

/* clears the 'X' from Chrome */

.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;
  /* input mixin above */

  color: var(--color-navigation-text);
  display: none;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

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

@media (min-width: 38em) {

.search__results {
    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;
  /* overlay mixin above */

  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 .hl {
    background-color: var(--color-drawer-background-meta);
    color: var(--color-navigation-text);
  }

.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-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 {
  display: none;
}

.header-overlay.is-active {
    display: block;
  }

.header-overlay__inner {
  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 0.5s;
}

.header-overlay__inner.is-visible {
    opacity: 1;
    transition: opacity 0.5s;
  }

.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: right 0.3s ease;
}

.cart-flyout.is-visible {
    right: 0;
  }

.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; /* IE and Edge */
  scrollbar-width: none;
}

/* Firefox */

.lightbox__image-nav-inner::-webkit-scrollbar {
    display: none;
  }

.lightbox__image-nav-image {
  display: block;
  flex-shrink: 0;
  /* Used to ensure one image is clipped if over 6 exist */
  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: calc(100vh);
  max-width: 100vw;
  overflow: auto;
}

.lightbox__images {
  width: 100%;
  margin-top: auto;
  margin-bottom: auto;
}

.lightbox__images .flickity-viewport {
    transition: height 0.3s ease-in-out;
  }

.lightbox__image {
  width: 100%;
  transition: transform 0.35s ease;
  cursor: zoom-in;
}

.lightbox__image.zoom {
    /* transform: scale(2); */
    cursor: zoom-out;
  }

.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__price.unit-price--available {
    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: right 0.3s ease;
}

.store-availability-flyout.is-visible {
    right: 0;
  }

.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-availbility-flyout__content .store-availability__store-list-wrapper {
    display: block;
  }

.store-availbility-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-availbility-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-availbility-flyout__product-card-image img {
    display: block;
    width: 100%;
  }

.store-availbility-flyout__product-price {
  margin-right: calc(4px * 2);
  margin-right: calc(var(--spacing-unit) * 2);
}

.store-availbility-flyout__product-price-wrapper,
.store-availbility-flyout__product-card-options {
  color: var(--color-drawer-text-meta);
}

.collection-sidebar {
  --height-item: 32px;
}

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

.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;
  margin: 0 0 0 calc(calc(4px * 3) * -1);
  margin: 0 0 0 calc(var(--spacing-small) * -1);
}

.collection-sidebar__heading:hover {
    background-color: var(--color-background-meta);
    transition: background-color 0.3s;
  }

.collection-sidebar__heading > * {
    pointer-events: none;
  }

.collection-sidebar__heading svg {
    opacity: 0.5;
    transform: rotate(0deg);
    transition: transform 0.3s;
  }

.collection-sidebar__heading.closed svg {
      transform: rotate(-90deg);
      transition: transform 0.3s;
    }

.collection-sidebar__heading span {
    font-weight: var(--font-body-bold-weight);
  }

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

.filter-item:active .filter-input__input {
    transform: scale(0.9);
    transition: transform 0.2s;
  }

.filter-item.active .filter-input__input {
    transition: transform 0.2s, background-color 0.3s;
    background-color: var(--color-text);
    border: 1px solid var(--color-text);
  }

.filter-item.active .filter-input__input svg,
    .filter-item.active .filter-input__input .indicator {
      transition: opacity 0.3s;
      opacity: 1;
    }

.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:hover {
    background-color: var(--color-background-meta);
    transition: background-color 0.3s;
  }

.filter-item__content > * {
    pointer-events: none;
  }

.filter-input__input {
  width: 16px;
  height: 16px;
  border: 1px solid var(--color-icon);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-around;
  transition: transform 0.2s, color 0.3s;
}

.active .filter-input__input.filter-item__radio {
      background-color: var(--color-text);
    }

.filter-input__input svg {
    opacity: 0;
  }

.filter-item__checkbox {
  border-radius: 2px;
  color: var(--color-bg);
}

.filter-item__checkbox .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__label {
  display: block;
  padding-left: calc(4px * 3);
  padding-left: var(--spacing-small);
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.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-top-bar {
  width: 100%;
  overflow-x: scroll;
}

.collection-top-bar::-webkit-scrollbar {
    display: none;
  }

.collection--has-filters .collection-top-bar {
    padding-bottom: calc(4px * 5);
    padding-bottom: var(--spacing-medium);
    margin-top: calc(4px * 2 * -1);
    margin-top: calc(var(--spacing-unit) * 2 * -1);
  }

@media (min-width: 60em) {

.collection--has-sidebar .collection-top-bar {
      padding-bottom: calc(4px * 5);
      padding-bottom: var(--spacing-medium);
      margin-top: 0
  }
    }

.collection-top-bar__filters {
  display: flex;
  overflow-x: scroll;
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
}

.collection-top-bar__filters::-webkit-scrollbar {
    display: none;
  }

.collection-top-bar__filters > a {
    margin-right: 8px;
  }

.collection-top-bar__filters > a:last-of-type {
      margin-right: 0;
    }

@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 {
  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 0.3s ease, opacity 0.3s ease;
}

.collection-flyout.active {
    opacity: 1;
    transform: translateY(0px);
    transition: transform 0.3s ease, opacity 0.3s ease;
  }

.collection-flyout .filter-item.active .filter-input__input {
      background-color: var(--color-drawer-text);
      border: 1px solid var(--color-drawer-text);
    }

.collection-flyout .filter-item.active .filter-item__radio {
      background-color: var(--color-drawer-text);
    }

.collection-flyout .filter-item__content:hover {
      background-color: var(--color-drawer-background-meta);
    }

.collection-flyout .filter-input__input {
    border: 1px solid var(--color-drawer-border);
  }

.collection-flyout .filter-input__input.filter-item__radio {
      background-color: var(--color-drawer-bg);
    }

.collection-flyout .filter-item__checkbox {
    color: var(--color-drawer-bg);
  }

.collection-flyout .filter-item__radio .indicator {
      background-color: var(--color-drawer-bg);
    }

.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__content {
  height: 100%;
  margin: 0;
  overflow-y: scroll;
  z-index: 5;
}

/* Increase size of filter items on mobile */

.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 ul {
    margin: 0;
    padding: 0;
  }

.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);
    margin-bottom: calc(4px * 3);
    margin-bottom: var(--spacing-small);
  }

.collection-flyout__footer .bttn--secondary:hover {
      color: var(--color-drawer-bg);
    }

.collection-flyout__wash {
  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 0.3s ease;
  cursor: pointer;
}

.collection-flyout__wash.active {
    pointer-events: all;
    opacity: 1;
    transition: opacity 0.3s ease;
  }

.form-status {
  max-width: 600px;
  max-width: var(--max-width-centered-copy);
  margin: 0 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;
  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__list {
  position: sticky;
  top: var(--header-height);
  display: flex;
  flex-direction: column;
  padding: 0;
  margin-top: 0;
  margin-right: calc(4px * 10);
  margin-right: var(--spacing-extra-large);
  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;
  padding-top: 100%;
  width: 100%;
  border: 0;
}

.product-thumbnails__item-link.active .image__img {
      box-shadow: 0 0 0 2px var(--color-accent);
    }

.product-thumbnails__item-image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

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

/* Vendor */

/*! 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%;
}

/* draggable */

.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 ---- */

.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;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

/* ---- previous/next buttons ---- */

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

/* right to left */

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

/* ---- page dots ---- */

.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-fade */

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

/* Recharge */

.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 */

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

/* Shopify */

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

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

#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 {
    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: center;
    line-height: 1.5em;
    border-radius: 1px;
    background-color: var(--color-secondary-button);
    color: var(--color-drawer-text);
    border: none;
    /* button mixin above */

    border: 1px solid var(--color-border);
    width: 100%;
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
    opacity: 1;
    transition: opacity 0.25s ease;
  }

#shopify-product-reviews .spr-summary-actions-newreview:hover, .product__reviews .spr-summary-actions-newreview:hover {
      opacity: 0.7;
      transition: opacity 0.25s ease;
    }

#shopify-product-reviews .spr-button-primary, .product__reviews .spr-button-primary {
    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: center;
    line-height: 1.5em;
    border-radius: 1px;
    background-color: var(--color-accent);
    color: var(--color-bg);
    border: none;
    /* button mixin above */

    width: 100%;
    opacity: 1;
    transition: opacity 0.25s ease;
  }

#shopify-product-reviews .spr-button-primary:hover, .product__reviews .spr-button-primary:hover {
      opacity: 0.7;
      transition: opacity 0.25s ease;
    }

#shopify-product-reviews .spr-form, .product__reviews .spr-form {
    width: 100%;
    border: none;
    padding-top: 0;
    padding-bottom: calc(4px * 5);
    padding-bottom: var(--spacing-medium);
    margin: 0;
    border: 0;
  }

#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 {
    /* reset */
    -webkit-appearance: none;
    -moz-appearance: none;
    /* input */
    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;
      }

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 {
    text-transform: uppercase;
    font-family: var(--font-body);
    font-weight: var(--font-body-weight);
    font-size: var(--font-size-body-extra-small);
    letter-spacing: 0.1em;
    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;
    width: auto;
    /* button mixin above */

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

section.contact.section input::placeholder,section.contact.section textarea::placeholder {
    color: #ccc;
}
  button.shopify-payment-button__button {
    color: #000 !important;
}
 section.page.section.retail_page .page__content {
    width: 1000px;
    max-width: 100%;
}
  .hr {
    display: table;
    content: "";
    border-top: 1px solid #777;
    width: 100%;
}
  a.drawer-menu__logo {
    outline: none !important;
    text-decoration: none !important;
}
@media only screen and (max-width: 959px) {  

  .displaytable {
    width: 100% !important;
    display: block;
}
}
{ 
.h1 class="header__logo-wrapper">
position: relative;
top: 20px;
}