/** Shopify CDN: Minification failed

Line 2735:2 Unexpected "<"
Line 2745:10 Unexpected ">"
Line 2749:10 Unexpected ">"

**/
/**
 * Styles in this file will be added to the site via theme.liquid layout (found inside the dist/layout directory) using the asset-router-css.liquid snippet )
 * for more info on theme layouts see: https://shopify.dev/tutorials/develop-theme-layouts
 *
 * This theme uses postcss-preset-env which allows for future CSS syntax to be used.
 * By default, all features are enabled.
 * https://preset-env.cssdb.org/features
 *
 * Compiles to ./dist/assets/styles/layout.theme.css
 */

/* Import Modern CSS Reset https://github.com/hankchizljaw/modern-css-reset */

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

body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}

ul[role="list"],ol[role="list"]{list-style:none}

html:focus-within{scroll-behavior:smooth}

body{min-height:100vh;text-rendering:optimizeSpeed;line-height:1.5}

a:not([class]){-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}

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

input,button,textarea,select{font:inherit}

@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}}

/* Set project variables & settings such as colors, breakpoints, animation etc. */

/* Custom media query to only apply animations if the user has not selected 'prefers-reduced-motion: reduce' */

@media not all and (prefers-reduced-motion: reduce) {
  @keyframes fade-in {
    0% {
      opacity: 0.01;
    }
    100% {
      opacity: 1;
    }
  }

  @keyframes slide-in {
    0% {
      transform: translateX(-100%);
    }
    100% {
      transform: translateX(0);
    }
  }
}

/* End of --motion media query */

/* Extra MQ to further reduce animations and transitions */

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001s !important;
    transition-duration: 0.001s !important;
  }
}

/**
 * Custom Breakpoints
 *
 * Use: @media (--medium) {}
 *
 * Tip: You can nest media queries.
 * https://gist.github.com/JeremyEnglert/a48ef614dc4a193eb0a7c26d3376c13b
 *
 */

/* @custom-media --motion (prefers-reduced-motion: no-preference); */

:root {
  --breakpoint: small;
}

@media (min-width: 768px) {

:root {
    --breakpoint: medium;
}
  }

@media (min-width: 992px) {

:root {
    --breakpoint: large;
}
  }

@media (min-width: 1200px) {

:root {
    --breakpoint: xlarge;
}
  }

@media (min-width: 1440px) {

:root {
    --breakpoint: xxlarge;
}
  }

:root {
  /* Neutral Colors */
  --white: #fff;
  --off-white: #f9f5f2;
  --off-white-translucent: rgba(249, 245, 242, 0.8);
  --black: #2b2b2b;

  /* Brand Colors */
  --dark-purple: #343042;
  --light-dusk: #d7d1cf;
  --dusty-red: #845354;
  --dusk: #bcb1af;
  --blue: #434d60;
  --light-blue: #6a6f81;
  --cotton: #dad9d6;
  --teal: #69a297;
  /* End Brand Colors */

  --scrim-dark: rgb(67, 77, 96, 0.8);

  /* Element Colors */
  --header-color: var(--dark-purple);
  --header-background-color: var(--off-white);
  --headline-color: inherit;
  --body-font-color: var(--dark-purple);
  --body-background-color: var(--off-white);

  --link-color: var(--dusty-red);
  --link-color-hover: var(--dusty-red);
  --link-color-active: var(--dusty-red);

  --border-color: var(--cotton);

  --button-primary-color: var(--blue);
  --button-color: var(--white);
  --button-background-color: var(--button-primary-color);
  --button-border-color: var(--button-primary-color);
  --button-hover-color: var(--blue);
  --button-hover-background-color: var(--dusk);
  --button-active-color: var(--blue);
  --button-active-background-color: var(--light-dusk);

  --hero-font-color: var(--01FF70);
  --hero-background: var(--black);

  --primary-gradient: linear-gradient(to bottom, #6666ff, var(--red));

  --input-background: var(--white);
  --input-color: var(--blue);
  --input-border-color: var(--cotton);
  --input-placeholder-color: var(--blue);

  --subnav-background-color: var(--off-white);
}

@font-face {
  font-family: "SangBleu Serif";
  src: url("SangBleuSerif-Light.woff2") format("woff2"),
    url("SangBleuSerif-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Platform";
  src: url("Platform-Regular.woff2") format("woff2"), url("Platform-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Platform";
  src: url("Platform-Medium.woff2") format("woff2"), url("Platform-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "SangBleu Sunrise";
  src: url("SangBleuSunrise-BoldItalic.woff2") format("woff2"),
    url("SangBleuSunrise-BoldItalic.woff") format("woff");
  font-weight: bold;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "SangBleu Sunrise";
  src: url("SangBleuSunrise-Regular.woff2") format("woff2"),
    url("SangBleuSunrise-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "SangBleu Sunrise";
  src: url("SangBleuSunrise-RegularItalic.woff2") format("woff2"),
    url("SangBleuSunrise-RegularItalic.woff") format("woff");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "SangBleu Sunrise";
  src: url("SangBleuSunrise-Bold.woff2") format("woff2"),
    url("SangBleuSunrise-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

:root {
  --hcm-focus-outline: 0.1875rem solid transparent;
  --box-shadow-focus: 0 0 0 0.1875rem var(--black);
  --keyboard-focus-ring: 0.125rem solid var(--teal);
}

:root {
  --font-sangbleu-serif: "SangBleu Serif", serif;
  --font-sangbleu-sunrise: "SangBleu Sunrise", serif;
  --font-platform: "Platform", sans-serif;

  --font-family-primary: var(--font-sangbleu-sunrise);
  --font-family-secondary: var(--font-sangbleu-serif);
  --font-family-tertiary: var(--font-platform);

  --body-font-family: var(--font-family-primary);
  --heading-font-family: var(--font-family-secondary);
  --button-font-family: var(--font-platform);

  --font-weight-book: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 700;

  --button-font-size: 1rem;
  --paragraph-large-font-size: 1.5625rem;

  --font-size-jumbo: 2.5rem;
  --font-size-h1: 1.875rem;
  --font-size-h2: 1.625rem;
  --font-size-h3: 1.4375rem;
  --font-size-h4: 1.25rem;
  --font-size-h5: 1.125rem;
  --font-size-h6: 1rem;
  --font-size-subhead: 1.5rem;
}

@media (min-width: 768px) {

:root {
    --font-size-jumbo: 5rem;
    --font-size-h1: 2.5rem;
    --font-size-h2: 2.125rem;
    --font-size-h3: 1.75rem;
    --font-size-h4: 1.5rem;
    --font-size-h5: 1.25rem;
}
  }

:root {
  --global-width: 78.75rem;
  --global-width-narrow: 60rem;
  --global-width-small: 37.5rem;

  --adams-width: 26.25rem;
  --content-width-narrow: var(--global-width-narrow);
  --container-width: var(--global-width);
  --container-width-small: var(--global-width-small);
  --container-width-narrow: var(--global-width-narrow);

  --spacer: 0.9375rem;
  --spacer-large: calc(var(--spacer) * 2);
  --edge-space: 1.5rem;

  --header-logo-width: 7.8125rem;

  --hero-backdrop-height: 50rem;

  /* --input-padding: 8px 2.5em; */
  --input-padding-y: 0.75rem;
  --input-padding-x: 0.75rem;
  --input-padding: var(--input-padding-y) var(--input-padding-x);
  --input-border-size: 0.0625rem;
  --input-border-radius: 0;
  --form-spacer: 1.375rem;
  --form-spacer-half: calc(var(--form-spacer) / 2);

  --button-padding: 1rem;
  --button-border-radius: var(--input-border-radius);
  --button-border-width: var(--input-border-size);

  --global-border: 0.0625rem solid var(--border-color);

  --transition-duration: 300ms;
  --transition-timing-function: linear;
  --global-transition: var(--transition-duration) var(--transition-timing-function);

  --header-sticky-switch-at: 40vh;
  --header-z-index: 10;
  --nav-z-index: 11;

  --media-image-aspect-ratio: 1;

  --modal-width: 50rem;
  --modal-padding: 4rem;
}

@media (min-width: 992px) {

:root {
    --header-logo-width: 12.5rem;
}
  }

/* Base Styles */

/************************************************

Global

Place generic, global styles here.

*************************************************/

* {
  box-sizing: border-box;
}

*::-moz-selection {
  color: #fff;
  color: var(--white);
  background-color: #434d60;
  background-color: var(--blue);
}

*::selection {
  color: #fff;
  color: var(--white);
  background-color: #434d60;
  background-color: var(--blue);
}

html {
  height: 100%;
}

html.nav-is-open {
    overflow: hidden !important;
  }

html.nav-is-open {
    padding-right: var(--scrollbar-padding);
  }

body {
  color: #343042;
  color: var(--body-font-color);
  background-color: #f9f5f2;
  background-color: var(--body-background-color);
  font-family: "SangBleu Sunrise", serif;
  font-family: var(--body-font-family);
  min-height: 100%;
  background-attachment: fixed;
}

body:not(.template-product) {
    overflow-x: hidden;
  }

body.template-product {
    max-width: 100vw;
  }

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .subhead {
  font-family: "SangBleu Serif", serif;
  font-family: var(--heading-font-family);
  line-height: 1.2;
  font-weight: 400;
  font-weight: var(--font-weight-book);
  color: inherit;
  color: var(--headline-color);
  text-transform: uppercase;
}

.jumbo {
  font-size: 2.5rem;
  font-size: var(--font-size-jumbo);
}

h1,
.h1 {
  font-size: 1.875rem;
  font-size: var(--font-size-h1);
}

h2,
.h2 {
  font-size: 1.625rem;
  font-size: var(--font-size-h2);
}

h3,
.h3 {
  font-size: 1.4375rem;
  font-size: var(--font-size-h3);
}

h4,
.h4 {
  font-size: 1.25rem;
  font-size: var(--font-size-h4);
}

h5,
.h5 {
  font-size: 1.125rem;
  font-size: var(--font-size-h5);
}

h6,
.h6 {
  font-size: 1rem;
  font-size: var(--font-size-h6);
}

.subhead {
  font-size: 1.5rem;
  font-size: var(--font-size-subhead);
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.page-header,
.shopify-policy__title {
  margin: 3rem 0;
}

.entry-content {
  color: #2b2b2b;
  color: var(--black);
}

:not([data-whatintent="keyboard"]) a:focus, :not([data-whatintent="keyboard"]) input:focus, :not([data-whatintent="keyboard"]) textarea:focus, :not([data-whatintent="keyboard"]) button:focus, :not([data-whatintent="keyboard"]) span:focus {
  outline: none;
}

[data-whatintent="keyboard"] a:focus, [data-whatintent="keyboard"] input:focus, [data-whatintent="keyboard"] textarea:focus, [data-whatintent="keyboard"] button:focus, [data-whatintent="keyboard"] span:focus {
  outline: 0.125rem solid #69a297;
  outline: var(--keyboard-focus-ring);
}

a:not(.button) {
  color: #845354;
  color: var(--link-color);
}

a:not(.button):hover {
    color: #845354;
    color: var(--link-color-hover);
  }

a:not(.button):active {
    color: #845354;
    color: var(--link-color-active);
  }

a.alt {
  --link-color: var(--white);
  --link-color-hover: var(--light-gray);
  --link-color-active: var(--dark-gray);
}

.skip-link {
  transform: translateY(-100%);
}

.skip-link:focus {
    position: absolute !important;
  }

.skip-link:focus {
    overflow: auto;
    width: auto;
    height: auto;
    margin: 0;
    clip: auto;
    z-index: 10000;
    transition: none;
    -webkit-transition: none;
    transform: translateY(0%);
  }

button {
  cursor: pointer;
}

.rte > * + * {
    margin-top: 1em;
  }

.responsive-table {
  border-collapse: collapse;
  width: 100%;
  border-spacing: 0;
  margin: 0 auto;
}

.responsive-table > * + * {
    border-spacing: 0 3.125rem;
  }

.responsive-table tr td,
.responsive-table tr th {
  border-bottom: solid 0.0625rem #dad9d6;
  border-bottom: solid 0.0625rem var(--cotton);
  padding: 1.875rem 1.25rem;
  text-align: left;
}

thead {
  font-family: "Platform", sans-serif;
  font-family: var(--font-platform);
  letter-spacing: 0.125rem;
  font-weight: 400;
  text-transform: uppercase;
  font-size: 0.875rem;
}

.scroll-bar {
  overflow-x: auto;
}

.t1 {
  border-collapse: collapse;
  width: 50%;
  border-spacing: 0;
}

.t1 > * + * {
    border-spacing: 0 1.25rem;
  }

.t1 tr td,
.t1 tr th {
  padding: 0.9375rem 0.46875rem;
  text-align: left;
}

form {
  font-family: "SangBleu Sunrise", serif;
  font-family: var(--font-family-primary);
}

form:not(.newsletter-signup-form) > * + * {
    margin-top: 1.375rem;
    margin-top: var(--form-spacer);
  }

.input-group {
  display: grid;
  grid-template-rows: 1fr;
  grid-template-columns: auto;
  grid-auto-flow: row;
  grid-column-gap: 1.375rem;
  grid-column-gap: var(--form-spacer);
  grid-row-gap: 1.375rem;
  grid-row-gap: var(--form-spacer);
}

@media (min-width: 768px) {

.input-group {
    grid-template-rows: 1fr;
    grid-template-columns: auto;
    grid-auto-flow: column;
}
  }

input,
  textarea,
  select,
  input[type="text"],
  textarea[type="text"],
  select[type="text"],
  input[type="email"],
  textarea[type="email"],
  select[type="email"],
  input[type="tel"],
  textarea[type="tel"],
  select[type="tel"],
  input[type="password"],
  textarea[type="password"],
  select[type="password"],
  input[type="search"],
  textarea[type="search"],
  select[type="search"] {
    line-height: 1;
    border-radius: 0;
    border-radius: var(--input-border-radius);
    border: solid 0.0625rem #dad9d6;
    border: solid var(--input-border-size) var(--cotton);
    padding: 0.75rem 0.75rem;
    padding: var(--input-padding);
  }

input::-moz-placeholder, textarea::-moz-placeholder, select::-moz-placeholder, input[type="text"]::-moz-placeholder, textarea[type="text"]::-moz-placeholder, select[type="text"]::-moz-placeholder, input[type="email"]::-moz-placeholder, textarea[type="email"]::-moz-placeholder, select[type="email"]::-moz-placeholder, input[type="tel"]::-moz-placeholder, textarea[type="tel"]::-moz-placeholder, select[type="tel"]::-moz-placeholder, input[type="password"]::-moz-placeholder, textarea[type="password"]::-moz-placeholder, select[type="password"]::-moz-placeholder, input[type="search"]::-moz-placeholder, textarea[type="search"]::-moz-placeholder, select[type="search"]::-moz-placeholder {
      color: #434d60;
      color: var(--input-placeholder-color);
    }

input::placeholder, textarea::placeholder, select::placeholder, input[type="text"]::placeholder, textarea[type="text"]::placeholder, select[type="text"]::placeholder, input[type="email"]::placeholder, textarea[type="email"]::placeholder, select[type="email"]::placeholder, input[type="tel"]::placeholder, textarea[type="tel"]::placeholder, select[type="tel"]::placeholder, input[type="password"]::placeholder, textarea[type="password"]::placeholder, select[type="password"]::placeholder, input[type="search"]::placeholder, textarea[type="search"]::placeholder, select[type="search"]::placeholder {
      color: #434d60;
      color: var(--input-placeholder-color);
    }

textarea {
  max-width: 100%;
  min-height: 4rem;
}

.input-wrapper {
  position: relative;
}

.input-wrapper + .input-wrapper {
    margin-top: 0.9375rem;
    margin-top: var(--spacer);
  }

.input-wrapper input,
  .input-wrapper textarea {
    background-color: #fff;
    background-color: var(--input-background);
    transition: padding 200ms;
    width: 100%;
  }

.input-wrapper:not(.select-wrapper) label {
    pointer-events: none;
    position: absolute;
    top: 0.3125rem;
    left: calc(0.75rem + 0.0625rem);
    left: calc(var(--input-padding-x) + var(--input-border-size));
    color: #434d60;
    color: var(--input-color);
    font-size: 0.75rem;
    opacity: 0;
    transform: translateY(100%);
    transition: opacity 400ms, transform 0ms linear 1s;
  }

/* & input:focus + label, & input:not(:placeholder-shown) + label { */

.input-wrapper input:not(:-moz-placeholder-shown) + label, .input-wrapper textarea:not(:-moz-placeholder-shown) + label {
    opacity: 1;
    transform: translateY(0);
    -moz-transition: opacity 400ms linear, transform 200ms ease-out;
    transition: opacity 400ms linear, transform 200ms ease-out;
  }

.input-wrapper input:not(:placeholder-shown) + label,
  .input-wrapper textarea:not(:placeholder-shown) + label {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 400ms linear, transform 200ms ease-out;
  }

/* & input:focus, & input:not(:placeholder-shown) { */

.input-wrapper input:not(:-moz-placeholder-shown), .input-wrapper textarea:not(:-moz-placeholder-shown) {
    padding-top: calc(0.75rem + 0.5625rem);
    padding-top: calc(12px + 0.5625rem);
    padding-top: calc(var(--input-padding-y) + 0.5625rem);
    padding-bottom: calc(0.75rem - 0.5625rem);
    padding-bottom: calc(12px - 0.5625rem);
    padding-bottom: calc(var(--input-padding-y) - 0.5625rem);
  }

.input-wrapper input:not(:placeholder-shown),
  .input-wrapper textarea:not(:placeholder-shown) {
    padding-top: calc(0.75rem + 0.5625rem);
    padding-top: calc(12px + 0.5625rem);
    padding-top: calc(var(--input-padding-y) + 0.5625rem);
    padding-bottom: calc(0.75rem - 0.5625rem);
    padding-bottom: calc(12px - 0.5625rem);
    padding-bottom: calc(var(--input-padding-y) - 0.5625rem);
  }

.input-single-digit {
}

.form-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-top: 0.9375rem;
  margin-top: var(--spacer);
}

.form-actions > a {
    display: inline-block;
  }

.form-actions > * + * {
    margin-left: 0.9375rem;
    margin-left: var(--spacer);
  }

.button-group > * + * {
    margin-left: 0.9375rem;
    margin-left: var(--spacer);
  }

[data-aria-hidden="true"] {
  display: none;
}

.contact-form input[type="submit"] {
    width: 100%;
  }

.social-linklist {
  display: flex;
  margin: 0;
  margin-left: -1.5625rem;
  margin-right: -1.5625rem;
  padding: 0;
  flex-wrap: wrap;
  list-style-type: none;
}

.social-linklist__item {
  margin: 0 1rem;
}

.social-linklist__link {
  display: flex;
  height: 2.5rem;
  width: 2.5rem;
  justify-content: center;
  align-items: center;
}

.newsletter-signup-form__field-wrapper {
  display: grid;
  margin: 0.9375rem auto 0;
  margin: var(--spacer) auto 0;
  grid-column-gap: 0.9375rem;
  grid-column-gap: var(--spacer);
  grid-row-gap: 0.9375rem;
  grid-row-gap: var(--spacer);
}

@media (min-width: 768px) {

.newsletter-signup-form__field-wrapper {
    grid-template-columns: 2fr 1fr;
}
  }

.hide {
  display: none;
}

.visually-hidden {
  position: absolute !important;
}

.visually-hidden {
  /* stylelint-disable-next-line */
  overflow: hidden;
  width: 0.0625rem;
  height: 0.0625rem;
  margin: -0.0625rem;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
}

@media (min-width: 992px) {

.mobile-only {
    display: none !important;
}
  }

@media (max-width: 991px) {

.desktop-only {
    display: none !important;
}
  }

/* Background Images */

.background-cover,
.background-image,
[data-responsive-background] {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

[data-responsive-background-image] {
  /* display: none; */
  opacity: 0.001;
  position: absolute;
  pointer-events: none;
  z-index: -1;
}

.paragraph-large {
  font-size: 1.5625rem;
  font-size: var(--paragraph-large-font-size);
}

.impact-text {
  font-family: "SangBleu Serif", serif;
  font-family: var(--font-family-secondary);
  font-size: 2.8125rem;
  line-height: 1.25;
}

.full-width {
  width: 100%;
}

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

.bold {
  font-weight: 700;
  font-weight: var(--font-weight-bold);
}

.cover {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}

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

.list--inline li {
    display: inline-block;
  }

.overline {
  display: block;
  font-size: 0.75rem;
  font-family: "Platform", sans-serif;
  font-family: var(--font-family-tertiary);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  letter-spacing: 0.15625rem;
  text-transform: uppercase;
  color: #6a6f81;
  color: var(--light-blue);
}

.aspect-ratio-image-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.aspect-ratio-image-wrapper::after {
    display: block;
    content: "";
  }

.aspect-ratio-image-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: 50% 50%;
       object-position: 50% 50%;
  }

.body-style-1 {
  font-family: "SangBleu Sunrise", serif;
  font-family: var(--font-sangbleu-sunrise);
  letter-spacing: 0.03125rem;
  font-weight: 400;
}

.body-style-4 {
  font-family: "Platform", sans-serif;
  font-family: var(--font-platform);
  letter-spacing: 0.125rem;
  font-weight: 400;
  text-transform: uppercase;
  font-size: 0.875rem;
}

.container,
ul.container,
.container--small,
.container--narrow,
.entry-content {
  margin-left: auto;
  margin-right: auto;
}

.container,
ul.container {
  max-width: 78.75rem;
  max-width: var(--container-width);
}

.container--small {
  max-width: 37.5rem;
  max-width: var(--container-width-small);
}

.container--narrow {
  max-width: 60rem;
  max-width: var(--container-width-narrow);
}

.entry-content {
  max-width: 60rem;
  max-width: var(--content-width-narrow);
}

.container--half-right {
  margin-right: auto;
  max-width: calc(78.75rem / 2);
  max-width: calc(var(--container-width) / 2);
}

.container--half-left {
  margin-left: auto;
  max-width: calc(78.75rem / 2);
  max-width: calc(var(--container-width) / 2);
}

.content-wrapper {
  padding-left: 1.5rem;
  padding-left: var(--edge-space);
  padding-right: 1.5rem;
  padding-right: var(--edge-space);
}

.media-grid {
  display: grid;
  grid-row-gap: calc(0.9375rem * 2);
  grid-row-gap: var(--spacer-large);
  grid-column-gap: calc(0.9375rem * 2);
  grid-column-gap: var(--spacer-large);
}

@media (min-width: 768px) {

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

.icon,
.svg-icon {
  display: inline-block;
  vertical-align: middle;
  width: 1.25em;
  height: 1.25em;
  fill: currentColor;
}

.svg-mark {
  fill: currentColor;
}

/* Package Styles */

/*! Flickity v2.3.0
https://flickity.metafizzy.co
---------------------------------------------- */

.flickity-enabled{position:relative}

.flickity-enabled:focus{outline:0}

.flickity-viewport{overflow:hidden;position:relative;height:100%}

.flickity-slider{position:absolute;width:100%;height:100%}

.flickity-enabled.is-draggable{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none}

.flickity-enabled.is-draggable .flickity-viewport{cursor:move;cursor:grab}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down{cursor:grabbing}

.flickity-button{position:absolute;background:hsla(0,0%,100%,.75);border:none;color:#333}

.flickity-button:hover{background:#fff;cursor:pointer}

.flickity-button:focus{outline:0;box-shadow:0 0 0 0.3125rem #19f}

.flickity-button:active{opacity:.6}

.flickity-button:disabled{opacity:.3;cursor:auto;pointer-events:none}

.flickity-button-icon{fill:currentColor}

.flickity-prev-next-button{top:50%;width:2.75rem;height:2.75rem;border-radius:50%;transform:translateY(-50%)}

.flickity-prev-next-button.previous{left:0.625rem}

.flickity-prev-next-button.next{right:0.625rem}

.flickity-rtl .flickity-prev-next-button.previous{left:auto;right:0.625rem}

.flickity-rtl .flickity-prev-next-button.next{right:auto;left:0.625rem}

.flickity-prev-next-button .flickity-button-icon{position:absolute;left:20%;top:20%;width:60%;height:60%}

.flickity-page-dots{position:absolute;width:100%;bottom:-1.5625rem;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:0.625rem;height:0.625rem;margin:0 0.5rem;background:#333;border-radius:50%;opacity:.25;cursor:pointer}

.flickity-page-dots .dot.is-selected{opacity:1}

/* Section Styles */

.content-cards {
  --content-card-image-offset: 0;

  display: grid;
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
}

@media (min-width: 992px) {

.content-cards {
    --content-card-image-offset: 1;
    grid-template-columns: repeat(2, 1fr);
}
  }

.content-cards:not(.text-center) .content-card__heading {
      text-align: center;
    }

@media (min-width: 992px) {

.content-cards:not(.text-center) .content-card__heading {
        text-align: left;
        margin-right: -3rem;
    }
      }

.content-card__text-wrapper,
.content-card__image-wrapper {
  margin: 1.875rem 0;
}

.content-card__text-wrapper {
  padding: 1.25rem 0;
}

.content-card__text-wrapper > * + * {
    margin-top: 1.5rem;
  }

@media (min-width: 992px) {

.content-card__text-wrapper {
    padding: 7rem 3rem;
}
  }

.content-card__image {
  width: 100%;
  height: auto;
}

@media (min-width: 992px) {

.content-card--2 .content-card__text-wrapper {
    margin-top: 6.1rem;
}
  }

@media (max-width: 991px) {

.text-wrapper-padding {
    padding: 0 1.5rem;
    padding: 0 var(--edge-space);
}
  }

.featured-material .featured-collection__list-item {
    --height: 21.5rem;

    min-height: 21.5rem;

    min-height: var(--height);
  }

@media (min-width: 992px) {

.featured-material .featured-collection__list-item {
      --height: 26.25rem;
  }
    }

.featured-material__top-border::before {
    display: block;
    content: "";
    height: 0.0625rem;
    background-color: #dad9d6;
    background-color: var(--border-color);
  }

:root {
  --process-bullet-offset: 6.4375rem;
}

.process {
  margin: 5.9375rem 0;
}

@media (min-width: 992px) {

.process {
    margin: 8rem 0;
}
  }

.process-list {
  display: grid;
  grid-row-gap: 3.75rem;
  margin-top: 4rem;
}

@media (min-width: 992px) {

.process-list {
    margin-top: 5.625rem;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 15%;
}
  }

.process-list__counter {
  --size: 4.0625rem;
  font-size: 4.0625rem;
  font-size: var(--size);
  font-family: "SangBleu Serif", serif;
  font-family: var(--font-sangbleu-serif);
}

@media (min-width: 992px) {

.process-list__counter {
    position: absolute;
    line-height: var(--size);
}
  }

.process-list__item {
  position: relative;
  padding-top: 1.4375rem;
  border-top: 0.0625rem solid #dad9d6;
  border-top: 0.0625rem solid var(--cotton);
}

.process-list__content > * + * {
    margin-top: 1.5rem;
  }

@media (min-width: 992px) {

.process-list__content {
    padding-left: 6.4375rem;
    padding-left: var(--process-bullet-offset);
}
  }

.process-list__subtitle {
  margin-top: 0.75rem;
}

.call-to-action {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 1.5rem;
  margin: var(--edge-space);
}

.call-to-action__heading {
  margin: 0 0 1.5rem;
}

.call-to-action__text-wrapper {
  margin: 1.5rem 0 1rem;
  max-width: 37.5rem;
  max-width: var(--global-width-small);
}

.call-to-action__link {
  margin: 0;
}

@media (min-width: 992px) {

.call-to-action__link {
    margin: 1rem 3.5625rem 0;
}
  }

.full-bleed-image--mobile {
  display: block;
  margin: 4.0625rem 0 3rem;
  width: 100%;
  height: auto;
}

.full-bleed-image--desktop {
  display: none;
  width: 100%;
  height: auto;
}

@media (min-width: 992px) {
  .full-bleed-image--mobile {
    display: none;
  }
  .full-bleed-image--desktop {
    display: block;
    margin: 5.4375rem 0 4rem;
  }
}

.hero-image-wrapper {
  position: relative;
  overflow: hidden;
  margin: 0 0 3.5625rem;
  min-height: 40vh;
}

.hero-image-wrapper::after {
    display: block;
    content: "";
    padding-bottom: 100%;
  }

@media (min-width: 992px) {

.hero-image-wrapper {
    margin: 0 0 5.4375rem;
    max-height: 80vh;
}
  }

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

/* Component Styles */

.button,
a.button {
  position: relative;
  display: inline-block;
  padding: 1rem;
  padding: var(--button-padding);
  line-height: 1;
  -webkit-text-decoration: none;
  text-decoration: none;
  font-family: "Platform", sans-serif;
  font-family: var(--button-font-family);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  font-size: 1rem;
  font-size: var(--button-font-size);
  letter-spacing: 0.1875rem;
  text-transform: uppercase;
  color: #fff;
  color: var(--button-color);
  background-color: #434d60;
  background-color: var(--button-background-color);
  border-color: #434d60;
  border-color: var(--button-border-color);
  border-width: 0.0625rem;
  border-width: var(--button-border-width);
  border-style: solid;
  border-radius: 0;
  border-radius: var(--button-border-radius);
  cursor: pointer;
  z-index: 1;
  overflow: hidden;
  text-align: center;
  transition: 0.3s;

  /* Hover & Active States */
}

.button:hover, a.button:hover {
    background-color: #bcb1af;
    background-color: var(--button-hover-background-color);
    border-color: #bcb1af;
    border-color: var(--button-hover-background-color);
    color: #434d60;
    color: var(--button-hover-color);
    transition-property: background-color color;
  }

.button:hover::after, a.button:hover::after {
      transform: scaleY(1);
    }

.button:active,
  a.button:active,
  .button:focus:active,
  a.button:focus:active {
    background-color: #d7d1cf;
    background-color: var(--button-active-background-color);
    border-color: #d7d1cf;
    border-color: var(--button-active-background-color);
    color: #434d60;
    color: var(--button-active-color);
  }

.button:active::after, a.button:active::after, .button:focus:active::after, a.button:focus:active::after {
      background-color: #d7d1cf;
      background-color: var(--button-active-background-color);
    }

/* Additional button styles */

.button.alt, a.button.alt {
    --button-border-color: transparent;
    --button-color: var(--blue);
    --button-background-color: transparent;
    --button-hover-background-color: transparent;
    --button-active-background-color: transparent;
    --button-underline-color: var(--button-color);
    position: relative;
  }

.button.alt::after, a.button.alt::after {
      position: absolute;
      top: calc(100% - (1rem - 0.125rem));
      top: calc(100% - (var(--button-padding) - 0.125rem));
      top: calc(100% - calc(1rem - 0.125rem));
      top: calc(100% - calc(16px - 0.125rem));
      top: calc(100% - calc(var(--button-padding) - 0.125rem));
      left: 1rem;
      left: var(--button-padding);
      content: "";
      height: 0.125rem;
      opacity: 0;
      width: calc(100% - (1rem * 2));
      width: calc(100% - (var(--button-padding) * 2));
      width: calc(100% - calc(1rem * 2));
      width: calc(100% - calc(var(--button-padding) * 2));
      background-color: var(--button-underline-color);
      transition: opacity 300ms linear;
      transition: opacity var(--global-transition);
    }

.button.alt:hover::after, a.button.alt:hover::after {
        opacity: 1;
      }

.button.alt:active,
    a.button.alt:active,
    .button.alt:focus:active,
    a.button.alt:focus:active {
      --button-active-color: var(--teal);
      --button-underline-color: var(--teal);
    }

.button.secondary, a.button.secondary {
    --button-border-color: var(--blue);
    --button-color: var(--blue);
    --button-background-color: var(--off-white);
  }

.button.secondary:focus, a.button.secondary:focus {
      outline: 0.125rem solid #69a297;
      outline: 0.125rem solid var(--teal);
    }

.button.tertiary, a.button.tertiary {
    --button-border-color: var(--off-white);
    --button-color: var(--blue);
    --button-background-color: var(--off-white);
  }

.button.tertiary:focus, a.button.tertiary:focus {
      outline: 0.125rem solid #69a297;
      outline: 0.125rem solid var(--teal);
    }

.button[disabled], a.button[disabled] {
    --button-border-color: var(--cotton);
    --button-color: var(--white);
    --button-background-color: var(--cotton);
    pointer-events: none;
  }

.button > *, a.button > * {
    pointer-events: none;
  }

.button.invisible, a.button.invisible {
    opacity: 0;
    pointer-events: none;
  }

.text-button,
button.text-button {
  background-color: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
  color: #845354;
  color: var(--link-color);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}

.text-button:hover, button.text-button:hover {
    color: #845354;
    color: var(--link-color-hover);
  }

.text-button:active, button.text-button:active {
    color: #845354;
    color: var(--link-color-active);
  }

.button-reset {
  all: unset;
  cursor: pointer;
}

.flickity-button {
  border-radius: 0;
  background: hsla(0, 0%, 100%, 0.8);
}

.flickity-button .flickity-button-icon {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 1.125rem;
    height: auto;
  }

.flickity-button:focus {
    box-shadow: none;
    outline: 0.125rem solid #69a297;
    outline: 0.125rem solid var(--teal);
  }

.flickity-button:disabled {
  display: none;
  opacity: 0;
}

.flickity-prev-next-button {
  --button-offset: -1.375rem;
  top: 50%;
}

.flickity-prev-next-button.previous {
    left: var(--button-offset);
  }

.flickity-prev-next-button.next {
    right: var(--button-offset);
  }

@media (min-width: 992px) {
    .flickity-prev-next-button.next {
      right: 0;
    }
  }

.featured-collection {
  margin: 3.75rem 0;
  padding: 3rem 0;
}

@media (min-width: 992px) {

.featured-collection__inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
}
  }

.featured-collection__header {
  display: grid;
  grid-row-gap: 0.5rem;
}

.featured-collection__eyebrow {
  color: #6a6f81;
  color: var(--light-blue);
  order: -1;
}

@media (max-width: 991px) {

.featured-collection__text-wrapper,
.featured-collection__list-wrapper {
    margin-left: auto;
    margin-right: auto;
    max-width: 78.75rem;
    max-width: var(--container-width);
    padding-left: 1.5rem;
    padding-left: var(--edge-space);
    padding-right: 1.5rem;
    padding-right: var(--edge-space);
}
  }

@media (min-width: 992px) {

.featured-collection__text-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1.5rem;
    padding: var(--edge-space);
}
  }

.featured-collection__text-wrapper-inner > * + * {
    margin-top: 1.5rem;
  }

@media (min-width: 992px) {

.featured-collection__text-wrapper-inner {
    max-width: 20rem;
}
  }

.featured-collection__link {
  margin-top: 1rem;
  margin-left: calc(1rem * -1);
  margin-left: calc(var(--button-padding) * -1);
}

.featured-collection__list {
  margin-top: calc(0.9375rem * 2);
  margin-top: var(--spacer-large);
}

@media (min-width: 992px) {

.featured-collection__list {
    margin-left: auto;
    width: 63vw;
}
  }

.featured-collection__list-item {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-right: 2rem;
  min-height: 100%;
}

@media (min-width: 768px) {

.featured-collection__list-item {
    width: 43%;
}
  }

/* Footer Styles */

.footer {
  --link-color: var(--dark-purple);
  --link-color-hover: var(--dark-purple);
  --link-color-active: var(--dark-purple);
  --body-font-color: var(--dark-purple);

  background-color: #f9f5f2;

  background-color: var(--body-background-color);
  background-repeat: no-repeat;
  background-position: bottom right;
  background-size: contain;
}

@media (max-width: 767px) {

.footer {
    padding-bottom: 70%;
}

    .footer .social-linklist {
      justify-content: center;
    }
  }

@media (min-width: 768px) {

.footer {
    padding: 4.375rem 0 2.8125rem 0;
    background-size: 45%;
}
  }

.footer__inner > * + * {
    margin-top: 1.25rem;
  }

@media (min-width: 768px) {

.footer__inner {
    margin-left: 5.625rem;
}
  }

.footer__logo-wrapper {
  margin: 0 auto;
  width: 100%;
  height: auto;
  max-width: 15.8125rem;
}

.footer__logo-wrapper svg {
    fill: currentColor;
    max-width: 100%;
  }

@media (min-width: 768px) {

.footer__logo-wrapper {
    margin: 3.75rem auto 1.25rem 0;
}
  }

.footer-linklist {
  text-align: center;
}

@media (max-width: 767px) {
    .footer-linklist > * + * {
      margin-top: 0.625rem;
    }
  }

@media (min-width: 768px) {

.footer-linklist {
    display: flex;
    flex-wrap: wrap;
    margin-left: -1rem;
    margin-right: -1rem;
}
  }

.footer-linklist__item {
  margin: 0 1rem;
}

.footer-linklist__link {
  display: inline-block;
  position: relative;
  padding: 0.625rem 0;
  -webkit-text-decoration: none;
  text-decoration: none;
  font-family: "Platform", sans-serif;
  font-family: var(--button-font-family);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  text-transform: uppercase;
  letter-spacing: 0.125rem;
}

@media (min-width: 768px) {

.footer-linklist__link {
    white-space: nowrap;
}
  }

.footer-linklist__link:hover {
    -webkit-text-decoration: underline;
    text-decoration: underline;
  }

.footer__newsletter-form {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  max-width: 31.25rem;
}

@media (min-width: 768px) {

.footer__newsletter-form {
    margin-left: 0;
    text-align: left;
}
  }

@media (max-width: 767px) {
    .footer__attribution-wrapper > * + * {
      margin-top: 0.9375rem;
      margin-top: var(--spacer);
    }
  }

@media (min-width: 768px) {

.footer__attribution-wrapper {
    display: flex;
}

    .footer__attribution-wrapper > * + * {
      margin-left: 3.125rem;
    }
  }

.site-attribution a {
    vertical-align: middle;
  }

.site-attribution .svg-mark {
    height: 1.5rem;
    width: auto;
  }

/* Hamburger */

/* ================================================== */

.hamburger {
  --hamburger-layer-height: 0.125rem;
  --hamburger-layer-width: 1.25rem;
  --hamburger-layer-spacing: 0.4375rem;
  --hamburger-layer-border-radius: 0.25rem;
  --hamburger-layer-color: var(--header-color);

  display: inline-block;
  position: relative;
  cursor: pointer;

  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;

  height: 0.125rem;

  height: var(--hamburger-layer-height);
  width: 1.25rem;
  width: var(--hamburger-layer-width);
  border-radius: 0.25rem;
  border-radius: var(--hamburger-layer-border-radius);
  color: inherit;
  text-transform: none;
  background-color: #343042;
  background-color: var(--hamburger-layer-color);
  background-clip: content-box;
  border: 0;
  margin: 0;
  overflow: visible;
  margin: 0.4375rem 0;
  margin: var(--hamburger-layer-spacing) 0;
  transition: background-color 300ms ease;
  transition: background-color var(--transition-duration) ease;
}

.hamburger::before,
  .hamburger::after {
    content: "";
    position: absolute;
    display: block;
    height: var(--hamburger-layer-height);
    width: 100%;
    left: 0;
    background-color: var(--hamburger-layer-color);
    border-radius: var(--hamburger-layer-border-radius);
    transition: transform 300ms ease;
    transition: transform var(--transition-duration) ease;
    transform-origin: center left;
  }

.hamburger::before {
    bottom: var(--hamburger-layer-spacing);
  }

.hamburger::after {
    top: var(--hamburger-layer-spacing);
  }

.hamburger.active,
.hamburger-wrap.active .hamburger {
  background-color: transparent;
}

.hamburger.active::before, .hamburger-wrap.active .hamburger::before {
    transform: rotate(45deg) scaleX(1);
  }

.hamburger.active::after, .hamburger-wrap.active .hamburger::after {
    transform: rotate(-45deg) scaleX(1);
  }

.hamburger-wrap {
  padding: 0.625rem;
  border: 0;
  background-color: transparent;
  cursor: pointer;
}

/* Header Styles */

.header {
  background-color: #f9f5f2;
  background-color: var(--header-background-color);
}

.header-inner {
  display: grid;
  grid-template-areas: "nav branding utilities";
  grid-template-columns: 1fr 2fr 1fr;
  position: relative;
  z-index: 1;
  transition: background-color 300ms linear;
  transition: background-color var(--global-transition);
}

@media (min-width: 992px) {

.header-inner {
    grid-template-columns: 1fr calc(7.8125rem + 5rem) 1fr;
    grid-template-columns: 1fr calc(125px + 5rem) 1fr;
    grid-template-columns: 1fr calc(var(--header-logo-width) + 5rem) 1fr;
}
  }

.header__nav,
.header__util {
  display: flex;
  align-items: center;
  position: relative;
}

.header__nav {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: nav;
}

.header__util {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: utilities;
}

.header__branding {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: branding;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 1.25rem 0;
}

@media (min-width: 992px) {

.header__branding {
    padding: 2rem 0;
}
  }

.header__branding .logo-image {
    --link-color-hover: var(--header-color);
    display: inline-flex;
    max-width: 7.8125rem;
    max-width: var(--header-logo-width);
    transition: color 300ms linear;
    transition: color var(--global-transition);
  }

.header__branding .logo-image .svg-graphic {
      max-width: 100%;
      height: auto;
      fill: currentColor;
    }

@media (min-width: 992px) {
  .header__util {
    justify-content: space-around;
  }
}

a .header-link header-link--cart:focus {
  outline: 0.125rem solid #69a297;
  outline: 0.125rem solid var(--teal);
}

.header-link {
  --link-color: var(--header-color);
  --link-color-hover: var(--header-color);
  --header-link-padding: 0.625rem;

  display: inline-block;
  position: relative;
  padding: 0.625rem;
  padding: var(--header-link-padding);
  color: #343042;
  color: var(--link-color);
  font-family: "Platform", sans-serif;
  font-family: var(--font-platform);
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  line-height: 1.13;
  letter-spacing: 0.125rem;
  text-transform: uppercase;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: color 300ms linear;
  transition: color var(--global-transition);
  cursor: pointer;
}

.header-link::before {
    content: "";
    position: absolute;
    bottom: calc(var(--header-link-padding) - 0.125rem);
    left: var(--header-link-padding);
    height: 0.125rem;
    width: calc(100% - (var(--header-link-padding) * 2));
    width: calc(100% - calc(var(--header-link-padding) * 2));
    opacity: 0;
    pointer-events: none;
    background-color: #343042;
    background-color: var(--header-color);
    transition: opacity 300ms linear;
    transition: opacity var(--global-transition);
  }

@media (min-width: 992px) {

.header-link::before {
      width: calc(100% - (var(--header-link-padding) * 2));
      width: calc(100% - calc(var(--header-link-padding) * 2));
  }
    }

.header-link:hover::before,
  .header-link:focus::before {
    opacity: 1;
  }

@media (max-width: 991px) {
  .header__util {
    justify-content: flex-end;
  }

    .header__util .header-link:not(.header-link--cart) {
      display: none;
    }
}

.header-link--cart {
  position: relative;
}

.header-link--cart a:focus {
    outline: 0.125rem solid #69a297;
    outline: 0.125rem solid var(--teal);
    outline-offset: 0.1875rem;
  }

@media (max-width: 991px) {
    .header-link--cart span:not(.cart-badge) {
      display: none;
    }
  }

@media (min-width: 992px) {
    .header-link--cart .svg-icon {
      display: none;
    }
  }

.cart-badge {
  position: absolute;
  top: 0.3125rem;
  right: 0.3125rem;
  border: 0.0625rem solid #f9f5f2;
  border: 0.0625rem solid var(--off-white);
  padding: 0.3125rem;
  border-radius: 50%;
  background-color: #845354;
  background-color: var(--dusty-red);
}

@media (min-width: 992px) {

.cart-badge {
    display: none;
}
  }

.material-card__image {
  position: absolute;
  margin: 0;
  top: 0;
  left: 0;
  opacity: 0.18;
  pointer-events: none;
  transition: opacity 300ms linear;
  transition: opacity var(--global-transition);
}

.material-card {
  --padding: 1.875rem;

  flex: 1;
  display: flex;
  flex-direction: column;
  position: relative;
  background-color: #fff;
  background-color: var(--white);
  padding: 1.875rem;
  padding: var(--padding);
  height: 100%;
  min-height: var(--height);
}

.material-card > * + * {
    margin-top: 1.5rem;
  }

@media (min-width: 992px) {

.material-card {
    --padding: 4rem;
}
  }

.material-card:hover .material-card__image {
      opacity: 1;
    }

.material-card__link,
.material-card__link.button {
  margin-top: auto;
  width: 100%;
  position: static;
  position: initial;
}

.material-card__link::before, .material-card__link.button::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }

.material-card__summary {
  margin-bottom: 1.5rem;
}

.material-card__summary p + p {
    margin-top: 1.5rem;
  }

.media-card {
  --link-color: var(--dark-purple);

  display: flex;
  flex-direction: column;
  position: relative;
}

.media-card .button {
    opacity: 0;
    transition: opacity 300ms linear;
    transition: opacity var(--global-transition);
  }

.media-card .button:focus {
      opacity: 1;
      outline: 0.125rem solid #69a297;
      outline: 0.125rem solid var(--teal);
    }

.media-card:hover .button {
      opacity: 1;
    }

.media-card__text {
  display: grid;
  grid-row-gap: 0.375rem;
  margin-top: 0.9375rem;
  margin-top: var(--spacer);
  order: 1;
}

/* Raise z-index of text above link */

.media-card__supplemental {
  position: relative;
  text-transform: lowercase;
}

.media-card__tagline {
  display: block;
  margin-top: 0.375rem;
  text-transform: none;
  text-transform: initial;
}

.media-card__image-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
  background-color: #dad9d6;
  background-color: var(--cotton);
}

@media (min-width: 992px) {

.media-card__image-wrapper {
    width: 97.2%;
}
  }

.media-card__image-wrapper::after {
    display: block;
    content: "";
    padding-bottom: calc(100% / 1);
    padding-bottom: calc(100% / var(--media-image-aspect-ratio));
  }

.media-card__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.media-card__quick-view-wrapper {
  position: absolute;
  padding: 0.9375rem;
  padding: var(--spacer);
  width: 100%;
  bottom: 0;
}

.media-card__quick-view-wrapper .button {
    width: 100%;
    z-index: 1;
  }

a.media-card__link {
  color: inherit;
  -webkit-text-decoration: none;
  text-decoration: none;
}

a.media-card__link::after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
  }

.modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
}

.modal__container {
  position: relative;
  background-color: #f9f5f2;
  background-color: var(--off-white);
  padding: 4rem;
  padding: var(--modal-padding);
  max-width: 50rem;
  max-width: var(--modal-width);
  width: 90%;
  max-height: 99vh;
  overflow-y: auto;
}

.modal__container table {
    margin: 0 auto;
    width: 100%;
    max-width: 25rem;
    border-collapse: collapse;
    font-size: 0.875rem;
  }

.modal__container th,
  .modal__container td {
    border-top: 0.0625rem solid #dad9d6;
    border-top: var(--global-border);
    border-bottom: 0.0625rem solid #dad9d6;
    border-bottom: var(--global-border);
    padding: 0.9375rem 0;
  }

.modal__container th {
    text-align: left;
  }

.modal__container td {
    text-align: right;
  }

.modal__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.modal__title {
}

.modal__close {
  position: absolute;
  top: 0.625rem;
  right: 0.625rem;
  background: transparent;
  border: 0;
}

.modal__header .modal__close:before {
  content: "\2715";
}

.modal__content {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.modal__btn {
  font-size: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  background-color: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  border-radius: 0.25rem;
  border-style: none;
  border-width: 0;
  cursor: pointer;
  -webkit-appearance: button;
  text-transform: none;
  overflow: visible;
  line-height: 1.15;
  margin: 0;
  will-change: transform;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translateZ(0);
  transition: transform 0.25s ease-out;
}

/**************************\
  Demo Animation Style
\**************************/

@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes mmslideIn {
  from {
    transform: translateY(15%);
  }
  to {
    transform: translateY(0);
  }
}

@keyframes mmslideOut {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-10%);
  }
}

.micromodal-slide {
  display: none;
}

.micromodal-slide.is-open {
  display: block;
}

.micromodal-slide[aria-hidden="false"] .modal__overlay {
  animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden="false"] .modal__container {
  animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden="true"] .modal__overlay {
  animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden="true"] .modal__container {
  animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide .modal__container,
.micromodal-slide .modal__overlay {
  will-change: transform;
}

#primary-navigation {
  --nav-border: 0.0625rem solid var(--cotton);

  width: 100%;
  z-index: 11;
  z-index: var(--nav-z-index);
}

#primary-navigation .nav-menu {
    list-style: none;
    margin: 0;
  }

/* Mobile Nav */

@media (max-width: 991px) {

#primary-navigation {
    --nav-mode: mobile;

    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: var(--header-height) 1fr;
    grid-template-areas:
      "spacer"
      "nav";
    pointer-events: none;
}

    #primary-navigation > .nav-menu.primary {
      -ms-grid-row: 1;
      -ms-grid-column: 1;
      grid-area: nav;
      background-color: #f9f5f2;
      background-color: var(--subnav-background-color);
      pointer-events: auto;
    }

    @media (max-width: 991px){

#primary-navigation > .nav-menu.primary {-ms-grid-row: 2;-ms-grid-column: 1;
}}

    /* & .nav-utilities {
      grid-area: utility;
      background-color: var(--subnav-background-color);
      pointer-events: auto;
    } */

    #primary-navigation:not(.active) {
      display: none;
    }

    #primary-navigation .nav-menu.active {
      animation: fade-in 300ms linear;
      animation: fade-in var(--global-transition);
    }

#primary-navigation > .header__nav {-ms-grid-row: 2;-ms-grid-column: 1;
}
  }

/* Desktop Nav */

@media (min-width: 992px) {

#primary-navigation {
    --nav-mode: desktop;
}

    #primary-navigation .nav-item.nav-control-wrapper {
      display: none;
    }

    #primary-navigation .nav-menu.primary {
      display: flex;
      justify-content: space-around;
    }
  }

/* End #primary-navigation */

@media (min-width: 992px) {
  body::after {
    content: "";
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgb(67, 77, 96, 0.8);
    background-color: var(--scrim-dark);
    pointer-events: none;
    opacity: 0;
    transition: none;
    z-index: 1;
  }

  body.subnav-active::after,
  body.header-search-open::after {
    opacity: 1;
    transition: opacity 300ms ease-in 300ms;
  }

  body.header-search-open::after {
    pointer-events: all;
  }
}

.primary-nav-toggle {
  position: relative;
  all: unset;
  align-self: center;
  padding: 1.5625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 3;
}

.primary-nav-toggle > * {
    pointer-events: none;
  }

/* display hamburger */

@media (min-width: 992px) {

.primary-nav-toggle {
    display: none;
}
  }

.primary-nav-toggle:focus {
  outline: 0.125rem solid #69a297;
  outline: 0.125rem solid var(--teal);
}

.nav-menu:not(does-not-exist), ol.nav-menu, ul.nav-menu {
  font-size: 1rem;
  font-family: "Platform", sans-serif;
  font-family: var(--font-family-tertiary);
  letter-spacing: 0.125rem;
}

@media (max-width: 991px) {

.nav-menu:not(does-not-exist), ol.nav-menu, ul.nav-menu {
    position: absolute;
    width: 100vw;
    height: 100%;
    padding: 1.875rem max(0.9375rem, 5vw);
}

    .nav-menu:not(does-not-exist):not(.active), ol.nav-menu:not(.active), ul.nav-menu:not(.active) {
      display: none;
    }

    .active.nav-menu:not(does-not-exist), ol.active.nav-menu, ul.active.nav-menu {
      animation: fade-in 300ms linear;
      animation: fade-in var(--global-transition);
    }
  }

@media (min-width: 992px) {

.nav-menu:not(does-not-exist), ol.nav-menu, ul.nav-menu {
    /* padding: 80px max(15px, 5vw); */
}
  }

.primary.nav-menu:not(does-not-exist), ol.primary.nav-menu, ul.primary.nav-menu {
    z-index: 1;
  }

@media (max-width: 991px) {

.primary.nav-menu:not(does-not-exist), ol.primary.nav-menu, ul.primary.nav-menu {
      display: flex;
      flex-direction: column;
  }
    }

@media (min-width: 992px) {

.primary.nav-menu:not(does-not-exist), ol.primary.nav-menu, ul.primary.nav-menu {
      position: static;
      display: flex;
      align-items: center;
      animation: none 0s ease 0s 1 normal none running;
      animation: initial;
      padding: 0;
      padding: initial;
      font-size: 1rem;
  }

      .primary.nav-menu:not(does-not-exist) > .nav-item + .nav-item, ol.primary.nav-menu > .nav-item + .nav-item, ul.primary.nav-menu > .nav-item + .nav-item {
        /* margin-left: min(45px, 10%); */
      }
    }

.primary.nav-menu:not(does-not-exist) > .nav-control-wrapper > .nav-control.back-button, ol.primary.nav-menu > .nav-control-wrapper > .nav-control.back-button, ul.primary.nav-menu > .nav-control-wrapper > .nav-control.back-button {
      opacity: 0;
      pointer-events: none;
    }

.secondary.nav-menu:not(does-not-exist), ol.secondary.nav-menu, ul.secondary.nav-menu {
    top: 0;
    left: 0;
    height: 100vh;
    background-color: #f9f5f2;
    background-color: var(--subnav-background-color);
    z-index: 2;
  }

.secondary.nav-menu:not(does-not-exist)::before {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-color: #f9f5f2;
      background-color: var(--subnav-background-color);
      z-index: -1;
    }

ol.secondary.nav-menu::before {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-color: #f9f5f2;
      background-color: var(--subnav-background-color);
      z-index: -1;
    }

ul.secondary.nav-menu::before {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-color: #f9f5f2;
      background-color: var(--subnav-background-color);
      z-index: -1;
    }

@media (min-width: 992px) {

.secondary.nav-menu:not(does-not-exist), ol.secondary.nav-menu, ul.secondary.nav-menu {
      position: absolute;
      top: 100%;
      right: 100%;
      height: auto;
      width: 100vw;
      padding: 4.375rem 1.25rem;
  }

      .secondary.nav-menu:not(does-not-exist):not(.active), ol.secondary.nav-menu:not(.active), ul.secondary.nav-menu:not(.active) {
        display: none;
      }

      .secondary.active.nav-menu:not(does-not-exist), ol.secondary.active.nav-menu, ul.secondary.active.nav-menu {
        display: flex;
        justify-content: center;
        animation: fade-in 300ms linear;
        animation: fade-in var(--global-transition);
      }

      .secondary.nav-menu:not(does-not-exist) > *:not(:last-child) {
        margin-right: 2rem;
        max-width: 13.875rem;
      }

      ol.secondary.nav-menu > *:not(:last-child) {
        margin-right: 2rem;
        max-width: 13.875rem;
      }

      ul.secondary.nav-menu > *:not(:last-child) {
        margin-right: 2rem;
        max-width: 13.875rem;
      }
    }

@media (max-width: 991px) {

.tertiary.nav-menu:not(does-not-exist), ol.tertiary.nav-menu, ul.tertiary.nav-menu {
      position: absolute;
      left: 0;
      top: 0;
      height: 100%;
      background-color: #f9f5f2;
      background-color: var(--subnav-background-color);
      z-index: 1;
  }
    }

@media (min-width: 992px) {

.tertiary.nav-menu:not(does-not-exist), ol.tertiary.nav-menu, ul.tertiary.nav-menu {
      --link-color: var(--light-blue);
      --link-color-hover: var(--dark-purple);

      color: #6a6f81;

      color: var(--link-color);
      display: block;
      position: static;
      padding: 0 6.25rem 0 0;
      border-top: var(--nav-border);
  }
    }

@media (max-width: 991px) {

.nav-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: var(--nav-border);
    padding: 1.4375rem 0;
}
  }

.nav-item {
  <<<<<<< HEAD ======= & a {
    width: 100%;
  }
}

.nav-item a:active {
    -webkit-text-decoration: none;
    text-decoration: none;
  }

.nav-item>>>>>>>c7b7daa8b8f5c954473dc9cc1c4753d1c0e57b5f .nav-item a {
    width: 100%;
  }

.nav-item>>>>>>>c7b7daa8b8f5c954473dc9cc1c4753d1c0e57b5f .nav-item a:active {
      -webkit-text-decoration: none;
      text-decoration: none;
    }

@media (min-width: 992px) {

.nav-item.secondary > .nav-link {
        margin-left: 0.3125rem;
        margin-bottom: 1rem;
        font-weight: 500;
        font-weight: var(--font-weight-medium);
    }
      }

.nav-item.tertiary {
    padding: 0.3125rem;
  }

.nav-item.tertiary > .nav-link {
      font-weight: normal;
      padding: 1.4375rem 0;
    }

@media (min-width: 992px) {

.nav-item.tertiary > .nav-link {
        padding: 0.3125rem 0;
    }
      }

@media (min-width: 992px) {
  .nav-item.tertiary + .nav-item {
    padding-top: 1.125rem;
  }
}

.nav-control {
  all: unset;
  display: flex;
  align-items: center;
  color: inherit;
  border-bottom: 0.0625rem solid transparent;
}

@media (min-width: 992px) {

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

.nav-control .nav-control-label {
    font-weight: 500;
    font-weight: var(--font-weight-medium);
    text-transform: uppercase;
  }

.nav-control.back-button .icon {
      width: 1.875rem;
      transform: rotate(180deg);
    }

@media (min-width: 992px) {

.nav-control.back-button {
      display: none;
  }
    }

@media (max-width: 991px) {
      .nav-control.subnav-trigger .icon {
        transform: rotate(-90deg);
        width: 0.9375rem;
      }
    }

@media (min-width: 992px) {

.nav-control.subnav-trigger {
      margin-right: -0.5625rem;
  }

      .nav-control.subnav-trigger .icon {
        width: 0.5625rem;
      }

      .nav-control.subnav-trigger:not(:focus) {
        opacity: 0;
        pointer-events: none;
      }
    }

@media (min-width: 992px) {
  [data-whatintent="touch"] .subnav-trigger, [data-whatintent="mouse"] .subnav-trigger, .nav-item.secondary .subnav-trigger {
    visibility: hidden;
    display: none;
  }
}

.nav-spacer {
  display: inline-block;
  min-height: 1.25em;
  width: 0.0625rem;
}

@media (max-width: 991px) {

.nav-menu:not(does-not-exist) > * + *, ol.nav-menu > * + *, ul.nav-menu > * + * {
    /* margin-top: 20px; */
}
  }

@media (max-width: 991px) {

.nav-menu.subnav:not(does-not-exist), ol.nav-menu.subnav, ul.nav-menu.subnav {
}
  }

@media (min-width: 992px) {

.nav-menu.subnav:not(does-not-exist), ol.nav-menu.subnav, ul.nav-menu.subnav {
    /* min-width: min(300px, 100vw); */
}
  }

.nav-link {
  display: inline-block;
  white-space: nowrap;
  -webkit-text-decoration: none;
  text-decoration: none;
  text-transform: uppercase;
}

.nav-link::before,
.nav-link:hover {
  -webkit-text-decoration: none;
  text-decoration: none;
}

.nav-link-subtext {
  display: block;
  font-family: "SangBleu Sunrise", serif;
  font-family: var(--font-family-primary);
  font-size: 0.75rem;
  line-height: 1.75;
  letter-spacing: 0.02688rem;
  color: #845354;
  color: var(--dusty-red);
  text-transform: none;
}

.nav-card {
  --link-color: var(--dusty-red);
  max-width: min(11.5rem, 100%);
  font-family: "SangBleu Sunrise", serif;
  font-family: var(--font-family-primary);
  font-size: 0.875rem;
  line-height: 1.5;
  letter-spacing: 0.03125rem;
}

.nav-card > * + * {
    margin-top: 1rem;
  }

@media (max-width: 991px) {

.nav-card {
    display: none;
}
  }

.nav-card-paragraph {
}

.nav-card-link {
  display: block;
}

.nav-utilities-item {
}

/* Mobile Utilities */

.nav-utilities {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  padding: 0.9375rem;
  z-index: 1;
}

@media (min-width: 992px) {

.nav-utilities {
    display: none;
}
  }

.nav-utility-account {
  width: 100%;
  padding-top: 1.5rem;
  text-align: center;
}

.nav-utility-account .button {
    display: block;
  }

.nav-utility-register {
  --link-color: var(--dusty-red);

  padding-top: 1.5rem;
  font-family: "SangBleu Sunrise", serif;
  font-family: var(--font-family-primary);
  letter-spacing: 0.03125rem;
}

.nav-utility-register a {
    display: block;
    margin-top: 0.75rem;
  }

.page-banner {
  display: grid;
  text-align: center;
}

@media (min-width: 992px) {

.page-banner {
    margin-bottom: 3rem;
    text-align: left;
    grid-row-gap: 0;
}
  }

.page-banner__text-wrapper {
  margin: 4rem 0;
}

@media (max-width: 991px) {
    .page-banner__text-wrapper > * + * {
      margin-top: 0.9375rem;
      margin-top: var(--spacer);
    }
  }

@media (min-width: 992px) {

.page-banner__text-wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 2rem;
    margin: 3.75rem 0;
}
  }

@media (min-width: 992px) {

.page-banner__heading-wrapper,
.page-banner__description-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
  }

.page-banner__image-wrapper {
  position: relative;
  order: -1;
  max-height: 70vh;
  overflow: hidden;
}

.page-banner__image-wrapper::after {
    display: block;
    content: "";
    padding-bottom: 100%;
  }

.page-banner__image {
  position: absolute;
  top: 0;
  left: 0;
}

.pagination {
  text-align: center;
}

.pagination a {
    -webkit-text-decoration: none;
    text-decoration: none;
  }

.pdp-modal__nav-list {
  --link-color: var(--dark-purple);

  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 3.75rem;
}

.pdp-modal__nav-list li {
    display: block;
    margin: 0.5rem 1.5rem;
  }

.pdp-modal__nav-list a {
    -webkit-text-decoration: none;
    text-decoration: none;
  }

.pdp-modal__nav-list a::after {
      content: "";
      position: absolute;
      display: block;
      width: 100%;
      height: 0.125rem;
      bottom: 0;
      left: 0;
      background-color: #6a6f81;
      background-color: var(--light-blue);
      opacity: 0;
      transition: opacity 300ms linear;
      transition: opacity var(--global-transition);
    }

.pdp-modal__nav-list [aria-selected="true"] {
    position: relative;
  }

.pdp-modal__nav-list [aria-selected="true"]::after {
      opacity: 1;
    }

.pdp-modal__subheading {
  margin-bottom: 1.25rem;
  font-size: 1rem;
}

.product-form__fieldset {
  border: none;
  padding: 0;
  margin: 0;
  margin-top: calc(0.9375rem * 2);
  margin-top: var(--spacer-large);
}

.product-form__input-container {
  display: flex;
  margin-top: 0.125rem;
  margin-left: -0.375rem;
  margin-right: -0.375rem;
  flex-wrap: wrap;
}

@media (min-width: 768px) {

.product-form__input-container {
    flex-wrap: nowrap !important;
}
  }

.product-form__input-container--flex-wrap {
  display: flex;
  margin-top: 0.125rem;
  margin-left: -0.375rem;
  margin-right: -0.375rem;
  flex-wrap: wrap;
}

.product-form__label {
  display: block;
  border: 0.0625rem solid #dad9d6;
  border: var(--global-border);
  padding: 0.5625rem 1.4375rem;
  text-align: center;
  font-size: 0.75rem;
  text-transform: uppercase;
  color: #434d60;
  color: var(--blue);
  letter-spacing: 0.15625rem;
  font-weight: 500;
  font-weight: var(--font-weight-medium);
  font-family: "Platform", sans-serif;
  font-family: var(--font-platform);
  cursor: pointer;
}

.product-form__label--color {
  padding: 0;
  border: none;
}

.product-form__swatch {
  display: block;
  border: 0.0625rem solid #dad9d6;
  border: var(--global-border);
  margin-bottom: 0.625rem;
  height: 2rem;
  width: 4rem;
  background-color: white;
  overflow: hidden;
  text-indent: -625rem;
}

.product-form__input-wrapper {
  margin: 0.375rem;
}

.product-form__fieldset:not(.product-form__fieldset--color) .product-form__input-wrapper {
    flex: 1 1 50%;
  }

.product-form__input:disabled + label {
  border: solid 0.0625rem #dad9d6;
  border: solid 0.0625rem var(--cotton);
  background-color: #dad9d6;
  background-color: var(--cotton);
  color: #f9f5f2;
  color: var(--off-white);
}

/*
.product-form__input:focus + label {
  position: relative;
  outline: 2px solid var(--teal);
  outline-offset: 3px;
}
*/

:not([data-whatintent="keyboard"]) .product-form__input:focus + label {
  outline: none;
}

[data-whatintent="keyboard"] .product-form__input:focus + label {
  outline: 0.125rem solid #69a297;
  outline: var(--keyboard-focus-ring);
  outline-offset: 0.1875rem;
}

.product-form__input:checked + label:not(.product-form__label--color),
  .product-form__input:checked + .product-form__label--color .product-form__swatch {
    border: 0.0625rem solid #434d60;
    border: var(--button-border-width) solid var(--blue);
    box-shadow: none;
  }

.product-form__input:checked + .product-form__label--color {
    color: #343042;
    color: var(--dark-purple);
  }

.product-form__submit {
  width: 100%;
}

.product-submit__price-wrapper {
  position: relative;
  display: inline-block;
  padding-left: 0.625rem;
  margin-left: 0.1875rem;

  /* &::before {
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 13px;
    content: "";
    width: 2px;
    background-color: currentColor;
  }*/
}

.product-form__message {
  margin: 0.9375rem 0 0;
  margin: var(--spacer) 0 0;
  display: flex;
  gap: 0.5rem;
  align-items: center;
  color: #845354;
  color: var(--dusty-red);
}

.product-form__message .product-form__message-icon {
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 2.5rem;
    height: 2.5rem;
  }

.product-form__message:not(.active) {
    display: none;
  }

.connected-upsell-button {
  margin-top: 1rem;
}

.product-title > * + * {
    margin-top: 0.5rem;
  }

.product-title__eyebrow,
.product-title__base {
  display: block;
}

.search-form .search-input {
    background-color: transparent;
    border: 0;
  }

[data-whatintent="touch"] .search-input:focus, [data-whatintent="mouse"] .search-input:focus {
  outline: none;
}

.search-form-inner {
  display: grid;
}

.search-submit {
  all: unset;
  cursor: pointer;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  color: #434d60;
  color: var(--blue);
}

/* Nav Search Form */

.search-form--nav {
  width: 100%;
  border: var(--nav-border);
  background-color: #fff;
  background-color: var(--white);
}

.search-form--nav .search-form-inner {
    grid-template-columns: 1fr 3rem;
  }

.search-form--nav::-moz-placeholder {
    color: #434d60;
    color: var(--blue);
  }

.search-form--nav::placeholder {
    color: #434d60;
    color: var(--blue);
  }

.search-form--nav .search-input {
    padding-right: 0;
  }

.search-form--nav .search-submit {
    padding: 0.75rem;
  }

/* Header Search Form */

.search-form--header {
  position: fixed;
  top: var(--header-height);
  left: 0;
  right: 0;
  z-index: calc(11 - 1);
  z-index: calc(var(--nav-z-index) - 1);
  width: 100vw;
  padding: 3.625rem;
  background-color: #f9f5f2;
  background-color: var(--header-background-color);
}

.search-form--header:not(.active) {
    display: none;
  }

.search-form--header.active {
    animation: fade-in 300ms linear;
    animation: fade-in var(--global-transition);
  }

.search-form--header .search-form-inner {
    grid-template-columns: 1fr 3.125rem;
  }

.search-form--header .search-input {
    color: #343042;
    color: var(--dark-purple);
    font-size: 1.5rem;
    line-height: normal;
    letter-spacing: 0.05375rem;
    padding-left: 0;
  }

.search-form--header .search-input::-moz-placeholder {
      opacity: 0.5;
    }

.search-form--header .search-input::placeholder {
      opacity: 0.5;
    }

.search-form--header .search-form-inner {
    max-width: 37.5rem;
    margin: 0 auto;
    border-bottom: solid 0.0625rem #dad9d6;
    border-bottom: solid 0.0625rem var(--cotton);
  }

/* Search Result Page */

.search-page-title {
  text-transform: inherit;
  line-height: 1.5;
  letter-spacing: 0.03125rem;
  font-family: "SangBleu Sunrise", serif;
  font-family: var(--font-family-primary);
}

.form-container {
  max-width: 25rem;
  margin: 0 auto;
}

.form-container input {
    display: block;
    width: 100%;
  }

.form-container button {
    width: 100%;
  }

.search-spacing {
  margin: 2.5rem 0;
}

.search-grid {
  display: grid;
  grid-template-rows: 1fr;
  grid-template-columns: auto;
  grid-auto-flow: row;
  grid-column-gap: 1.375rem;
  grid-column-gap: var(--form-spacer);
  grid-row-gap: 1.375rem;
  grid-row-gap: var(--form-spacer);
}

@media (min-width: 768px) {

.search-grid {
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr 1fr;
    grid-row-gap: 1.375rem;
    grid-row-gap: var(--form-spacer);
}
  }

.search-grid li {
    list-style-type: none;
  }

.search-grid a {
    -webkit-text-decoration: none;
    text-decoration: none;
  }

.header-section:not(.overlay) {
    min-height: var(--header-height);
  }

.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  z-index: var(--header-z-index);
  transition: transform 300ms linear;
  transition: transform var(--global-transition);
}

#top-of-site-pixel-anchor {
  position: absolute;
  width: 0.0625rem;
  height: 0.0625rem;
  top: 40vh;
  top: var(--header-sticky-switch-at);
  left: 0;
}

.logo-image {
  --link-color: var(--header-color);
}

body:not(.header-not-at-top):not(.header-search-open):not(.subnav-active) .header.overlay {
  --header-color: var(--off-white);
  background-color: transparent;
}

body:not(.header-not-at-top):not(.header-search-open):not(.subnav-active) .header.overlay .logo-image {
    color: #343042;
    color: var(--header-color);
  }

body.header-not-at-top.scroll--down .header {
    transform: translateY(-100%);
  }

/* :root {
  --swatch-padding: 4px;
} */

[class*="swatch-"] {
  /* Swatch Colors */
  /* NOTE: These are defaults that will be overriden by theme settings, if present */
  --white: #fff;
  --ivory: #fffbef;
  --gray: #bcbcbc;
  --natural: #e4dacd;

  --swatch-padding: 0.25rem;
}

.swatch-preview {
  margin-left: calc(var(--swatch-padding) * -1);
  margin-top: calc(var(--swatch-padding) * -1);
}

.swatch-preview__item {
  display: inline-block;
  margin: var(--swatch-padding);
  height: 1rem;
  width: 1rem;
  border-radius: 50%;
  border: 0.0625rem solid #dad9d6;
  border: 0.0625rem solid var(--cotton);
  overflow: hidden;
  text-indent: -625rem;
}

.swatch-preview__item img {
    width: 100%;
    height: 100%;
  }

/* Swatch Colors */

.swatch--white {
  background-color: #fff;
  background-color: var(--white);
}

.swatch--ivory {
  background-color: var(--ivory);
}

.swatch--gray,
.swatch--grey {
  background-color: var(--gray);
}

.swatch--natural {
  background-color: var(--natural);
}

/* ==========================================================================================================
  Scoped Styles  -- it is generally reccomended to nest all css inside the `.shopping-bag-app` selector
  to avoid style confilicts with elements outside the app
========================================================================================================== */

.shopping-bag-app {
  --default-border: solid 0.0625rem var(--cotton);
  --spacer-small: 0.5rem;
  --spacer: 1rem;
  --spacer-large: 2rem;
  --font-size-small: 0.875rem;
  padding: 1.25rem;
}

.shopping-bag-app ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
  }

.shopping-bag-app img,
  .shopping-bag-app input {
    max-width: 100%;
    width: 100%;
  }

/* Cart Styles */

.shopping-bag-app .cart-subtotal {
    display: flex;
    justify-content: space-between;
    font-size: 1.25rem;
  }

.shopping-bag-app .cart-shipping-message {
    font-size: var(--font-size-small);
    margin-top: 0.9375rem;
    margin-top: var(--spacer);
  }

.shopping-bag-app .cart.empty {
    text-align: center;
    border-top: var(--default-border);
    margin-top: calc(0.9375rem * 2);
    margin-top: var(--spacer-large);
    padding-top: calc(0.9375rem * 2);
    padding-top: var(--spacer-large);
    padding-left: 1.5rem;
    padding-left: var(--drawer-padding-left-right);
    padding-right: 1.5rem;
    padding-right: var(--drawer-padding-left-right);
  }

/* Products (used in cart/drawer/upsell/quick-add-to-cart) */

.shopping-bag-app .options-list {
    text-transform: capitalize;
    font-size: var(--font-size-small);
    margin-top: 1.5rem;
  }

.shopping-bag-app .options-list > * + * {
      margin-top: var(--spacer-small);
    }

.shopping-bag-app .product-title {
    text-transform: uppercase;
    font-family: "Platform", sans-serif;
    font-family: var(--font-platform);
    font-size: 1rem;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.13;
    letter-spacing: 0.125rem;
    color: #343042;
    color: var(--dark-purple);
  }

.shopping-bag-app a {
    -webkit-text-decoration: none !important;
    text-decoration: none !important;
  }

.shopping-bag-app .quantity-controls input {
      max-width: 5.125rem;
      border: var(--default-border);
      background-color: transparent;
      margin-bottom: 0.625rem;
    }

.shopping-bag-app .quantity-controls .remove-item {
      -webkit-text-decoration: underline !important;
      text-decoration: underline !important;
    }

.shopping-bag-app .quantity-controls .remove-item {
      cursor: pointer;
    }

.shopping-bag-app .cart-actions > .button {
    display: block;
  }

/* ==========================================================================================================
Non-scoped Styles */

:root {
  --fullscreen-overlay-z-index: calc(var(--header-z-index) + 1);
  --fullscreen-overlay-bg-color: var(--blue);
}

[data-whatintent="touch"] input:focus, [data-whatintent="mouse"] input:focus {
  outline: 0;
}

.fullscreen-overlay {
  opacity: 0;
  visibility: hidden;
  transition: opacity 300ms;
  transition: opacity var(--transition-duration);
  overflow-y: auto;
}

body.overlay-visible {
  left: 0;
  right: 0;
  position: fixed;
}

body.overlay-visible .fullscreen-overlay {
    background-color: #434d60;
    background-color: var(--fullscreen-overlay-bg-color);
    z-index: calc(10 + 1);
    z-index: var(--fullscreen-overlay-z-index);
    opacity: 0.8;
    visibility: visible;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 200vh;
    overflow-y: hidden;
  }

.upsell-list-header {
  font-size: 1.25rem;
  font-weight: 300;
  margin-bottom: 0.9375rem;
  margin-bottom: var(--spacer);
}

.upsell-items-list > * + * {
    margin-top: calc(0.9375rem * 2);
    margin-top: var(--spacer-large);
  }

.upsell-item {
  background-color: #fff;
  background-color: var(--white);
  padding: 1.5rem;
}

.upsell-item__col-right > * + * {
    margin-top: var(--spacer-small);
  }

.upsell-item__body {
  display: grid;
  grid-template-columns: 1fr 2fr;
  grid-column-gap: calc(0.9375rem * 2);
  grid-column-gap: var(--spacer-large);
}

.upsell-item__footer {
  margin-top: 1.5rem;
}

/* ==========================================================================================================
Setup vars */

:root {
  --drawer-z-index: calc(var(--fullscreen-overlay-z-index) + 1);
  --drawer-bg-color: var(--off-white);
  --drawer-padding-top: 1.875rem;
  --drawer-padding-bottom: 2.75rem;
  --drawer-padding-left-right: 1.5rem;
  --drawer-width: 100vw;
}

@media (min-width: 768px) {

:root {
    --drawer-padding-top: 1.875rem;
    --drawer-padding-bottom: 2.75rem;
    --drawer-padding-left-right: 4rem;
    --drawer-width: 30rem;
}
  }

/* ==========================================================================================================
Container Styles */

.cart-drawer-container {
  position: fixed;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr auto;
  z-index: calc((10 + 1) + 1);
  z-index: calc(calc(10 + 1) + 1);
  z-index: var(--drawer-z-index);
  top: 0;
  right: -100%;
  width: 100vw;
  width: var(--drawer-width);
  max-width: 100vw;
  height: 100%;
  max-height: 100vh;
  /* display: flex; */
  /* flex-direction: column; */
  background-color: #f9f5f2;
  background-color: var(--drawer-bg-color);
  opacity: 0;
  visibility: hidden;
  transition-property: right, opacity, visibility;
  transition-duration: 300ms;
  transition-duration: var(--transition-duration);
  transition-timing-function: linear;
  transition-timing-function: var(--transition-timing-function);
}

/* ==========================================================================================================
Toggle Visibility */

body.cart-drawer-open .cart-drawer-container {
    opacity: 1;
    visibility: visible;
    top: 0;
    right: 0;
  }

/* ==========================================================================================================
Header Styles */

.drawer-header {
  padding: 1.875rem 1.5rem;
  padding: var(--drawer-padding-top) var(--drawer-padding-left-right);
}

.drawer-header .drawer-header__close-btn {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
  }

.drawer-header .drawer-header__close-btn:hover {
      cursor: pointer;
    }

.drawer-header .drawer-header__close-btn:focus {
      outline: 0.125rem solid #69a297;
      outline: 0.125rem solid var(--teal);
      outline-offset: 0.1875rem;
    }

.drawer-header .drawer-header__heading-wrapper {
    text-align: center;
    position: relative;
  }

/* ==========================================================================================================
Body Styles */

.drawer-body {
  padding-left: 1.5rem;
  padding-left: var(--drawer-padding-left-right);
  padding-right: 1.5rem;
  padding-right: var(--drawer-padding-left-right);
  margin-bottom: calc(0.9375rem * 2);
  margin-bottom: var(--spacer-large);
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: space-between;
  overflow-y: auto;
  overflow-x: hidden;
}

.drawer-body > *:last-child {
    margin-bottom: 1.5rem;
    margin-bottom: var(--drawer-padding-left-right);
  }

/* ==========================================================================================================
Items */

.drawer-items-list {
  list-style-type: none;
  padding-left: 0;
  /* overflow-y: auto; */
}

.drawer-item {
  border-top: var(--default-border);
  padding-top: calc(0.9375rem * 2);
  padding-top: var(--spacer-large);
  display: grid;
  grid-template-columns: 5.125rem 15.875rem;
  -moz-column-gap: 0.9375rem;
       column-gap: 0.9375rem;
  grid-column-gap: 0.9375rem;
  grid-column-gap: var(--spacer);
  -moz-column-gap: var(--spacer);
       column-gap: var(--spacer);
}

.drawer-item:not(:first-child) {
    margin-top: calc(0.9375rem * 2);
    margin-top: var(--spacer-large);
  }

.drawer-item__col-left > * + * {
    margin-top: 0.9375rem;
    margin-top: var(--spacer);
  }

.drawer-item__col-right > * + * {
    margin-top: 0.9375rem;
    margin-top: var(--spacer);
  }

/* ==========================================================================================================
Footer Styles */

.drawer-footer {
  border-top: var(--default-border);
  padding-top: calc(0.9375rem * 2);
  padding-top: var(--spacer-large);
  padding-right: 1.5rem;
  padding-right: var(--drawer-padding-left-right);
  padding-bottom: 2.75rem;
  padding-bottom: var(--drawer-padding-bottom);
  padding-left: 1.5rem;
  padding-left: var(--drawer-padding-left-right);
  margin-top: auto;
  background-color: inherit;
}

.drawer-footer > * + * {
    margin-top: 0.9375rem;
    margin-top: var(--spacer);
  }

/* ==========================================================================================================
Upsells Styles */

.drawer-body .upsell-container {
  border-top: var(--default-border);
  margin-top: calc(0.9375rem * 2);
  margin-top: var(--spacer-large);
  padding-top: calc(0.9375rem * 2);
  padding-top: var(--spacer-large);
}

.quick-buy-modal {
  --modal-width: 65.375rem;
}

@media (max-width: 767px) {

.quick-buy-modal {
    --modal-padding: 0;
}
  }

.quick-buy-modal *::-webkit-scrollbar {
    width: 0.4375rem;
  }

.quick-buy-modal *::-webkit-scrollbar-track {
    background-color: #dad9d6;
    background-color: var(--cotton);
  }

.quick-buy-modal *::-webkit-scrollbar-thumb {
    background-color: #434d60;
    background-color: var(--blue);
  }

.quickbuy-wrapper {
  display: grid;
  grid-template-columns: 1fr;
}

@media (min-width: 768px) {

.quickbuy-wrapper {
    grid-template-columns: repeat(2, 50%);
}
  }

/* Gallery */

.product-image-gallery-wrapper {
  position: relative;
}

.product-image-gallery-list,
ol.product-image-gallery-list,
.product-image-gallery-indicators {
  list-style: none;
  padding: 0;
  margin: 0;
}

.product-image-gallery-item:not(.active) {
    display: none;
  }

.product-image-gallery-image {
  width: 100%;
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}

.product-image-gallery-controls {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.product-image-gallery-controls button {
    all: unset;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 2.5rem;
    height: 2.5rem;
    background-color: rgba(249, 245, 242, 0.8);
    background-color: var(--off-white-translucent);
    cursor: pointer;
  }

.product-image-gallery-controls button:first-child svg {
      transform: rotate(180deg);
    }

.product-image-gallery-controls button svg:focus {
      outline: 0.125rem solid #69a297;
      outline: 0.125rem solid var(--teal);
      outline-offset: 0.5rem;
    }

.product-image-gallery-indicators {
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 0.75rem;
  padding-top: 2rem;
}

.product-image-gallery-indicator {
  height: 0.125rem;
  flex-basis: 2.875rem;
  max-width: 2.875rem;
  background-color: #dad9d6;
  background-color: var(--cotton);
}

.product-image-gallery-indicator.active {
    background-color: #845354;
    background-color: var(--dusty-red);
  }

/* Details */

.quickbuy-details .product-description,
  .quickbuy-details .product-actions {
    margin-top: 0.6875rem;
  }

@media (max-width: 767px) {

.quickbuy-details {
    padding: 2rem 1.5rem 1.5rem;
}
  }

@media (min-width: 768px) {

.quickbuy-details {
    padding-left: 4rem;
}
  }

.quickbuy-form .product-form__submit {
    margin-top: 2rem;
    width: 100%;
  }

.product-description {
  overflow: hidden !important;
}

.product-description {
  overflow: hidden;
  line-height: 1.5rem;
  max-height: 8.85rem;
  display: block;
  display: -webkit-box;
  -webkit-line-clamp: 5;
}

/* Component Styles */

.boost-pfs-filter-top-display-type {
  display: none;
}

.boost-pfs-filter-products {
  width: 100% !important;
  display: grid !important;
  margin-left: 0 !important;
}

.boost-pfs-filter-products {
  grid-row-gap: calc(0.9375rem * 2);
  grid-row-gap: var(--spacer-large);
  grid-column-gap: calc(0.9375rem * 2);
  grid-column-gap: var(--spacer-large);
}

@media (min-width: 768px) {

.boost-pfs-filter-products {
    grid-template-columns: repeat(2, 1fr);
}
  }

.boost-pfs-filter-product-item {
  padding-left: 0 !important;
}

/* TODO: Ideally disable this instead of just hiding it */

.boost-pfs-minicart-wrapper {
  display: none !important;
}

html.boost-pfs-body-no-scroll-mini-cart.boost-pfs-body-no-scroll-mini-cart {
  overflow: auto;
}

/* **** Note **** strictly coupled template styles should not be imported here. They are
are added conditionallly via the asset-router-css.liquid file. This helps keep the css more lean  */


/*# sourceMappingURL=layout.theme.css.map?v=986962df70379b9b7e2cb9e334e4cbfb*/