/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
article,
aside,
footer,
header,
nav,
section {
  display: block;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
figcaption,
figure,
main {
  display: block;
}
figure {
  margin: 1em 40px;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
b,
strong {
  font-weight: inherit;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
dfn {
  font-style: italic;
}
mark {
  background-color: #ff0;
  color: #000;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
audio,
video {
  display: inline-block;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
img {
  border-style: none;
}
svg:not(:root) {
  overflow: hidden;
}
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}
progress {
  display: inline-block;
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
details,
menu {
  display: block;
}
summary {
  display: list-item;
}
canvas {
  display: inline-block;
}
template {
  display: none;
}
[hidden] {
  display: none;
} /*! Flickity v2.3.0
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative;
}
.flickity-enabled:focus {
  outline: none;
}
.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;
  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%, 0.75);
  border: none;
  color: #333;
}
.flickity-button:hover {
  background: white;
  cursor: pointer;
}
.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19f;
}
.flickity-button:active {
  opacity: 0.6;
}
.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  pointer-events: none;
}
.flickity-button-icon {
  fill: currentColor;
}
.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  transform: translateY(-50%);
}
.flickity-prev-next-button.previous {
  left: 10px;
}
.flickity-prev-next-button.next {
  right: 10px;
}
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}
.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}
.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  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: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}
.flickity-page-dots .dot.is-selected {
  opacity: 1;
}
.flickity-enabled.is-fullscreen {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: hsla(0, 0%, 0%, 0.9);
  padding-bottom: 35px;
  z-index: 1;
}
.flickity-enabled.is-fullscreen .flickity-page-dots {
  bottom: 10px;
}
.flickity-enabled.is-fullscreen .flickity-page-dots .dot {
  background: white;
}
html.is-flickity-fullscreen {
  overflow: hidden;
}
.flickity-fullscreen-button {
  display: block;
  right: 10px;
  top: 10px;
  width: 24px;
  height: 24px;
  border-radius: 4px;
}
.flickity-rtl .flickity-fullscreen-button {
  right: auto;
  left: 10px;
}
.flickity-fullscreen-button-exit {
  display: none;
}
.flickity-enabled.is-fullscreen .flickity-fullscreen-button-exit {
  display: block;
}
.flickity-enabled.is-fullscreen .flickity-fullscreen-button-view {
  display: none;
}
.flickity-fullscreen-button .flickity-button-icon {
  position: absolute;
  width: 16px;
  height: 16px;
  left: 4px;
  top: 4px;
}
:root {
  --color-support-white: #ffffff;
  --color-support-lightest-grey: #f3f3f3;
  --color-support-lighter-grey: #d4d4d4;
  --color-support-light-grey: #a8a8a8;
  --color-support-grey: #676767;
  --color-support-black: #010103;
  --color-support-black-hover: #252525;
  --color-fade: rgba(242, 242, 242, 0.5);
  --color-popup-bg: rgba(1, 1, 3, 0.7);
  --brand-tone-light-2: #fcf7f4;
  --brand-tone-light-1: #f7ede6;
  --brand-tone-base: #e3d3c8;
  --brand-tone-dark-1: #ceb39f;
  --brand-tone-dark-2: #b49884;
  --brand-tone-dark-3: #a88e7b;
  --color-signal-error: #bf0000;
  --color-signal-success: #d1f3c5;
  --font-body: "Public Sans", sans-serif;
  --font-weight-body: 400;
  --font-weight-body-bold: 600;
  --font-weight-body-xbold: 700;
  --font-base-size: rem(16px);
  --font-body-bold-weight: 600;
  --font-headings: "Public Sans", $fallback-stack;
  --font-decorative: turbinado-pro, sans-serif;
  --font-headings-weight: 200;
  --font-headings-weight-bold: 300;
  --font-heading-line-height: 140%;
  --card-shadow-box-shadow: 0px 12px 24px 0px rgba(83, 50, 1, 0.12);
  --transition-duration: 250ms;
  --transition-timing: ease-in-out;
  --transition-timing-flick: cubic-bezier(0.16, 0.68, 0.43, 0.99);
  --post-width: 43.75rem;
  --post-block-margin: 0 auto 2.5rem auto;
}
@media only screen and (min-width: 30rem) {
  .show--min-sm {
    display: block !important;
  }
  .hide--min-sm {
    display: none !important;
  }
}
@media only screen and (max-width: 29.9375rem) {
  .show--max-sm {
    display: block !important;
  }
  .hide--max-sm {
    display: none !important;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .show--min-md {
    display: block !important;
  }
  .hide--min-md {
    display: none !important;
  }
}
@media only screen and (max-width: 47.875rem) {
  .show--max-md {
    display: block !important;
  }
  .hide--max-md {
    display: none !important;
  }
}
@media only screen and (min-width: 61.875rem) {
  .show--min-lg {
    display: block !important;
  }
  .hide--min-lg {
    display: none !important;
  }
}
@media only screen and (max-width: 61.8125rem) {
  .show--max-lg {
    display: block !important;
  }
  .hide--max-lg {
    display: none !important;
  }
}
@media only screen and (min-width: 87.5rem) {
  .show--min-xl {
    display: block !important;
  }
  .hide--min-xl {
    display: none !important;
  }
}
@media only screen and (max-width: 87.4375rem) {
  .show--max-xl {
    display: block !important;
  }
  .hide--max-xl {
    display: none !important;
  }
}
@keyframes revealPanel {
  0% {
    display: none;
    opacity: 0;
    visibility: hidden;
    transform: translateY(3%);
  }
  1% {
    display: block;
  }
  100% {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}
@media only screen and (max-width: 47.875rem) {
  .justify-center.common-banner__container {
    justify-content: center;
  }
}
@media only screen and (max-width: 47.875rem) {
  .align-start.common-banner__container {
    align-items: flex-start;
  }
}
@media only screen and (max-width: 47.875rem) {
  .align-center.common-banner__container {
    align-items: center;
  }
}
@media only screen and (max-width: 47.875rem) {
  .align-end.common-banner__container {
    align-items: flex-end;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .desktop-justify-start.common-banner__container {
    justify-content: flex-start;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .desktop-justify-center.common-banner__container {
    justify-content: center;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .desktop-justify-end.common-banner__container {
    justify-content: flex-end;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .desktop-align-start.common-banner__container {
    align-items: flex-start;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .desktop-align-center.common-banner__container {
    align-items: center;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .desktop-align-end.common-banner__container {
    align-items: flex-end;
  }
}
.text-left.common-banner__container {
  text-align: left;
}
.text-center.common-banner__container {
  text-align: center;
}
.text-center.common-banner__container .line {
  justify-content: center;
}
.text-right.common-banner__container {
  text-align: right;
}
.text-right.common-banner__container .line {
  justify-content: flex-end;
}
@media only screen and (min-width: 47.9375rem) {
  .medium-up--text-left.common-banner__container {
    text-align: left;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .medium-up--text-center.common-banner__container {
    text-align: center;
  }
  .medium-up--text-center.common-banner__container .line {
    justify-content: center;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .medium-up--text-right.common-banner__container {
    text-align: right;
  }
  .medium-up--text-right.common-banner__container .line {
    justify-content: flex-end;
  }
}
.aspect-ratio {
  position: relative;
  display: block;
}
.aspect-ratio:not(.no-intrinsic-aspect) img,
.aspect-ratio:not(.no-intrinsic-aspect) video,
.aspect-ratio:not(.no-intrinsic-aspect) iframe {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
}
.aspect-ratio:not(.no-intrinsic-aspect) iframe {
  width: 100%;
  border: 0;
}
.aspect-ratio--square {
  padding-top: 100%;
}
.aspect-ratio--16-9 {
  padding-top: 56.25%;
}
.aspect-ratio--landscape {
  padding-top: 75%;
}
.aspect-ratio--portrait {
  padding-top: 133%;
}
form {
  margin: 0;
}
a,
area,
button,
[role="button"],
input,
label,
select,
summary,
textarea {
  touch-action: manipulation;
}
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
input[type="date"],
input[type="number"],
input[type="search"],
input[type="time"],
input[type="url"],
textarea,
select {
  font-size: 0.875rem;
  line-height: 160%;
  max-width: 100%;
  border: 1px solid var(--color-support-lighter-grey);
  background-color: var(--background);
  border-radius: 0.5rem;
  padding: 0.75rem 1rem;
  transition: box-shadow 0.3s ease, border-color 0.2s ease;
  color: var(--color-support-grey);
}
input[type="text"][disabled],
input[type="tel"][disabled],
input[type="email"][disabled],
input[type="password"][disabled],
input[type="date"][disabled],
input[type="number"][disabled],
input[type="search"][disabled],
input[type="time"][disabled],
input[type="url"][disabled],
textarea[disabled],
select[disabled] {
  border-color: var(--color-support-light-grey);
  background-color: var(--color-support-light-grey);
  color: var(--color-support-grey);
  cursor: default;
}
input[type="text"][disabled]::placeholder,
input[type="tel"][disabled]::placeholder,
input[type="email"][disabled]::placeholder,
input[type="password"][disabled]::placeholder,
input[type="date"][disabled]::placeholder,
input[type="number"][disabled]::placeholder,
input[type="search"][disabled]::placeholder,
input[type="time"][disabled]::placeholder,
input[type="url"][disabled]::placeholder,
textarea[disabled]::placeholder,
select[disabled]::placeholder {
  color: var(--color-support-grey);
}
input[type="text"][disabled]:focus,
input[type="text"][disabled]:hover,
input[type="tel"][disabled]:focus,
input[type="tel"][disabled]:hover,
input[type="email"][disabled]:focus,
input[type="email"][disabled]:hover,
input[type="password"][disabled]:focus,
input[type="password"][disabled]:hover,
input[type="date"][disabled]:focus,
input[type="date"][disabled]:hover,
input[type="number"][disabled]:focus,
input[type="number"][disabled]:hover,
input[type="search"][disabled]:focus,
input[type="search"][disabled]:hover,
input[type="time"][disabled]:focus,
input[type="time"][disabled]:hover,
input[type="url"][disabled]:focus,
input[type="url"][disabled]:hover,
textarea[disabled]:focus,
textarea[disabled]:hover,
select[disabled]:focus,
select[disabled]:hover {
  border-color: var(--color-support-light-grey);
}
input[type="text"].input-error,
input[type="tel"].input-error,
input[type="email"].input-error,
input[type="password"].input-error,
input[type="date"].input-error,
input[type="number"].input-error,
input[type="search"].input-error,
input[type="time"].input-error,
input[type="url"].input-error,
textarea.input-error,
select.input-error {
  border-color: var(--color-signal-error);
  background-color: var(--color-support-white);
  color: var(--color-support-black);
}
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="time"]:focus,
input[type="url"]:focus,
textarea:focus,
select:focus {
  outline: 0;
}
input[type="text"]:focus,
input[type="text"]:hover,
input[type="tel"]:focus,
input[type="tel"]:hover,
input[type="email"]:focus,
input[type="email"]:hover,
input[type="password"]:focus,
input[type="password"]:hover,
input[type="date"]:focus,
input[type="date"]:hover,
input[type="number"]:focus,
input[type="number"]:hover,
input[type="search"]:focus,
input[type="search"]:hover,
input[type="time"]:focus,
input[type="time"]:hover,
input[type="url"]:focus,
input[type="url"]:hover,
textarea:focus,
textarea:hover,
select:focus,
select:hover {
  border-color: var(--color-support-black);
}
button,
select {
  color: var(--color-support-black);
}
select {
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 fill=%27none%27 class=%27icon icon-chevron-down%27 viewBox=%270 0 24 24%27%3E%3Cpath stroke=%27currentColor%27 stroke-linecap=%27round%27 stroke-width=%271.5%27 d=%27M6 9l6 6 6-6%27/%3E%3C/svg%3E");
  background-size: 1rem 1rem;
  background-repeat: no-repeat;
  background-position: center right 1rem;
}
button,
input[type="submit"],
label[for] {
  cursor: pointer;
}
textarea {
  min-height: 6.25rem;
}
select::-ms-expand {
  display: none;
}
option {
  background-color: var(--color-support-white);
  color: var(--color-support-black);
}
.form__group {
  margin-bottom: 1rem;
  text-align: left;
}
.form__group label,
.form__group input[type="text"],
.form__group input[type="tel"],
.form__group input[type="email"],
.form__group input[type="password"],
.form__group input[type="date"],
.form__group input[type="number"],
.form__group input[type="search"],
.form__group input[type="time"],
.form__group input[type="url"],
.form__group textarea,
.form__group select {
  display: block;
  width: 100%;
}
.form__group label + input,
.form__group label + select,
.form__group label + textarea {
  margin-top: 0.5rem;
}
.form__group label {
  font-size: 1rem;
  color: var(--color-support-black);
}
.form__group select {
  border: none;
}
.form__inline-input {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  margin-bottom: 1rem;
}
select.select-stripped {
  border: none;
  box-shadow: none;
  outline: none;
  padding: 0;
  border-bottom: 1px solid var(--color-support-black);
  border-radius: 0;
  background-position: center right;
  font-size: 1rem;
  padding-right: 1.875rem;
}
input[type="checkbox"],
input[type="radio"] {
  position: relative;
  -webkit-appearance: none;
  appearance: none;
  height: 0.9375rem;
  width: 0.9375rem;
  flex-shrink: 0;
  outline: none;
  display: inline-block;
  vertical-align: top;
  margin: 0;
  border: none;
  cursor: pointer;
  background-color: var(--color-support-white);
  transition: background-color 0.3s, border-color 0.3s, box-shadow 0.2s;
  transition-timing-function: var(--transition-timing-flick);
  border-radius: 0.25rem;
}
input[type="checkbox"]::after,
input[type="radio"]::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  opacity: 0;
  transition: transform 0.3s, opacity 0.2s;
  transition-timing-function: var(--transition-timing-flick);
}
input[type="checkbox"]:checked,
input[type="radio"]:checked {
  opacity: 1;
  background-color: var(--color-support-black);
  transition: opacity 0.3s, transform 0.6s;
  transition-timing-function: cubic-bezier(0.2, 0.85, 0.32, 1.2);
}
input[type="checkbox"]:checked::after,
input[type="radio"]:checked::after {
  opacity: 1;
}
input[type="checkbox"]:disabled,
input[type="radio"]:disabled {
  background-color: var(--color-support-light-grey);
  cursor: not-allowed;
  opacity: 0.9;
}
input[type="checkbox"]:disabled:checked,
input[type="radio"]:disabled:checked {
  background-color: var(--color-support-light-grey);
  border-color: var(--color-support-light-grey);
}
input[type="checkbox"]:disabled + label,
input[type="radio"]:disabled + label {
  cursor: not-allowed;
  color: var(--color-support-grey);
}
input[type="checkbox"]:hover:not(:checked):not(:disabled),
input[type="radio"]:hover:not(:checked):not(:disabled) {
  border-color: var(--color-support-black);
}
input[type="checkbox"] + label,
input[type="radio"] + label {
  font-size: 1rem;
  line-height: 1.3;
  cursor: pointer;
  margin-left: 0.625rem;
}
input[type="checkbox"] {
  border-radius: 0.25rem;
}
input[type="checkbox"]::after {
  left: 5px;
  top: 2px;
  width: 4px;
  height: 8px;
  border: 1px solid var(--color-support-white);
  border-top: 0;
  border-left: 0;
  transform: rotate(var(--r, 20deg));
}
input[type="checkbox"]:checked {
  --r: 43deg;
}
input[type="radio"] {
  border-radius: 50%;
}
input[type="radio"]::after {
  width: 1.1875rem;
  height: 1.1875rem;
  border-radius: 50%;
  background-color: var(--color-support-white);
  opacity: 0;
  transform: scale(var(--s, 0.7));
}
input[type="radio"]:checked {
  --s: 0.5;
}
html {
  height: 100%;
  background-color: var(--color-support-white);
  box-sizing: border-box;
  scroll-behavior: smooth;
}
@media (prefers-reduced-motion) {
  html {
    scroll-behavior: auto;
  }
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
.page-header {
  padding: 1.5rem 0;
}
@media only screen and (min-width: 47.9375rem) {
  .page-header {
    padding: 2rem 0;
  }
}
.container {
  display: block;
  margin-right: auto;
  margin-left: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
  max-width: 94.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .container {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
@media only screen and (min-width: 87.5rem) {
  .container {
    padding-left: 7.5rem;
    padding-right: 7.5rem;
  }
}
.container--narrow {
  max-width: 52.625rem;
}
.container--tertiary {
  max-width: 43.75rem;
  padding-left: 0;
  padding-right: 0;
}
@media only screen and (max-width: 47.875rem) {
  .container--tertiary {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.container--strip {
  max-width: 47.5rem;
  padding-left: 0;
  padding-right: 0;
}
@media only screen and (max-width: 47.875rem) {
  .container--strip {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.container--fluid {
  max-width: none;
}
.container--flush {
  padding-left: 0;
  padding-right: 0;
}
.inner-container {
  display: block;
  margin-right: auto;
  margin-left: auto;
  max-width: 52.625rem;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
}
@media only screen and (min-width: 30rem) {
  .inner-container {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .inner-container {
    padding-left: 0;
    padding-right: 0;
  }
}
@media only screen and (max-width: 47.875rem) {
  .container--flush--max-md {
    padding-left: 0;
    padding-right: 0;
  }
  .container--flush--max-md .row {
    margin-left: 0;
    margin-right: 0;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .container--flush--min-md {
    padding-left: 0;
    padding-right: 0;
  }
  .container--flush--min-md .row {
    margin-left: 0;
    margin-right: 0;
  }
}
@media only screen and (max-width: 61.8125rem) {
  .container--flush--max-lg {
    padding-left: 0;
    padding-right: 0;
  }
}
@media only screen and (max-width: 61.8125rem) {
  .container--carousel-mod {
    padding-right: 0;
  }
}
#fader {
  position: fixed;
  z-index: 999999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: #fff;
  animation-duration: 300ms;
  animation-timing-function: ease-in-out;
}
#fader.fade-out {
  opacity: 0;
  animation-name: fade-out;
}
#fader.fade-in {
  opacity: 1;
  animation-name: fade-in;
}
@keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
figure {
  margin: 0;
}
img {
  width: 100%;
  height: auto;
  margin: 0;
  object-fit: cover;
}
@media only screen and (max-width: 47.875rem) {
  .responsive-table {
    width: 100%;
  }
  .responsive-table thead {
    display: none;
  }
  .responsive-table tr {
    display: block;
  }
  .responsive-table tr,
  .responsive-table td {
    float: left;
    clear: both;
    width: 100%;
  }
  .responsive-table th,
  .responsive-table td {
    display: block;
    margin: 0;
    padding: 0.5rem;
    text-align: right;
  }
  .responsive-table td::before {
    content: attr(data-label);
    float: left;
    padding-right: 0.625rem;
    text-align: center;
  }
  .responsive-table-row + .responsive-table-row,
  tfoot > .responsive-table-row:first-child {
    position: relative;
    margin-top: 0.625rem;
    padding-top: 0.5rem;
  }
  .responsive-table-row + .responsive-table-row::after,
  tfoot > .responsive-table-row:first-child::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0.5rem;
    left: 0.5rem;
    display: block;
  }
}
.rte {
  margin: 0;
}
.rte img {
  height: auto;
}
.rte table {
  table-layout: fixed;
}
.rte iframe {
  width: 100%;
}
.rte ul,
.rte ol {
  margin: 0 0 0.5rem 1.5rem;
}
.rte strong {
  font-weight: var(--font-weight-bold);
}
.rte-table {
  overflow: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
}
.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%;
  border: 0;
}
.rte__table-wrapper {
  overflow: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
}
html,
body {
  font-family: var(--font-body);
  font-weight: var(--font-weight-body);
  font-size: var(--font-base-size);
  line-height: 140%;
  font-style: normal;
  color: var(--color-support-black);
}
html b,
html strong,
body b,
body strong {
  font-weight: var(--font-body-bold-weight);
}
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
.gift-balance-checker .balance-checker-wrapper h3,
h5,
.h5,
h6,
.h6 {
  font-family: var(--font-headings);
  line-height: var(--font-heading-line-height);
  margin-bottom: 1rem;
}
@media only screen and (min-width: 30rem) {
  h1,
  .h1,
  h2,
  .h2,
  h3,
  .h3,
  h4,
  .h4,
  .gift-balance-checker .balance-checker-wrapper h3,
  h5,
  .h5,
  h6,
  .h6 {
    margin-bottom: 1.5rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  h1,
  .h1,
  h2,
  .h2,
  h3,
  .h3,
  h4,
  .h4,
  .gift-balance-checker .balance-checker-wrapper h3,
  h5,
  .h5,
  h6,
  .h6 {
    font-size: 3.5rem;
  }
}
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
.gift-balance-checker .balance-checker-wrapper h3 {
  font-weight: var(--font-headings-weight);
}
h5,
.h5,
h6,
.h6 {
  font-weight: var(--font-headings-weight-bold);
}
h1,
.h1 {
  font-size: 2.5rem;
  margin-bottom: 1rem;
}
@media only screen and (min-width: 30rem) {
  h1,
  .h1 {
    font-size: 3rem;
    margin-bottom: 1.5rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  h1,
  .h1 {
    font-size: 3.5rem;
  }
}
h2,
.h2 {
  font-size: 2.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  h2,
  .h2 {
    font-size: 3.5rem;
  }
}
h3,
.h3 {
  font-size: 2rem;
}
@media only screen and (min-width: 47.9375rem) {
  h3,
  .h3 {
    font-size: 3rem;
  }
}
h4,
.h4,
.gift-balance-checker .balance-checker-wrapper h3 {
  font-size: 1.75rem;
}
@media only screen and (min-width: 47.9375rem) {
  h4,
  .h4,
  .gift-balance-checker .balance-checker-wrapper h3 {
    font-size: 2.5rem;
  }
}
h5,
.h5 {
  font-size: 1.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  h5,
  .h5 {
    font-size: 2rem;
  }
}
h6,
.h6 {
  font-size: 1.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  h6,
  .h6 {
    font-size: 1.25rem;
  }
}
button,
input,
optgroup,
select,
textarea {
  font-family: var(--font-body);
  font-style: normal;
}
body,
input,
textarea,
button,
select {
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
p {
  margin: 0 0 1em;
  color: var(--color-support-grey);
}
p:last-child {
  margin-bottom: 0;
}
p b,
p strong {
  font-weight: var(--font-body-bold-weight);
}
a {
  color: var(--color-support-black);
}
@media (hover: hover) {
  a:hover {
    color: var(--color-support-black);
  }
}
.s1,
.side-cart__subtotal .cart-total,
.s1-semi-bold,
.collection-carousel .carousel-card .carousel-card__title,
.tertiary-page .rte h2,
.accordion__trigger,
.s1-regular {
  font-size: 24px;
  line-height: 140%;
}
.s1-regular {
  font-weight: var(--font-weight-body);
}
.s1-semi-bold,
.collection-carousel .carousel-card .carousel-card__title,
.tertiary-page .rte h2,
.accordion__trigger {
  font-weight: var(--font-weight-body-bold);
}
.s2,
.collection-filter__drawer-header span,
.s2-semi-bold,
.s2-regular,
.hair-type .type-card a,
.featured-brands .brand-card .brand-card__title,
.featured-collections
  .featured-collections--grid
  .section__categories
  .collection-card
  .collection-card__title,
.btn {
  font-size: 18px;
  line-height: 160%;
}
@media only screen and (min-width: 47.9375rem) {
  .s2,
  .collection-filter__drawer-header span,
  .s2-semi-bold,
  .s2-regular,
  .hair-type .type-card a,
  .featured-brands .brand-card .brand-card__title,
  .featured-collections
    .featured-collections--grid
    .section__categories
    .collection-card
    .collection-card__title,
  .btn {
    font-size: 20px;
    line-height: 140%;
  }
}
.s2-regular,
.hair-type .type-card a,
.featured-brands .brand-card .brand-card__title,
.featured-collections
  .featured-collections--grid
  .section__categories
  .collection-card
  .collection-card__title,
.btn {
  line-height: 140%;
}
.s2-semi-bold {
  font-weight: var(--font-weight-body-bold);
}
.paragraph-large,
.paragraph-large-semi-bold,
footer .footer_grid .footer_grid-menus .footer-menu--title,
.product__price--on-sale .product__price-salebox .sale-percentage,
.paragraph-large-regular,
.cart-item__content .quantity-selector input[type="number"],
.collections-featured .js-tablist .js-tablist__link,
.featured-collection .js-tablist .js-tablist__link,
.account-template .js-tablist .js-tablist__link {
  font-size: 18px;
  line-height: 160%;
}
.paragraph-large-regular,
.cart-item__content .quantity-selector input[type="number"],
.collections-featured .js-tablist .js-tablist__link,
.featured-collection .js-tablist .js-tablist__link,
.account-template .js-tablist .js-tablist__link {
  font-weight: var(--font-weight-body);
}
.paragraph-large-semi-bold,
footer .footer_grid .footer_grid-menus .footer-menu--title,
.product__price--on-sale .product__price-salebox .sale-percentage {
  font-weight: var(--font-weight-body-bold);
}
.paragraph-base,
.side-cart__free-shipping p,
.cart-item__description,
.cart-item__title,
.image-text-hero .image-with-text__text .image-with-text__body,
.image-with-text .image-with-text__text .image-with-text__body,
footer .footer_grid .footer_grid-menus > div li a,
a.link--arrow,
button.link--arrow,
.accordion__body,
.paragraph-base-semi-bold,
.side-cart__header .side-cart__title .total-count,
.tertiary-page .rte h3,
.paragraph-base-regular {
  font-size: 16px;
  line-height: 160%;
}
.paragraph-base-regular {
  font-weight: var(--font-weight-body);
}
.paragraph-base-semi-bold,
.side-cart__header .side-cart__title .total-count,
.tertiary-page .rte h3 {
  font-weight: var(--font-weight-body-bold);
}
.paragraph-small,
.side-cart__subtotal .tax-msge,
.hero-grid .hero-grid--right .hero-grid--right-list li span,
.header__shop .shop_nav .nav__dropdown .submenu .nav__item a,
.footer-base .footer-base--inner .footer-base--links ul li,
.tertiary-page .tertiary-strip .hero-grid--right-list li span span,
.btn.btn--small,
.paragraph-small-bold,
.header__shop .shop_nav .mobile-shop--trigger,
.header__shop .shop_nav .shop_nav-label,
.paragraph-small-semi-bold,
.tertiary-page .tertiary-strip .hero-grid--right-list li span,
.pagination li.active,
.pagination li.disabled,
.pagination li a,
input[type="submit"].link--chevron,
a.link--chevron,
button.link--chevron,
.btn.btn--rect,
.paragraph-small-regular,
.product-card__features ul li,
.product-card__features {
  font-size: 12px;
  line-height: 140%;
}
@media only screen and (min-width: 61.875rem) {
  .paragraph-small,
  .side-cart__subtotal .tax-msge,
  .hero-grid .hero-grid--right .hero-grid--right-list li span,
  .header__shop .shop_nav .nav__dropdown .submenu .nav__item a,
  .footer-base .footer-base--inner .footer-base--links ul li,
  .tertiary-page .tertiary-strip .hero-grid--right-list li span span,
  .btn.btn--small,
  .paragraph-small-bold,
  .header__shop .shop_nav .mobile-shop--trigger,
  .header__shop .shop_nav .shop_nav-label,
  .paragraph-small-semi-bold,
  .tertiary-page .tertiary-strip .hero-grid--right-list li span,
  .pagination li.active,
  .pagination li.disabled,
  .pagination li a,
  input[type="submit"].link--chevron,
  a.link--chevron,
  button.link--chevron,
  .btn.btn--rect,
  .paragraph-small-regular,
  .product-card__features ul li,
  .product-card__features {
    font-size: 14px;
    line-height: 160%;
  }
}
.paragraph-small-regular,
.product-card__features ul li,
.product-card__features {
  font-weight: var(--font-weight-body);
}
.paragraph-small-semi-bold,
.tertiary-page .tertiary-strip .hero-grid--right-list li span,
.pagination li.active,
.pagination li.disabled,
.pagination li a,
input[type="submit"].link--chevron,
a.link--chevron,
button.link--chevron,
.btn.btn--rect {
  font-weight: var(--font-weight-body-bold);
}
.paragraph-small-bold,
.header__shop .shop_nav .mobile-shop--trigger,
.header__shop .shop_nav .shop_nav-label {
  font-weight: var(--font-weight-body-xbold);
}
.caption,
.caption-semi-bold,
.caption-regular {
  font-size: 12px;
  line-height: 140%;
}
.caption-regular {
  font-weight: var(--font-weight-body);
}
.caption-semi-bold {
  font-weight: var(--font-weight-body-bold);
}
*:focus-visible {
  outline: 1px dotted var(--color-focus-outline);
  outline-offset: 2px;
}
.clearfix {
  *zoom: 1;
}
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}
.visually-hidden {
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
}
.js-focus-hidden:focus {
  outline: none;
}
.label-hidden {
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
}
.no-placeholder .label-hidden {
  position: inherit !important;
  width: auto;
  height: auto;
  margin: 0;
  clip: auto;
}
.visually-shown {
  position: inherit !important;
  width: auto;
  height: auto;
  margin: 0;
  clip: auto;
}
.no-js:not(html) {
  display: none;
}
.no-js .no-js:not(html) {
  display: block;
}
.no-js .js {
  display: none;
}
.supports-no-cookies:not(html) {
  display: none;
}
.supports-no-cookies .supports-no-cookies:not(html) {
  display: block;
}
.supports-no-cookies .supports-cookies {
  display: none;
}
.skip-link:focus {
  position: absolute !important;
  width: auto;
  height: auto;
  margin: 0;
  clip: auto;
  z-index: 10000;
  padding: 0.5rem;
  background-color: var(--color-support-lighter-grey);
  color: var(--color-support-black);
  transition: none;
}
.hide {
  display: none !important;
}
.hidden {
  visibility: hidden;
}
.fader {
  z-index: 112;
  top: 0;
  left: 0;
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: var(--color-popup-bg);
  opacity: 0;
  visibility: hidden;
  cursor: pointer;
  transition: opacity 0.2s, visibility 0.2s;
  transition-timing-function: var(--transition-timing-flick);
}
.list-inline {
  list-style: none;
  padding: 0;
}
.list-inline li {
  display: inline-block;
  vertical-align: middle;
}
.list-none {
  list-style: none;
  padding: 0;
  margin-block-start: 0;
  margin-block-end: 0;
  margin-inline-start: 0;
  margin-inline-end: 0;
  padding-inline-start: 0;
}
.btn-none {
  border: none;
  background: none;
  padding: 0;
}
img {
  transition: opacity 0.3s ease;
}
img.lazyload {
  visibility: hidden;
  opacity: 0;
}
img.lazyloading {
  visibility: hidden;
  opacity: 0;
}
img.lazyloaded {
  visibility: visible;
  opacity: 1;
}
.scroll-lock {
  overflow: hidden;
}
#gappt_side_widget_tab {
  display: none;
}
#gappt_arrow_box {
  display: none;
}
.accordion {
  margin-bottom: 2rem;
}
.accordion.accordion-spaced {
  margin-top: 2rem;
}
.accordion__trigger {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin: -0.0625rem 0 0;
  padding: 1rem 0;
  color: var(--color-support-black);
  text-align: left;
  background: var(--color-support-white);
  border: none;
  border-top: 1px solid var(--color-support-grey);
  outline: none;
}
.accordion__trigger:hover,
.accordion__trigger:focus,
.accordion__trigger:active {
  color: var(--color-support-black);
  background-color: var(--color-support-white);
  border-color: var(--color-support-light-grey);
}
.accordion__trigger .icon-chevron-down {
  transition: transform 0.2s var(--transition-timing-flick);
  will-change: transform;
  width: 1.875rem;
  height: 1.875rem;
}
.accordion__trigger[aria-expanded="true"] {
  color: var(--color-support-black);
  border-color: var(--color-support-grey);
}
.accordion__trigger[aria-expanded="true"] .icon-chevron-down {
  transform: rotate(180deg);
}
.accordion__label:first-child .accordion__trigger {
  margin-top: 0;
}
.accordion__panel {
  margin-top: -1px;
  height: 0;
  overflow-y: hidden;
  transition: height 0.2s var(--transition-timing-flick);
  will-change: height;
}
.accordion__body {
  padding: 0 0 1rem 0;
  color: var(--color-support-black);
}
.accordion__body .link--chevron {
  display: block;
  margin-top: 1.5rem;
}
.article-card__image {
  display: block;
  margin-bottom: 1rem;
}
.article-card__image a {
  display: block;
}
.breadcrumbs {
  margin: 0 0 1.5rem 0;
  overflow: hidden;
}
.breadcrumbs__list {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
}
.breadcrumbs__item {
  display: inline-block;
  font-size: 0.75rem;
  color: var(--color-support-grey);
  white-space: nowrap;
}
.breadcrumbs__item:not(:last-child)::after {
  content: "/";
  position: relative;
  display: inline-flex;
  padding: 0 0.25rem;
}
.breadcrumbs__link {
  color: var(--color-support-black);
  text-decoration: none;
}
@media (hover: hover) {
  .breadcrumbs__link:hover {
    text-decoration: underline;
  }
}
.breadcrumbs__link[aria-current="page"] {
  color: inherit;
  font-weight: 400;
  text-decoration: none;
}
.breadcrumbs__link[aria-current="page"]:hover,
.breadcrumbs__link[aria-current="page"]:focus {
  text-decoration: underline;
}
.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.25rem;
  text-decoration: none;
  padding: 1rem 1.5rem;
  border-radius: 12.5rem;
  border: 1px solid var(--color-support-black);
  background-color: var(--color-support-black);
  color: var(--color-support-white);
  transition: background-color var(--transition-duration)
    var(--transition-timing);
  text-transform: uppercase;
  width: 100%;
}
@media only screen and (min-width: 30rem) {
  .btn {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.btn__icon {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (hover: hover) {
  .btn:hover {
    background-color: var(--color-support-black-hover);
    color: var(--color-support-white);
  }
}
.btn.is-style-outline {
  background-color: transparent;
  color: var(--color-support-black);
  border: 1px solid var(--color-support-light-grey);
}
@media (hover: hover) {
  .btn.is-style-outline:hover {
    background-color: var(--brand-tone-base);
    color: var(--color-support-black);
    border-color: var(--brand-tone-base);
  }
}
.btn.is-style-outline.inverted {
  background-color: transparent;
  color: var(--color-support-white);
  border: 1px solid var(--color-support-white);
}
@media (hover: hover) {
  .btn.is-style-outline.inverted:hover {
    background-color: var(--color-support-black-hover);
    color: var(--color-support-white);
    border-color: var(--color-support-white);
  }
}
@media only screen and (min-width: 47.9375rem) {
  .btn.btn--block {
    min-width: 15.625rem;
  }
}
.btn.btn--secondary {
  background-color: var(--brand-tone-base);
  border-color: var(--brand-tone-base);
  color: var(--color-support-black);
}
@media (hover: hover) {
  .btn.btn--secondary:hover {
    background-color: var(--brand-tone-dark-1);
    border-color: var(--brand-tone-dark-1);
    color: var(--color-support-black);
  }
}
.btn.btn--small {
  padding: 0.375rem 0.75rem;
}
@media only screen and (min-width: 47.9375rem) {
  .btn.btn--small {
    min-width: unset;
  }
}
.btn.btn--inverted {
  color: var(--color-support-white);
}
.btn.btn--full {
  width: 100%;
}
.btn.btn--rect {
  border-radius: 0;
  padding: 0.375rem 0.75rem;
}
.btn[disabled] {
  cursor: default;
  color: var(--color-support-white);
  background: var(--color-support-lighter-grey);
  border: 1px solid var(--color-support-lighter-grey);
}
a.link,
button.link {
  font-size: 0.75rem;
  font-weight: var(--font-weight-body-bold);
  text-decoration: none;
  display: flex;
  align-items: center;
}
a.link .icon,
button.link .icon {
  width: 1rem;
  height: 1rem;
  margin-right: 0.25rem;
}
a.link--chevron,
button.link--chevron {
  text-decoration: none;
  transition: opacity var(--transition-duration) var(--transition-timing);
}
@media only screen and (max-width: 61.8125rem) {
  a.link--chevron,
  button.link--chevron {
    font-size: 0.875rem;
  }
}
a.link--chevron span,
button.link--chevron span {
  border-bottom: 1px solid var(--color-support-black);
}
a.link--chevron .icon,
button.link--chevron .icon {
  width: 0.75rem;
  height: 0.75rem;
}
@media (hover: hover) {
  a.link--chevron:hover,
  button.link--chevron:hover {
    opacity: 0.8;
  }
}
a.link--arrow,
button.link--arrow {
  text-decoration: none;
  transition: opacity var(--transition-duration) var(--transition-timing);
  line-height: 160%;
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
a.link--arrow .icon,
button.link--arrow .icon {
  width: 0.75rem;
  height: 0.75rem;
}
.btn--blank {
  border: none;
  background: none;
  padding: 0;
}
@media (hover: hover) {
  .btn--blank:hover {
    background-color: unset;
    color: unset;
  }
}
input[type="submit"].link--chevron {
  text-decoration: none;
  transition: opacity var(--transition-duration) var(--transition-timing);
  border: none;
  background: none;
  padding: 0;
}
@media only screen and (max-width: 61.8125rem) {
  input[type="submit"].link--chevron {
    font-size: 0.875rem;
  }
}
input[type="submit"].link--chevron span {
  border-bottom: 1px solid var(--color-support-black);
}
input[type="submit"].link--chevron .icon {
  width: 0.75rem;
  height: 0.75rem;
}
@media (hover: hover) {
  input[type="submit"].link--chevron:hover {
    opacity: 0.8;
  }
}
.carousel {
  list-style: none;
  padding: 0;
  margin: 0;
}
.carousel::after {
  content: "flickity";
  display: none;
}
.carousel .flickity-viewport {
  overflow: visible;
}
@media only screen and (max-width: 61.8125rem) {
  .carousel {
    padding-right: 1.5rem;
    overflow: hidden;
  }
}
.carousel.narrow {
  margin-right: -0.9375rem;
  margin-left: -0.9375rem;
}
@media only screen and (max-width: 61.8125rem) {
  .carousel .carousel.gallery-slider {
    margin-right: -90px;
    margin-left: -30px;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .carousel.narrow {
    margin-right: -2.5rem;
    margin-left: -1.25rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .carousel {
    display: flex;
    flex-wrap: wrap;
    margin-right: -1.25rem;
    margin-left: -1.25rem;
  }
  .carousel.narrow {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
  }
  .carousel::after {
    content: "";
  }
}
.carousel .slide {
  width: 90%;
  padding-left: 1rem;
}
.carousel .slide.narrow {
  padding-left: -1.25rem;
  width: 60%;
}
@media only screen and (min-width: 47.9375rem) and (max-width: 61.8125rem) {
  .carousel .slide {
    width: 50%;
    padding-left: 2.5rem;
  }
  .carousel .slide.narrow {
    width: 20%;
    padding-left: 1.25rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .carousel .slide {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
  .carousel .slide.narrow {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .carousel .slide.half {
    width: 50%;
  }
}
@media only screen and (min-width: 61.875rem) {
  .carousel .slide.third {
    width: calc(100% / 3);
  }
}
@media only screen and (min-width: 61.875rem) {
  .carousel .slide.quarter {
    width: calc(100% / 4);
  }
}
@media only screen and (min-width: 47.9375rem) {
  .carousel .slide.quarter.featured-collection--slide {
    width: calc(100% / 3);
  }
}
@media only screen and (min-width: 61.875rem) {
  .carousel .slide.quarter.featured-collection--slide {
    width: calc(100% / 4);
  }
}
@media only screen and (min-width: 61.875rem) {
  .carousel .slide.fifth {
    width: calc(100% / 5);
  }
}
@media only screen and (min-width: 61.875rem) {
  .carousel .slide.sixth {
    width: calc(100% / 6);
  }
}
.carousel .slide--small {
  width: 32%;
}
@media only screen and (min-width: 47.9375rem) and (max-width: 61.8125rem) {
  .carousel .slide--small {
    width: 20%;
  }
}
@media only screen and (min-width: 61.875rem) {
  .carousel--desktop-carousel {
    display: block;
    overflow: hidden;
  }
  .carousel--desktop-carousel::after {
    content: "flickity";
    display: none;
  }
  .carousel--desktop-carousel .slide {
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
.collection-filter__drawer-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 1rem;
}
@media only screen and (max-width: 47.875rem) {
  .collection-filter__drawer-header {
    padding-left: 1rem;
    padding-right: 3.4375rem;
  }
}
.collection-filter__drawer-header span {
  margin: 0;
}
@media only screen and (max-width: 47.875rem) {
  .collection-filter__drawer-header span {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 47.875rem) {
  .collection-filter__drawer-header .icon {
    width: 2rem;
    height: 2rem;
  }
}
.collection-filter__drawer-header a {
  font-size: 0.75rem;
  line-height: 140%;
  color: var(--color-signal-error);
  text-transform: uppercase;
  text-decoration: none;
}
.section-clear-link {
  font-size: 0.75rem;
  line-height: 140%;
  color: var(--color-signal-error);
  text-transform: uppercase;
  text-decoration: none;
  display: none;
}
.template-search .collection-navbar__row {
  padding-top: 0;
}
.collection-navbar__row .navbar--inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 47.875rem) {
  .collection-navbar__row .navbar--inner {
    padding: 0 1rem;
  }
}
@media only screen and (max-width: 47.875rem) {
  .collection-navbar__row {
    border-bottom: 1px solid var(--color-support-black);
    padding-bottom: 1rem;
  }
}
.collection-filter__drawer {
  transition: transform 0.1s var(--transition-timing-flick);
}
.collection-filter__drawer .mobile-apply {
  display: block;
  position: absolute;
  bottom: -95%;
  left: 0;
  width: 100%;
  padding: 1rem;
  background-color: var(--brand-tone-light-1);
}
@media only screen and (min-width: 47.9375rem) {
  .collection-filter__drawer .mobile-apply {
    display: none;
  }
}
@media only screen and (max-width: 47.875rem) {
  .collection-filter__drawer.filters-drawer {
    position: fixed;
    z-index: 115;
    top: 0;
    left: -85%;
    bottom: 0;
    display: flex;
    overflow: clip;
    flex-direction: column;
    width: 95%;
    max-width: 100%;
    height: 100vh;
    padding: 1rem 0 0 0;
    background: var(--color-support-white);
    -webkit-overflow-scrolling: touch;
    transition: transform 0.2s, visibility 0s linear 0.2s;
    transition-timing-function: var(--transition-timing-flick);
    will-change: transform;
    transform: translateX(-95%);
    visibility: hidden;
  }
  .collection-filter__drawer.filters-drawer .scroll-area {
    overflow: auto;
  }
}
@media only screen and (max-width: 47.875rem) and (max-width: 47.875rem) {
  .collection-filter__drawer.filters-drawer .scroll-area {
    padding-bottom: 6.25rem;
  }
}
@media only screen and (max-width: 47.875rem) and (min-width: 38.125rem) {
  .collection-filter__drawer.filters-drawer {
    right: -38.125rem;
    width: 38.125rem;
  }
}
@media only screen and (max-width: 47.875rem) {
  .collection-filter__drawer.filters-drawer.is-visible {
    transform: translateX(90%);
    visibility: visible;
    transition: transform 0.2s, visibility 0s linear;
  }
}
@media only screen and (max-width: 47.875rem) and (min-width: 38.125rem) {
  .collection-filter__drawer.filters-drawer.is-visible {
    transform: translateX(-38.125rem);
  }
}
@media only screen and (max-width: 47.875rem) {
  .collection-filter__drawer.filters-drawer > .container--fluid {
    padding: 0;
  }
}
@media only screen and (max-width: 47.875rem) {
  .collection-filter__drawer.filters-drawer .active-filters--wrapper {
    padding-left: 1rem;
    padding-right: 1rem;
    border-top: none;
    border-bottom: 1px solid var(--color-support-lighter-grey);
  }
}
@media only screen and (max-width: 47.875rem) {
  .collection-filter__drawer.filters-drawer .collection-filter__group {
    margin-bottom: 1rem;
  }
}
@media only screen and (max-width: 47.875rem) {
  .collection-filter__drawer.filters-drawer .collection-filter__drawer-header {
    border-bottom: 1px solid var(--color-support-lighter-grey);
  }
}
@media only screen and (max-width: 47.875rem) {
  .collection-filter__drawer.filters-drawer .collection-filter__group {
    border-top: 1px solid var(--color-support-lighter-grey);
    margin: 1rem 3.4375rem 1rem 1rem;
    padding-top: 1rem;
  }
  .collection-filter__drawer.filters-drawer
    .collection-filter__group:first-of-type {
    border-top: none;
    padding-top: 0;
  }
  .collection-filter__drawer.filters-drawer
    .collection-filter__group
    .collection-filter__group-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .collection-filter__drawer.filters-drawer
    .collection-filter__group
    .collection-filter__group-header
    a {
    font-size: 0.75rem;
    line-height: 140%;
    color: var(--color-signal-error);
    text-transform: uppercase;
    text-decoration: none;
    display: flex;
    align-items: center;
  }
  .collection-filter__drawer.filters-drawer
    .collection-filter__group
    .collection-filter__group-header
    a
    .icon {
    width: 0.9375rem;
    height: 0.9375rem;
  }
  .collection-filter__drawer.filters-drawer
    .collection-filter__group
    input[type="checkbox"] {
    border: 1px solid var(--color-support-lighter-grey);
  }
}
@media only screen and (min-width: 47.9375rem) {
  .collection-filter__drawer.filters-drawer {
    transition: max-height 0.1s var(--transition-timing-flick),
      transform 0.1s var(--transition-timing-flick),
      padding 0.1s var(--transition-timing-flick);
  }
  .collection-filter__drawer.filters-drawer.is-hidden {
    padding: 0;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    width: 100%;
    transform: translateY(-40%);
  }
  .collection-filter__drawer.filters-drawer.is-visible {
    padding: 1.5rem 0;
    overflow: auto;
    max-height: 62.5rem;
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
  .collection-filter__drawer.filters-drawer .collection-filter__group {
    border-top: 1px solid var(--color-support-black);
    padding: 0.5rem 0 1.5rem 0;
  }
  .collection-filter__drawer.filters-drawer
    .collection-filter__group
    .collection-filter__group-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .collection-filter__drawer.filters-drawer
    .collection-filter__group
    .collection-filter__group-header
    a {
    font-size: 0.75rem;
    line-height: 140%;
    color: var(--color-signal-error);
    text-transform: uppercase;
    text-decoration: none;
    display: flex;
    align-items: center;
  }
  .collection-filter__drawer.filters-drawer
    .collection-filter__group
    .collection-filter__group-header
    a
    .icon {
    width: 0.9375rem;
    height: 0.9375rem;
  }
}
.collection-filter__group-header h4 {
  font-size: 18px;
  line-height: 160%;
  font-weight: var(--font-weight-body-bold);
  margin-top: 0;
  line-height: 140%;
  margin-bottom: 0;
}
@media only screen and (min-width: 47.9375rem) {
  .collection-filter__group-header h4 {
    font-size: 20px;
    line-height: 140%;
  }
}
.filter-accordion__trigger {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin: 0;
  color: var(--color-support-black);
  text-align: left;
  background: transparent;
  border: 1px solid transparent;
  outline-offset: 0;
  padding: 0;
}
.filter-accordion__trigger:hover,
.filter-accordion__trigger:focus,
.filter-accordion__trigger:active {
  color: var(--color-support-black);
}
.filter-accordion__trigger .icon {
  width: 1.5rem;
  height: 1.5rem;
  margin-left: 0.5rem;
}
.filter-accordion__trigger[aria-expanded="true"] {
  color: var(--color-black);
  background-color: var(--color-white);
}
.filter-accordion__trigger[aria-expanded="true"] .icon {
  transform: rotate(180deg);
}
.filter-accordion__panel {
  display: none;
  margin-bottom: 0;
}
.filter-accordion__panel.show-panel {
  display: block;
  margin-bottom: 0;
}
.filter-accordion__panel.filter-accordion__panel-price_range {
  padding: 0 0.0625rem;
}
.filter-is-visible {
  overflow: hidden;
}
.filter-is-visible .fader--filters {
  opacity: 1;
  visibility: visible;
}
.collection-filter__row {
  margin-bottom: 1rem;
}
.collection-filter__filter-list {
  list-style: none;
  margin: 1rem 0 0 0;
  padding: 0;
}
.collection-filter__filter-list li {
  display: flex;
  align-items: center;
  margin-bottom: 0.8125rem;
  font-size: 1rem;
  line-height: 160%;
}
.collection-filter__filter-list li:last-child {
  margin-bottom: 0;
}
.collection-filter__filter-value--colour input[type="checkbox"] {
  display: none;
}
.collection-filter__filter-value--colour input[type="checkbox"] + label {
  margin-left: 0;
}
.collection-filter__filter-value--colour
  input[type="checkbox"]:checked
  + label
  .swatch {
  border-width: 0.25rem;
}
.collection-filter__filter-range {
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-top: 1.5rem;
}
.collection-filter__filter-range label {
  display: block;
}
.collection-filter__filter-range input[type="number"] {
  background-color: var(--color-support-white);
  border: none;
  text-align: center;
  width: 3.75rem;
  height: 2rem;
  border-radius: 0.25rem;
}
.collection-filter__filter-range input[type="number"]::placeholder {
  color: var(--color-support-black);
  font-size: 0.875rem;
}
.collection-filter__filter-range input[type="number"]:focus,
.collection-filter__filter-range input[type="number"]:hover {
  border-color: none;
}
.collection-filter__filter-range input::-webkit-outer-spin-button,
.collection-filter__filter-range input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.collection-filter__filter-range-slider {
  width: 100%;
  margin: 1.5rem 0;
  --thumb-color: black;
  --track-height: 0.1rem;
  --thumb-diameter: 1rem;
  --track-color: white;
  --track-color-active: white;
  --track-color-disabled: rgb(250, 250, 250);
  --progress-color: black;
  --progress-color-active: black;
  --focus-outline: 1px solid transparent;
  --thumb-halo-color: none;
  --thumb-color-active: black;
}
.aside-brands-list.mobile-view {
  padding-left: 1rem;
}
@media only screen and (min-width: 47.9375rem) {
  .aside-brands-list.mobile-view {
    display: none;
  }
}
.aside-brands-list.mobile-view li:last-child {
  margin-right: 1rem;
}
.aside-brands-list .aside-brands-title {
  display: none;
}
@media only screen and (max-width: 47.875rem) {
  .aside-brands-list ul {
    list-style: none;
    display: flex;
    padding-inline-start: 0;
    margin: 0;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    gap: 0.5rem;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    -ms-overflow-style: none;
    scrollbar-width: none;
    margin-bottom: 2.5rem;
  }
  .aside-brands-list ul::-webkit-scrollbar {
    display: none;
  }
  .aside-brands-list ul li a {
    background-color: var(--color-support-white);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    padding: 0.25rem 0.75rem;
    font-size: 1.125rem;
    text-decoration: none;
    border-radius: 200px;
    white-space: nowrap;
  }
  .aside-brands-list ul li a .icon {
    width: 0.75rem;
    height: 0.75rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .aside-brands-list {
    background-color: var(--color-support-white);
    border-radius: 1rem;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
    margin-bottom: 2.5rem;
  }
  .aside-brands-list .aside-brands-title {
    font-weight: 400;
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }
  .aside-brands-list .aside-brands-title.internal {
    border-bottom: 1px solid var(--color-support-black);
    font-weight: 600;
  }
  .aside-brands-list .aside-brands-title a {
    text-decoration: none;
    border-bottom: 1px solid transparent;
  }
}
@media only screen and (min-width: 47.9375rem) and (hover: hover) {
  .aside-brands-list .aside-brands-title a:hover {
    border-bottom: 1px solid var(--color-support-black);
  }
}
@media only screen and (min-width: 47.9375rem) {
  .aside-brands-list .aside-brands-title .icon {
    width: 0.75rem;
    height: 0.75rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .aside-brands-list ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
  }
}
@media only screen and (min-width: 47.9375rem) and (min-width: 61.875rem) {
  .aside-brands-list ul {
    padding-left: 1.5rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .aside-brands-list ul li {
    padding-bottom: 0.5rem;
  }
  .aside-brands-list ul li:last-child {
    padding-bottom: 0;
  }
  .aside-brands-list ul li a {
    line-height: 160%;
    text-decoration: none;
  }
}
@media only screen and (min-width: 47.9375rem) and (hover: hover) {
  .aside-brands-list ul li a:hover {
    border-bottom: 1px solid var(--color-support-black);
  }
}
@media only screen and (min-width: 47.9375rem) {
  .aside-brands-list ul li a.active {
    font-weight: 600;
    border-bottom: 1px solid var(--color-support-black);
  }
}
@media only screen and (min-width: 47.9375rem) {
  .aside-brands-list ul li a.active-grandchild {
    border-bottom: 1px solid var(--color-support-black);
  }
}
@media only screen and (min-width: 47.9375rem) {
  .aside-brands-list ul li a .icon {
    width: 0.75rem;
    height: 0.75rem;
  }
}
.collection-filter__footer .active-filters--wrapper {
  padding: 1rem 0 1.5rem 0;
  border-top: 1px solid var(--color-support-black);
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.collection-filter__footer .active-filters--wrapper a {
  background-color: var(--color-support-black);
  color: var(--color-support-white);
  font-size: 0.875rem;
  padding: 0.5rem 0.75rem;
  border-radius: 0.5rem;
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  display: inline-flex;
}
.collection-filter__footer .active-filters--wrapper a .icon {
  width: 1.25rem;
  height: 1.25rem;
}
.collection-filter__footer-btns {
  position: sticky;
  bottom: 0;
  width: 100%;
  background-color: var(--brand-tone-light-1);
  display: flex;
  flex-wrap: wrap;
  padding: 1rem;
  margin-top: auto;
}
@media only screen and (min-width: 47.9375rem) {
  .collection-filter__footer-btns {
    display: none;
  }
}
.component-image__wrapper {
  width: 100%;
}
.component-picture__wrapper {
  position: relative;
  padding-top: var(--paddingTop);
}
@media only screen and (min-width: 47.9375rem) {
  .component-picture__wrapper {
    padding-top: var(--paddingTopDesktop);
  }
}
.component-picture__wrapper img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.component-video__video {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}
.icon {
  display: inline-block;
  vertical-align: middle;
  width: 1.5rem;
  height: 1.5rem;
  fill: none;
}
.no-svg .icon {
  display: none;
}
.icon.icon--solid,
.icon.icon--social {
  fill: currentColor;
  stroke: none;
}
.icon.icon--auto-size {
  width: unset;
  height: unset;
}
.payment-icons {
  -webkit-user-select: none;
  user-select: none;
  cursor: default;
}
.icon-heart-fill {
  display: none;
}
.icon-animate .icon-heart-fill {
  display: block;
}
.icon-heart .icon-heart-fill {
  fill: currentColor;
  transform: scaleX(0) scaleY(0) scaleZ(0);
  transform-origin: center center;
  transition: transform 0.2s var(--transition-timing-flick);
}
.icon-animate .icon-heart .icon-heart-fill {
  transform: scaleX(1) scaleY(1) scaleZ(1);
}
.logo-image {
  display: block;
  margin: 0 auto;
  color: var(--color-support-black);
  width: 10.625rem;
}
.logo-image svg {
  width: 100%;
}
@media only screen and (min-width: 47.9375rem) {
  .logo-image {
    width: 10.3125rem;
  }
}
@media (hover: hover) {
  .logo-image:hover {
    color: var(--color-support-black);
  }
}
.drawer--left {
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  overflow: auto;
  width: 100%;
  max-width: 100%;
  height: 100%;
  background: var(--color-support-white);
  -webkit-overflow-scrolling: touch;
  transition: transform 0.2s;
  transition-timing-function: var(--transition-timing-flick);
  will-change: transform;
}
@media only screen and (max-width: 47.875rem) {
  .drawer--left {
    visibility: hidden;
    pointer-events: none;
    top: 32px;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .drawer--left {
    position: static;
    overflow: unset;
    width: auto;
    height: auto;
    padding: 0;
    background: none;
  }
}
.menu-is-expanded .drawer--left {
  visibility: visible;
  pointer-events: all;
  animation: showNav 0.5s var(--transition-timing-flick);
  transition: all 0.5s var(--transition-timing-flick);
}
@media only screen and (min-width: 47.9375rem) {
  .menu-is-expanded .drawer--left {
    transform: none;
  }
}
@keyframes showNav {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.menu-is-expanded {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.menu-is-expanded .fader--nav {
  display: none;
}
.nav-toggle {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 2.625rem;
  height: 2.625rem;
  margin: 0;
  margin-left: -0.6875rem;
  padding: 0.3125rem;
  border: 1px solid transparent;
  transform: rotate(0deg);
  transition: 0.5s ease-in-out;
  cursor: pointer;
  background: none;
  color: var(--color-support-white);
}
.nav {
  flex-direction: row;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media only screen and (min-width: 47.9375rem) {
  .nav {
    display: flex;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .nav {
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin: 0;
  }
}
@media only screen and (min-width: 68.75rem) {
  .nav {
    gap: 24px;
  }
}
.nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.nav__item {
  width: 100%;
  padding: 0;
  border-bottom: 1px solid var(--color-support-light-grey);
  white-space: nowrap;
}
@media only screen and (min-width: 47.9375rem) {
  .nav__item {
    width: auto;
    border: none;
    padding: 0.5rem 0;
    position: relative;
  }
}
.nav__item .icon-chevron-down {
  display: none;
}
@media only screen and (min-width: 47.9375rem) {
  .nav__item .icon-chevron-down {
    display: block;
  }
}
.nav__item .icon-minus {
  display: none;
}
@media only screen and (min-width: 47.9375rem) {
  .nav__item .icon-plus,
  .nav__item .icon-chevron-right {
    display: none;
  }
}
.nav__item.is-collapsed .nav__dropdown {
  display: none;
}
.nav__item.is-expanded {
  border-bottom: none;
}
.nav__item.is-expanded .icon-chevron-down {
  transform: rotate(180deg);
}
.nav__item.is-expanded .icon-plus {
  display: none;
}
.nav__item.is-expanded .icon-minus {
  display: block;
}
@media only screen and (min-width: 47.9375rem) {
  .nav__item.is-expanded .icon-minus {
    display: none;
  }
}
.nav__item.is-expanded .nav__dropdown {
  display: block;
  animation: showNavDropdown 0.2s var(--transition-timing-flick);
}
@keyframes showNavDropdown {
  0% {
    opacity: 0;
    max-height: 0;
  }
  100% {
    opacity: 1;
    max-height: calc(100vh - 100%);
  }
}
.nav__item.is-active a.nav__item--toggle,
.nav__item:active a.nav__item--toggle {
  position: relative;
}
.nav__item.is-active a.nav__item--toggle:after,
.nav__item:active a.nav__item--toggle:after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  width: calc(100% - 23px);
  height: 0.5px;
  background-color: var(--color-support-white);
}
.nav__item a {
  color: var(--color-support-black);
  transition: color 0.2s var(--transition-timing-flick);
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  transition: background-color var(--transition-duration)
    var(--transition-timing);
}
@media only screen and (min-width: 68.75rem) {
  .nav__item a {
    padding-left: 1rem;
    padding-right: 1rem;
    color: var(--color-support-white);
    font-size: 1rem;
    border-radius: 0.5rem;
  }
}
@media (hover: hover) {
  .nav__item a:hover {
    background-color: var(--color-support-black-hover);
  }
}
@media only screen and (max-width: 47.875rem) {
  .nav__item {
    border-bottom: none !important;
  }
  .nav__item a {
    padding: 0.75rem 2.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .megamenu {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .submenu,
  .submenu--image {
    flex: 0 0 20%;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
}
.submenu {
  list-style: none;
  padding: 0;
  margin: 0;
}
.submenu li {
  display: block;
}
.submenu li a {
  display: block;
  padding: 1rem 0;
  position: relative;
}
@media only screen and (min-width: 47.9375rem) {
  .submenu li a {
    padding: 1rem;
  }
}
@media only screen and (min-width: 47.9375rem) and (hover: hover) {
  .submenu li a:hover {
    background-color: transparent;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .submenu li a .icon {
    display: none;
  }
}
.submenu--image a {
  display: flex;
  flex-direction: column;
}
.nav-secondary {
  list-style: none;
  padding: 0;
  margin: 0;
}
.nav-secondary--desk {
  display: none;
}
@media only screen and (min-width: 47.9375rem) {
  .nav-secondary--desk {
    display: flex;
    align-items: center;
    vertical-align: middle;
    justify-content: flex-end;
    gap: 0.5rem;
  }
}
.nav-secondary--desk li {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.nav-secondary--desk a {
  padding: 0.25rem 0.5rem;
  line-height: 140%;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background var(--transition-duration) var(--transition-timing);
}
@media (hover: hover) {
  .nav-secondary--desk a:hover {
    background: var(--brand-tone-light-1);
  }
}
.nav-secondary--desk a .icon-heart {
  width: 16px;
  height: 16px;
  margin-right: 0.25rem;
}
.nav-secondary--mobile {
  color: var(--color-support-black);
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 2rem;
}
@media only screen and (min-width: 47.9375rem) {
  .nav-secondary--mobile {
    display: none;
  }
}
.nav-secondary--mobile .header_mobile--book {
  width: 7.8125rem;
}
.nav-secondary--mobile li:first-child a {
  padding: 0 1rem;
}
.page__top-nav ul {
  list-style: none;
  position: relative;
  overflow: auto;
  max-width: 100%;
  margin: 0;
  border: 1px solid var(--color-support-lighter-grey);
  border-radius: 0.5rem;
  padding: 0.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.page__top-nav ul li {
  white-space: nowrap;
}
.page__top-nav ul a {
  display: flex;
  padding: 8px 12px;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  align-self: stretch;
  border-radius: 4px;
  text-decoration: none;
}
.page__top-nav ul a a {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.page__top-nav ul a.is-active,
.page__top-nav ul a:focus-visible,
.page__top-nav ul a:active {
  background-color: var(--brand-tone-light-1);
  font-weight: var(--font-weight-body-bold);
}
@media (hover: hover) {
  .page__top-nav ul a:hover {
    background-color: var(--brand-tone-light-1);
  }
}
.nav__dropdown {
  position: absolute;
}
@media only screen and (min-width: 47.9375rem) {
  .nav__dropdown .megamenu {
    background-color: var(--color-support-white);
    border-radius: 0px 0px 0.5rem 0.5rem;
    box-shadow: 0px 8px 24px 0px rgba(83, 50, 1, 0.24);
    padding: 0.5em 0.8em;
    margin-top: 0.625rem;
    margin-left: 0;
  }
  .nav__dropdown .megamenu .nav__item {
    padding: 0.25rem 0.5rem;
  }
  .nav__dropdown .megamenu .nav__item a {
    padding: 0;
    color: var(--color-support-black);
    font-size: 16px;
    line-height: 160%;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .nav__dropdown .megamenu .nav__item a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    background: var(--color-support-black);
    width: 100%;
    height: 1px;
    opacity: 0;
    transition: opacity var(--transition-duration) var(--transition-timing);
  }
  .nav__dropdown .megamenu .nav__item a:hover::after {
    opacity: 1;
  }
}
@media only screen and (max-width: 47.875rem) {
  .mobile-nav__slider {
    height: 100%;
    width: 100%;
    transform: translateX(0);
    transition: transform 0.5s var(--transition-timing-flick);
    animation: showNav 0.5s var(--transition-timing-flick);
    will-change: transform;
    position: relative;
    z-index: 1;
  }
}
@media only screen and (max-width: 47.875rem) {
  .slidemenu-is-level-2 .mobile-nav__slider {
    transform: translateX(-100%);
  }
}
@media only screen and (max-width: 47.875rem) {
  .mobile-nav__slider ul {
    width: 100%;
    list-style: none;
    border-bottom: 1px solid var(--color-support-lighter-grey);
  }
}
@media only screen and (max-width: 47.875rem) {
  .mobile-nav__slider ul .submenu {
    margin-bottom: 2rem;
    margin-top: 0;
  }
}
@media only screen and (max-width: 47.875rem) {
  .mobile-nav__slider ul .nav__dropdown {
    position: absolute;
    top: 0;
    left: 100%;
    width: 100%;
    padding-top: 0 !important;
  }
}
@media only screen and (max-width: 47.875rem) {
  .mobile-nav__slider .nav__item--level-1-link {
    padding: 0.5rem 0;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .mobile-nav__slider .nav__item--level-1-link .icon {
    display: none;
  }
}
@media only screen and (max-width: 47.875rem) {
  .mobile-nav__slider .nav__item a {
    text-transform: capitalize;
    font-size: 1.5rem;
    font-weight: 300;
    line-height: 140%;
    color: var(--color-support-black) !important;
    border-top: 1px solid var(--color-support-lighter-grey);
  }
  .mobile-nav__slider .nav__item a.nav-link {
    border-bottom: none;
    font-size: 0.75rem;
    text-transform: uppercase;
  }
  .mobile-nav__slider .nav__item .nav__item--level-2 ul {
    border-top: none;
    margin-top: 0;
    margin-bottom: 1.5rem;
  }
  .mobile-nav__slider .nav__item .nav__item--level-2 a.nav-link {
    padding: 12px 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
    color: var(--color-support-grey) !important;
    font-weight: var(--font-weight-body) !important;
    font-size: 16px !important;
    line-height: 160%;
    text-transform: capitalize;
  }
  .mobile-nav__slider .nav__item .nav__item--level-3 a {
    border-bottom: 0;
  }
  .mobile-nav__slider .nav__item .nav__item--level-3 svg {
    display: none;
  }
}
.mobile-nav__back-link {
  width: 100%;
  padding: 1.25rem 0;
  margin-bottom: 1.25rem;
  display: block;
}
@media only screen and (min-width: 47.9375rem) {
  .mobile-nav__back-link {
    display: block;
  }
}
.mobile-nav__back-link button {
  border: none;
  font-size: 1.25rem;
  text-transform: capitalize;
}
.mobile-nav__back-link button .icon {
  width: 0.9375rem;
  height: 0.9375rem;
}
.back-link {
  background: none;
  border: none;
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 4px 16px;
  width: 100%;
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 140%;
}
.nav-subtitle {
  font-weight: 300;
  line-height: 140%;
  font-size: 24px;
  padding: 12px 40px;
}
.mobile-nav-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100vw;
  padding: 1rem;
  overflow: hidden;
  margin-bottom: 24px;
}
.mobile-nav-actions ul {
  list-style: none;
  display: flex;
  gap: 0.5rem;
  padding: 0;
  margin: 0;
}
.mobile-nav-actions ul li a {
  color: var(--color-support-black);
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  font-size: 12px;
}
.mobile-nav-actions ul li a .icon {
  width: 16px !important;
  height: 16px !important;
}
.mobile-nav-actions .btn--blank .icon {
  width: 32px;
  height: 32px;
}
@media only screen and (min-width: 47.9375rem) {
  .first-link {
    display: none;
  }
}
@media only screen and (min-width: 61.875rem) {
  .first-link {
    display: unset;
  }
}
.pagination {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0.5rem;
  align-items: center;
}
.pagination li {
  display: inline-flex;
}
.pagination li .icon {
  width: 1.25rem;
  height: 1.25rem;
}
.pagination li.active,
.pagination li.disabled,
.pagination li a {
  padding: 0.6875rem 1rem;
  text-decoration: none;
  line-height: 1;
  border: 1px solid transparent;
}
@media (hover: hover) {
  .pagination li a:hover {
    border: 1px solid var(--brand-tone-base);
    border-radius: 0.25rem;
    background-color: var(--brand-tone-base);
  }
}
.pagination li.active {
  border: 1px solid var(--color-support-grey);
  border-radius: 0.25rem;
}
.pagination-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
}
@media only screen and (min-width: 47.9375rem) {
  .pagination-wrapper {
    justify-content: space-between;
  }
}
@media only screen and (max-width: 47.875rem) {
  .pagination-wrapper {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.pagination-wrapper .paginate-total {
  color: var(--color-support-grey);
}
@media only screen and (max-width: 47.875rem) {
  .pagination-wrapper .paginate-total {
    margin-bottom: 1.5rem;
    width: 100%;
  }
}
.product-single__store-availability-container {
  margin-bottom: 1.5rem;
}
.store-availability-small-text {
  font-size: 1em;
}
.store-availability-information {
  display: flex;
  padding: 1rem;
  border: 1px solid var(--color-support-grey);
}
.store-availability-information__title {
  margin-bottom: 0;
}
.store-availability-information__stock {
  margin-bottom: 0;
}
.store-availability-information__button {
  text-decoration: underline;
  cursor: pointer;
  border: none;
  padding: 0;
  background: transparent;
  margin-top: 0.5rem;
}
.store-availability-container .icon {
  width: 0.75rem;
  height: 0.75rem;
  margin: 0.25rem 0.25rem 0 0;
}
.store-availability-container .icon-tick {
  color: var(--color-signal-success);
}
.store-availability-container .icon-cross {
  width: 1.125rem;
  height: 1.125rem;
  margin: 0;
  color: var(--color-signal-error);
}
.store-availability-container .store-availability-list__stock .icon {
  margin: 0 0.125rem 0.1875rem 0;
}
.store-availability-container
  .store-availability-list__confirm-address
  .icon-unverified-address {
  margin: 0 0 0.1875rem;
}
.store-availability-container
  .store-availability-list__confirm-address
  .icon-unverified-address__exclamation {
  fill: var(--color-support-black);
}
.store-availability-container
  .store-availability-list__confirm-address
  .icon-unverified-address__circle {
  stroke: var(--color-support-black);
  fill: transparent;
}
.store-availabilities-more {
  border: 1px solid var(--color-support-light-grey);
  border-width: 0 1px 1px;
  height: 0;
  visibility: hidden;
  opacity: 0;
}
.store-availabilities-more--active {
  height: auto;
  visibility: visible;
  opacity: 1;
}
.store-availabilities-more__header {
  display: flex;
  justify-content: space-between;
  padding: 1rem 1.5rem;
}
.store-availabilities-more__product-title {
  font-size: 1em;
  text-transform: none;
  margin-bottom: 0;
  letter-spacing: 0;
}
.store-availabilities-list {
  list-style: none;
  margin-block-start: 0;
  margin-block-end: 0;
  overflow-y: auto;
  padding: 0 1.25rem;
}
.store-availability-list__item {
  padding-bottom: 1rem;
}
.store-availability-list__item::before {
  content: "";
  display: block;
  margin: 0 0 1rem;
  border-bottom: 1px solid var(--color-support-grey);
}
.store-availability-list__address {
  font-size: 1em;
  font-style: normal;
  margin-bottom: 0;
}
.store-availability-list__location {
  font-size: 1em;
  margin-bottom: 0.5rem;
}
.store-availability-list__stock {
  margin-top: 0.5rem;
  margin-bottom: 1rem;
}
.store-availability-list__phone {
  margin-bottom: 0;
}
.placeholder-svg {
  display: block;
  background-color: var(--placeholder-color-background);
  fill: var(--placeholder-color-foreground);
}
.placeholder-svg--small {
  width: 30rem;
}
.placeholder-noblocks {
  padding: 2.5rem;
  text-align: center;
}
.placeholder-background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.placeholder-background .icon {
  border: 0;
}
.product-card {
  position: relative;
  height: 100%;
}
@media only screen and (max-width: 47.875rem) {
  .product-card {
    background-color: var(--color-support-white);
    border-radius: 1rem;
    display: flex;
    flex-direction: column;
  }
}
.product-card .product-card--inner {
  background-color: var(--color-support-white);
  padding: 0.5rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  flex: 1;
  border-radius: 1rem;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media only screen and (min-width: 47.9375rem) {
  .product-card .product-card--inner {
    padding: 1rem;
    height: 100%;
    display: flex;
    flex-direction: column;
  }
  .product-card .product-card--inner .product-card__meta {
    flex: 1;
  }
  .product-card .product-card--inner .product-card__meta .product-meta-grid {
    height: 100%;
    display: flex;
    flex-direction: column;
  }
}
.product-card .product-card__meta {
  height: 100%;
}
.product-card .product-meta-grid {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.product-card .product-card__vendor {
  color: var(--color-support-grey);
  padding-bottom: 0.25rem;
}
@media only screen and (max-width: 47.875rem) {
  .product-card .product-card__vendor {
    font-size: 0.875rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .product-card .product-card--form-toggle {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.1s ease-in;
  }
}
@media (hover: hover) {
  .product-card:hover .product-card--inner {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
  .product-card:hover .product-card--form-toggle {
    max-height: 70px;
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
}
.product-card .product-card__wishlist {
  position: absolute;
  z-index: 1;
  top: 0.5rem;
  right: 0.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .product-card .product-card__wishlist {
    top: 1.5rem;
    right: 1.5rem;
  }
}
.product-card .product-card__wishlist .btn {
  color: var(--color-support-black);
  border-radius: 200px;
  border: 1px solid var(--color-support-lighter-grey);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  background-color: var(--color-support-white);
}
.product-card .product-card__wishlist .btn .icon {
  width: 1rem;
  height: 1rem;
}
.product-card__image {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 0.75rem;
  height: 180px;
}
.product-card__image img {
  max-height: 10.9375rem;
  object-fit: contain;
}
@media only screen and (min-width: 47.9375rem) {
  .product-card__image {
    height: 17.5rem;
  }
  .product-card__image img {
    max-height: 16.875rem;
  }
}
.product-card__image a {
  display: block;
}
@media (hover: hover) {
  .product-card__image:hover .product-card__image--secondary {
    opacity: 1;
    visibility: visible;
    display: flex;
  }
}
.product-card__image--secondary {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s, visibility 0.2s;
  background-color: var(--color-support-white);
}
@media (hover: none) {
  .product-card__image--secondary {
    display: none;
  }
}
@media only screen and (max-width: 47.875rem) {
  .product-card__info {
    padding: 0 1rem;
  }
}
.product-card__label {
  color: var(--color-support-white);
  background: var(--color-signal-error);
  width: 2.5rem;
  height: 2.5rem;
  font-size: 1.125rem;
  border-radius: 400px;
  font-family: var(--font-decorative);
  position: absolute;
  bottom: 0;
  right: 0;
  text-transform: uppercase;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 0.25rem;
  text-align: center;
}
@media only screen and (min-width: 47.9375rem) {
  .product-card__label {
    width: 4rem;
    height: 4rem;
    font-size: 1.75rem;
  }
}
.product-card__label.product-card__label--custom {
  background-color: var(--color-signal-success);
  color: var(--color-support-black);
}
.product-card__label.text-wrapped {
  width: 3rem;
  height: 3rem;
  font-size: 0.75rem;
  padding: 0 0.625rem;
  line-height: 1;
}
@media only screen and (min-width: 47.9375rem) {
  .product-card__label.text-wrapped {
    font-size: 1.125rem;
    width: 4rem;
    height: 4rem;
  }
}
.product-card__label.label-sold-out {
  color: var(--color-signal-error);
  background: var(--color-support-white);
  border: 1px solid var(--color-signal-error);
}
.product-card__label--sale {
  color: var(--color-support-white);
  background: var(--color-accent);
}
.product-card__label--custom {
  color: var(--color-support-white);
  background: var(--color-accent);
}
.product-card__title {
  margin: 0 0 0.5rem;
}
@media only screen and (max-width: 47.875rem) {
  .product-card__title {
    font-size: 1rem;
    min-height: unset;
  }
}
.product-card__title a {
  color: var(--color-support-black);
  text-decoration: none;
  display: block;
  font-weight: 400;
}
.product-card__price {
  margin-top: auto;
}
.product-card__price a {
  color: var(--color-support-black);
  text-decoration: none;
  display: flex;
  align-items: center;
}
.product-card__price a.h6 {
  margin-bottom: 0;
  font-weight: 300;
}
.product-card__price .sale-percentage {
  color: var(--color-signal-error);
  text-transform: uppercase;
  font-size: 0.75rem;
  padding: 0 0.3125rem;
  white-space: nowrap;
}
@media only screen and (min-width: 47.9375rem) {
  .product-card__price .sale-percentage {
    font-size: 1rem;
    padding: 0 0.75rem;
  }
}
@media only screen and (max-width: 47.875rem) {
  .product-card__price .sale-percentage {
    display: none;
  }
}
.product-card__features {
  color: var(--color-support-grey);
  padding: 0.75rem 0;
}
.product-card__features ul {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}
.product-card__features ul li {
  color: var(--color-support-grey);
  list-style: none;
}
.product-card__features ul li::after {
  content: "";
  border-radius: 0.375rem;
  height: 0.25rem;
  width: 0.25rem;
  background-color: var(--color-support-light-grey);
  margin: 0 0.5rem;
  vertical-align: middle;
  display: inline-block;
}
.product-card__features ul li:last-child::after {
  content: "";
  display: none;
}
.product-card__sale-price {
  margin-right: 5px;
}
@media only screen and (min-width: 47.9375rem) {
  .product-card__sale-price {
    margin-right: 0.5rem;
  }
}
[data-compare-price] {
  color: var(--color-support-black);
  font-size: 1rem;
}
.product-card__form {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
}
.product-card__form.has-options {
  grid-template-columns: 1.6fr 1fr;
  gap: 0 0.25rem;
}
.product-card__form select {
  padding: 0.75rem 1rem;
  line-height: 1;
}
@media only screen and (max-width: 47.875rem) {
  .product-card__form select {
    height: 1.625rem;
    border-radius: 200px;
    border: 1px solid var(--color-support-lighter-grey);
    padding: 0.25rem 0.5rem;
    line-height: normal;
    font-size: 0.75rem;
  }
}
.product-card__form select:focus {
  box-shadow: none;
}
.product-card__add,
.product-card__variant,
.wishlist__addToCart {
  font-size: 0.75rem;
  line-height: 1;
  padding: 0.75rem;
}
@media only screen and (max-width: 47.875rem) {
  .product-card__add,
  .product-card__variant,
  .wishlist__addToCart {
    padding: 0.375rem 0.75rem;
  }
}
.product-card__add .icon,
.product-card__variant .icon,
.wishlist__addToCart .icon {
  width: 0.75rem;
  height: 0.75rem;
}
.product-card__sizes-trigger {
  padding: 0.1875rem;
  border: none;
  border-radius: 50%;
  display: none;
}
.product-card__sizes-trigger svg {
  width: 1.625rem;
  height: 1.625rem;
  display: block;
}
.collection-grid--default .product-card__sizes-trigger svg {
  width: 1.25rem;
  height: 1.25rem;
}
@media only screen and (min-width: 61.875rem) {
  .product-card__sizes-trigger {
    display: none;
  }
}
.product-card__actions {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  transition: border-color 0.2s var(--transition-timing-flick);
}
.product-card__add,
.product-card__variant,
.wishlist__addToCart {
  flex-grow: 1;
  width: 100%;
}
.product-card__add[disabled],
.product-card__variant[disabled],
.wishlist__addToCart[disabled] {
  color: var(--color-support-white);
  cursor: default;
  background-color: var(--color-support-lighter-grey);
  border-color: var(--color-support-lighter-grey);
}
.product-card__variants {
  width: 100%;
  text-align: center;
  max-width: 100%;
  margin-bottom: 0.5rem;
}
.product-card__variants button {
  position: relative;
  padding: 0.5rem;
  font-size: 0.875rem;
  border: 1px solid transparent;
}
.product-card__variants .is-selected {
  border-color: var(--color-support-black);
}
.product-card__variants [disabled] {
  border-color: var(--color-support-black);
  cursor: default;
  opacity: 0.4;
}
.product-card__added {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease-in-out;
}
.product-card__added svg {
  margin-right: 0.5rem;
}
.product-card__added path {
  stroke-dashoffset: 40;
  stroke-dasharray: 40;
}
.product-card__added.show {
  opacity: 1;
  visibility: visible;
}
.product-card__added.show path {
  animation: drawCheck 0.5s ease-in-out forwards;
}
@keyframes drawCheck {
  to {
    stroke-dashoffset: 80;
  }
}
.product-card__form-container {
  position: relative;
  background-color: var(--color-support-white);
}
@media only screen and (max-width: 47.875rem) {
  .product-card__form-container {
    border-radius: 0 0 1rem 1rem;
    margin-top: auto;
  }
}
.product-card__form-container .product-card--form-toggle {
  width: 100%;
  background-color: var(--color-support-white);
  padding: 0 1rem;
  border-radius: 0 0 1rem 1rem;
  margin-top: -1rem;
}
@media only screen and (min-width: 47.9375rem) {
  .product-card__form-container .product-card--form-toggle {
    position: absolute;
  }
}
@media only screen and (max-width: 47.875rem) {
  .product-card__form-container .product-card--form-toggle {
    padding: 0 0.5rem;
  }
}
.product-card__form-container .product-card--form-toggle .form-toggle--inner {
  padding: 1rem 0;
}
.swatch {
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.5rem;
  width: 1.875rem;
  height: 1.875rem;
  border-radius: 50%;
  border: 1px solid var(--color-support-light-grey);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.tabs {
  overflow: hidden;
}
.tabs__content[aria-hidden="true"] {
  display: none;
}
.selectNative,
.selectCustom {
  position: relative;
  width: 100%;
}
.selectCustom {
  position: absolute;
  top: 0;
  left: 0;
  display: none;
  height: 100%;
}
.selectCustom.isActive .selectCustom-options {
  display: block;
}
.selectCustom.isActive .selectCustom-trigger {
  border-radius: 4px 4px 0 0;
  border-color: var(--brand-light-grey);
  border-bottom-color: transparent;
}
.selectCustom.isActive .selectCustom-trigger::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 100%;
  left: 1rem;
  width: calc(100% - 32px);
  height: 1px;
  background-color: var(--brand-light-grey);
  pointer-events: none;
}
@media (hover: hover) {
  .selectCustom {
    display: none;
  }
  .selectNative:focus + .selectCustom {
    display: none;
  }
}
.selectNative:focus,
.selectCustom.isActive .selectCustom-trigger {
  outline: none;
}
.selectNative:focus::after,
.selectCustom.isActive .selectCustom-trigger::after {
  transform: rotate(180deg);
}
.custom-select-hybrid {
  position: relative;
}
.custom-select-hybrid .selectLabel {
  display: block;
  margin: 0 0 0.5rem 0;
  color: var(--brand-light-grey);
  width: 100%;
}
.selectWrapper {
  position: relative;
}
.selectNative,
.selectCustom-trigger {
  font-size: 0.875rem;
  min-height: 3rem;
  border: 1px solid var(--brand-light-grey);
  background-color: var(--brand-white);
  border-radius: 4px;
  padding: 0.5rem 1rem;
  transition: border-color 0.2s ease;
  color: var(--color-black);
}
.selectCustom-trigger {
  position: relative;
  width: 100%;
  height: 100%;
  cursor: pointer;
  display: flex;
  align-items: center;
}
.selectCustom-trigger::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1rem;
  height: 1rem;
  background-size: 1rem 1rem;
  background-repeat: no-repeat;
  background-position: center center;
  margin-top: -0.5rem;
  background-image: var(--svg-select-chev);
}
.selectCustom-trigger:hover {
  border-color: var(--brand-light-grey);
}
.selectCustom-options {
  font-size: 0.8125rem;
  line-height: 1.385;
  position: absolute;
  z-index: 1;
  top: calc(100% - 1px);
  left: 0;
  width: 100%;
  background-color: var(--brand-white);
  padding: 0;
  border: 1px solid var(--brand-light-grey);
  border-top-color: transparent;
  border-radius: 0 0 4px 4px;
  overflow: hidden;
  display: none;
}
.selectCustom-option {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem;
  color: var(--brand-black);
}
.selectCustom-option.isHover,
.selectCustom-option:hover {
  color: var(--brand-black);
  background-color: var(--brand-light-grey);
  cursor: pointer;
}
.selectCustom-option.isActive {
  color: var(--brand-black);
}
.selectCustom-option.isActive::after {
  content: "";
  width: 1rem;
  height: 1rem;
  background-size: 1rem 1rem;
  background-repeat: no-repeat;
  background-position: center center;
}
.product-media-popup {
  position: fixed;
  z-index: 101;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transition: 0.2s opacity var(--transition-timing-flick),
    0.2s visibility var(--transition-timing-flick);
  pointer-events: none;
  background-color: var(--color-popup-bg);
}
.product-media-popup .flickity-page-dots {
  display: none;
}
.product-media-popup .component-image__wrapper {
  width: auto !important;
}
.product-media-popup .flickity-button:focus {
  box-shadow: none !important;
}
.product-popup--close {
  position: absolute;
  right: 0.625rem;
  top: 0.625rem;
  z-index: 10;
}
.media-popup-active {
  overflow: hidden;
}
.media-popup-active .product-media-popup {
  opacity: 1;
  visibility: visible;
  pointer-events: unset;
  z-index: 999999;
}
.product__slideshow-zoom {
  height: 70%;
  width: 80%;
  top: 1.875rem;
  margin: auto;
  background-color: var(--color-support-white);
  border-radius: 1.5rem;
}
.product__slideshow-zoom::after {
  content: "flickity";
  display: none;
}
.product__slideshow-zoom .product__media-item {
  width: 100%;
  height: 100%;
  margin: 0;
}
.product__slideshow-zoom .product__media-item img,
.product__slideshow-zoom .product__media-item video {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.product__slideshow-zoom .component-image__wrapper,
.product__slideshow-zoom .component-video__wrapper {
  padding-top: 0 !important;
  height: 100%;
  width: 100%;
}
.product__slideshow-zoom .flickity-page-dots {
  position: absolute;
  left: 1.5rem;
  top: 1.5rem;
  width: 4rem;
  height: 2rem;
}
.product__slideshow-zoom .flickity-page-dots::before {
  content: "/";
}
.product__slideshow-zoom .flickity-page-dots .dot,
.product__slideshow-zoom .flickity-page-dots .dot::before,
.product__slideshow-zoom .flickity-page-dots .dot::after {
  width: 1.5rem;
  height: 2rem;
}
.product__slideshow-zoom .flickity-page-dots .dot {
  counter-increment: carousel-cell;
  position: absolute;
  left: 0;
  margin: 0;
  opacity: 1;
  border: none;
}
.product__slideshow-zoom .flickity-page-dots .dot.is-selected {
  z-index: 1;
  background-color: transparent;
}
.product__slideshow-zoom .flickity-page-dots .dot.is-selected::before {
  opacity: 1;
  display: block;
}
.product__slideshow-zoom .flickity-page-dots .dot::before {
  content: counter(carousel-cell);
  background-color: transparent;
  text-align: right;
  opacity: 0;
  display: none;
}
.product__slideshow-zoom .flickity-page-dots .dot:last-child::after {
  content: counter(carousel-cell);
  position: absolute;
  top: 0;
  right: -40px;
  text-align: left;
  order: 3;
}
@media only screen and (max-width: 47.875rem) {
  .responsive-table {
    width: 100%;
  }
  .responsive-table thead {
    display: none;
  }
  .responsive-table tr {
    display: block;
  }
  .responsive-table tr,
  .responsive-table td {
    float: left;
    clear: both;
    width: 100%;
  }
  .responsive-table th,
  .responsive-table td {
    display: block;
    text-align: right;
    padding: 20px/2;
    margin: 0;
  }
  .responsive-table td::before {
    content: attr(data-label);
    float: left;
    text-align: center;
    padding-right: 10px;
  }
}
.account-template {
  padding: 1.5rem 0 7.5rem 0;
}
.account-template.center-form {
  text-align: center;
}
.account-template.center-form .btn {
  margin: auto;
}
.account-template .button-container {
  display: flex;
  gap: 1.25rem;
}
.account-template .form__group select,
.account-template .form__group input[type="checkbox"] {
  border: 1px solid var(--color-support-lighter-grey);
}
.account-template .link-chevron {
  font-size: 1rem;
  text-transform: uppercase;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
  color: var(--color-support-black);
}
.account-template .link-chevron::after {
  content: "";
  position: absolute;
  height: 1px;
  width: 0;
  bottom: -2px;
  left: 0;
  background: var(--color-support-black);
  transition: width var(--transition-duration) var(--transition-timing);
}
.account-template .link-chevron:hover::after {
  width: 100%;
}
.account-template .link-chevron .icon {
  width: 0.875rem;
  height: 0.875rem;
  margin-left: 0.25rem;
}
.account-template
  .product-recommendations__wrapper
  .product-recommendations__slider {
  padding-bottom: 4.375rem;
  height: 610px !important;
}
.account-template .multipass-copy {
  padding: 2.5rem 0 1rem 0;
  text-align: center;
}
.account-template .button-container {
  padding: 2.5rem 0 1.5rem 0;
}
.account-template .form__group-small-print {
  font-size: 0.75rem;
  color: var(--color-support-grey);
  padding: 0.5rem 0 0 0;
}
.account-template .form__group-small-print ul {
  margin-top: 0;
}
.account-template .form__group-footer {
  font-size: 0.875rem;
  text-align: center;
  padding-top: 2.5rem;
}
.account-template .accepts-marketing {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  margin-bottom: 1.5rem;
}
.account-template .accepts-marketing label {
  font-size: 0.75rem;
}
.account-template .accepts-marketing input[type="checkbox"] {
  border: 1px solid var(--color-support-lighter-grey);
}
.account-template .accepts-marketing input[type="checkbox"]::after {
  left: 5px;
  top: 2px;
  width: 3px;
  height: 8px;
}
.account-template .account-divider {
  width: 100%;
  position: relative;
  text-align: center;
  font-size: 0.75rem;
  color: var(--color-support-lighter-grey);
  text-transform: uppercase;
  margin: 1.5rem 0;
}
.account-template .account-divider span {
  padding: 4px 8px;
  background-color: var(--color-support-white);
  position: relative;
}
.account-template .account-divider:before {
  content: "";
  height: 1px;
  width: 100%;
  background-color: var(--color-support-lighter-grey);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.account-template .js-tablist {
  display: flex;
  justify-content: center;
  gap: 0 0.5rem;
}
.account-template .js-tablist .js-tablist__link {
  padding: 0.5rem 0.75rem;
  border-radius: 0.5rem;
  cursor: pointer;
  border: 1px solid transparent;
  white-space: nowrap;
}
@media (hover: hover) {
  .account-template .js-tablist .js-tablist__link:hover {
    border: 1px solid var(--color-support-black);
  }
}
.account-template .js-tablist .js-tablist__link[aria-selected="true"] {
  background-color: var(--brand-tone-base);
  border: 1px solid var(--brand-tone-base);
}
@media (hover: hover) {
  .account-template .js-tablist .js-tablist__link[aria-selected="true"]:hover {
    border: 1px solid var(--brand-tone-base);
  }
}
.account-template .recoverpassword-form {
  text-align: center;
}
.account-template .recoverpassword-form .btn--blank {
  margin-top: 1.5rem;
}
.account-template .account-dashboard--main {
  padding: 0;
}
.account-template .account-block {
  margin-bottom: 2.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .account-template .account-block {
    margin-bottom: 5rem;
  }
}
.account-template .account-block .account-block--header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}
.account-template .account-block .account-block--header h3 {
  margin: 0;
}
@media only screen and (max-width: 47.875rem) {
  .account-template .account-block .account-block--header h3 {
    font-size: 1.25rem;
  }
}
.account-template .account-block .account-block--table,
.account-template .account-block .address__form {
  width: 100%;
  border: 1px solid var(--color-support-lighter-grey);
  border-radius: 8px;
  padding: 0 0.75rem;
}
@media only screen and (max-width: 47.875rem) {
  .account-template .account-block .account-block--table,
  .account-template .account-block .address__form {
    margin-bottom: 1.5rem;
  }
}
.account-template .account-block .account-block--table img,
.account-template .account-block .address__form img {
  max-width: 90%;
}
@media only screen and (max-width: 47.875rem) {
  .account-template .account-block .account-block--table.orders-table,
  .account-template .account-block .address__form.orders-table {
    border: none;
    border-radius: 0;
    padding: 0;
  }
  .account-template
    .account-block
    .account-block--table.orders-table
    .responsive-table-row,
  .account-template
    .account-block
    .address__form.orders-table
    .responsive-table-row {
    border: 1px solid var(--color-support-lighter-grey);
    border-radius: 8px;
    padding: 0 0.75rem;
    margin-bottom: 2.5rem;
  }
  .account-template
    .account-block
    .account-block--table.orders-table
    .responsive-table-row
    td,
  .account-template
    .account-block
    .address__form.orders-table
    .responsive-table-row
    td {
    width: 100%;
  }
  .account-template
    .account-block
    .account-block--table.orders-table
    .responsive-table-row
    td:before,
  .account-template
    .account-block
    .address__form.orders-table
    .responsive-table-row
    td:before {
    color: var(--color-support-grey);
  }
  .account-template
    .account-block
    .account-block--table.orders-table
    .responsive-table-row
    td:last-child,
  .account-template
    .account-block
    .address__form.orders-table
    .responsive-table-row
    td:last-child {
    border: none;
    text-align: center;
  }
}
.account-template
  .account-block
  .account-block--table
  .account-block--table-row,
.account-template .account-block .address__form .account-block--table-row {
  width: 100%;
  border-bottom: 1px solid var(--color-support-lighter-grey);
  display: flex;
  gap: 4px;
  padding: 0.75rem 0;
}
.account-template
  .account-block
  .account-block--table
  .account-block--table-row:last-of-type,
.account-template
  .account-block
  .address__form
  .account-block--table-row:last-of-type {
  border-bottom: none;
}
.account-template
  .account-block
  .account-block--table
  .account-block--table-row
  .label,
.account-template
  .account-block
  .address__form
  .account-block--table-row
  .label {
  color: var(--color-support-grey);
  min-width: 4.375rem;
}
.account-template .account-block .account-block--table.order-details,
.account-template .account-block .address__form.order-details {
  margin-bottom: 2.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .account-template .account-block .account-block--table.order-details,
  .account-template .account-block .address__form.order-details {
    margin-bottom: 5rem;
  }
}
.account-template
  .account-block
  .account-block--table.order-details
  .account-block--table-row
  .label,
.account-template
  .account-block
  .address__form.order-details
  .account-block--table-row
  .label {
  min-width: 8.75rem;
}
.account-template table {
  width: 100%;
  text-align: left;
  border-spacing: 0;
}
.account-template table a.table-link {
  text-decoration: none;
  font-weight: 600;
  border-bottom: 1px solid var(--color-support-black);
}
.account-template table thead th,
.account-template table tbody th {
  padding: 12px;
  vertical-align: middle;
  color: var(--color-support-grey);
  font-weight: 400;
}
.account-template table th,
.account-template table td {
  width: auto;
  border-bottom: 1px solid var(--color-support-lighter-grey);
  padding-left: 20px;
}
.account-template table th:first-child,
.account-template table td:first-child {
  padding-left: 0;
}
@media only screen and (min-width: 47.9375rem) {
  .account-template table tr:last-child td {
    border-bottom: none;
  }
}
.account-template table tbody td,
.account-template table tbody th,
.account-template table tfoot td,
.account-template table tfoot th {
  vertical-align: top;
  padding: 12px;
}
.account-wishlist-container[data-item-count="loading"] .loading-spinner {
  display: flex;
  opacity: 1;
}
.account-wishlist-container[data-item-count="loading"] .collection__wrapper {
  display: none;
}
.account-wishlist-container .wishlist__add-all {
  margin: 0 auto;
  display: block;
}
.account-wishlist-container[data-item-count="0"] .wishlist__empty-message {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.account-wishlist-container[data-item-count="0"] .collection__wrapper {
  display: none;
}
.account-wishlist-container[data-available-count="0"]
  .wishlist__add-all-container,
.account-wishlist-container[data-available-count="1"]
  .wishlist__add-all-container,
.account-wishlist-container[data-item-count="0"] .wishlist__add-all-container,
.account-wishlist-container[data-item-count="1"] .wishlist__add-all-container,
.account-wishlist-container[data-available-count="loading"]
  .wishlist__add-all-container {
  display: none;
}
.account-wishlist-container .wishlist__add-all-container {
  margin-top: 2.5rem;
}
.account-wishlist-container .wishlist__empty-message {
  display: none;
}
.account-wishlist-container .loading-spinner {
  display: none;
  align-items: center;
  justify-content: center;
  opacity: 0;
}
.account-wishlist-container .loading-spinner span {
  margin-right: 1rem;
}
.account-wishlist-container .loading-spinner svg {
  width: 2rem;
  height: auto;
  transform: rotate(0deg);
}
.account-wishlist-container .product-card__size {
  margin-top: -0.5rem;
}
.account-wishlist-container .account-wishlist__items {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem 1rem;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 47.9375rem) {
  .account-wishlist-container .account-wishlist__items {
    grid-template-columns: repeat(3, 1fr);
  }
}
.account {
  display: block;
  width: 100%;
  margin: 0 auto 6.25rem;
}
.account--narrow {
  max-width: 19.0625rem;
}
.account__header {
  text-align: center;
}
.account__header.account-main {
  text-align: left;
}
.account__header.account-main .page-header {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 47.875rem) {
  .account__header.account-main .page-header {
    padding-top: 0;
  }
  .account__header.account-main .page-header .column--shrunk {
    display: none;
  }
}
.account__header.account-main .page-header .column--shrunk {
  align-self: start;
}
.account__header.account-main .page-header .h2 {
  margin: 0 !important;
}
.page__top-nav--mobile {
  width: 100%;
  margin-bottom: 2.5rem;
}
.page__top-nav--mobile select {
  width: 100%;
  border: none;
  background-color: var(--brand-tone-light-1);
  border-radius: 0;
}
@media only screen and (min-width: 47.9375rem) {
  .account-dashboard {
    display: grid;
    grid-template-columns: 1fr 3fr;
    gap: 0 5rem;
  }
}
.account__introduction {
  margin-bottom: 2rem;
  text-align: left;
}
.account__details {
  margin-bottom: 2rem;
  text-align: center;
}
.account__order {
  margin-bottom: 2rem;
}
.account__order h4 {
  text-align: center;
}
.account__order .account__order-none {
  text-align: center;
}
.account__address {
  margin-bottom: 2rem;
  text-align: center;
}
.account__order-card {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  align-items: center;
}
.account__order-card--text div {
  margin-bottom: 2rem;
}
.account__order-card--text p {
  margin: 0;
}
.account__orders-header {
  text-align: center;
}
.account__orders-container {
  margin-bottom: 2rem;
}
.account__orders-container h2 {
  text-align: center;
}
.account__orders-container .account__orders-none {
  text-align: center;
}
.account__order-header {
  text-align: center;
}
.account__order-summary {
  text-align: center;
  margin-bottom: 4rem;
}
.account__order-summary h2,
.account__order-summary p {
  margin: 0;
}
.account__order-table {
  margin-bottom: 6.25rem;
}
.account__order-table-header {
  display: grid;
  grid-template-columns: 3fr repeat(3, 1fr);
  gap: 0.5rem;
  margin: 0 auto;
}
.account__order-table-header div {
  padding: 0.5rem 0;
  border-bottom: 1px solid var(--color-support-light-grey);
}
.account__order-table-line-items {
  list-style: none;
  padding: 2rem 0;
  margin: 0 auto;
  border-top: 1px solid var(--color-support-light-grey);
  border-bottom: 1px solid var(--color-support-light-grey);
}
@media only screen and (min-width: 47.9375rem) {
  .account__order-table-line-items {
    border-top: none;
  }
}
.account__order-table-line-items li {
  display: grid;
  grid-template-columns: 6.25rem 1fr;
  gap: 1rem;
}
@media only screen and (min-width: 47.9375rem) {
  .account__order-table-line-items li {
    grid-template-columns: 1fr 5fr;
    gap: 0.5rem;
  }
}
.account__order-table-line-items li + li {
  margin-top: 4rem;
}
@media only screen and (min-width: 47.9375rem) {
  .account__order-item-detail {
    display: grid;
    grid-template-columns: 2fr repeat(3, 1fr);
    gap: 1rem;
  }
}
.account__order-item-detail p {
  margin: 0;
}
.account__order-item-detail-meta {
  margin-bottom: 1rem;
}
@media only screen and (min-width: 47.9375rem) {
  .account__order-item-detail-meta {
    padding-left: 1rem;
  }
}
.account__order-item-description a {
  text-decoration: none;
}
.account__order-item-description--light {
  color: var(--color-support-grey);
}
@media only screen and (max-width: 47.875rem) {
  .account__order-item-cell::before {
    content: attr(data-label);
    display: inline;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .account__order-item-cell {
    text-align: right;
  }
}
.account__order-totals {
  padding: 2rem 0;
  margin: 0 auto 2rem;
}
.account__order-totals-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.5rem;
}
.account__order-footer {
  text-align: center;
}
@media only screen and (max-width: 47.875rem) {
  .account__order-footer {
    display: none;
  }
}
.errors li {
  color: var(--color-signal-error);
}
.address__container:not(:last-of-type) {
  margin-bottom: 1.5rem;
}
.address__form--fields {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1rem;
  grid-auto-flow: row;
}
.address__form--fields [data-aria-hidden="true"] {
  display: none;
}
.address__form--fields [data-line-count="1"] {
  grid-column: span 6;
}
.address__form--fields [data-line-count="2"] {
  grid-column: span 3;
}
.address__form--fields [data-line-count="3"] {
  grid-column: span 3;
}
@media only screen and (min-width: 47.9375rem) {
  .address__form--fields [data-line-count="3"] {
    grid-column: span 2;
  }
}
.main-article {
  margin-bottom: 1.5rem;
}
.blog__grid {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .blog__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (min-width: 61.875rem) {
  .blog__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.cart__table {
  margin-bottom: 4rem;
}
.cart__table-header {
  display: grid;
  grid-template-columns: 3fr repeat(3, 1fr);
  gap: 1rem;
  margin: 0 auto;
}
.cart__heading {
  padding: 0.5rem 0;
  border-bottom: 1px solid var(--color-support-light-grey);
  text-align: center;
}
.cart__table-line-items {
  list-style: none;
  padding: 2rem 0;
  margin: 0 auto;
  border-top: 1px solid var(--color-support-light-grey);
  border-bottom: 1px solid var(--color-support-light-grey);
}
@media only screen and (min-width: 47.9375rem) {
  .cart__table-line-items {
    border-top: none;
  }
}
.cart__line-item {
  display: grid;
  grid-template-columns: 6.25rem 1fr;
  gap: 1rem;
}
@media only screen and (min-width: 47.9375rem) {
  .cart__line-item {
    grid-template-columns: 1fr 5fr;
    gap: 0.5rem;
  }
}
.cart__line-item + .cart__line-item {
  margin-top: 4rem;
}
.cart__item-detail {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media only screen and (min-width: 47.9375rem) {
  .cart__item-detail {
    grid-template-columns: 2fr repeat(3, 1fr);
  }
}
.cart__item-detail p {
  margin: 0;
}
@media only screen and (max-width: 47.875rem) {
  .cart__item-detail-meta {
    grid-column: span 2;
  }
}
.cart__item-detail-description--light {
  color: var(--color-support-grey);
}
@media only screen and (max-width: 47.875rem) {
  .cart__item-cell::before {
    content: attr(data-label);
    display: inline;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .cart__item-cell {
    text-align: center;
  }
}
.cart__summary {
  padding: 2rem 0;
  margin: 0 auto 2rem;
}
@media only screen and (min-width: 47.9375rem) {
  .cart__summary {
    display: grid;
    grid-template-columns: 2fr 1fr 2fr;
    grid-template-areas: "notes space summary";
    gap: 1rem;
  }
}
.cart__notes {
  grid-area: notes;
}
.cart__summary-totals {
  grid-area: summary;
}
.cart__summary-totals p {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.5rem;
}
.cart__summary-totals .cart__footer {
  display: flex;
  justify-content: flex-end;
  text-align: right;
}
.cart__summary-totals .cart__footer input {
  margin-left: 0.25rem;
}
.main-collection {
  background: linear-gradient(
    350deg,
    rgba(247, 237, 230, 0.4) 9.18%,
    #f7ede6 90.31%
  );
}
.main-collection .main-collection--grid {
  padding: 2.5rem 0;
}
.main-collection .main-collection--grid .collection-filter__toggle {
  border-radius: 12.5rem;
  border: 1px solid var(--color-support-light-grey);
  padding: 0.25rem 0.75rem;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 160%;
  background-color: transparent;
  text-transform: uppercase;
}
@media only screen and (min-width: 47.9375rem) {
  .main-collection .main-collection--grid {
    display: grid;
    grid-template-columns: 1fr 3fr;
    padding: 5rem 0;
    gap: 0 3.4375rem;
  }
  .main-collection .main-collection--grid .collection-filter__toggle {
    display: none;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .main-collection .mobile-filters {
    display: none;
  }
}
.main-collection .mobile-filters__wrapper {
  padding: 1rem 1rem 1.5rem 1rem;
  border-bottom: 1px solid var(--color-support-black);
}
.main-collection .mobile-filters__wrapper .active-filters--wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding-bottom: 0.75rem;
}
.main-collection .mobile-filters__wrapper .active-filters--wrapper a {
  background-color: var(--color-support-black);
  color: var(--color-support-white);
  font-size: 0.875rem;
  padding: 0.5rem 0.75rem;
  border-radius: 0.5rem;
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  display: inline-flex;
}
.main-collection .mobile-filters__wrapper .active-filters--wrapper a .icon {
  width: 1.25rem;
  height: 1.25rem;
}
.main-collection .mobile-filters__wrapper .clear_all {
  display: block;
  color: var(--color-signal-error);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 140%;
  text-decoration: none;
  text-transform: uppercase;
  padding: 0.5rem 0;
}
.main-collection .listing-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 47.875rem) {
  .main-collection .listing-header {
    padding: 0 1rem;
    margin-top: 1rem;
  }
}
.main-collection .listing-header .paginate-total {
  color: var(--color-support-grey);
}
@media only screen and (max-width: 61.8125rem) {
  .grandchildren-nav--outer {
    padding-left: 1rem;
    margin-top: 2.5rem;
    overflow: hidden;
  }
}
.main-collection--listing {
  overflow: hidden;
}
.grandchildren-nav {
  display: flex;
  gap: 0 0.5rem;
}
@media only screen and (max-width: 61.8125rem) {
  .grandchildren-nav {
    padding-left: 1rem;
    margin-top: 0;
    -webkit-overflow-scrolling: touch;
    gap: 0.5rem;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
  }
  .grandchildren-nav::-webkit-scrollbar {
    display: none;
  }
}
.grandchildren-nav a {
  font-size: 1.125rem;
  text-decoration: none;
  padding: 0.5rem 0.75rem;
  line-height: 160%;
  border-radius: 0.5rem;
  border: 1px solid transparent;
  transition: border var(--transition-duration) var(--transition-timing);
  white-space: nowrap;
  margin-bottom: 2rem;
}
.grandchildren-nav a.active {
  background-color: var(--brand-tone-base);
}
@media (hover: hover) {
  .grandchildren-nav a:hover {
    border: 1px solid var(--color-support-black);
  }
}
.collection-grid {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
  margin-bottom: 2rem;
}
@supports (display: grid) {
  .collection-grid {
    display: grid;
    gap: 2.5rem 1rem;
    margin-left: 0;
    margin-right: 0;
  }
}
@media only screen and (max-width: 47.875rem) {
  .collection-grid {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.collection-grid .collection-grid__tile {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
@supports (display: grid) {
  .collection-grid .collection-grid__tile {
    width: 100% !important;
    padding: 0 !important;
  }
  @media only screen and (min-width: 47.9375rem) {
    .collection-grid .collection-grid__tile {
      padding-bottom: 1.875rem !important;
    }
  }
}
@media only screen and (max-width: 61.8125rem) {
  .collection-grid.collection-grid--default[data-layout-mobile="1"] {
    grid-template-columns: 100%;
  }
}
@media only screen and (max-width: 61.8125rem) {
  .collection-grid.collection-grid--default[data-layout-mobile="2"] {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: repeat(2, 1fr);
  }
  .collection-grid.collection-grid--default[data-layout-mobile="2"]
    .collection-grid__tile {
    width: 50%;
  }
}
@media only screen and (min-width: 61.875rem) {
  .collection-grid.collection-grid--default[data-layout-desktop="2"] {
    grid-template-columns: 1fr 1fr;
  }
  .collection-grid.collection-grid--default[data-layout-desktop="2"]
    .collection-grid__tile {
    width: 50%;
  }
}
@media only screen and (min-width: 61.875rem) {
  .collection-grid.collection-grid--default[data-layout-desktop="3"] {
    grid-template-columns: repeat(3, 1fr);
  }
  .collection-grid.collection-grid--default[data-layout-desktop="3"]
    .collection-grid__tile {
    width: 33.33%;
  }
}
@media only screen and (min-width: 61.875rem) {
  .collection-grid.collection-grid--default[data-layout-desktop="4"] {
    grid-template-columns: repeat(4, 1fr);
  }
  .collection-grid.collection-grid--default[data-layout-desktop="4"]
    .collection-grid__tile {
    width: 25%;
  }
}
@media only screen and (min-width: 61.875rem) {
  .collection-grid.collection-grid--default[data-layout-desktop="5"] {
    grid-template-columns: repeat(5, 1fr);
  }
  .collection-grid.collection-grid--default[data-layout-desktop="5"]
    .collection-grid__tile {
    width: 20%;
  }
}
@media only screen and (max-width: 61.8125rem) {
  .collection-grid.collection-grid--alt[data-layout-mobile-alt="1"] {
    grid-template-columns: 100%;
  }
}
@media only screen and (max-width: 61.8125rem) {
  .collection-grid.collection-grid--alt[data-layout-mobile-alt="2"] {
    grid-template-columns: 1fr 1fr;
  }
  .collection-grid.collection-grid--alt[data-layout-mobile-alt="2"]
    .collection-grid__tile {
    width: 50%;
  }
}
@media only screen and (min-width: 61.875rem) {
  .collection-grid.collection-grid--alt[data-layout-desktop-alt="2"] {
    grid-template-columns: 1fr 1fr;
  }
  .collection-grid.collection-grid--alt[data-layout-desktop-alt="2"]
    .collection-grid__tile {
    width: 50%;
  }
}
@media only screen and (min-width: 61.875rem) {
  .collection-grid.collection-grid--alt[data-layout-desktop-alt="3"] {
    grid-template-columns: repeat(3, 1fr);
  }
  .collection-grid.collection-grid--alt[data-layout-desktop-alt="3"]
    .collection-grid__tile {
    width: 33.33%;
  }
}
@media only screen and (min-width: 61.875rem) {
  .collection-grid.collection-grid--alt[data-layout-desktop-alt="4"] {
    grid-template-columns: repeat(4, 1fr);
  }
  .collection-grid.collection-grid--alt[data-layout-desktop-alt="4"]
    .collection-grid__tile {
    width: 25%;
  }
}
@media only screen and (min-width: 61.875rem) {
  .collection-grid.collection-grid--alt[data-layout-desktop-alt="5"] {
    grid-template-columns: repeat(5, 1fr);
  }
  .collection-grid.collection-grid--alt[data-layout-desktop-alt="5"]
    .collection-grid__tile {
    width: 20%;
  }
}
.main-collection--footer {
  margin-bottom: 0;
  text-align: center;
}
@media only screen and (max-width: 47.875rem) {
  .main-collection--footer .pagination {
    justify-content: center;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .main-collection--footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: unset;
  }
}
.main-product {
  background: linear-gradient(
    350deg,
    rgba(247, 237, 230, 0.4) 9.18%,
    #f7ede6 90.31%
  );
  padding-top: 1.5rem;
}
.main-product .accordion__trigger {
  background-color: transparent;
}
.main-product .accordion__body p,
.main-product .accordion__body span {
  color: var(--color-support-black);
}
@media only screen and (min-width: 47.9375rem) {
  .product__header {
    display: grid;
    grid-template-columns: 16.75rem 22.8125rem;
    gap: 0 90px;
    padding-bottom: 5rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .product__header {
    grid-template-columns: 32.5rem 1fr;
    gap: 0 7.5rem;
  }
}
.product__header.product__header--image-left {
  flex-direction: row;
}
.product__header.product__header--image-right {
  flex-direction: row-reverse;
}
.product__media {
  position: relative;
  width: 100%;
}
@media only screen and (max-width: 47.875rem) {
  .product__media {
    padding-left: 1rem;
  }
}
.product__media-responsive {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 66.67%;
}
.product__media-responsive model-viewer,
.product__media-responsive iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.product__media-responsive .model-viewer__button {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  z-index: 2;
}
.product__media-responsive .model-viewer__button[data-shopify-xr-hidden] {
  display: none;
}
.product-vendor {
  color: var(--color-support-grey);
  display: block;
  padding-bottom: 0.5rem;
}
.product__title {
  margin: 0;
}
.product__title.no-excerpt {
  padding-bottom: 1.5rem;
}
@media only screen and (max-width: 47.875rem) {
  .product__title {
    font-size: 1.5rem;
  }
}
.product__form .jdgm-widget.jdgm-widget {
  padding: 0 0 2.5rem;
}
.product__form .jdgm-widget.jdgm-widget .jdgm-prev-badge__text {
  border-bottom: 1px solid var(--color-support-black);
  margin-left: 1rem;
}
.product__form-wrap {
  padding: 1.5rem;
  border: 1px solid var(--color-support-grey);
  border-radius: 1rem;
}
@media only screen and (min-width: 61.875rem) {
  .product__form-wrap {
    padding: 2.5rem;
  }
}
.product__form-wrap select,
.product__form-wrap input.product-form-field {
  background-color: var(--color-support-white);
}
.product__form-wrap.wrap-sm .product__price-container {
  margin-top: 1.5rem;
}
.product__details {
  width: 100%;
  padding: 1.5rem 1rem;
}
@media only screen and (min-width: 47.9375rem) {
  .product__details {
    padding: 0;
    padding-top: 0;
  }
}
.product__details .btn-container .btn--secondary {
  margin-top: 1rem;
}
.product__details .product__excerpt {
  padding: 1.5rem 0;
}
@media only screen and (max-width: 47.875rem) {
  .product__details .product__excerpt {
    font-size: 1rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .product__details .form__group {
    display: grid;
    gap: 0 1.5rem;
    grid-template-columns: 3fr 1fr;
  }
}
@media only screen and (min-width: 61.875rem) {
  .product__details .form__group {
    grid-template-columns: 2fr 1fr;
  }
}
.product__details .stock-counter {
  align-self: flex-end;
}
@media only screen and (max-width: 61.8125rem) {
  .product__details .stock-counter {
    padding-top: 0.9375rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .product__details .stock-counter {
    padding-bottom: 0.9375rem;
  }
}
.product__details--inner {
  width: 100%;
  display: block;
  margin: 0 auto;
}
#MediaZoom {
  position: absolute;
  bottom: 0;
  right: 0;
}
.product-media-modal {
  background-color: var(--color-support-white);
  position: fixed;
  z-index: 9999;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  transition: 0.3s opacity var(--transition-timing-flick);
}
.product-media-modal .product-media-modal__close {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
}
.product-media-modal.modal--visible {
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  visibility: visible;
  opacity: 1;
  transition: 0.3s opacity var(--transition-timing-flick);
}
.product-media-modal__wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.product-media-modal__wrapper img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.product-media-modal__wrapper .product__media-responsive {
  width: 100%;
  height: 100%;
  padding-top: 0 !important;
}
.product__price-container {
  margin: 2.5rem 0;
}
.product__compare-at-price {
  text-decoration: line-through;
  font-size: 1.125rem;
}
.product__price {
  margin: 0;
  line-height: 1;
}
.product__price--on-sale {
  display: flex;
}
.product__price--on-sale .product__price-salebox {
  display: flex;
  flex-direction: column;
  margin-left: 2.5rem;
}
.product__price--on-sale .product__price-salebox .h4,
.product__price--on-sale
  .product__price-salebox
  .gift-balance-checker
  .balance-checker-wrapper
  h3,
.gift-balance-checker
  .balance-checker-wrapper
  .product__price--on-sale
  .product__price-salebox
  h3 {
  margin-bottom: 0;
}
.product__price--on-sale .product__price-salebox .sale-percentage {
  color: var(--color-signal-error);
  text-transform: uppercase;
}
.product__price--on-sale .product__compare-at-price {
  font-size: 1.125rem;
}
.product__description {
  margin-bottom: 1.5rem;
}
.product-highlights {
  padding: 2.5rem 0;
}
.product-highlights ul {
  list-style: none;
  padding-left: 0;
}
.product-highlights ul li {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}
.product-highlights ul li .icon {
  margin-right: 0.75rem;
}
.product__slideshow {
  max-height: 33.125rem;
}
.product__slideshow::after {
  content: "flickity";
  display: none;
}
@media only screen and (min-width: 47.9375rem) {
  .product__slideshow::after {
    content: unset;
  }
}
.product__slideshow.is-fullscreen .product__media-item {
  width: 80%;
  margin: 0 0.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .product__slideshow {
    background-color: var(--color-support-white);
    border-radius: 1.5rem;
  }
}
.product__singular {
  max-height: 33.125rem;
  background-color: var(--color-support-white);
  border-radius: 1.5rem;
  overflow: hidden;
}
@media only screen and (min-width: 47.9375rem) {
  .product__singular {
    width: 100%;
    padding-top: 100%;
  }
  .product__singular .product__media-item {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
}
@media only screen and (max-width: 47.875rem) {
  .product__singular {
    max-width: 96%;
    display: flex;
    justify-content: center;
  }
}
.product__singular img {
  object-fit: contain;
}
.controls-container--main .btn--control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
}
.controls-container--main .btn--control-prev {
  left: 0.625rem;
}
.controls-container--main .btn--control-next {
  right: 0.625rem;
}
.is-flickity-fullscreen .controls-container--main .btn--control {
  position: fixed;
}
.product__thumbnails-container {
  position: relative;
  display: block;
  margin-top: 1.5rem;
  display: none;
}
@media only screen and (min-width: 47.9375rem) {
  .product__thumbnails-container {
    display: block;
  }
}
.product__thumbnails {
  display: none;
}
@media only screen and (min-width: 47.9375rem) {
  .product__thumbnails {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
  }
}
.product__thumbnails::after {
  content: "flickity";
  display: none;
}
.product__thumbnails .product__media-thumbnail {
  display: block;
  width: 7.375rem;
  height: 7.375rem;
  min-height: 7.375rem;
  overflow: hidden;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  border: none;
  border-radius: 0.5rem;
  padding: 0;
  scroll-snap-align: start;
  scroll-snap-stop: normal;
}
.product__thumbnails .product__media-thumbnail.active {
  border: 1px solid var(--color-support-black);
}
.product__thumbnails .product__media-thumbnail img {
  display: block;
  height: 100%;
}
.product__thumbnails .product__media-thumbnail.product__media-thumbnail--video {
  position: relative;
}
.product__thumbnails
  .product__media-thumbnail.product__media-thumbnail--video
  svg {
  position: absolute;
  z-index: 1;
  width: 2.5rem;
  height: 2.5rem;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}
.controls-container--thumbs .btn--control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
}
.controls-container--thumbs .btn--control-prev {
  left: 0.625rem;
}
.controls-container--thumbs .btn--control-next {
  right: 0.625rem;
}
.product__slideshow-wrapper {
  position: relative;
  width: 100%;
  border-radius: 1.5rem;
}
.product__slideshow-wrapper.singular-wrapper {
  overflow: hidden;
}
@media only screen and (min-width: 47.9375rem) {
  .product-modal .product__slideshow-wrapper {
    grid-column: 1;
  }
}
.product__slideshow {
  display: flex;
  -webkit-overflow-scrolling: touch;
  overflow-x: scroll;
  flex: none;
  scrollbar-width: none;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
}
@media only screen and (min-width: 87.5rem) {
  .product__slideshow {
    margin-left: -0.125rem;
    margin-right: -0.125rem;
  }
}
@media only screen and (min-width: 87.5rem) {
  .product-modal .product__slideshow {
    margin-left: 0;
    margin-right: 0;
  }
}
.product__slideshow::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
.product__slideshow .product__media-item {
  margin: 0;
  flex-shrink: 0;
  scroll-snap-align: start;
  scroll-snap-stop: always;
  display: flex;
  aspect-ratio: 1/1;
}
.product__slideshow .product__media-item img {
  object-fit: contain;
}
.product__slideshow .product__media-item .component-image__wrapper {
  overflow: hidden;
}
@media only screen and (min-width: 61.875rem) {
  .product__slideshow .product__media-item {
    cursor: zoom-in;
  }
}
@media only screen and (min-width: 87.5rem) {
  .product__slideshow .product__media-item {
    width: 100%;
    padding: 0;
  }
}
@media only screen and (min-width: 87.5rem) {
  .product-modal .product__slideshow .product__media-item {
    width: 100%;
    padding: 0;
    cursor: unset;
  }
}
.product__slideshow .product__media-item video {
  width: 100%;
  display: block;
}
.product__slideshow .product__media-item {
  width: 85%;
  margin: 0 0.5rem;
}
@media only screen and (max-width: 47.875rem) {
  .product__slideshow .product__media-item {
    background-color: var(--color-support-white);
    border-radius: 24px;
    overflow: hidden;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .product__slideshow .product__media-item {
    width: 100%;
    margin: 0;
  }
}
.product__singular .product__media-item {
  margin: 0;
  flex-shrink: 0;
  scroll-snap-align: start;
  scroll-snap-stop: always;
  display: flex;
  overflow: hidden;
}
.product__singular .product__media-item img {
  object-fit: contain;
  display: block;
  margin: auto;
  aspect-ratio: 1/1;
}
.product__singular .product__media-item .component-image__wrapper {
  overflow: hidden;
}
@media only screen and (min-width: 61.875rem) {
  .product__singular .product__media-item {
    cursor: zoom-in;
  }
}
@media only screen and (min-width: 87.5rem) {
  .product__singular .product__media-item {
    width: 100%;
    padding: 0;
  }
}
@media only screen and (min-width: 87.5rem) {
  .product-modal .product__singular .product__media-item {
    width: 100%;
    padding: 0;
    cursor: unset;
  }
}
.product__singular .product__media-item video {
  width: 100%;
  display: block;
}
.product__singular .product__media-item {
  width: 90%;
  margin: 0 0.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .product__singular .product__media-item {
    width: 100%;
    margin: 0;
  }
}
.product__singular .product__media-item {
  cursor: auto;
}
.product__media-pager-dots {
  position: absolute;
  left: 1rem;
  bottom: 1rem;
  z-index: 1;
  display: none;
}
.product__media-pager-dots .product__media-pager-dot {
  width: 0.5rem;
  height: 0.5rem;
  border: none;
  border-radius: 50%;
  padding: 0 !important;
}
.product-thumbs__arrows {
  position: absolute;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  pointer-events: none;
}
.slider-navigation {
  display: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media only screen and (min-width: 61.875rem) {
  .slider-navigation {
    display: flex;
    justify-content: space-between;
  }
}
.slider-navigation .icon {
  width: 1.625rem;
  height: 1.25rem;
  cursor: pointer;
}
.slider-navigation .slider-navigation--prev,
.slider-navigation .slider-navigation--next {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: var(--brand-tone-base);
  justify-content: center;
  align-items: center;
  border: none;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media only screen and (min-width: 47.9375rem) {
  .slider-navigation .slider-navigation--prev,
  .slider-navigation .slider-navigation--next {
    width: 3.5rem;
    height: 3.5rem;
    position: absolute;
  }
}
@media (hover: hover) {
  .slider-navigation .slider-navigation--prev:hover,
  .slider-navigation .slider-navigation--next:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
}
.slider-navigation .slider-navigation--prev {
  left: -1.875rem;
}
.slider-navigation .slider-navigation--next {
  right: -1.875rem;
}
.product-meta-grid--inner {
  min-height: unset;
}
.jdgm-widget.jdgm-widget {
  padding: 0 0 6.25rem 0;
  max-width: 52.8125rem;
  margin: auto;
  padding-left: 1rem;
  padding-right: 1rem;
}
.jdgm-widget.jdgm-widget .jdgm-rev-widg__header {
  text-align: left;
}
.jdgm-widget.jdgm-widget .jdgm-rev-widg__header h2 {
  font-size: 1.75rem;
}
.jdgm-widget.jdgm-widget .jdgm-widget-actions-wrapper {
  border: none;
}
@media only screen and (min-width: 47.9375rem) {
  .jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
    .jdgm-row-stars {
    display: flex !important;
    align-items: stretch !important;
  }
}
.jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
  .jdgm-row-stars {
  justify-content: space-between !important;
}
.jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
  .jdgm-row-stars
  > div {
  align-items: unset !important;
}
.jdgm-rev-widg__summary-text,
.jdgm-histogram {
  display: none !important;
}
.jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
  .jdgm-rev-widg[data-number-of-reviews="0"]
  .jdgm-widget-actions-wrapper {
  border: none !important;
}
.jdgm-rev-widg__summary .jdgm-star {
  font-size: 1.25rem !important;
}
.jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
  .jdgm-write-rev-link,
.jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
  .jdgm-ask-question-btn,
.jdgm-write-rev-link.jdgm-write-rev-link {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.25rem;
  text-decoration: none;
  padding: 1rem 1.5rem;
  border-radius: 12.5rem;
  border: 1px solid var(--color-support-black);
  background-color: var(--color-support-black);
  color: var(--color-support-white);
  transition: background-color var(--transition-duration)
    var(--transition-timing);
  font-family: "Public Sans", sans-serif;
  font-size: 20px;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 140%;
  text-transform: uppercase;
  width: 100%;
}
@media only screen and (min-width: 30rem) {
  .jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
    .jdgm-write-rev-link,
  .jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
    .jdgm-ask-question-btn,
  .jdgm-write-rev-link.jdgm-write-rev-link {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media (hover: hover) {
  .jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
    .jdgm-write-rev-link:hover,
  .jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
    .jdgm-ask-question-btn:hover,
  .jdgm-write-rev-link.jdgm-write-rev-link:hover {
    background-color: var(--color-support-black-hover);
    color: var(--color-support-white);
  }
}
.jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
  .jdgm-rev-widg__summary
  + .jdgm-histogram,
.jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
  .jdgm-rev-widg__summary
  + .jdgm-widget-actions-wrapper,
.jdgm-widget:not(.jdgm-review-widget--small, .jdgm-review-widget--medium)
  .jdgm-histogram
  + .jdgm-widget-actions-wrapper {
  border: none !important;
}
.jdgm-btn {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 0.25rem !important;
  text-decoration: none !important;
  padding: 0.375rem 0.75rem !important;
  border-radius: 12.5rem !important;
  border: 1px solid var(--color-support-black) !important;
  background-color: var(--color-support-black) !important;
  color: var(--color-support-white) !important;
  transition: background-color var(--transition-duration)
    var(--transition-timing) !important;
  font-family: "Public Sans", sans-serif !important;
  font-size: 16px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 140% !important;
  text-transform: uppercase !important;
  width: 100%;
}
@media only screen and (min-width: 30rem) {
  .jdgm-btn {
    width: -webkit-fit-content !important;
    width: -moz-fit-content !important;
    width: fit-content !important;
  }
}
@media (hover: hover) {
  .jdgm-btn:hover {
    background-color: var(--color-support-black-hover);
    color: var(--color-support-white);
  }
}
.jdgm-btn.jdgm-cancel-rev {
  background-color: var(--color-support-white) !important;
  color: var(--color-support-black) !important;
}
.jdgm-form__title,
.jdgm-notification__title {
  font-weight: normal !important;
}
.jdgm-form {
  max-width: unset !important;
  padding: 0 !important;
}
.jdgm-form__fieldset-actions {
  display: flex !important;
}
.jdgm-notification__title:before {
  display: none !important;
}
.jdgm-paginate {
  border: none !important;
}
.jdgm-rev-widg__reviews .jdgm-rev {
  border: 1px solid var(--color-support-lighter-grey);
  border-radius: 1rem;
  padding: 1rem;
  margin-bottom: 1rem;
}
.jdgm-rev-widg__reviews .jdgm-rev .jdgm-rev__title {
  font-family: "Public Sans", sans-serif !important;
  font-size: 20px !important;
  font-style: normal;
  font-weight: 400 !important;
  line-height: 140%;
}
.jdgm-rev-widg__reviews .jdgm-rev .jdgm-rev__icon {
  display: none !important;
}
.jdgm-rev-widg {
  padding: 24px 16px 0 16px !important;
}
.jdgm-rev-widg__reviews .jdgm-rev {
  margin-bottom: 0 !important;
  margin-top: 1rem !important;
}
.jdgm-paginate {
  padding-top: 0 !important;
}
.gift-card-form {
  padding: 0 0 1.5rem 0;
}
.gift-card-form .product-form-field {
  display: block;
  margin-bottom: 1rem;
}
.gift-card-form label.product-form-label {
  display: block;
  line-height: 160%;
  padding-bottom: 0.25rem;
}
.gift-card-form input.product-form-field {
  background-color: var(--color-support-white);
  border: none;
  width: 100%;
}
.prod-description-body {
  overflow: hidden;
  max-height: 6.25rem;
  transition: max-height 0.2s var(--transition-timing-flick),
    height 0.2s var(--transition-timing-flick);
}
.prod-description-body [data-toggle-desc] {
  display: none;
}
.prod-description-body.truncate [data-toggle-desc] {
  display: block;
  margin-top: 0.9375rem;
  font-size: 0.625rem;
}
#sort-by {
  border-radius: 0;
  border: none;
  padding-left: 0;
  padding-top: 5px;
  text-align: right;
  padding-right: 20px;
  padding-bottom: 2px;
  background-position: center right 0;
  font-size: 1rem;
}
.page-banner {
  padding: 1.5rem 0 2.5rem 0;
  background-color: var(--color-support-white);
}
.page-banner .breadcrumbs {
  margin-bottom: 0;
}
.page-banner .page-header {
  padding-top: 2.5rem;
  padding-bottom: 0;
}
.page-banner .page-header h1 {
  margin: 0;
}
@media only screen and (min-width: 47.9375rem) {
  .tertiary-page .page-header h1 {
    text-align: center;
  }
}
.tertiary-page .tertiary-strip {
  background-color: var(--brand-tone-light-1);
  padding: 2.5rem 0;
  width: 100%;
}
.tertiary-page .tertiary-strip .hero-grid--right-list {
  display: grid;
  list-style: none;
  padding: 0;
  margin: 0;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media only screen and (min-width: 47.9375rem) {
  .tertiary-page .tertiary-strip .hero-grid--right-list {
    gap: 0 2.5rem;
    grid-template-columns: repeat(4, 1fr);
  }
}
.tertiary-page .tertiary-strip .hero-grid--right-list li {
  text-align: center;
}
.tertiary-page .tertiary-strip .hero-grid--right-list li .list-icon {
  height: 1.5rem;
  margin-bottom: 0.5rem;
}
@media only screen and (min-width: 61.875rem) {
  .tertiary-page .tertiary-strip .hero-grid--right-list li .list-icon {
    height: 2.5rem;
  }
}
.tertiary-page .tertiary-strip .hero-grid--right-list li .icon {
  width: 1.5rem;
  height: 1.5rem;
}
@media only screen and (min-width: 61.875rem) {
  .tertiary-page .tertiary-strip .hero-grid--right-list li .icon {
    width: 2.5rem;
    height: 2.5rem;
  }
}
.tertiary-page .tertiary-strip .hero-grid--right-list li span span {
  display: block;
  font-weight: 400;
  padding-top: 0.5rem;
  font-size: 0.75rem;
}
.tertiary-page .rte {
  padding: 2.5rem 0;
}
@media only screen and (min-width: 47.9375rem) {
  .tertiary-page .rte {
    padding: 5rem 0;
  }
}
.tertiary-page .rte ul,
.tertiary-page .rte ol {
  color: var(--color-support-grey);
  margin-left: 0;
  margin-top: 1.875rem;
  margin-bottom: 1.875rem;
}
.tertiary-page .rte ul li,
.tertiary-page .rte ol li {
  line-height: 160%;
}
.gift-balance-checker {
  display: grid;
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 47.9375rem) {
  .gift-balance-checker {
    grid-template-columns: 2fr 1fr;
  }
}
@media only screen and (min-width: 61.875rem) {
  .gift-balance-checker {
    grid-template-columns: repeat(2, 1fr);
  }
}
.gift-balance-checker .gift-balance--image {
  display: none;
}
@media only screen and (min-width: 47.9375rem) {
  .gift-balance-checker .gift-balance--image {
    display: flex;
  }
}
.gift-balance-checker .gift-balance--image img {
  vertical-align: bottom;
  height: 100%;
}
.gift-balance-checker .balance-checker-wrapper {
  max-width: 32.5rem;
}
.gift-balance-checker .gift-balance--form-inner {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.gift-balance-checker .gift-balance--form-inner .form__group > div {
  display: flex;
  flex-direction: column;
  margin-bottom: 2.5rem;
}
.gift-balance-checker .gift-balance--form-inner .form__group > div label {
  order: 1;
  line-height: 160%;
  margin-bottom: 0.5rem;
}
.gift-balance-checker
  .gift-balance--form-inner
  .form__group
  > div
  input[type="tel"] {
  order: 2;
}
.announcement-section {
  position: relative;
}
.announcement-slider {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.announcement-slider:not(.single-slide)::after {
  content: "flickity";
  display: none;
}
.announcement-slider:not(.flickity-enabled)
  .announcement-slide:not(:first-of-type) {
  display: none;
}
.announcement-slide {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.5rem 1rem;
}
@media only screen and (min-width: 47.9375rem) {
  .announcement-slide {
    padding: 0.5rem 7.5rem;
  }
}
.announcement-slide p,
.announcement-slide a {
  margin: 0;
}
.controls-container--announcement .btn--control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  background-color: transparent;
  border: 1px solid transparent;
}
.controls-container--announcement .btn--control-prev {
  left: 0.625rem;
}
.controls-container--announcement .btn--control-next {
  right: 0.625rem;
}
.featured-blog,
.featured-articles {
  padding: 2.5rem 0;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-blog,
  .featured-articles {
    padding: 3.5rem 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .featured-blog,
  .featured-articles {
    padding: 5rem 0;
  }
}
.featured-blog .section__title,
.featured-articles .section__title {
  padding-bottom: 1.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-blog .section__title,
  .featured-articles .section__title {
    padding-bottom: 2.5rem;
  }
}
@media only screen and (max-width: 29.9375rem) {
  .featured-blog .section__title,
  .featured-articles .section__title {
    max-width: 58%;
  }
}
.featured-blog .section__title h2,
.featured-articles .section__title h2 {
  margin: 0;
}
.featured-blog__grid {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media only screen and (min-width: 61.875rem) {
  .featured-blog__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.collection-banner {
  padding: 1.5rem 0 2.5rem 0;
}
.collection-banner .breadcrumbs {
  margin-bottom: 0;
}
.collection-banner .page-header {
  padding-top: 2.5rem;
  padding-bottom: 0;
}
.collection-banner .page-header h1 {
  margin: 0;
}
.collection-banner.brands-banner {
  padding: 0;
  position: relative;
}
.collection-banner.brands-banner .brands-banner--inner {
  display: grid;
}
@media only screen and (min-width: 47.9375rem) {
  .collection-banner.brands-banner .brands-banner--inner {
    grid-template-columns: 1fr 1fr;
  }
}
.collection-banner.brands-banner .brands-banner--inner .banner-left {
  padding: 1.5rem 0 0 0;
}
@media only screen and (min-width: 47.9375rem) {
  .collection-banner.brands-banner .brands-banner--inner .banner-left {
    padding: 1.5rem 0 2.5rem 0;
  }
}
.collection-banner.brands-banner .brands-banner--inner .banner-right {
  padding-bottom: 2.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .collection-banner.brands-banner .brands-banner--inner .banner-right {
    position: absolute;
    right: 0;
    top: 0;
    background-color: var(--brand-tone-base);
    height: 100%;
    width: 20.625rem;
    padding-bottom: 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .collection-banner.brands-banner .brands-banner--inner .banner-right {
    width: 27.5rem;
  }
}
@media only screen and (min-width: 68.75rem) {
  .collection-banner.brands-banner .brands-banner--inner .banner-right {
    width: 40rem;
  }
}
.collection-banner.brands-banner .brands-banner--inner .banner-right img {
  max-width: 23.4375rem;
  max-height: 11.4375rem;
  border-radius: 1000px 1000px 0px 0px;
  position: absolute;
  right: 1rem;
  bottom: 0;
  display: none;
}
@media only screen and (min-width: 61.875rem) {
  .collection-banner.brands-banner .brands-banner--inner .banner-right img {
    display: block;
  }
}
.collection-banner.brands-banner
  .brands-banner--inner
  .banner-right
  .link--arrow {
  margin-top: 1rem;
}
@media only screen and (min-width: 47.9375rem) {
  .collection-banner.brands-banner .brands-banner--inner .banner-right .btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 1;
    font-size: 1rem;
    left: 50%;
    white-space: nowrap;
  }
}
@media only screen and (min-width: 61.875rem) {
  .collection-banner.brands-banner .brands-banner--inner .banner-right .btn {
    left: 2.5rem;
    transform: translateY(-50%);
  }
}
.collection-list__grid {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .collection-list__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (min-width: 61.875rem) {
  .collection-list__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.collection-navbar__sort {
  position: relative;
}
.collection-navbar__sort .collection__sort-toggle {
  background: none;
  border: none;
  padding: none;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%;
}
.collection-navbar__sort .collection__sort-toggle span {
  border-bottom: 1px solid var(--color-support-black);
}
.collection-navbar__sort .collection__sort-toggle .icon {
  width: 0.75rem;
  height: 0.75rem;
}
.collection-navbar__sort .sort-menu--popup {
  display: none;
}
.collection-navbar__sort .sort-menu--popup {
  position: absolute;
  top: 1.875rem;
  right: 0;
  background-color: var(--color-support-white);
  width: 12.5rem;
  padding: 1.5rem;
  border-radius: 1rem;
  z-index: 2;
}
.collection-navbar__sort .sort-menu--popup ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.collection-navbar__sort .sort-menu--popup ul li {
  display: block;
}
.collection-navbar__sort .sort-menu--popup ul li a {
  display: block;
  text-decoration: none;
  line-height: 140%;
  padding: 0.5rem 0;
}
.dropdownList {
  display: none;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-in-out;
}
.featured-collection {
  padding: 2.5rem 0;
  background: linear-gradient(
    1deg,
    #f7ede6 0.21%,
    rgba(248, 238, 232, 0.1) 53.63%,
    #f7ede6 92.48%
  );
}
.featured-collection .featured-collection__wrapper {
  position: relative;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-collection {
    padding: 3.5rem 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .featured-collection {
    padding: 5rem 0;
  }
}
.featured-collection .js-tablist {
  display: flex;
  margin-bottom: 2.5rem;
  gap: 0 0.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-collection .js-tablist {
    justify-content: center;
  }
}
@media only screen and (max-width: 47.875rem) {
  .featured-collection .js-tablist {
    padding-left: 1rem;
    -webkit-overflow-scrolling: touch;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
  }
  .featured-collection .js-tablist::-webkit-scrollbar {
    display: none;
  }
  .featured-collection .js-tablist.list-inline li {
    display: inline-flex;
  }
}
.featured-collection .js-tablist .js-tablist__link {
  padding: 0.5rem 0.75rem;
  border-radius: 0.5rem;
  cursor: pointer;
  border: 1px solid transparent;
  white-space: nowrap;
}
@media (hover: hover) {
  .featured-collection .js-tablist .js-tablist__link:hover {
    border: 1px solid var(--color-support-black);
  }
}
.featured-collection .js-tablist .js-tablist__link[aria-selected="true"] {
  background-color: var(--brand-tone-base);
  border: 1px solid var(--brand-tone-base);
}
@media (hover: hover) {
  .featured-collection
    .js-tablist
    .js-tablist__link[aria-selected="true"]:hover {
    border: 1px solid var(--brand-tone-base);
  }
}
.featured-collection .featured-collection__slider.carousel {
  margin-left: -0.625rem;
  margin-right: -0.625rem;
  height: 460px;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-collection .featured-collection__slider.carousel {
    height: 610px;
    padding-bottom: 4.375rem;
  }
}
.featured-collection .featured-collection__slider.carousel .slide {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  height: 100%;
}
@media only screen and (max-width: 47.875rem) {
  .featured-collection .featured-collection__slider.carousel .slide {
    width: 68%;
  }
}
.featured-collection .featured-collection__cta {
  display: flex;
  justify-content: center;
  margin-top: 2.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-collection .featured-collection__cta {
    margin-top: 0;
  }
}
.featured-collection .featured-collection__cta .btn {
  transition: box-shadow var(--transition-duration) var(--transition-timing);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (hover: hover) {
  .featured-collection .featured-collection__cta .btn:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
}
.featured-collection .btn--control-prev {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-left: -1.25rem;
  height: 3.5rem;
  display: none;
  z-index: 1;
}
@media only screen and (min-width: 61.875rem) {
  .featured-collection .btn--control-prev {
    display: flex;
    margin-left: -1.75rem;
  }
}
.featured-collection .btn--control-next {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-right: -1.25rem;
  height: 3.5rem;
  display: none;
  z-index: 1;
}
@media only screen and (min-width: 61.875rem) {
  .featured-collection .btn--control-next {
    display: flex;
    margin-right: -1.75rem;
  }
}
.featured-collection .btn--control {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: var(--brand-tone-base);
  justify-content: center;
  align-items: center;
  border: none;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media only screen and (min-width: 47.9375rem) {
  .featured-collection .btn--control {
    width: 3.5rem;
    height: 3.5rem;
  }
}
.featured-collection .btn--control.disabled {
  opacity: 0.4;
}
@media (hover: hover) {
  .featured-collection .btn--control:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
}
.featured-collections {
  padding: 2.5rem 0;
  background-color: var(--brand-tone-light-1);
}
@media only screen and (min-width: 47.9375rem) {
  .featured-collections {
    padding: 3.5rem 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .featured-collections {
    padding: 7.5rem 0;
  }
}
.featured-collections .featured-collections--grid {
  display: grid;
}
@media only screen and (min-width: 61.875rem) {
  .featured-collections .featured-collections--grid {
    grid-template-columns: 1fr 2fr;
    gap: 0 1.25rem;
  }
}
.featured-collections .featured-collections--grid .section__title h2 {
  margin-top: 0;
}
@media only screen and (max-width: 47.875rem) {
  .featured-collections .featured-collections--grid .section__title h2 {
    font-size: 3rem;
  }
}
.featured-collections .featured-collections--grid .section__categories {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem 1rem;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-collections .featured-collections--grid .section__categories {
    gap: 1.5rem 1rem;
  }
}
.featured-collections
  .featured-collections--grid
  .section__categories
  .collection-card
  a {
  width: 100%;
  height: 100%;
  text-decoration: none;
  background-color: var(--color-support-white);
  display: block;
  border-radius: 16px;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media (hover: hover) {
  .featured-collections
    .featured-collections--grid
    .section__categories
    .collection-card
    a:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
  .featured-collections
    .featured-collections--grid
    .section__categories
    .collection-card
    a:hover
    img {
    transform: scale(1.1);
  }
}
@media only screen and (min-width: 47.9375rem) {
  .featured-collections
    .featured-collections--grid
    .section__categories
    .collection-card
    a {
    display: grid;
    grid-template-columns: 8.75rem 2fr;
  }
}
.featured-collections
  .featured-collections--grid
  .section__categories
  .collection-card
  .collection-card__image {
  display: block;
  width: 100%;
  overflow: hidden;
  border-radius: 1rem;
  overflow: hidden;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-collections
    .featured-collections--grid
    .section__categories
    .collection-card
    .collection-card__image {
    width: 8.75rem;
    max-height: 110px;
  }
}
.featured-collections
  .featured-collections--grid
  .section__categories
  .collection-card
  .collection-card__image
  a {
  display: block;
}
.featured-collections
  .featured-collections--grid
  .section__categories
  .collection-card
  .collection-card__image
  img {
  transition: transform var(--transition-duration) var(--transition-timing);
  height: 100%;
  object-fit: cover;
  vertical-align: bottom;
}
@media only screen and (max-width: 47.875rem) {
  .featured-collections
    .featured-collections--grid
    .section__categories
    .collection-card
    .collection-card__image
    img {
    height: 129px;
  }
}
.featured-collections
  .featured-collections--grid
  .section__categories
  .collection-card
  .collection-card__title {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 1rem;
  justify-content: space-between;
  display: flex;
  width: 100%;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-collections
    .featured-collections--grid
    .section__categories
    .collection-card
    .collection-card__title {
    padding: 1rem 1.5rem;
  }
}
.featured-media .featured-media__slide {
  display: flex;
  justify-content: flex-start;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-media .featured-media__slide {
    justify-content: center;
  }
}
.featured-media .featured-media__wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.featured-products {
  background-color: var(--brand-tone-light-1);
  padding: 2.5rem 0;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-products {
    padding: 3.5rem 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .featured-products {
    padding: 5rem 0;
  }
}
.featured-products .section__title {
  padding-bottom: 2.5rem;
}
.featured-products .section__title h2 {
  margin: 0;
}
footer {
  background: var(--color-support-black);
  color: var(--color-support-white);
  padding-top: 2.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  footer {
    padding-top: 3.4375rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  footer {
    padding-top: 5rem;
  }
}
footer a,
footer .btn--text {
  color: var(--color-support-white);
}
footer .footer_grid {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 2.5rem;
}
@media only screen and (min-width: 61.875rem) {
  footer .footer_grid {
    grid-template-columns: repeat(12, 1fr);
    row-gap: 3.5rem;
  }
}
footer .footer_grid .footer_grid-menus {
  order: 2;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 2.5rem;
  column-gap: 1rem;
}
@media only screen and (min-width: 61.875rem) {
  footer .footer_grid .footer_grid-menus {
    grid-column: 1/9;
    column-gap: 1.25rem;
    order: 1;
    grid-template-columns: repeat(4, 1fr);
  }
}
footer .footer_grid .footer_grid-menus .footer-menu--title {
  padding-bottom: 1.5rem;
}
footer .footer_grid .footer_grid-menus > div:last-of-type {
  margin-right: 0;
}
footer .footer_grid .footer_grid-menus > div ul {
  border-left: 0.5px solid var(--color-support-white);
  padding-left: 1rem;
}
footer .footer_grid .footer_grid-menus > div li {
  padding-bottom: 0.75rem;
}
footer .footer_grid .footer_grid-menus > div li:last-child {
  padding-bottom: 0;
}
footer .footer_grid .footer_grid-menus > div li a {
  color: var(--color-support-white);
  text-decoration: none;
}
footer .footer_grid .footer_grid-social {
  order: 1;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  justify-content: space-between;
  width: 15.625rem;
}
@media only screen and (min-width: 47.9375rem) {
  footer .footer_grid .footer_grid-social {
    width: unset;
    align-items: center;
    flex-direction: row;
  }
}
@media only screen and (min-width: 61.875rem) {
  footer .footer_grid .footer_grid-social {
    flex-direction: column;
    justify-content: flex-start;
    width: 15.625rem;
    grid-column: 9/13;
    place-self: start end;
    padding-bottom: 3.125rem;
  }
}
footer .footer_grid .footer_grid-social a.btn {
  max-width: 15.625rem;
  border-color: var(--color-support-white);
}
@media (hover: hover) {
  footer .footer_grid .footer_grid-social a.btn:hover {
    background: var(--color-support-black-hover);
    color: var(--color-support-white);
    border-color: var(--color-support-white);
  }
}
@media only screen and (min-width: 61.875rem) {
  footer .footer_grid .footer_grid-social {
    order: 2;
    display: block;
    padding-bottom: 0;
  }
}
footer .footer_grid .footer_grid-social .footer_grid-social-inner {
  display: block;
}
.footer-newsletter {
  margin-bottom: 1.5rem;
}
.footer-menu__list {
  list-style: none;
  margin: 0 0 1.5rem;
  padding: 0;
}
.footer-menu__list-item {
  display: block;
}
.footer-menu__list-item a {
  border-bottom: 1px solid var(--color-support-black);
  line-height: 160%;
  transition: border-bottom var(--transition-duration) var(--transition-timing);
}
@media (hover: hover) {
  .footer-menu__list-item a:hover {
    border-bottom: 1px solid var(--color-support-white);
  }
}
@media only screen and (min-width: 61.875rem) {
  .footer-social {
    margin-top: 1.5rem;
  }
}
.footer-social ul {
  display: flex;
  margin: 0;
  justify-content: space-between;
  gap: 0.5rem;
}
.footer-social ul li {
  padding: 0.5rem;
}
@media (hover: hover) {
  .footer-social ul li a:hover {
    color: var(--color-support-white);
  }
}
.footer-base {
  color: var(--color-support-black);
  padding: 2.5rem 0;
}
.footer-base svg {
  height: 0.875rem;
}
@media only screen and (min-width: 47.9375rem) {
  .footer-base .footer-base--inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
.footer-base .footer-base--inner .footer-base--logos {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 47.875rem) {
  .footer-base .footer-base--inner .footer-base--logos {
    padding-bottom: 1.5rem;
  }
}
.footer-base .footer-base--inner .footer-base--logos img {
  margin-right: 2.5rem;
}
.footer-base .footer-base--inner .footer-base--logos .footer-logo {
  max-width: 12.5rem;
  max-height: 2.8125rem;
}
@media only screen and (min-width: 61.875rem) {
  .footer-base .footer-base--inner .footer-base--logos .footer-logo {
    max-width: 18.375rem;
    max-height: 4.1875rem;
  }
}
.footer-base .footer-base--inner .footer-base--logos .style-club {
  max-width: 4rem;
  max-height: 4rem;
}
@media only screen and (min-width: 61.875rem) {
  .footer-base .footer-base--inner .footer-base--logos .style-club {
    max-width: 6.25rem;
    max-height: 6.25rem;
  }
}
.footer-base .footer-base--inner .footer-base--links ul {
  list-style: none;
  margin: 0 0 0.375rem 0;
  padding: 0;
  display: flex;
}
@media only screen and (min-width: 47.9375rem) {
  .footer-base .footer-base--inner .footer-base--links ul {
    justify-content: flex-end;
  }
}
.footer-base .footer-base--inner .footer-base--links ul li {
  margin-left: 1.5rem;
  color: var(--color-support-white);
  cursor: pointer;
}
.footer-base .footer-base--inner .footer-base--links ul li:first-child {
  margin-left: 0;
}
.footer-base .footer-base--inner .footer-base--links ul a {
  text-decoration: none;
}
.footer-base .footer-base--inner .footer-base--links ul a:hover {
  text-decoration: underline;
  border-bottom: 1px solid var(--color-support-white);
  color: var(--color-support-white);
  text-decoration: none;
}
.header-section {
  z-index: 99;
  width: 100%;
  border-bottom: 1px solid var(--color-support-light-grey);
}
.is-flickity-fullscreen .header-section {
  z-index: 1;
}
.header-section.is-sticky {
  position: sticky;
  top: 0;
}
.header-section .btn.is-style-outline {
  border: 1px solid var(--color-support-white);
  margin: 0.5rem 0;
  font-weight: 600;
  line-height: 160%;
  height: 2.359375rem;
}
@media (hover: hover) {
  .header-section .btn.is-style-outline:hover {
    background: var(--color-support-black-hover);
    color: var(--color-support-white);
  }
}
.header__tools {
  background-color: var(--brand-tone-base);
}
.header__main {
  background-color: var(--color-support-black);
}
.header {
  color: var(--color-support-black);
  width: 100%;
}
.header .h1,
.header h1 {
  margin: 0;
  font-size: 0;
}
.header__grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: center;
}
@media only screen and (min-width: 47.9375rem) {
  .header__grid {
    grid-template-columns: 1fr 7fr;
  }
}
.header__grid-left {
  display: flex;
  align-items: center;
  padding: 8.96px 0;
}
.header__grid-right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.header__grid-right .btn {
  color: var(--color-support-white);
  margin-left: 1.5rem;
}
.header__grid-right a {
  color: var(--color-support-white);
}
.header__grid-right .header__btn--cart {
  position: relative;
}
.header__grid-right .header__btn--cart .icon {
  width: 2rem;
  height: 2rem;
}
.header__grid-right .header__btn--cart .header__btn--cart-total {
  position: absolute;
  top: 0;
  right: -5px;
}
.header__btn--cart-total {
  width: 1rem;
  height: 1rem;
  border-radius: 200px;
  background-color: var(--color-signal-error);
  color: var(--color-support-white);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 0.75rem;
  margin-left: 0.25rem;
}
.header__btn--cart-total.no-items {
  display: none;
}
.header__shop {
  background-color: var(--brand-tone-light-1);
  position: relative;
}
.header__shop .header__shop--inner {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
.header__shop .shop_nav {
  display: flex;
  align-items: center;
  padding: 0.5625rem 0;
}
.header__shop .shop_nav a {
  text-decoration: none;
}
.header__shop .shop_nav .shop_nav-label {
  padding-left: 1rem;
  padding-right: 0.5rem;
  text-transform: uppercase;
}
@media only screen and (min-width: 47.9375rem) {
  .header__shop .shop_nav .shop_nav-label {
    border-right: 1px solid var(--color-support-light-grey);
    padding-left: 0;
    padding-right: 1rem;
  }
}
.header__shop .shop_nav .mobile-shop--trigger {
  padding-left: 1rem;
  display: flex;
  color: var(--color-support-black);
}
.header__shop .shop_nav .mobile-shop--trigger .icon {
  width: 14px;
  height: 14px;
  transition: transform 0.2s var(--transition-timing-flick);
  will-change: transform;
}
.header__shop
  .shop_nav
  .mobile-shop--trigger.shop-is-expanded
  .header__shop
  .shop_nav
  .mobile-shop--trigger
  .icon {
  transform: rotate(180deg);
}
.header__shop .shop_nav li.is-collapsed .nav__dropdown {
  display: none;
}
.header__shop .shop_nav li.is-expanded .nav__dropdown {
  display: block;
  animation: showNavDropdown 0.2s var(--transition-timing-flick);
}
@keyframes showNavDropdown {
  0% {
    opacity: 0;
    max-height: 0;
  }
  100% {
    opacity: 1;
    max-height: calc(100vh - 100%);
  }
}
.header__shop .shop_nav li.is-active a {
  position: relative;
}
.header__shop .shop_nav li.is-active a:after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  width: calc(100% - 16px);
  height: 0.5px;
  background-color: var(--color-support-black);
}
.header__shop .shop_nav li.is-active .nav__dropdown .submenu a {
  position: relative;
}
.header__shop .shop_nav li.is-active .nav__dropdown .submenu a:after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0.1875rem;
  width: 100%;
  height: 0.5px;
  background-color: var(--color-support-black);
}
.header__shop .shop_nav li.brands-nav ul {
  display: flex;
  gap: 10px;
  flex: 1 0 0;
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
  min-width: 15rem;
}
@media only screen and (max-width: 47.875rem) {
  .header__shop .shop_nav li.brands-nav .nav__dropdown {
    height: 180px;
    overflow: hidden;
    overflow-y: scroll;
    scrollbar-width: auto;
    scrollbar-color: #000;
  }
  .header__shop .shop_nav li.brands-nav .nav__dropdown::-webkit-scrollbar {
    width: 0.1875rem;
  }
  .header__shop
    .shop_nav
    li.brands-nav
    .nav__dropdown::-webkit-scrollbar-track {
    background: #fff;
  }
  .header__shop
    .shop_nav
    li.brands-nav
    .nav__dropdown::-webkit-scrollbar-thumb {
    background-color: #000;
    border-radius: 0.625rem;
    border: 1px solid #000;
  }
}
@media only screen and (max-width: 47.875rem) {
  .header__shop .shop_nav li.hair-type-nav .nav__dropdown {
    height: 180px;
    overflow: hidden;
    overflow-y: scroll;
    scrollbar-width: auto;
    scrollbar-color: #000;
  }
  .header__shop .shop_nav li.hair-type-nav .nav__dropdown::-webkit-scrollbar {
    width: 0.1875rem;
  }
  .header__shop
    .shop_nav
    li.hair-type-nav
    .nav__dropdown::-webkit-scrollbar-track {
    background: #fff;
  }
  .header__shop
    .shop_nav
    li.hair-type-nav
    .nav__dropdown::-webkit-scrollbar-thumb {
    background-color: #000;
    border-radius: 0.625rem;
    border: 1px solid #000;
  }
}
.header__shop .shop_nav .nav__dropdown .megamenu {
  padding: 0.5rem;
}
.header__shop .shop_nav .nav__dropdown .submenu {
  display: block;
  padding: 0;
  margin: 0;
}
.header__shop .shop_nav .nav__dropdown .submenu .nav__item {
  padding: 0 0.5rem;
}
.header__shop .shop_nav .nav__dropdown .submenu .nav__item a {
  padding: 0.25rem 0;
  line-height: 160%;
  position: relative;
}
.header__shop .shop__tools {
  display: flex;
  position: relative;
}
.header__shop .shop__tools .site-search {
  order: 2;
  background-color: var(--color-support-white);
  height: 100%;
  padding: 0.25rem 0.75rem;
  color: var(--color-support-black);
  display: flex;
  align-items: center;
}
.header__shop .shop__tools .site-search .mobile-search-close {
  display: none;
  position: absolute;
  right: 10px;
  top: 5px;
}
@media only screen and (max-width: 61.8125rem) {
  .header__shop .shop__tools .site-search {
    width: 95px;
    transition: width 0.3s ease;
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1000;
    background-color: #fff;
  }
  .header__shop .shop__tools .site-search .btn {
    pointer-events: none;
  }
  .header__shop .shop__tools .site-search.expanded {
    width: 100vw;
    position: absolute;
  }
  .header__shop .shop__tools .site-search.expanded .search__input {
    width: 100%;
  }
  .header__shop .shop__tools .site-search.expanded .mobile-search-close {
    display: block;
  }
  .header__shop .shop__tools .site-search.expanded .btn {
    pointer-events: unset;
  }
}
.header__shop .shop__tools .site-search .search__input {
  border: none;
  padding: 0;
}
.header__shop .shop__tools .site-search .search__input:focus {
  box-shadow: none;
}
.header__shop .shop__tools .site-search .search-modal__form {
  display: grid;
  grid-template-columns: 1fr 10fr;
  gap: 4px;
}
@media only screen and (min-width: 47.9375rem) {
  .header__shop .shop__tools .site-search .search-modal__form {
    grid-template-columns: 10fr 1fr;
  }
}
.header__shop .shop__tools .site-search .search-modal__form .search__input {
  order: 2;
}
@media only screen and (min-width: 47.9375rem) {
  .header__shop .shop__tools .site-search .search-modal__form .search__input {
    order: 1;
  }
}
.header__shop .shop__tools .site-search .search-modal__form .btn {
  order: 1;
}
.header__shop .shop__tools .site-search .search-modal__form .btn .icon-search {
  width: 16px;
  height: 16px;
}
@media only screen and (min-width: 47.9375rem) {
  .header__shop .shop__tools .site-search .search-modal__form .btn {
    order: 2;
  }
  .header__shop
    .shop__tools
    .site-search
    .search-modal__form
    .btn
    .icon-search {
    width: 16px;
    height: 16px;
  }
}
@media only screen and (min-width: 61.875rem) {
  .header__shop .shop__tools .site-search {
    order: 1;
  }
}
.header__shop .shop__tools .site-search #react-search-modal {
  width: 100%;
}
@media only screen and (max-width: 47.875rem) {
  .header__shop
    .shop__tools
    .site-search
    #react-search-modal
    .search-modal__trigger {
    display: flex;
  }
  .header__shop
    .shop__tools
    .site-search
    #react-search-modal
    .search-modal__trigger
    .search-modal__trigger-label {
    order: 2;
  }
}
.header__shop .shop__tools .currency-selector--nav {
  order: 1;
  position: relative;
  padding: 0 0.75rem;
  display: flex;
  align-items: center;
  font-size: 0.75rem;
}
@media only screen and (max-width: 47.875rem) {
  .header__shop .shop__tools .currency-selector--nav {
    position: absolute;
    right: 96px;
    width: 75px;
    height: 100%;
  }
}
.header__shop .shop__tools .currency-selector--nav button {
  display: flex;
  align-items: center;
}
.header__shop
  .shop__tools
  .currency-selector--nav
  button.is-active
  .icon.icon-chevron-down {
  transform: rotate(180deg);
}
@media only screen and (min-width: 61.875rem) {
  .header__shop .shop__tools .currency-selector--nav {
    order: 2;
  }
}
.header__shop .shop__tools .currency-selector--nav .icon.icon-chevron-down {
  width: 0.875rem;
  height: 0.875rem;
  transition: transform 0.2s var(--transition-timing-flick);
  will-change: transform;
}
.header__shop ul.shop-menu {
  list-style: none;
  display: flex;
  padding: 0;
  margin: 0;
}
@media only screen and (min-width: 61.875rem) {
  .header__shop ul.shop-menu {
    padding: 0 0 0 1.5rem;
    gap: 0 14px;
  }
}
@media only screen and (min-width: 87.5rem) {
  .header__shop ul.shop-menu {
    padding: 0 0 0 1.5rem;
    gap: 0 24px;
  }
}
.header__shop ul.shop-menu a {
  padding: 0.25rem 6px;
  font-size: 0.875rem;
  text-decoration: none;
  border-radius: 0.25rem;
}
@media (hover: hover) {
  .header__shop ul.shop-menu a:hover {
    background-color: var(--color-support-white);
  }
}
@media only screen and (max-width: 47.875rem) {
  .header__shop ul.shop-menu {
    position: absolute;
    width: 100%;
    background-color: var(--color-support-white);
    display: block;
    left: 0;
    padding: 0;
    box-shadow: 0px 8px 24px 0px rgba(83, 50, 1, 0.24);
    border-radius: 0px 0px 8px 8px;
    z-index: -1;
    top: -700px;
    transform: translateY(-100%);
    -webkit-overflow-scrolling: touch;
    transition: transform 0.2s;
    transition-timing-function: var(--transition-timing-flick);
    will-change: transform;
  }
  .shop-is-expanded .header__shop ul.shop-menu {
    top: 35px;
    transform: translateY(0);
  }
  .header__shop ul.shop-menu li {
    padding: 0.5rem;
    border-bottom: 1px solid var(--color-support-lighter-grey);
  }
  .header__shop ul.shop-menu li:last-child {
    border-bottom: 0;
  }
  .header__shop ul.shop-menu li a {
    width: 100%;
    font-size: 0.875rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .header__shop ul.shop-menu li a .icon {
    width: 20px;
    height: 20px;
    transition: transform 0.2s var(--transition-timing-flick);
    will-change: transform;
  }
  .header__shop ul.shop-menu li.is-expanded .icon {
    transform: rotate(180deg);
  }
  .header__shop ul.shop-menu li.is-active a:after {
    content: unset !important;
    position: unset !important;
    left: unset !important;
    transform: unset !important;
    bottom: unset !important;
    width: unset !important;
    height: unset !important;
    background-color: unset !important;
  }
  .header__shop ul.shop-menu li .nav__dropdown {
    position: relative;
    background-color: var(--color-support-white);
  }
  .header__shop ul.shop-menu li .nav__dropdown .submenu {
    padding-left: 0.5rem;
  }
  .header__shop ul.shop-menu li .nav__dropdown .megamenu {
    background-color: unset;
    border-radius: unset;
    box-shadow: unset;
    padding: unset;
    margin-top: unset;
    margin-left: unset;
  }
  .header__shop ul.shop-menu li .nav__dropdown ul {
    position: relative;
    width: 100%;
    background-color: var(--color-support-white);
    display: block;
    top: unset !important;
    left: unset;
    padding: 0;
    box-shadow: unset;
    border-radius: unset;
    transform: unset;
    -webkit-overflow-scrolling: unset;
    transition: unset;
    transition-timing-function: unset;
    will-change: unset;
    z-index: 1;
  }
  .shop-is-expanded .header__shop ul.shop-menu li .nav__dropdown ul {
    top: unset;
    transform: unset;
  }
  .header__shop ul.shop-menu li .nav__dropdown ul li {
    border-bottom: none;
    margin-bottom: 0.5rem;
  }
  .header__shop ul.shop-menu li .nav__dropdown ul li:last-child {
    margin-bottom: none;
  }
  .header__shop ul.shop-menu li .nav__dropdown ul li a {
    color: var(--color-support-grey) !important;
    line-height: 160% !important;
    width: 100% !important;
  }
  .header__shop ul.shop-menu li .nav__dropdown ul li a:after {
    content: unset !important;
    position: unset !important;
    left: unset !important;
    transform: unset !important;
    bottom: unset !important;
    width: unset !important;
    height: unset !important;
    background-color: unset !important;
  }
  .header__shop ul.shop-menu li .nav__dropdown ul li.is-active a:after {
    content: unset !important;
    position: unset !important;
    left: unset !important;
    transform: unset !important;
    bottom: unset !important;
    width: unset !important;
    height: unset !important;
    background-color: unset !important;
  }
}
.shop-is-expanded .mobile-shop--trigger .icon {
  transform: rotate(180deg);
}
@media only screen and (min-width: 47.9375rem) {
  li.sub-shop-all,
  li.sub-all-services {
    display: none;
  }
}
.fader--shop {
  display: none;
}
.shop-is-expanded {
  overflow: hidden;
}
.shop-is-expanded .fader--shop {
  display: block;
  opacity: 1;
  visibility: visible;
  z-index: -1;
}
.hero-slider-section {
  position: relative;
  background-color: var(--brand-tone-light-1);
  padding-top: 1.5rem;
}
.hero-slider-section .hero-slider__counter {
  position: absolute;
  bottom: 2rem;
  left: 0;
  width: 100%;
  text-align: center;
}
.hero-slider-section .flickity-page-dots {
  bottom: 1.5625rem;
}
.hero-slider {
  position: relative;
  overflow: hidden;
  width: 100%;
  border-radius: 1.5625rem;
}
.hero-slider:not(.single-slide)::after {
  content: "flickity";
  display: none;
}
.hero-slider.hero-slider--full {
  height: 100vh;
}
.hero-slider.hero-slider--full .hero-slide {
  height: 100%;
}
.hero-slider.hero-slider--full .component-picture__wrapper {
  height: 100%;
}
.hero-slider:not(.flickity-enabled) .hero-slide:not(:first-of-type) {
  display: none;
}
@media (hover: hover) {
  .hero-slide__button:hover {
    color: var(--color-support-black);
  }
}
.hero-slide {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr;
}
.hero-slide .component-picture__wrapper {
  grid-column: 1;
  grid-row: 1;
}
.hero-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-slide__title {
  margin: 0 0 0.5rem;
}
.hero-slide__container {
  grid-column: 1;
  grid-row: 1;
  z-index: 2;
  display: flex;
  flex-direction: row;
  padding: 2rem 1rem;
  text-decoration: none;
}
@media only screen and (min-width: 47.9375rem) {
  .hero-slide__container {
    padding: 6.25rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .hero-slide__container {
    padding: 6.25rem 10%;
  }
}
@media only screen and (max-width: 47.875rem) {
  .hero-slide__container.justify-center {
    justify-content: center;
  }
}
@media only screen and (max-width: 47.875rem) {
  .hero-slide__container.align-start {
    align-items: flex-start;
  }
}
@media only screen and (max-width: 47.875rem) {
  .hero-slide__container.align-center {
    align-items: center;
  }
}
@media only screen and (max-width: 47.875rem) {
  .hero-slide__container.align-end {
    align-items: flex-end;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .hero-slide__container.desktop-justify-start {
    justify-content: flex-start;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .hero-slide__container.desktop-justify-center {
    justify-content: center;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .hero-slide__container.desktop-justify-end {
    justify-content: flex-end;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .hero-slide__container.desktop-align-start {
    align-items: flex-start;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .hero-slide__container.desktop-align-center {
    align-items: center;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .hero-slide__container.desktop-align-end {
    align-items: flex-end;
  }
}
.hero-slide__container.text-left {
  text-align: left;
}
.hero-slide__container.text-center {
  text-align: center;
}
.hero-slide__container.text-right {
  text-align: right;
}
@media only screen and (min-width: 61.875rem) {
  .hero-slide__container.text-left--min-lg {
    text-align: left;
  }
}
@media only screen and (min-width: 61.875rem) {
  .hero-slide__container.text-center--min-lg {
    text-align: center;
  }
}
@media only screen and (min-width: 61.875rem) {
  .hero-slide__container.text-right--min-lg {
    text-align: right;
  }
}
.hero-slide__content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 25rem;
  opacity: 0;
  transform: translate3d(0, 20px, 0);
  transition: opacity 0.4s var(--transition-timing-flick),
    transform 0.3s var(--transition-timing-flick);
  transition-delay: 0.3s;
}
.is-selected .hero-slide__content,
.single-slide .hero-slide__content {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
@media only screen and (min-width: 47.9375rem) {
  .hero-grid {
    display: grid;
    align-items: center;
    grid-template-columns: 1fr;
  }
}
@media only screen and (min-width: 61.875rem) {
  .hero-grid {
    grid-template-columns: 2fr 1fr;
    gap: 0 5rem;
  }
}
.hero-grid .hero-grid--right {
  padding: 1rem 0;
}
@media only screen and (min-width: 47.9375rem) {
  .hero-grid .hero-grid--right {
    padding: 1rem 2.5rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .hero-grid .hero-grid--right {
    background-color: var(--color-support-white);
    padding: 2.5rem 1.5rem;
    border-radius: 1rem;
  }
}
.hero-grid .hero-grid--right .hero-grid--right-list {
  display: grid;
  list-style: none;
  padding: 0;
  margin: 0 0 1rem 0;
  grid-template-columns: repeat(4, 1fr);
}
@media only screen and (min-width: 61.875rem) {
  .hero-grid .hero-grid--right .hero-grid--right-list {
    margin: 0 0 3rem 0;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .hero-grid .hero-grid--right .hero-grid--right-list {
    gap: 0 2.5rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .hero-grid .hero-grid--right .hero-grid--right-list {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 2.5rem 1.75rem;
  }
}
.hero-grid .hero-grid--right .hero-grid--right-list li {
  text-align: center;
}
.hero-grid .hero-grid--right .hero-grid--right-list li .list-icon {
  height: 1.5rem;
  margin-bottom: 0.5rem;
}
@media only screen and (min-width: 61.875rem) {
  .hero-grid .hero-grid--right .hero-grid--right-list li .list-icon {
    height: 2.5rem;
  }
}
.hero-grid .hero-grid--right .hero-grid--right-list li .icon {
  width: 1.5rem;
  height: 1.5rem;
}
@media only screen and (min-width: 61.875rem) {
  .hero-grid .hero-grid--right .hero-grid--right-list li .icon {
    width: 2.5rem;
    height: 2.5rem;
  }
}
@media only screen and (max-width: 29.9375rem) {
  .hero-grid .hero-grid--right .hero-grid--right-list li span span {
    display: block;
  }
}
.hero-grid .hero-grid--right .hero-grid--right-cta {
  text-align: center;
}
.hero-grid .hero-grid--slider {
  position: relative;
}
@media only screen and (max-width: 29.9375rem) {
  .hero-grid .hero-grid--slider {
    width: 95%;
    margin: auto;
  }
}
.hero-grid .hero-grid--slider .hero-controls .btn--control-prev {
  position: absolute;
  left: 0;
  top: 50%;
  margin-left: -1.25rem;
  transform: translateY(-50%);
  height: 3.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .hero-grid .hero-grid--slider .hero-controls .btn--control-prev {
    margin-left: -1.75rem;
  }
}
.hero-grid .hero-grid--slider .hero-controls .btn--control-next {
  position: absolute;
  right: 0;
  top: 50%;
  margin-right: -1.25rem;
  transform: translateY(-50%);
  height: 3.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .hero-grid .hero-grid--slider .hero-controls .btn--control-next {
    margin-right: -1.75rem;
  }
}
.hero-grid .hero-grid--slider .hero-controls .btn--control {
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border-radius: 50%;
  background-color: var(--color-support-white);
  display: flex;
  justify-content: center;
  align-items: center;
  border: none;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media only screen and (min-width: 47.9375rem) {
  .hero-grid .hero-grid--slider .hero-controls .btn--control {
    width: 3.5rem;
    height: 3.5rem;
  }
}
@media (hover: hover) {
  .hero-grid .hero-grid--slider .hero-controls .btn--control:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
}
@media only screen and (max-width: 47.875rem) {
  .hero-grid .hero-grid--slider .hero-controls .btn--control .icon {
    width: 1rem;
    height: 1rem;
  }
}
.hero-grid .hero-grid--slider .flickity-page-dots .dot {
  width: 0.5rem;
  height: 0.5rem;
  background: transparent;
  border: 1px solid var(--color-support-black);
}
.hero-grid .hero-grid--slider .flickity-page-dots .dot.is-selected {
  background-color: var(--color-support-black);
}
.image-with-text {
  width: 100%;
  padding: 2.5rem 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem 0;
}
@media only screen and (min-width: 47.9375rem) {
  .image-with-text {
    padding: 3.5rem 0;
    gap: 2.5rem 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .image-with-text {
    padding: 5rem 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .image-with-text {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 7.5rem;
  }
}
.image-with-text h2 {
  margin-top: 0;
  margin-bottom: 1.5rem;
}
.image-with-text.text-block h2 {
  margin-bottom: 0;
}
.bg--beige {
  background-color: var(--brand-tone-light-1);
}
.bg--white {
  background-color: var(--color-support-white);
}
.image-with-text .image-with-text__image {
  border-radius: 1.5rem;
  overflow: hidden;
  order: 2;
}
@media only screen and (min-width: 47.9375rem) {
  .image-with-text .image-with-text__image {
    max-width: 31.25rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .image-with-text .image-with-text__image {
    max-width: unset;
    order: 1;
  }
}
.image-with-text .image-with-text__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.image-with-text.text-block .image-with-text__image {
  order: 1;
}
@media only screen and (min-width: 47.9375rem) {
  .image-with-text.reverse .image-with-text__image {
    order: 2;
  }
}
.image-with-text .image-with-text__text {
  width: 100%;
  padding: 0;
  order: 1;
}
@media only screen and (min-width: 47.9375rem) {
  .image-with-text .image-with-text__text {
    padding: 0;
    display: flex;
    flex-direction: column;
    max-width: 43.75rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .image-with-text .image-with-text__text {
    max-width: unset;
    order: 2;
  }
}
.image-with-text .image-with-text__text .image-with-text__body {
  color: var(--color-support-grey);
}
.container--flush .image-with-text .image-with-text__text {
  padding-left: 1rem;
  padding-right: 1rem;
}
.image-with-text.text-block .image-with-text__text {
  order: 2;
}
@media only screen and (min-width: 47.9375rem) {
  .image-with-text.reverse .image-with-text__text {
    order: 1;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .image-with-text__text-inner {
    display: block;
    margin: 0 auto;
  }
}
.image-with-text__text-inner .btn {
  margin-top: 2rem;
}
.newsletter-section {
  padding: 1.5rem 0;
}
@media only screen and (min-width: 47.9375rem) {
  .newsletter-section {
    padding: 2rem 0;
  }
}
.product-recommendations__wrapper {
  padding: 1.5rem 0;
}
@media only screen and (min-width: 47.9375rem) {
  .product-recommendations__wrapper {
    padding: 2.5rem 0;
  }
  .product-recommendations__wrapper .product-recommendations__title {
    padding-bottom: 2.5rem;
  }
}
.product-recommendations__wrapper .product-recommendations__slider {
  padding-bottom: 3.75rem;
}
.product-recommendations__inner {
  position: relative;
}
.product-recommendations__inner .slider-navigation {
  top: 40%;
}
.product-recommendations__inner .slider-navigation .slider-navigation--prev {
  left: -2.8125rem;
}
.product-recommendations__inner .slider-navigation .slider-navigation--next {
  right: -2.8125rem;
}
.recently-viewed__wrapper {
  padding: 1.5rem 0;
}
@media only screen and (min-width: 47.9375rem) {
  .recently-viewed__wrapper {
    padding: 2rem 0;
  }
}
.recently-viewed {
  width: 100%;
}
.cta-two-cards {
  background-color: var(--brand-tone-light-1);
  padding: 2.5rem 0;
}
.cta-two-cards a {
  text-decoration: none;
}
@media only screen and (min-width: 47.9375rem) {
  .cta-two-cards {
    padding: 3.5rem 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .cta-two-cards {
    padding: 5rem 0;
  }
}
.cta-two-cards .section__title {
  padding-bottom: 1.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .cta-two-cards .section__title {
    padding-bottom: 2.5rem;
  }
}
@media only screen and (max-width: 29.9375rem) {
  .cta-two-cards .section__title {
    max-width: 58%;
  }
}
.cta-two-cards .section__title h2 {
  margin: 0;
}
.cta-two-cards .cta-two-cards-card {
  background-color: var(--color-support-white);
  border-radius: 1rem;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media (hover: hover) {
  .cta-two-cards .cta-two-cards-card:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
  .cta-two-cards .cta-two-cards-card:hover img {
    transform: scale(1.1);
  }
  .cta-two-cards .cta-two-cards-card:hover .btn {
    background-color: var(--brand-tone-dark-1);
    border-color: var(--brand-tone-dark-1);
    color: var(--color-support-black);
  }
}
.cta-two-cards .cta-two-cards-card .cta-two-cards-image {
  border-radius: 1rem;
  overflow: hidden;
}
.cta-two-cards .cta-two-cards-card .cta-two-cards-image img {
  transition: transform var(--transition-duration) var(--transition-timing);
  vertical-align: bottom;
}
.cta-two-cards .cta-two-cards-card .cta-two-cards-details {
  padding: 1.5rem;
}
.cta-two-cards .cta-two-cards-card .cta-two-cards-details h5 {
  margin: 0;
  padding-bottom: 0.5rem;
}
.cta-two-cards .cta-two-cards-card .cta-two-cards-details .cta-two-cards-desc {
  color: var(--color-support-grey);
  padding-bottom: 1.5rem;
}
.cta-two-cards .cta-two-cards-card .btn {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.cta-three-cards {
  background-color: var(--brand-tone-light-1);
  padding: 2.5rem 0;
}
@media only screen and (min-width: 47.9375rem) {
  .cta-three-cards {
    padding: 3.5rem 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .cta-three-cards {
    padding: 5rem 0;
  }
}
.cta-three-cards .section__title {
  padding-bottom: 1.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .cta-three-cards .section__title {
    padding-bottom: 2.5rem;
  }
}
@media only screen and (max-width: 29.9375rem) {
  .cta-three-cards .section__title {
    max-width: 58%;
  }
}
.cta-three-cards .section__title h2 {
  margin: 0;
}
.cta-three-cards .cta-three-cards-card {
  background-color: var(--color-support-white);
  border-radius: 1rem;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
.cta-three-cards .cta-three-cards-card a {
  text-decoration: none;
}
.cta-three-cards .cta-three-cards-card .btn {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (hover: hover) {
  .cta-three-cards .cta-three-cards-card:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
  .cta-three-cards .cta-three-cards-card:hover img {
    transform: scale(1.1);
  }
  .cta-three-cards .cta-three-cards-card:hover .btn {
    background-color: var(--brand-tone-dark-1);
    border-color: var(--brand-tone-dark-1);
    color: var(--color-support-black);
  }
}
.cta-three-cards .cta-three-cards-card .cta-three-cards-image {
  border-radius: 1rem;
  overflow: hidden;
}
.cta-three-cards .cta-three-cards-card .cta-three-cards-image img {
  transition: transform var(--transition-duration) var(--transition-timing);
}
.cta-three-cards .cta-three-cards-card .cta-three-cards-details {
  padding: 1.5rem;
}
.cta-three-cards .cta-three-cards-card .cta-three-cards-details h5 {
  margin: 0;
  padding-bottom: 0.5rem;
}
.cta-three-cards
  .cta-three-cards-card
  .cta-three-cards-details
  .cta-three-cards-desc {
  color: var(--color-support-grey);
  padding-bottom: 1.5rem;
}
.featured-brands {
  padding: 2.5rem 0;
  background-color: var(--brand-tone-light-1);
  margin-bottom: -1.875rem;
}
.featured-brands .featured-brands--slider {
  padding-bottom: 1.875rem;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-brands {
    padding: 3.5rem 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .featured-brands {
    padding: 5rem 0;
  }
}
.featured-brands .featured-brands--wrapper {
  position: relative;
}
.featured-brands .section__title {
  padding-bottom: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-brands .section__title {
    padding-bottom: 2.5rem;
  }
}
.featured-brands .section__title h2 {
  margin: 0;
}
@media only screen and (max-width: 47.875rem) {
  .featured-brands .section__title h2 {
    font-size: 3rem;
  }
}
.featured-brands .link-chevron {
  font-size: 1rem;
  text-transform: uppercase;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
}
.featured-brands .link-chevron::after {
  content: "";
  position: absolute;
  height: 1px;
  width: 0;
  bottom: -2px;
  left: 0;
  background: var(--color-support-black);
  transition: width var(--transition-duration) var(--transition-timing);
}
.featured-brands .link-chevron:hover::after {
  width: 100%;
}
.featured-brands .link-chevron .icon {
  width: 0.875rem;
  height: 0.875rem;
  margin-left: 0.25rem;
}
.featured-brands .brand-card {
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media (hover: hover) {
  .featured-brands .brand-card:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
  .featured-brands .brand-card:hover img {
    transform: scale(1.1);
  }
}
.featured-brands .brand-card a {
  display: block;
  background-color: var(--color-support-white);
  border-radius: 16px;
  text-decoration: none;
}
.featured-brands .brand-card .brand-card__image {
  display: block;
  width: 100%;
  border-radius: 1rem;
  overflow: hidden;
}
.featured-brands .brand-card .brand-card__image img {
  transition: transform var(--transition-duration) var(--transition-timing);
  aspect-ratio: 25/16;
  object-fit: cover;
  vertical-align: bottom;
}
.featured-brands .brand-card .brand-card__title {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 1rem;
  justify-content: center;
  text-align: center;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-brands .brand-card .brand-card__title {
    padding: 1rem 0;
    height: 4.5rem;
  }
}
.featured-brands .btn--control-prev {
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -1.875rem;
  transform: translateY(-50%);
  margin-left: -1.25rem;
  height: 3.5rem;
  display: none;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-brands .btn--control-prev {
    margin-left: -1.75rem;
    display: flex;
  }
}
.featured-brands .btn--control-prev.disabled {
  opacity: 0.4;
}
.featured-brands .btn--control-next {
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -1.875rem;
  transform: translateY(-50%);
  margin-right: -1.25rem;
  height: 3.5rem;
  display: none;
}
@media only screen and (min-width: 47.9375rem) {
  .featured-brands .btn--control-next {
    margin-right: -1.75rem;
    display: flex;
  }
}
.featured-brands .btn--control-next.disabled {
  opacity: 0.4;
}
.featured-brands .btn--control {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: var(--brand-tone-base);
  justify-content: center;
  align-items: center;
  border: none;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media only screen and (min-width: 47.9375rem) {
  .featured-brands .btn--control {
    width: 3.5rem;
    height: 3.5rem;
  }
}
@media (hover: hover) {
  .featured-brands .btn--control:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
}
.brands-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem 1.25rem;
}
@media only screen and (min-width: 47.9375rem) {
  .brands-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only screen and (min-width: 61.875rem) {
  .brands-grid {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  }
}
.template-page .featured-brands {
  margin-bottom: unset;
}
.template-page .featured-brands .brand-card {
  background-color: var(--color-support-white);
  border-radius: 16px;
  height: 100%;
}
.hair-type {
  padding: 2.5rem 0;
  background-color: var(--brand-tone-light-1);
}
@media only screen and (min-width: 47.9375rem) {
  .hair-type {
    padding: 3.5rem 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .hair-type {
    padding: 5rem 0;
  }
}
.hair-type .hair-type--wrapper {
  position: relative;
}
@media only screen and (max-width: 47.875rem) {
  .hair-type .hair-type--wrapper {
    padding-bottom: 2.5rem;
  }
}
.hair-type .section__title {
  padding-bottom: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media only screen and (min-width: 47.9375rem) {
  .hair-type .section__title {
    padding-bottom: 2.5rem;
  }
}
.hair-type .section__title h2 {
  margin: 0;
}
@media only screen and (max-width: 47.875rem) {
  .hair-type .section__title h2 {
    font-size: 3rem;
  }
}
.hair-type .link-chevron {
  font-size: 1rem;
  text-transform: uppercase;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
}
.hair-type .link-chevron::after {
  content: "";
  position: absolute;
  height: 1px;
  width: 0;
  bottom: -2px;
  left: 0;
  background: var(--color-support-black);
  transition: width var(--transition-duration) var(--transition-timing);
}
.hair-type .link-chevron:hover::after {
  width: 100%;
}
.hair-type .link-chevron .icon {
  width: 0.875rem;
  height: 0.875rem;
  margin-left: 0.25rem;
}
@media only screen and (min-width: 61.875rem) {
  .hair-type .hair-type--slider {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1rem 1.25rem;
  }
  .hair-type .hair-type--slider .slide.sixth {
    width: 100%;
  }
}
.hair-type .type-card a {
  text-decoration: none;
  justify-content: center;
  text-align: center;
  display: flex;
  width: 100%;
  background-color: var(--color-support-white);
  border-radius: 16px;
  align-items: center;
  padding: 1rem;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media (hover: hover) {
  .hair-type .type-card a:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
}
@media only screen and (min-width: 47.9375rem) {
  .hair-type .type-card a {
    padding: 1.5rem;
  }
}
.common-banner__wrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
  display: grid;
}
.common-banner__wrapper .component-picture__wrapper,
.common-banner__wrapper .component-image__wrapper,
.common-banner__wrapper .placeholder-svg {
  grid-column: 1;
  grid-row: 1;
}
.common-banner .animated-picture {
  grid-column: 1;
  grid-row: 1;
  padding-top: 0;
}
.common-banner .animated-picture .picture__container {
  position: relative;
  overflow: hidden;
  width: 100%;
  display: grid;
}
.common-banner__container {
  grid-column: 1;
  grid-row: 1;
  display: flex;
  align-items: center;
  margin-right: auto;
  margin-left: auto;
  padding: 3.125rem 2.375rem;
  width: 100%;
  max-width: 94.5rem;
}
@media only screen and (max-width: 47.875rem) {
  .common-banner__container.hero-version {
    padding-top: 6.25rem;
  }
}
@media only screen and (max-width: 47.875rem) {
  .common-banner__container {
    height: 100%;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .common-banner__container {
    padding: 4rem 2rem;
  }
}
.common-banner__container::after {
  content: " ";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.common-banner__content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 29.375rem;
}
.common-banner__content.wide-content {
  max-width: 40rem;
}
.common-banner__content.extra-wide-content {
  max-width: 46.5625rem;
}
@media only screen and (max-width: 47.875rem) {
  .common-banner__content {
    height: 100%;
  }
  .common-banner__content .btn {
    position: absolute;
    bottom: 0;
  }
  .text-center .common-banner__content .btn {
    left: 50%;
    transform: translateX(-50%);
  }
}
.common-banner__content .btn:not(.btn__text) {
  margin-top: 1rem;
}
.common-banner__content > *:last-child {
  margin-bottom: 0;
}
.common-banner__content .btn.btn--text {
  color: var(--color-support-white);
  font-size: 0.75rem;
}
.common-banner__content .btn.btn--text .icon path {
  fill: var(--color-support-white);
}
.banner__text-body:last-child p:last-child {
  margin-bottom: 0;
}
.common-banner .hero-video {
  grid-column: 1;
  grid-row: 1;
}
@media only screen and (max-width: 47.875rem) {
  .common-banner .hero-video {
    height: 100%;
  }
  .common-banner video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
@media only screen and (min-width: 61.875rem) {
  .common-banner .hero-video--cover {
    height: 100%;
  }
}
.common-banner .hero-video--portrait,
.common-banner .hero-video--landscape {
  width: 100%;
  height: 100%;
  display: block;
}
.common-banner .hero-video--landscape {
  display: none;
}
@media (orientation: landscape) {
  .common-banner .hero-video--landscape {
    display: block;
  }
}
.common-banner .hero-video--landscape.hero-video--landscape-cover {
  object-fit: cover;
}
@media (orientation: landscape) {
  .common-banner .hero-video--portrait {
    display: none;
  }
}
.image-text-hero {
  width: 100%;
  padding: 2.5rem 0 0 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem 0;
}
@media only screen and (min-width: 47.9375rem) {
  .image-text-hero {
    grid-template-columns: repeat(2, 1fr);
    padding: 3.5rem 0 0 0;
    gap: 0 2.5rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .image-text-hero {
    padding: 5rem 0 0 0;
    gap: 0 10rem;
  }
}
.image-text-hero h2 {
  margin: 0;
}
@media only screen and (max-width: 47.875rem) {
  .image-text-hero h2 {
    font-size: 2.5rem;
  }
}
@media only screen and (max-width: 61.8125rem) {
  .image-text-hero h2 {
    font-size: 2rem;
  }
}
.image-text-hero.text-block h2 {
  margin-bottom: 0;
}
.image-text-hero .image-with-text__image {
  position: relative;
  overflow: visible;
}
@media only screen and (max-width: 47.875rem) {
  .image-text-hero .image-with-text__image {
    order: 2;
  }
}
.image-text-hero .image-with-text__image .component-image__wrapper {
  border-radius: 25rem 25rem 0 0;
  overflow: hidden;
}
.image-text-hero .image-with-text__image .image-badge {
  width: 8.25rem;
  height: 8.25rem;
  background-color: var(--brand-tone-dark-1);
  border-radius: 25rem;
  font-family: var(--font-decorative);
  font-size: 5rem;
  line-height: 140%;
  color: var(--color-support-black);
  position: absolute;
  top: 2.5rem;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 61.875rem) {
  .image-text-hero .image-with-text__image .image-badge {
    width: 11.75rem;
    height: 11.75rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .image-text-hero .image-with-text__image .image-badge {
    font-size: 7.5rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .image-text-hero .image-with-text__image .image-badge {
    right: -0.9375rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .image-text-hero .image-with-text__image .image-badge {
    right: -5.625rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .image-text-hero .image-with-text__image {
    max-width: 31.25rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .image-text-hero .image-with-text__image {
    max-width: unset;
  }
}
.image-text-hero .image-with-text__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 61.875rem) {
  .image-text-hero .image-with-text__image img {
    min-height: 34rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .image-text-hero.reverse .image-with-text__image {
    order: 2 !important;
  }
  .image-text-hero.reverse .image-with-text__image .image-badge {
    left: 0;
    right: unset;
  }
}
@media only screen and (min-width: 47.9375rem) and (min-width: 47.9375rem) {
  .image-text-hero.reverse .image-with-text__image .image-badge {
    left: -0.9375rem;
  }
}
@media only screen and (min-width: 47.9375rem) and (min-width: 61.875rem) {
  .image-text-hero.reverse .image-with-text__image .image-badge {
    left: -5.625rem;
  }
}
.image-text-hero .image-with-text__text {
  width: 100%;
  padding: 0;
}
@media only screen and (max-width: 47.875rem) {
  .image-text-hero .image-with-text__text {
    order: 1;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .image-text-hero .image-with-text__text {
    padding: 0;
    display: flex;
    flex-direction: column;
    max-width: 43.75rem;
    align-self: center;
  }
}
@media only screen and (min-width: 61.875rem) {
  .image-text-hero .image-with-text__text {
    max-width: unset;
  }
}
.image-text-hero .image-with-text__text .image-with-text__body {
  color: var(--color-support-black);
  padding: 1.5rem 0;
}
.image-text-hero .image-with-text__text .image-with-text__body p {
  color: var(--color-support-black);
}
@media only screen and (min-width: 47.9375rem) {
  .image-text-hero .image-with-text__text .image-with-text__body {
    padding: 1rem 0 0 0;
  }
}
.container--flush .image-text-hero .image-with-text__text {
  padding-left: 1rem;
  padding-right: 1rem;
}
.image-text-hero .image-with-text__text .btn {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media (hover: hover) {
  .image-text-hero .image-with-text__text .btn:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08) !important;
  }
}
.image-text-hero .image-with-text__text .btn.no-desc {
  margin-top: 2.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .image-text-hero.reverse .image-with-text__text {
    order: 1 !important;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .image-text-hero .image-with-text__text-inner {
    display: block;
    margin: 0 auto;
    max-width: 32.5rem;
  }
}
.image-text-hero--beige {
  background-color: var(--brand-tone-base);
}
.image-text-hero--black {
  background-color: var(--color-support-black);
}
.image-text-hero--black .image-text-hero h2,
.image-text-hero--black .image-with-text__body,
.image-text-hero--black .image-with-text__body p {
  color: var(--color-support-white);
}
.gallery {
  padding: 2.5rem 0;
}
@media only screen and (min-width: 47.9375rem) {
  .gallery {
    padding: 3.5rem 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .gallery {
    padding: 5rem 0;
  }
}
.gallery .gallery--wrapper {
  position: relative;
}
@media only screen and (max-width: 47.875rem) {
  .gallery .gallery--wrapper {
    padding-bottom: 2.5rem;
  }
}
.gallery .gallery--slider.carousel {
  margin-left: -0.625rem;
}
.gallery .gallery--slider.carousel .slide {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
@media only screen and (max-width: 47.875rem) {
  .gallery .gallery--slider.carousel .slide {
    width: 68%;
  }
}
.gallery .section__title {
  padding-bottom: 1.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .gallery .section__title {
    padding-bottom: 2.5rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .gallery .section__title {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 2.5rem;
  }
}
.gallery .section__title h2 {
  margin: 0;
}
@media only screen and (max-width: 47.875rem) {
  .gallery .section__title h2 {
    font-size: 3rem;
  }
}
.gallery .section__title .gallery__desc {
  max-width: 32.5rem;
}
.gallery .link-chevron {
  font-size: 1rem;
  text-transform: uppercase;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.gallery .link-chevron .icon {
  width: 0.875rem;
  height: 0.875rem;
  margin-left: 0.25rem;
}
.gallery .gallery-card .gallery-card__image {
  display: block;
  width: 100%;
  border-radius: 1.5rem;
  overflow: hidden;
}
.gallery .btn--control-prev {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-left: -1.25rem;
  height: 3.5rem;
  display: none;
}
@media only screen and (min-width: 61.875rem) {
  .gallery .btn--control-prev {
    display: flex;
    margin-left: -1.75rem;
  }
}
.gallery .btn--control-prev.disabled {
  opacity: 0.4;
}
.gallery .btn--control-next {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-right: -1.25rem;
  height: 3.5rem;
  display: none;
}
@media only screen and (min-width: 61.875rem) {
  .gallery .btn--control-next {
    display: flex;
    margin-right: -2.25rem;
  }
}
.gallery .btn--control-next.disabled {
  opacity: 0.4;
}
.gallery .btn--control {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: var(--brand-tone-base);
  justify-content: center;
  align-items: center;
  border: none;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media only screen and (min-width: 47.9375rem) {
  .gallery .btn--control {
    width: 3.5rem;
    height: 3.5rem;
  }
}
@media (hover: hover) {
  .gallery .btn--control:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
}
.gallery-bg--beige {
  background-color: var(--brand-tone-light-1);
}
.gallery-bg--white {
  background-color: var(--color-support-white);
}
.account--wishlist {
  margin-bottom: 0;
}
@media only screen and (min-width: 47.9375rem) {
  .wishlist-container {
    padding: 5rem 0;
    background: linear-gradient(
      350deg,
      #f7ede6 9.18%,
      rgba(247, 237, 230, 0.4) 90.31%
    );
  }
}
.wishlist-container[data-item-count="loading"] .loading-spinner {
  display: flex;
  opacity: 1;
}
.wishlist-container .wishlist__add-all {
  margin: 0 auto;
  display: block;
}
.wishlist-container[data-item-count="0"] .wishlist__empty-message {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.wishlist-container[data-item-count="0"] .account-block--header {
  display: none;
}
.wishlist-container[data-available-count="0"] .wishlist__add-all-container,
.wishlist-container[data-available-count="1"] .wishlist__add-all-container,
.wishlist-container[data-item-count="0"] .wishlist__add-all-container,
.wishlist-container[data-item-count="1"] .wishlist__add-all-container,
.wishlist-container[data-available-count="loading"]
  .wishlist__add-all-container {
  display: none;
}
.wishlist-container .wishlist__add-all-container {
  margin-top: 4.375rem;
}
.wishlist-container .wishlist__empty-message {
  display: none;
}
.wishlist-container .loading-spinner {
  display: none;
  align-items: center;
  justify-content: center;
  opacity: 0;
}
.wishlist-container .loading-spinner span {
  margin-right: 1rem;
}
.wishlist-container .loading-spinner svg {
  width: 2rem;
  height: auto;
  transform: rotate(0deg);
}
.wishlist-container .product-card__size {
  margin-top: -0.5rem;
}
.wishlist__header {
  text-align: center;
  max-width: 21.5rem;
  margin: 0 auto 2.5rem;
}
.wishlist__items {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem 1rem;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 47.9375rem) {
  .wishlist__items {
    grid-template-columns: repeat(3, 1fr);
  }
}
.wishlist__item {
  display: none;
  flex-direction: column;
}
.wishlist__item.is-available,
.wishlist__item.is-unavailable {
  display: flex;
}
.wishlist__item .product-card {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.wishlist__item .product-card__meta {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.wishlist__item .product-card__size {
  margin: 0.625rem 0 1.25rem 0;
  grid-column: 1/-1;
}
.wishlist__addToCart {
  margin-top: auto;
}
.swym-button-bar,
#swym-plugin {
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
}
.cart__empty-links {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.5rem;
  list-style: none;
  padding: 0;
  margin: 0 auto 2rem;
  width: 100%;
  max-width: 16.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .wishlist-container-inner {
    display: grid;
    grid-template-columns: 1fr 3fr;
    gap: 0 5rem;
  }
}
.brands-header {
  padding: 1rem 0 5rem 0;
}
.brands-header .brands-header--inner {
  max-width: 43.75rem;
  margin: auto;
  text-align: center;
}
.brands-header .brands-header--inner .btn {
  margin: auto;
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
}
.brands-header .brands-header--inner video {
  border-radius: 1rem;
}
.collection-carousel {
  padding: 2.5rem 0;
  border-top: 1px solid var(--color-support-lighter-grey);
  overflow: hidden;
}
@media only screen and (min-width: 47.9375rem) {
  .collection-carousel {
    padding: 2.5rem 0 5rem 0;
  }
}
.collection-carousel .collection-carousel--wrapper {
  position: relative;
}
.collection-carousel .section__title {
  padding-bottom: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media only screen and (min-width: 47.9375rem) {
  .collection-carousel .section__title {
    padding-bottom: 2.5rem;
  }
}
.collection-carousel .section__title h2 {
  margin: 0;
}
.collection-carousel .link-chevron {
  font-size: 1rem;
  text-transform: uppercase;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
}
.collection-carousel .link-chevron::after {
  content: "";
  position: absolute;
  height: 1px;
  width: 0;
  bottom: -2px;
  left: 0;
  background: var(--color-support-black);
  transition: width var(--transition-duration) var(--transition-timing);
}
.collection-carousel .link-chevron:hover::after {
  width: 100%;
}
.collection-carousel .link-chevron .icon {
  width: 0.875rem;
  height: 0.875rem;
  margin-left: 0.25rem;
}
.collection-carousel .carousel-card {
  position: relative;
}
@media (hover: hover) {
  .collection-carousel .carousel-card:hover img {
    transform: scale(1.1);
  }
}
.collection-carousel .carousel-card a {
  display: block;
  border-radius: 16px;
  text-decoration: none;
}
.collection-carousel .carousel-card .carousel-card__image {
  display: block;
  width: 100%;
  border-radius: 1rem;
  overflow: hidden;
  position: relative;
}
.collection-carousel .carousel-card .carousel-card__image img {
  transition: transform var(--transition-duration) var(--transition-timing);
  aspect-ratio: 25/16;
  object-fit: cover;
}
.collection-carousel .carousel-card .carousel-card__title {
  display: flex;
  align-items: flex-end;
  width: 100%;
  padding: 1rem;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 39%, black 100%);
  height: 100%;
  border-radius: 16px;
  color: var(--color-support-white);
}
@media only screen and (max-width: 47.875rem) {
  .collection-carousel .carousel-card .carousel-card__title {
    font-size: 1.25rem;
  }
}
.collection-carousel .btn--control-prev {
  position: absolute;
  left: 0;
  top: 60%;
  margin-top: -1.875rem;
  transform: translateY(-50%);
  margin-left: -1.25rem;
  height: 3.5rem;
  display: none;
}
@media only screen and (min-width: 47.9375rem) {
  .collection-carousel .btn--control-prev {
    margin-left: -1.75rem;
    display: flex;
  }
}
.collection-carousel .btn--control-prev.disabled {
  opacity: 0.4;
}
.collection-carousel .btn--control-next {
  position: absolute;
  right: 0;
  top: 60%;
  margin-top: -1.875rem;
  transform: translateY(-50%);
  margin-right: -1.25rem;
  height: 3.5rem;
  display: none;
}
@media only screen and (min-width: 47.9375rem) {
  .collection-carousel .btn--control-next {
    margin-right: -1.75rem;
    display: flex;
  }
}
.collection-carousel .btn--control-next.disabled {
  opacity: 0.4;
}
.collection-carousel .btn--control {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: var(--brand-tone-base);
  justify-content: center;
  align-items: center;
  border: none;
  transition: box-shadow var(--transition-duration) var(--transition-timing);
}
@media only screen and (min-width: 47.9375rem) {
  .collection-carousel .btn--control {
    width: 3.5rem;
    height: 3.5rem;
  }
}
@media (hover: hover) {
  .collection-carousel .btn--control:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
}
.collection-carousel--slider.flex {
  display: flex !important;
}
.collection-carousel--slider .slide {
  width: 90%;
  padding-left: 1rem;
}
@media only screen and (min-width: 47.9375rem) and (max-width: 61.8125rem) {
  .collection-carousel--slider .slide.narrow {
    width: calc(100% / 4);
  }
}
.collections-featured {
  padding: 2.5rem 0;
  border-top: 1px solid var(--color-support-lighter-grey);
}
.collections-featured .collections-featured__wrapper {
  position: relative;
}
@media only screen and (min-width: 47.9375rem) {
  .collections-featured {
    padding: 3.5rem 0;
  }
}
@media only screen and (min-width: 61.875rem) {
  .collections-featured {
    padding: 5rem 0 2.5rem 0;
  }
}
.collections-featured .js-tablist {
  display: flex;
  justify-content: center;
  margin-bottom: 2.5rem;
  gap: 0 0.5rem;
}
.collections-featured .js-tablist .js-tablist__link {
  padding: 0.5rem 0.75rem;
  border-radius: 0.5rem;
  cursor: pointer;
  border: 1px solid transparent;
  white-space: nowrap;
}
@media (hover: hover) {
  .collections-featured .js-tablist .js-tablist__link:hover {
    border: 1px solid var(--color-support-black);
  }
}
.collections-featured .js-tablist .js-tablist__link[aria-selected="true"] {
  background-color: var(--brand-tone-base);
  border: 1px solid var(--brand-tone-base);
}
@media (hover: hover) {
  .collections-featured
    .js-tablist
    .js-tablist__link[aria-selected="true"]:hover {
    border: 1px solid var(--brand-tone-base);
  }
}
.collections-featured .collections-featured__slider.carousel {
  margin-left: -0.625rem;
  margin-right: -0.625rem;
}
@media only screen and (min-width: 47.9375rem) {
  .collections-featured .collections-featured__slider.carousel {
    padding-bottom: 70px;
  }
}
.collections-featured .collections-featured__slider.carousel .slide {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
@media only screen and (max-width: 47.875rem) {
  .collections-featured .collections-featured__slider.carousel .slide {
    width: 68%;
  }
}
.collections-featured .collections-featured__slider.flex {
  display: flex !important;
}
.collections-featured .collections-featured__cta {
  display: flex;
  justify-content: center;
  margin-top: 2.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .collections-featured .collections-featured__cta {
    margin-top: 5rem;
  }
}
.collections-featured .collections-featured__cta .btn {
  transition: box-shadow var(--transition-duration) var(--transition-timing);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (hover: hover) {
  .collections-featured .collections-featured__cta .btn:hover {
    box-shadow: 0px 8px 16px 0px rgba(83, 50, 1, 0.08);
  }
}
.collections-featured .btn--control-prev {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-left: -1.25rem;
  height: 3.5rem;
  display: none;
  z-index: 1;
}
@media only screen and (min-width: 61.875rem) {
  .collections-featured .btn--control-prev {
    display: flex;
    margin-left: -1.75rem;
  }
}
.collections-featured .btn--control-next {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-right: -1.25rem;
  height: 3.5rem;
  display: none;
  z-index: 1;
}
@media only screen and (min-width: 61.875rem) {
  .collections-featured .btn--control-next {
    display: flex;
    margin-right: -1.75rem;
  }
}
.collections-featured .btn--control {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: var(--brand-tone-base);
  justify-content: center;
  align-items: center;
  border: none;
}
@media only screen and (min-width: 47.9375rem) {
  .collections-featured .btn--control {
    width: 3.5rem;
    height: 3.5rem;
  }
}
.modal-js--open {
  overflow: hidden;
}
@media only screen and (min-width: 47.9375rem) {
  .modal-js--open.sort-menu-modal-js--open {
    overflow: revert;
  }
}
.modal {
  position: fixed;
  z-index: 999998;
  top: 0;
  left: 0;
  display: flex;
  width: 100%;
  height: 100%;
  overflow-y: auto;
}
.modal[aria-hidden="true"] {
  display: none;
}
.modal[hidden] {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.modal--sm,
.modal--md {
  padding: 1rem;
  background-color: var(--color-fade);
}
.modal__dialog {
  position: absolute;
  padding: 2.5rem;
  background-color: var(--color-support-white);
  min-height: 100%;
  width: 100%;
}
.modal--sm .modal__dialog,
.modal--md .modal__dialog {
  position: relative;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
    0 4px 6px -2px rgba(0, 0, 0, 0.1);
  min-height: auto;
  margin: auto;
}
.modal--sm .modal__dialog {
  max-width: 30rem;
}
.modal--md .modal__dialog {
  max-width: 48rem;
}
.modal__close-button {
  position: absolute;
  z-index: 2;
  top: 10px;
  right: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border: 0;
  line-height: 1;
  cursor: pointer;
  background-color: transparent;
  outline: 0;
  padding: 0;
}
.modal__close-button svg {
  width: 2rem;
  height: 2rem;
}
.modal__content {
  text-align: center;
}
.modal__content .btn {
  margin: auto;
}
.modal--currency {
  top: 100%;
  bottom: unset;
  left: 0;
  width: auto;
  height: unset;
  display: block;
  background-color: var(--color-support-white);
  position: absolute;
  overflow-y: inherit;
}
.modal--currency .currencies-list {
  padding: 0.5rem !important;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0;
  margin: 0;
  list-style: none;
}
.modal--currency .currencies-list li a {
  font-size: 0.75rem;
  line-height: 140%;
  padding: 0.25rem;
  border-radius: 0.25rem;
  text-decoration: none;
}
@media (hover: hover) {
  .modal--currency .currencies-list li a:hover {
    background-color: var(--color-support-lightest-grey);
  }
}
.modal--currency .modal__dialog {
  padding: 0;
  overflow: hidden;
  position: relative;
  border-radius: 0px 0px 8px 8px;
  box-shadow: 0px 8px 24px 0px rgba(83, 50, 1, 0.24);
}
.modal--currency .modal__close-button {
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
}
.modal--product-sizes,
.modal--wishlist {
  background-color: var(--color-popup-bg);
}
.modal--product-sizes .modal__dialog,
.modal--wishlist .modal__dialog {
  box-shadow: 0 4px 100px rgba(0, 0, 0, 0.1);
  min-height: unset !important;
  border-radius: 1.5rem;
}
.modal--product-sizes .modal__header,
.modal--wishlist .modal__header {
  text-align: center;
  margin-bottom: 2.5rem;
}
.modal--product-sizes .modal__header h5,
.modal--wishlist .modal__header h5 {
  margin-top: 0;
}
.modal--product-sizes.modal--visible .modal__dialog,
.modal--wishlist.modal--visible .modal__dialog {
  transform: translateY(0);
  transition: transform 0.3s var(--transition-timing-flick);
}
.modal--product-sizes [data-product-sizes],
.modal--wishlist [data-product-sizes] {
  width: 100%;
  padding: 1rem 0 2rem;
}
.modal--product-sizes .product-card__form,
.modal--wishlist .product-card__form {
  position: static;
}
.modal--wishlist .modal__dialog {
  position: relative;
  width: 100%;
  max-width: 400px;
  margin: auto;
}
.modal--wishlist select {
  width: 100%;
  border: 1px solid var(--color-support-black);
  display: none;
}
.modal--wishlist select,
.modal--wishlist .modal__meta {
  margin-bottom: 2rem;
}
.modal--sort-menu {
  background-color: var(--color-fade);
}
@media only screen and (min-width: 47.9375rem) {
  .modal--sort-menu {
    position: absolute;
    z-index: 98;
    top: 100%;
    right: 0;
    left: unset;
    height: unset;
    width: auto;
    display: block;
    background-color: transparent;
    max-height: calc(100vh - 56px);
    border: none;
  }
}
@media only screen and (max-width: 47.875rem) {
  .modal--sort-menu .modal__dialog {
    position: absolute;
    bottom: 0;
    width: 100%;
    min-height: 0;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    transform: translateY(100%);
    transition: transform 0.2s var(--transition-timing-flick);
    box-shadow: 0 4px 100px rgba(0, 0, 0, 0.1);
  }
}
@media only screen and (min-width: 47.9375rem) {
  .modal--sort-menu .modal__dialog {
    position: static;
    overflow: hidden;
    display: block;
    margin-right: auto;
    margin-left: auto;
    padding: 0;
    width: 100%;
    max-width: 94.5rem;
    border-radius: 0 0 4px 4px;
    border: 1px solid var(--color-grey-2);
  }
}
.modal--sort-menu .modal__header {
  justify-content: space-between;
  padding: 1rem 0 1rem 1rem;
}
.modal--sort-menu .modal__header h5 {
  font-weight: 500;
}
@media only screen and (min-width: 47.9375rem) {
  .modal--sort-menu .modal__header {
    display: none;
  }
}
.modal--sort-menu.modal--visible .modal__dialog {
  transform: translateY(0);
}
.search-modal__trigger {
  all: unset;
  display: inline-flex;
  align-items: center;
  padding: 0;
  cursor: pointer;
  background-color: transparent;
  outline: 0;
  border: 0;
  white-space: nowrap;
  color: var(--color-support-grey);
  font-size: 0.875rem;
  justify-content: space-between;
  width: 100%;
}
.search-modal__trigger .icon {
  width: 1rem;
  height: 1rem;
}
.search-modal__trigger-label {
  display: inline;
}
.search__form {
  position: relative;
  margin-bottom: 1.5rem;
}
.search__form .search-icon,
.search__form .search__clear,
.search__form .search__button {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
}
.search__input {
  width: 100%;
}
.search__suggestions {
  margin-bottom: 2rem;
}
.quick-search-results__grid--Products,
.quick-search-results__grid--Collections {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(2, 1fr);
}
@media only screen and (min-width: 47.9375rem) {
  .quick-search-results__grid--Products,
  .quick-search-results__grid--Collections {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (min-width: 61.875rem) {
  .quick-search-results__grid--Products,
  .quick-search-results__grid--Collections {
    grid-template-columns: repeat(4, 1fr);
  }
}
.quick-search-results__grid--Articles {
  display: grid;
  gap: 1.5rem;
}
@media only screen and (min-width: 47.9375rem) {
  .quick-search-results__grid--Articles {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (min-width: 61.875rem) {
  .quick-search-results__grid--Articles {
    grid-template-columns: repeat(3, 1fr);
  }
}
.search-results__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  grid-auto-flow: dense;
}
@media only screen and (min-width: 47.9375rem) {
  .search-results__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.no-results {
  max-width: 740px;
  margin: auto;
  text-align: center;
  padding: 80px 0;
}
.no-results-container {
  padding: 80px 40px;
  background-color: var(--color-support-lightest-grey);
  border-radius: 1rem;
  text-align: center;
  margin-top: 2.5rem;
}
.template-search {
  background: linear-gradient(
    350deg,
    rgba(247, 237, 230, 0.4) 9.18%,
    #f7ede6 90.31%
  );
}
.template-search .main-collection--grid {
  padding: 0 0 2.5rem 0;
}
.template-search .main-collection--grid .collection-filter__toggle {
  border-radius: 12.5rem;
  border: 1px solid var(--color-support-light-grey);
  padding: 0.25rem 0.75rem;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 160%;
  background-color: transparent;
  text-transform: uppercase;
}
@media only screen and (min-width: 47.9375rem) {
  .template-search .main-collection--grid {
    display: grid;
    grid-template-columns: 1fr 3fr;
    padding: 5rem 0;
    gap: 0 3.4375rem;
  }
  .template-search .main-collection--grid .collection-filter__toggle {
    display: none;
  }
}
.template-search .listing-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 47.875rem) {
  .template-search .listing-header {
    padding: 0 1rem;
    margin-top: 1rem;
  }
}
.template-search .listing-header .product-count {
  color: var(--color-support-grey);
}
@media only screen and (max-width: 47.875rem) {
  .template-search .main-collection--aside {
    padding-top: 2.5rem;
  }
}
@media only screen and (min-width: 47.9375rem) {
  .template-search .mobile-filters {
    display: none;
  }
}
.template-search .mobile-filters__wrapper {
  padding: 1rem 1rem 1.5rem 1rem;
  border-bottom: 1px solid var(--color-support-black);
}
.template-search .mobile-filters__wrapper .active-filters--wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding-bottom: 0.75rem;
}
.template-search .mobile-filters__wrapper .active-filters--wrapper a {
  background-color: var(--color-support-black);
  color: var(--color-support-white);
  font-size: 0.875rem;
  padding: 0.5rem 0.75rem;
  border-radius: 0.5rem;
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  display: inline-flex;
}
.template-search .mobile-filters__wrapper .active-filters--wrapper a .icon {
  width: 1.25rem;
  height: 1.25rem;
}
.template-search .mobile-filters__wrapper .clear_all {
  display: block;
  color: var(--color-signal-error);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 140%;
  text-decoration: none;
  text-transform: uppercase;
  padding: 0.5rem 0;
}
.side-cart {
  position: fixed;
  right: -100%;
  top: 0;
  bottom: 0;
  z-index: 115;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 100%;
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  transition: transform 0.2s;
  transition-timing-function: var(--transition-timing-flick);
  transform: translateX(38.125rem);
  background-color: var(--color-support-white);
}
@media screen and (min-width: 38.125rem) {
  .side-cart {
    right: -38.125rem;
    width: 38.125rem;
  }
}
.cart-is-visible .side-cart {
  transform: translateX(-100%);
}
@media screen and (min-width: 38.125rem) {
  .cart-is-visible .side-cart {
    transform: translateX(-38.125rem);
  }
}
.side-cart__app {
  position: relative;
  background-color: var(--color-support-white);
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.cart-is-visible {
  overflow: hidden;
}
.cart-is-visible .fader--cart {
  opacity: 1;
  visibility: visible;
}
.side-cart__header {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  padding: 1rem;
}
@media only screen and (min-width: 61.875rem) {
  .side-cart__header {
    padding: 1rem 2.5rem;
  }
}
.side-cart__header .side-cart__title {
  margin: 0;
  position: relative;
}
.side-cart__header .side-cart__title .total-count {
  position: absolute;
  top: 0.3125rem;
  right: -1.5625rem;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 200px;
  background-color: var(--color-signal-error);
  color: var(--color-support-white);
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 61.875rem) {
  .side-cart__header .side-cart__title .total-count {
    right: -1.25rem;
  }
}
.side-cart__header.cart-page {
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
}
@media only screen and (min-width: 61.875rem) {
  .side-cart__header.cart-page {
    padding: 1rem 0;
  }
}
.side-cart__close {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-support-black);
}
@media (hover: hover) {
  .side-cart__close:hover {
    cursor: pointer;
  }
}
.side-cart__close svg {
  width: 2.5rem;
  height: 2.5rem;
  pointer-events: none;
}
.cart-item__title {
  color: var(--color-support-black);
}
.cart-item__description {
  color: var(--color-support-black);
  padding-top: 0;
}
.cart-item__details {
  padding: 0.625rem 0;
  display: flex;
}
.cart-item__details s {
  color: var(--color-support-grey);
}
.cart-item__details .cart-item__discounted-price {
  margin-left: 0.5rem;
}
.cart-item__details .cart-item__price {
  margin-left: 1.5rem;
}
.cart-item__details .item-percent-saved {
  color: var(--color-signal-error);
  padding-left: 0.5rem;
  display: none;
}
.side-cart__items-total {
  display: flex;
  align-items: center;
  font-size: 0.875rem;
}
.side-cart__items-total svg {
  margin-right: 0.3125rem;
}
.side-cart__free-shipping {
  width: 100%;
  text-align: left;
  font-size: 0.75rem;
  background-color: var(--brand-tone-light-1);
  padding: 0 1rem;
  padding-bottom: 0.75rem;
  padding-top: 0.5rem;
}
@media only screen and (min-width: 61.875rem) {
  .side-cart__free-shipping {
    padding: 0 2.5rem;
    padding-bottom: 0.75rem;
    padding-top: 0.5rem;
  }
}
.side-cart__free-shipping p {
  margin: 0;
  color: var(--color-support-black);
  margin-bottom: 0.625rem;
  display: flex;
  justify-content: space-between;
}
.side-cart__free-shipping .side-cart__progress {
  height: 0.1875rem;
  background-color: var(--color-support-white);
}
.side-cart__free-shipping .side-cart__progress-bar {
  height: 0.1875rem;
  background-color: var(--color-support-black);
  transition: width 0.3s ease-out;
}
.side-cart__content-container {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.side-cart__content {
  flex: 1;
  overflow: auto;
  padding: 0 1rem;
}
@media only screen and (min-width: 61.875rem) {
  .side-cart__content {
    padding: 0 2.5rem;
  }
}
.side-cart__totals {
  position: sticky;
  bottom: 0;
  width: 100%;
  padding: 1rem;
  background-color: var(--brand-tone-light-1);
}
@media only screen and (min-width: 61.875rem) {
  .side-cart__totals {
    padding: 1rem 2.5rem 1.5rem 2.5rem;
  }
}
.side-cart__totals .btn {
  width: 100%;
}
.side-cart__subtotal {
  display: flex;
  justify-content: space-between;
  align-items: top;
  padding: 0 0 1rem 0;
}
.side-cart__subtotal .h6 {
  margin-bottom: 0;
}
.side-cart__subtotal .cart-total {
  margin-bottom: 0;
}
.side-cart__subtotal:last-child {
  border-bottom: none;
}
.side-cart__subtotal span {
  display: block;
}
.side-cart__empty {
  width: 100%;
  text-align: center;
  padding: 5rem 2.5rem;
  background-color: var(--color-support-lightest-grey);
  border-radius: 1rem;
  margin-top: 4.375rem;
}
.side-cart__empty a {
  margin: auto;
  margin-top: 1.5rem;
  margin-bottom: 1rem;
}
.side-cart__payment-icons {
  min-height: 3rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.side-cart__payment-icons span {
  display: flex;
  align-items: center;
}
.side-cart__payment-icons svg {
  fill: var(--color-support-black);
  height: 0.9375rem;
}
@media only screen and (min-width: 47.9375rem) {
  .side-cart__payment-icons {
    display: none;
  }
}
.side-cart__error-message {
  padding: 1rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  background-color: var(--color-signal-error);
  color: var(--color-support-white);
  margin: 1rem 0;
}
.side-cart__error-message .btn {
  margin-left: 1rem;
}
.side-cart__checkout .side-cart__checkout-cartlink {
  padding: 0.5rem 0 0 0;
  display: flex;
  justify-content: space-between;
}
.side-cart__checkout .side-cart__checkout-cartlink.cartpage {
  justify-content: center;
  padding-top: 1.5rem;
}
.side-cart__checkout .side-cart__checkout-cartlink a {
  text-decoration: none;
  position: relative;
}
.side-cart__checkout .side-cart__checkout-cartlink a .icon {
  width: 0.75rem;
  height: 0.75rem;
  margin-right: 0.25rem;
}
.side-cart__checkout .side-cart__checkout-cartlink a::after {
  content: "";
  position: absolute;
  height: 1px;
  width: 0;
  bottom: -2px;
  left: 0;
  background: var(--color-support-black);
  transition: width var(--transition-duration) var(--transition-timing);
}
.side-cart__checkout .side-cart__checkout-cartlink a:hover::after {
  width: 100%;
}
.template-cart .side-cart__free-shipping {
  background-color: transparent;
  padding-left: 0;
  padding-right: 0;
  max-width: 33.125rem;
  margin-bottom: 2.5rem;
}
@media only screen and (min-width: 61.875rem) {
  .template-cart .side-cart__free-shipping {
    margin-bottom: 5rem;
  }
}
.template-cart .side-cart__free-shipping .side-cart__progress {
  background-color: var(--color-support-lighter-grey);
}
.template-cart .side-cart__totals {
  position: relative;
}
@media only screen and (max-width: 61.8125rem) {
  .template-cart .side-cart__totals {
    margin-top: 2.5rem;
  }
}
@media only screen and (min-width: 61.875rem) {
  .template-cart .side-cart__content-container {
    display: grid;
    grid-template-columns: 1.8fr 1fr;
    gap: 0 3.75rem;
  }
}
@media only screen and (min-width: 87.5rem) {
  .template-cart .side-cart__content-container {
    gap: 0 6.25rem;
  }
}
.template-cart .side-cart__content-container .side-cart__content {
  padding: 0;
}
.template-cart .cart-item__title {
  font-size: 1rem;
}
@media only screen and (min-width: 61.875rem) {
  .template-cart .cart-item__title {
    font-size: 1.25rem;
    max-width: 25.625rem;
  }
}
.template-cart .cart-item__details {
  font-size: 0.875rem;
  padding-bottom: 0.625rem;
}
@media only screen and (min-width: 61.875rem) {
  .template-cart .cart-item__details {
    font-size: 1.125rem;
  }
}
.template-cart .cart-item__content--end p.s1,
.template-cart .cart-item__content--end p.s1-regular,
.template-cart .cart-item__content--end p.s1-semi-bold,
.template-cart .cart-item__content--end p.accordion__trigger,
.template-cart
  .cart-item__content--end
  .collection-carousel
  .carousel-card
  p.carousel-card__title,
.collection-carousel
  .carousel-card
  .template-cart
  .cart-item__content--end
  p.carousel-card__title,
.template-cart .cart-item__content--end .side-cart__subtotal p.cart-total,
.side-cart__subtotal .template-cart .cart-item__content--end p.cart-total {
  color: var(--color-support-black);
}
.template-cart .cart-item:first-of-type {
  border-top: 1px solid var(--color-support-lighter-grey);
}
.template-cart .side-cart__totals {
  background-color: var(--color-support-white);
  padding: 0;
}
.template-cart .side-cart__totals .side-cart__totals-inner {
  background-color: var(--brand-tone-light-1);
  align-self: start;
  border-radius: 1rem;
}
@media only screen and (min-width: 47.9375rem) {
  .template-cart .side-cart__totals .side-cart__totals-inner .btn {
    font-size: 0.9375rem;
  }
}
@media only screen and (min-width: 87.5rem) {
  .template-cart .side-cart__totals .side-cart__totals-inner .btn {
    font-size: 1.125rem;
  }
}
.template-cart .side-cart__totals .side-cart__totals-title {
  margin-bottom: 2.5rem;
}
.template-cart .side-cart_basket-details {
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--color-support-black);
  margin-bottom: 1rem;
}
.template-cart .side-cart_basket-details .detail-line {
  display: flex;
  justify-content: space-between;
  padding-bottom: 1rem;
}
.template-cart .side-cart_basket-details .detail-line:last-of-type {
  padding-bottom: 0;
}
.template-cart .tax-msge {
  padding: 0.5rem 0 1rem 0;
  font-size: 0.875rem;
}
.cart-payment-options {
  margin-top: 2.5rem;
  text-align: center;
}
.cart-payment-options .payment-icons {
  margin-top: 0.3125rem;
  margin-bottom: 1.25rem;
}
.cart-payment-options .link--chevron {
  position: relative;
}
.cart-payment-options .link--chevron::after {
  content: "";
  position: absolute;
  height: 1px;
  width: 0;
  bottom: -2px;
  left: 0;
  background: var(--color-support-black);
  transition: width var(--transition-duration) var(--transition-timing);
}
.cart-payment-options .link--chevron:hover::after {
  width: 100%;
}
.cart-payment-options .link--chevron span {
  border-bottom: none;
}
.total-count-cartpage {
  display: inline-flex;
  padding-left: 0.625rem;
}
.cart-page-template {
  padding: 1.5rem 0 2.5rem;
}
@media only screen and (min-width: 61.875rem) {
  .cart-page-template {
    padding: 1.5rem 0 7.8125rem;
  }
}
.template-cart .side-cart__totals .side-cart__totals-inner {
  padding: 1rem;
}
@media only screen and (min-width: 87.5rem) {
  .template-cart .side-cart__totals .side-cart__totals-inner {
    padding: 2.5rem;
  }
}
.template-cart .side-cart__empty {
  margin-top: 0;
}
.cart-item {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  padding: 1rem 0;
  border-bottom: 1px solid var(--color-support-lighter-grey);
}
.cart-item:last-child {
  border-bottom: none;
}
@media only screen and (min-width: 61.875rem) {
  .cart-item {
    padding: 2.5rem 0;
  }
}
.cart-item__content-wrapper {
  display: flex;
}
.cart-item__image {
  max-width: 5.625rem;
  width: 100%;
  background-color: var(--color-support-white);
  margin-right: 0.5rem;
  border-radius: 1rem;
}
@media only screen and (min-width: 61.875rem) {
  .cart-item__image {
    max-width: 7.875rem;
  }
}
.cart-item__image img {
  display: block;
  width: 100%;
}
.cart-item__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
}
.cart-item__content.cart-item__content--end {
  align-items: flex-end;
}
.cart-item__content p {
  margin: 0;
  line-height: 1.3;
}
.cart-item__content .cart-item__quantity-selector {
  margin-top: 0.25rem;
}
.cart-item__content .quantity-selector {
  border: 1px solid var(--color-support-black);
  border-radius: 200px;
  width: 6.25rem;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  height: 2.3125rem;
}
.cart-item__content .quantity-selector input[type="number"] {
  outline: none;
  -webkit-appearance: none;
  text-align: center;
  width: 1.875rem;
  padding: 0;
  border: none;
}
.cart-item__content .quantity-selector input::-webkit-outer-spin-button,
.cart-item__content .quantity-selector input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.cart-item__remove {
  width: 32px;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--color-signal-error);
}
@media (hover: hover) {
  .cart-item__remove:hover {
    cursor: pointer;
  }
}
.cart-item__remove svg {
  width: 1.5rem;
  height: 1.5rem;
  pointer-events: none;
}

/* ================== Badge Overlay CSS ========================*/
.badge-overlay {
  position: absolute;
  left: 0%;
  top: 0px;
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
  z-index: 1;
  -webkit-transition: width 1s ease, height 1s ease;
  -moz-transition: width 1s ease, height 1s ease;
  -o-transition: width 1s ease, height 1s ease;
  transition: width 0.4s ease, height 0.4s ease;
}

/* ================== Badge CSS ========================*/
.badge {
  margin: 0;
  padding: 0;
  color: white;
  padding: 10px 10px;
  font-size: 14px;
  font-family: Arial, Helvetica, sans-serif;
  text-align: center;
  line-height: normal;
  background: #ed1b24;
}

.badge::before,
.badge::after {
  content: "";
  position: absolute;
  top: 0;
  margin: 0 -1px;
  width: 100%;
  height: 100%;
  background: inherit;
  min-width: 55px;
}

.badge::before {
  right: 100%;
}

.badge::after {
  left: 100%;
}

/* ================== Badge Position CSS ========================*/
.top-left {
  position: absolute;
  top: 0;
  left: 0;
  -ms-transform: translateX(-30%) translateY(0%) rotate(-45deg);
  -webkit-transform: translateX(-30%) translateY(0%) rotate(-45deg);
  transform: translateX(-30%) translateY(0%) rotate(-45deg);
  -ms-transform-origin: top right;
  -webkit-transform-origin: top right;
  transform-origin: top right;
}

.top-right {
  position: absolute;
  top: 0;
  right: 0;
  -ms-transform: translateX(30%) translateY(0%) rotate(45deg);
  -webkit-transform: translateX(30%) translateY(0%) rotate(45deg);
  transform: translateX(30%) translateY(0%) rotate(45deg);
  -ms-transform-origin: top left;
  -webkit-transform-origin: top left;
  transform-origin: top left;
}

.bottom-left {
  position: absolute;
  bottom: 0;
  left: 0;
  -ms-transform: translateX(-30%) translateY(0%) rotate(45deg);
  -webkit-transform: translateX(-30%) translateY(0%) rotate(45deg);
  transform: translateX(-30%) translateY(0%) rotate(45deg);
  -ms-transform-origin: bottom right;
  -webkit-transform-origin: bottom right;
  transform-origin: bottom right;
}

.bottom-right {
  position: absolute;
  bottom: 0;
  right: 0;
  -ms-transform: translateX(30%) translateY(0%) rotate(-45deg);
  -webkit-transform: translateX(30%) translateY(0%) rotate(-45deg);
  transform: translateX(30%) translateY(0%) rotate(-45deg);
  -ms-transform-origin: bottom left;
  -webkit-transform-origin: bottom left;
  transform-origin: bottom left;
}

.top-full {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
}

.middle-full {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  text-align: center;
  -ms-transform: translateX(0%) translateY(-50%) rotate(0deg);
  -webkit-transform: translateX(0%) translateY(-50%) rotate(0deg);
  transform: translateX(0%) translateY(-50%) rotate(0deg);
}

.bottom-full {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
}

/* ================== Badge color CSS ========================*/
.badge.red {
  background: #ed1b24;
}

.badge.orange {
  background: #fa7901;
}

.badge.pink {
  background: #ee2b8b;
}

.badge.blue {
  background: #00adee;
}

.badge.green {
  background: #b4bd00;
}

.lowest-price__label {
    font-size: 16px; 
    color: #000000; 
    opacity: 0.7; 
    padding-bottom: 20px;
}

/**/
