/** Shopify CDN: Minification failed

Line 20774:12 Expected "*/" to terminate multi-line comment

**/
@font-face {
  font-family: 'Perfectly Nineties';
  src: url("https://cdn.shopify.com/s/files/1/2790/0342/files/PerfectlyNineties-Extralight.woff2?v=1726153541") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/2790/0342/files/PerfectlyNineties-Extralight.woff?v=1726153542") format("woff");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Perfectly Nineties';
  src: url("https://cdn.shopify.com/s/files/1/2790/0342/files/PerfectlyNineties-ExtralightItalic.woff2?v=1726153541") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/2790/0342/files/PerfectlyNineties-ExtralightItalic.woff?v=1726153542") format("woff");
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Perfectly Nineties';
  src: url("https://cdn.shopify.com/s/files/1/2790/0342/files/PerfectlyNineties-Regular.woff2?v=1726147973") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/2790/0342/files/PerfectlyNineties-Regular.woff?v=1726092258") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Perfectly Nineties';
  src: url("https://cdn.shopify.com/s/files/1/2790/0342/files/PerfectlyNineties-Italic.woff2?v=1726147973") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/2790/0342/files/PerfectlyNineties-Italic.woff?v=1726092258") format("woff");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Essential Sans';
  src: url("https://cdn.shopify.com/s/files/1/2790/0342/files/EssentialSans-Regular.woff2?v=1726154465") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/2790/0342/files/EssentialSans-Regular.woff?v=1726154465") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Essential Sans';
  src: url("https://cdn.shopify.com/s/files/1/2790/0342/files/EssentialSans-Bold.woff2?v=1726154465") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/2790/0342/files/EssentialSans-Bold.woff?v=1726154465") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Essential Sans';
  src: url("https://cdn.shopify.com/s/files/1/2790/0342/files/EssentialSans-Medium.woff2?v=1726154465") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/2790/0342/files/EssentialSans-Medium.woff?v=1726154465") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}


/*#region Table of Contents */
/* T A B L E   O F   C O N T E N T S
 * ----------------------------------------------------------------------------
 * 1.0 HTML Element Resets/Settings
 * 1.1 Animation Keyframes
 * 1.2 Forms
 * ----
 * 2.0 Handy Classes
 * 2.1 Buttons & Links
 * ----
 * 3.0 Prose
 * 3.1 Prose + Handy Classes
 * ----
 * 4.0 Sections
 * 4.1 Before/After
 * 4.2 Brand Switcher Bar
 * 4.3 Brand Link Bar
 * 4.4 Slideshow
 * ----
 * 5.0 Blocks
 * 5.1 Content Over Media
 * 5.2 Image (Desktop, Mobile, Charts)
 * ----
 * 6.0 Components
 * 6.1 Pagination
 * 6.2 Announcement Bar & Banners
 * ----
 * 7.0 Integrations
 * 7.1 LangShop
 * ---
 * 8.0 Product page custom styles
 * 8.1 Icons
 * 8.2 Blocks
 * ----
 **/
/*#endregion*/


/*#region 1.0 HTML Element Resets/Settings*/

*,
:before,
:after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
  border-color: rgb(var(--border-color));
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html {
  -webkit-text-size-adjust: 100%;
  -moz-tab-size: 4;
  tab-size: 4;
  scroll-padding-top: var(--sticky-area-height);
  line-height: 1.5;
}

body {
  background: rgb(var(--page-background));
  font: var(--text-font-style) var(--text-font-weight) var(--text-base) / 1.65 var(--text-font-family);
  letter-spacing: var(--text-letter-spacing);
  margin: 0;
  position: relative;
}

hr {
  color: inherit;
  border-top-width: 1px;
  height: 0;
}

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

b,
strong {
  font-weight: bolder;
}

.font-bold {
  font-weight: 700 !important;
}

sup {
  font-size: 50%;
}

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
  font-size: 1em;
}

table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  font-weight: inherit;
  font-style: inherit;
  line-height: inherit;
  text-transform: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}

input[type="submit"] {
  cursor: pointer;
}

button,
select {
  text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  background-color: #0000;
  background-image: none;
}

button,
label,
summary,
[role="button"],
[type="checkbox"],
[type="radio"] {
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
  cursor: pointer;
}


:-moz-focusring {
  outline: auto;
}

:-moz-ui-invalid {
  box-shadow: none;
}

::-webkit-inner-spin-button {
  height: auto;
}

::-webkit-outer-spin-button {
  height: auto;
}

::-webkit-date-and-time-value {
  text-align: start;
}

[type="date"] {
  min-height: 3rem;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

summary {
  list-style-type: none;
}

summary::-webkit-details-marker {
  display: none;
}

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ul,
ol,
menu {
  margin: 0;
  padding: 0;
}

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

textarea {
  resize: vertical;
}

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

:disabled {
  cursor: default !important;
}

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  vertical-align: middle;
  display: block;
}

img {
  color: #0000;
  max-width: 100%;
  height: auto;
}

[role="img"] svg {
  display: initial;
}

picture source {
  display: contents;
}

video {
  max-width: 100%;
  height: auto;
}

:focus:not(:focus-visible) {
  outline: none;
}

[hidden] {
  display: none !important;
}

ol {
  margin-inline-start: 2ch;
}

ul {
  margin-inline-start: 1em;
}

table {
  --table-cell-padding-block: .75rem;
  --table-cell-padding-inline: .5rem;
  --table-foot-cell-padding-block: .75rem;
  --table-foot-cell-padding-inline: .5rem;
  width: 100%;
}

th {
  text-align: start;
}

:where(td, th):not(:empty) {
  border-block-width: 1px;
}

:where(th):not(:empty) {
  border-block-start-width: 0;
}

td:not(:empty) + td {
  border-inline-start-width: 1px;
}

th,
td {
  padding: var(--table-cell-padding-block) var(--table-cell-padding-inline);
  word-wrap: normal;
}

:is(th, td):last-child {
  padding-inline-end: 0;
}

th {
  opacity: .6;
  line-height: 1.7;
  font-size: var(--text-h6);
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  letter-spacing: var(--heading-letter-spacing);
  text-transform: var(--heading-text-transform);
  padding-block: 0 .625rem;
}

tfoot td {
  padding: var(--table-foot-cell-padding-block) var(--table-foot-cell-padding-inline);
}

/*#endregion*/

/*#region 1.1 Animation Keyframes*/

@keyframes animateIconInline {
  0% {
    opacity: 1;
    transform: translateX(0%);
  }

  50% {
    opacity: 0;
    transform: translateX(100%);
  }

  51% {
    opacity: 0;
    transform: translateX(-100%);
  }

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

@keyframes animateIconBlock {
  0% {
    opacity: 1;
    transform: translateY(0%);
  }

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

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

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

@keyframes animateCircularProgress {
  from {
    stroke-dashoffset: var(--stroke-dasharray);
  }

  to {
    stroke-dashoffset: 0;
  }
}

@keyframes ping {
  from {
    transform: scale(1);
  }

  to {
    transform: scale(.8);
  }
}

@-webkit-keyframes shareItemAnimation {
  0% {
    transform: translateY(0%);
  }

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

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

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

@keyframes shareItemAnimation {
  0% {
    transform: translateY(0%);
  }

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

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

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

@-webkit-keyframes shopTheLookDotKeyframe {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.05);
  }

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

@keyframes shopTheLookDotKeyframe {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.05);
  }

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


@-webkit-keyframes blinkingText {
  0% {
    color: transparent;
  }

  49% {
    color: {
        {
        block.settings.text_color
      }
    }

    ;
  }

  60% {
    color: {
        {
        block.settings.text_color
      }
    }

    ;
  }

  99% {
    color: {
        {
        block.settings.text_color
      }
    }

    ;
  }

  100% {
    color: {
        {
        block.settings.text_color
      }
    }

    ;
  }
}


@keyframes blinkingText {
  0% {
    color: transparent;
  }

  49% {
    color: {
        {
        block.settings.text_color
      }
    }

    ;
  }

  60% {
    color: {
        {
        block.settings.text_color
      }
    }

    ;
  }

  99% {
    color: {
        {
        block.settings.text_color
      }
    }

    ;
  }

  100% {
    color: {
        {
        block.settings.text_color
      }
    }

    ;
  }
}

@-webkit-keyframes slide-in-bck-center {
  0% {
    -webkit-transform: translateZ(600px);
    transform: translateZ(600px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    opacity: 1;
  }
}

@keyframes slide-in-bck-center {
  0% {
    -webkit-transform: translateZ(600px);
    transform: translateZ(600px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    opacity: 1;
  }
}

@-webkit-keyframes text-pop-up-top {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    text-shadow: none;
  }

  100% {
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    text-shadow: 0 1px 0 #cccccc, 0 2px 0 #cccccc, 0 3px 0 #cccccc, 0 4px 0 #cccccc, 0 5px 0 #cccccc, 0 6px 0 #cccccc, 0 7px 0 #cccccc, 0 8px 0 #cccccc, 0 9px 0 #cccccc, 0 50px 30px rgba(0, 0, 0, 0.3);
  }
}

@keyframes text-pop-up-top {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    text-shadow: none;
  }

  100% {
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    text-shadow: 0 1px 0 #cccccc, 0 2px 0 #cccccc, 0 3px 0 #cccccc, 0 4px 0 #cccccc, 0 5px 0 #cccccc, 0 6px 0 #cccccc, 0 7px 0 #cccccc, 0 8px 0 #cccccc, 0 9px 0 #cccccc, 0 50px 30px rgba(0, 0, 0, 0.3);
  }
}

@-webkit-keyframes scale-up-center {
  0% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
  }

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

@keyframes scale-up-center {
  0% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
  }

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

@-webkit-keyframes text-flicker-in-glow {
  0% {
    opacity: 0;
  }

  10% {
    opacity: 0;
    text-shadow: none;
  }

  10.1% {
    opacity: 1;
    text-shadow: none;
  }

  10.2% {
    opacity: 0;
    text-shadow: none;
  }

  20% {
    opacity: 0;
    text-shadow: none;
  }

  20.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.25);
  }

  20.6% {
    opacity: 0;
    text-shadow: none;
  }

  30% {
    opacity: 0;
    text-shadow: none;
  }

  30.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.45), 0 0 60px rgba(255, 255, 255, 0.25);
  }

  30.5% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.45), 0 0 60px rgba(255, 255, 255, 0.25);
  }

  30.6% {
    opacity: 0;
    text-shadow: none;
  }

  45% {
    opacity: 0;
    text-shadow: none;
  }

  45.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.45), 0 0 60px rgba(255, 255, 255, 0.25);
  }

  50% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.45), 0 0 60px rgba(255, 255, 255, 0.25);
  }

  55% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.45), 0 0 60px rgba(255, 255, 255, 0.25);
  }

  55.1% {
    opacity: 0;
    text-shadow: none;
  }

  57% {
    opacity: 0;
    text-shadow: none;
  }

  57.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.55), 0 0 60px rgba(255, 255, 255, 0.35);
  }

  60% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.55), 0 0 60px rgba(255, 255, 255, 0.35);
  }

  60.1% {
    opacity: 0;
    text-shadow: none;
  }

  65% {
    opacity: 0;
    text-shadow: none;
  }

  65.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.55), 0 0 60px rgba(255, 255, 255, 0.35), 0 0 100px rgba(255, 255, 255, 0.1);
  }

  75% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.55), 0 0 60px rgba(255, 255, 255, 0.35), 0 0 100px rgba(255, 255, 255, 0.1);
  }

  75.1% {
    opacity: 0;
    text-shadow: none;
  }

  77% {
    opacity: 0;
    text-shadow: none;
  }

  77.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.55), 0 0 60px rgba(255, 255, 255, 0.4), 0 0 110px rgba(255, 255, 255, 0.2), 0 0 100px rgba(255, 255, 255, 0.1);
  }

  85% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.55), 0 0 60px rgba(255, 255, 255, 0.4), 0 0 110px rgba(255, 255, 255, 0.2), 0 0 100px rgba(255, 255, 255, 0.1);
  }

  85.1% {
    opacity: 0;
    text-shadow: none;
  }

  86% {
    opacity: 0;
    text-shadow: none;
  }

  86.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.6), 0 0 60px rgba(255, 255, 255, 0.45), 0 0 110px rgba(255, 255, 255, 0.25), 0 0 100px rgba(255, 255, 255, 0.1);
  }

  100% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.6), 0 0 60px rgba(255, 255, 255, 0.45), 0 0 110px rgba(255, 255, 255, 0.25), 0 0 100px rgba(255, 255, 255, 0.1);
  }
}

@keyframes text-flicker-in-glow {
  0% {
    opacity: 0;
  }

  10% {
    opacity: 0;
    text-shadow: none;
  }

  10.1% {
    opacity: 1;
    text-shadow: none;
  }

  10.2% {
    opacity: 0;
    text-shadow: none;
  }

  20% {
    opacity: 0;
    text-shadow: none;
  }

  20.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.25);
  }

  20.6% {
    opacity: 0;
    text-shadow: none;
  }

  30% {
    opacity: 0;
    text-shadow: none;
  }

  30.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.45), 0 0 60px rgba(255, 255, 255, 0.25);
  }

  30.5% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.45), 0 0 60px rgba(255, 255, 255, 0.25);
  }

  30.6% {
    opacity: 0;
    text-shadow: none;
  }

  45% {
    opacity: 0;
    text-shadow: none;
  }

  45.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.45), 0 0 60px rgba(255, 255, 255, 0.25);
  }

  50% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.45), 0 0 60px rgba(255, 255, 255, 0.25);
  }

  55% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.45), 0 0 60px rgba(255, 255, 255, 0.25);
  }

  55.1% {
    opacity: 0;
    text-shadow: none;
  }

  57% {
    opacity: 0;
    text-shadow: none;
  }

  57.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.55), 0 0 60px rgba(255, 255, 255, 0.35);
  }

  60% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.55), 0 0 60px rgba(255, 255, 255, 0.35);
  }

  60.1% {
    opacity: 0;
    text-shadow: none;
  }

  65% {
    opacity: 0;
    text-shadow: none;
  }

  65.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.55), 0 0 60px rgba(255, 255, 255, 0.35), 0 0 100px rgba(255, 255, 255, 0.1);
  }

  75% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.55), 0 0 60px rgba(255, 255, 255, 0.35), 0 0 100px rgba(255, 255, 255, 0.1);
  }

  75.1% {
    opacity: 0;
    text-shadow: none;
  }

  77% {
    opacity: 0;
    text-shadow: none;
  }

  77.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.55), 0 0 60px rgba(255, 255, 255, 0.4), 0 0 110px rgba(255, 255, 255, 0.2), 0 0 100px rgba(255, 255, 255, 0.1);
  }

  85% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.55), 0 0 60px rgba(255, 255, 255, 0.4), 0 0 110px rgba(255, 255, 255, 0.2), 0 0 100px rgba(255, 255, 255, 0.1);
  }

  85.1% {
    opacity: 0;
    text-shadow: none;
  }

  86% {
    opacity: 0;
    text-shadow: none;
  }

  86.1% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.6), 0 0 60px rgba(255, 255, 255, 0.45), 0 0 110px rgba(255, 255, 255, 0.25), 0 0 100px rgba(255, 255, 255, 0.1);
  }

  100% {
    opacity: 1;
    text-shadow: 0 0 30px rgba(255, 255, 255, 0.6), 0 0 60px rgba(255, 255, 255, 0.45), 0 0 110px rgba(255, 255, 255, 0.25), 0 0 100px rgba(255, 255, 255, 0.1);
  }
}

@-webkit-keyframes text-focus-in {
  0% {
    -webkit-filter: blur(12px);
    filter: blur(12px);
    opacity: 0;
  }

  100% {
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 1;
  }
}

@keyframes text-focus-in {
  0% {
    -webkit-filter: blur(12px);
    filter: blur(12px);
    opacity: 0;
  }

  100% {
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 1;
  }
}

@-webkit-keyframes text-focus-in-out {
  0% {
    -webkit-filter: blur(12px);
    filter: blur(12px);
    opacity: 0;
  }

  33% {
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 1;
  }

  66% {
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 1;
  }

  100% {
    -webkit-filter: blur(12px);
    filter: blur(12px);
    opacity: 0;
  }


}

@keyframes text-focus-in-out {
  0% {
    -webkit-filter: blur(12px);
    filter: blur(12px);
    opacity: 0;
  }

  33% {
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 1;
  }

  66% {
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 1;
  }

  100% {
    -webkit-filter: blur(12px);
    filter: blur(12px);
    opacity: 0;
  }
}

@keyframes fade-in {
  100% {
    opacity: 1;
    filter: blur(0);
  }
}

@keyframes notification-fade {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

/*#endregion*/

/*#region 1.2 Form Fields * Inputs */
.form {
  align-content: start;
  row-gap: var(--form-gap);
  display: grid;
}

.form-row {
  gap: var(--fieldset-gap);
  flex-wrap: wrap;
  display: flex;
}

.form-row > .form-control {
  flex: 1 0 var(--fieldset-row-control-width, 14rem);
}

.form-row > button {
  flex-grow: 1;
}

.fieldset {
  gap: var(--fieldset-gap);
  display: grid;
}

.fieldset-row {
  gap: inherit;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  display: grid;
}

.form-control {
  gap: var(--form-control-gap);
  display: grid;
  position: relative;
}

.form-control > label {
  justify-self: start;
}

.form-control__max-characters-count {
  margin-block-start: -.375rem;
}

.checkbox-control {
  align-items: flex-start;
  column-gap: var(--checkbox-control-gap);
  text-align: start;
  display: flex;
  position: relative;
}

.input,
.textarea,
.select {
  -webkit-appearance: none;
  appearance: none;
  padding: var(--input-padding-block) var(--input-padding-inline);
  border-radius: var(--input-border-radius);
  /*background: rgb(var(--input-background, transparent));*/
  background: rgb(255, 255, 255, 0.5);
  color: rgb(var(--input-text-color, var(--text-color)));
  text-align: start;
  border-width: 1px;
  width: 100%;
  transition: border-color .1s ease-in-out;
}

:is(.input, .textarea, .select)::placeholder {
  color: rgb(var(--input-text-color, var(--text-color)) / .6);
}

:is(.input:focus, .textarea:focus, .select:focus-visible) {
  border-color: currentColor;
  outline: none;
}

.select {
  box-shadow: 0 1px 3px rgb(var(--text-color) / .08);
}

.select:required:invalid {
  color: rgb(var(--input-text-color, var(--text-color)) / .6);
}

.select ~ svg,
.select > svg {
  transition: transform .2s;
  position: absolute;
  inset-block-start: calc(50% - 3.5px);
  inset-inline-end: calc(var(--input-padding-inline) + 1px);
}

.select[aria-expanded="true"] > svg {
  transform: rotateZ(180deg);
}

.form-control:has(.select):before {
  content: "";
  width: calc(var(--input-padding-inline) * 2 + 35px);
  background-image: linear-gradient(to var(--transform-origin-start), rgb(var(--background)) calc(var(--input-padding-inline) + 20px), rgb(var(--background) / 0));
  pointer-events: none;
  height: calc(100% - 2px);
  position: absolute;
  inset-block-start: 1px;
  inset-inline-end: 1px;
}

.form-control:has(.select):not(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-right-radius: var(--input-border-radius);
  border-bottom-right-radius: var(--input-border-radius);
}

.form-control:has(.select):is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):before {
  border-top-left-radius: var(--input-border-radius);
  border-bottom-left-radius: var(--input-border-radius);
}

.floating-label {
  z-index: 1;
  background: rgb(var(--background));
  color: rgb(var(--input-text-color, var(--text-color)) / .6);
  opacity: 0;
  pointer-events: none;
  padding: 0 .25rem;
  transition: opacity .2s ease-in-out, transform .2s ease-in-out;
  position: absolute;
  inset-block-start: calc(-1 * var(--input-padding-block) + 1px);
  inset-inline-start: calc(var(--input-padding-inline) - .25rem + 1px);
  transform: translateY(3px);
}

:-webkit-autofill ~ .floating-label {
  color: #000;
}

:-webkit-any(:-webkit-any(.input, .textarea):not(:placeholder-shown) ~ .floating-label, :-webkit-any(.input, .textarea, .select):-webkit-autofill ~ .floating-label, .select:valid ~ .floating-label) {
  opacity: 1;
  transform: translateY(0);
}

:is(:is(.input, .textarea):not(:placeholder-shown) ~ .floating-label, :is(.input, .textarea, .select):autofill ~ .floating-label, .select:valid ~ .floating-label) {
  opacity: 1;
  transform: translateY(0);
}

.input-suffix {
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  position: absolute;
  inset-block-start: var(--input-padding-block);
  inset-inline-end: var(--input-padding-inline);
}

.form-control:has(:focus-within) + .input-suffix.hide-on-focus {
  opacity: 0;
  visibility: hidden;
}

.checkbox {
  --checkbox-baseline-distance: calc(1em * 1.6);
  --checkbox-offset: calc((var(--checkbox-baseline-distance) - var(--checkbox-size)) / 2);
  -webkit-appearance: none;
  appearance: none;
  width: var(--checkbox-size);
  height: var(--checkbox-size);
  border-width: 1px;
  border-color: rgb(var(--text-color) / .8);
  background: var(--checkmark-svg-url) no-repeat center / 0;
  border-radius: 2px;
  flex-shrink: 0;
  transition: background-color .2s ease-in-out, border-color .2s ease-in-out;
  position: relative;
  inset-block-start: var(--checkbox-offset);
}

@supports (width: 1lh) {
  .checkbox {
    inset-block-start: calc(.5lh - var(--checkbox-size) / 2);
  }
}

.checkbox:checked {
  background-color: rgb(var(--accent));
  border-color: rgb(var(--accent));
  background-size: 10px 8px;
}

.checkbox:checked ~ label {
  opacity: 1;
}

.checkbox:disabled,
.checkbox:disabled ~ label {
  opacity: .5;
  cursor: default;
}

.checkbox:not(:disabled, :checked) ~ label {
  opacity: .7;
}

.checkbox ~ label {
  transition: all .2s ease-in-out;
  line-height: 1.25rem;
  align-self: end;
}

.dot-checkbox {
  -webkit-appearance: none;
  appearance: none;
  background: rgb(var(--text-color));
  opacity: 0;
  pointer-events: none;
  border-radius: 100%;
  width: 6px;
  height: 6px;
  transition: opacity .2s;
  display: block;
  position: absolute;
  inset-block-start: calc(.5em + 1.5px);
}

.dot-checkbox ~ label {
  opacity: .65;
  transition: opacity .2s, transform .2s;
  position: relative;
}

.dot-checkbox ~ label:hover {
  opacity: 1;
}

.dot-checkbox:checked {
  opacity: 1;
}

.dot-checkbox:checked ~ label {
  opacity: 1;
  transform: translateX(1.125rem);
}

.switch {
  --switch-height: 1rem;
  --switch-width: 2.25rem;
  --switch-padding: .1875rem;
  --switch-toggle-size: .625rem;
  -webkit-appearance: none;
  appearance: none;
  height: var(--switch-height);
  width: var(--switch-width);
  padding: var(--switch-padding);
  border-radius: var(--rounded-full);
  background: rgb(var(--text-color) / .2);
  align-self: center;
  transition: background .2s ease-in-out;
  display: grid;
}

.switch:after {
  content: "";
  width: var(--switch-toggle-size);
  height: var(--switch-toggle-size);
  background: rgb(var(--background));
  border-radius: var(--rounded-full);
  transition: transform .2s ease-in-out;
  box-shadow: 0 1px 1px #0003;
}

.switch:checked {
  background: rgb(var(--accent));
}

.switch:checked:after {
  transform: translateX(calc(var(--transform-logical-flip) * (var(--switch-width) - var(--switch-toggle-size) - var(--switch-padding) * 2)));
}

.range {
  -webkit-appearance: none;
  appearance: none;
  background: none;
  width: 100%;
}

.range::-webkit-slider-thumb {
  -webkit-appearance: none;
}

.range::-webkit-slider-thumb {
  background: rgb(var(--text-color));
  cursor: pointer;
  z-index: 1;
  box-shadow: none;
  border-radius: 100%;
  width: .625rem;
  height: .625rem;
  margin-block-start: -.25rem;
  position: relative;
}

.range::-webkit-slider-runnable-track {
  cursor: pointer;
  background: rgb(var(--text-color) / .12);
  border: none;
  border-radius: 2px;
  width: 100%;
  height: 2px;
}

.range::-moz-range-thumb {
  background: rgb(var(--text-color));
  cursor: pointer;
  border: none;
  border-radius: 100%;
  width: .625rem;
  height: .625rem;
}

.range::-moz-range-progress {
  cursor: pointer;
  border: none;
  border-radius: 2px;
  width: 100%;
  height: 2px;
}

.range::-moz-range-track {
  cursor: pointer;
  border: none;
  border-radius: 2px;
  width: 100%;
  height: 2px;
}

.range::-moz-range-progress {
  background-color: rgba(var(--text-color));
}

.range::-moz-range-track {
  background-color: rgb(var(--border-color));
}

@media not screen and (pointer: fine) {
  .range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-block-start: -.4375rem;
  }

  .range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
  }
}

.range-group {
  background: linear-gradient(to var(--transform-origin-end), rgb(var(--text-color) / .12) var(--range-min), rgb(var(--text-color)) var(--range-min), rgb(var(--text-color)) var(--range-max), rgb(var(--text-color) / .12) var(--range-max));
  border-radius: 2px;
  height: 2px;
}

.range-group .range {
  pointer-events: none;
  vertical-align: top;
  height: 2px;
}

.range-group .range::-webkit-slider-runnable-track {
  background: none;
}

.range-group .range::-webkit-slider-thumb {
  pointer-events: auto;
}

.range-group .range::-moz-range-progress {
  background: none;
}

.range-group .range::-moz-range-track {
  background: none;
}

.range-group .range::-moz-range-thumb {
  pointer-events: auto;
}

.range-group .range:last-child {
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 0;
}

.input-group {
  align-items: center;
  column-gap: .75rem;
  display: flex;
}

.input-prefix {
  border-radius: min(.625rem, var(--button-border-radius));
  border: 1px solid rgb(var(--text-color) / .12);
  flex: 1 0 0;
  justify-content: space-between;
  align-items: center;
  min-width: 0;
  padding: .4375rem;
  display: flex;
}

.input-prefix:focus-within {
  border-color: rgb(var(--text-color));
  box-shadow: inset 0 0 0 1px rgb(var(--text-color));
}

.input-prefix > .field {
  -webkit-appearance: textfield;
  appearance: textfield;
  text-align: end;
  background: none;
  border: none;
  width: 100%;
  min-width: 0;
  margin-inline-start: .625rem;
  padding: 0;
}

.input-prefix > .field:focus {
  outline: none;
}

.input-prefix > .field::-webkit-outer-spin-button {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
}

.input-prefix > .field::-webkit-inner-spin-button {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
}

.price-range {
  padding-block-start: .25rem;
  display: block;
}

.price-range > .range-group {
  margin-block-end: 1.125rem;
  position: relative;
}

@media not screen and (pointer: fine) {
  .price-range {
    padding-block-start: .625rem;
  }
}

/*#endregion*/



/*#region 2.0 Handy Classes*/

.md {
  font-weight: 600
}

.force-uppercase {
  text-transform: uppercase !important
}

.alert-color {
  color: red
}

.container {
  --distance-to-bleed: max(var(--container-gutter), 50% - var(--container-max-width) / 2);
  margin-inline-start: max(var(--container-gutter), 50% - var(--container-max-width) / 2);
  margin-inline-end: max(var(--container-gutter), 50% - var(--container-max-width) / 2);
}

.container-360 {
  --distance-to-bleed: max(var(--container-gutter), 50% - var(--container-max-width) / 2);
  margin-inline-start: max(var(--container-gutter), 50% - var(--container-max-width) / 2);
  margin-inline-end: max(var(--container-gutter), 50% - var(--container-max-width) / 2);
  margin-top: max(var(--container-gutter), 50% - var(--container-max-width) / 2);
  margin-bottom: max(var(--container-gutter), 50% - var(--container-max-width) / 2);
}

.container--fixedStart {
  margin-inline-start: max(var(--container-gutter), 2% - var(--container-max-width) / 2);
}

.container--xxs {
  --container-max-width: var(--container-xxs-max-width);
}

.container--xs {
  --container-max-width: var(--container-xs-max-width);
}

.container--sm {
  --container-max-width: var(--container-sm-max-width);
}

.container--md {
  --container-max-width: var(--container-md-max-width);
}

.container--lg {
  --container-max-width: var(--container-lg-max-width);
}

.container--xl {
  --container-max-width: var(--container-xl-max-width);
}

.container--paragraphs p {
  margin-bottom: 2rem;
}

.v-stack {
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  display: grid;
}

.h-stack {
  align-items: center;
  display: flex;
}

.flex {
  display: flex;
}

.bleed,
.full-bleed {
  margin-inline-start: calc(-1 * var(--distance-to-bleed));
  margin-inline-end: calc(-1 * var(--distance-to-bleed));
}

.bleed {
  scroll-padding-inline: var(--distance-to-bleed);
  padding-inline-start: var(--distance-to-bleed);
  padding-inline-end: var(--distance-to-bleed);
}

.visibility-hidden {
  visibility: hidden;
}

.relative {
  position: relative;
}

.wrap {
  flex-wrap: wrap;
}

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

.grow {
  flex-grow: 1;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.justify-items-start {
  justify-items: start;
  text-align: left;
}

.justify-items-center {
  justify-items: safe center;
}

.justify-items-end {
  justify-items: end;
  text-align: right;
}

.justify-self-start {
  justify-self: start;
}

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

.justify-self-end {
  justify-self: end;
}

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

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

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

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

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

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

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

.place-self-start {
  place-self: start;
}

.place-self-start-center {
  place-self: start center;
}

.place-self-start-end {
  place-self: start end;
}

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

.place-self-center-start {
  place-self: center start;
}

.place-self-center-start-fixed {
  position: absolute !important;
  top: 55%;
}

.place-self-center-end {
  place-self: center end;
}

.place-self-end {
  place-self: end;
}

.place-self-end-start {
  place-self: end start;
}

.place-self-end-center {
  place-self: end center;
}

@media screen and (min-width: 700px) {
  .sm\:text-start {
    text-align: start;
  }

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

  .sm\:text-end {
    text-align: end;
  }

  .sm\:justify-start {
    justify-content: start;
  }

  .sm\:justify-center {
    justify-content: safe center;
  }

  .sm\:justify-end {
    justify-content: end;
  }

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

  .sm\:justify-evenly {
    justify-content: space-evenly;
  }

  .sm\:justify-items-start {
    justify-items: start;
  }

  .sm\:justify-items-center {
    justify-items: safe center;
  }

  .sm\:justify-items-end {
    justify-items: end;
  }

  .sm\:justify-self-start {
    justify-self: start;
  }

  .sm\:justify-self-center {
    justify-self: center;
  }

  .sm\:justify-self-end {
    justify-self: end;
  }

  .sm\:align-start {
    align-items: start;
  }

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

  .sm\:align-end {
    align-items: end;
  }

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

  .sm\:align-self-start {
    align-self: start;
  }

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

  .sm\:align-self-end {
    align-self: end;
  }

  .sm\:place-self-start {
    place-self: start;
  }

  .sm\:place-self-start-center {
    place-self: start center;
  }

  .sm\:place-self-start-end {
    place-self: start end;
  }

  .sm\:place-self-center {
    place-self: center;
  }

  .sm\:place-self-center-start {
    place-self: center start;
  }

  .sm\:place-self-center-end {
    place-self: center end;
  }

  .sm\:place-self-end {
    place-self: end;
  }

  .sm\:place-self-end-start {
    place-self: end start;
  }

  .sm\:place-self-end-center {
    place-self: end center;
  }
}

.vertical-align-top {
  vertical-align: top;
}

.vertical-align-middle {
  vertical-align: middle;
}

.vertical-align-bottom {
  vertical-align: bottom;
}

.w-full {
  width: 100%;
}

.h-full {
  height: 100%;
}

.w-0 {
  width: 0;
}

.min-w-full {
  min-width: 100%;
}

.min-h-full {
  min-height: 100%;
}

.mx-auto {
  margin-inline: auto;
}

.my-auto {
  margin-block: auto;
}

.aspect-short {
  aspect-ratio: 4 / 3;
}

.aspect-tall {
  aspect-ratio: 2 / 3;
}

.aspect-square {
  aspect-ratio: 1;
}

.aspect-video {
  aspect-ratio: 16 / 9;
}

.gap-0\.5 {
  gap: .125rem;
}

.gap-1 {
  gap: .25rem;
}

.gap-1\.5 {
  gap: .375rem;
}

.gap-2 {
  gap: .5rem;
}

.gap-2\.5 {
  gap: .625rem;
}

.gap-3 {
  gap: .75rem;
}

.gap-3\.5 {
  gap: .875rem;
}

.gap-4 {
  gap: 1rem;
}

.gap-4\.5 {
  gap: 1.125rem;
}

.gap-5 {
  gap: 1.25rem;
}

.gap-5\.5 {
  gap: 1.375rem;
}

.gap-6 {
  gap: 1.5rem;
}

.gap-7 {
  gap: 1.75rem;
}

.gap-8 {
  gap: 2rem;
}

.gap-10 {
  gap: 2.5rem;
}

.gap-12 {
  gap: 3rem;
}

.gap-14 {
  gap: 3.5rem;
}

.gap-16 {
  gap: 4rem;
}

@media screen and (min-width: 700px) {
  .sm\:unbleed {
    margin-inline: 0;
    padding-inline: 0;
    scroll-padding-inline: 0;
  }
}

@media screen and (min-width: 1000px) {
  .md\:unbleed {
    margin-inline: 0;
    padding-inline: 0;
    scroll-padding-inline: 0;
  }
}

@media screen and (min-width: 1150px) {
  .lg\:unbleed {
    margin-inline: 0;
    padding-inline: 0;
    scroll-padding-inline: 0;
  }
}

.empty-state {
  text-align: center;
  place-content: center;
  padding-block: 6.25rem;
  display: grid;
}

@media screen and (min-width: 1000px) {
  .empty-state {
    padding-block: 12.5rem;
  }
}

@media screen and (min-width: 1400px) {
  .empty-state {
    padding-block: 15.625rem;
  }
}

.\31\/2,
.\32\/4,
.\36\/12 {
  width: 50%;
}

.\31\/3,
.\34\/12 {
  width: 33.33333%;
}

.\32\/3,
.\38\/12 {
  width: 66.66667%;
}

.\31\/4,
.\33\/12 {
  width: 25%;
}

.\33\/4,
.\39\/12 {
  width: 75%;
}

.\31\/12 {
  width: 8.33333%;
}

.\32\/12 {
  width: 16.66667%;
}

.\35\/12 {
  width: 41.66667%;
}

.\37\/12 {
  width: 58.33333%;
}

.\31\30\/12 {
  width: 83.33333%;
}

.\31\31\/12 {
  width: 91.66667%;
}

@media screen and (max-width: 699px) {
  .hidden-phone {
    display: none !important;
  }

  .\31\/2--phone,
  .\32\/4--phone,
  .\36\/12--phone {
    width: 50%;
  }

  .\31\/3--phone,
  .\34\/12--phone {
    width: 33.33333%;
  }

  .\32\/3--phone,
  .\38\/12--phone {
    width: 66.66667%;
  }

  .\31\/4--phone,
  .\33\/12--phone {
    width: 25%;
  }

  .\33\/4--phone,
  .\39\/12--phone {
    width: 75%;
  }

  .\31\/12--phone {
    width: 8.33333%;
  }

  .\32\/12--phone {
    width: 16.66667%;
  }

  .\35\/12--phone {
    width: 41.66667%;
  }

  .\37\/12--phone {
    width: 58.33333%;
  }

  .\31\30\/12--phone {
    width: 83.33333%;
  }

  .\31\31\/12--phone {
    width: 91.66667%;
  }
}

@media screen and (min-width: 699px) and (max-width: 999px) {
  .hidden-tablet {
    display: none !important;
  }

  .\31\/2--tablet,
  .\32\/4--tablet,
  .\36\/12--tablet {
    width: 50%;
  }

  .\31\/3--tablet,
  .\34\/12--tablet {
    width: 33.33333%;
  }

  .\32\/3--tablet,
  .\38\/12--tablet {
    width: 66.66667%;
  }

  .\31\/4--tablet,
  .\33\/12--tablet {
    width: 25%;
  }

  .\33\/4--tablet,
  .\39\/12--tablet {
    width: 75%;
  }

  .\31\/12--tablet {
    width: 8.33333%;
  }

  .\32\/12--tablet {
    width: 16.66667%;
  }

  .\35\/12--tablet {
    width: 41.66667%;
  }

  .\37\/12--tablet {
    width: 58.33333%;
  }

  .\31\30\/12--tablet {
    width: 83.33333%;
  }

  .\31\31\/12--tablet {
    width: 91.66667%;
  }
}

@media screen and (min-width: 700px) {
  .hidden-tablet-and-up {
    display: none !important;
  }

  .\31\/2--tablet-and-up,
  .\32\/4--tablet-and-up,
  .\36\/12--tablet-and-up {
    width: 50%;
  }

  .\31\/3--tablet-and-up,
  .\34\/12--tablet-and-up {
    width: 33.33333%;
  }

  .\32\/3--tablet-and-up,
  .\38\/12--tablet-and-up {
    width: 66.66667%;
  }

  .\31\/4--tablet-and-up,
  .\33\/12--tablet-and-up {
    width: 25%;
  }

  .\33\/4--tablet-and-up,
  .\39\/12--tablet-and-up {
    width: 75%;
  }

  .\31\/12--tablet-and-up {
    width: 8.33333%;
  }

  .\32\/12--tablet-and-up {
    width: 16.66667%;
  }

  .\35\/12--tablet-and-up {
    width: 41.66667%;
  }

  .\37\/12--tablet-and-up {
    width: 58.33333%;
  }

  .\31\30\/12--tablet-and-up {
    width: 83.33333%;
  }

  .\31\31\/12--tablet-and-up {
    width: 91.66667%;
  }
}

@media screen and (max-width: 999px) {
  .hidden-pocket {
    display: none !important;
  }

  .\31\/2--pocket,
  .\32\/4--pocket,
  .\36\/12--pocket {
    width: 50%;
  }

  .\31\/3--pocket,
  .\34\/12--pocket {
    width: 33.33333%;
  }

  .\32\/3--pocket,
  .\38\/12--pocket {
    width: 66.66667%;
  }

  .\31\/4--pocket,
  .\33\/12--pocket {
    width: 25%;
  }

  .\33\/4--pocket,
  .\39\/12--pocket {
    width: 75%;
  }

  .\31\/12--pocket {
    width: 8.33333%;
  }

  .\32\/12--pocket {
    width: 16.66667%;
  }

  .\35\/12--pocket {
    width: 41.66667%;
  }

  .\37\/12--pocket {
    width: 58.33333%;
  }

  .\31\30\/12--pocket {
    width: 83.33333%;
  }

  .\31\31\/12--pocket {
    width: 91.66667%;
  }
}

@media screen and (min-width: 1000px) and (max-width: 1149px) {
  .hidden-lap {
    display: none !important;
  }

  .\31\/2--lap,
  .\32\/4--lap,
  .\36\/12--lap {
    width: 50%;
  }

  .\31\/3--lap,
  .\34\/12--lap {
    width: 33.33333%;
  }

  .\32\/3--lap,
  .\38\/12--lap {
    width: 66.66667%;
  }

  .\31\/4--lap,
  .\33\/12--lap {
    width: 25%;
  }

  .\33\/4--lap,
  .\39\/12--lap {
    width: 75%;
  }

  .\31\/12--lap {
    width: 8.33333%;
  }

  .\32\/12--lap {
    width: 16.66667%;
  }

  .\35\/12--lap {
    width: 41.66667%;
  }

  .\37\/12--lap {
    width: 58.33333%;
  }

  .\31\30\/12--lap {
    width: 83.33333%;
  }

  .\31\31\/12--lap {
    width: 91.66667%;
  }
}

@media screen and (min-width: 1000px) {
  .hidden-lap-and-up {
    display: none !important;
  }

  .\31\/2--lap-and-up,
  .\32\/4--lap-and-up,
  .\36\/12--lap-and-up {
    width: 50%;
  }

  .\31\/3--lap-and-up,
  .\34\/12--lap-and-up {
    width: 33.33333%;
  }

  .\32\/3--lap-and-up,
  .\38\/12--lap-and-up {
    width: 66.66667%;
  }

  .\31\/4--lap-and-up,
  .\33\/12--lap-and-up {
    width: 25%;
  }

  .\33\/4--lap-and-up,
  .\39\/12--lap-and-up {
    width: 75%;
  }

  .\31\/12--lap-and-up {
    width: 8.33333%;
  }

  .\32\/12--lap-and-up {
    width: 16.66667%;
  }

  .\35\/12--lap-and-up {
    width: 41.66667%;
  }

  .\37\/12--lap-and-up {
    width: 58.33333%;
  }

  .\31\30\/12--lap-and-up {
    width: 83.33333%;
  }

  .\31\31\/12--lap-and-up {
    width: 91.66667%;
  }
}

@media screen and (min-width: 1150px) {
  .hidden-desk {
    display: none !important;
  }

  .\31\/2--desk,
  .\32\/4--desk,
  .\36\/12--desk {
    width: 50%;
  }

  .\31\/3--desk,
  .\34\/12--desk {
    width: 33.33333%;
  }

  .\32\/3--desk,
  .\38\/12--desk {
    width: 66.66667%;
  }

  .\31\/4--desk,
  .\33\/12--desk {
    width: 25%;
  }

  .\33\/4--desk,
  .\39\/12--desk {
    width: 75%;
  }

  .\31\/12--desk {
    width: 8.33333%;
  }

  .\32\/12--desk {
    width: 16.66667%;
  }

  .\35\/12--desk {
    width: 41.66667%;
  }

  .\37\/12--desk {
    width: 58.33333%;
  }

  .\31\30\/12--desk {
    width: 83.33333%;
  }

  .\31\31\/12--desk {
    width: 91.66667%;
  }
}

/* Create each media query */
@media screen and (min-width: 1500px) {
  .hidden-widescreen {
    display: none !important;
  }

  .\31\/2--widescreen,
  .\32\/4--widescreen,
  .\36\/12--widescreen {
    width: 50%;
  }

  .\31\/3--widescreen,
  .\34\/12--widescreen {
    width: 33.33333%;
  }

  .\32\/3--widescreen,
  .\38\/12--widescreen {
    width: 66.66667%;
  }

  .\31\/4--widescreen,
  .\33\/12--widescreen {
    width: 25%;
  }

  .\33\/4--widescreen,
  .\39\/12--widescreen {
    width: 75%;
  }

  .\31\/12--widescreen {
    width: 8.33333%;
  }

  .\32\/12--widescreen {
    width: 16.66667%;
  }

  .\35\/12--widescreen {
    width: 41.66667%;
  }

  .\37\/12--widescreen {
    width: 58.33333%;
  }

  .\31\30\/12--widescreen {
    width: 83.33333%;
  }

  .\31\31\/12--widescreen {
    width: 91.66667%;
  }
}

.object-cover {
  object-fit: cover;
  object-position: center;
}

.object-contain {
  object-fit: contain;
  object-position: center;
}

.image-cover {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

.image-background {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 0;
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-clip {
  overflow: clip;
}

.placeholder {
  background: rgb(var(--background-without-opacity));
  fill: rgb(var(--text-color) / .5);
  color: rgb(var(--text-color) / .5);
  display: block;
}

.placeholder--invert {
  background: rgb(var(--text-color));
  fill: rgb(var(--background-without-opacity));
  color: rgb(var(--background-without-opacity));
}

.bold {
  font-weight: bold;
}

.smallcaps {
  text-transform: uppercase;
  letter-spacing: var(--heading-letter-spacing);
  font-size: .625rem;
}

.text-xxs {
  font-size: .6875rem;
}

.text-xs {
  font-size: var(--text-xs);
}

.text-sm {
  font-size: var(--text-sm);
}

.text-base {
  font-size: var(--text-base);
}

.text-lg {
  font-size: var(--text-lg);
}

.text-xl {
  font-size: var(--text-xl);
}

.text-xxl {
  font-size: var(--text-xxl);
}

.text-4xl {
  font-size: var(--text-4xl);
}

.heading,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.prose :where(h1, h2, h3, h4, h5, h6) {
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  letter-spacing: var(--heading-letter-spacing);
  text-transform: var(--heading-text-transform);
  overflow-wrap: normal;
}

.custom-font {
  font-family: var(--custom-font-family);
  font-weight: var(--custom-font-weight);
  font-style: var(--custom-font-style);
  letter-spacing: var(--custom-letter-spacing);
  text-transform: var(--custom-text-transform);
  overflow-wrap: normal;
}

@media screen and (min-width: 700px) {
  .sm\:text-xs {
    font-size: var(--text-xs);
  }

  .sm\:text-sm {
    font-size: var(--text-sm);
  }

  .sm\:text-base {
    font-size: var(--text-base);
  }

  .sm\:text-lg {
    font-size: var(--text-lg);
  }

  .sm\:h1 {
    font-size: var(--text-h1);
    line-height: 1.5;
  }

  .sm\:h2 {
    font-size: var(--text-h2);
    line-height: 1.5;
  }

  .sm\:h3 {
    font-size: var(--text-h3);
    line-height: 1.6;
  }

  .sm\:h4 {
    font-size: var(--text-h4);
    line-height: 1.6;
  }

  .sm\:h5 {
    font-size: var(--text-h5);
    line-height: 1.7;
  }

  .sm\:h6 {
    font-size: var(--text-h6);
    line-height: 1.7;
  }
}

@media screen and (min-width: 1150px) {

  .h1,
  :where(.prose h1) {
    line-height: 1.3;
  }

  .h2,
  :where(.prose h2) {
    line-height: 1.4;
  }

  .h3,
  :where(.prose h3) {
    line-height: 1.5;
  }
}



:where(ol, ul):not(.unstyled-list) li {
  padding-inline-start: .25rem;
  margin-block-start: 0 !important;
}

:where(.text-center, .text-end) :is(ol, ul) {
  margin-inline: 0;
  list-style-position: inside;
}

:where(.text-center, .text-end) :is(ol, ul) li {
  padding-inline-start: 0;
}

.line-through {
  text-decoration: line-through;
}

.break-all {
  word-break: break-all;
}

.hyphenate {
  -webkit-hyphens: auto;
  hyphens: auto;
}

.truncate-text {
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: var(--truncate-text-max-width, 100%);
  overflow: hidden;
}

.line-clamp {
  -webkit-line-clamp: var(--line-clamp-count, 2);
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}

.constrained-image {
  width: var(--image-mobile-max-width, var(--image-max-width));
  max-width: 100%;
}

.desaturated-image {
  filter: grayscale(0.75);
}

.grayscale-image {
  filter: grayscale(1);
}

/*#endregion*/

/*#region 2.1 Buttons & Links*/

.button,
.Button,
.shopify-challenge__button,
.shopify-payment-button__button--unbranded {
  --initial-gradient: linear-gradient(rgb(var(--button-background)), rgb(var(--button-background)));
  --hover-gradient: linear-gradient(transparent, transparent);
  --initial-background-position: var(--transform-origin-end);
  --hover-background-position: var(--transform-origin-start);
  -webkit-appearance: none;
  appearance: none;
  text-transform: var(--button-text-transform);
  font: var(--button-font);
  letter-spacing: var(--button-letter-spacing);
  text-shadow: none;
  text-align: center;
  cursor: pointer;
  color: rgb(var(--button-text-color));
  border: 1px solid rgb(var(--button-outline-color, var(--button-background)));
  border-radius: var(--button-border-radius);
  background-color: #0000;
  background-image: var(--initial-gradient), var(--hover-gradient);
  background-size: 100% 100%, 0 100%;
  background-position: var(--initial-background-position);
  background-repeat: no-repeat;
  justify-content: center;
  align-items: center;
  column-gap: 1.125rem;
  padding: .65rem 1.75rem;
  transition: background-size .45s cubic-bezier(.785, .135, .15, .86), background-position .45s step-end, color .45s cubic-bezier(.785, .135, .15, .86), border .45s cubic-bezier(.785, .135, .15, .86);
  display: inline-flex;
  position: relative;
}

.button--outline {
  --initial-gradient: linear-gradient(transparent, transparent);
  --hover-gradient: linear-gradient(rgb(var(--button-background)), rgb(var(--button-background)));
  --initial-background-position: var(--transform-origin-start);
  --hover-background-position: var(--transform-origin-end);
  color: rgb(var(--button-background, var(--text-color)));
  border-color: rgb(var(--button-outline-color, var(--border-color)));
}

.button--subdued.button--outline {
  color: rgb(var(--button-background) / .65);
  border-color: rgb(var(--border-color));
}

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

.button--sm {
  font-size: var(--text-xs);
  padding: .5rem .75rem;
}

.button--xs {
  font-size: .625rem;
  line-height: 1.3;
  padding: 0.25rem 0.375rem;
}

.button-group,
.ButtonGroup {
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
  display: flex;
}

.button-group > * {
  margin: 0 !important;
}

.button-group:has(.link):has(.button) {
  column-gap: 1.5rem;
}

@media screen and (min-width: 700px) {
  .button-group {
    gap: 1.25rem;
  }

  .button-group:has(.link):not(:has(.button)) {
    column-gap: 2rem;
  }

  .button-group--same-width {
    grid-auto-columns: minmax(0, 1fr);
    grid-auto-flow: column;
    display: grid;
  }
}

.circle-button {
  --circle-button-size: 2.75rem;
  width: var(--circle-button-size);
  height: var(--circle-button-size);
  background: rgb(var(--circle-button-background));
  color: rgb(var(--circle-button-text-color));
  border-radius: var(--rounded-full);
  box-shadow: 0 .125rem .625rem rgb(var(--circle-button-text-color) / .15);
  place-items: center;
  display: grid;
}

.circle-button > svg {
  width: .75rem;
}

.circle-button > .icon-zoom {
  width: .875rem;
}

@media screen and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .circle-button.hover\:animate-icon-inline:hover svg {
    animation: .35s ease-in-out forwards animateIconInline;
  }

  .circle-button.hover\:animate-icon-block:hover svg {
    animation: .35s ease-in-out forwards animateIconBlock;
  }
}

.circle-button--sm {
  --circle-button-size: 2.25rem;
}

.circle-button--lg,
.circle-button--xl {
  --circle-button-size: 3.125rem;
}

:is(.circle-button--lg, .circle-button--xl) > svg {
  width: 1rem;
}

@media screen and (min-width: 700px) {
  .circle-button--xl {
    --circle-button-size: 3.5rem;
  }
}

.shopify-challenge__button,
.shopify-payment-button__button--unbranded {
  all: revert;
}

@media screen and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .features--button-transition :is(.button, .shopify-challenge__button, .shopify-payment-button__button--unbranded):not([disabled]):hover {
    color: rgb(var(--button-background));
    background-position: var(--hover-background-position);
    border-color: rgb(var(--button-background));
    background-size: 0 100%, 100% 100%;
  }

  .features--button-transition .shopify-payment-button__button--unbranded:not([disabled]):hover {
    background-color: #0000;
  }

  .features--button-transition .button--outline:not([disabled]):hover {
    color: rgb(var(--button-text-color));
  }
}

.shopify-payment-button__button {
  vertical-align: top;
  width: 100%;
  min-height: calc(1lh + 1.3rem + 2px);
}

.shopify-payment-button__button--branded:focus-within {
  outline: 2px solid highlight;
  outline: 5px auto -webkit-focus-ring-color;
}

.shopify-payment-button__button--branded [role="button"] {
  border-radius: var(--button-border-radius);
  padding: .875rem 1.75rem;
}

.shopify-payment-button__more-options[aria-hidden="true"] {
  display: none;
}

/*#endregion*/

/*#region 2.2 Color Scheme*/

.color-scheme {
  background-color: rgb(var(--background));
  background-image: var(--background-gradient);
  color: rgb(var(--text-color));
  border-color: rgb(var(--border-color));
}

.color-scheme--with-image-overlay {
  --border-color: var(--text-color) / .6;
}

.color-scheme--with-image-overlay .button--outline {
  --border-color: var(--text-color);
}

/*#endregion*/



/*#region 3.0 Prose*/

.prose {
  overflow-wrap: anywhere;
}

.prose ul.bullet-list {
  list-style: disc outside;
  position: relative;
  left: 20px;
}

.prose :first-child:not(br),
.prose .sr-only:first-child + * {
  margin-block-start: 1.25rem;
}

.prose :last-child {
  margin-block-end: 0 !important;
}

.prose :where(:not(meta, span, br) + *) {
  margin-block-start: 1rem;
}

.prose :where(* + span:not(:empty)),
.prose :is(.link, img) {
  display: inline-block;
  text-wrap: nowrap;
}

.prose :is(.link + .link) {
  margin-inline-start: .75rem;
}

.prose :is(.button, .button-group:has(.button)) {
  margin-block-start: 1.5rem;
}

.prose :is(p img:not([style*="float"]):only-child, div img:not([style*="float"]):only-child, figure, video, object, blockquote, table) {
  margin-block: 1.6rem;
}

.prose :is(iframe[src*="youtube"], iframe[src*="youtu.be"], iframe[src*="vimeo"]) {
  aspect-ratio: 16 / 9;
  width: 100%;
  height: auto;
}

.prose .play-button {
  margin: 2rem auto;
  display: block;
}

.prose :is(ol, ul) :is(ol, ul),
.prose .PageContent--FlexColumn div {
  margin-block-start: 0 !important;
}

.prose :is(ol, ul) {
  row-gap: .4em;
  display: grid;
}

.prose figcaption {
  font-style: italic;
  font-size: var(--text-sm);
  color: rgb(var(--text-color) / .65);
  margin-block-start: .5em;
}

.prose blockquote {
  border-inline-start-width: 3px;
  padding: .375rem 0 .375rem 1rem;
  font-size: 1.15rem;
  line-height: 1.75;
}

@media screen and (min-width: 1000px) {
  .prose:not(.prose--tight) :where(:not(meta, span, br) + *) {
    margin-block-start: 1.25rem;
  }

  .prose--klaviyofix:not(.prose--tight) :where(:not(meta, span) + *) {
    margin-block-start: 0;
  }

  .prose:not(.prose--tight) :is(.button, .button-group:has(.button)) {
    margin-block-start: 2rem;
  }

  .prose:not(.prose--tight) .play-button {
    margin-block: 2.5rem;
  }

  .prose:not(.prose--tight) blockquote {
    margin-inline-start: 2rem;
    padding-inline-start: 2rem;
  }
}

/*#endregion*/

/*#region 3.1 Prose + Handy Classes*/

.h1,
:where(.prose h1) {
  font-size: var(--text-h1);
  line-height: 1.5;
}

.h2,
:where(.prose h2) {
  font-size: var(--text-h2);
  line-height: 1.5;
}

.h3,
:where(.prose h3) {
  font-size: var(--text-h3);
  line-height: 1.6;
}

.h4,
:where(.prose h4) {
  font-size: var(--text-h4);
  line-height: 1.6;
}

.h5,
:where(.prose h5) {
  font-size: var(--text-h5);
  line-height: 1.7;
}

.h6,
:where(.prose h6) {
  font-size: var(--text-h6);
  line-height: 1.7;
}

.prose blockquote {
  line-height: 1.75;
}

.link,
.prose a:not(.h1, .h2, .h3, .h4, .h5, .h6, .button, .link-faded, .link-faded-reverse, .lion-header__nav-link, .logo_link) {
  text-underline: none;
  background: linear-gradient(to right, currentColor, currentColor) 0 min(100%, 1.35em) / 100% 1px no-repeat;
  transition: background-size .3s ease-in-out;
}

@media screen and (pointer: fine) {
  :is(.link, .prose a:not(.h1, .h2, .h3, .h4, .h5, .h6, .button, .link-faded, .link-faded-reverse)):hover {
    background-size: 0 1px;
  }
}

/*#endregion*/



/*#region 4.0 Sections*/

.shopify-section:not(:first-child) .bordered-section {
  border-block-start-width: 1px;
}

.shopify-section:not(:has(.section-spacing)) + .shopify-section {
  border-block-start-width: 0;
}

.section-spacing {
  padding-block-start: calc(var(--section-vertical-spacing-override, var(--section-vertical-spacing)) + var(--section-vertical-spacing-block-start-compensation, 0px));
  padding-block-end: var(--section-vertical-spacing-override, var(--section-vertical-spacing));
}

.shopify-section:has(.section-spacing) {
  scroll-padding-block-start: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px) + var(--header-is-sticky, 0) * var(--header-height, 0px));
}

.section-spacing--tight {
  --section-vertical-spacing: var(--section-vertical-spacing-tight);
  --section-stack-gap: var(--section-stack-gap-tight);
}

.section-spacing--padded {
  padding-block-start: calc(var(--section-vertical-spacing-override, var(--section-vertical-spacing)) + var(--section-vertical-spacing-block-start-compensation, 0px));
  padding-block-end: var(--section-vertical-spacing-override, var(--section-vertical-spacing));
}

.shopify-section:empty {
  display: none;
}

.section-stack {
  gap: var(--section-stack-gap);
  grid-auto-columns: minmax(0, 1fr);
  display: grid;
}

.section-header {
  max-width: min(var(--container-xs-max-width), 100%);
  margin-inline-start: var(--container-gutter);
  margin-inline-end: var(--container-gutter);
}

.container .section-header {
  margin-inline: 0;
}

.shopify-section--page-list > div {
  overflow: hidden;
}

.mci-section-general-content .container {
  display: flex;
  flex-direction: column;
}

/*#endregion*/

/*#region 4.1 Before/After*/

.before-after {
  --before-after-content-inset-inline: 1.25rem;
  --before-after-content-inset-block: 1rem;
  --before-after-cursor-size: 3.125rem;
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  display: grid;
  position: relative;
}

.before-after > * {
  grid-area: 1 / -1;
}

.no-js .before-after {
  --before-after-cursor-position: var(--before-after-initial-cursor-position);
}

.before-after__after-image {
  z-index: 1;
}

.before-after__content-wrapper {
  position: absolute;
}

.before-after__cursor {
  pointer-events: auto;
  filter: drop-shadow(0 1px 1px #0000000d) drop-shadow(0 1px 1px #0000000d);
  z-index: 1;
  display: grid;
  position: relative;
}

.before-after__cursor:before {
  content: "";
  background: rgb(var(--before-after-cursor-background));
  z-index: -1;
  position: absolute;
}

.before-after__cursor svg {
  width: var(--before-after-cursor-size);
  height: var(--before-after-cursor-size);
}

.before-after--horizontal {
  cursor: ew-resize;
}

.before-after--horizontal .before-after__after-image {
  clip-path: inset(0 0 0 var(--before-after-cursor-position, 0%));
}

[dir="rtl"] :is(.before-after--horizontal .before-after__after-image) {
  clip-path: inset(0 var(--before-after-cursor-position, 0%) 0 0);
}

.before-after--horizontal .before-after__before-image .before-after__content-wrapper {
  justify-items: start;
  inset-block-end: var(--before-after-content-inset-block);
  inset-inline-start: var(--before-after-content-inset-inline);
}

.before-after--horizontal .before-after__after-image .before-after__content-wrapper {
  text-align: end;
  justify-items: end;
  inset-block-end: var(--before-after-content-inset-block);
  inset-inline-end: var(--before-after-content-inset-inline);
}

.before-after--horizontal .before-after__cursor {
  justify-self: start;
  place-items: center start;
  inset-inline-start: calc(var(--before-after-cursor-position, 0%) - var(--before-after-cursor-size) / 2);
}

.before-after--horizontal .before-after__cursor:before {
  width: .125rem;
  height: 100%;
  inset-inline-start: calc(var(--before-after-cursor-size) / 2);
}

.before-after--vertical {
  cursor: ns-resize;
}

.before-after--vertical .before-after__after-image {
  clip-path: inset(var(--before-after-cursor-position, 0%) 0 0 0);
}

.before-after--vertical .before-after__before-image .before-after__content-wrapper {
  justify-items: start;
  inset-block-start: var(--before-after-content-inset-block);
  inset-inline-start: var(--before-after-content-inset-inline);
}

.before-after--vertical .before-after__after-image .before-after__content-wrapper {
  justify-items: start;
  inset-block-end: var(--before-after-content-inset-block);
  inset-inline-start: var(--before-after-content-inset-inline);
}

.before-after--vertical .before-after__cursor {
  align-self: start;
  place-items: start center;
  inset-block-start: calc(var(--before-after-cursor-position, 0%) - var(--before-after-cursor-size) / 2);
}

.before-after--vertical .before-after__cursor:before {
  width: 100%;
  height: .125rem;
  inset-block-start: calc(var(--before-after-cursor-size) / 2);
}

@media screen and (max-width: 699px) {
  .before-after {
    --before-after-cursor-size: 2.5rem;
  }

  .before-after .button {
    padding: .45rem 1.5rem;
  }
}

@media screen and (min-width: 700px) {
  .before-after {
    --before-after-content-inset-inline: 2.5rem;
    --before-after-content-inset-block: 2rem;
  }

  .before-after__content-wrapper:has(.button) {
    --before-after-content-inset-block: 2.5rem;
  }
}

/*#endregion*/

/*#region 4.2 Brand Switcher Bar */
.top-nav__list {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.top-nav__list-switcher {
  display: flex;
  flex-wrap: nowrap;
  flex: 0 1 100%;
  justify-content: center;
  width: 100%;
  margin: 0;
  padding: 0;
}

.top-nav__list-switcher .top-nav__list-item:marker {
  font-size: 0px;
}

.top-nav__list-item {
  display: inline-block;
  position: relative;
  height: 100%;
  padding-inline: 0 !important;
  margin-inline: 0 !important;
}

.top-nav__list-item:first-child .top-nav__link {
  padding-left: 0;
}

.top-nav__list-item:last-child .top-nav__link {
  padding-right: 0;
}

.top-nav__link {
  display: inline-block;
  padding: 0 40px;
  vertical-align: middle;
  height: 40px;
  padding: 0 10px;
  width: 100%;
}

.top-nav__link svg {
  margin: 0 auto;
  vertical-align: middle;
  width: 140.8px;
  height: 25px;
}

@media screen and (min-width:640px) {
  .top-nav__list-switcher {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 100%;
    flex: 0 1 100%;
    justify-content: center;
  }
}

@media screen and (max-width: 699px) {
  .top-nav__link svg {
    max-width: 100%;
    width: auto;
  }
}

/*#endregion*/

/*#region 4.3 Brand Link Bar */
.brand-links__list {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 1rem 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.brand-links__list h2 {
  margin-bottom: 0.5rem;
}

.brand-links__list-switcher {
  display: flex;
  flex-wrap: nowrap;
  flex: 0 1 100%;
  justify-content: center;
  width: 100%;
  margin: 0;
  padding: 0;
}

.brand-links__list-switcher .brand-links__list-item:marker {
  font-size: 0px;
}

.brand-links__list-item {
  display: inline-block;
  position: relative;
  height: 100%;
  padding-inline: 0 !important;
  margin-inline: 0 !important;
}

.brand-links__list-item:first-child .brand-links__link {
  padding-left: 0;
}

.brand-links__list-item:last-child .brand-links__link {
  padding-right: 0;
}

.brand-links__link {
  display: inline-block;
  padding: 0 40px;
  vertical-align: middle;
  height: 40px;
  padding: 0 10px;
  width: 100%;
}

.brand-links__link svg {
  margin: 0 auto;
  vertical-align: middle;
  width: 140.8px;
  height: 25px;
  fill: white;
}

@media screen and (min-width:640px) {
  .brand-links__list-switcher {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 100%;
    flex: 0 1 100%;
    justify-content: center;
  }
}

@media screen and (max-width: 699px) {
  .brand-links__link svg {
    max-width: 100%;
    width: auto;
  }
}

/*#endregion*/

/*#region 4.4 Slideshow */ 

.mci-section-slideshow {
  position: relative;
}

.mci-section-slideshow .slideshow__static-content {
  position: absolute;
  z-index: 3;
  inset: 0;
}

.mci-section-slideshow .prose :not(a, button) {
  position: relative;
  z-index: 2;
}

.mci-section-slideshow .button:first-of-type {
  position: static;
}

.mci-section-slideshow .button:first-of-type:before {
  content: '';
  position: absolute;
  height: 100%;
  width: 100%;
  inset: 0;
}

@media screen and (max-width:699px) {
  .slideshow--mobile .content-over-media:before {
    background: var(--content-over-media-gradient-overlay, rgb(var(--content-over-media-overlay)));
  }
}
/*#endregion*/





/*#region 5.0 Blocks*/

.mci-block-table caption {
  text-align: left;
  margin-bottom: 1.5rem;
}

.mci-block-table .alternate-row-color tr:nth-of-type(even) {
  background-color: rgba(var(--text-color) / 0.035);
}

.mci-block-table td[colspan],
.mci-block-table td[rowspan] {
  text-align: center;
}

.mci-block-table td[colspan]:not(:first-child):not(:last-child),
.mci-block-table td[rowspan]:not(:first-child):not(:last-child) {
  border-width: 1px;
}

.mci-block-table th {
  padding-block: .625rem;
  font-family: inherit;
}

.mci-block-table td img {
  padding: 0 !important;
  margin: 0 !important;
}

.table-scroller {
  overflow-x: scroll;
}

.mci-block-spacer--breakout-border {
  position: relative;
}

.mci-block-spacer--breakout-border:after {
  content: '';
  height: 1px;
  background-color: rgb(var(--border-color));
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100vw + 100%);
  transform: translateX(-50%);
}

.mci-block-tc-process h2 {
  text-align: center;
  margin: 1rem 1rem 4rem 1rem;
}

.mci-block-tc-process__container {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
}

.mci-block-tc-process__container svg {
  margin-top: -2rem;
  max-width: 1rem;
}

.mci-block-tc-process__container__tc {
  display: flex;
  justify-content: center;
  border: 2px dashed gray;
  border-radius: 5rem;
  padding: 7rem 4rem 3.5rem 4rem;
  flex-wrap: wrap;
  position: relative;
  gap: 1rem;
}

.mci-block-tc-process__container__item {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: center;
  justify-content: center;
}

.mci-block-tc-process__container__item img {
  width: 6rem;
  min-width: 6rem;
}

.mci-block-tc-process__container__item p {
  max-width: 6rem;
}

.mci-block-tc-process__legend {
  position: absolute;
  left: 50%;
  top: -2rem;
  transform: translateX(-50%);
}

.mci-block-tc-process__legend h3 {
  background-color: #1F2E55;
  padding: 1rem;
  border-radius: 1.3rem;
  color: white;
  text-align: center;
  min-width: 14rem;
}

.mci-block-tc-process__legend p {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.5rem;
  gap: 1rem;
}

@media screen and (max-width: 45rem) {
  .mci-block-tc-process__container svg {
    max-width: 0.8rem;
  }

  .mci-block-tc-process h2 {
    margin: 1rem 1rem 2rem 1rem;
  }

  .mci-block-tc-process__container {
    flex-direction: column;
  }

  .mci-block-tc-process__container__tc {
    padding: 8rem 2rem 2.5rem 2rem;
    margin: 2rem 0;
  }

  .mci-block-tc-process__container__item:first-child {
    margin-bottom: 1rem;
  }

  .mci-block-tc-process__container__item img {
    width: 4rem;
    min-width: 4rem;
  }

  .mci-block-tc-process__container > svg:first-of-type,
  .mci-block-tc-process__container > svg:last-of-type {
    transform: rotate(90deg);
  }
}

.mci-block-columns {
  display: flex !important;
  gap: 2.5rem;
}

@media screen and (max-width: 45rem) {
  .mci-block-columns {
    flex-direction: column !important;
  }
}

@media screen and (max-width: 700px) {
  .mci-link-grid--last-item-span .mci-link-grid__card:last-of-type {
    flex-basis: auto;
  }
}

.mci-link-grid__card--container {
  flex-basis: var(--collection-list-item-size, calc(100% / var(--collection-list-items-per-row) - var(--collection-list-gap, 0px) * (var(--collection-list-items-per-row) - 1) / var(--collection-list-items-per-row)));
  display: grid;
  gap: 1.5rem;
}

.accordion {
  box-sizing: content-box;
}

.accordion {
  border-block-width: 1px;
}

.accordion :is(svg) {
  transition: transform .2s;
}

.accordion + .accordion {
  border-block-start-width: 0;
}

.accordion__toggle {
  justify-content: space-between;
  align-items: center;
  column-gap: .625rem;
  padding-block: 1.25rem;
  display: flex;
}

.accordion__content {
  margin-block-start: -.25rem;
  padding-block-end: 1.25rem;
  padding-inline-end: 1.25rem;
}

@media screen and (min-width: 1000px) {
  .accordion__toggle.text-lg {
    padding-block: 1.5rem;
  }

  .accordion--lg .accordion__toggle {
    padding-block: 2rem;
  }

  .accordion--lg .accordion__content {
    margin-block-start: -.5rem;
  }
}

.accordion-group > * + * > .accordion {
  border-block-start-width: 0;
}

/*#endregion*/

/*#region 5.1 Content Over Media*/

.content-over-media {
  --content-over-media-gap: 1.25rem;
  --content-over-media-calculated-row-gap: var(--content-over-media-row-gap, var(--content-over-media-gap));
  --content-over-media-calculated-column-gap: var(--content-over-media-column-gap, var(--content-over-media-gap));
  grid-template: [full-start] 0 [content-start] minmax(0, 1fr) [content-end] 0 [full-end] / [full-start] minmax(0, 1fr) [content-start] minmax(0, min(var(--container-max-width), 100% - var(--content-over-media-column-gap, var(--content-over-media-gap, var(--container-gutter))) * 2)) [content-end] minmax(0, 1fr) [full-end];
  row-gap: var(--content-over-media-calculated-row-gap);
  column-gap: var(--content-over-media-calculated-column-gap);
  min-height: var(--content-over-media-height, auto);
  place-items: center;
  display: grid;
  position: relative;
  overflow: hidden;
}

.content-over-media:before {
  content: "";
  background: var(--content-over-media-gradient-overlay, rgb(var(--content-over-media-overlay)));
  border-radius: inherit;
  z-index: 1;
  pointer-events: none;
  position: absolute;
  inset: 0;
}

@media screen and (max-width:699px) {
  .content-over-media:before {
    background: var(--content-over-media-mobile-overlay, rgb(var(--content-over-media-overlay)));
  }
}

.content-over-media > picture {
  display: contents;
}

.content-over-media > :is(img, video, iframe, svg, video-media),
.content-over-media > picture img {
  height: var(--content-over-media-height, auto);
  overflow-wrap: anywhere;
  object-fit: cover;
  object-position: center;
  border-radius: inherit;
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  grid-area: full-start / full-start / full-end / full-end;
  min-width: 100%;
  min-height: 100%;
  max-height: 100%;
}

.content-over-media--center > :is(img, video, iframe, svg, video-media),
.content-over-media--center > picture img {
  object-position: center;
}

.content-over-media--top > :is(img, video, iframe, svg, video-media),
.content-over-media--top > picture img {
  object-position: top center;
}

.content-over-media > :not(img, video, iframe, svg, video-media, picture) {
  max-width: var(--content-over-media-content-max-width, 48rem);
  z-index: 1;
  text-shadow: 0 1px rgb(var(--content-over-media-text-shadow) / 50%);
  grid-area: content-start / content-start / content-end / content-end;
  position: relative;
}

.content-over-media:has(> .prose):not(:has(> .prose .button:last-child)) {
  row-gap: calc(var(--content-over-media-calculated-row-gap) - .5rem);
}

@supports (row-gap: 1lh) {
  .content-over-media:has(> .prose):not(:has(> .prose .button:last-child)) {
    row-gap: calc(var(--content-over-media-calculated-row-gap) - .5lh);
  }
}

.content-over-media > video-media:not([autoplay]) ~ :not(img, video, iframe, svg, video-media, picture) {
  pointer-events: none;
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
}

.content-over-media > video-media:not([autoplay])[loaded] ~ :not(img, video, iframe, svg, video-media, picture) {
  opacity: 0;
  visibility: hidden;
}

.content-over-media:has(video-media:not([autoplay])) .play-button {
  transition: transform .2s ease-in-out;
}

.content-over-media:has(video-media:not([autoplay])):hover .play-button {
  transform: scale(1.1);
}

.shopify-section:first-child [allow-transparent-header] > .content-over-media > :not(img, video, iframe, svg, video-media, picture) {
  padding-block-start: var(--header-height, 0px);
}

@media (min-width: 700px) {
  .content-over-media--xxs {
    --content-over-media-height: clamp(10rem, 45vw, 18rem);
  }

  .content-over-media--xs {
    --content-over-media-height: clamp(15rem, 65vw, 25rem);
  }

  .content-over-media--sm {
    --content-over-media-height: clamp(20rem, 85vw, 32rem);
  }

  .content-over-media--md {
    --content-over-media-height: clamp(25rem, 100vw, 36rem);
  }

  .content-over-media--lg {
    --content-over-media-height: clamp(30rem, 125vw, 42rem);
  }

  .content-over-media--fill {
    --content-over-media-height: calc(100vh - var(--sticky-area-height));
  }
}

@media (max-width: 700px) {
  .content-over-media--xxs {
    --content-over-media-height: clamp(7rem, 50vw, 13rem);
  }

  .content-over-media--xs {
    --content-over-media-height: clamp(9rem, 50vw, 20rem);
  }

  .content-over-media--sm {
    --content-over-media-height: clamp(11rem, 50vw, 20rem);
  }

  .content-over-media--md {
    --content-over-media-height: clamp(13rem, 50vw, 20rem);
  }

  .content-over-media--lg {
    --content-over-media-height: clamp(15rem, 50vw, 20rem);
  }

  .content-over-media--fill {
    --content-over-media-height: calc(100vh - var(--sticky-area-height));
  }
}

.shopify-section:first-child .content-over-media--fill {
  --content-over-media-height: calc(100vh - (var(--announcement-bar-height, 0px) + var(--header-height, 0px)));
}

.shopify-section:first-child:has([allow-transparent-header]) .content-over-media--fill {
  --content-over-media-height: calc(100vh - (var(--announcement-bar-height, 0px)));
}

@supports (height: 100svh) {
  .content-over-media--fill {
    --content-over-media-height: calc(100svh - var(--sticky-area-height));
  }

  .shopify-section:first-child .content-over-media--fill {
    --content-over-media-height: calc(100svh - (var(--announcement-bar-height, 0px) + var(--header-height, 0px)));
  }

  .shopify-section:first-child:has([allow-transparent-header]) .content-over-media--fill {
    --content-over-media-height: calc(100svh - (var(--announcement-bar-height, 0px)));
  }
}

@media screen and (min-width: 700px) {
  .content-over-media {
    --content-over-media-gap: 2rem;
  }
}

@media screen and (min-width: 1000px) {
  .content-over-media {
    --content-over-media-gap: 3rem;
  }
}

/*#endregion*/

/*#region 5.2 Image (Desktop, Mobile, Charts)*/
.mci-block-image-chart--legend,
.mci-block-image-chart--caption_legend {
  display: flex !important;
  gap: 1rem 2.5rem;
  align-items: center;
  flex-wrap: wrap;
}

.mci-block-image-chart--caption .mci-block-image-chart__caption {
  margin-top: 1rem;
}

.mci-block-image-chart__caption {
  margin-bottom: 1rem;
}

.mci-block-image-chart__legend {
  margin: 0;
  padding: 0;
}

.mci-block-image-chart__legend__item::marker {
  font-size: 0;
}

.mci-block-image-chart__legend__item {
  display: flex;
  gap: 0.7em;
  flex-wrap: nowrap;
  padding: 0 !important;
  margin-bottom: 0.7rem;
}

.mci-block-image-chart__legend__item p {
  display: inline-block;
}

.mci-block-image-chart__legend__item__swatch {
  width: 1.5em;
  height: 1.5em;
  display: inline-block;
  border-radius: 99rem;
}

@media screen and (min-width: 45rem) {
  .mci-block-image--desktop-only {
    display: block;
  }

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

@media screen and (max-width: 45rem) {
  .mci-block-image--mobile-only {
    display: block;
  }

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

/*#endregion*/




/*#region 6.0 Components*/

height-observer {
  display: block;
}

/*#endregion*/

/*#region 6.1 Pagination*/
.page-dots {
  --dot-size: .375rem;
  flex-wrap: wrap;
  justify-content: center;
  gap: .5rem 1rem;
  display: flex;
}

.page-dots > * {
  width: var(--dot-size);
  height: var(--dot-size);
  border-radius: var(--rounded-full);
  place-content: center;
  display: grid;
}

.page-dots > *:after {
  content: "";
  border-radius: inherit;
  opacity: .4;
  background: currentColor;
  transition: opacity .25s, background .25s;
  position: absolute;
  inset: 0;
}

.page-dots > *[aria-current="true"]:after {
  opacity: 1;
}

.page-dots--narrow {
  column-gap: .5rem;
}

.page-dots--autoplay > [aria-current="false"]:after,
.page-dots--autoplay > [aria-current="true"] .circular-progress {
  transition-delay: .15s;
}

.page-dots--autoplay > [aria-current="true"]:after,
.page-dots--autoplay > [aria-current="false"] .circular-progress {
  opacity: 0;
}

.page-dots--autoplay > [aria-current="true"] .circular-progress circle:last-child {
  animation: animateCircularProgress var(--slideshow-progress-duration) linear var(--slideshow-progress-play-state) both;
}

.prev-next-button {
  transition: opacity .15s ease-in-out, transform .15s ease-in-out, visibility .15s ease-in-out;
}

.prev-next-button[disabled] {
  opacity: 0;
  visibility: hidden;
}

@media screen and (pointer: fine) {
  .prev-next-button[is="carousel-prev-button"]:hover svg {
    animation-direction: reverse;
  }
}

@media screen and (pointer: fine) {
  .floating-controls-container {
    padding-inline: 4.625rem;
    display: block;
    position: relative;
  }

  .floating-controls-container > .prev-next-button {
    display: none;
  }

  .floating-controls-container > .is-scrollable ~ .prev-next-button {
    z-index: 1;
    display: grid;
    position: absolute;
    inset-block-start: calc(40% - 1.5625rem);
  }

  .floating-controls-container > .prev-next-button--prev {
    inset-inline-start: var(--floating-controls-inset-inline, 0);
  }

  .floating-controls-container > .prev-next-button--next {
    inset-inline-end: var(--floating-controls-inset-inline, 0);
  }

  .floating-controls-container--inside {
    --floating-controls-inset-inline: 1.5rem;
    padding-inline: 0;
  }

  .floating-controls-container--on-hover > .prev-next-button {
    opacity: 0;
    transform: translateY(-10px);
  }

  .floating-controls-container--on-hover:hover > .prev-next-button:not([disabled]) {
    opacity: 1;
    transform: translateY(0);
  }
}

@media not screen and (pointer: fine) {
  .floating-controls-container > .prev-next-button {
    display: none;
  }
}

.pagination {
  border-block-end-width: 1px;
  grid-auto-rows: minmax(0, 2.8125rem);
  grid-auto-columns: minmax(0, 2.625rem);
  grid-auto-flow: column;
  justify-self: center;
  display: inline-grid;
}

.pagination__link {
  place-content: center;
  display: grid;
  position: relative;
}

.pagination__link[aria-current="page"] {
  box-shadow: 0 1px, inset 0 -2px;
}

@media screen and (min-width: 700px) {
  .pagination {
    grid-auto-columns: minmax(0, 3.75rem);
  }
}

/*#endregion*/

/*#region 6.2 Announcement Bar & Banners */
.announcement-bar__carousel {
  flex-grow: 1;
  place-items: center;
  max-width: 35rem;
  display: grid;
}

.announcement-bar__carousel > * {
  grid-area: 1 / -1;
}

.announcement-bar__carousel > :not(.is-selected) {
  visibility: hidden;
}

@media screen and (min-width: 700px) {
  .announcement-bar {
    --announcement-bar-gutter: var(--container-gutter);
    justify-content: center;
    column-gap: 2.5rem;
  }
}

.banner {
  font-size: var(--text-base);
  color: rgb(var(--banner-color));
  background: rgb(var(--banner-background));
  text-shadow: none;
  padding: .625rem 1.25rem;
}

.banner:has(.banner__text-with-button) {
  padding-block: 1.25rem;
}

.banner--error {
  --banner-background: var(--error-background);
  --banner-color: var(--error-text);
  --button-background: var(--error-text);
  --button-text-color: var(--error-background);
}

.banner--success {
  --banner-background: var(--success-background);
  --banner-color: var(--success-text);
  --button-background: var(--success-text);
  --button-text-color: var(--success-background);
}

.banner--warning {
  --banner-background: var(--warning-background);
  --banner-color: var(--warning-text);
  --button-background: var(--warning-text);
  --button-text-color: var(--warning-background);
}

.banner__text-with-button {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .8rem 1.5rem;
  display: flex;
}

.banner strong {
  font-weight: 600;
}

/*#endregion*/

/*#region 6.3 Video & Model Media */

video-media,
model-media {
  border-radius: inherit;
  aspect-ratio: var(--aspect-ratio, var(--default-aspect-ratio));
  width: 100%;
  display: block;
  position: relative;
  container: media / inline-size;
}

@supports not (aspect-ratio: 1) {
  :is(video-media, model-media):before {
    content: "";
    padding-block-end: calc(100% / (var(--aspect-ratio, var(--default-aspect-ratio))));
    display: block;
  }

  :is(video-media, model-media) > * {
    height: 100%;
    top: 0;
    left: 0;
    position: absolute !important;
  }
}

@container media (width >=32rem) {
  :is(video-media, model-media)::part(play-button) {
    width: 4rem;
    height: 4rem;
  }
}

video-media {
  --default-aspect-ratio: 16 / 9;
}

video-media[host] {
  align-items: center;
  display: grid;
}

video-media[show-play-button]:not([loaded]),
video-media:not([autoplay]) {
  cursor: pointer;
}

video-media > :is(video, iframe, img) {
  border-radius: inherit;
  width: 100%;
  height: 100%;
  transition: opacity .2s ease-in-out;
}

video-media > video[controls] {
  pointer-events: auto;
}

video-media > :-webkit-any(video:not(:-webkit-full-screen), img) {
  object-fit: cover;
  object-position: center;
  margin: 0 !important;
}

video-media > :is(video:not(:fullscreen), img) {
  object-fit: cover;
  object-position: center;
  margin: 0 !important;
}

video-media > :is(iframe, img) {
  position: absolute;
  inset: 0;
}

video-media:not([loaded]) > :is(video, iframe),
video-media[loaded] > img,
video-media[loaded]::part(play-button) {
  opacity: 0;
  pointer-events: none;
}

video-media[suspended] ~ * {
  pointer-events: none;
}

video-media::part(play-button) {
  z-index: 1;
  will-change: scale;
  transition: scale .2s ease-in-out, opacity .2s ease-in-out;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}

video-media:hover::part(play-button) {
  scale: 1.1;
}

model-media {
  --default-aspect-ratio: 1;
}

model-media model-viewer,
model-media .shopify-model-viewer-ui {
  vertical-align: top;
  width: 100%;
  height: 100%;
}


/*#endregion*/


/*#region 7.0 Integrations */
.shopify-product-form .klaviyo-bis-trigger,
.klaviyo-bis-trigger {
  margin-top: 15px !important;
  border-color: #000;
  font-weight: 600 !important;
  width: 100% !important;
}
/*#endregion */

/*#region 7.1 LangShop */
.mci-langshop-switcher {
  display: flex;
}

.mci-langshop-switcher selector[data-type="lsn-switchers"] .lsn-switcher {
  background-color: transparent !important;
}

.mci-langshop-switcher selector[data-type="lsn-switchers"]:focus + .icon-chevron-down,
.mci-langshop-switcher selector[data-type="lsn-switchers"]:focus-within + .icon-chevron-down {
  transform: rotate(180deg);
}

.mci-langshop-switcher .icon-chevron-down {
  transition: transform .2s;
  margin-left: -0.25rem;
}

.mci-langshop-switcher .lsn-select__item:hover {
  filter: none;
}

.mci-langshop-switcher .lsn-select__list--show {
  gap: 0.5rem;
}

.mci-langshop-switcher .lsn-select__current .lsn-select__item-name {
  font-size: .6875rem;
  font-weight: 500;
}
/*#endregion */

/*#region 7.2 LoyaltyLion */
#loyaltylion .lion-notification {
  font-family: var(--text-font-family);
  border-radius: 0 !important;
}

#loyaltylion .lion-notification .lion-notification__message {
  font-weight: 600;
}

#loyaltylion .lion-notification .lion-notification__action {
  margin-top: 1rem;
}

#loyaltylion .lion-notification .lion-notification__action-button {
  background-color: #1c1c1c;
}
/*#endregion */



/*#region 8.0 Product page custom styles*/

.product .prose ul {
  list-style-position: outside;
  list-style-type: none;
  margin-left: 0 !important
}

.brand--mondetta .prose .md {
  font-weight: 500;
}

.prose ul.features-list li.line {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #ddd;
}

.prose ul.features-list li.line:last-child {
  border-bottom: 0
}

.prose ul.features-list li.line-top {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--border-color);
}

.prose ul.summary,
.prose ul.features-list,
.prose ul.features-bullets,
.prose ul.technology,
.prose ul.fill-power,
.prose ul.fabric-type,
.prose ul.care-instructions li.md,
.Product__Tabs .Rte ul {
  list-style-type: none;
  margin-left: 0;
  position: relative;
  left: 0;
}

.prose ul.summary,
.prose ul.features-list,
.prose ul.technology,
.prose ul.care-instructions {
  list-style-type: none;
  padding-left: 0;
  margin-left: 0;
}

.prose ul.technology li {
  line-height: 150%;
  margin-bottom: 30px;
}

.prose ul.technology li::before {
  content: '';
  height: auto;
  display: block;
  position: relative;
  float: left;
  margin: 0 20px 25px 0;
}

.prose ul.fill-power {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 120px;
  font-size: 30px;
  font-weight: 700;
  line-height: 100%;
  border: 3px solid;
}

.prose ul.fill-power--gold {
  border-color: #d2a801;
}

.prose ul.fill-power--orange {
  border-color: #d17327;
}

.prose ul.fill-power--red {
  border-color: #c22a12;
}

.prose ul.fill-power li {
  width: 50%;
}

.prose ul.fill-power li.fill-rating {
  display: flex;
  flex-direction: column;
  justify-content: center;
  border: 5px solid;
  text-align: center;
  background: #eee;
  color: #fff;
  height: 100%;
  line-height: 100%;
  font-size: 185%;
}

.prose ul.fill-power--gold li.fill-rating {
  background: #d2a801;
}

.prose ul.fill-power--orange li.fill-rating {
  background: #d17327;
}

.prose ul.fill-power--red li.fill-rating {
  background: #c22a12;
}

.prose ul.fill-power li.fill-rating span {
  font-size: 14px;
  letter-spacing: 1px;
  display: block;
  text-transform: uppercase;
  line-height: 1;
}

.prose ul.fill-power li.fill-rating-info {
  text-align: left;
  font-weight: normal;
  font-size: 13px;
  line-height: 130%;
  padding: 0 10px;
}

@media screen and (max-width:399px) {
  .prose ul.fill-power li.fill-rating-info {
    font-size: 11px;
  }
}

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

  .prose ul.technology li.icon--rds::before,
  .prose ul.technology li.icon--odorcrunch::before,
  .prose ul.technology li.icon--coolmax::before,
  .prose ul.technology li.icon--tencel::before,
  .prose ul.technology li.icon--grs::before {
    float: none;
  }
}

.prose ul.care-instructions,
.prose ul.fabric-type {
  margin-left: 0;
  position: relative;
  left: 0;
  list-style-type: none;
  list-style-position: inside;
}

.prose ul.fabric-type {
  display: none
}

.prose ul.care-instructions li {
  line-height: 100%;
}

.prose ul.fabric-type li {
  line-height: 200%;
}

.prose ul.care-instructions li::before,
.prose ul.fabric-type li::before,
.prose ul.features-bullets li::before {
  content: '';
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center center;
  vertical-align: middle;
}

.prose ul.care-instructions li::before,
.prose ul.fabric-type li::before {
  height: 32px;
  width: 34px;
  background-size: 32px;
  margin-right: 10px;
}

.prose ul.features-bullets li::before {
  vertical-align: middle;
  margin-right: 15px;
  float: left;
}

.prose ul.fabric-type li::before {
  float: left;
}

.prose ul.care-instructions li.md {
  left: -45px;
}

.prose ul.features-list,
.prose ul.features-bullets li,
.prose li.descriptor-small,
.Product__Tabs .features-bullets li {
  list-style-type: none;
}

.prose li.descriptor-small span.md {
  font-weight: normal;
}

.prose ul.features-bullets li {
  clear: left;
}

.prose ul.summary li.icons {
  display: none;
}

.prose ul.features-list li.tech-icons img,
img.techicons {
  max-width: 225px;
  height: auto;
  margin: 0 0 0 -5px;
}

.prose ul.features-list li.line a.learn {
  text-decoration: underline !important;
  font-weight: 600;
  color: var(--link-color);
}

/*#endregion*/

/*#region 8.1 Icons*/

.prose ul.technology li.icon--odorcrunch::before {
  content: url(/cdn/shop/files/MA-Polygiene-Odor-Crunch.png?v=1614292040);
  left: -15px;
  width: 45px;
}

.prose ul.technology li.icon--rds::before {
  content: url(/cdn/shop/files/icon-rds-certified-100.png?v=1641588349);
  width: 100px;
}

.prose ul.technology li.icon--polygiene::before {
  content: url(/cdn/shop/files/icon-44-polygiene.svg?v=1641398694);
  width: 185px;
}

.prose ul.technology li.icon--primaloft::before {
  content: url(/cdn/shop/files/icon-primaloft.svg?v=1664900389);
  width: 165px;
  float: none;
}

.prose ul.technology li.icon--thermolite::before {
  content: url(/cdn/shop/files/icon-thermolite.svg?v=1641582437);
  width: 165px;
  float: none;
}

.prose ul.technology li.icon--microban::before {
  content: url(/cdn/shop/files/icon-microban.svg?v=1641586587);
  width: 165px;
  float: none;
}

.prose ul.technology li.icon--sorona::before {
  content: url(/cdn/shop/files/sorona-aura-logo-85.png?v=1695826526);
  float: left;
}

.prose ul.technology li.icon--coolmax::before {
  content: url(/cdn/shop/files/icon-coolmax.svg?v=1641584371);
  width: 125px;
  float: none;
}

.prose ul.technology li.icon--tencel::before {
  content: url(/cdn/shop/files/icon-tencel.svg?v=1641924764);
  width: 125px;
}

.prose ul.technology li.icon--lenzing::before {
  content: url(/cdn/shop/files/icon-lenzing.svg?v=1648673566);
  width: 125px;
}

.prose ul.technology li.icon--tactel::before {
  content: url(/cdn/shop/files/icon-tactel.svg?v=1648675021);
  width: 115px;
}

.prose ul.technology li.icon--grs::before {
  content: url(/cdn/shop/files/icon-grs.svg?v=1643387491);
  width: 125px;
}

.prose ul.fabric-type li.icon--fabric::before {
  content: url(/cdn/shop/files/category-10-fabric-black.svg?v=1648132017);
  margin-bottom: 20px;
}

.prose ul.features-bullets li.icon--recyclar::before {
  content: url(/cdn/shop/files/fabric-callout_recyclar.jpg?v=1695824077);
  margin-bottom: 25px;
  display: none;
}

.prose ul.features-bullets li.icon--recycled-nylon::before {
  content: url(/cdn/shop/files/fabric-callout_recycled-nylon.jpg?v=1695824077);
  margin-bottom: 25px;
  display: none;
}

.prose ul.features-bullets li.icon--organic-cotton::before {
  content: url(//cdn.shopify.com/s/files/1/2790/0342/files/organic-cotton.svg?v=1720555835);
  width: 35px;
  background-size: 35px;
}

.prose ul.features-bullets li.icon--cut-to-length::before {
  content: url(//cdn.shopify.com/s/files/1/2790/0342/files/cut-to-length.svg?v=1720555835);
  width: 75px;
}

.prose ul.care-instructions li.care-01::before {
  background-image: url(/cdn/shop/files/care-01-machine-wash-normal-cycle.svg?v=1641417344)
}

.prose ul.care-instructions li.care-02::before {
  background-image: url(/cdn/shop/files/care-02-machine-wash-permapress.svg?v=1641417344)
}

.prose ul.care-instructions li.care-03::before {
  background-image: url(/cdn/shop/files/care-03-machine-wash-gentle.svg?v=1641417344)
}

.prose ul.care-instructions li.care-04::before {
  background-image: url(/cdn/shop/files/care-04-dryclean-only.svg?v=1641417344)
}

.prose ul.care-instructions li.care-05::before {
  background-image: url(/cdn/shop/files/care-05-do-not-dryclean.svg?v=1641417344)
}

.prose ul.care-instructions li.care-06::before {
  background-image: url(/cdn/shop/files/care-06-wash-cold.svg?v=1641417344)
}

.prose ul.care-instructions li.care-07::before {
  background-image: url(/cdn/shop/files/care-07-wash-warm.svg?v=1641417344)
}

.prose ul.care-instructions li.care-08::before {
  background-image: url(/cdn/shop/files/care-08-wash-hot.svg?v=1641417344)
}

.prose ul.care-instructions li.care-09::before {
  background-image: url(/cdn/shop/files/care-09-hand-wash.svg?v=1641417344)
}

.prose ul.care-instructions li.care-10::before {
  background-image: url(/cdn/shop/files/care-10-do-not-wash.svg?v=1641417344)
}

.prose ul.care-instructions li.care-11::before {
  background-image: url(/cdn/shop/files/care-11-tumble-dry-any-heat.svg?v=1641417344)
}

.prose ul.care-instructions li.care-12::before {
  background-image: url(/cdn/shop/files/care-12-do-not-tumble-dry.svg?v=1641481075)
}

.prose ul.care-instructions li.care-13::before {
  background-image: url(/cdn/shop/files/care-13-dry-flat.svg?v=1641481075)
}

.prose ul.care-instructions li.care-14::before {
  background-image: url(/cdn/shop/files/care-14-hang-to-dry.svg?v=1641417344)
}

.prose ul.care-instructions li.care-15::before {
  background-image: url(/cdn/shop/files/care-15-do-not-wring.svg?v=1641417344)
}

.prose ul.care-instructions li.care-16::before {
  background-image: url(/cdn/shop/files/care-16-tumble-dry-low-heat.svg?v=1641417344)
}

.prose ul.care-instructions li.care-17::before {
  background-image: url(/cdn/shop/files/care-17-tumble-dry-med-heat.svg?v=1641417344)
}

.prose ul.care-instructions li.care-18::before {
  background-image: url(/cdn/shop/files/care-18-tumble-dry-high-heat.svg?v=1641417344)
}

.prose ul.care-instructions li.care-19::before {
  background-image: url(/cdn/shop/files/care-19-tumble-dry-no-heat.svg?v=1641417344)
}

.prose ul.care-instructions li.care-20::before {
  background-image: url(/cdn/shop/files/care-20-tumble-dry-gentle.svg?v=1641417344)
}

.prose ul.care-instructions li.care-21::before {
  background-image: url(/cdn/shop/files/care-21-bleaching-allowed.svg?v=1641417344)
}

.prose ul.care-instructions li.care-22::before {
  background-image: url(/cdn/shop/files/care-22-do-not-bleach.svg?v=1641417344)
}

.prose ul.care-instructions li.care-23::before {
  background-image: url(/cdn/shop/files/care-23-use-non-chlorine-bleach.svg?v=1641417344)
}

.prose ul.care-instructions li.care-24::before {
  background-image: url(/cdn/shop/files/care-24-iron-low.svg?v=1641417344)
}

.prose ul.care-instructions li.care-25::before {
  background-image: url(/cdn/shop/files/care-25-iron-medium.svg?v=1641417344)
}

.prose ul.care-instructions li.care-26::before {
  background-image: url(/cdn/shop/files/care-26-iron-high.svg?v=1641417344)
}

.prose ul.care-instructions li.care-27::before {
  background-image: url(/cdn/shop/files/care-27-do-not-iron.svg?v=1641417344)
}

.prose ul.care-instructions li.care-28::before {
  background-image: url(/cdn/shop/files/care-28-no-steam.svg?v=1641417344)
}

.prose ul.care-instructions li.care-29::before {
  background-image: url(/cdn/shop/files/care-29-alert-remove-immediately.svg?v=1641493744)
}

.prose ul.care-instructions li.care-30::before {
  background-image: url(/cdn/shop/files/care-30-wash-with-similar-colors.svg?v=1641493744)
}

.prose ul.care-instructions li.care-31::before {
  background-image: url(/cdn/shop/files/care-31-wash-separately.svg?v=1641493744)
}

.prose ul.care-instructions li.care-32::before {
  background-image: url(/cdn/shop/files/care-32-close-zipper.svg?v=1641493744)
}

.prose ul.care-instructions li.care-33::before {
  background-image: url(/cdn/shop/files/care-33-hang-to-dry.svg?v=1641493744)
}

/*#endregion*/

/*#region 8.2 Blocks*/
.mci-pdp-fit-guide .pxb-entry-point {
  border-radius: 0;
  margin: 0;
  padding: 0.1rem 0.5rem;
}

.mci-pdp-fit-guide .pxb-entry-point svg {
  height: auto;
  width: 1rem;
}

.mci-pdp-fit-guide .pxb-entry-point .pixibo-text-container {
  font-size: 0.75rem;
}

.mci-pdp-fit-guide {
  display: flex;
  margin-top: 0.5rem;
}

.mci-product-subtitle {
  margin-bottom: 0.5rem;
}

.product-info__block-list [data-block-type="price"] {
  margin-block-start: 0 !important;
}

.product-info__block-list div[data-variant-block="modal"],
.product-info__block-list div[data-variant-block="title"],
.product-info__block-list div[data-variant-block*="klaviyo_reviews_average_rating"] {
  margin-block-end: 0;
  margin-block-start: 0;
} 

.product-info__block-list div[data-variant-block="modal"],
.product-info__block-list div[data-variant-block="price"] {
  display: inline-block;
  width: auto;
}

.product-info__block-list div[data-variant-block="modal"] {
  position: absolute;
}

.product-info__block-list div[data-variant-block="modal"] .button {
  padding: 0rem 0.25rem;
  margin-left: 1rem;
  column-gap: 0.25rem;
}

.product-info__block-list div[data-variant-block="modal"] .button:after {
  content: '+';
}

.product-info__block-list div[data-block-type="buy-buttons"] {
  display: inline-block;
  width: 100%;
  margin: 0;
  padding: 0;
}

.product-info__block-list div[data-block-type="buy-buttons"] form.make-room-for-wishlist-true {
  width: calc(100% - 3rem);
}

.product-info__block-list div[data-block-type="buy-buttons"] .ProductForm__AddPatch {
  margin-top: 1rem;
}

.product-info__block-list div[data-variant-block*="klaviyo_email_marketing_sms_customer_hub_wishlist"] {
  display: inline-block;
  position: absolute;
  width: 3rem;
  padding: 0.25rem;
  margin: 0;
  margin-left: -3rem;
  margin-block-end: 0;
  margin-block-start: 0;
}

.product-info__block-list div[data-variant-block*="klaviyo_email_marketing_sms_customer_hub_wishlist"] button {
  margin: 0;
  padding: 0;
  height: 2.8rem;
  width: 3rem;
  margin-top: -0.25rem;
  margin-left: 0.25rem;
}

.product-info__block-list div[data-variant-block*="klaviyo_email_marketing_sms_customer_hub_wishlist"] button > span {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
} 

.product-info__block-list div[data-variant-block*="klaviyo_email_marketing_sms_customer_hub_wishlist"] button:after {
  display: none;
}

.product-info__block-list div[data-variant-block*="payment_terms"] {
  margin-top: 0;
  margin-bottom: 0.6rem;
}

.product-info__block-list div[data-variant-block*="payment_terms"] shopify-payment-terms {
  display: block;
  text-align: left;
  color: rgb(var(--text-color) / .65);
  font-size: 0.8rem;
}

.product-info__block-list div[data-variant-block*="payment_terms"] shopify-payment-terms #shopify-installments {
  font-family: inherit;
}

/*#endregion*/


/*#region 9.0 Blog*/


.blog-post-card {
  align-content: start;
  gap: 1.25rem;
  display: grid;
}

.blog-post-card__info {
  justify-items: start;
  row-gap: 1rem;
  display: grid;
}

.blog-post-list {
  --blog-post-list-items-per-row: 1;
  --blog-post-list-column-gap: 1.875rem;
  --blog-post-list-row-gap: var(--section-stack-gap);
  --blog-post-list-card-width: calc(100% / var(--blog-post-list-items-per-row) - var(--blog-post-list-column-gap) * (var(--blog-post-list-items-per-row) - 1) / var(--blog-post-list-items-per-row));
  grid: auto / repeat(auto-fit, var(--blog-post-list-card-width));
  align-items: start;
  column-gap: var(--blog-post-list-column-gap);
  row-gap: var(--blog-post-list-row-gap);
  display: grid;
}

.featured-blog-post {
  grid-column: 1 / -1;
  display: none;
}

@media screen and (min-width: 700px) {
  .blog-post-list {
    --blog-post-list-items-per-row: 2;
  }
}

@media screen and (max-width: 999px) {
  .blog-post-list--carousel {
    --blog-post-list-card-width: 40vw;
    grid: auto / auto-flow var(--blog-post-list-card-width);
  }
}

@media screen and (max-width: 699px) {
  .blog-post-list--carousel {
    --blog-post-list-card-width: 74vw;
  }
}

@media screen and (min-width: 1000px) {
  .blog-post-list {
    --blog-post-list-items-per-row: 3;
    --blog-post-list-column-gap: 3.75rem;
  }

  .featured-blog-post {
    display: block;
  }

  .featured-blog-post + .blog-post-card {
    display: none;
  }
}

@media screen and (min-width: 1150px) {
  .blog-post-list {
    --blog-post-list-row-gap: 3.75rem;
  }
}

/*#endregion*/






































:where(x-drawer, x-modal, x-popover):not(:defined) {
  display: none;
}

:where(.modal, .drawer, .popover, .header-search) {
  z-index: 999;
  display: none;
  position: relative;
}

:where(.modal, .drawer, .popover, .header-search)::part(overlay) {
  background: rgb(var(--page-overlay));
  min-height: 100vh;
  position: fixed;
  inset: 0;
}

:where(.modal, .drawer, .popover, .header-search)::part(close-button) {
  color: currentColor;
  cursor: pointer;
  background: none;
  border: none;
  place-items: center;
  padding: 0;
  display: grid;
}

:where(.modal, .drawer, .popover, .header-search)::part(close-button) > svg {
  display: block;
}

@media screen and (pointer: fine) {
  :where(.modal, .drawer, .popover, .header-search)::part(close-button) {
    opacity: .6;
    transition: all .2s ease-in;
  }

  :where(.modal, .drawer, .popover, .header-search)::part(close-button):hover {
    opacity: 1;
  }
}

:where(.modal, .drawer, .popover, .header-search)::part(tap-area) {
  position: relative;
}

:where(.modal, .drawer, .popover, .header-search)::part(tap-area):before {
  content: "";
  position: absolute;
  inset: -.65rem;
}

.modal {
  --distance-to-bleed: var(--modal-body-padding-inline);
  --modal-header-padding-block: .875rem;
  --modal-header-padding-inline: 1.25rem;
  --modal-body-padding-block: 1.25rem;
  --modal-body-padding-inline: 1.25rem;
  --modal-body-max-width: 30rem;
}

.modal::part(base) {
  place-items: end center;
  width: 100%;
  height: 100%;
  display: grid;
  position: fixed;
  inset: 0;
}

.modal::part(content) {
  max-width: var(--modal-body-max-width);
  background-color: rgb(var(--background));
  background-image: var(--background-gradient);
  color: rgb(var(--text-color));
  isolation: isolate;
  width: 100%;
  max-height: 75vh;
  overflow: auto;
}

@supports (height: 100dvh) {
  .modal::part(content) {
    max-height: 85dvh;
  }

  @media screen and (max-width: 699px) {
    .quick-buy-modal::part(content) {
      max-height: calc(100dvh - var(--header-height, 3.75rem) - var(--announcement-bar-height, 1.75rem));
    }
  }
}

.modal::part(header) {
  background: inherit;
  /*border-block-end: 1px solid rgb(var(--border-color));*/
  text-align: center;
  z-index: 2;
  align-items: center;
  padding-block-start: var(--modal-header-padding-block);
  padding-block-end: var(--modal-header-padding-block);
  padding-inline-start: var(--modal-header-padding-inline);
  padding-inline-end: var(--modal-header-padding-inline);
  display: grid;
  position: sticky;
  inset-block-start: 0;
}

.modal::part(close-button) {
  position: absolute;
  inset-inline-end: var(--modal-header-padding-inline);
}

.modal::part(body) {
  padding-block-start: var(--modal-body-padding-block);
  padding-block-end: var(--modal-body-padding-block);
  padding-inline-start: var(--modal-body-padding-inline);
  padding-inline-end: var(--modal-body-padding-inline);
}

@media screen and (min-width: 700px) {
  .modal {
    --modal-header-padding-block: 1.125rem;
    --modal-header-padding-inline: 2rem;
    --modal-body-padding-block: 2rem;
    --modal-body-padding-inline: 2rem;
  }

  .modal::part(base) {
    place-items: center;
  }

  .modal--lg {
    --modal-body-max-width: 45rem;
  }

  .modal--xl {
    --modal-body-max-width: 75rem;
  }
}

.drawer {
  --distance-to-bleed: var(--drawer-body-padding-inline);
  --drawer-header-padding-block: 1rem;
  --drawer-header-padding-inline: 1.25rem;
  --drawer-body-padding-block: 1.25rem;
  --drawer-body-padding-inline: 1.25rem;
  --drawer-footer-padding-block: 1rem;
  --drawer-footer-padding-inline: 1.25rem;
  --drawer-max-width: min(92vw, 28.125rem);
}

.drawer::part(base) {
  width: 100%;
  height: 100%;
  position: fixed;
  inset: 0;
}

.drawer::part(content) {
  max-width: var(--drawer-max-width);
  background-color: rgb(var(--background));
  background-image: var(--background-gradient);
  color: rgb(var(--text-color));
  grid-auto-rows: auto minmax(0, 1fr) auto;
  align-content: start;
  width: 100%;
  height: 100%;
  display: grid;
  position: relative;
}

.drawer::part(header) {
  min-height: min(var(--header-height), 5rem);
  border-block-end: 1px solid rgb(var(--border-color));
  box-sizing: border-box;
  justify-content: space-between;
  align-items: center;
  column-gap: 1rem;
  padding-block-start: var(--drawer-header-padding-block);
  padding-block-end: var(--drawer-header-padding-block);
  padding-inline-start: var(--drawer-header-padding-inline);
  padding-inline-end: var(--drawer-header-padding-inline);
  display: flex;
}

.drawer::part(body) {
  overscroll-behavior-y: contain;
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  padding-block-start: var(--drawer-body-padding-block);
  padding-block-end: var(--drawer-body-padding-block);
  padding-inline-start: var(--drawer-body-padding-inline);
  padding-inline-end: var(--drawer-body-padding-inline);
  display: grid;
  overflow: hidden auto;
}

.drawer::part(footer) {
  background-color: rgb(var(--background));
  background-image: var(--background-gradient);
  border-block-start: 1px solid rgb(var(--border-color));
  padding-block-start: var(--drawer-footer-padding-block);
  padding-block-end: var(--drawer-footer-padding-block);
  padding-inline-start: var(--drawer-footer-padding-inline);
  padding-inline-end: var(--drawer-footer-padding-inline);
}

.drawer--sm {
  --drawer-max-width: min(92vw, 25rem);
}

.drawer--center-body::part(body) {
  align-self: center;
}

@media screen and (min-width: 1000px) {
  .drawer {
    --drawer-header-padding-block: 1.125rem;
    --drawer-header-padding-inline: 2rem;
    --drawer-body-padding-block: 2rem;
    --drawer-body-padding-inline: 2rem;
    --drawer-footer-padding-block: 2rem;
    --drawer-footer-padding-inline: 2rem;
  }
}

.popover {
  --distance-to-bleed: var(--popover-body-padding-inline);
  --popover-header-padding-block: .875rem;
  --popover-header-padding-inline: 1.25rem;
  --popover-body-padding-block: 1.25rem;
  --popover-body-padding-inline: 1.25rem;
}

.popover::part(content) {
  background: rgb(var(--background));
  color: rgb(var(--text-color));
  isolation: isolate;
  width: 100%;
  max-height: 75vh;
  overflow: auto;
}

@supports (height: 100dvh) {
  .popover::part(content) {
    max-height: 85dvh;
  }
}

.popover::part(header) {
  background: inherit;
  border-block-end: 1px solid rgb(var(--border-color));
  text-align: center;
  z-index: 2;
  align-items: center;
  padding-block-start: var(--popover-header-padding-block);
  padding-block-end: var(--popover-header-padding-block);
  padding-inline-start: var(--popover-header-padding-inline);
  padding-inline-end: var(--popover-header-padding-inline);
  display: grid;
  position: sticky;
  inset-block-start: 0;
}

.popover::part(close-button) {
  position: absolute;
  inset-inline-end: var(--popover-header-padding-inline);
}

.popover::part(body) {
  padding-block-start: var(--popover-body-padding-block);
  padding-block-end: var(--popover-body-padding-block);
  padding-inline-start: var(--popover-body-padding-inline);
  padding-inline-end: var(--popover-body-padding-inline);
}

.popover__value-list {
  text-align: center;
  justify-items: center;
  gap: .75rem;
  display: grid;
}

.popover__value-list > * {
  text-align: inherit;
  color: rgb(var(--text-color) / .65);
  width: 100%;
  transition: color .2s ease-in-out;
}

.popover__value-list > *[aria-selected="true"],
.popover__value-list > *:hover {
  color: rgb(var(--text-color));
}

@media screen and (max-width: 999px) {
  .popover::part(base) {
    place-items: end center;
    width: 100%;
    height: 100%;
    display: grid;
    position: fixed;
    inset: 0;
  }
}

@media screen and (min-width: 1000px) {
  .popover {
    --popover-block-offset: .75rem;
    position: absolute;
  }

  .popover::part(content) {
    border: 1px solid rgb(var(--border-color));
    box-shadow: 2px 2px 6px rgb(var(--text-color) / .05);
    width: max-content;
    max-width: 18.75rem;
    max-height: min(60vh, 25rem);
  }

  .popover::part(overlay),
  .popover::part(header) {
    display: none;
  }

  .popover__value-list {
    text-align: start;
    justify-items: start;
  }

  .popover:has(.popover__value-list)::part(body) {
    padding-inline-end: 2.5rem;
  }

  .popover--top-start {
    inset-block-end: calc(100% + var(--popover-block-offset));
    inset-inline-start: 0;
  }

  .localization-selectors--footer .popover--top-start {
    inset-inline-start: -7rem;
  }

  .popover--top-end {
    inset-block-end: calc(100% + var(--popover-block-offset));
    inset-inline-end: 0;
  }

  .popover--bottom-start {
    inset-block-start: calc(100% + var(--popover-block-offset));
    inset-inline-start: 0;
  }

  .popover--bottom-end {
    inset-block-start: calc(100% + var(--popover-block-offset));
    inset-inline-end: 0;
  }
}

.pop-in {
  z-index: 10;
  padding: 2rem;
  display: none;
  position: fixed;
  inset-block-end: 1rem;
  inset-inline: 1rem;
}

.pop-in__close-button {
  inset-block-start: 1.25rem;
  inset-inline-end: 1.25rem;
  position: absolute !important;
}

@media screen and (min-width: 700px) {
  .pop-in {
    inset-block-end: 2rem;
    inset-inline: 2rem;
  }
}






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

  .order-summary__header,
  .order-summary__body td:nth-child(n+2),
  .order-summary__footer td:first-child {
    display: none;
  }

  .order-summary__body td {
    border-width: 0;
  }

  .order-summary__body tr:last-child td {
    border-block-end-width: 1px;
  }

  .order-summary__body tr:first-child td {
    padding-block-start: 0;
  }

  .order-summary__body tr:last-child td {
    padding-block-end: calc(var(--table-cell-padding-block) * 2);
  }
}

@media screen and (min-width: 700px) {
  .order-summary .line-item-info {
    max-width: 500px;
  }
}

.shopify-section--announcement-bar,
.shopify-section--header {
  transform: translateY(calc(((var(--announcement-bar-height, 0px) + var(--header-height, 0px)) * -1) * var(--hide-header-group, 0)));
  transition: transform .25s ease-in-out;
}


.line-item {
  --line-item-media-width: 4.375rem;
  align-items: center;
  column-gap: 1.5rem;
  display: flex;
}

.line-item__media {
  width: var(--line-item-media-width);
  flex-shrink: 0;
}

.line-item__title {
  line-height: 1.5 !important;
}

.line-item .price-list > .h5 {
  font-size: min(var(--text-h5), 3.625vw);
}

@media screen and (min-width: 700px) {
  .line-item {
    --line-item-media-width: 7.5rem;
  }
}

.discount-badge {
  background: rgb(var(--on-sale-badge-background));
  color: rgb(var(--on-sale-badge-text));
  align-items: center;
  column-gap: .5rem;
  padding: .125rem .5rem;
  display: flex;
}

.shipping-estimator__form {
  gap: var(--fieldset-gap);
  display: grid;
}

@media screen and (min-width: 700px) {
  .shipping-estimator__form {
    flex-wrap: wrap;
    display: flex;
  }

  .shipping-estimator__form .select {
    max-width: 15rem;
  }
}


.pswp {
  --pswp-bg: var(--background);
  --pswp-root-z-index: 100000;
  z-index: var(--pswp-root-z-index);
  touch-action: none;
  opacity: .003;
  contain: layout style size;
  -webkit-tap-highlight-color: #0000;
  outline: 0;
  width: 100%;
  height: 100%;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
}

.pswp:focus {
  outline: 0;
}

.pswp--open {
  display: block;
}

.pswp img {
  max-width: none;
}

.pswp,
.pswp__bg {
  will-change: opacity;
  transform: translateZ(0);
}

.pswp__bg {
  opacity: .005;
  background: rgb(var(--pswp-bg));
}

.pswp,
.pswp__scroll-wrap {
  overflow: hidden;
}

.pswp__scroll-wrap,
.pswp__bg,
.pswp__container,
.pswp__item,
.pswp__img,
.pswp__zoom-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.pswp__img,
.pswp__zoom-wrap {
  width: auto;
  height: auto;
}

.pswp--click-to-zoom.pswp--zoom-allowed .pswp__img {
  cursor: zoom-in;
}

.pswp--click-to-zoom.pswp--zoomed-in .pswp__img {
  cursor: grab;
}

.pswp--click-to-zoom.pswp--zoomed-in .pswp__img:active {
  cursor: grabbing;
}

.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img,
.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img:active,
.pswp__img {
  cursor: zoom-out;
}

.pswp__container,
.pswp__img,
.pswp__button,
.pswp__counter {
  -webkit-user-select: none;
  user-select: none;
}

.pswp__item {
  z-index: 1;
  overflow: hidden;
}

.pswp__hidden {
  display: none !important;
}

.pswp .pswp__hide-on-close {
  opacity: .005;
  will-change: opacity;
  z-index: 10;
  pointer-events: none;
  transition: opacity .3s cubic-bezier(.4, 0, .22, 1), transform .3s cubic-bezier(.4, 0, .22, 1);
  transform: translateY(15px);
}

.pswp--ui-visible .pswp__hide-on-close {
  opacity: 1;
  pointer-events: auto;
  transition-delay: .3s;
  transform: translateY(0);
}

.pswp__top-bar {
  z-index: 10;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  column-gap: .75rem;
  width: 100%;
  display: flex;
  position: absolute;
  bottom: 2.5rem;
  left: 0;
  pointer-events: none !important;
}

.pswp__top-bar > .circle-button {
  pointer-events: auto;
  transition: transform .2s ease-in-out;
}

@media screen and (pointer: fine) {
  .pswp__top-bar > .circle-button:hover {
    transform: scale(1.1);
  }
}

.pswp__preloader {
  display: none;
}

@media screen and (min-width: 700px) {
  .pswp__top-bar {
    column-gap: 1.125rem;
  }
}



.product-card {
  scroll-snap-align: start;
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  gap: 1.25rem;
  display: grid;
  position: relative;
}

.product-card__figure {
  position: relative;
}

.product-card__figure > .badge-list {
  z-index: 1;
  position: absolute;
  inset-block-start: .25rem;
  inset-inline-start: .25rem;
}

.product-card__media {
  isolation: isolate;
  display: block;
}

.product-card__image {
  object-fit: contain;
  object-position: center;
  margin-inline: auto;
  transition: opacity .1s ease-in-out;
}

.product-card__image--secondary {
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 0;
}

.product-card__quick-add-wrapper {
  --columns: 5;
  --gap: 0.3125rem;
  --pad: 0.3125rem;
  --offset: 0.5rem;
  --button-width-max: 2rem;
  --button-width: min(var(--button-width-max), (100cqi - (var(--offset) * 2) - ((var(--columns) - 1) * var(--gap))) / var(--columns));
  background-color: rgb(255 255 255 / 0.65);
  backdrop-filter: blur(5px);
  container: quick-add / inline-size;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  inset-block-end: 0;
  inset-inline: 0;
  margin: var(--offset);
  z-index: 1;
}

@supports not (container-type: inline-size) {
  .product-card__quick-add-wrapper {
    --button-width: 1.5rem;
  }

  @media screen and (min-width: 750px) {
    .product-card__quick-add-wrapper {
      --button-width: var(--button-width-max);
    }
  }
}

.product-card__quick-add-wrapper:has(.product-card__size:nth-child(6)) {
  --columns: 6;
}

.product-card__quick-add-wrapper:has(.product-card__size:nth-child(7)) {
  --columns: 7;
}

.product-card__swatches {
  container: swatches / inline-size;
  width: 100%;
}

.product-card__sizes {
  display: flex;
  justify-content: center;
  gap: var(--gap);
  flex-wrap: wrap;
  flex-grow: 1;
  padding: var(--gap);
  margin: 0;
}

.product-card__size {
  aspect-ratio: 1/1;
  background: rgb(var(--circle-button-background));
  color: rgb(var(--circle-button-text-color));
  container: product-option / inline-size;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-xxs);
  font-weight: 600;
  letter-spacing: var(--button-letter-spacing);
  width: var(--button-width);
  transition: opacity 0.2s ease-out, scale 0.2s ease-out;
  scale: 1;
}

.product-card__size span {
  pointer-events: none;
  font-size: min(var(--text-xxs), 33.333cqi);
  line-height: 1;
}

.product-card__quick-add-button:disabled,
.product-card__size:disabled {
  opacity: 0.5 !important;
  cursor: wait !important;
}

.product-card__size.sold-out {
  cursor: not-allowed;
  /* color: rgb(var(--circle-button-text-color) / 0.4); */

  border: 1px #2c2c2c solid;
  overflow: hidden;
  opacity: .5;
  position: relative;
}

.product-card__size.sold-out::after {
  position: absolute;
  content: "";
  width: 45px;
  height: 45px;
  border: 1px solid gray;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: left bottom;
  top: auto;
  left: 0 !important;
  bottom: 0 !important;
}

.product-card__quick-add-button {
  background: rgb(var(--circle-button-background));
  color: rgb(var(--circle-button-text-color));
  z-index: 1;
  padding: .625rem;
  position: absolute;
  inset-block-end: .5rem;
  inset-inline-end: .5rem;
}

.product-card__quick-add-wrapper > form {
  width: 100%;
}

.product-card__quick-add-wrapper .product-card__quick-add-button {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: var(--button-letter-spacing);
  line-height: 1;
  flex-shrink: 0;
  font-weight: 600;
  position: static;
  padding: var(--pad);
  min-height: var(--button-width);
  width: 100%;
}

.product-card__quick-add-wrapper:not(:has(.product-card__sizes)) {
  background: transparent;
  backdrop-filter: none;
  justify-content: end;
  pointer-events: none;
}

.product-card__quick-add-wrapper:not(:has(.product-card__sizes)) .product-card__quick-add-button {
  pointer-events: initial;
}

@media screen and (pointer: fine) {
  .product-card__quick-add-button {
    opacity: 0;
    transition: opacity .2s ease-in-out, transform .2s ease-in-out;
    transform: translateY(5px);
  }

  .product-card__quick-add-button :is(svg) {
    transition: transform .2s ease-in-out;
  }

  .product-card__quick-add-button:hover svg {
    transform: rotateZ(90deg);
  }

  .product-card:hover .product-card__quick-add-button {
    opacity: 1;
    transform: translateY(0);
  }

  .product-card__quick-add-wrapper .product-card__quick-add-button {
    opacity: 1;
    transform: none;
    transition: opacity 0.2s ease-out, transform 0.2s ease-out;
  }

  .product-card__size,
  .product-card__quick-add-wrapper .product-card__quick-add-button {
    transition: color 0.15s ease-out, background-color 0.15s ease-out;
  }

  .product-card__size:not(:disabled):not(.sold-out):hover,
  .product-card__quick-add-wrapper .product-card__quick-add-button:not(:disabled):hover {
    background: rgb(var(--circle-button-text-color));
    color: rgb(var(--circle-button-background));
  }

  .product-card__quick-add-wrapper {
    opacity: 0;
    transition: opacity 0.1s ease-in-out;
  }
}

@media screen and (pointer: fine) and (min-width: 750px) {
  .product-card:hover .product-card__quick-add-wrapper {
    opacity: 1;
  }
}

.product-card__info {
  text-align: center;
  align-content: start;
  justify-items: center;
  gap: .75rem;
  display: grid;
}

.product-card__info :is(.price-list, .rating-badge) {
  justify-content: center;
}

.product-card__info .color-swatch {
  /* --swatch-size: 1.375rem; */
  --swatch-size: clamp(var(--size), 7cqi, var(--size-scaled-max));
}

@supports not (container-type: inline-size) {
  .product-card__info .color-swatch {
    --swatch-size: var(--size);
  }
}

@media screen and (pointer: fine) {
  .product-card__image--secondary {
    opacity: 0;
    mix-blend-mode: plus-lighter;
    display: block;
  }

  .product-card__figure:has(.product-card__image--secondary):hover > .product-card__media .product-card__image--primary {
    opacity: 0;
  }

  .product-card__figure:has(.product-card__image--secondary):hover > .product-card__media .product-card__image--secondary {
    opacity: 1;
  }
}

@media screen and (min-width: 700px) {
  .product-card__figure > .badge-list {
    inset-block-start: .5rem;
    inset-inline-start: .5rem;
  }
}

.horizontal-product-card {
  scroll-snap-align: start;
  scroll-snap-stop: always;
  align-items: center;
  column-gap: 1.5rem;
  display: flex;
  position: relative;
  container: horizontal-product-card / inline-size;
}

.horizontal-product-card__figure {
  flex-shrink: 0;
  width: 6.25rem;
}

.horizontal-product-card__info {
  flex-grow: 1;
  grid-template-columns: minmax(0, 1fr);
  grid-auto-columns: auto;
  justify-items: start;
  gap: .625rem;
  display: grid;
}

.horizontal-product-card__info .product-title a {
  text-decoration: underline;
}

.\@large\:horizontal-product-card__button {
  display: none;
}

@media screen and (min-width: 700px) {
  .horizontal-product-card {
    column-gap: 2rem;
  }
}

@container horizontal-product-card (width >=450px) {
  .horizontal-product-card__info {
    grid-auto-flow: column;
    align-items: center;
  }

  .\@narrow\:horizontal-product-card__button {
    display: none;
  }

  .\@large\:horizontal-product-card__button {
    display: block;
  }
}

.product-list {
  --product-list-max-items-per-row-allowed: 2;
  --product-list-calculated-items-per-row: min(var(--product-list-max-items-per-row-allowed), var(--product-list-items-per-row));
  --product-list-default-row-gap: 2.1875rem;
  --product-list-default-column-gap: .625rem;
  --product-list-calculated-row-gap: clamp(var(--section-vertical-spacing) / 4, var(--product-list-default-row-gap) * var(--product-list-vertical-spacing-factor, 1), var(--section-vertical-spacing) * 2);
  --product-list-calculated-column-gap: clamp(var(--container-gutter) / 4, var(--product-list-default-column-gap) * var(--product-list-horizontal-spacing-factor, 1), var(--container-gutter) * 2);
  --product-list-card-width: calc(100% / var(--product-list-calculated-items-per-row) - var(--product-list-calculated-column-gap, 0px) * (var(--product-list-calculated-items-per-row) - 1) / var(--product-list-calculated-items-per-row));
  grid: auto / repeat(auto-fit, var(--product-list-card-width));
  align-items: start;
  column-gap: var(--product-list-calculated-column-gap);
  row-gap: var(--product-list-calculated-row-gap);
  display: grid;
}

.product-list--carousel {
  --product-list-default-column-gap: 1.25rem;
  grid: auto / auto-flow var(--product-list-card-width);
  justify-content: safe center;
}

@media screen and (max-width: 699px) {
  .product-list:not(.product-list--carousel) {
    margin-inline: -.625rem;
  }

  .product-list--carousel {
    --product-list-card-width: min(300px, 65%);
  }
}

@media screen and (min-width: 700px) {
  .product-list {
    --product-list-max-items-per-row-allowed: 3;
    --product-list-default-row-gap: 3rem;
    --product-list-default-column-gap: 1.5rem;
  }

  .product-list--compact {
    --product-list-max-items-per-row-allowed: 4;
  }
}

@media screen and (min-width: 1000px) {
  .product-list {
    --product-list-max-items-per-row-allowed: 4;
    --product-list-default-row-gap: 4rem;
    --product-list-default-column-gap: 3rem;
  }

  .product-list--compact {
    --product-list-max-items-per-row-allowed: 5;
  }

  .product-list--carousel {
    scroll-snap-type: x mandatory;
  }
}

@media screen and (min-width: 1150px) {
  .product-list {
    --product-list-max-items-per-row-allowed: var(--product-list-items-per-row);
  }
}

@media screen and (min-width: 1400px) {
  .product-list {
    --product-list-default-row-gap: 4rem;
    --product-list-default-column-gap: 3.75rem;
  }
}

.quick-buy-modal {
  --modal-body-max-width: 55.625rem;
}

@media screen and (max-width: 699.9px) {
  .quick-buy-modal {
    /* Hack to prevent klaviyo discount banner from covering ATC button on mobile */
    z-index: 90000;
  }

  .quick-buy-modal .variant-picker__option-info {
    font-size: var(--text-xs);
  }
}

.quick-buy-modal::part(header) {
  background: transparent;
  padding: 0;
}

.quick-buy-modal::part(close-button) {
  inset-block-start: var(--modal-header-padding-inline);
}

.quick-buy-modal::part(content) {
  position: relative;
}

.quick-buy-modal::part(body) {
  padding-block: 0;
  padding-inline: 0;
}

.quick-buy-modal__content-wrapper {
  position: relative;
}

.quick-buy-modal__content {
  grid-template-columns: minmax(0, 1fr);
  display: grid;
}

.quick-buy-modal__close-button {
  position: absolute;
  inset-block-start: 1.875rem;
  inset-inline-end: 1.875rem;
}

.quick-buy-modal__content-wrapper .quick-buy-modal__close-button {
  inset-block-start: calc(1.875rem - var(--modal-body-padding-block));
  inset-inline-end: calc(1.875rem - var(--modal-body-padding-inline));
}

.quick-buy-modal__view-more {
  margin-block-start: 2rem;
  display: inline-block;
}

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

  .quick-buy-modal__gallery-wrapper,
  .quick-buy-modal__info-wrapper {
    padding-inline-start: var(--modal-body-padding-inline);
    padding-inline-end: var(--modal-body-padding-inline);
  }

  .quick-buy-modal__info-wrapper {
    padding-inline-start: var(--modal-body-padding-inline);
    padding-inline-end: var(--modal-body-padding-inline);
    padding-block-end: var(--modal-body-padding-block);
  }

  .quick-buy-modal__gallery-wrapper .price-list {
    justify-content: center;
  }

  .quick-buy-modal__gallery-wrapper .price-list .h6 {
    font-size: .6875rem;
  }

  .quick-buy-modal__mobile-info {
    margin-block-start: 1.25rem;
  }

  .quick-buy-modal__info-wrapper {
    border-block-start-width: 1px;
    margin-block-start: 1.25rem;
  }

  .quick-buy-modal__info-wrapper .product-info__block-item:is([data-block-type="vendor"], [data-block-type="title"], [data-block-type="price"], [data-block-type="rating"], [data-block-type="separator"]),
  .quick-buy-modal__info-wrapper .product-info__block-group[data-group-type="text-with-rating"] {
    display: none;
  }

  .quick-buy-modal__info-wrapper .product-info__block-item[data-block-type="variant-picker"] {
    --product-info-gap: 1.25rem;
  }

  .quick-buy-modal__info-wrapper .product-info__block-item[data-block-type="buy-buttons"] {
    --product-info-gap: 1.5rem;
  }
}

@media screen and (min-width: 700px) {
  .quick-buy-modal {
    --modal-body-padding-inline: 3.125rem;
    --modal-body-padding-block: 3.125rem;
  }

  .quick-buy-modal__content {
    grid-template-columns: minmax(0, .9fr) minmax(0, 1fr);
    align-items: center;
    display: grid;
  }

  .quick-buy-modal__info-wrapper {
    padding-inline: var(--modal-body-padding-inline);
    padding-block: var(--modal-body-padding-block);
  }

  .quick-buy-modal__content .product-info {
    top: unset;
    position: relative;
  }
}

.link-reverse {
  text-underline: none;
  background: linear-gradient(to right, currentColor, currentColor) 0 min(100%, 1.35em) / 0 1px no-repeat;
  transition: background-size .3s ease-in-out;
}

@media screen and (pointer: fine) {
  .link-reverse:hover {
    background-size: 100% 1px;
  }
}

.link-faded {
  color: rgb(var(--text-color) / .65);
  transition: color .2s ease-in-out;
}

@media screen and (pointer: fine) {
  .link-faded:hover {
    color: rgb(var(--text-color));
  }
}

.link-faded-reverse {
  transition: color .2s ease-in-out;
}

@media screen and (pointer: fine) {
  .link-faded-reverse:hover {
    color: rgb(var(--text-color) / .65);
  }
}



.js tr[onclick] {
  cursor: pointer;
  transition: background .2s;
}

.js tr[onclick]:hover {
  background: rgb(var(--text-color) / .05);
}

@media screen and (min-width: 700px) {
  table {
    --table-cell-padding-block: 1rem;
    --table-cell-padding-inline: .75rem;
    --table-foot-cell-padding-block: 1rem;
    --table-foot-cell-padding-inline: .75rem;
  }
}

.table--reduce-border :is(td) + td {
  border-inline-start-width: 0;
}

.table--lg {
  --table-cell-padding-block: 1.5rem;
  --table-cell-padding-inline: .5rem;
}

@media screen and (min-width: 700px) {
  .table--lg {
    --table-cell-padding-block: 2rem;
    --table-cell-padding-inline: .75rem;
  }
}

.social-media--list {
  align-items: center;
  gap: var(--social-media-list-gap, .75rem 2rem);
  flex-wrap: wrap;
  display: flex;
}

@media screen and (min-width:1000px) {
  .social-media--list {
    justify-content: end;
  }
}

.social-media--list .social-media__item {
  opacity: .65;
  transition: opacity .2s, color .2s;
}

.social-media--list svg {
  width: var(--social-media-icon-size, 1.25rem);
}

@media screen and (pointer: fine) {
  .social-media--list .social-media__item:hover {
    opacity: 1;
  }
}

.social-media--block {
  grid-template-columns: repeat(auto-fit, minmax(0, .33fr));
  gap: 1px;
  display: grid;
}

.social-media--block:has(:nth-child(4)) {
  grid-template-columns: repeat(auto-fit, minmax(0, .25fr));
}

.social-media--block .social-media__item {
  outline: 1px solid rgb(var(--border-color));
  z-index: 0;
  width: 100%;
  transition: background .15s, color .15s, outline .15s, z-index .15s;
}

.social-media--block a {
  padding-block: .625rem;
  display: block;
}

.social-media--block svg {
  margin-inline: auto;
}

@media screen and (pointer: fine) {
  .social-media--block .social-media__item:hover {
    background: rgb(var(--branding-background));
    outline-color: rgb(var(--branding-background));
    color: rgb(var(--branding-color));
    z-index: 1;
  }
}

@media not screen and (pointer: fine) {
  .social-media--block .social-media__item {
    background: rgb(var(--branding-background));
    outline-color: rgb(var(--branding-background));
    color: rgb(var(--branding-color));
  }
}

@media screen and (min-width: 700px) {
  .social-media--block {
    grid-template-columns: repeat(auto-fit, minmax(0, 3.75rem));
  }
}

.branding-colors--facebook {
  --branding-background: 24 119 242;
  --branding-color: 255 255 255;
}

.branding-colors--twitter {
  --branding-background: 29 161 242;
  --branding-color: 255 255 255;
}

.branding-colors--instagram {
  --branding-background: 195 42 163;
  --branding-color: 255 255 255;
}

.branding-colors--pinterest {
  --branding-background: 189 8 28;
  --branding-color: 255 255 255;
}

.branding-colors--youtube {
  --branding-background: 255 0 0;
  --branding-color: 255 255 255;
}

.branding-colors--tiktok {
  --branding-background: 1 1 1;
  --branding-color: 255 255 255;
}

.branding-colors--vimeo {
  --branding-background: 26 183 234;
  --branding-color: 255 255 255;
}

.branding-colors--linkedin {
  --branding-background: 10 102 194;
  --branding-color: 255 255 255;
}

.branding-colors--whatsapp {
  --branding-background: 79 206 93;
  --branding-color: 255 255 255;
}

.branding-colors--snapchat {
  --branding-background: 255 252 0;
  --branding-color: 0 0 0;
}

.branding-colors--tumblr {
  --branding-background: 54 70 93;
  --branding-color: 255 255 255;
}

.branding-colors--wechat {
  --branding-background: 9 184 62;
  --branding-color: 255 255 255;
}

.branding-colors--reddit {
  --branding-background: 255 69 0;
  --branding-color: 255 255 255;
}

.branding-colors--line {
  --branding-background: 6 199 85;
  --branding-color: 255 255 255;
}

.branding-colors--spotify {
  --branding-background: 30 215 96;
  --branding-color: 255 255 255;
}

.branding-colors--21buttons {
  --branding-background: 0 0 0;
  --branding-color: 255 255 255;
}

.branding-colors--email {
  --branding-background: var(--text-color);
  --branding-color: var(--background);
}

.color-swatch {
  --size-xs: 1.375rem;
  --size-sm: 1.625rem;
  --size-md: 2.125rem;

  --swatch-offset: 2px;
  --swatch-size: var(--size, var(--size-md));
  --swatch-border-size: 1px;
  --swatch-disabled-strike-color: rgb(var(--border-color));
  width: var(--swatch-size);
  height: var(--swatch-size);
  padding: var(--swatch-offset);
  border: var(--swatch-border-size) solid #ddd;
  background-clip: content-box;
  background-origin: content-box;
  background-color: var(--swatch-background-fallback, transparent);
  background-image: var(--swatch-background);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  place-items: center;
  display: grid;
  position: relative;
}

.color-swatch[data-option-size="sm"] {
  /* --swatch-size: 1.625rem; */
  --size: var(--size-sm);
  --size-scaled-max: var(--size-md);
}

.color-swatch[data-option-size="xs"] {
  /* --swatch-size: 1.375rem; */
  --size: var(--size-xs);
  --size-scaled-max: var(--size-sm);
}

:disabled + .color-swatch:before,
:disabled + .color-swatch-wrapper > .color-swatch:before,
.color-swatch.is-disabled:before,
.color-swatch-wrapper.is-disabled > .color-swatch:before {
  content: "";
  margin: var(--swatch-disabled-margin, var(--swatch-offset));
  background: linear-gradient(to bottom right, transparent calc(50% - .5px), var(--swatch-disabled-strike-color) calc(50% - .5px) calc(50% + .5px), transparent calc(50% + .5px));
  position: absolute;
  inset: 0;
}

:checked + .color-swatch,
:checked + .color-swatch-wrapper > .color-swatch,
.color-swatch.is-selected,
.color-swatch-wrapper.is-selected > .color-swatch {
  --swatch-disabled-margin: 0;
  --swatch-disabled-strike-color: currentColor;
  border-color: currentColor;
}

:focus-visible + .color-swatch,
:focus-visible + .color-swatch-wrapper > .color-swatch {
  outline-offset: calc(var(--swatch-offset));
}

.thumbnail-swatch {
  --swatch-size: 3rem;
  --swatch-disabled-strike-color: rgb(var(--border-color));
  width: var(--swatch-size);
  height: var(--swatch-size);
  border-radius: min(4px, var(--input-border-radius));
  border-width: 1px;
  display: block;
  position: relative;
}

:checked + .thumbnail-swatch,
.thumbnail-swatch.is-selected {
  --swatch-disabled-strike-color: currentColor;
  border-color: currentColor;
}

:disabled + .thumbnail-swatch:before,
.thumbnail-swatch.is-disabled:before {
  content: "";
  background: linear-gradient(to bottom right, transparent calc(50% - .5px), var(--swatch-disabled-strike-color) calc(50% - .5px) calc(50% + .5px), transparent calc(50% + .5px));
  position: absolute;
  inset: 0;
}

.thumbnail-swatch > img {
  border-radius: inherit;
  height: 100%;
}

:focus-visible + .thumbnail-swatch {
  outline-offset: 2px;
}

@media screen and (min-width: 700px) {
  .thumbnail-swatch {
    --swatch-size: 4.25rem;
  }
}

.block-swatch {
  --size: 2.5rem;
  --swatch-border-size: 1px;
  --swatch-padding: 0.25rem;
  --swatch-disabled-strike-color: rgb(var(--border-color));
  padding: var(--swatch-padding);
  border-width: var(--swatch-border-size);
  border-radius: var(--input-border-radius);
  color: rgb(var(--text-color) / .65);
  justify-content: center;
  align-items: center;
  column-gap: .875rem;
  height: var(--size);
  min-width: var(--size);
  display: flex;
  overflow: hidden;
  position: relative;
}

.block-swatch[data-option-size="sm"] {
  --size: 2rem;
  font-size: var(--text-xs);
  --swatch-padding: 0.125rem;
}

.block-swatch[data-option-size="xs"] {
  --size: 1.75rem;
  font-size: var(--text-xxs);
  --swatch-padding: 0.125rem;
}

.block-swatch.is-disabled {
  color: rgb(var(--text-color) / .5);
}

:checked + .block-swatch,
.block-swatch.is-selected {
  --swatch-disabled-strike-color: currentColor;
  color: var(--text-color);
  border-color: currentColor;
}

:checked + .block-swatch:not(.is-disabled),
.block-swatch:not(.is-disabled).is-selected {
  color: white;
  border-color: #3d4040;
  background: #3d4040;
}

.block-swatch:before {
  content: "";
  background: linear-gradient(to bottom right, transparent calc(50% - .5px), var(--swatch-disabled-strike-color) calc(50% - .5px) calc(50% + .5px), transparent calc(50% + .5px));
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0;
  transition: opacity .2s ease;
}

:disabled + .block-swatch:before,
.block-swatch.is-disabled:before {
  opacity: 1;
}

:focus-visible + .block-swatch {
  outline-offset: 2px;
}

.block-swatch__color {
  background: var(--swatch-background) center / cover;
  width: 1rem;
  height: 1rem;
  border: 1px solid #ddd;
}

.content-tabs::part(tab-list) {
  border-block-end: 1px solid rgb(var(--border-color));
  white-space: nowrap;
  grid-auto-flow: column;
  justify-content: start;
  gap: 2.5rem;
  margin-block-end: 1.5rem;
  display: grid;
}

.content-tabs [role="tab"] {
  box-shadow: 0 1px rgb(var(--text-color));
  padding-block-end: .625rem;
  transition: opacity .2s ease-in, box-shadow .2s ease-in;
}

.content-tabs [role="tab"]:not([aria-selected="true"]) {
  opacity: .6;
  box-shadow: 0 1px #0000;
}

.content-tabs--center::part(tab-list) {
  width: max-content;
  margin-inline: auto;
}

.content-tabs--center::part(tab-panel-list) {
  text-align: center;
  width: min(800px, 100%);
  margin-inline: auto;
  display: block;
}

@media screen and (min-width: 1000px) {
  .content-tabs::part(tab-list) {
    gap: 4.375rem;
    margin-block-end: 2rem;
  }
}



@media screen and (min-width: 700px) {
  .constrained-image {
    width: var(--image-max-width);
  }
}

.text-with-icon {
  align-items: center;
  gap: .625rem;
  display: flex;
}

.text-with-icon > svg {
  flex-shrink: 0;
}

.icon {
  vertical-align: middle;
  height: auto;
  transition: transform .2s;
  display: block;
}

.group[aria-expanded="true"] .icon.group-expanded\:rotate {
  transform: rotateZ(180deg);
}

[dir="rtl"] .icon--direction-aware {
  scale: -1;
}

.offset-icon {
  --icon-baseline-distance: calc(1em * 1.65 / 2);
  top: var(--icon-baseline-distance);
  position: relative;
  translate: 0 -50%;
}

@supports (top: 1lh) {
  .offset-icon {
    top: .5lh;
  }
}

.price-list {
  flex-wrap: wrap;
  align-items: baseline;
  column-gap: .5rem;
  display: flex;
}

.price-list--product {
  column-gap: 1rem;
}

.localization-selectors {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: .75rem;
  display: flex;
}

@media screen and (min-width: 1000px) {
  .localization-selectors--footer {
    justify-content: end;
    align-items: end;
  }
}

@media screen and (max-width: 999px) {
  .localization-selectors--footer {
    justify-content: start;
    align-items: start;
  }
}

.localization-selectors__separator {
  background: rgb(var(--border-color));
  width: 1px;
  height: .5rem;
}

.localization-selectors__separator:last-child {
  display: none;
}

.localization-toggle {
  align-items: center;
  column-gap: .625rem;
  display: flex;
}

.localization-toggle > svg {
  transition: transform .2s;
}

.localization-toggle[aria-expanded="true"] > svg {
  transform: rotate(180deg);
}

.country-flag {
  width: 20px;
  height: 15px;
}

.payment-methods {
  flex-wrap: wrap;
  gap: 1rem;
  display: flex;
}

.badge {
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  letter-spacing: var(--heading-letter-spacing);
  text-transform: uppercase;
  align-items: center;
  width: max-content;
  padding: .0625rem .3125rem;
  font-size: .625rem;
  display: flex;
}

.badge--sm {
  font-size: .625rem !important;
}

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

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

.badge--bundle {
  background: rgb(var(--bundle-badge-background));
  color: rgb(var(--bundle-badge-text));
}

.badge--custom {
  background: rgb(var(--custom-badge-background));
  color: rgb(var(--custom-badge-text));
}

@media screen and (min-width: 700px) {
  .badge {
    font-size: .6875rem;
  }
}

.badge-list {
  flex-wrap: wrap;
  gap: .25rem;
  display: flex;
}

.badge-list--vertical {
  flex-direction: column;
}

.feature-badge {
  font-size: var(--text-xs);
  align-items: center;
  column-gap: .5rem;
  padding: .375rem .5rem;
  display: inline-flex;
}

.feature-badge :is(svg, img) {
  flex-shrink: 0;
}

.feature-badge-list {
  flex-wrap: wrap;
  gap: .5rem;
  display: flex;
}

.rating-badge {
  flex-wrap: wrap;
  align-items: center;
  column-gap: .5rem;
  line-height: normal;
  display: flex;
}

.rating-badge__stars {
  column-gap: .125rem;
  display: flex;
  position: relative;
  top: -.5px;
}

@media (pointer: fine) {
  .is-scrollable[allow-drag] {
    cursor: grab;
  }

  .is-scrollable[allow-drag]:active {
    cursor: grabbing;
    -webkit-user-select: none;
    user-select: none;
    scroll-snap-type: none;
  }
}

.text-with-rating {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .75rem .5rem;
  display: flex;
}

.inventory {
  row-gap: .5rem;
  font-weight: 500;
  display: grid;
}

.progress-bar {
  background: rgb(var(--text-color) / .1);
  height: 2px;
  display: block;
  position: relative;
}

.progress-bar:before {
  content: "";
  transform: scaleX(var(--progress, 0));
  transform-origin: var(--transform-origin-start);
  background: currentColor;
  width: 100%;
  height: 100%;
  transition: transform .45s ease-in-out;
  display: block;
}

[data-tooltip] {
  --tooltip-text-color: var(--text-color);
  --tooltip-background: var(--background);
  position: relative;
}

@media screen and (pointer: fine) {
  [data-tooltip]:after {
    content: attr(data-tooltip);
    inset-block-end: calc(100% + var(--tooltip-offset, .5rem));
    border-radius: min(1.5rem, var(--button-border-radius));
    background: rgb(var(--tooltip-text-color));
    color: rgb(var(--tooltip-background));
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    justify-self: center;
    width: max-content;
    max-width: 15rem;
    padding: .125rem .5rem;
    font-size: .6875rem;
    transition: opacity .1s ease-in-out, visibility .1s ease-in-out, scale .1s ease-in-out;
    position: absolute;
    left: 50%;
    translate: -50%;
    scale: .9;
  }

  [data-tooltip]:hover:after {
    visibility: visible;
    opacity: 1;
    scale: 1;
  }
}

.separator-dot {
  --dot-size: .25rem;
  width: var(--dot-size);
  height: var(--dot-size);
  background: currentColor;
  border-radius: 100%;
}

.animated-plus {
  --animated-plus-size: .625rem;
  width: var(--animated-plus-size);
  height: var(--animated-plus-size);
  display: block;
  position: relative;
}

.animated-plus:before,
.animated-plus:after {
  content: "";
  background-color: currentColor;
  transition: transform .25s ease-in-out, opacity .25s ease-in-out;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%)rotate(-90deg);
}

.animated-plus:before {
  width: var(--animated-plus-size);
  opacity: 1;
  height: 1px;
}

.animated-plus:after {
  height: var(--animated-plus-size);
  width: 1px;
}

.group[aria-expanded="true"] .animated-plus.group-expanded\:rotate:before {
  opacity: 0;
}

.group[aria-expanded="true"] .animated-plus.group-expanded\:rotate:before,
.group[aria-expanded="true"] .animated-plus.group-expanded\:rotate:after {
  transform: translate(-50%, -50%)rotate(90deg);
}

@media (pointer: fine) {
  .is-scrollable[allow-drag] {
    cursor: grab;
  }

  .is-scrollable[allow-drag]:active {
    cursor: grabbing;
    -webkit-user-select: none;
    user-select: none;
    scroll-snap-type: none;
  }
}

@media screen and (min-width: 700px) {
  .play-button svg {
    width: 5rem;
    height: 5rem;
  }
}

.quantity-selector {
  --quantity-selector-height: 2.7rem;
  --quantity-selector-input-width: 2.5rem;
  --tooltip-offset: calc(-1 * var(--quantity-selector-height) / 2 + 1rem);
  grid-template-columns: var(--quantity-selector-height) auto var(--quantity-selector-height);
  grid-auto-rows: var(--quantity-selector-height);
  border-width: 1px;
  display: inline-grid;
}

.quantity-selector__button {
  place-content: center;
  display: grid;
}

.quantity-selector__button svg {
  transition: opacity .2s;
}

.quantity-selector__button[disabled] svg,
.quantity-selector__button:hover svg {
  opacity: .65;
}

.quantity-selector__input {
  -webkit-appearance: textfield;
  appearance: textfield;
  min-width: var(--quantity-selector-input-width);
  width: var(--quantity-selector-character-count, 1ch);
  text-align: center;
  background: none;
}

.quantity-selector__input:focus {
  outline: none;
}

.quantity-selector__input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.quantity-selector__input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.quantity-selector--sm {
  --quantity-selector-height: 2.2rem;
  --quantity-selector-input-width: 2rem;
}

.breadcrumb {
  display: none;
}

.breadcrumb--visible {
  display: block;
}

.breadcrumb__list {
  align-items: center;
  column-gap: .5rem;
  line-height: 1;
  display: flex;
}

.breadcrumb__list--pdp {
  align-items: start;
  line-height: .75;
}

.breadcrumb__list-item + .breadcrumb__list-item:before {
  content: "/";
  color: rgb(var(--text-color) / .65);
  margin-inline-end: .375rem;
  font-size: .625rem;
  display: inline-block;
}

@media screen and (min-width: 1000px) {
  .breadcrumb {
    display: block;
  }
}

.breadcrumb--floating {
  position: absolute;
  inset-block-start: 1.25rem;
  inset-inline-start: var(--container-gutter);
}

.breadcrumb--padded {
  padding-bottom: 25px;
}

.section-spacing .breadcrumb--floating {
  inset-block-start: calc(-1 * var(--section-vertical-spacing) + 1.25rem);
}

.bordered-block {
  border-block-start: none;
  border-block-end: 1px solid rgb(var(--border-color));
  margin: 2rem 0;
  padding: 3rem 0;
}

.bordered-box {
  border-width: 1px;
  padding: 2.5rem 1.25rem 1.25rem;
  position: relative;
}

.bordered-box__title {
  inset-block-start: 0;
  text-align: center;
  background: rgb(var(--background));
  width: max-content;
  padding-inline: .5rem;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 1000px) {
  .bordered-box {
    padding: 3rem;
  }
}

.loading-bar {
  z-index: 2000;
  pointer-events: none;
  mix-blend-mode: exclusion;
  transform-origin: var(--transform-origin-start);
  background: #fff;
  width: 100%;
  height: 2px;
  position: fixed;
  top: 0;
  left: 0;
  transform: scaleX(0);
}

@media screen and (min-width: 700px) {
  .loading-bar {
    height: 3px;
  }
}

.circular-progress {
  transition: opacity .25s;
  transform: rotate(-90deg);
}

.circular-progress circle:last-child {
  stroke-dasharray: var(--stroke-dasharray);
  stroke-dashoffset: var(--stroke-dasharray);
}

@media (prefers-reduced-motion: no-preference) {
  img[is="image-parallax"] {
    transform: scale(1.3)translateY(-11.5385%);
  }
}

.scroll-margin-offset {
  scroll-margin-block-start: 20px;
}

.share-buttons {
  align-items: center;
  gap: .875rem;
  display: flex;
}

.share-buttons .social-media {
  --social-media-icon-size: 1rem;
  --social-media-list-gap: .75rem;
}

/*
.share-buttons--native:not([hidden]) + .share-buttons {
  display: none;
}
*/

.loading-state {
  position: relative;
  min-height: 20vh;
}

.loading-state::before {
  content: "Loading...";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display: grid;
  align-items: center;
  justify-content: center;
}

.customer-account-box {
  min-height: calc(100vh - var(--section-vertical-spacing) * 2 - var(--announcement-bar-height, 0px) - var(--header-height, 0px));
  text-align: center;
  align-items: center;
  display: grid;
}

.customer-account-category {
  border-block-end-width: 1px;
  padding-block-end: .625rem;
}

.customer-account-overview {
  grid-gap: 2.5rem 3rem;
  display: grid;
}

.customer-account-order-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .5rem;
  display: grid;
}

@media screen and (min-width: 1000px) {
  .customer-account-overview {
    grid-template-columns: minmax(0, 1fr) 14rem;
  }
}

@media screen and (min-width: 1150px) {
  .customer-account-overview {
    grid-template-columns: minmax(0, 1fr) 18rem;
    column-gap: 3.75rem;
  }
}

.customer-address-list {
  --addresses-per-row: 1;
  grid-template-columns: repeat(var(--addresses-per-row), minmax(0, 1fr));
  gap: 3rem 3.75rem;
  display: grid;
}

@media screen and (min-width: 700px) {
  .customer-address-list {
    --addresses-per-row: 2;
  }
}

@media screen and (min-width: 1000px) {
  .customer-address-list {
    --addresses-per-row: 3;
  }
}

.customer-order {
  grid: auto / minmax(0, 1fr);
  gap: 3rem;
  display: grid;
}

.customer-order__details {
  grid-template-columns: minmax(0, 1fr);
  row-gap: 3rem;
  display: grid;
}

.customer-order__address-list {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  align-content: start;
  gap: 2.5rem 3.75rem;
  display: grid;
}

@media screen and (min-width: 1150px) {
  .customer-order {
    grid: auto / auto-flow minmax(0, 1fr) 14rem;
    column-gap: 3.75rem;
  }
}

@media screen and (min-width: 1400px) {
  .customer-order {
    grid-auto-columns: minmax(0, 1fr) 18rem;
  }
}

.announcement-bar {
  --announcement-bar-gutter: .625rem;
  text-align: center;
  font-size: var(--announcement-bar-font-size);
  place-content: center;
  column-gap: .75rem;
  padding-block: 0.5em;
  padding-inline-start: max(var(--announcement-bar-gutter), 50% - var(--container-max-width) / 2);
  padding-inline-end: max(var(--announcement-bar-gutter), 50% - var(--container-max-width) / 2);
  display: flex;
}




.blog-tags {
  flex-wrap: wrap;
  justify-content: center;
  gap: .5rem 1.5rem;
  display: flex;
}

.article {
  --article-wrapper-offset: 0px;
  --article-wrapper-padding-inline: 0px;
  padding-block-end: var(--section-vertical-spacing);
}

.article__toolbar {
  visibility: hidden;
  z-index: 3;
  width: 100vw;
  padding-block: 1rem;
  transition: transform .2s, visibility .2s, inset-block-start .15s ease-in-out;
  position: fixed;
  inset-block-start: var(--sticky-area-height);
  transform: translateY(-100%);
}

.article__toolbar.is-visible {
  visibility: visible;
  transform: translateY(0);
}

.article__toolbar .social-media {
  gap: .75rem 1rem;
}

.article__toolbar .social-media svg {
  width: 1rem;
  height: 1rem;
}

.article__image {
  overflow: hidden;
}

.article__image > img {
  height: var(--article-image-height);
  object-fit: cover;
}

.humans-being-logo {
  height: 200px;
  object-fit: contain;
}

.article__wrapper {
  padding: 1.5rem var(--article-wrapper-padding-inline) 0;
  background: rgb(var(--background));
  gap: 5rem;
  margin-inline-start: max(var(--container-gutter), 50% - var(--container-max-width) / 2 - var(--article-wrapper-padding-inline));
  margin-inline-end: max(var(--container-gutter), 50% - var(--container-max-width) / 2 - var(--article-wrapper-padding-inline));
  display: grid;
  position: relative;
  z-index: 2;
}

.article__image + .article__wrapper {
  margin-block-start: var(--article-wrapper-offset);
}

.article__comments {
  gap: inherit;
  scroll-margin-block-start: calc(var(--sticky-area-height) + 20px);
  display: grid;
}

.article__footer {
  gap: 2.5rem;
  display: grid;
}

@media screen and (min-width: 700px) {
  .article {
    --article-wrapper-offset: -2.75rem;
    --article-wrapper-padding-inline: 3.125rem;
  }

  .article__wrapper {
    gap: 6.25rem;
    padding-block-start: 2.5rem;
  }

  .article__footer {
    grid: auto / auto-flow minmax(0, 1fr);
    align-items: center;
  }
}

@media screen and (min-width: 1000px) {
  .article {
    --article-wrapper-offset: -4.375rem;
  }
}

.comment {
  gap: 1.125rem;
  display: grid;
}

.comment:not(:first-child) {
  padding-block-start: 2rem;
}

.cart-page {
  align-items: start;
  row-gap: max(4rem, var(--section-vertical-spacing-tight));
  display: grid;
}

.cart-footer {
  flex-direction: column;
  gap: 1.5rem;
  display: flex;
}

.cart-recap {
  gap: .5rem;
  display: grid;
}

.cart-recap [type="submit"] {
  margin-block-start: 1rem;
}

@media screen and (min-width: 700px) {
  .cart-footer {
    flex-direction: row;
    gap: 3rem;
  }

  .cart-footer > :not(:only-child) {
    width: min(34rem, 100%);
  }

  .cart-recap {
    text-align: end;
    justify-items: end;
    margin-inline-start: auto;
  }
}

@media screen and (min-width: 1000px) {
  .cart-page {
    row-gap: max(6rem, var(--section-vertical-spacing-tight));
  }
}

.cart-drawer::part(body) {
  padding-block: 0;
}

:is(.cart-drawer:has(.cart-drawer__order-note[open])::part(header), .cart-drawer:has(.cart-drawer__order-note[open])::part(body)) {
  opacity: .4;
  pointer-events: none;
  transition: opacity .2s;
}

.cart-drawer:not(:has(.cart-drawer__footer:only-child))::part(footer) {
  padding-block-start: calc(var(--drawer-footer-padding-block) - .5rem);
}

.cart-drawer .free-shipping-bar {
  font-size: var(--text-sm);
  border-block-end-width: 1px;
  margin-inline-start: calc(-1 * var(--drawer-body-padding-inline));
  margin-inline-end: calc(-1 * var(--drawer-body-padding-inline));
  padding-block: .5rem;
  padding-inline-start: var(--drawer-body-padding-inline);
  padding-inline-end: var(--drawer-body-padding-inline);
}

.cart-drawer__items {
  gap: 1.5rem;
  padding-block-start: var(--drawer-body-padding-block);
  padding-block-end: var(--drawer-body-padding-block);
  display: grid;
}

.cart-drawer__complementary-products {
  padding-inline: var(--drawer-body-padding-inline);
  border-block-start-width: 1px;
  padding-block: 1.25rem;
  margin-inline: calc(-1 * var(--drawer-body-padding-inline)) !important;
  row-gap: 1.25rem !important;
}

.cart-drawer__button-price {
  align-items: center;
  display: flex;
}

.cart-drawer__button-price:before {
  content: "";
  background: currentColor;
  border-radius: 100%;
  width: 3px;
  height: 3px;
  margin-inline-end: 1.125rem;
}

.cart-drawer__footer {
  align-items: start;
  gap: 1rem;
  display: grid;
}

.cart-drawer__order-note {
  background-color: rgb(var(--background));
  background-image: var(--background-gradient);
  box-shadow: 1px 0 6px rgb(var(--border-color));
  z-index: 2;
  border-block-start-width: 1px;
  width: 100%;
  padding-block-start: calc(var(--drawer-footer-padding-block) - .5rem);
  padding-block-end: var(--drawer-footer-padding-block);
  padding-inline-start: var(--drawer-body-padding-inline);
  padding-inline-end: var(--drawer-body-padding-inline);
  display: none;
  position: absolute;
  inset-block-end: 0;
  inset-inline-start: 0;
}

@media screen and (min-width: 700px) {
  .cart-drawer__complementary-products {
    padding-block: 2rem;
    row-gap: 1rem !important;
  }
}

.collection-banner,
.page-banner {
  display: block;
  position: relative;
}

.collection-banner .breadcrumb,
.page-banner .breadcrumb {
  z-index: 2;
}

.collection {
  --collection-gap: 2rem;
  --collection-grid-template: minmax(0, 1fr);
  --collection-sidebar-width: 15rem;
  grid-template-columns: var(--collection-grid-template);
  align-items: start;
  gap: var(--collection-gap);
  margin-block-end: var(--section-vertical-spacing);
  scroll-margin-block-start: calc(var(--collection-toolbar-height, 0px) + 20px);
  display: grid;
}

.collection:only-child {
  margin-block-start: 1.5rem;
}

.collection__main {
  row-gap: var(--section-stack-gap);
  display: grid;
}

.collection .product-list[collection-mobile-layout="medium"] {
  --product-list-items-per-row: var(--collection-items-per-row-medium);
}

.collection .product-list[collection-mobile-layout="large"] {
  --product-list-items-per-row: var(--collection-items-per-row-large);
}

@media screen and (min-width: 700px) {
  .collection:only-child {
    margin-block-start: 3rem;
  }

  .collection .product-list[collection-desktop-layout="compact"] {
    --product-list-items-per-row: var(--collection-items-per-row-compact);
  }

  .collection .product-list[collection-desktop-layout="compact"] .product-card__info {
    display: none;
  }

  .collection .product-list[collection-desktop-layout="medium"] {
    --product-list-items-per-row: var(--collection-items-per-row-medium);
  }

  .collection .product-list[collection-desktop-layout="large"] {
    --product-list-items-per-row: var(--collection-items-per-row-large);
  }
}

@media screen and (min-width: 1150px) {
  .collection {
    --collection-gap: 3.125rem;
  }
}

.collection-toolbar {
  box-shadow: 0 1px rgb(var(--border-color)), 0 -1px rgb(var(--border-color));
  background-color: rgb(var(--background));
  z-index: 2;
  min-height: 3em;
  transition: inset-block-start .15s ease-in-out;
  display: flex;
  position: sticky;
  inset-block-start: var(--sticky-area-height);
  inset-inline-start: 0;
}

.collection-toolbar .popover {
  --popover-block-offset: 0px;
  inset-inline-end: -1px;
}

.collection-toolbar__button-list {
  flex-grow: 1;
  display: flex;
}

.collection-toolbar__button {
  padding-block: .75rem;
}

.collection-toolbar__button :is(svg) {
  transition: transform .2s;
}

.collection-toolbar__button[aria-expanded="true"] svg {
  transform: rotateZ(180deg);
}

.collection-toolbar__button-container {
  width: 100%;
  position: relative;
}

.collection-toolbar__button-container + .collection-toolbar__button-container {
  border-inline-start-width: 1px;
}

.collection-toolbar__layout-switch-list {
  border-inline-start-width: 1px;
  justify-content: flex-end;
  align-items: center;
  gap: 1rem;
  padding-inline: 1.25rem;
  display: flex;
}

.collection-toolbar__button {
  opacity: .5;
  transition: opacity .2s;
}

.collection-toolbar__button:hover,
.collection-toolbar__button.is-active {
  opacity: 1;
}

@media screen and (min-width: 700px) {
  .collection-toolbar {
    flex-direction: row-reverse;
    justify-content: space-between;
  }

  .collection-toolbar__button {
    padding-block: 1.125rem;
  }

  .collection-toolbar__button-list {
    flex-direction: row-reverse;
    flex: none;
  }

  .collection-toolbar__button-container {
    border-inline-start-width: 1px;
  }

  .collection-toolbar__button-container > .collection-toolbar__button {
    width: max-content;
    padding-inline: 2.875rem;
  }

  .collection-toolbar__layout-switch-list {
    border-inline-width: 0 1px;
    padding-inline: 1.875rem;
  }

  .collection-toolbar__products-count {
    position: absolute;
    inset-block-start: 50%;
    inset-inline-start: 50%;
    transform: translate(-50%, -50%);
  }
}

.facets .accordion-list .accordion:first-child {
  border-block-start-width: 0;
}

.facets .accordion-list .accordion:first-child .accordion__toggle {
  padding-block-start: 0;
}

.facets .accordion-list .accordion:last-child {
  border-block-end-width: 0;
}

.facets .accordion-list .accordion:last-child .accordion__content {
  padding-block-end: 0;
}

.active-facets {
  flex-wrap: wrap;
  align-items: center;
  gap: .625rem;
  display: flex;
}

.removable-facet {
  font-size: var(--text-sm);
  border-width: 1px;
  align-items: center;
  column-gap: .375rem;
  padding: .375rem .625rem;
  display: flex;
}

.facets-clear-all {
  margin-inline-start: .625rem;
}

@media screen and (min-width: 700px) {
  .removable-facet {
    font-size: var(--text-base);
    column-gap: .625rem;
    padding: .625rem .875rem;
  }
}

@media screen and (min-width: 1000px) {
  .facets-sidebar {
    top: calc(var(--sticky-area-height) + var(--collection-toolbar-height, 0px) + 20px);
    width: var(--collection-sidebar-width);
    grid-column-end: -2;
    display: block;
    position: sticky;
  }
}

.collection-list {
  gap: var(--collection-list-gap, 0px);
  display: flex;
}

.collection-list .collection-card {
  flex-basis: var(--collection-list-item-size, calc(100% / var(--collection-list-items-per-row) - var(--collection-list-gap, 0px) * (var(--collection-list-items-per-row) - 1) / var(--collection-list-items-per-row)));
}

.collection-list--text-outside {
  row-gap: 3rem;
}

.collection-card {
  align-content: start;
  gap: 1.5rem;
  display: grid;
}

.countdown {
  gap: var(--section-stack-gap);
  display: grid;
}

.countdown__timer {
  text-transform: uppercase;
  text-align: center;
  grid: auto / auto-flow minmax(0, 1fr) auto;
  align-items: center;
  column-gap: .75rem;
  display: grid;
}

.countdown__timer-item {
  display: grid;
}

.countdown__timer-flip {
  --heading-letter-spacing: 0;
  justify-content: center;
  column-gap: 2px;
  display: flex;
}

.countdown__timer-flip::part(digit) {
  color: rgb(var(--countdown-timer-flip-text-color));
}

.countdown__timer-flip--background::part(digit) {
  background: rgb(var(--countdown-timer-flip-background));
  border-radius: .25rem;
  padding: .375rem .5rem;
}

@media screen and (max-width: 699px) {
  .countdown__content {
    text-align: center;
  }

  .countdown__timer {
    justify-content: center;
  }
}

@media screen and (min-width: 700px) {
  .collection-list--single-card {
    margin: 0 20%;
  }

  .countdown {
    grid-template-columns: minmax(250px, 570px) max-content;
    justify-content: space-between;
    gap: 4rem;
    width: 100%;
  }

  .countdown__timer-item {
    row-gap: .5rem;
  }

  .countdown--reverse {
    grid-template-columns: max-content minmax(250px, 570px);
  }

  .countdown--reverse .countdown__timer {
    order: -1;
  }
}

@media screen and (min-width: 1000px) {
  .countdown__timer {
    column-gap: 1rem;
  }
}

.countdown-condensed {
  column-gap: 2.25rem;
  justify-content: var(--countdown-condensed-justify-content, space-between);
  padding: 1rem var(--container-gutter);
  display: flex;
}

.countdown-condensed__text {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem 1.5rem;
  display: flex;
}

.countdown-condensed__timer {
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  letter-spacing: .2em;
  text-transform: uppercase;
  text-align: center;
  flex-shrink: 0;
  align-items: center;
  column-gap: .25rem;
  display: flex;
}

.countdown-condensed__timer-item {
  display: grid;
}

.countdown-condensed__timer-flip {
  font-size: .625rem;
  font-weight: bolder;
}

.countdown-condensed__timer-unit {
  font-size: .5rem;
}

@media screen and (max-width: 699px) {
  .countdown-condensed .h6 {
    font-size: .625rem;
  }
}

@media screen and (min-width: 700px) {
  .countdown-condensed {
    column-gap: 5rem;
  }

  .countdown-condensed__timer {
    column-gap: .75rem;
  }

  .countdown-condensed__timer-flip {
    font-size: .75rem;
  }

  .countdown-condensed__timer-unit {
    font-size: .625rem;
  }
}

.footer {
  background: rgb(var(--background));
  color: rgb(var(--text-color));
  padding-block-start: var(--section-vertical-spacing);
  padding-block-end: min(var(--section-vertical-spacing), 3rem);
}

.footer__inner {
  row-gap: min(var(--section-vertical-spacing), 3rem);
  display: grid;
}

.footer__block-list {
  justify-content: start;
  align-items: start;
  gap: min(var(--section-vertical-spacing), 2.5rem);
  display: grid;
}

.footer__aside {
  text-align: center;
  justify-content: start;
  align-items: center;
  gap: 1.5rem;
  display: grid;
}

.footer__aside .payment-methods {
  justify-content: center;
  max-width: 30rem;
}

@media screen and (min-width: 700px) {
  .footer__block-list {
    justify-content: var(--footer-content-justify-items);
    flex-wrap: wrap;
    gap: 3rem;
    display: flex;
  }

  .footer__block {
    flex: auto;
  }

  .footer__block--links,
  .footer__block--bcorp-tagline {
    flex-grow: 0;
    max-width: 14rem;
  }

  .footer__block--newsletter {
    flex-basis: 14rem;
    max-width: 18rem;
  }

  .footer__block--text {
    flex-basis: 14rem;
    max-width: 24rem;
  }
}

@media screen and (min-width: 1000px) {
  .footer__aside {
    grid-auto-flow: column;
    justify-content: space-between;
  }

  .footer__aside .payment-methods {
    justify-content: end;
  }
}

@media screen and (min-width: 1150px) {
  .footer__block-list {
    justify-content: var(--footer-content-justify-items);
    column-gap: 3.75rem;
  }
}

@media screen and (min-width: 1400px) {
  .footer__block-list {
    column-gap: 5rem;
  }
}

.gift-card__image {
  max-width: 16.875rem;
  margin-inline: auto;
}

.gift-card__logo {
  max-width: 500px;
  width: 100%;
  margin: 0 auto 30px auto;
}

.gift-card__redeem-info {
  padding: 1.5rem;
}

.gift-card__save {
  place-items: center;
  gap: 1.5rem;
  display: grid;
}

.gift-card__qr-code {
  width: 5rem;
  height: 5rem;
}

@media screen and (min-width: 700px) {
  .gift-card__redeem-info {
    padding: 2rem;
  }

  .gift-card__save {
    grid-auto-flow: column;
  }
}

.faq {
  justify-content: start;
  align-items: start;
  column-gap: 3.75rem;
  display: flex;
}

.faq__toc {
  align-content: start;
  justify-items: start;
  gap: .75rem;
  /*min-width: 150px;
  max-width: 300px;*/
  transition: inset-block-start .15s ease-in-out;
  display: grid;
  position: sticky;
  inset-block-start: calc(var(--sticky-area-height) + 1.25rem);
}

.faq__toc-item {
  text-underline: none;
  background: linear-gradient(to right, currentColor, currentColor) 0 min(100%, 1.35em) / 0 1px no-repeat;
  transition: background-size .3s ease-in-out;
}

.faq__toc-item.is-active {
  background-size: 100% 1px;
}

.faq__content {
  flex-basis: 100%;
}

.faq__category {
  flex-wrap: wrap;
  align-items: center;
  column-gap: 1rem;
  scroll-margin-block-start: 1.25rem;
  display: flex;
}

.faq__category + .accordion {
  margin-block-start: 1.25rem;
}

.accordion + .faq__category {
  margin-block-start: 3rem;
}

.featured-collections-navigation {
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  justify-content: safe center;
  column-gap: 1.5rem;
  display: grid;
}

.featured-collections-navigation > button:not(:only-child) {
  padding-block-end: 2px;
  position: relative;
}

.featured-collections-navigation > button:not(:only-child):after {
  content: "";
  width: calc(100% - var(--heading-letter-spacing));
  transform-origin: var(--transform-origin-start);
  background: currentColor;
  height: 1px;
  transition: transform .3s;
  position: absolute;
  inset-block-end: 0;
  inset-inline-start: 0;
  transform: scaleX(0);
}

.featured-collections-navigation > button:not(:only-child)[aria-current="true"]:after {
  transform: scaleX(1);
}

@media screen and (min-width: 700px) {
  .featured-collections-navigation {
    column-gap: 2.5rem;
  }
}

.featured-collections-carousel {
  display: grid;
  position: relative;
}

.featured-collections-carousel > * {
  grid-area: 1 / -1;
}

.featured-collections-carousel__item {
  gap: var(--section-stack-gap);
  grid-template-columns: minmax(0, 1fr);
  display: grid;
}

.featured-collections-carousel__item:not(.is-selected) {
  display: none;
}

.header {
  --header-show-transparent-logo: 0;
  grid: var(--header-grid);
  justify-content: center;
  align-items: center;
  column-gap: 1.25rem;
  row-gap: var(--header-padding-block);
  box-shadow: 0 -1px rgb(var(--header-separation-border-color)) inset;
  padding-block-start: var(--header-padding-block);
  padding-block-end: var(--header-padding-block);
  padding-inline-start: var(--container-gutter);
  padding-inline-end: var(--container-gutter);
  transition: background .2s, color .2s, border .2s, box-shadow .2s, transform .15s ease-in-out;
  display: grid;
  position: relative;
}

.header.is-hidden {
  transform: translateY(-100%);
}

.shopify-section--header:has(.header.is-hidden) {
  pointer-events: none;
}

:has(.shopify-section:first-child [allow-transparent-header]):not(:has(.shopify-section--header + .shopify-section-group-header-group)) .header {
  margin-block-end: calc(-1 * var(--header-height, 0px));
}

:has(.shopify-section:first-child [allow-transparent-header]):not(:has(.shopify-section--header + .shopify-section-group-header-group)) .header:not(:hover, .is-solid, :has([open])) {
  --header-show-transparent-logo: 1;
  --header-separation-border-color: 0 0 0 / 0;
  --background: 0 0 0 / 0;
  --background-gradient: 0 0 0 / 0;
  --border-color: 0 0 0 / 0;
  --text-color: var(--header-transparent-header-text-color);
}

:has(.shopify-section:first-child [allow-transparent-header]):not(:has(.shopify-section--header + .shopify-section-group-header-group)) .header:not(:hover, .is-solid, :has([open])) .lsn-select__item-name,
:has(.shopify-section:first-child [allow-transparent-header]):not(:has(.shopify-section--header + .shopify-section-group-header-group)) .header:not(:hover, .is-solid, :has([open])) .link-faded {
  color: white;
  transition: none;
}

.header__cart-dot {
  box-shadow: 0 0 0 2px rgb(var(--background));
  background-color: currentColor;
  border-radius: 100%;
  width: .5rem;
  height: .5rem;
  transition: transform .2s ease-in-out;
  position: absolute;
  inset-block-start: 0;
  inset-inline-end: -.125rem;
  transform: scale(0);
}

.header__cart-dot.is-visible {
  transform: scale(1);
}

@media screen and (min-width: 700px) {
  .header {
    column-gap: 2.5rem;
  }

  .header--nogap {
    column-gap: 0;
  }
}

.header__logo {
  grid-area: logo;
  justify-self: start;
  position: relative;
}

.header__logo-image {
  width: var(--header-logo-width);
  max-width: 100%;
  height: auto;
}

.header__logo-image:where(:not(:only-of-type)) {
  opacity: calc(1 - var(--header-show-transparent-logo));
  transition: opacity .2s;
}

.header__logo-image--transparent {
  opacity: var(--header-show-transparent-logo);
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 0;
}

.header__logo-text {
  display: block;
}

.header__primary-nav {
  flex-wrap: wrap;
  grid-area: primary-nav;
  align-items: center;
  gap: .625rem 1.25rem;
  display: flex;
}

.header__primary-nav-item:before {
  content: attr(data-title);
  transform-origin: var(--transform-origin-start);
  background: rgb(var(--text-color));
  color: #0000;
  font-size: var(--text-h6);
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  letter-spacing: var(--heading-letter-spacing);
  text-transform: var(--heading-text-transform);
  pointer-events: none;
  width: max-content;
  height: 2px;
  transition: transform .2s ease-in-out;
  position: absolute;
  inset-block-end: 0;
  transform: scaleX(0);
}

.header__primary-nav-item:hover:before {
  transform: scaleX(1);
}

.header__primary-nav-item:has(.header__dropdown-menu):before {
  display: none;
}

@media screen and (max-width: 699px) {
  .header__nav-icon {
    width: 1.375rem;
  }
}

@media screen and (min-width: 1000px) {
  .header__primary-nav--center {
    justify-content: safe center;
  }
}

@media screen and (min-width: 1150px) {
  .header__primary-nav {
    column-gap: 2.5rem;
  }
}

.header__secondary-nav {
  flex-wrap: wrap;
  grid-area: secondary-nav;
  justify-content: end;
  justify-self: end;
  align-items: center;
  gap: .625rem .9rem;
  display: flex;
}

.header__secondary-nav .localization-selectors:not(:only-child) {
  margin-inline-end: .625rem;
}

@media screen and (min-width: 700px) {
  .header__secondary-nav {
    column-gap: 1.25rem;
  }
}

.header__dropdown-menu {
  background: rgb(var(--background));
  color: rgb(var(--text-color));
  box-shadow: 2px 2px 6px rgb(var(--text-color) / .05);
  border-width: 0 1px 1px;
  width: max-content;
  min-width: 12.5rem;
  max-width: 17.5rem;
  padding-block: 1.125rem;
  position: absolute;
  inset-block-start: calc(100% - 2px);
}

.header__dropdown-menu:not(:has(.header__dropdown-menu)) {
  max-height: calc(100vh - var(--header-height, 0px) - var(--announcement-bar-height, 0px) - 20px);
  overflow: auto;
}

.header__dropdown-menu:before {
  content: "";
  transform-origin: var(--transform-origin-start);
  background: rgb(var(--text-color));
  width: 100%;
  height: 2px;
  transition: transform .25s ease-in-out 50ms;
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 0;
  transform: scaleX(0);
}

[aria-expanded="true"] > .header__dropdown-menu:before {
  transform: scaleX(1);
}

.header__dropdown-menu :is(a, summary) {
  padding: .375rem 1.5625rem;
  display: block;
}

.header__dropdown-menu .header__menu-disclosure {
  position: relative;
}

.header__dropdown-menu--restrictable {
  max-height: calc(100vh - var(--header-height, 0px) - var(--announcement-bar-height, 0px) - 40px);
  overflow-y: auto;
}

.header__dropdown-menu .header__dropdown-menu {
  border-width: 1px;
  inset-block-start: calc(-1.125rem - 1px);
  inset-inline-start: 100%;
}

.header__dropdown-menu .header__dropdown-menu:before {
  display: none;
}

.header-search {
  z-index: -1;
  width: 100%;
  display: none;
  position: absolute;
  inset-block-start: 100%;
  inset-inline-start: 0;
}

.header-search::part(overlay) {
  min-height: calc(100vh - var(--sticky-area-height));
  inset-block-start: var(--sticky-area-height);
}

.header-search::part(content) {
  max-height: calc(100vh - var(--header-height, 0px) - var(--announcement-bar-height, 0px) - 1.25rem);
  background: rgb(var(--background));
  color: rgb(var(--text-color));
  overflow: auto;
}

@supports (max-height: 100dvh) {
  .header-search::part(content) {
    max-height: min(var(--header-search-max-height, 100vh), 100dvh - var(--header-height, 0px) - var(--announcement-bar-height, 0px) - 1.25rem);
  }
}

.header-search__form-control {
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  column-gap: .75rem;
  padding-block: .75rem;
  display: grid;
}

.header-search__input {
  -webkit-appearance: none;
  appearance: none;
  background: none;
}

.header-search__input:focus {
  outline: none;
}

.header-search__input::-webkit-search-decoration {
  display: none;
}

.header-search__input::-webkit-search-cancel-button {
  display: none;
}

.header-search__input::-webkit-search-results-button {
  display: none;
}

.header-search__input::-webkit-search-results-decoration {
  display: none;
}

@media screen and (min-width: 700px) {
  .header-search__form-control {
    column-gap: 1.25rem;
    padding-block: 1.5rem;
  }
}

.predictive-search {
  display: block;
}

.predictive-search__no-results {
  text-align: center;
  padding-block: 2.5rem 4rem;
}

.predictive-search__results {
  grid-template-columns: minmax(0, 1fr);
  gap: 2.5rem;
  padding-block: 1.25rem 2rem;
  display: grid;
}

.predictive-search__suggestions {
  grid-template-columns: minmax(0, 1fr);
  justify-items: start;
  gap: .75rem 1.5rem;
  display: grid;
}

.predictive-search__suggestions mark {
  background: none;
  font-weight: bolder;
}

.predictive-search__suggestions span,
.predictive-search__suggestions mark {
  text-transform: capitalize;
}

.predictive-search__tabs::part(tab-list-scrollable) {
  scrollbar-width: none;
  margin-inline-start: calc(-1 * var(--distance-to-bleed));
  margin-inline-end: calc(-1 * var(--distance-to-bleed));
  padding-inline-start: var(--distance-to-bleed);
  padding-inline-end: var(--distance-to-bleed);
  display: flex;
  overflow: auto;
}

.predictive-search__tabs::part(tab-list) {
  width: min-content;
  min-width: 100%;
}

.predictive-search__category {
  border-block-end-width: 1px;
  padding-block-end: .625rem;
}

.predictive-search__products {
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 1.25rem;
  display: grid;
}

.predictive-search__blog-posts {
  grid-template-columns: minmax(0, 1fr);
  gap: 1.5rem 2.5rem;
  display: grid;
}

.predictive-search__blog-posts .blog-post-card__info {
  row-gap: .75rem;
}

.predictive-search__collections {
  align-items: start;
  gap: var(--container-gutter);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  display: grid;
}

@media screen and (max-width: 699px) {
  .predictive-search__suggestions {
    grid: auto / auto-flow max-content;
    row-gap: 1.25rem;
  }

  .predictive-search__products .horizontal-product-card__figure {
    max-width: 4.375rem;
  }

  .predictive-search__blog-posts .blog-post-card {
    grid-template-columns: minmax(0, 160px) minmax(0, 1fr);
    align-items: center;
  }
}

@media screen and (min-width: 700px) {
  .predictive-search__no-results {
    padding-block: 4.75rem 6.25rem;
  }

  .predictive-search__results {
    padding-block: 1.5rem 3rem;
  }

  .predictive-search__blog-posts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .predictive-search__blog-posts .blog-post-card__category {
    font-size: .6875rem;
  }
}

@media screen and (min-width: 1000px) {
  .predictive-search__results--with-suggestions {
    grid-template-columns: 250px minmax(0, 1fr);
  }

  .predictive-search__products {
    grid-template-columns: repeat(var(--product-list-items-per-row, 4), minmax(0, 1fr));
  }

  .predictive-search__blog-posts {
    grid-template-columns: repeat(var(--blog-post-list-items-per-row, 4), minmax(0, 1fr));
  }

  .predictive-search__collections {
    grid-template-columns: repeat(var(--collection-list-items-per-row), minmax(0, 1fr));
  }
}

.mega-menu {
  --mega-menu-gap: 2.5rem;
  --mega-menu-linklist-gap: 2.5rem;
  --mega-menu-promo-gap: 2rem;
  max-height: calc(100vh - var(--header-height, 0px) - var(--announcement-bar-height, 0px) - 20px);
  justify-content: safe flex-start;
  align-items: start;
  column-gap: var(--mega-menu-gap);
  background: rgb(var(--background));
  color: rgb(var(--text-color));
  border-block-end-width: 1px;
  width: 100%;
  padding-block: 2.5rem;
  padding-inline-start: var(--container-gutter);
  padding-inline-end: var(--container-gutter);
  display: flex;
  position: absolute;
  inset-block-start: 100%;
  inset-inline-start: 0;
  overflow-y: auto;
}

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

.mega-menu--reverse .mega-menu__promo {
  justify-content: flex-start;
}

.mega-menu__linklist {
  gap: var(--mega-menu-linklist-gap);
  flex-wrap: wrap;
  flex: 0 auto;
  display: flex;
}

.mega-menu__linklist > * {
  max-width: 280px;
}

.mega-menu__promo {
  justify-content: flex-end;
  column-gap: var(--mega-menu-promo-gap);
  flex: 0 auto;
  display: flex;
}

.mega-menu__promo > * {
  flex: 315px;
  min-width: 240px;
  max-width: 315px;
}

@media screen and (min-width: 1400px) {
  .mega-menu {
    --mega-menu-gap: 6.25rem;
    --mega-menu-linklist-gap: 2.5rem 6.25rem;
  }

  .mega-menu:has(.mega-menu__linklist > :nth-child(5)) {
    --mega-menu-linklist-gap: 2.5rem 4rem;
  }
}

.header-sidebar {
  --header-linklist-padding-block: 1rem;
}

.header-sidebar::part(close-button) {
  opacity: 1;
}

.header-sidebar::part(header) {
  border-block-end: none;
}

.header-sidebar::part(content) {
  box-sizing: border-box;
  overflow-x: hidden;
}

.header-sidebar::part(panel-list) {
  position: relative;
}

.header-sidebar__scroller {
  padding-block-end: var(--drawer-body-padding-block);
  padding-inline-start: var(--drawer-body-padding-inline);
  padding-inline-end: var(--drawer-body-padding-inline);
  overflow-y: auto;
}

.header-sidebar__linklist-button {
  text-align: start;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-block-start: calc(var(--header-linklist-padding-block) / 2);
  padding-block-end: calc(var(--header-linklist-padding-block) / 2);
  transition: color .2s;
  display: flex;
}

@media screen and (pointer: fine) {
  .header-sidebar__main-panel li:has([aria-expanded="true"]) ~ li .header-sidebar__linklist-button {
    color: rgb(var(--text-color) / .65);
  }

  .header-sidebar__main-panel li:has(~ li [aria-expanded="true"]):not(:has([aria-expanded="true"])) .header-sidebar__linklist-button {
    color: rgb(var(--text-color) / .65);
  }
}

.header-sidebar__sub-panel li:has([aria-expanded="true"]) ~ li .header-sidebar__linklist-button {
  color: rgb(var(--text-color) / .65);
}

.header-sidebar__sub-panel li:has(~ li [aria-expanded="true"]):not(:has([aria-expanded="true"])) .header-sidebar__linklist-button {
  color: rgb(var(--text-color) / .65);
}

.header-sidebar__sub-panel li:has([aria-expanded="true"]) .header-sidebar__linklist-button {
  color: rgb(var(--text-color)) !important;
}

.header-sidebar__back-button {
  border-block-end-width: 1px;
  width: 100%;
  margin-block-end: 1rem;
  padding-block-start: var(--header-linklist-padding-block);
  padding-block-end: 1rem;
}

.header-sidebar__back-button.is-divided {
  margin-block-end: .5rem;
}

.header-sidebar__nested-linklist {
  border-inline-start-width: 1px;
  row-gap: .75rem;
  margin-block: 2px 1.125rem;
  margin-inline-start: .5rem;
  padding-inline-start: 1.5rem;
  display: grid;
}

.header-sidebar__main-panel {
  background-color: rgb(var(--background));
  background-image: var(--background-gradient);
  grid-template-rows: minmax(0, 1fr);
  grid-template-columns: minmax(0, 1fr);
  grid-auto-columns: max-content;
  height: 100%;
  display: grid;
}

.header-sidebar__footer {
  position: relative;
}

.header-sidebar__footer:before {
  content: "";
  background: linear-gradient(transparent, rgb(var(--background)));
  width: 100%;
  height: 2.5rem;
  position: absolute;
  inset-block-end: 100%;
  inset-inline-start: 0;
}

.header-sidebar__footer > * {
  padding-block: 1.25rem;
  padding-inline-start: var(--drawer-footer-padding-inline);
  padding-inline-end: var(--drawer-footer-padding-inline);
}

.header-sidebar__footer .localization-selectors {
  border-block-start-width: 1px;
  justify-content: flex-start;
  column-gap: 1.25rem;
}

.header-sidebar__collapsible-panel {
  width: var(--drawer-max-width);
  background-color: rgb(var(--background));
  background-image: var(--background-gradient);
  height: 100%;
  display: none;
  position: absolute;
  inset-block-start: 0;
}

.header-sidebar__promo {
  grid-auto-flow: column;
  gap: 2rem 1.25rem;
  margin-block-start: 1.25rem;
  display: flex;
}

.header-sidebar__promo > * {
  /*min-width: 12.5rem;*/
  min-width: 100%;
}

.header-sidebar__promo > *:only-child {
  min-width: 100%;
}

.header-sidebar__linklist.divide-y .header-sidebar__linklist-button {
  padding-block-start: var(--header-linklist-padding-block);
  padding-block-end: var(--header-linklist-padding-block);
}

.header-sidebar__linklist.divide-y .header-sidebar__back-button {
  padding-block-end: var(--header-linklist-padding-block);
}

.header-sidebar__linklist.divide-y .header-sidebar__nested-linklist {
  margin-block-end: calc(.5rem + var(--header-linklist-padding-block));
}

.header-sidebar__linklist.divide-y .header-sidebar__promo {
  margin-block-start: .75rem;
}

@media screen and (min-width: 700px) {
  .header-sidebar {
    --header-linklist-padding-block: 1.25rem;
  }
}

@media screen and (min-width: 1000px) {
  .header-sidebar::part(panel-list) {
    position: static;
  }

  .header-sidebar::part(content) {
    overflow-x: visible;
  }

  .header-sidebar:has(.header-sidebar__collapsible-panel[aria-activedescendant])::part(content) {
    border-inline-end: 1px solid rgb(var(--border-color));
  }

  .header-sidebar__main-panel {
    z-index: 1;
    position: relative;
  }

  .header-sidebar__collapsible-panel .header-sidebar__scroller {
    inset-block: min(var(--header-height), 5rem) 0;
    width: 100%;
    position: absolute;
  }

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

  .header-sidebar__promo > * {
    min-width: 100%;
  }
}

.image-with-text {
  display: grid;
  overflow: hidden;
}

.image-with-text > .prose {
  box-sizing: content-box;
  max-width: var(--image-with-text-content-max-width);
  padding-inline-start: var(--container-gutter);
  padding-inline-end: var(--container-gutter);
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (max-width: 700px) {
  .image-with-text > .prose {
    max-width: 100%;
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

.image-with-text > :is(svg, img) {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 699px) {
  .image-with-text > .prose {
    margin-inline: auto;
  }
}

@media screen and (min-width: 700px) {
  .image-with-text {
    --image-with-text-gap: 2.5rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center;
  }

  .image-with-text > .prose {
    padding-inline-start: var(--image-with-text-gap);
  }

  .image-with-text--reverse > :is(picture, svg, img) {
    order: 9999;
  }

  .image-with-text--reverse > .prose {
    margin-inline-start: auto;
    padding-inline-end: var(--image-with-text-gap);
  }
}

@media screen and (min-width: 1000px) {
  .image-with-text {
    --image-with-text-gap: 6rem;
  }
}

.image-with-text-block > :not(img, svg, picture) {
  background: rgb(var(--background));
  padding: 2.375rem 1.25rem;
  box-shadow: 0 1px 20px #3636364d;
}

@media screen and (min-width: 700px) {
  .image-with-text-block > :not(img, svg, picture) {
    padding: 3rem 1rem;
  }
}

.image-with-text-block--parallax {
  min-height: var(--content-over-media-height, auto);
  aspect-ratio: var(--image-with-text-block-aspect-ratio);
  transform: unset;
  clip-path: inset(0);
}

@media (prefers-reduced-motion: no-preference) {

  .image-with-text-block--parallax > svg,
  .image-with-text-block--parallax > picture img {
    min-height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
  }

  @supports (min-height: 100lvh) {
    :is(.image-with-text-block--parallax > svg, .image-with-text-block--parallax > picture img) {
      min-height: 100lvh;
    }
  }
}

.images-with-text-scroll {
  --sticky-area-height: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px) + var(--header-is-sticky, 0) * var(--header-height, 0px));
  align-items: start;
  display: grid;
  position: relative;
}

.images-with-text-scroll:before {
  content: "";
  background: rgb(var(--images-with-text-scroll-overlay));
  z-index: 1;
  pointer-events: none;
  position: absolute;
  inset: 0;
}

.images-with-text-scroll__image-background,
.images-with-text-scroll__container {
  grid-area: 1 / -1;
}

.images-with-text-scroll__image-background {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
  max-height: 100vh;
  position: sticky;
  inset-block-start: 0;
}

.images-with-text-scroll__container {
  z-index: 1;
  place-items: start center;
  row-gap: 2rem;
  padding-block-start: var(--section-vertical-spacing);
  padding-block-end: var(--section-vertical-spacing);
  display: grid;
}

.images-with-text-scroll__item {
  display: contents;
}

.images-with-text-scroll__item:not(:first-child) > .images-with-text-scroll__image {
  opacity: 0;
}

.images-with-text-scroll__image {
  grid-area: 1 / 1;
  align-self: center;
}

.images-with-text-scroll__text {
  text-align: center;
  grid-area: 2 / 1;
  max-width: 375px;
}

@media screen and (min-width: 700px) {
  .images-with-text-scroll__container {
    row-gap: 3rem;
  }
}

@media screen and (max-width: 999px) {
  .images-with-text-scroll__item:not(.is-selected) {
    visibility: hidden;
  }

  .images-with-text-scroll__image {
    width: min(56vw, 27.5rem);
  }
}

@media screen and (min-width: 1000px) {
  .images-with-text-scroll {
    min-height: calc(100vh - var(--sticky-area-height));
  }

  .images-with-text-scroll__container {
    --image-width: min(50vw - var(--container-gutter), 575px);
    --image-height: min(var(--image-width), var(--image-width) / var(--images-with-text-scroll-master-image-ratio));
    --content-padding: calc((100vh - var(--image-height) - var(--sticky-area-height)) / 2);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: minmax(0, 1fr);
    align-items: center;
    padding-block-start: var(--content-padding);
    padding-block-end: var(--content-padding);
  }

  .images-with-text-scroll__image {
    height: var(--image-height);
    object-fit: contain;
    object-position: center;
    position: sticky;
    inset-block-start: calc(var(--content-padding) + var(--sticky-area-height));
  }

  .images-with-text-scroll__text {
    text-align: var(--images-with-text-scroll-text-alignment);
    grid-area: auto / 2;
  }

  .images-with-text-scroll--reverse .images-with-text-scroll__image {
    grid-column: 2;
  }

  .images-with-text-scroll--reverse .images-with-text-scroll__text {
    grid-column: 1;
  }
}

.logo-list {
  grid: auto / repeat(var(--logo-list-items-per-row), minmax(0, 250px));
  justify-content: center;
  gap: var(--logo-list-gap);
  display: grid;
}

.logo-list__item {
  outline: 1px solid rgb(var(--logo-list-item-border-color));
  place-items: center;
  padding: 1.25rem;
  display: grid;
}

@media screen and (min-width: 700px) {
  .logo-list__item {
    padding: 2rem 1.5rem;
  }
}

.media-grid {
  --media-grid-column-count: 2;
  align-items: start;
  gap: var(--media-grid-gap);
  grid: auto-flow dense var(--media-grid-row-height) / repeat(var(--media-grid-column-count), minmax(0, 1fr));
  display: grid;
}

.media-grid__item {
  grid-area: span min(2, var(--media-grid-item-row-span)) / span 2;
  height: 100%;
  container-type: inline-size;
}

.media-grid__item > * {
  height: 100%;
}

@media screen and (min-width: 700px) {
  .media-grid {
    --media-grid-column-count: 12;
  }

  .media-grid__item {
    grid-area: span var(--media-grid-item-row-span) / span var(--media-grid-item-column-span);
  }
}

.multi-column {
  grid: var(--multi-column-grid);
  column-gap: var(--multi-column-gap);
  row-gap: var(--section-stack-gap);
  justify-content: var(--multi-column-content-alignment);
  display: grid;
}

.multi-column__item {
  align-content: start;
  gap: 2rem;
  display: grid;
}

.multi-column__item--overlap {
  gap: 0;
}

.multi-column__item--overlap > .prose {
  isolation: isolate;
  margin-block-start: -.875rem;
}

.multiple-media-with-text {
  --multiple-media-with-text-gap: 2rem;
  grid: var(--multiple-media-with-text-grid);
  gap: var(--multiple-media-with-text-gap);
  display: grid;
}

.multiple-media-with-text__media-wrapper {
  grid-area: media-wrapper;
  grid: var(--multiple-media-with-text-media-grid);
  column-gap: var(--multiple-media-with-text-media-gap);
  display: grid;
}

.multiple-media-with-text__media-wrapper > * {
  grid-row: 1 / -1;
}

.multiple-media-with-text__content-wrapper {
  grid-area: content-wrapper;
}

@media screen and (min-width: 1000px) {
  .multiple-media-with-text {
    --multiple-media-with-text-gap: 2rem 4rem;
  }
}

@media screen and (min-width: 1150px) {
  .multiple-media-with-text {
    --multiple-media-with-text-gap: 2rem 7.5rem;
  }
}

.multiple-media-with-text--overlap .multiple-media-with-text__media-wrapper > :first-child {
  grid-column: 1 / 3;
}

.multiple-media-with-text--overlap .multiple-media-with-text__media-wrapper > :nth-child(2) {
  grid-column: 2 / 4;
}

@media screen and (min-width: 700px) {
  .multiple-media-with-text--overlap.multiple-media-with-text--reverse .multiple-media-with-text__media-wrapper > :first-child {
    grid-column: 2 / 4;
  }

  .multiple-media-with-text--overlap.multiple-media-with-text--reverse .multiple-media-with-text__media-wrapper > :nth-child(2) {
    grid-column: 1 / 3;
  }
}

@media screen and (min-width: 700px) {
  .newsletter .form {
    width: 35rem;
  }
}

@media screen and (min-width: 700px) {
  .newsletter-popup {
    width: 23.75rem;
    inset-inline-start: auto;
  }
}

.password {
  position: relative;
}

.password__inner {
  isolation: isolate;
  align-content: space-between;
  row-gap: 3rem;
  min-height: 100vh;
  padding-block: 1.6rem;
  display: grid;
}

@supports (height: 100dvh) {
  .password__inner {
    min-height: 100dvh;
  }
}

.password__header {
  justify-items: center;
  display: grid;
}

.password__header > * {
  grid-area: 1 / -1;
}

.password__password-button {
  margin-inline-start: auto;
}

.password__block-list {
  justify-self: center;
  row-gap: .625rem;
  width: min(100%, 30rem);
  display: grid;
}

.password__content,
.password__social {
  padding: 1.25rem;
}

.password__social {
  display: grid;
}

.password__social .social-media {
  justify-content: center;
}

.password__footer {
  flex-wrap: wrap;
  justify-content: center;
  gap: .75rem;
  display: flex;
}

@media screen and (min-width: 700px) {
  .password__content {
    padding: 2.5rem;
  }

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

.prev-next-blog-posts {
  gap: 3.125rem;
  display: grid;
}

@media screen and (min-width: 700px) {
  .prev-next-blog-posts {
    grid: auto / auto-flow minmax(min-content, 31.25rem);
    justify-content: center;
    gap: 1.875rem;
  }
}

@media screen and (min-width: 1150px) {
  .prev-next-blog-posts {
    gap: 3.75rem;
  }
}

@media screen and (min-width: 700px) {
  .privacy-banner {
    width: 31.25rem;
  }
}

.shopify-section--main-product .section-spacing {
  padding-block-start: 0;
}

.product {
  grid: var(--product-grid, none);
  align-items: start;
  gap: var(--product-gap, 1.875rem);
  display: grid;
}

.shopify-section--main-product-with-breadcrumb .section-spacing {
  padding-block-start: 0;
}

@media screen and (min-width: 1000px) {
  .shopify-section--main-product .section-spacing {
    padding-block-start: var(--container-gutter);
  }

  .product {
    --product-gap: 3.5rem;
  }
}

@media screen and (min-width: 1150px) {
  .product {
    --product-gap: 5rem;
  }
}

.product-gallery {
  --product-gallery-gap: 1.5rem;
  --product-gallery-thumbnail-list-gap: 1rem .5rem;
  --product-gallery-thumbnail-size: 3.5rem;
  flex-direction: var(--product-gallery-flex-direction, column);
  align-items: start;
  gap: var(--product-gallery-gap) var(--product-gap, 0px);
  grid-area: product-gallery;
  display: flex;
  position: relative;
}

.quick-buy-modal .product-gallery {
  --product-gallery-carousel-gap: 0rem;
  --product-gallery-thumbnail-list-gap: 0.5rem 0.3125rem;
  --product-gallery-thumbnail-size: clamp(2.5rem, 5vw, 2.75rem);
}

.product-gallery__zoom-button {
  z-index: 1;
  transition: opacity .2s, visibility .2s;
  position: absolute;
  inset-block-start: 1.25rem;
  inset-inline-end: 0;
}

.product-gallery__zoom-button--hidden {
  opacity: 0;
  visibility: hidden;
}

.product-gallery__image-list {
  row-gap: var(--product-gallery-gap);
  grid-auto-rows: max-content;
  grid-auto-columns: minmax(0, 1fr);
  width: 100%;
  display: grid;
}

.product-gallery__carousel {
  grid: var(--product-gallery-carousel-grid, auto / auto-flow 100%);
  align-items: start;
  gap: var(--product-gallery-carousel-gap, 1.5rem min(1.5rem, var(--container-gutter)));
  scroll-snap-type: var(--product-gallery-carousel-scroll-snap-type, x mandatory);
  display: grid;
  position: relative;
}

@media screen and (min-width: 700px) {

  .quick-buy-modal .product-gallery__carousel,
  .quick-buy-modal .product-gallery__thumbnail-scroller {
    margin-inline: 0;
  }
}

.product-gallery[allow-zoom] .product-gallery__media {
  cursor: var(--cursor-zoom-in-svg-url) 18 18, zoom-in;
}

.product-gallery__media > * {
  width: 100%;
}

.product-gallery__thumbnail-list {
  flex-shrink: 0;
  max-width: 100%;
  position: relative;
}

.quick-buy-modal .product-gallery__thumbnail-list--left {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  height: calc(100% - 1rem);
}

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

.product-gallery__thumbnail-scroller {
  grid-auto-columns: var(--product-gallery-thumbnail-size);
  grid-auto-flow: var(--product-gallery-thumbnail-list-grid-auto-flow, column);
  align-content: start;
  align-items: start;
  gap: var(--product-gallery-thumbnail-list-gap);
  max-height: var(--product-gallery-thumbnail-list-max-height, none);
  scroll-snap-type: both mandatory;
  overscroll-behavior: contain;
  scrollbar-width: none;
  grid-template-columns: none;
  display: grid;
  position: relative;
  overflow: auto;
}

.product-gallery__thumbnail-scroller::-webkit-scrollbar {
  display: none;
}

.quick-buy-modal .product-gallery__thumbnail-list--left .product-gallery__thumbnail-scroller {
  padding: 0;
}

.product-gallery__thumbnail {
  border: 1px solid #0000;
  padding: 1px;
  transition: border-color .1s;
  position: relative;
}

.product-gallery__thumbnail[aria-current="true"] {
  border-color: currentColor;
}

.product-gallery__media-badge {
  position: absolute;
  inset-block-start: 3px;
  inset-inline-end: 3px;
}

@media screen and (max-width: 999px) {
  .product-gallery__carousel-with-arrows {
    align-items: center;
    display: flex;
  }

  .product-gallery__carousel-with-arrows .product-gallery__media > img {
    width: 45vw;
    margin-inline: auto;
  }
}

@media screen and (min-width: 1000px) {
  .product-gallery__thumbnail-list {
    position: sticky;
    inset-block-start: calc(var(--sticky-area-height) + 20px);
  }

  .product-gallery__media {
    scroll-margin-block-start: 1.25rem;
  }
}

.product-info {
  --product-info-gap: 1rem;
  grid-area: product-info;
}

/* Custom font overrides */

.product-info .product-title,
.product-card__info a.product-title.h5,
.price-list--product .h4,
.product-card__info .price-list .h5 .prose a.button,
.shopify-section a.button,
.prose .button-group a.button,
.prose a.link,
.buy-buttons .button,
.cart-drawer__footer .button,
.cart-recap .button {
  font-family: var(--text-font-family);
  font-weight: bold;
}

/* end Custom font overrides */

.product-info__block-list > :not(:first-child) {
  margin-block-start: var(--product-info-gap);
}

.product-info__block-list > :not(:last-child) {
  margin-block-end: var(--product-info-gap);
}

.product-info__block-item:empty {
  display: none;
}

.product-info__block-item:not(:has(> :not([hidden]))) {
  display: none;
}

.product-info__block-item:is([data-block-type="vendor"], [data-block-type="title"], [data-block-type="sku"], [data-block-type="price"]) {
  --product-info-gap: .5rem;
}

.product-info__block-group:has(.product-info__block-item:is([data-block-type="vendor"], [data-block-type="title"], [data-block-type="sku"], [data-block-type="price"])) {
  --product-info-gap: .5rem;
}

.product-info__block-item:is([data-block-type="variant-picker"], [data-block-type="product-variations"], [data-block-type="separator"], [data-block-type="description"], [data-block-type="text"], [data-block-type="liquid"], [data-block-type="share-buttons"]) {
  --product-info-gap: 1.5rem;
}

.product-info__block-group:has(.product-info__block-item:is([data-block-type="variant-picker"], [data-block-type="product-variations"], [data-block-type="separator"], [data-block-type="description"], [data-block-type="text"], [data-block-type="liquid"], [data-block-type="share-buttons"])) {
  --product-info-gap: 1.5rem;
}

.product-info__block-item:is([data-block-type="inventory"], [data-block-type="buy-buttons"], [data-block-type="pickup-availability"], [data-block-type="more-information"], [data-block-type="offers"]) {
  --product-info-gap: .5rem;
  /*2rem*/
}

.product-info__block-group:has(.product-info__block-item:is([data-block-type="inventory"], [data-block-type="buy-buttons"], [data-block-type="pickup-availability"], [data-block-type="more-information"], [data-block-type="offers"])) {
  --product-info-gap: 2rem;
}

.product-info__block-item[data-block-type="complementary-products"] {
  --product-info-gap: 3rem;
}

.product-info__block-group:has(.product-info__block-item[data-block-type="complementary-products"]) {
  --product-info-gap: 3rem;
}

@media screen and (max-width: 699px) {
  .product-info--center :is([data-block-type="vendor"], [data-block-type="title"], [data-block-type="sku"], [data-block-type="price"]) {
    text-align: center;
  }

  .product-info--center :is(.badge-list, .price-list, .rating-badge) {
    justify-content: center;
  }

  .product-info--center .text-with-rating {
    flex-direction: column;
    justify-content: center;
  }
}

@media screen and (min-width: 1000px) {
  .product-info {
    position: sticky;
    inset-block-start: calc(var(--sticky-area-height) + 20px);
  }
}

.product-content-below-gallery {
  grid-area: product-content;
}

.product-content-below-gallery product-recommendations:not(:first-child) {
  margin-block-start: max(48px, var(--product-gap, 0px));
}

.product-content-below-gallery product-recommendations:not(:last-child) {
  margin-block-end: max(48px, var(--product-gap, 0px));
}

.product-content-below-gallery__description:not(:last-child) {
  margin-block-end: 1.25rem;
}

.product-info__more-info {
  border-block-width: 1px;
  justify-content: space-between;
  align-items: center;
  padding: .9375rem;
  display: flex;
}

.product-info__more-info > svg {
  transition: transform .2s ease-in-out;
}

@media screen and (pointer: fine) {
  .product-info__more-info:hover > svg {
    transform: translateX(5px);
  }
}

.variant-picker .popover {
  --popover-block-offset: .5rem;
  --popover-body-padding-inline: 1.25rem;
  width: 100%;
}

.variant-picker .popover::part(content) {
  width: 100%;
  max-width: none;
}

:not(.is-disabled) > .variant-picker__dropdown-sold-out-label,
:not(.is-disabled) > .product-sticky-bar__dropdown-sold-out-label {
  display: none;
}

.buy-buttons {
  row-gap: 1rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

.buy-buttons > * {
  width: 100% !important;
}

.buy-buttons > div {
  width: 100% !important;
}

.pickup-location {
  align-items: start;
  gap: .25rem;
  display: grid;
}

.pickup-location + .pickup-location {
  padding-block-start: 1rem;
}

.product-offers .page-dots {
  padding-block-end: 1.5rem;
}

.product-offers__item {
  padding: 1.5rem;
}

.product-offers__list--carousel {
  grid: auto / auto-flow 100%;
  display: grid;
}

.complementary-products {
  grid-template-columns: minmax(0, 1fr);
  row-gap: 1.875rem;
  max-width: 40rem;
  margin-inline: auto;
  display: grid;
}

.complementary-products__header {
  text-align: center;
  justify-content: center;
  align-items: center;
  display: flex;
}

.complementary-products__header--align-start {
  text-align: start;
  justify-content: space-between;
}

.complementary-products__product-list {
  gap: 1.25rem;
  display: grid;
  position: relative;
}

.complementary-products__product-list--carousel {
  grid: auto / auto-flow 100%;
}

@media screen and (max-width: 699px) {
  .complementary-products__product-list--carousel .product-card__figure {
    max-width: 11.25rem;
    margin-inline: auto;
  }
}

@media screen and (min-width: 700px) {
  .complementary-products {
    row-gap: 1rem;
  }

  .complementary-products__header {
    text-align: start;
    justify-content: space-between;
  }
}

.product-sticky-bar {
  --input-padding-inline: clamp(1rem, 2.5vw, 1.5rem);
  --input-padding-block: calc(var(--input-padding-inline) / 2);

  padding: var(--container-gutter);
  opacity: 0;
  visibility: hidden;
  z-index: 3;
  width: 100%;
  transition: opacity .2s, visibility .2s, inset-block .15s ease-in-out;
  display: block;
  position: fixed;
  inset-block-end: 0;
  inset-inline-start: 0;
}

.product-sticky-bar.is-visible {
  opacity: 1;
  visibility: visible;
}

/* .product-sticky-bar__info {
  padding-right: var(--input-padding-inline);
} */

.product-sticky-bar__info-inner {
  gap: 0 !important;
  /* gap: var(--input-padding-inline); */
}

.product-sticky-bar__info variant-media {
  flex-shrink: 0;
}

.product-sticky-bar__info img {
  width: 3.75rem;
}

.product-sticky-bar__info-text {
  padding: var(--input-padding-block) var(--input-padding-inline);
}

.product-sticky-bar__title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.product-sticky-bar__options {
  display: flex;
  height: 100%;
  /* gap: 1rem; */
  /* gap: var(--input-padding-inline);) */
}

.product-sticky-bar__option-dropdown {
  border-left: rgb(var(--border-color)) 1px solid;
  height: 100%;
}

.product-sticky-bar__buttons,
.product-sticky-bar__option-dropdown > .relative {
  height: 100%;
}

.product-sticky-bar__option-toggle,
.product-sticky-bar__selected-option {
  display: flex;
  align-items: center;
}

.product-sticky-bar__option-toggle {
  gap: 0.75rem;
  height: 100%;
  padding: 0 var(--input-padding-inline);
}

.product-sticky-bar__quantity {
  border-left: rgb(var(--border-color)) 1px solid;
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 var(--input-padding-inline);
}

.product-sticky-bar__selected-option {
  gap: 0.5rem;
}

.product-sticky-bar__popover {
  --popover-block-offset: 0;
  min-width: 100%;
}

.product-sticky-bar__popover::part(content) {
  border-width: 1px 1px 1px 0;
  min-width: 100%;
}

.product-sticky-bar__popover::part(content)::before {
  content: '';
  position: absolute;
  top: 0;
  right: 100%;
  height: 100%;
  pointer-events: none;
  border-left: 1px solid rgb(var(--border-color));
}

.product-sticky-bar__popover::part(body) {
  padding: 0 !important;
}

.product-sticky-bar__option-list {
  gap: 0;
  /* padding: var(--input-padding-block) 0; */
}

.product-sticky-bar__buttons {
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-sticky-bar__option-value {
  padding: var(--input-padding-block) var(--input-padding-inline);
  border-bottom: rgb(var(--border-color)) 1px solid;
}

.product-sticky-bar__option-value[disabled] span {
  opacity: 0.3;
}

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

  .product-sticky-bar__options,
  .product-sticky-bar__quantity {
    display: none;
  }

  .product-sticky-bar__buttons,
  .product-sticky-bar__buttons .buy-buttons {
    width: 100%;
  }

  .product-sticky-bar__buttons .button {
    background-color: #fff;
  }
}

@media screen and (min-width: 700px) {
  .product-sticky-bar {
    inset-block: var(--sticky-area-height) auto;
    background: rgb(var(--background));
    border-block-end-width: 1px;
    grid-template-columns: minmax(0, 1fr) max-content;
    grid-auto-flow: column;
    grid-auto-columns: max-content;
    align-items: center;
    /* padding-block: 1.125rem; */
    /* gap: clamp(1.5rem, 3vw, 2rem); */
    padding: 0;
    display: grid;
  }
}

@media screen and (min-width: 700px) and (max-width: 899.9px) {
  .product-sticky-bar__media {
    display: none;
  }

  .product-sticky-bar__quantity {
    padding: 0;
  }

  .product-sticky-bar__quantity .quantity-selector {
    --quantity-selector-input-width: clamp(0.625rem, 0.625rem + (100vw - 700px) * 0.15, 2.5rem);
    border: 0;
    align-content: center;
    height: 100%;
  }

  .product-sticky-bar .buy-buttons {
    height: 100%;
  }
}

@media screen and (min-width: 900px) {
  .product-sticky-bar__buttons {
    --padding-inline: var(--input-padding-inline);
    --padding-block: calc(var(--padding-inline) - 0.125rem);
    border-left: rgb(var(--border-color)) 1px solid;
    padding: var(--padding-block) var(--padding-inline);
  }
}

.scrolling-content {
  text-align: start;
  white-space: nowrap;
  -webkit-user-select: none;
  user-select: none;
  display: block;
  position: relative;
  overflow: hidden;
}

.scrolling-content[direction="right"] {
  text-align: end;
}

.scrolling-content::part(scroller) {
  min-width: max-content;
  display: inline-flex;
  position: relative;
}

.scrolling-content__item {
  flex-shrink: 0;
  align-items: center;
  display: flex;
}

.scrolling-content__item > * {
  margin-inline-start: calc(var(--scrolling-content-content-gap) / 2);
  margin-inline-end: calc(var(--scrolling-content-content-gap) / 2);
}

.scrolling-content__image > img {
  max-width: 1.5em;
}

.main-search-form {
  min-width: 18.75rem;
}

.main-search__linklist {
  text-align: center;
  max-width: 25rem;
  margin-inline: auto;
}

.shop-the-look__carousel {
  z-index: 2;
  grid: auto / auto-flow 100%;
  align-items: start;
  gap: .625rem;
  display: grid;
  position: relative;
  overflow: visible;
}

.shop-the-look__carousel.is-expanded {
  overflow: hidden;
}

.shop-the-look__image-wrapper {
  position: relative;
  overflow: hidden;
}

.shop-the-look__hot-spot-list {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 0;
}

.shop-the-look__hot-spot {
  --hot-spot-size: 1rem;
  top: calc(var(--shop-the-look-hot-spot-top) - (var(--hot-spot-size) / 2));
  left: calc(var(--shop-the-look-hot-spot-left) - (var(--hot-spot-size) / 2));
  width: var(--hot-spot-size);
  height: var(--hot-spot-size);
  border-radius: var(--rounded-full);
  transition: transform .2s ease-in-out;
  position: absolute;
}

.shop-the-look__hot-spot:after {
  --hot-spot-after-size: calc(var(--hot-spot-size) * 2.5);
  content: "";
  top: calc(50% - var(--hot-spot-after-size) / 2);
  left: calc(50% - var(--hot-spot-after-size) / 2);
  width: var(--hot-spot-after-size);
  height: var(--hot-spot-after-size);
  background: radial-gradient(50% 50% at 50% 50%, rgb(var(--background) / 0), rgb(var(--background) / .3));
  border-radius: var(--rounded-full);
  animation: 2s ease-in-out infinite alternate ping;
  position: absolute;
}

.shop-the-look__hot-spot[aria-current="true"] {
  transform: scale(1.3);
}

.shop-the-look__item-carousel {
  grid: auto / auto-flow 100%;
  justify-items: center;
  display: grid;
  position: relative;
}

.shop-the-look__item {
  position: relative;
}

.shop-the-look__popover .product-card__figure {
  width: 100%;
  max-width: 10rem;
  margin-inline: auto;
}

.shop-the-look__popover::part(base) {
  height: auto;
  inset: auto auto 0 0;
}

.shop-the-look__popover::part(overlay) {
  display: none;
}

@media screen and (max-width: 699px) {
  .shopify-section--shop-the-look:before {
    content: "";
    opacity: 0;
    pointer-events: none;
    background: rgb(var(--background));
    z-index: 2;
    width: 100%;
    height: 100%;
    transition: opacity .4s;
    position: fixed;
    inset-block-start: 0;
    inset-inline-start: 0;
  }

  .shopify-section--shop-the-look:has(.shop-the-look__carousel.is-expanded):before {
    opacity: 1;
  }
}

@media screen and (min-width: 1000px) {
  .shop-the-look__carousel {
    grid: none;
    align-items: center;
  }

  .shop-the-look__item {
    max-width: var(--container-sm-max-width);
    grid: auto / min(550px, 60%) minmax(0, 1fr);
    grid-area: 1 / -1;
    align-items: center;
    gap: .3125rem;
    margin-inline: auto;
    display: grid;
  }

  .shop-the-look__item:not(.is-selected) {
    visibility: hidden;
  }

  .shop-the-look__item-product {
    grid-area: 1 / -1;
    max-width: 16.875rem;
  }

  .shop-the-look__item-product:not(.is-selected) {
    visibility: hidden;
  }

  .shop-the-look__item-content {
    opacity: 0;
    justify-items: center;
    gap: 1.5rem;
    display: grid;
  }
}

@media screen and (pointer: fine) {
  .shop-the-look__hot-spot:hover {
    transform: scale(1.3);
  }
}

.slideshow {
  --slideshow-controls-spacing: var(--container-gutter);
  background: rgb(var(--slideshow-background));
  display: block;
  position: relative;
}

.slideshow .page-dots {
  z-index: 3;
  position: absolute;
  inset-block-end: var(--slideshow-controls-spacing);
  inset-inline-end: var(--slideshow-controls-spacing);
}

.shopify-section--slideshow:first-child .slideshow[allow-transparent-header] {
  --content-over-media-row-gap: 4rem;
}

.slideshow:has(.page-dots, .slideshow__volume-control) {
  --content-over-media-row-gap: 4rem;
}

.slideshow__slide:not(.is-selected) {
  visibility: hidden;
  position: absolute;
  inset: 0;
}

.slideshow__slide-content--boxed {
  padding: 1.5rem;
}

.slideshow__slide-content--with-border {
  outline: 1px solid rgb(var(--border-color));
}

.slideshow__slide-content--with-border-offset {
  outline-offset: -.75rem;
  padding: 2.25rem;
}

.slideshow__volume-control {
  z-index: 1;
  display: grid;
  position: absolute;
  inset-block-end: var(--slideshow-controls-spacing);
  inset-inline-start: var(--slideshow-controls-spacing);
}

.slideshow__next-section-button {
  z-index: 2;
  position: absolute;
  inset-block-end: calc(-1 * var(--circle-button-size) / 2);
  inset-inline-start: calc(50% - var(--circle-button-size) / 2);
}

.shopify-section:has(.slideshow__next-section-button) + .shopify-section {
  --section-vertical-spacing-block-start-compensation: 1.5625rem;
}

@media screen and (min-width: 700px) {
  .slideshow:has(.page-dots, .slideshow__volume-control) {
    --content-over-media-row-gap: 5rem;
  }

  .slideshow__slide-content--boxed {
    padding: 3.5rem;
  }

  .slideshow__slide-content--with-border-offset {
    outline-offset: -1rem;
  }
}

.shopify-section--testimonials {
  --section-vertical-spacing-override: calc(var(--section-vertical-spacing) + 20px);
}

.testimonial-list {
  gap: var(--section-stack-gap);
  justify-items: center;
  display: grid;
}

.testimonial-item {
  font-size: var(--testimonials-font-size);
  grid-area: 1 / -1;
  align-content: start;
  justify-items: center;
  gap: 2rem;
  max-width: 34rem;
  display: grid;
}

.testimonial-item:not(.is-selected) {
  opacity: 0;
  visibility: hidden;
}

.testimonial-carousel {
  display: grid;
}

.testimonial-list__thumbnail-scroller {
  flex-wrap: wrap;
  justify-content: center;
  gap: 2rem 5.625rem;
}

.testimonial-list__thumbnail {
  transition: opacity .2s ease-in-out;
}

.testimonial-list__thumbnail[aria-current="false"] {
  opacity: .25;
}

.testimonial-list__thumbnail img {
  max-width: var(--image-max-width);
}

.testimonial-list__thumbnail .placeholder {
  width: var(--image-max-width);
}

.shopify-challenge__container,
.shopify-email-marketing-confirmation__container {
  max-width: 56.25rem;
  margin-block-start: var(--section-vertical-spacing);
  margin-block-end: var(--section-vertical-spacing);
}

.shopify-policy__container {
  gap: var(--section-stack-gap);
  grid-auto-columns: minmax(0, 1fr);
  max-width: 56.25rem;
  margin-block-start: var(--section-vertical-spacing-tight);
  margin-block-end: var(--section-vertical-spacing-tight);
  display: grid;
}

.shopify-challenge__container {
  gap: 1rem;
  display: grid;
}

.shopify-challenge__container > form {
  display: contents;
}

.shopify-email-marketing-confirmation__container {
  text-align: center;
}

.shopify-policy__title h1 {
  font: inherit;
}

.text-with-icons {
  --text-with-icons-items-per-row: 2;
  --text-with-icons-column-gap: 1.5rem;
  --text-with-icons-row-gap: 2rem;
  justify-content: center;
  gap: var(--text-with-icons-row-gap) var(--text-with-icons-column-gap);
  flex-wrap: wrap;
  display: flex;
}

.text-with-icons > * {
  flex-basis: min(18.75rem, calc(100% / var(--text-with-icons-items-per-row) - var(--text-with-icons-column-gap, 0px) * (var(--text-with-icons-items-per-row) - 1) / var(--text-with-icons-items-per-row)));
}

.text-with-icons > :only-child {
  flex-basis: min(18.75rem, 100%);
}

@media screen and (max-width: 699px) {
  .text-with-icons:not(.text-with-icons--stacked) {
    grid: auto / auto-flow 100%;
    gap: 0;
    display: grid;
  }

  .text-with-icons:not(.text-with-icons--stacked) > * {
    grid-area: 1 / -1;
    padding-inline: 2.5rem;
  }

  .text-with-icons:not(.text-with-icons--stacked) > :not(.is-selected) {
    visibility: hidden;
  }
}

@media screen and (min-width: 700px) {
  .text-with-icons {
    --text-with-icons-items-per-row: 3;
    --text-with-icons-row-gap: 2.5rem;
  }
}

@media screen and (min-width: 1000px) {
  .text-with-icons {
    --text-with-icons-items-per-row: 5;
  }

  .text-with-icons:not(:has(> :nth-child(5))) {
    --text-with-icons-items-per-row: 4;
    --text-with-icons-column-gap: 3.75rem;
  }
}

.timeline__carousel,
.timeline__item {
  display: grid;
}

:is(.timeline__carousel, .timeline__item) > * {
  grid-area: 1 / -1;
}

.timeline__item:not(.is-selected) {
  visibility: hidden;
}

.timeline__item-image-wrapper {
  overflow: hidden;
}

.timeline__item-image-wrapper :is(img, svg) {
  scale: 1.05;
}

.timeline__item-content {
  padding: var(--container-gutter);
}

@media screen and (max-width: 699px) {
  .shopify-section--timeline {
    --section-vertical-spacing: 0;
    border-block-start-width: 0;
  }

  .timeline__carousel {
    position: relative;
  }

  .timeline__carousel:after {
    content: "";
    background: #0006;
    position: absolute;
    inset: 0;
  }

  .timeline__item {
    --text-color: var(--timeline-item-mobile-text-color);
    color: rgb(var(--text-color));
  }

  .timeline__item-content {
    text-align: center;
    z-index: 1;
    align-self: center;
    padding-block: 3.75rem;
  }
}

@media screen and (min-width: 700px) {
  .timeline__item {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .timeline__item > * {
    grid-area: unset;
  }

  .timeline__item-content {
    align-self: end;
  }
}

.timeline__nav {
  white-space: nowrap;
  grid-auto-flow: column;
  justify-content: safe center;
  align-items: center;
  column-gap: 2.5rem;
  display: grid;
}

.timeline__nav > button {
  height: var(--text-h4);
  line-height: 1;
  transition: opacity .25s ease-in-out, font-size .25s ease-in-out;
  position: relative;
}

.timeline__nav > button:after {
  content: "";
  width: calc(100% - var(--heading-letter-spacing));
  transform-origin: var(--transform-origin-start);
  background: currentColor;
  height: 3px;
  transition: transform .25s ease-in-out;
  position: absolute;
  inset-block-end: -1.25rem;
  inset-inline-start: 0;
  transform: scaleX(0);
}

.timeline__nav > [aria-current="false"] {
  opacity: .65;
}

.timeline__nav > [aria-current="true"] {
  font-size: var(--text-h4);
}

.timeline__nav > [aria-current="true"]:after {
  transform: scaleX(1);
}

@media screen and (max-width: 699px) {
  .timeline__nav {
    background: rgb(var(--timeline-nav-mobile-background));
    color: rgb(var(--timeline-nav-mobile-text-color));
    padding-block: 1.25rem;
    overflow: auto hidden;
  }
}

@media screen and (min-width: 700px) {
  .timeline__nav {
    margin-block-start: var(--section-stack-gap);
  }

  .timeline__nav > button:after {
    inset-block-end: -.5rem;
  }
}

.sr-only {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

:is(.sr-only[type="checkbox"]:focus-visible + label, .sr-only[type="radio"]:focus-visible + label) {
  outline: 2px solid highlight;
  outline: 2px solid -webkit-focus-ring-color;
}

.skip-to-content:focus-visible {
  z-index: 9999;
  clip: auto;
  color: #fff;
  background: #000;
  width: auto;
  height: auto;
  padding: 6px 12px;
  font-weight: bold;
  overflow: auto;
}

.tap-area {
  position: relative;
}

.tap-area:before {
  content: "";
  position: absolute;
  inset: -.5rem;
}

.js .js\:hidden,
.no-js .no-js\:hidden {
  display: none;
}

@media print {
  .print\:hidden {
    display: none;
  }
}



@media screen and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .features--zoom-image .zoom-image {
    transform-origin: center;
    transition: scale 8s cubic-bezier(.25, .46, .45, .94);
  }

  .features--zoom-image .group:hover .group-hover\:zoom {
    scale: 1.2;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .js [reveal-on-scroll="true"] {
    opacity: 0;
  }
}

.border {
  border-width: 1px;
}

.border-x {
  border-inline-width: 1px;
}

.border-y {
  border-block-width: 1px;
}

.border-t {
  border-block-start-width: 1px;
}

.border-b {
  border-block-end-width: 1px;
}

.divide-x > :not([hidden]) ~ :not([hidden]) {
  border-inline-start-width: 1px;
}

.divide-y > :not([hidden]) ~ :not([hidden]) {
  border-block-start-width: 1px;
}

.rounded-full {
  border-radius: var(--rounded-full);
}

.text-success {
  color: rgb(var(--success-text));
}

.text-warning {
  color: rgb(var(--warning-text));
}

.text-error {
  color: rgb(var(--error-text));
}

.text-subdued {
  color: rgb(var(--text-color) / .65);
}

.text-on-sale {
  color: rgb(var(--on-sale-text));
}

.text-stroke {
  -webkit-text-stroke: 1px currentColor;
  -webkit-text-fill-color: transparent;
}

.text-gradient {
  background-image: var(--gradient);
  color: #0000;
  -webkit-background-clip: text;
  background-clip: text;
}

.text-stroke.text-gradient {
  color: rgb(var(--background));
  -webkit-text-stroke-color: transparent;
  -webkit-text-fill-color: unset;
}

.bg-error,
.bg-success,
.bg-warning {
  --border-color: var(--text-color) / .15;
}

.bg-error {
  background: rgb(var(--error-background));
}

.bg-success {
  background: rgb(var(--success-background));
}

.bg-warning {
  background: rgb(var(--warning-background));
}

.opacity-0 {
  opacity: 0;
}

.backdrop-blur {
  -webkit-backdrop-filter: blur(var(--backdrop-blur, 0px));
  backdrop-filter: blur(var(--backdrop-blur, 0px));
}

.filter-invert {
  filter: invert();
}

.lock {
  overflow: hidden;
}

.pointer-events-none {
  pointer-events: none;
}

.scroll-area {
  scrollbar-width: none;
  overscroll-behavior-x: contain;
  overflow: auto hidden;
}

.hide-scrollbar {
  scrollbar-width: none;
}

.scroll-area::-webkit-scrollbar {
  display: none;
}

.hide-scrollbar::-webkit-scrollbar {
  display: none;
}

.snap-x {
  scroll-snap-type: x mandatory;
}

.snap-y {
  scroll-snap-type: y mandatory;
}

.snap-start {
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

.snap-center {
  scroll-snap-align: center;
  scroll-snap-stop: always;
}

.hidden,
.empty\:hidden:empty {
  display: none;
}

.block {
  display: block;
}

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

.contents {
  display: contents;
}

@media screen and (min-width: 700px) {
  .sm\:hidden {
    display: none;
  }

  .sm\:block {
    display: block;
  }

  .sm\:grid {
    display: grid;
  }

  .sm\:flex {
    display: flex;
  }

  .sm\:table {
    display: table;
  }

  .sm\:table-cell {
    display: table-cell;
  }
}

@media screen and (min-width: 1000px) {
  .md\:hidden {
    display: none;
  }

  .md\:block {
    display: block;
  }

  .md\:grid {
    display: grid;
  }

  .md\:flex {
    display: flex;
  }

  .md\:table {
    display: table;
  }

  .md\:table-cell {
    display: table-cell;
  }
}

@media screen and (min-width: 1150px) {
  .lg\:hidden {
    display: none;
  }

  .lg\:block {
    display: block;
  }

  .lg\:grid {
    display: grid;
  }

  .lg\:flex {
    display: flex;
  }

  .lg\:table {
    display: table;
  }

  .lg\:table-cell {
    display: table-cell;
  }
}

@media screen and (max-width: 699px) {
  .sm-max\:hidden {
    display: none;
  }
}

@media screen and (max-width: 999px) {
  .md-max\:hidden {
    display: none;
  }
}

@media screen and (max-width: 1149px) {
  .lg-max\:hidden {
    display: none;
  }
}

@media screen and (max-width: 1399px) {
  .xl-max\:hidden {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .motion-reduce\:hidden {
    display: none;
  }

  .motion-reduce\:block {
    display: block;
  }
}


@media screen and (min-width: 700px) {
  .sm\:gap-0\.5 {
    gap: .125rem;
  }

  .sm\:gap-1 {
    gap: .25rem;
  }

  .sm\:gap-1\.5 {
    gap: .375rem;
  }

  .sm\:gap-2 {
    gap: .5rem;
  }

  .sm\:gap-2\.5 {
    gap: .625rem;
  }

  .sm\:gap-3 {
    gap: .75rem;
  }

  .sm\:gap-3\.5 {
    gap: .875rem;
  }

  .sm\:gap-4 {
    gap: 1rem;
  }

  .sm\:gap-4\.5 {
    gap: 1.125rem;
  }

  .sm\:gap-5 {
    gap: 1.25rem;
  }

  .sm\:gap-5\.5 {
    gap: 1.375rem;
  }

  .sm\:gap-6 {
    gap: 1.5rem;
  }

  .sm\:gap-7 {
    gap: 1.75rem;
  }

  .sm\:gap-8 {
    gap: 2rem;
  }

  .sm\:gap-10 {
    gap: 2.5rem;
  }

  .sm\:gap-12 {
    gap: 3rem;
  }

  .sm\:gap-14 {
    gap: 3.5rem;
  }

  .sm\:gap-16 {
    gap: 4rem;
  }
}


.cart-page ul.text-subdued {
  font-size: 10px;
}

/* Clearfix */
.shopify-section,
.clearfix:after {
  clear: both;
}

/* product info updates 2025 */
.product-info .features-and-fit h4 {
  font-size: inherit;
  font-weight: 600;
  margin: 0;
  padding: 0;
}

.product-info .features-and-fit p {
  margin: 0;
  padding: 0;
}

.product-info .features-and-fit li:not(:last-of-type) {
  margin-bottom: 0.625rem;
  padding-bottom: 0.938rem;
  border-bottom: 1px solid #ddd;
}

.product-info .care-instructions,
.product-info .fabric-content {
  margin-block-start: 0.75rem;
}

.product-info .table-scroller {
  margin-block-end: 2rem;
}

/* fabric type 2025 */
.product-info .fabric-type {
  display: flex;
  gap: 1rem;
  align-items: center;
}

.product-info .fabric-type img {
  max-height: 6rem;
  max-width: 100%;
  height: auto;
  width: auto;
  min-height: auto;
  min-width: auto;
  margin: 0;
  padding: 0;
}

.product-info .fabric-type p {
  line-height: 1.5;
  margin: 0;
  padding: 0;
}

/* Slideshow SIngle Title 2025 */
.mci-slideshow-single-title__wrapper {
  position: relative;
  display: grid;
}

.mci-slideshow-single-title__wrapper .slideshow__slide-content {
  z-index: 2;
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Overlapping Images block 2025 */

.mci-block-image-overlap-text-overlay__container {
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 900px) {
  .mci-block-image-overlap-text-overlay__container {
    flex-direction: column;
  }

  .mci-block-image-overlap-text-overlay__container .content-over-media {
    width: 100% !important;
  }

  .mci-block-image-overlap-text-overlay__container {
    row-gap: 1.3rem;
  }
}

.mci-block-image-overlap-text-overlay--first-img-top .content-over-media:first-of-type,
.mci-block-image-overlap-text-overlay--last-img-top .content-over-media:last-of-type {
  position: relative;
  z-index: 2;
}

.mci-block-image-overlap-text-overlay__container .content,
.mci-block-image-overlap-text-overlay__container .button,
.mci-block-image-overlap-text-overlay__container .link {
  position: static;
}

.mci-block-image-overlap-text-overlay__container .link:after,
.mci-block-image-overlap-text-overlay__container .button:after {
  content: '';
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}


/* Custom.css */
/*------------------------------------
 *   MIDA Heatmap GDPR banner
 *------------------------------------*/

#Mida-GDPR {
  background-color: #404044 !important;
}

.Mida-GDPR__Button--ok {
  border-color: #fff !important;
  border: 2px solid !important;
  text-transform: uppercase;
}

.Mida-GDPR__Privacy-policy a {
  text-decoration: underline;
}

/*------------------------------------
 *   Excel-Like App product page metafields table
 *------------------------------------*/


td.mf_value {
  border: 0;
  padding-left: 0;
  padding-bottom: 0;
}

table.ssbpm_metafields tr.product_mf_row.mf_pdp_model_info,
table.ssbpm_metafields tr.mf_prod_title,
table.ssbpm_metafields tr.mf_var_title,
table.ssbpm_metafields td.mf_name {
  display: none;
}

/*------------------------------------
 *   PLP Save Message
 *------------------------------------*/

.product-card__info .save-message {
  font-size: var(--text-xxs);
  line-height: 1em;
  text-transform: uppercase;
}

.product-card__info .save-message--box {
  padding: 5px 12px;
  background: rgb(var(--on-sale-badge-background));
  color: rgb(var(--on-sale-badge-text));
}

.product-card__info .save-message--final-sale {
  color: rgb(var(--on-sale-badge-background));
}

.product-card__info .save-message--bundle {
  color: rgb(var(--on-sale-badge-background));
  font-weight: 600;
}

/*------------------------------------
 *   ReturnGo Customizations
 *------------------------------------*/

.ReturnGO_Title-module_title {
  font-size: 26px !important;
}

.ReturnGO_SnippetWrapper-module_snippetWrapper div {
  text-align: center;
}

/*------------------------------------
 *   Grid LAYOUT
 *------------------------------------*/

.Grid {
  display: block;
  list-style: none;
  padding: 0;
  margin: 0 0 0 -24px;
  font-size: 0;
}

.Grid--flex {
  display: flex;
  justify-content: center;
}

.Grid__Cell {
  box-sizing: border-box;
  display: inline-block;
  width: 100%;
  padding: 0 0 0 24px;
  margin: 0;
  vertical-align: top;
  font-size: 1rem;
}

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

.Grid--center > .Grid__Cell {
  text-align: left;
}

.Grid__Cell--center {
  display: block;
  margin: 0 auto;
}

.Grid--right {
  text-align: right;
}

.Grid--right > .Grid__Cell {
  text-align: left;
}

.Grid--middle > .Grid__Cell {
  vertical-align: middle;
}

.Grid--bottom > .Grid__Cell {
  vertical-align: bottom;
}

.Grid--m {
  margin-left: -30px;
}

.Grid--m > .Grid__Cell {
  padding-left: 30px;
}

.Grid--l {
  margin-left: -50px;
}

.Grid--l > .Grid__Cell {
  padding-left: 50px;
}

.Grid--xl {
  margin-left: -50px;
}

.Grid--xl > .Grid__Cell {
  padding-left: 50px;
}

@media screen and (min-width: 1140px) {
  .Grid--m {
    margin-left: -60px;
  }

  .Grid--m > .Grid__Cell {
    padding-left: 60px;
  }

  .Grid--l {
    margin-left: -80px;
  }

  .Grid--l > .Grid__Cell {
    padding-left: 80px;
  }

  .Grid--xl {
    margin-left: -100px;
  }

  .Grid--xl > .Grid__Cell {
    padding-left: 100px;
  }
}

/*------------------------------------*\
    Grid WIDTHS
\*------------------------------------*/


/* PhotoSwipe 
*/
.pswp {
  display: none;
  /* 
  position: absolute;
  commented out January 2025. 
  Was causing images to be placed incorrectly on the page. 
  */
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  touch-action: none;
  z-index: 5;
  -webkit-text-size-adjust: 100%;
  -webkit-backface-visibility: hidden;
  outline: none;
}

.pswp img {
  max-width: none;
}

.pswp--animate_opacity {
  opacity: 0.001;
  /* 0.001, because opacity:0 doesn't trigger Paint action, which causes lag at start of transition */
  will-change: opacity;
  transition: opacity 0.5s cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  cursor: var(--cursor-zoom-in-svg) 18 18, zoom-in;
  cursor: -webkit-image-set(var(--cursor-zoom-in-svg) 1x, var(--cursor-zoom-in-2x-svg) 2x) 18 18, zoom-in;
}

.pswp--zoomed-in .pswp__img {
  cursor: -webkit-grab;
  cursor: grab;
}

.pswp--dragging .pswp__img {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.pswp__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: var(--background);
  opacity: 0;
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  will-change: opacity;
}

.pswp__scroll-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.pswp__container,
.pswp__zoom-wrap {
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.pswp__container {
  transition: transform 0.7s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  transform-origin: left top;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp__bg {
  will-change: opacity;
  transition: opacity 0.5s cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  transition: none;
}

.pswp__container,
.pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp__item {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden;
}

.pswp__img {
  position: absolute;
  width: auto;
  height: auto;
  top: 0;
  left: 0;
}

.pswp__img--placeholder {
  -webkit-backface-visibility: hidden;
}

.pswp__img--placeholder--blank {
  background: var(--background);
}

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0;
}

/*#region Custom UI*/
.pswp__ui {
  position: absolute;
  visibility: hidden;
  width: 100%;
  bottom: 50px;
  opacity: 0;
  transform: translateY(35px);
  left: 0;
  text-align: center;
  transition: all 0.15s ease-in-out;
}

.pswp__button[disabled] {
  opacity: 0;
  pointer-events: none;
}

.pswp--animated-in .pswp__ui {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.pswp--animated-in .pswp__ui--hidden {
  visibility: hidden;
  opacity: 0;
}

.pswp__button--close {
  margin: 0 18px;
}

.pswp__button svg {
  pointer-events: none;
}

.pswp__error-msg {
  position: absolute;
  top: 40%;
  margin: 0 15px;
  padding: 8px 15px;
  background: #e6554d;
  color: #ffffff;
  text-align: center;
}

.js .no-js,
.no-js .hide-no-js {
  display: none !important;
}

.no-scroll {
  overflow: hidden;
}

body:not(.is-tabbing) [tabindex]:focus,
body:not(.is-tabbing) button:focus,
body:not(.is-tabbing) input:focus,
body:not(.is-tabbing) select:focus,
body:not(.is-tabbing) textarea:focus {
  outline: none;
}

[data-scrollable] {
  overflow: auto;
}

.Container {
  margin: 0 auto;
  padding: 0 24px;
}

.Container--centered,
.Container--title {
  text-align: center;
  max-width: 1300px;
  margin: 60px auto;
}

.Container--title {
  margin-bottom: 20px;
}

.Container--fixedWidth {
  max-width: 1300px;
  margin: 30px auto;
}

.Container--small {
  max-width: 1300px;
  text-align: left;
  margin: 45px auto 25px auto;
}

.Container--centered-small {
  text-align: center;
  max-width: 1300px;
  margin: 45px auto 25px auto;
}

.Container--centered-padded {
  text-align: center;
  max-width: 1300px;
  padding-top: 45px;
  padding-bottom: 45px;
}

.Container--wide {
  max-width: 1600px;
  margin: 0 auto;
}

.Container--left {
  max-width: 1600px;
  margin: 0;
}

.Container--maxWidth {
  max-width: 100%;
}

.Container--narrow {
  max-width: 1420px;
}

.Container--extraNarrow {
  max-width: 800px;
}

.Container--modal {
  padding: 30px;
}

/*
   This fixes an issue in IE10/11 when using min-height in flex children
   @info: https://github.com/philipwalton/flexbugs#3-min-height-on-a-flex-container-wont-apply-to-its-flex-items
*/
.FlexboxIeFix {
  display: flex;
  flex-direction: row;
}

@media screen and (max-width: 641px) {
  .Container--title {
    margin-bottom: 60px;
  }
}

@media screen and (min-width: 641px) {
  .Container {
    padding: 0 50px;
  }

  .Container--title {
    margin-top: 100px
  }
}

@media screen and (min-width: 1140px) {
  .Container {
    padding: 0 80px;
  }
}

/*#region Link styling (from old theme)*/


.Link {
  transition: color 0.2s ease-in-out, opacity 0.2s ease-in-out;
}

.supports-hover .Link--primary:hover,
.Link--primary.is-active {
  color: var(--text-color);
}

.supports-hover .Link--secondary:hover,
.Link--secondary.is-active {
  color: var(--text-color-light);
}

.Link--underline,
.Link--arrowRight,
.Link--arrowDown,
.Link--inline {
  position: relative;
  display: inline-block;
  text-decoration: none;
}

.Link--arrowRight::after {
  content: "\279E";
  position: relative;
  right: -5px;
  top: 0;
}

.Link--arrowDown::after {
  content: "\2193";
  position: relative;
  right: -5px;
  top: 0;
}

.Link--underline::before,
.Link--underlineAft::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  left: 0;
  bottom: 0;
  background: currentColor;
  transform-origin: left center;
  transition: transform 0.2s ease-in-out;
}

.Link--underline::before {
  transform: scale(1, 1);
}

.Link--underlineAft::before {
  transform: scale(0, 1);
}

@media (-moz-touch-enabled: 0),
(hover: hover) {
  .Link--underline:hover::before {
    transform: scale(0, 1);
  }

  .Link--underlineAft:hover::before {
    transform: scale(1, 1);
  }
}

.Link--underlineShort::before {
  width: 100%;
}

.features--heading-uppercase .Link--underlineShort::before {
  width: calc(100% - 0.2em);
}

.Link--underlineNative {
  text-decoration: underline;
  text-underline-position: under;
}

.Heading {
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  color: var(--heading-color);
  transition: color 0.2s ease-in-out;

}

.Heading--normal {
  text-transform: none !important;
  letter-spacing: 0.02em !important;
  font-weight: normal;
}

.Heading--semibold {
  font-weight: 500;
  text-transform: none;
}

.Heading--bold {
  font-weight: 600 !important;
  text-transform: none;
}

.Heading--bolder {
  font-weight: 700 !important;
  text-transform: none;
}

.Heading--capitalize,
.Link--capitalize {
  text-transform: uppercase;
}

.Heading--Medium {
  font-size: 1.75em !important;
  line-height: 120%;
}

.Heading--Large {
  font-size: 200% !important;
  line-height: 120%;
}

.Heading--extraLarge {
  font-size: 275% !important;
  line-height: 120%;
}

.Heading--slider,
.Heading--mpg {
  display: block;
}

.Heading--mpg {
  font-family: var(--heading-font-family);
  font-weight: 400;
}

.Heading--slider {
  display: block;
  font-family: 'Montserrat', var(--heading-font-family);
  -webkit-font-family: 'Montserrat', var(--heading-font-family);
  -ms-font-family: 'Montserrat', var(--heading-font-family);
  text-transform: uppercase;

}

.Heading--slider span {
  word-break: normal;
  white-space: pre-line;
}

.Heading--slider span,
.Heading--bold span {
  line-height: 1.1;
}

.addShadow {
  text-shadow: 0 0 5px #000;
}

@media screen and (max-width:640px) {
  .Heading--Large {
    font-size: 150% !important;

  }

  .Heading--extraLarge {
    font-size: 225% !important;
  }

}

.features--heading-uppercase .Heading {
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.Text--subdued {
  color: var(--text-color-light);
}

.Text--alignCenter {
  text-align: center !important;
}

.Text--alignRight {
  text-align: right !important;
}

.Icon-Wrapper--clickable {
  position: relative;
  background: transparent;
  /* This is used to increase the clickable area */
}

.Icon-Wrapper--clickable::before {
  position: absolute;
  content: "";
  top: -8px;
  right: -12px;
  left: -12px;
  bottom: -8px;
  transform: translateZ(0);
  /* Needed to avoid a glitch on iOS */
}

.Icon {
  display: inline-block;
  height: 1em;
  width: 1em;
  fill: currentColor;
  vertical-align: middle;
  stroke-width: 1px;
  background: none;
  pointer-events: none;
}

.Footer__Social .Icon {
  height: 1.3em;
  width: 1.3em;
}

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

/* Override navigation titles to be forced uppercase */
li.HorizontalList__Item a.Heading {
  text-transform: uppercase;
}

li.HorizontalList__Item a.Heading[href="/collections/spring-summer-2023"],
li.HorizontalList__Item a.Heading[href="/collections"] {
  color: #e26a21;
}

.features--heading-small .u-h1,
.features--heading-small .Rte h1 {
  font-size: 20px;
}

.features--heading-small .u-h2,
.features--heading-small .Rte h2 {
  font-size: 18px;
}

.features--heading-small .u-h3,
.features--heading-small .Rte h3 {
  font-size: 16px;
}

.features--heading-small .u-h4,
.features--heading-small .Rte h4 {
  font-size: 15px;
}

.features--heading-small .u-h5,
.features--heading-small .Rte h5 {
  font-size: 13px;
}

.features--heading-small .u-h6,
.features--heading-small .Rte h6 {
  font-size: 12px;
}

.features--heading-small .u-h7 {
  font-size: 11px;
}

.features--heading-small .u-h8 {
  font-size: 10px;
}

.features--heading-normal .u-h1,
.features--heading-normal .Rte h1 {
  font-size: 22px;
}

.features--heading-normal .u-h2,
.features--heading-normal .Rte h2 {
  font-size: 20px;
}

.features--heading-normal .u-h3,
.features--heading-normal .Rte h3 {
  font-size: 17px;
}

.features--heading-normal .u-h4,
.features--heading-normal .Rte h4 {
  font-size: 16px;
}

.features--heading-normal .u-h5,
.features--heading-normal .Rte h5 {
  font-size: 14px;
}

.features--heading-normal .u-h6,
.features--heading-normal .Rte h6 {
  font-size: 13px;
}

.features--heading-normal .u-h7 {
  font-size: 12px;
}

.features--heading-normal .u-h8 {
  font-size: 11px;
}

.features--heading-large .u-h1,
.features--heading-large .Rte h1 {
  font-size: 24px;
}

.features--heading-large .u-h2,
.features--heading-large .Rte h2 {
  font-size: 22px;
}

.features--heading-large .u-h3,
.features--heading-large .Rte h3 {
  font-size: 18px;
}

.features--heading-large .u-h4,
.features--heading-large .Rte h4 {
  font-size: 16px;
}

.features--heading-large .u-h5,
.features--heading-large .Rte h5 {
  font-size: 14px;
}

.features--heading-large .u-h6,
.features--heading-large .Rte h6 {
  font-size: 13px;
}

.features--heading-large .u-h7 {
  font-size: 12px;
}

.features--heading-large .u-h8 {
  font-size: 11px;
}

.features--heading-extralarge .u-h1,
.features--heading-extralarge .Rte h1 {
  font-size: 26px;
}

.features--heading-extralarge .u-h2,
.features--heading-extralarge .Rte h2 {
  font-size: 24px;
}

.features--heading-extralarge .u-h3,
.features--heading-extralarge .Rte h3 {
  font-size: 19px;
}

.features--heading-extralarge .u-h4,
.features--heading-extralarge .Rte h4 {
  font-size: 17px;
}

.features--heading-extralarge .u-h5,
.features--heading-extralarge .Rte h5 {
  font-size: 14px;
}

.features--heading-extralarge .u-h6,
.features--heading-extralarge .Rte h6 {
  font-size: 13px;
}

.features--heading-extralarge .u-h7 {
  font-size: 12px;
}

.features--heading-extralarge .u-h8 {
  font-size: 11px;
}



@media screen and (min-width: 641px) {

  .features--heading-small .u-h1,
  .features--heading-small .Rte h1 {
    font-size: 20px;
  }

  .features--heading-small .u-h2,
  .features--heading-small .Rte h2 {
    font-size: 18px;
  }

  .features--heading-small .u-h3,
  .features--heading-small .Rte h3 {
    font-size: 18px;
  }

  .features--heading-small .u-h4,
  .features--heading-small .Rte h4 {
    font-size: 16px;
  }

  .features--heading-small .u-h5,
  .features--heading-small .Rte h5 {
    font-size: 13px;
  }

  .features--heading-small .u-h6,
  .features--heading-small .Rte h6 {
    font-size: 12px;
  }

  .features--heading-small .u-h7 {
    font-size: 11px;
  }

  .features--heading-small .u-h8 {
    font-size: 10px;
  }

  .features--heading-normal .u-h1,
  .features--heading-normal .Rte h1 {
    font-size: 22px;
  }

  .features--heading-normal .u-h2,
  .features--heading-normal .Rte h2 {
    font-size: 20px;
  }

  .features--heading-normal .u-h3,
  .features--heading-normal .Rte h3 {
    font-size: 17px;
  }

  .features--heading-normal .u-h4,
  .features--heading-normal .Rte h4 {
    font-size: 16px;
  }

  .features--heading-normal .u-h5,
  .features--heading-normal .Rte h5 {
    font-size: 14px;
  }

  .features--heading-normal .u-h6,
  .features--heading-normal .Rte h6 {
    font-size: 13px;
  }

  .features--heading-normal .u-h7 {
    font-size: 12px;
  }

  .features--heading-normal .u-h8 {
    font-size: 11px;
  }

  .features--heading-large .u-h1,
  .features--heading-large .Rte h1 {
    font-size: 24px;
  }

  .features--heading-large .u-h2,
  .features--heading-large .Rte h2 {
    font-size: 22px;
  }

  .features--heading-large .u-h3,
  .features--heading-large .Rte h3 {
    font-size: 19px;
  }

  .features--heading-large .u-h4,
  .features--heading-large .Rte h4 {
    font-size: 17px;
  }

  .features--heading-large .u-h5,
  .features--heading-large .Rte h5 {
    font-size: 13px;
  }

  .features--heading-large .u-h6,
  .features--heading-large .Rte h6 {
    font-size: 13px;
  }

  .features--heading-large .u-h7 {
    font-size: 12px;
  }

  .features--heading-large .u-h8 {
    font-size: 11px;
  }

  .features--heading-extralarge .u-h1,
  .features--heading-extralarge .Rte h1 {
    font-size: 28px;
  }

  .features--heading-extralarge .u-h2,
  .features--heading-extralarge .Rte h2 {
    font-size: 26px;
  }

  .features--heading-extralarge .u-h3,
  .features--heading-extralarge .Rte h3 {
    font-size: 20px;
  }

  .features--heading-extralarge .u-h4,
  .features--heading-extralarge .Rte h4 {
    font-size: 18px;
  }

  .features--heading-extralarge .u-h5,
  .features--heading-extralarge .Rte h5 {
    font-size: 15px;
  }

  .features--heading-extralarge .u-h6,
  .features--heading-extralarge .Rte h6 {
    font-size: 13px;
  }

  .features--heading-extralarge .u-h7 {
    font-size: 12px;
  }

  .features--heading-extralarge .u-h8 {
    font-size: 11px;
  }

}

.js .features--show-page-transition .PageTransition {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: var(--background);
  z-index: 1000;
  opacity: 1;
  visibility: visible;
  pointer-events: none;
  transition: all 0.25s ease;
}

/*#region Flexbox helper*/


/*parent fixes flex min-height for IE10/11*/
.u-flex-parent {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
}

.u-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-wrap: wrap;
}

.u-flex--middle {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.u-flex--bottom {
  -webkit-box-align: flex-end;
  -ms-flex-align: flex-end;
  align-items: flex-end;
}

.u-flex--center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.u-flex-child-strech {
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1
}

/*#region Standard button (from old theme)*/


.resetFilter {
  margin: 25px auto;
  display: flex;
  max-width: 300px;
  justify-content: center;
}

.Button,
.shopify-payment-button__button--unbranded,
input.spr-button-primary,
.spr-summary-actions-newreview,
.spr-button-primary:not(input),
.spr-pagination-prev > a,
.spr-pagination-next > a {
  position: relative;
  display: inline-block;
  padding: 14px 28px;
  line-height: normal;
  border: 1px solid transparent;
  border-radius: 0;
  text-transform: uppercase;
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 12px));
  text-align: center;
  letter-spacing: 0.2em;
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  background-color: transparent;
  transition: color 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86), border 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  z-index: 1;
  -webkit-tap-highlight-color: initial;
}

.Button::before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  transform: scale(1, 1);
  transform-origin: left center;
  z-index: -1;
}


.Button--primary {
  color: var(--button-text-color);
  border-color: var(--button-background);
}

.Button--primary::before {
  background-color: var(--button-background);
}

.Button--reversed {
  color: var(--button-background);
  border-color: var(--button-background);
  background-color: var(--button-text-color);
}

.Button--reversed::before {
  background-color: var(--button-background);
  transform-origin: right center;
  transform: scale(0, 1);
}



.Button--secondary {
  color: var(--text-color-light);
  border: 1px solid rgba(var(--text-color-light-rgb), 0.2);
}

.Button--secondary::before {
  background-color: var(--button-background);
  transform-origin: right center;
  transform: scale(0, 1);
}


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

.Button--stretched {
  padding-left: 40px;
  padding-right: 40px;
}

.Button--centered {
  display: flex;
  justify-content: center;
  width: fit-content;
  margin: 20px auto;
}

.Button--small {
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 10px));
  padding: 12px 24px;
}

.Button__SeparatorDot {
  display: inline-block;
  margin: 0 18px;
  content: "";
  height: 3px;
  width: 3px;
  border-radius: 100%;
  background: currentColor;
}

.ButtonWrapper {
  text-align: center;
}

/* We allow those buttons to have secondary state. The secondary state is displayed (for instance during loading time) when
   the class "Button--secondaryState" is added */
.Button__PrimaryState,
.Button__SecondaryState {
  display: block;
  transition: transform 0.4s cubic-bezier(0.75, 0, 0.125, 1), opacity 0.4s cubic-bezier(0.75, 0, 0.125, 1);
}

.Button__SecondaryState {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  text-align: center;
  opacity: 0;
  transform: translate(-50%, 100%);
}

.Button--secondaryState .Button__PrimaryState {
  opacity: 0;
  transform: translateY(-100%);
}

.Button--secondaryState .Button__SecondaryState {
  opacity: 1;
  transform: translate(-50%, -50%);
}

/*#region Button group*/

.ButtonGroup {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: -12px;
}

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

.ButtonGroup__Item {
  margin: 12px;
}

.ButtonGroup__Item--expand {
  flex: 1 1 0;
}

.ButtonGroup--spacingSmall {
  margin: -8px;
}

.ButtonGroup--spacingSmall .ButtonGroup__Item {
  margin: 8px;
}

.ButtonGroup .ButtonGroup--spacingSmall a {
  letter-spacing: 0.02em;
  font-weight: 500;
  font-size: 20px;
}

.ButtonGroup--sameSize .ButtonGroup__Item {
  flex: 0 1 auto;
  white-space: nowrap;
  max-width: 245px;
}

@supports ((-o-object-fit: cover) or (object-fit: cover)) {
  .ButtonGroup--sameSize .ButtonGroup__Item {
    flex: 1 1 0;
    /* There is a bug in IE11 so we're forced to use this trick */
  }
}

@media screen and (min-width: 641px) {
  @supports (display: inline-grid) {
    .ButtonGroup--sameSize {
      display: inline-grid;
      grid-template-columns: 1fr 1fr;
    }

    .ButtonGroup--sameSize .ButtonGroup__Item {
      max-width: none;
    }
  }
}

/*#region ----------------------------------------------------------------------------------------------
 * Flickity styles
 * ----------------------------------------------------------------------------------------------*/

.flickity-enabled {
  position: relative;
}

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

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

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

/* draggable */
.flickity-enabled {
  -webkit-tap-highlight-color: transparent;
}

.flickity-enabled.is-draggable {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

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

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

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  position: absolute;
}

.flickity-prev-next-button[disabled] {
  opacity: 0;
}

.flickity-prev-next-button svg {
  width: auto;
  height: 50px;
  stroke-width: 1.5px;
  stroke: var(--text-light-color);
}

/* ---- page dots ---- */
.flickity-page-dots {
  width: 100%;
  padding: 0;
  margin: 22px 0 0 0;
  list-style: none;
  text-align: center;
}

.flickity-page-dots .dot {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 8px;
  margin: 0 4px;
  border-radius: 0;
  cursor: pointer;
  background: transparent;
  border: 1px solid var(--border-color);
  transition: color 0.2s ease-in-out, background 0.2s ease-in-out;
  /* This is used to increase the clickable area */
}

.flickity-page-dots .dot::before {
  position: absolute;
  content: "";
  top: -6px;
  right: -6px;
  left: -6px;
  bottom: -6px;
}


.flickity-page-dots .dot.is-selected {
  /*background: currentColor;*/
  border-color: currentColor;
  opacity: .7;
}


@media screen and (min-width: 641px) {
  .flickity-page-dots .dot {
    width: 60px;
    height: 8px;
    margin: 0 4px;
    border-width: 1px;
  }
}

/*#region ----------------------------------------------------------------------------------------------
 * Default styling for site-wide carousel
 * ----------------------------------------------------------------------------------------------*/

.Carousel {
  position: relative;
}

.Carousel--fixed,
.Carousel--fixed .flickity-viewport,
.Carousel--fixed .Carousel__Cell {
  height: 100%;
}

/* This allows to hide cells that are not first one until slider is loaded */
.Carousel:not(.flickity-enabled) .Carousel__Cell:not(.is-selected) {
  display: none;
}

.Carousel__Cell {
  display: block;
  width: 100%;
}

.Slideshow--constrained .Slideshow__Carousel .Carousel__Cell {
  max-height: 400px;
}

.js .Carousel--fadeIn .flickity-slider {
  transform: none !important;
}


.js .Carousel--fadeIn .Carousel__Cell {
  left: 0 !important;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

.js .Carousel--fadeIn .Carousel__Cell.is-selected {
  opacity: 1;
  visibility: visible;
  transition-delay: 0s;
}


.Carousel--insideDots .flickity-page-dots {
  position: absolute;
  width: 100%;
  margin: 0;
  bottom: 5px;
  left: auto;
}

.Carousel--outsideDots .flickity-page-dots {
  position: relative;
  width: 100%;
  margin: 0;
  bottom: -10px;
  left: auto;
}



.Carousel--insideDots .flickity-prev-next-button {
  bottom: -25px;
  z-index: 1;
}

.Carousel--insideDots .flickity-prev-next-button.next {
  right: 25px;
}

.Carousel--insideDots .flickity-prev-next-button.previous {
  right: 75px;
  margin-right: 15px;
}

@media screen and (min-width: 1008px) {
  .Carousel--insideDots .flickity-page-dots {
    right: 0;
    left: auto;
  }
}

/*#region Collapsible*/
.Collapsible {
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
  overflow: hidden;
}

.Collapsible + .Collapsible {
  border-top: none;
}

.Collapsible--padded {
  padding-left: 24px;
  padding-right: 24px;
}

.Collapsible__Button {
  display: block;
  position: relative;
  width: 100%;
  padding: 20px 0;
  text-align: left;
  cursor: pointer;
}

.Collapsible__Button p {
  max-width: 95%;
}

.Collapsible__Plus {
  position: absolute;
  right: 0;
  top: calc(50% - (11px / 2));
  width: 11px;
  height: 11px;
}

.Collapsible__Plus::before,
.Collapsible__Plus::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-90deg);
  background-color: currentColor;
  transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out;
}

.Collapsible__Plus::before {
  width: 11px;
  height: 1px;
  opacity: 1;
}

.Collapsible__Plus::after {
  width: 1px;
  height: 11px;
}

.Collapsible__Button[aria-expanded=true] .Collapsible__Plus::before,
.Collapsible__Button[aria-expanded=true] .Collapsible__Plus::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.Collapsible__Button[aria-expanded=true] .Collapsible__Plus::before {
  opacity: 0;
}

.Collapsible .Collapsible {
  margin-left: 16px;
  border: none;
}

.Collapsible .Collapsible .Collapsible__Button {
  padding: 13px 0;
}

.Collapsible__Inner {
  display: block;
  height: 0;
  visibility: hidden;
  transition: height 0.35s ease-in-out, visibility 0s ease-in-out 0.35s;
  overflow: hidden;
}

.Collapsible__Button[aria-expanded=true] + .Collapsible__Inner {
  visibility: visible;
  transition: height 0.35s ease-in-out;
}

.Collapsible__Content {
  padding-bottom: 18px;
}

.Collapsible .Linklist {
  margin-bottom: 4px;
}

.Collapsible .Linklist--bordered {
  margin-top: 16px;
  margin-bottom: 4px;
}

@media screen and (min-width: 641px) {

  /* When this class is applied to a collapsible, it will display as a collapsible on mobile but not on larger screen, where it will
     automatically appear is auto-expanded */
  .Collapsible--autoExpand {
    border: none;
    overflow: visible;
  }

  .Collapsible--autoExpand .Collapsible__Button {
    cursor: default;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 16px;
  }

  .Collapsible--autoExpand .Collapsible__Plus {
    display: none;
  }

  .Collapsible--autoExpand .Collapsible__Inner {
    height: auto;
    visibility: visible;
    overflow: visible;
  }

  .Collapsible--autoExpand .Collapsible__Content {
    padding-bottom: 0;
  }

  .Collapsible--autoExpand .Linklist {
    margin-bottom: 0;
  }

  .Collapsible--autoExpand {
    margin-bottom: 32px;
  }
}

@media screen and (min-width: 1008px) {
  .Collapsible--padded {
    padding-left: 30px;
    padding-right: 30px;
  }

  .Collapsible--large .Collapsible__Button {
    padding: 34px 0;
  }

  .Collapsible--large .Collapsible__Content {
    padding-bottom: 45px;
  }
}

/*#region Base drawer*/
.Drawer {
  position: fixed;
  top: 0;
  left: 0;
  visibility: hidden;
  width: calc(100vw - 65px);
  /* Interestingly, 100% does not work on iOS 9 and lower */
  height: 100vh;
  max-height: none;
  z-index: 20;
  transition: transform 0.5s var(--drawer-transition-timing), visibility 0.5s var(--drawer-transition-timing);
  background: var(--background);
  box-shadow: none;
  touch-action: manipulation;
  /* Animating box-shadow is slow, even on modern browsers, so we instead move it in a pseudo-element and animate opacity */
}

.Drawer:focus {
  outline: none;
}

.Drawer::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  box-shadow: 2px 0 10px rgba(54, 54, 54, 0.2), -2px 0 10px rgba(54, 54, 54, 0.2);
  opacity: 0;
  transition: opacity 0.5s var(--drawer-transition-timing);
}

.Drawer--secondary {
  background: var(--light-background);
}

.Drawer--fromLeft {
  transform: translateX(calc(-100vw + 65px));
}

.Drawer--fromRight {
  right: 0;
  left: auto;
  transform: translateX(calc(100vw - 65px));
}

.Drawer[aria-hidden=false] {
  visibility: visible;
  transform: translateX(0);
}

.Drawer[aria-hidden=false]::before {
  opacity: 1;
}

.Drawer__Container {
  width: 100%;
}

.Drawer--fromLeft .Drawer__Container {
  padding-left: 18px;
  padding-right: 24px;
}

.Drawer--fromRight .Drawer__Container {
  padding-left: 24px;
  padding-right: 18px;
}

.Drawer__Header {
  display: flex;
  align-items: center;
  position: relative;
  height: 50px;
  max-height: 60px;
  background: inherit;
  text-align: center;
  z-index: 1;
}

.Drawer__Header--flexible {
  min-height: 0 !important;
  max-height: none !important;
  height: auto !important;
  padding-top: 20px;
  padding-bottom: 20px;
}

.Drawer__Header--flexible .Drawer__Close {
  top: 25px;
}

@supports (--css: variables) {
  .Drawer__Header {
    height: var(--header-height);
  }
}

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

.Drawer__Close {
  position: absolute;
  margin-left: 0;
  left: 18px;
  top: calc(50% - 7px);
  line-height: 0;
}

.Drawer__Close svg {
  width: 15px;
  height: 15px;
  stroke-width: 1.25px;
}

.Drawer--fromRight .Drawer__Close {
  right: 18px;
  left: auto;
}

.Drawer__Header--bordered {
  box-shadow: 0 -1px var(--border-color) inset;
}

.Drawer--secondary .Drawer__Header--bordered {
  box-shadow: 0 -1px rgba(var(--border-color-rgb), 0.6) inset;
}

.Drawer--secondary .Collapsible {
  border-bottom-color: rgba(var(--border-color-rgb), 0.6);
}

.Drawer__Content {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  height: calc(100% - 60px);
  max-height: calc(100% - 50px);
  /* This handles an edge case when the header is much bigger than the maximum size for content, but this only works on Safari as of today */
}

@supports (--css: variables) {
  .Drawer__Content {
    height: calc(100% - var(--header-height));
    max-height: calc(100% - var(--header-height));
  }
}

@supports (width: calc(max(100%))) {
  .Drawer__Content {
    height: max(calc(100% - var(--header-height)), calc(100% - 60px));
    max-height: max(calc(100% - var(--header-height)), calc(100% - 60px));
  }
}

.Drawer__Main {
  flex: 1 1 auto;
}

.Drawer__Footer {
  flex: none;
  box-shadow: 0 -1px var(--border-color);
}

.Drawer--secondary .Drawer__Footer {
  box-shadow: 0 -1px rgba(var(--border-color-rgb), 0.6);
}

.Drawer__Footer--padded {
  padding: 24px;
}

@supports (padding: max(0px)) {
  .Drawer__Footer--padded {
    padding-bottom: max(24px, env(safe-area-inset-bottom, 0px) + 24px);
  }
}

@media screen and (min-width: 641px) {
  .Drawer {
    width: 400px;
    transform: translateX(-100%);
  }

  .Drawer--small {
    width: 340px;
  }

  .Drawer--fromRight {
    transform: translateX(100%);
  }

  .Drawer__Header {
    max-height: 80px;
    min-height: 60px;
  }

  @supports (width: calc(max(100%))) {
    .Drawer__Content {
      /* This handles an edge case when the header is much bigger than the maximum size for content, but this only works on Safari as of today */
      height: max(calc(100% - var(--header-height)), calc(100% - 80px));
      max-height: max(calc(100% - var(--header-height)), calc(100% - 80px));
    }
  }

  .Drawer--fromLeft .Drawer__Container,
  .Drawer--fromRight .Drawer__Container {
    padding-left: 30px;
    padding-right: 30px;
  }

  .Drawer__Close {
    left: 30px;
  }

  .Drawer--fromRight .Drawer__Close {
    right: 30px;
    left: auto;
  }

  .Drawer__Close svg {
    stroke-width: 1.5px;
  }

  .Drawer__Footer--padded {
    padding: 24px 30px;
  }
}

/*#region Animation*/

[data-drawer-animated-left],
[data-drawer-animated-right] {
  opacity: 0;
  transition: opacity 0.5s ease 0.25s, transform 0.5s ease 0.25s;
}

.Drawer[aria-hidden=false] [data-drawer-animated-left],
.Drawer[aria-hidden=false] [data-drawer-animated-right] {
  opacity: 1;
  transform: translateX(0);
}

[data-drawer-animated-left] {
  transform: translateX(-65px);
}

[data-drawer-animated-right] {
  transform: translateX(65px);
}

[data-drawer-animated-bottom] {
  opacity: 0;
  transform: translateY(45px);
  transition: opacity 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.Drawer[aria-hidden=false] [data-drawer-animated-bottom] {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.45s, transform 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.45s;
}




/*#region Image overlay*/

.Image--contrast,
.Image--contrast-mobile,
.Image--contrast-dark {
  position: relative;
}

.Image--contrast::after,
.Image--contrast-mobile::after,
.Image--contrast-dark::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.Image--contrast > *,
.Image--contrast-mobile > *,
.Image--contrast-dark > * {
  z-index: 1;
}

.PageHeader__Image.Image--contrast::after,
.ImageHero__Image.Image--contrast::after,
.Image--contrast-dark::after {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
}

.Slideshow__ImageContainer.Image--contrast::after {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 45%);
}

.Slideshow__ImageContainer.Image--contrast-dark::after {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.45) 100%);
}


.CollectionItem__Image.CollectionItem__Image--background.Image--contrast::after,
.CollectionItem__Image.CollectionItem__Image--contain.Image--contrast::after,
.CollectionItem__Image.Image--contrast::after,
.PageHeader__ImageWrapper.Image--contrast::after {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%);
}

.CollectionItem__Image.Image--contrast-dark::after {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0.65) 100%);
}

@media screen and (max-width: 640px) {
  .CollectionItem__Image.CollectionItem__Image--background.Image--contrast-mobile::after {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%);
  }
}


@media screen and (min-width: 1008px) {
  .ImageHero__Video.Image--contrast::after {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
  }
}

/*#region --------------------------------------------------------------------
 * VIDEO WRAPPER
 * --------------------------------------------------------------------*/

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

.VideoWrapper iframe,
.VideoWrapper object,
.VideoWrapper embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* For native one we use a different thing */
.VideoWrapper--native::after {
  display: none;
}

.VideoWrapper--native .plyr,
.VideoWrapper--native video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.VideoWrapper--native .plyr__video-wrapper,
.VideoWrapper--native video {
  height: 100%;
}


.VideoWrapper--small {
  padding-bottom: 30%;
}

.VideoWrapper--large {
  padding-bottom: 65%;
}


/*#region Anchor*/
.Anchor {
  display: block;
  position: relative;
  top: -75px;
  visibility: hidden;
}

.Anchor--block {
  top: -350px !important;
}

.Anchor--menu {
  top: -450px !important;
}

@supports (--css: variables) {
  .Anchor {
    top: calc(-1 * (var(--header-height)));
    /* + var(--announcement-bar-height)));*/
  }
}

@media screen and (max-width: 640px) {
  .Anchor--block {
    top: -275px !important;
  }

  .Anchor--menu {
    top: -300px !important;
  }
}



/*#region Placeholder (used within the theme editor only)*/

.PlaceholderSvg {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
}

.PlaceholderSvg--dark {
  background: dimgray;
  fill: #a1a1a1;
}

.PlaceholderBackground {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  overflow: hidden;
  opacity: 0.7;
}

.PlaceholderBackground__Svg {
  height: 100% !important;
  width: auto !important;
  min-width: 100%;
}


/*#region Alerts*/

.Alert,
.spr-form-message {
  display: block;
  padding: 15px 20px;
  white-space: normal;
  font-size: 1rem;
  word-break: break-all;
  word-break: break-word;
  text-shadow: none;
}

.Alert--large {
  padding: 18px 20px;
}

.Alert--error,
.spr-form-message-error {
  background: #f3dbdb;
  color: #cb2b2b;
}

.Alert--success,
.spr-form-message-success {
  background: #d2e4c4;
  color: #307a07;
}

.Alert__ErrorList {
  list-style: none;
}



@media screen and (min-width: 641px) {
  .Alert--large {
    padding: 18px 30px;
  }
}




/**	
 * ----------------------------------------------------------------------------	
 * Breadcrumb (from old theme)
 * ----------------------------------------------------------------------------	*/

.breadcrumbWrap {
  background: #f9f9f9;
  margin: 0 0 30px;
}

.breadcrumbWrap--full {
  background: none;
}

.breadcrumbWrap--pdp {
  background: none;
  max-width: 80%;
  margin: 15px 0;
}

.prev-next {
  display: flex;
  justify-content: flex-end;
}

@media screen and (max-width: 999px) {
  .prev-next-wrapper--desktop {
    display: none;
  }

  .prev-next-wrapper--mobile .prev-next {
    margin: -1.45rem 0 0 0;
    min-height: 1.45rem;
  }

  .prev-next-wrapper--mobile .prev-next a:first-child {
    padding-right: 25px;
  }

  .prev-next-wrapper--mobile .prev-next a svg {
    max-width: 13px;
  }
}

@media screen and (min-width: 1000px) {
  .prev-next-wrapper--desktop .prev-next {
    margin: -1.25rem 0 0 0;
  }

  .prev-next-wrapper--mobile {
    display: none;
  }
}

.prev-next svg.Icon {
  height: 2em;
  width: auto
}

.prev-next .Icon {
  margin-top: -2px
}

@media screen and (min-width:1000px) {
  .breadcrumb-prev-next {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin: 10px 0 5px 0;
  }

  .prev-next-wrapper {
    max-width: 20%;
    align-self: center;
    padding-top: 20px;
  }

  .prev-next a:first-child {
    padding-right: 20px;
  }
}

@media screen and (max-width:1000px) {
  .product-info__block-item[data-block-type="title"] .product-title {
    /* Reduce maximum width so the prev/next arrows do not overlap */
    max-width: calc(100% - 5rem);
  }
}



/*#region Featured quote*/

.FeaturedQuote {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 120px 40px;
  background: var(--secondary-elements-background);
  color: var(--secondary-elements-text-color);
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 18px));
}

.FeaturedQuote__Author {
  margin-top: 14px;
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 14px));
  opacity: 0.5;
}

.FeaturedQuote__Content a {
  text-decoration: underline;
  text-underline-position: under;
}

@media screen and (min-width: 1008px) {
  .FeaturedQuote {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}



/*#region Modal (from old theme)*/


.Modal {
  position: fixed;
  display: flex;
  flex-direction: column;
  visibility: hidden;
  top: 50%;
  left: 50%;
  width: 480px;
  max-width: calc(100vw - 40px);
  max-height: calc(100vh - 40px);
  padding: 15px 20px 20px 20px;
  z-index: 7;
  opacity: 0;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  background: var(--background);
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

@supports (--css: variables) {
  .Modal {
    max-height: calc(var(--window-height) - 40px);
  }
}

.Modal[aria-hidden=false] {
  visibility: visible;
  opacity: 1;
}

.Modal--dark {
  background: var(--secondary-elements-background);
  color: var(--secondary-elements-text-color);
}

.Modal--dark .Rte h1,
.Modal--dark .Rte h2,
.Modal--dark .Rte h3,
.Modal--dark .Rte h4,
.Modal--dark .Rte h5,
.Modal--dark .Rte h6 {
  color: var(--secondary-elements-text-color);
}

.Modal--dark .Rte a:not(.Button):hover {
  color: var(--secondary-elements-text-color);
}

.Modal--fullScreen {
  max-width: none;
  max-height: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  transform: none;
}

.Modal--halfScreen {
  width: 80%;
}


.Modal--pageContent {
  padding: 60px 0 50px 0;
}

.Modal--product {
  max-width: none;
  max-height: none;
  width: 100%;
  height: 100%;
  top: 15%;
  left: 0;
  bottom: 0;
  right: 0;
  transform: none;
  padding: 60px 40px;
}

.Modal--videoContent {
  justify-content: center;
  background: #000000;
  /* Full theatre experience ! */
  color: #ffffff;
}

.Modal .Heading:not(.Link) {
  color: inherit;
}

.Modal__Header {
  margin-bottom: 30px;
  text-align: center;
}

.Modal__Close {
  display: block;
  margin: 25px auto 0 auto;
  flex-shrink: 0;
}

.Modal__Close--outside {
  position: absolute;
  margin-top: 0;
  top: 20px;
  right: 20px;
  line-height: 0;
  opacity: 0.5;
  transition: opacity 0.2s ease-in-out;
}

.Modal__Close--outside:hover {
  opacity: 1;
}

.Modal__Close--outside svg {
  height: 16px;
  width: 16px;
  stroke-width: 1.25px;
}

.Modal--fullScreen .Modal__Close--outside {
  right: 40px;
  top: 40px;
}

.Modal__Content iframe {
  display: none;
}

#Modal__Logo {
  margin: 20px 0 -20px 0
}

#Modal__Logo img {
  margin: 0
}

#Modal__Logo img.originals {
  max-width: 175px !important
}

#Modal__Logo img.mondetta {
  max-width: 175px !important
}

#Modal__Logo img.modern {
  max-width: 225px !important
}

#Modal__Logo img.mpgear {
  max-width: 130px !important
}

.Modal[aria-hidden=false] .Modal__Content iframe {
  display: block;
}

/* We override some styles for common elements like table */
.Modal__Content th,
.Modal__Content td {
  border-color: var(--secondary-elements-border-color) !important;
}

.Modal__Content thead th:empty,
.Modal__Content tbody th {
  background: var(--secondary-elements-background) !important;
}

@media screen and (min-width: 641px) {
  .Modal:not(.Modal--pageContent) {
    padding: 35px 40px 40px 40px;
  }
}

@media screen and (min-width: 1008px) {
  .Modal {
    flex-direction: column;
  }

  .Modal--pageContent {
    padding: 100px 0 80px 0;
  }

  .Modal--pageContent .Modal__Content {
    flex: 1 0 0;
  }

  .Modal__Close:not(.Modal__Close--outside) {
    margin-top: 40px;
    flex-shrink: 0;
  }
}

/*#region A11Y*/
.PageSkipLink:focus {
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
  color: var(--text-color);
  background-color: var(--background);
  padding: 10px;
  z-index: 10000;
  transition: none;
}

/*#region Page overlay*/
.PageOverlay {
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100vw;
  z-index: 1;
  visibility: hidden;
  opacity: 0;
  background: #363636;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

.PageOverlay.is-visible {
  opacity: 0.25;
  visibility: visible;
}

/*#region Page header*/
.PageHeader {
  position: relative;
  margin: 35px 0;
}

.CustomerHeader {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 40px;
}



.PageHeader--sideImage {
  display: flex;
  margin: 0;
  width: 100%;
  padding: 0 25px 0 0;
  height: auto;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  overflow: hidden;
  background: var(--secondary-elements-background);
  color: var(--secondary-elements-text-color);
}

.PageHeader--sideImage img {
  margin-right: 40px;
}

.PageHeader--sideImage .SectionHeader:not(:only-child) {
  margin-bottom: 0;
}

.PageHeader--sideImage .SectionHeader__Description {
  max-width: 100%;
}

.PageHeader--sideImage .SectionHeader h1 {
  color: var(--secondary-elements-text-color);
}



.PageHeader--withBackground {
  display: flex;
  margin: 0;
  width: 100%;
  min-height: 450px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-size: cover;
  color: #ffffff;
  overflow: hidden;
}

.PageHeader--thin.PageHeader--withBackground {
  max-height: 60px;
  min-height: 60px;

}

.PageHeader--thin.PageHeader--withBackground .PageHeader__ImageWrapper {
  background-size: auto;
  background-position: center center;
  background-repeat: no-repeat;
  top: 0;
  height: 100%;
}


.PageHeader--withBackground .Heading,
.PageHeader--withBackground .Rte a:not(.Button) {
  color: #ffffff;
  -webkit-text-decoration-color: #ffffff;
  text-decoration-color: #ffffff;
}

.PageHeader__ImageWrapper {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: top center;
}

.PageHeader__ImageWrapper--article {
  overflow: hidden;
  height: 350px;
}

.PageHeader__Image {
  position: relative;
  height: 100%;
  width: 100%;
  background-size: cover;
  background-position: 100% 0;
}

.PageHeader__ImageWrapper--gif {
  background-position: center center;
}


@supports (--css: variables) {
  .PageHeader__ImageWrapper {
    top: calc(0.25 * 0px - 0px * 0);
    top: calc(0.25 * var(--announcement-bar-height, 0px) - var(--header-height, 0px) * var(--use-unsticky-header, 0));
    height: calc(100% + 0px + 0px * 0);
    height: calc(100% + var(--announcement-bar-height, 0px) + var(--header-height, 0px) * var(--use-unsticky-header, 0));
  }

  .PageHeader__ImageWrapper--gif {
    top: calc(0.5 * 0px - 0px * 0);
    top: calc(0.5 * var(--announcement-bar-height, 0px) - var(--header-height, 0px) * var(--use-unsticky-header, 0));
    height: calc(100% + 0px + 0px * 0);
    height: calc(100% + var(--announcement-bar-height, 0px) + var(--header-height, 0px) * var(--use-unsticky-header, 0));
  }

  .PageHeader__Image {
    height: calc(100% + 0px);
    height: calc(100% + var(--announcement-bar-height, 0px));
    top: calc(0 * 0px);
    top: calc(0 * var(--announcement-bar-height, 0px));
  }


}

.PageHeader .SectionHeader__Heading,
.PageHeader .SectionHeader__Description {
  margin-top: 0 !important;
}

.prose ul.category-icons {
  margin-left: 0;
  position: relative;
  left: 0;
  list-style-type: none;
  list-style-position: outside;
  line-height: 120%;
}

.prose .FabricTech {
  display: flex;
  justify-content: flex-start;
  text-align: left !important;
  max-width: 450px;
}

@media screen and (max-width:699px) {
  .prose .FabricTech {
    justify-content: center
  }
}

.prose .FabricTech ul.category-icons {
  position: relative;
  left: 0;
  list-style-type: none;
  list-style-position: outside;
  line-height: 200%;
}

.prose ul.category-icons li {
  margin: 12px 0;
  color: #fff;
  clear: both;
  vertical-align: middle;
}

.prose .FabricTech ul.category-icons li {
  margin: 12px 0;
  color: #000;
  clear: both;
  vertical-align: middle;
  font-size: 1.1em;
}

.prose ul.category-icons li::before {
  content: '';
  display: inline-block;
  height: 22px;
  width: 22px;
  background-size: 22px;
  background-repeat: no-repeat;
  background-position: center center;
  margin: -3px 15px 0 0;
  float: left;
}

.prose .FabricTech ul.category-icons li::before {
  content: '';
  display: inline-block;
  height: 32px;
  width: 32px;
  background-size: 32px;
  background-repeat: no-repeat;
  background-position: center center;
  margin: -3px 15px 0 0;
  float: left;
  filter: invert(1);
}

@media screen and (max-width:499px) {
  .prose ul.category-icons li::before {
    margin: 0 8px 0 0;
    height: 35px;
    width: 35px;
    background-size: 35px;
  }

  .prose .FabricTech ul.category-icons li::before {
    margin: 0 8px 0 0;
    height: 45px;
    width: 45px;
    background-size: 45px;
  }
}


.prose ul.category-icons li.category-01::before,
.prose .FabricTech ul.category-icons li.category-01::before {
  background-image: url(/cdn/shop/files/category-01-4way-stretch-circle.svg?v=1645719331)
}

.prose ul.category-icons li.category-02::before,
.prose .FabricTech ul.category-icons li.category-02::before {
  background-image: url(/cdn/shop/files/category-02-moisture-wicking-quick-drying-circle.svg?v=1645719331)
}

.prose ul.category-icons li.category-03::before,
.prose .FabricTech ul.category-icons li.category-03::before {
  background-image: url(/cdn/shop/files/category-03-luxe-soft-circle.svg?v=1645719331)
}

.prose ul.category-icons li.category-04::before,
.prose .FabricTech ul.category-icons li.category-04::before {
  background-image: url(/cdn/shop/files/category-04-ultra-lightweight-circle.svg?v=1645719938)
}

.prose ul.category-icons li.category-05::before,
.prose .FabricTech ul.category-icons li.category-05::before {
  background-image: url(/cdn/shop/files/category-05-seamless-circle.svg?v=1645719938)
}

.prose ul.category-icons li.category-06::before,
.prose .FabricTech ul.category-icons li.category-06::before {
  background-image: url(/cdn/shop/files/category-06-compression-circle.svg?v=1645719331)
}

.prose ul.category-icons li.category-07::before,
.prose .FabricTech ul.category-icons li.category-07::before {
  background-image: url(/cdn/shop/files/category-07-shape-recovery-circle.svg?v=1648739645)
}

.prose ul.category-icons li.category-08::before,
.prose .FabricTech ul.category-icons li.category-08::before {
  background-image: url(/cdn/shop/files/category-08-running.svg?v=1644531206)
}

.prose ul.category-icons li.category-09::before,
.prose .FabricTech ul.category-icons li.category-09::before {
  background-image: url(/cdn/shop/files/category-09-yoga.svg?v=1644531207)
}

.prose ul.category-icons li.category-10::before,
.prose .FabricTech ul.category-icons li.category-10::before {
  background-image: url(/cdn/shop/files/category-10-fabric.svg?v=1644531207)
}

.prose ul.category-icons li.category-11::before,
.prose .FabricTech ul.category-icons li.category-11::before {
  background-image: url(/cdn/shop/files/category-11-medium-support.svg?v=1648738588)
}

.prose ul.category-icons li.category-12::before,
.prose .FabricTech ul.category-icons li.category-12::before {
  background-image: url(/cdn/shop/files/category-12-stays-in-place.svg?v=1648738911)
}

.prose ul.category-icons li.category-13::before,
.prose .FabricTech ul.category-icons li.category-13::before {
  background-image: url(/cdn/shop/files/category-13-tencel.svg?v=1668793912)
}

.prose ul.category-icons li.category-14::before,
.prose .FabricTech ul.category-icons li.category-14::before {
  background-image: url(/cdn/shop/files/category-14-antimicrobial.svg?v=1668796138)
}

.prose ul.category-icons li.category-15::before,
.prose .FabricTech ul.category-icons li.category-15::before {
  background-image: url(/cdn/shop/files/category-15-crossfit.svg?v=1668797870)
}

.prose ul.category-icons li.category-16::before,
.prose .FabricTech ul.category-icons li.category-16::before {
  background-image: url(/cdn/shop/files/category-16-breathable.svg?v=1702939099)
}

.prose ul.category-icons li.category-17::before,
.prose .FabricTech ul.category-icons li.category-17::before {
  background-image: url(/cdn/shop/files/category-17-warm-comfort.svg?v=1702939099)
}

.prose ul.category-icons li.category-18::before,
.prose .FabricTech ul.category-icons li.category-18::before {
  background-image: url(/cdn/shop/files/category-18-sustainable.svg?v=1702939546)
}

.SectionHeader__Heading.u-h1 span.title-bold {
  letter-spacing: 0.02em;
  font-weight: bold;
  font-size: 1.3em
}

.SectionHeader--logoLeft,
.Article__Logo--logoLeft {
  left: 0;
}



.PageHeader .Alert {
  margin-top: 22px;
}

.PageHeader__Back {
  display: inline-block;
  margin-bottom: 25px;
}

.PageHeader__Back svg {
  height: 9px;
  margin-right: 12px;
  vertical-align: baseline;
  vertical-align: initial;
}

/* Double selector is just to increase specificity and avoid !important */
.PageHeader--withBackground .SectionHeader.SectionHeader {
  position: relative;
  padding: 60px 0 80px 0;
}

@supports (--css: variables) {
  .PageHeader--withBackground .SectionHeader.SectionHeader {
    margin-top: calc(var(--header-height) * 0);
    margin-top: calc(var(--header-height) * var(--header-is-transparent, 0));
  }
}

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

  .PageHeader__ImageWrapper {
    background-position: 50% 10%;
  }

  .PageHeader__ImageWrapper--gif {
    background-position: center center;
  }

  .PageHeader--withBackground {
    min-height: 300px;
  }

  .PageHeader--thin.PageHeader--withBackground .PageHeader__ImageWrapper {
    background-size: 200%;
  }

}


@media screen and (min-width: 641px) {
  .PageHeader {
    margin: 50px 0;
  }

  .PageHeader--withBackground {
    min-height: 450px;
    margin-top: 0;
    margin-bottom: 0;
  }

  .PageHeader + .Article__Wrapper {
    margin-top: -45px;
  }


  @supports (--css: variables) {
    .PageHeader--withBackground {
      min-height: calc(380px + var(--header-height) * 0);
      min-height: calc(380px + var(--header-height) * var(--header-is-transparent, 0));
    }
  }

  .PageHeader--small.PageHeader--withBackground {
    min-height: 320px;
  }

  @supports (--css: variables) {
    .PageHeader--small.PageHeader--withBackground {
      min-height: calc(350px + var(--header-height) * 0);
      min-height: calc(350px + var(--header-height) * var(--header-is-transparent, 0));
    }
  }

  .PageHeader--large.PageHeader--withBackground {
    min-height: 480px;
  }

  @supports (--css: variables) {
    .PageHeader--large.PageHeader--withBackground {
      min-height: calc(410px + var(--header-height) * 0);
      min-height: calc(410px + var(--header-height) * var(--header-is-transparent, 0));
    }
  }

  .PageHeader--withBackground .SectionHeader.SectionHeader {
    margin-top: 50px;
    padding: 40px 0;
  }

  @supports (--css: variables) {
    .PageHeader--withBackground .SectionHeader.SectionHeader {
      margin-top: calc(var(--header-height) * 0);
      margin-top: calc(var(--header-height) * var(--header-is-transparent, 0));
    }
  }
}


@media screen and (min-width: 1008px) {
  .PageHeader + .Article__Wrapper {
    margin-top: -70px;
  }
}


@media screen and (min-width: 1140px) {
  .PageHeader--withBackground {
    min-height: 550px;
  }

  @supports (--css: variables) {
    .PageHeader--withBackground {
      min-height: calc(450px + var(--header-height) * 0);
      min-height: calc(450px + var(--header-height) * var(--header-is-transparent, 0));
    }
  }


  .PageHeader--small.PageHeader--withBackground {
    min-height: 400px;
  }

  @supports (--css: variables) {
    .PageHeader--small.PageHeader--withBackground {
      min-height: calc(400px + var(--header-height) * 0);
      min-height: calc(400px + var(--header-height) * var(--header-is-transparent, 0));
    }
  }

  .PageHeader--large.PageHeader--withBackground {
    min-height: 620px;
  }

  @supports (--css: variables) {
    .PageHeader--large.PageHeader--withBackground {
      min-height: calc(520px + var(--header-height) * 0);
      min-height: calc(520px + var(--header-height) * var(--header-is-transparent, 0));
    }
  }

  .SectionHeader--logoLeft {
    left: -400px;
  }


}

@media screen and (min-width: 1800px) {
  .PageHeader--withBackground {
    min-height: 650px;
  }

  @supports (--css: variables) {
    .PageHeader--withBackground {
      min-height: calc(600px + var(--header-height) * 0);
      min-height: calc(600px + var(--header-height) * var(--header-is-transparent, 0));
    }
  }


  .PageHeader--small.PageHeader--withBackground {
    min-height: 500px;
  }

  @supports (--css: variables) {
    .PageHeader--small.PageHeader--withBackground {
      min-height: calc(550px + var(--header-height) * 0);
      min-height: calc(550px + var(--header-height) * var(--header-is-transparent, 0));
    }
  }

  .PageHeader--large.PageHeader--withBackground {
    min-height: 700px;
  }

  @supports (--css: variables) {
    .PageHeader--large.PageHeader--withBackground {
      min-height: calc(650px + var(--header-height) * 0);
      min-height: calc(650px + var(--header-height) * var(--header-is-transparent, 0));
    }
  }
}

/*#region Page layout (to create two columns) and content*/

.PageLayout__Section:first-child {
  margin-bottom: 60px;
}

.PageLayout__Section--sticky {
  position: sticky;
  top: 75px;
  align-self: flex-start;
}

.PageLayout:not(:only-child) {
  margin-top: 35px;
  margin-bottom: 35px;
}

@supports (--css: variables) {
  .PageLayout__Section--sticky {
    top: calc(var(--header-height) + 20px);
  }
}

@media screen and (min-width: 641px) {
  .PageLayout {
    display: flex;
    flex-wrap: nowrap;
  }

  .PageLayout:not(:only-child) {
    margin-top: 50px;
    margin-bottom: 50px;
  }

  .PageLayout__Section {
    flex: 1 0 0;
  }

  .PageLayout__Section:first-child {
    margin-bottom: 0;
  }

  .PageLayout__Section--secondary {
    flex: 1 1 200px;
    max-width: 200px;
  }

  .PageLayout__Section + .PageLayout__Section {
    margin-left: 50px;
  }
}

@media screen and (min-width: 641px) and (max-width: 1007px) {
  .PageLayout--breakLap {
    display: block;
  }

  .PageLayout--breakLap .PageLayout__Section:first-child {
    margin-bottom: 60px;
  }

  .PageLayout--breakLap .PageLayout__Section + .PageLayout__Section {
    margin-left: 0;
    width: 100%;
  }
}

@media screen and (min-width: 1008px) {
  .PageLayout__Section--secondary {
    flex-basis: 235px;
    max-width: 235px;
  }
}

@media screen and (min-width: 1140px) {
  .PageLayout__Section + .PageLayout__Section {
    margin-left: 80px;
  }

  .PageLayout__Section--secondary {
    flex-basis: 290px;
    max-width: 290px;
  }
}

/*#region Page spacing wrapper*/
.PageSpacingWrapper {
  margin-bottom: 60px;
}

/*#region Page content*/
.PageContent {
  max-width: 1300px;
  margin: 35px auto;
}

.PageContent::after {
  content: '';
  display: block;
  clear: both;
}

.PageContent--centered {
  text-align: center
}

.PageContent--clearDivs div {
  clear: both;
  margin-top: 1.5em;
}

.PageContent--clearDivs h1,
.PageContent--clearDivs h2,
.PageContent--clearDivs h3,
.PageContent--clearDivs h4 {
  margin-top: 1em;
}

.PageContent .Flex--start img,
.PageContent .Flex--start div img {
  margin: 0 25px 25px 0;
}

.PageContent p {
  margin-bottom: 1.5rem;
}

.PageContent p.Circled {
  color: #000;
  text-align: left;
  font-size: 18px;
  margin: 0 0 10px -5px;
  position: relative;
  text-indent: 45px;
  line-height: 150%;

}

.PageContent p.Circled::before {
  content: '';
  position: absolute;
  display: block;
  height: 30px;
  width: 30px;
  border: 2px solid #000;
  border-radius: 30px;
  text-indent: 0;
  margin: 0;
  vertical-align: middle;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
}


.PageContent p.Circled--one::before {
  content: '1';

}

.PageContent p.Circled--two::before {
  content: '2';

}

.PageContent p.Circled--three::before {
  content: '3';

}

.PageContent p.Circled--four::before {
  content: '4';

}

.PageContent p.Circled--five::before {
  content: '5';

}

.PageContent img.fit {
  max-width: 499px;
  margin: 30px 0;
}

.prose .PageContent img.thumbnail {
  max-width: 250px
}


@media screen and (max-width:1007px) {
  .PageContent img.fit {
    max-width: 100%;
    margin: 30px auto;
  }
}

@media screen and (max-width:640px) {
  .prose .PageContent img.thumbnail {
    max-width: 100%;
    margin: 0
  }

  .prose .PageContent img.thumbnail--fixed,
  .prose .PageContent .Float img.thumbnail--fixed {
    max-width: 250px;
    margin: 15px auto;
    float: none;
  }
}

.PageContent--wide {
  max-width: 1600px
}

.PageContent--TwoThirds {
  max-width: 66.66%
}

.PageContent--OneThird {
  margin: 35px 0;
  max-width: 33.33%;
}

.PageContent img.one-third {
  max-width: 33.33%;
}


.PageContent--fitScreen {
  display: flex;
  min-height: calc(100vh - 120px);
  align-items: center;
}

@supports (--css: variables) {
  .PageContent--fitScreen {
    min-height: calc(var(--window-height) - var(--header-height) - 0px - 120px);
    min-height: calc(var(--window-height) - var(--header-height) - var(--announcement-bar-height, 0px) - 120px);
    /* 120px is the margin */
  }
}


.PageContent--inset {
  padding: 40px;
  margin-bottom: 40px;
  background: var(--light-background);
}

.PageContent--narrow {
  max-width: 999px;
}

.PageContent--extraNarrow {
  max-width: 400px;
}

.PageHeader + .PageContent {
  margin-top: 0;
}


.PageContent--policies h1,
.PageContent--policies h2,
.PageContent--policies h3,
.PageContent--policies h4 {
  margin: 20px 0 10px 0;
  text-transform: normal;
}

.PageContent--policies h2 {
  font-size: 1.5em;
}

.PageContent ul {
  list-style-position: outside;
  margin: 10px 0 15px 17px;
}

.PageContent .Flex--start ul,
.PageContent--FlexColumn ul,
.PageContent--FlexColumn ol,
.PageContent--clearDivs ol {
  list-style-position: inside;
}

.PageContent--sectioned {
  border-top: 1px solid var(--border-color);
  padding-top: 30px;
  margin-top: 30px;
}

.PageContent--faq h2,
.PageContent--sectioned h2 {
  border-top: 1px solid var(--border-color);
  padding-top: 20px;
}

.PageContent--faq h3 {
  font-weight: bold;
}

.PageContent--bordered {
  border-top: 1px solid var(--border-color);
  margin-top: 30px;
  padding-top: 30px;
  width: 100%;
}

.PageContent--bordered.dark {
  border-top: 1px solid var(--text-color);
}


.PageContent--FlexColumn {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: flex-start;
}

.PageContent--FlexColumn.centered {
  justify-content: center;
  align-items: center;
}

.PageContent--FlexColumn div,
.PageContent--FlexColumn img {
  max-width: 500px;
  height: auto;
  margin-top: 60px;
}

.PageContent--FlexColumn img {
  margin: 0;
}

.PageContent--FlexColumn img.icon {
  max-width: 300px;
  align-self: center;
}

.PageContent--FlexColumn.centered div {
  margin: 30px 15px;
}

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


/*MAGAZINE LAYOUT*/


.PageContent--Magazine {
  margin: 60px auto;
  padding: 0 15px;
  max-width: 1800px;
}

.PageContent--Magazine div.block {
  padding: 0 15px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  float: left
}

.PageContent--Magazine div.block-widow {
  padding: 0 15px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

.PageContent--Magazine div.block {
  width: 50%
}

.PageContent--Magazine div.block-widow {
  width: 100%
}

.PageContent--Magazine div.block div,
.PageContent--Magazine div.block-widow div,
#tripleStory div.block div {
  margin-bottom: 50px
}

.PageContent--Magazine div.block div.one {
  order: 1;
}

.PageContent--Magazine div.block div.two {
  order: 2;
}


.PageContent--Magazine div.block-widow div.two {
  width: 100%
}

.PageContent--Magazine div.block div.spaced {
  margin: 20% 10%;
  justify-self: center;
}

.PageContent--Magazine div.block p.pHeading,
.PageContent--Magazine div.block-widow p.pHeading {
  line-height: 120%;
  text-align: left;
  margin: 10px 0 20px 0;
  border-bottom: 1px solid #000;
  padding-bottom: 20px;
  display: block;
}

.PageContent--Magazine div.block p,
.PageContent--Magazine div.block-widow p {
  text-align: left;
}

.PageContent--Magazine div.block p.text {
  font-size: 110%;
}


.PageContent--Magazine div.block img,
.PageContent--Magazine div.block-widow img {
  width: auto;
}

.PageContent--Magazine a {
  display: block;
  margin: 10px 0;
}

.PageContent--Magazine div.block ul {
  text-align: left;
}

.Flex {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  margin: 3rem auto;
}

.Flex div {
  align-self: center;
  padding: 0 10px;
}

.Flex--nopad div {
  padding: 0;
  border: 1px solid #fff;
}

.prose .Flex div {
  margin-block-start: 0;
}

.Flex--multi-item {
  flex-wrap: wrap;
  justify-content: space-between;
}

.Flex--multi-item div {
  flex: 0 1 25%;
  width: 100%;
  padding: 0px 1.5em;
  margin: 0.5em 0 2em 0;
}

.Flex--multi-item.two-by-two div {
  flex: 0 1 50%;
  padding: 0;
  margin: 10px 0;
}

.Flex--multi-item.two-then-three div {
  flex: 0 1 33.33%;
  padding: 0 6%;
}

.Flex--multi-item.four-then-two div {
  flex: 0 1 25%;
  padding: 0 25px;
}

.Flex--multi-item.start div {
  align-self: flex-start;
}

.Flex--evenly {
  justify-content: space-evenly;
}

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

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

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

.Flex--start div,
.Flex--evenly div {
  width: 100%;
  margin-bottom: 25px;
}

.Flex--start div > img {
  margin-bottom: 25px !important;
}

.Flex div.pad {
  padding: 10px;
}

.Flex img,
.PageContent--FlexColumn img {
  display: inline-flex;
}

.Flex img.icon {
  width: auto;
  max-height: 85px;
  padding: 0 0 15px 0;
  display: block;
}

.Flex img.icon--logo {
  max-height: 100px;
}

.PageContent--FlexColumn div {
  margin-bottom: 20px;
}

.Float {
  display: block;
  max-width: 50%;
  margin-top: 5px;
}

.Float--left.headerImg {
  margin-top: 0;
}

.Float--left.small-img,
.Float--right.small-img {
  width: auto;
  max-width: 400px;
}

.Float--left.logo {
  width: auto;
  max-width: 200px;
}

.Float--left,
.Rte img.Float--left {
  margin-right: 30px;
  margin-bottom: 30px;
  margin-left: 0;
  float: left;
}

.Float--right,
.Rte img.Float--right {
  margin-right: 0;
  margin-bottom: 30px;
  margin-left: 30px;
  float: right;
}

.Flex--modelSizes {
  flex-wrap: wrap;
  justify-content: flex-start;
}


.Flex--modelSizes p {
  font-size: 0.8em;
}


@media (max-width:999px) {
  .PageContent--Magazine {
    max-height: 100%;
    padding: 0 30px;
  }

  .PageContent--Magazine div.block {
    width: 100%;
    padding: 0;
    flex-direction: column-reverse;
  }

  .PageContent--Magazine div.block-widow {
    width: 100%;
    padding: 0;
    flex-direction: column
  }

  .PageContent img.one-third {
    max-width: 100%;
  }

  .PageContent--Magazine div.block div,
  .PageContent--Magazine div.block-widow div {
    width: 100%
  }

  .PageContent--Magazine div.block div.one {
    order: 0
  }

  .PageContent--Magazine div.block div.two {
    order: 0
  }

  .PageContent--Magazine div.block-widow div.one {
    order: 2
  }

  .PageContent--Magazine div.block-widow div.two {
    order: 1
  }

  .PageContent--FlexColumn div,
  .PageContent--FlexColumn img {
    max-width: 100%;
  }

  .PageContent--Magazine div.block div.spaced {
    margin: 5% 0;
  }

  .Flex {
    flex-wrap: wrap
  }

  .Flex--twocolumn div {
    width: 50%;
    margin-bottom: 40px;
    padding: 20px;
  }

  .Flex div.pad {
    padding: 10px 0
  }

  .Float--left,
  .Float--right {
    clear: both;
    float: none;
    margin: 25px 0;
    width: 100%;
    max-width: 100%;
  }

  .Flex--start div,
  .Flex--evenly div {
    margin-bottom: 40px;
  }

  .Flex--modelSizes div {
    width: 20%;
  }

  span.dn-arr,
  span.up-arr {
    display: none;
  }
}

@media screen and (max-width:640px) {
  .Flex--modelSizes div {
    width: 33.33%;
  }

  .Float--left.small-img,
  .Float--right.small-img {
    float: none !important;
    clear: both;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  .Float--left.logo {
    float: none !important;
    clear: both;
  }

  .Flex--twocolumn div {
    width: 100%;
  }

}

@media screen and (min-width: 641px) {
  .PageContent {
    margin-bottom: 60px;
    margin-top: 60px;
  }

  .Flex--modelSizes div {
    width: 20%;
  }


  .PageContent--fitScreen {
    min-height: calc(100vh - 160px);
  }

  @supports (--css: variables) {
    .PageContent--fitScreen {
      min-height: calc(var(--window-height) - var(--header-height) - 0px - 160px);
      min-height: calc(var(--window-height) - var(--header-height) - var(--announcement-bar-height, 0px) - 160px);
      /* 160px is the margin */
    }
  }
}


@media screen and (max-width:1007px) {
  .Flex--multi-item div {
    width: auto;
    max-width: 50%;
    flex-direction: row;
  }

  .Flex--multi-item.two-then-three div,
  .Flex--multi-item.four-then-two div {
    flex: 0 1 50%;
    padding: 0;
  }



  .Flex--multi-item div img {
    max-width: 150px;
    display: inline;
  }

  .Rte img.mobile-hide-desktop {
    display: block
  }

  .Rte img.desktop-hide-mobile {
    display: none
  }
}

@media screen and (max-width:425px) {
  .Flex--multi-item div img {
    max-width: 120px;
  }

  .Flex--multi-item div {
    padding: 0;
  }

  .Flex--modelSizes div {
    width: 50%;
  }

}



@media screen and (min-width:1008px) {
  .Flex--multi-item div {
    flex: 0 1 20%;
    width: auto;
    flex-direction: row;
    padding: 0px 1.5% 0px 1.5%;
    box-sizing: border-box;
  }

  .Flex--multi-item.two-then-three div {
    flex: 0 1 33.33%;
    padding: 0 6%;
  }

  .Rte img.desktop-hide-mobile {
    display: block
  }

  .Rte img.mobile-hide-desktop {
    display: none
  }

  .Flex--modelSizes div {
    width: 15%;
  }

}

@media screen and (min-width:1200px) {
  .Flex--modelSizes div {
    width: 10%;
  }
}


@media screen and (min-width:1500px) {
  .Flex--multi-item div {
    flex: 0 1 16.5%;
  }
}


.sustainability {
  margin: 20px auto;
  background-image: url(/cdn/shop/files/responsibly-made-icon-green-screened-01.svg?131679);
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: 40%;
}

@media (min-width:1009px) {
  #bf-content p {
    padding-left: 10%
  }
}

@media (max-width:1008px) {
  #bf-content {
    background-position: 70% 100%;
  }

  .midDiv {
    flex-direction: column-reverse;
    padding-top: 30px
  }

  .midDiv div {
    width: 100%
  }
}

@media (min-width:641px) {
  .dsktp {
    display: block
  }

  .mobl {
    display: none
  }
}

@media (max-width:640px) {
  #bf-content {
    background-position: 20% 100%;
    min-height: 800px
  }

  .flexDiv {
    min-height: 800px
  }

  .flexDiv div {
    align-self: flex-end;
    width: 100%;
    padding-bottom: 40px;
    background: rgb(17, 26, 35);
    background: linear-gradient(0deg, rgba(17, 26, 35, 1) 65%, transparent 100%);
  }

  #bf-content h1,
  #bf-content h2,
  #bf-content h3,
  #bf-content p {
    color: #fff;
    text-shadow: none
  }

  .flexDiv div.blank {
    display: none
  }

  #bf-content h1,
  #bf-content h2,
  #bf-second h2,
  #bf-content h3,
  #bf-content p,
  #bf-second p {
    text-align: center
  }

  .flexDiv img {
    margin: 0 auto 30px auto
  }

  .dsktp {
    display: none
  }

  .mobl {
    display: block
  }
}


/* Pagination Settings */


.Pagination {
  margin: 60px 0;
  text-align: center;
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 12px));
  line-height: 1;
}

.Pagination--tight {
  margin: 60px 0 !important;
}

.Pagination__Nav {
  display: inline-block;
  list-style: none;
}

.Pagination__NavItem {
  display: inline-block;
  padding: 16px 20px;
  border-bottom: 1px solid var(--border-color);
}

.Pagination__NavItem svg {
  width: 6px;
  height: 10px;
  vertical-align: -1px;
}

.Pagination__NavItem.is-active {
  color: var(--text-color);
  border-bottom-color: var(--text-color);
  box-shadow: 0 -2px var(--text-color) inset;
}

@media screen and (min-width: 641px) {
  .Pagination {
    margin: 80px 0;
  }

  .Pagination__NavItem {
    padding-left: 28px;
    padding-right: 28px;
  }
}

@media screen and (min-width: 1140px) {
  .Pagination {
    margin: 120px 0;
  }
}

.Panel {
  position: relative;
  border: 1px solid var(--border-color);
  padding: 60px 24px;
}

.Panel--withArrows {
  margin: 0 15px;
}

.Panel--flush {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.Panel__Title {
  position: absolute;
  top: 0;
  left: 50%;
  margin: 0;
  padding: 0 14px 0 18px;
  transform: translate(-50%, -50%);
  background: var(--background);
  white-space: nowrap;
}

.Panel .flickity-prev-next-button {
  top: calc(50% - (45px / 2));
}

.Panel .flickity-prev-next-button.next {
  right: calc(-45px / 2);
}

.Panel .flickity-prev-next-button.previous {
  left: calc(-45px / 2);
}

@media screen and (min-width: 641px) {
  .Panel {
    padding-left: 50px;
    padding-right: 50px;
  }

  .Panel--withArrows {
    margin-left: 0;
    margin-right: 0;
  }
}

.Popover {
  position: fixed;
  width: 100%;
  bottom: 0;
  left: 0;
  background: var(--light-background);
  z-index: 10;
  box-shadow: 0 -2px 10px rgba(54, 54, 54, 0.2);
  touch-action: manipulation;
  transform: translateY(100%);
  visibility: hidden;
  transition: all 0.4s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.Popover--secondary {
  background: var(--background);
}

.Popover[aria-hidden=false] {
  transform: translateY(0);
  visibility: visible;
}

.Popover__Header {
  position: relative;
  padding: 13px 20px;
  border-bottom: 1px solid rgba(var(--border-color-rgb), 0.4);
  text-align: center;
}

.Popover__Close {
  position: absolute;
  left: 20px;
  top: calc(50% - 7px);
  line-height: 0;
}

.Popover__Close svg {
  stroke-width: 1.1px;
}

.Popover__ValueList {
  list-style: none;
  max-height: 385px;
  padding: 18px 0;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.Popover__Value {
  display: block;
  padding: 12px 20px;
  width: 100%;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: var(--text-color-light);
  text-align: center;
  transition: color 0.2s ease-in-out;
}

.Popover__Value:focus {
  background: var(--background);
  outline: none;
}

.Popover__Value.is-selected {
  color: var(--text-color);
}

.Popover__Value::before {
  content: '';
  display: inline-block;
  height: 15px;
  width: 20px;
  background-size: 200px 15px;
  background-repeat: no-repeat;
  background-position: center center;
  margin-right: 5px;
  vertical-align: text-bottom;
}

.Popover__Value[value=CAD]::before,
.Popover__Value.is-selected[value=CAD]::before {
  background-image: url(/cdn/shop/files/cad.svg?v=1644507912);
}

.Popover__Value[value=GBP]::before,
.Popover__Value.is-selected[value=GBP]::before {
  background-image: url(/cdn/shop/files/gbp.svg?v=1644507912);
}

.Popover__Value[value=USD]::before,
.Popover__Value.is-selected[value=USD]::before {
  background-image: url(/cdn/shop/files/usd.svg?v=1644507912);
}

.Popover__Value[value=EUR]::before,
.Popover__Value.is-selected[value=USD]::before {
  background-image: url(/cdn/shop/files/eu.svg?v=1645552002);
}

.Popover__Value[value=AUD]::before,
.Popover__Value.is-selected[value=USD]::before {
  background-image: url(/cdn/shop/files/au.svg?v=1645552002);
}


.Popover__FooterHelp {
  width: 100%;
  padding: 18px 20px;
  text-align: center;
  border-top: 1px solid rgba(var(--border-color-rgb), 0.4);
}

@supports (padding: max(0px)) {
  .Popover__ValueList {
    max-height: calc(385px + env(safe-area-inset-bottom, 0px));
    padding-bottom: max(18px, env(safe-area-inset-bottom, 0px) + 18px);
  }
}

@media screen and (min-width: 1008px) {
  .Popover {
    transform: none;
    width: auto;
    bottom: auto;
    left: auto;
    opacity: 0;
    transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
  }

  .Popover::before {
    content: "";
    position: absolute;
    right: 40px;
    width: 10px;
    height: 10px;
    border-style: solid;
  }

  .Popover--noWrap {
    white-space: nowrap;
  }

  .Popover--withMinWidth {
    min-width: 375px;
  }

  .Popover--positionBottom::before {
    bottom: 100%;
    border-width: 0 10px 10px 10px;
    border-color: transparent transparent var(--light-background) transparent;
    filter: drop-shadow(0 -2px 2px rgba(54, 54, 54, 0.2));
  }

  .Popover--positionTop::before {
    top: 100%;
    border-width: 10px 10px 0 10px;
    border-color: var(--light-background) transparent transparent transparent;
    filter: drop-shadow(0 2px 2px rgba(54, 54, 54, 0.2));
  }

  .Popover--positionLeft::before {
    left: 100%;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent var(--light-background);
    filter: drop-shadow(2px 0 2px rgba(54, 54, 54, 0.2));
  }

  .Popover--positionTop.Popover--alignCenter::before,
  .Popover--positionBottom.Popover--alignCenter::before {
    left: calc(50% - 10px);
  }

  .Popover--positionLeft.Popover--alignCenter::before {
    top: calc(50% - 10px);
  }

  .Popover--positionLeft.Popover--alignBottom::before {
    top: 15px;
  }

  .Popover--positionLeft.Popover--alignTop::before {
    bottom: 10px;
  }

  .Popover[aria-hidden=false] {
    opacity: 1;
    transform: none;
  }

  .Popover__Header {
    display: none;
  }

  .Popover__Value {
    padding-left: 50px;
    padding-right: 50px;
    text-align: right;
  }

  .Popover--withMinWidth .Popover__Value,
  .Popover__ValueList--center .Popover__Value {
    text-align: center;
  }

  .Popover--small.Popover--positionTop::before {
    border-width: 8px 8px 0 8px;
  }

  .Popover--small.Popover--positionBottom::before {
    border-width: 0 8px 8px 8px;
  }

  .Popover--small .Popover__Value {
    padding: 5px 20px;
  }

  .features--heading-small .Popover--small .Popover__Value {
    font-size: 10px;
  }

  .features--heading-normal .Popover--small .Popover__Value {
    font-size: 12px;
  }

  .features--heading-large .Popover--small .Popover__Value {
    font-size: 13px;
  }
}

.Rte {
  word-break: break-word;
  /* Prevent long words to go outside the container */
  /* Simple, minimum clearfix added to every RTE text to avoid issue with float */
}

.Rte::after {
  content: "";
  display: block;
  clear: both;
}

.Rte iframe {
  max-width: 100%;
}

.Rte img {
  display: block;
  margin: 0 auto;
}

.Rte a:not(.Button) {
  color: var(--link-color);
  text-decoration: underline;
  -webkit-text-decoration-color: rgba(var(--link-color-rgb), 0.6);
  text-decoration-color: rgba(var(--link-color-rgb), 0.6);
  text-underline-position: under;
  transition: color 0.2s ease-in-out, -webkit-text-decoration-color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out, text-decoration-color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out, text-decoration-color 0.2s ease-in-out, -webkit-text-decoration-color 0.2s ease-in-out;
}

.brand--ma .Footer__Content.Rte a,
.brand--mo .Footer__Content.Rte a,
.brand--mondetta .Footer__Content.Rte a,
.brand--warehouse .Footer__Content.Rte a {
  color: #fff;
}

.brand--ma .Footer__Content.Rte a:hover,
.brand--mo .Footer__Content.Rte a:hover,
.brand--mondetta .Footer__Content.Rte a:hover,
.brand--warehouse .Footer__Content.Rte a:hover {
  color: var(--link-color);
}

.Rte a:not(.Button) .Link--noUline {
  text-decoration: none;
}

.Rte a:not(.Button):hover {
  color: var(--text-color);
  -webkit-text-decoration-color: rgba(var(--text-color-rgb), 0.6);
  text-decoration-color: rgba(var(--text-color-rgb), 0.6);
}

.Rte p:not(:last-child),
.Rte ul:not(:last-child),
.Rte ol:not(:last-child) {
  margin-bottom: 1.6em;
}

.Rte blockquote,
.Rte .VideoWrapper,
.Rte .Form {
  margin-top: 2.4em;
  margin-bottom: 2.4em;
}

.Rte ul,
.Rte ol {
  margin-left: 20px;
  padding-left: 0;
  list-style-position: outside;
  position: relative;
  left: 18px;
}

.Rte li {
  padding: 5px 0;
}

.Rte h1,
.Rte h2,
.Rte h3,
.Rte h4,
.Rte h5,
.Rte h6 {
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  font-style: var(--heading-font-style);
  color: var(--heading-color);
  transition: color 0.2s ease-in-out;
}

.features--heading-uppercase .Rte h1,
.features--heading-uppercase .Rte h2,
.features--heading-uppercase .Rte h3,
.features--heading-uppercase .Rte h4,
.features--heading-uppercase .Rte h5,
.features--heading-uppercase .Rte h6 {
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.Rte h1 {
  margin: 2.2em 0 0.8em;
}

.Rte h2 {
  margin: 2.2em 0 0.9em;
}

.Rte h3 {
  margin: 2.2em 0 1.2em;
}

.Rte h4 {
  margin: 2.2em 0 1.4em;
}

.Rte h5 {
  margin: 2.2em 0 1.6em;
}

.Rte h6 {
  margin: 2.2em 0 1.8em;
}

.Rte blockquote {
  margin-left: 0;
  padding: 6px 0 6px 40px;
  font-size: 1.15em;
  line-height: 1.75;
  border-left: 3px solid rgba(var(--border-color-rgb), 0.6);
}

.Rte p:last-child,
.Rte blockquote:last-child,
.Rte ul:last-child,
.Rte ol:last-child,
.Rte h1:last-child,
.Rte h2:last-child,
.Rte h3:last-child,
.Rte h4:last-child,
.Rte h5:last-child,
.Rte h6:last-child {
  margin-bottom: 0;
}


.Rte blockquote.quotations {
  border: 0;
  padding: 0;
  line-height: 1.5;
  margin: 0 0 3em 0;
  text-indent: -7px;
}

.Rte blockquote.quotations span {
  font-style: italic;
}

.Rte blockquote.quotations span::before,
.Rte blockquote.quotations span::after {
  font-size: 1.5em;
  opacity: 0.25;
  font-weight: bold;
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

.Rte blockquote.quotations span::before {
  content: open-quote;
  margin-left: -5px;
  padding-right: 5px;
}

.Rte blockquote.quotations span::after {
  content: close-quote;
  margin-left: 10px;
}

/*#region POLICY PAGES*/

.shopify-policy__container {
  margin-top: 50px;
  margin-bottom: 50px;
  max-width: 680px;
}

@media screen and (min-width: 1008px) {

  .Rte .VideoWrapper,
  .Rte .Form {
    margin-top: 3em;
    margin-bottom: 3em;
  }

  .Rte blockquote {
    margin-left: 40px;
  }
}

.shopify-section--hidden {
  display: none;
}

.shopify-section--bordered + .shopify-section--bordered {
  border-top: 1px solid var(--border-color);
}


.shopify-section--padded + .shopify-section--padded {
  padding: 3em 26px;
}

/* When a spacing is applied to a bordered section, as it is isolated, we use padding, otherwise margin */
.Section--spacingNormal {
  margin: 50px 0;
}

.shopify-section > .Section--spacingTight {
  padding: 20px 0;
  margin: 0 auto;
}

.Section--noSpace {
  margin: 0;
}

.Section--contained {
  max-width: 1420px;
}

.Section--padding {
  padding: 20px 0 80px 0;
}

.shopify-section--fullscreen {
  margin: 0;
  padding: 0;
}

.shopify-section--fullscreen > .Section--noSpacing {
  padding: 0;
  margin-top: 0;
  margin-bottom: 0;

}

.Section--spacingLarge,
.Section--spacingExtraLarge {
  margin: 90px 0;
}

.shopify-section--bordered > .Section--spacingTight,
.shopify-section--padded > .Section--spacingTight {
  padding: 20px 0;
  margin-top: 10px;
  margin-bottom: 40px;
}

.shopify-section--bordered > .Section--spacingNormal,
.shopify-section--padded > .Section--spacingNormal {
  padding: 50px 0;
  margin-top: 0;
  margin-bottom: 0;
}

.shopify-section--bordered > .Section--spacingLarge,
.shopify-section--padded > .Section--spacingLarge,
.shopify-section--bordered > .Section--spacingExtraLarge,
.shopify-section--padded > .Section--spacingExtraLarge {
  padding: 90px 0;
  margin-top: 0;
  margin-bottom: 0;
}

.SectionHeader:not(:only-child) {
  margin-bottom: 40px;
}

.SectionHeader--center {
  text-align: center;
  margin: 0 auto;
}

.SectionHeader--left,
.SectionHeader--right,
.SectionHeader--bg {
  padding: 0;
  /*2rem 5rem;*/
  width: auto;
}

.SectionHeader--left {
  text-align: left;
  margin: 0 !important;

}

.SectionHeader--right {
  text-align: right;
  margin: 0 !important;
}

@media screen and (max-width:640px) {
  .SectionHeader--left {
    text-align: center
  }

  .Section--noSpace {
    padding: 10px 0;
  }

  .shopify-section > .Section--spacingTight {
    margin: 0 auto -30px auto;
    padding-top: 60px;
  }

}


/*
  This is just a hack to slightly increase the selector specificity. What this does is actually taking into account the line height (1.65)
  and removing the remaining amount in both direction (0.65 / 2 => 0.325) to have more easier and consistent alignments
*/
.SectionHeader__Heading.SectionHeader__Heading,
.SectionHeader__SubHeading.SectionHeader__SubHeading {
  margin-top: -0.325em;
}

.SectionHeader__SubHeading + .SectionHeader__Heading,
.SectionHeader__SubHeading + .SectionHeader__TabList,
.SectionHeader__Description {
  margin-top: 16px;
}

.SectionHeader__Description {
  max-width: 999px;
}

.SectionHeader__Description a {
  text-decoration: underline;
  -webkit-text-decoration-color: currentColor;
  text-decoration-color: currentColor;
  text-underline-position: under;
}

.SectionHeader--center .SectionHeader__Description {
  margin-left: auto;
  margin-right: auto;
}

.SectionHeader__ButtonWrapper {
  margin-top: 20px;
}

.SectionHeader__IconHolder {
  margin-top: 30px;
}

/* The SectionFooter is usually use at the end of a given section to redirect somewhere else */
.SectionFooter {
  margin-top: 50px;
  text-align: center;
}

@media screen and (min-width: 641px) {
  .SectionHeader__Heading--emphasize {
    font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 22px)) !important;
  }
}

@media screen and (min-width: 1008px) {
  .Section--spacingNormal {
    margin: 80px 0;
  }

  .Section--spacingTight {
    margin: 20px 0;
  }

  .Section--spacingLarge {
    margin: 120px 0;
  }

  .Section--spacingExtraLarge {
    margin: 145px 0;
  }

  .shopify-section--bordered > .Section--spacingNormal,
  .shopify-section--padded > .Section--spacingNormal {
    padding: 80px 0;
  }

  .shopify-section--bordered > .Section--spacingTight,
  .shopify-section--padded > .Section--spacingTight {
    padding: 20px 0;
  }

  .shopify-section--bordered > .Section--spacingLarge,
  . .shopify-section--padded > .Section--spacingLarge {
    padding: 120px 0;
  }

  .shopify-section--bordered > .Section--spacingExtraLarge,
  .shopify-section--padded > .Section--spacingExtraLarge {
    padding: 145px 0;
  }

  .SectionHeader:not(:only-child) {
    margin-bottom: 70px;
  }

  .SectionHeader__Description {
    margin-top: 24px;
  }

  .SectionHeader__Heading--narrow {
    max-width: 999px;
    margin: 0 auto;
  }

  .SectionHeader__ButtonWrapper {
    margin-top: 30px;
  }

  .SectionFooter {
    margin-top: 80px;
  }
}



/*#region Article inner*/

.Article__ImageWrapper {
  overflow: hidden;
  height: 350px;
  position: relative;
}

.Article__Image {
  position: relative;
  height: 100%;
  width: 100%;
  background-size: cover;
  background-position: 100% 50%;
}

@supports (--css: variables) {
  .Article__Image {
    height: calc(100% + 0px);
    height: calc(100% + var(--announcement-bar-height, 0px));
    top: calc(-1 * 0px);
    top: calc(-1 * var(--announcement-bar-height, 0px));
  }
}

.Article__Logo {
  position: absolute;
  padding: 0 24px;
  left: 50%;
  top: 43%;
  transform: translate(-50%, -50%);
}

.Article__Logo--logoLeft {
  width: 100%;
  max-width: 1200px;
}

.Article__Logo--logoLeft img {
  max-width: 330px;
}

.Article__Wrapper {
  position: relative;
  max-width: 999px;
  margin: 0 auto 90px auto;
  padding: 24px 24px 0 24px;
  background: var(--background);
}


.Article__Wrapper--wide {
  max-width: 1300px;
}

.Article__Wrapper--narrow {
  max-width: 649px;
}

.Article__Body {
  padding: 20px 0;
}

.Article__Body--Flex {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  max-width: 999px;
}

.Article__Body--Flex.one-third {
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 100%;
}

.Article__Body--Flex div {
  width: 50%;
}

.Article__Body--Flex.one-third div {
  width: 33.33%;
  padding: 0 15px;
}

.Article__Body--Flex.one-third p {
  margin: 20px 0;
}

.Article__Body--Flex.one-third div img {
  width: 100%;
  align-self: flex-start;
}

.Article__Body--Flex img {
  max-width: 500px;
}


.Rte img.Article__Thumbnail {
  max-width: 300px;
  height: auto;
  float: left;
  margin: 0 20px 20px 0;
}

@media screen and (max-width:640px) {
  .Article__Body--Flex {
    flex-wrap: wrap;
  }

  .Article__Body--Flex div {
    width: 100%;
  }

  .Rte img.Article__Thumbnail {
    max-width: 150px;
  }

  .Article__Body--Flex.one-third {
    display: inline-block;
    margin: 10px 0 40px 0;
  }

  .Article__Body--Flex.one-third div {
    width: 100%;
    padding: 0;
  }

  .Article__Body--Flex.one-third div img {
    float: left;
    margin-right: 30px;
    max-width: 50%;
  }

  .Article__Logo--logoLeft img {
    max-width: 300px;
  }

}

.Article__Header {
  margin-bottom: 35px;
}

.Article__Header--flex {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: space-between;
}

.Article__Header--flex div {
  align-self: center;
}



.Article__Meta {
  margin-bottom: 18px;
}

.Article__MetaItem + .Article__MetaItem::before {
  position: relative;
  display: inline-block;
  content: "";
  height: 4px;
  width: 4px;
  border-radius: 100%;
  margin: 0 15px;
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 10px));
  vertical-align: middle;
  background: currentColor;
}

.Rte .Article__Thumbnail {
  max-width: 300px;
  height: auto;
  float: left;
  margin: 0 20px 20px 0;
}

.Article__Body a.handle {
  margin: 20px 0;
  font-size: 2em;
  color: var(--link-color);
  text-decoration: none;
}

.Article__Body p.Credit,
.Article__Body p.credit,
.article__wrapper p.credit {
  text-transform: uppercase;
  font-size: 0.75em;
  line-height: 1.5em;
}

.Article__Footer {
  margin-top: 45px;
}

.Article__ShareButtons {
  margin-top: 40px 0;
}

@media screen and (max-width: 640px) {
  .Article__Header--flex {
    display: block;
  }

  .Article__Image {
    background-position: top center;
  }
}


@media screen and (min-width: 641px) {
  .Article__Wrapper {
    margin-bottom: 120px;
    padding: 40px 50px 0 50px;
  }

  .Article__Wrapper--wide {
    padding: 40px 25px;
  }

  .Article__ImageWrapper {
    height: 335px;
  }

  .Article__ImageWrapper + .Article__Wrapper {
    margin-top: -45px;
  }

  .Article__Header {
    margin-bottom: 45px;
  }

  .Article__Footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 65px;
  }

  .Article__ShareButtons {
    margin-top: 0;
  }
}

@media screen and (min-width: 1008px) {
  .Article__Wrapper {
    max-width: 780px;
  }

  .Article__Wrapper--wide {
    max-width: 1200px;
  }

  .Article__ImageWrapper {
    height: 450px;
  }

  .Article__ImageWrapper + .Article__Wrapper {
    margin-top: -70px;
  }
}

@media screen and (min-width: 1140px) {
  .Article__ImageWrapper {
    height: 600px;
  }

}

.Article__Body div.intro {
  clear: both;
  margin: 40px 0;
  display: inline-block
}

.Article__Body div.intro img {
  float: left;
  margin: 0 20px 20px 0;
  max-width: 300px
}

.Article__Body div.intro p {
  font-size: 1.1em
}

@media (max-width:640px) {
  .Article__Body div.intro img {
    max-width: 100%;
    margin: 0 0 35px 0;
    float: none
  }
}

.HumansBeing {
  display: block;
  margin: 80px auto 60px auto;
  padding: 0 25px;
}

.HumansBeing img {
  max-width: 300px;
  margin: 0;
}



@media screen and (max-width:1007px) {
  .fade-mobile {
    opacity: 0.5;
  }

  .humans-being-logo {
    max-width: 300px
  }
}

@media screen and (max-width:640px) {
  .fade-mobile {
    padding: 80px 0 40px 20px !important;
  }
}



/*#region Article item*/

.ArticleListWrapper {
  max-width: 1260px;
  margin: 0 auto 60px auto;
}

.ArticleList {
  margin-bottom: -60px;
}

.ArticleList .Grid__Cell {
  margin-bottom: 60px;
}

.js .features--show-element-staggering .ArticleItem {
  visibility: hidden;
}

.ArticleList .ImageHero__ImageWrapper {
  background-position: top center;
}

.ArticleItem__ImageWrapper {
  display: block;
  margin-bottom: 22px;
  background-size: cover;
  overflow: hidden;
}

.ArticleItem__Image {
  display: block;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  font-family: "object-fit: cover; object-position: center;";
}

.features--show-image-zooming .ArticleItem__Image {
  transform: scale(1);
  transition: opacity 0.3s ease, transform 8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.features--show-image-zooming .ArticleList .ImageHero__ImageWrapper {
  transition: transform 8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

@media (-moz-touch-enabled: 0),
(hover: hover) {

  .features--show-image-zooming .ArticleItem:hover .ArticleItem__Image,
  .features--show-image-zooming .ArticleList .ImageHero:hover .ImageHero__ImageWrapper {
    transform: scale(1.2);
  }
}


.ArticleItem__Content {
  margin: 0 8px;
}

.ArticleItem__Category {
  display: block;
  margin-bottom: 16px;
}

.ArticleItem__Excerpt {
  margin-bottom: 20px;
}

@media screen and (min-width: 641px) {
  .ArticleList--withFeatured .Grid__Cell:first-child {
    margin-bottom: 40px;
  }

  .ArticleItem__Content {
    margin: 0 18px;
  }

  .ArticleItem__Excerpt--half {
    max-width: 55%;
  }

}

@media screen and (min-width: 1008px) {
  .ArticleListWrapper {
    margin-bottom: 100px;
  }

  .ArticleList {
    margin-bottom: -100px;
  }

  .ArticleList .Grid__Cell {
    margin-bottom: 100px;
  }

  .ArticleList--withFeatured .Grid__Cell:first-child {
    margin-bottom: 60px;
  }

}



/**	
 * ----------------------------------------------------------------------------	
 * Cart / Charity Message	
 * ----------------------------------------------------------------------------	*/
.Cart__Custom {
  padding: 30px 0;
  border-top: 1px solid #ccc;
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin: 20px auto
}

.Cart__Custom p {
  color: #000;
  font-size: 1.2em;
  line-height: 160%;
  padding: 15px 25px
}

.Cart__Custom p span {
  font-weight: bold;
  font-size: 1.2em;
}

.Cart__Custom p a {
  text-decoration: underline
}

.Cart__Custom img {
  margin-right: 15px;
  height: 100%;
  max-width: 600px;
  margin: 0 auto
}

@media (max-width:1007px) {
  .Cart__Custom {
    flex-direction: column
  }
}



/**	
 * ----------------------------------------------------------------------------	
 * Patch Filter (Part of Collection filters)	
 * ----------------------------------------------------------------------------	*/
.patchesAlphContainer {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  margin: 12px auto;
  width: 100%;
}

.patchesAlphItem {
  flex: 1 0 48%;
  margin: 0px 3px 8px 3px;
}

.patchesAlphButton {
  background: var(--button-background);
  text-align: center;
  width: 100%;
  height: 100%;
  padding: .4em .6em;
  font-size: 14px;
  font-weight: 500;
  transition: 0.3s ease-in-out;
  border: 1px solid var(--border-color);
  color: var(--button-text-color);
}

.patchesAlphButton:hover {
  background: var(--collection-filter-background-rgb);
}

@media (min-width:610px) {
  .patchesAlphItem {
    flex: 1 0 33%;
    margin: 0px 3px 8px 3px;
  }
}

@media (min-width:980px) {
  .patchesAlphItem {
    flex: 0 0 250px;
    margin: 0px 3px 8px 3px;
  }
}

/**	
 * ----------------------------------------------------------------------------

/*#region Product item*/

.ProductItem {
  text-align: center;
  white-space: normal;
}

.js .features--show-element-staggering .ProductList--grid .ProductItem {
  visibility: hidden;
}

.ProductItem__Wrapper {
  position: relative;
}

.ProductItem--left .ProductItem__Wrapper {
  margin: 0;
  padding-right: 25px;
}

.ProductItem__ImageWrapper {
  display: block;
}

.ProductItem__Image--alternate {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0 !important;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}

.ProductItem__LabelList {
  position: absolute;
  left: 10px;
  top: 6px;
  text-align: left;
}

.ProductItem__Label {
  display: block;
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 9px));
  margin: 4px 0;
  padding: 2px 6px;
  color: var(--text-color);
  background: var(--background-transparent);
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
}

.ProductItem__Label--darkbg {
  display: block;
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 9px));
  color: #fff !important;
  text-shadow: 0 0 5px #787878;
  margin: 4px 0;
  padding: 2px 6px;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
}

.ProductItem__Label--SalePercentage {
  display: block;
  font-size: 1.2em !important;
  color: var(--product-sale-price-color);
  margin: 4px 0;
  padding: 2px 6px;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  background: none;
}


.ProductItem__icon {
  position: absolute;
  content: url(/cdn/shop/files/sustainable-fabric-icon.svg?131450);
  z-index: 1;
  width: 45px;
  height: auto;
  display: inline-block;
  opacity: 0.75;
}

.ProductItem__icon--ma {
  content: url(/cdn/shop/files/ma_96x_favicon.png?v=1668028912);
}

.ProductItem__icon--mo {
  content: url(/cdn/shop/files/mo_96x_favicon.png?v=1668028836);
}

.ProductItem__icon--mpg {
  content: url(/cdn/shop/files/mpg_96x_favicon.png?v=1668028825);
  opacity: 0.5;
}

.ProductItem__icon--mondetta {
  content: url(/cdn/shop/files/mondetta_96x_favicon.png?v=1668028836);
  opacity: 0.5;
}



/*#region Product shop now*/

.ProductList--shopNow {
  position: static;
}

.ProductList--shopNow .Carousel__Cell {
  padding: 0 60px;
}

@media screen and (max-width: 640px) {
  .ShopNowGrid .FeaturedQuote {
    margin: 50px -24px -90px -24px;
  }
}

@media screen and (min-width: 641px) and (max-width: 1007px) {
  .ShopNowGrid .FeaturedQuote {
    margin: 60px -50px -90px -50px;
  }
}

@media screen and (min-width: 641px) {
  .ProductList--shopNow {
    padding: 0 50px;
    overflow: hidden;
  }

  .ProductList--shopNow .flickity-viewport {
    overflow: visible;
  }

  .ProductList--shopNow .Carousel__Cell {
    width: 50%;
    padding: 0 50px;
  }
}

@media screen and (min-width: 1008px) {
  .ProductList--shopNow[data-desktop-count="3"] .Carousel__Cell {
    width: 33.333333%;
  }

  .ShopNowGrid {
    display: flex;
  }

  .ShopNowGrid .FeaturedQuote {
    height: 100%;
  }
}

.Faq__Section {
  margin-bottom: 20px;
}

.Faq__Section ~ .Faq__Section {
  margin-top: 34px;
}

.Faq__Item {
  position: relative;
  margin: 14px 0;
}

.Faq__Icon {
  position: absolute;
  top: 0;
  left: 0;
  color: var(--text-color-light);
  transition: all 0.3s ease-in-out;
}

.Faq__Icon svg {
  width: 8px;
  height: 10px;
  vertical-align: baseline;
}

.Faq__Item[aria-expanded=true] .Faq__Icon {
  transform: rotateZ(90deg);
  color: var(--heading-color);
}

.Faq__ItemWrapper {
  padding-left: 26px;
}

.Faq__Question {
  display: block;
  width: 100%;
  margin-bottom: 0;
  text-align: left;
}

.Faq__AnswerWrapper {
  height: 0;
  overflow: hidden;
  visibility: hidden;
  transition: height 0.25s ease-in-out, visibility 0s ease-in-out 0.25s;
}

.Faq__Item[aria-expanded=true] .Faq__AnswerWrapper {
  visibility: visible;
  transition: height 0.25s ease-in-out;
}

.Faq__Answer {
  padding: 16px 0 22px 0;
}

.Faq__Item--lastOfSection .Faq__Answer {
  padding-bottom: 0;
}

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

.FaqSummary__Item {
  margin-bottom: 12px;
}

.FaqSummary__Item.is-active::after {
  width: 100%;
}

.FaqSummary__Link {
  display: block;
}

.FaqSummary__LinkLabel {
  position: relative;
  display: inline-block;
}

.FaqSummary__LinkLabel::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  transform: scale(0, 1);
  transform-origin: left center;
  background: currentColor;
  transition: transform 0.2s linear;
}

.FaqSummary__Item.is-active .FaqSummary__LinkLabel::after {
  transform: scale(1, 1);
}

@media screen and (min-width: 641px) {
  .Faq__Section {
    margin-bottom: 34px;
  }

  .Faq__Section ~ .Faq__Section {
    margin-top: 60px;
  }
}

#faq-menu {
  max-width: 1035px;
  padding: 0 24px;
  margin: 0 auto;
}

#faq-menu a {
  display: block;
  text-decoration: none;
  margin: 5px 0;
}


/*#region Text With Image*/

.bg-image {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
}

.FeatureText {
  text-align: center;
  margin: 0 auto;
  padding: 0 30px;
}

.FeatureText__ContentWrapper {
  padding-left: 24px;
  padding-right: 24px;
  margin-top: 0;
}

.FeatureText__ImageWrapper {
  overflow: hidden;
  margin-bottom: 30px;
}

.FeatureText__ImageWrapper--noSpace {
  margin-bottom: 0;
}



.FeatureText--withImage .FeatureText__ContentWrapper {
  padding-top: 20px;
  padding-bottom: 20px;
}

.FeatureText .SectionHeader__Description {
  margin-top: 25px;
  margin-bottom: 40px;
}

.FeatureText .SectionHeader__Description span {
  line-height: 100%;
}

.quotes {
  line-height: 2.25rem;
  font-style: italic
}

.quotes::before,
.quotes::after {
  opacity: 0.3;
  font-size: 2.5em;
  font-weight: bold;
  position: relative;
  top: 15px;
}


.quotes::before {
  content: '\201C';
  left: -5px;

}

.quotes::after {
  content: '\201D';
  right: -5px;
}

.StarRating {
  display: inline-block;
  height: 40px;
  width: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  margin-bottom: 30px;
}

.StarRating--five {
  background-image: url(/cdn/shop/files/five-stars.svg?v=1647271549);
}

.StarRating--four {
  background-image: url(/cdn/shop/files/four-stars.svg?v=1647271549);
}

.StarRating--three {
  background-image: url(/cdn/shop/files/three-stars.svg?v=1647271548);
}



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

  .FeatureText--imageLeft {
    display: flex;
    flex-direction: column;
  }

  .FeatureText--withImage .FeatureText__ContentWrapper {
    padding-top: 60px;
  }

  .FeatureText__ContentWrapper {
    margin-bottom: 60px;
  }

  .FeatureText__ImageWrapper--noSpace {
    margin: 30px 0;
  }

  .StarRating {
    background-position: center center;
  }

}

@media screen and (min-width: 641px) {
  .FeatureText__Content {
    max-width: 999px;
    margin: 0 auto;
  }

  .FeatureText__Content--sustainability {
    max-width: 1399px;
  }

  .FeatureText--withImage {
    display: flex;
    margin: 0 auto;
    flex-wrap: nowrap;
    max-width: 999px;
    text-align: left;
    align-items: center;
  }

  .FeatureText--withImage.wide {
    max-width: 1399px;
  }

  .FeatureText--withImage.FeatureText--alignTop {
    align-items: flex-start;
  }

  .FeatureText--withImage.FeatureText--alignCenter {
    align-items: center;
  }

  .FeatureText--withImage .FeatureText__ContentWrapper,
  .FeatureText--withImage .FeatureText__ImageWrapper {
    width: 100%;
    vertical-align: middle;
  }

  .FeatureText--imageBottom,
  .FeatureText--imageTop {
    flex-direction: column;
    text-align: center;
  }

  .FeatureText--imageRight .FeatureText__ContentWrapper {
    padding-right: 40px;
  }

  .FeatureText--imageRight .FeatureText__Content,
  .FeatureText--imageRight .AspectRatio {
    margin-right: 0;
  }

  .FeatureText--imageRight .AspectRatio {
    text-align: right;
  }

  .FeatureText--imageLeft .FeatureText__ContentWrapper,
  .FeatureText--imageRight .FeatureText__ContentWrapper {
    padding: 0 60px;
    margin-top: 0;
  }

  .FeatureText--imageLeft .FeatureText__Content,
  .FeatureText--imageLeft .AspectRatio {
    margin-left: auto;
  }

  .FeatureText--imageLeft .AspectRatio {
    text-align: left;
  }
}

@media screen and (min-width: 1140px) {
  .FeatureText--imageRight .FeatureText__ContentWrapper {
    padding-right: 100px;
  }

  .FeatureText--imageLeft .FeatureText__ContentWrapper {
    padding-left: 100px;
  }
}

.shopify-section--bordered + .shopify-section--footer {
  border-top: 1px solid var(--footer-border-color);
}


.footerStripe {
  background: url(//cdn.shopify.com/s/files/1/2790/0342/files/mondetta-stripe-1500.png?v=1609948585) no-repeat top center;
  width: 100%;
  max-height: 20px;
  margin-top: -75px;
  padding-bottom: 75px;
  background-size: 100% 20px;
}

@media (max-width:640px) {
  .footerStripe {
    margin-top: -35px;
    padding-bottom: 75px;
    background-size: auto;
  }
}


.headerStripe {
  /*background: url(/cdn/shop/files/ma-signature-stripe.png?127971) repeat-x top center;*/
  background: url(/cdn/shop/files/pride-stripe.jpg?v=1654011526) repeat-x top center;
  width: 100%;
  height: 5px;
}


/*#region Image with text overlay section*/

.ImageHero {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  text-align: center;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  min-height: 380px;
  width: 100%;
  overflow: hidden;
  z-index: 0;
}

.ImageHero__ImageWrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 150%;
  background-size: cover;
  background-position: center center;
}

.ImageHero__Image {
  position: relative;
  height: 100%;
  width: 100%;
  background-size: cover;
  background-position: center center;

}

iframe.ImageHero__VideoHolder {
  z-index: 0;
}

/*
  .ImageHero--parallax .ImageHero__ImageWrapper {
    top: calc(0.25 * 0px - 0px * 0);
    height: calc(100% + 0px + 0px * 0);
  }
  
  .ImageHero--parallax .ImageHero__Image {
    height: calc(100% + 0px);
    top: calc(0 * 0px);
  }  
*/



.ImageHero--small {
  min-height: 330px;
}

.ImageHero--large {
  min-height: 480px;
  background-position: top center !important;
}

.ImageHero--extraLarge {
  min-height: 600px;
}

.ImageHero--parallax {
  background-position: center center;
  position: relative;
  overflow: hidden;
}

.ImageHero--parallax .ImageHero__ImageWrapper {
  max-height: 640px;
  background-attachment: fixed;
}

.ImageHero--parallax .ImageHero__Image {
  background-size: cover;
  background-repeat: no-repeat;
  min-height: 800px;
}

@media screen and (min-width: 1008px) and (-moz-touch-enabled: 0),
screen and (min-width: 1008px) and (hover: hover) {
  .ImageHero--parallax .ImageHero__Image {
    background-attachment: fixed !important;
  }
}

.ImageHero__ImageWrapper--hasOverlay::before {
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
}

.ImageHero__Wrapper {
  z-index: 1;
}

.ImageHero__ContentOverlay {
  position: relative;
  flex-basis: 999px;
  flex-grow: 0;
  padding: 0 15px;
  z-index: 1;
}

.ImageHero--parallax .ImageHero__ContentOverlay {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 480px;
  padding: 0 25px;
}

.ImageHero__TextContent {
  position: absolute;
  padding: 0 24px;
  margin-bottom: 0 !important;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
  text-align: left;
  display: flex;
}

.ImageHero__TextContent--bottomLeft,
.ImageHero__TextContent--middleLeft {
  top: auto;
  left: 0;
  transform: none;
}


.ImageHero__TextContent--middleLeft,
.ImageHero__TextContent--middleRight {
  bottom: auto;
  top: auto;
}


.ImageHero__TextContent--bottomCenter,
.ImageHero__TextContent--middleCenter {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.ImageHero__TextContent--bottomRight,
.ImageHero__TextContent--middleRight {
  text-align: right;
  max-width: 50%;
  right: 0;
  left: auto;
  transform: none;
}

.ImageHero__TextContent--bottomLeft,
.ImageHero__TextContent--bottomCenter {
  bottom: 24px;
  top: auto;
  transform: none;
}


.ImageHero__TextContent--bottomCenter {
  left: auto;
}

.ImageHero__TextContent--bottomCenter .ArticleItem__Excerpt {
  margin: 0 auto;
}


.ImageHero__TextContent--bottomRight {
  bottom: 24px;
  top: auto;
}

/* We allow embedding a video within an image hero */
.ImageHero iframe {
  position: absolute;
  height: 100%;
  width: 200%;
  left: -50%;
  pointer-events: none;
}

.ImageHero--large iframe {
  width: 250%;
  left: -75%;
}

.ImageHero--preserveRatio {
  min-height: 0;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}

.ImageHero--preserveRatio iframe {
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

.ImageHero iframe[src] {
  pointer-events: auto;
  /* When data saver is on in Chrome, it will just set the src but prevents autoplay, so we need to make sure that we make it clickable */
}

.ImageHero__Block {
  margin: 40px auto;
  padding: 38px 20px;
  max-width: 250px;
  box-shadow: 0 1px 20px rgba(54, 54, 54, 0.3);
}

.ImageHero__Block--small {
  max-width: 165px;
}

.ImageHero__Block--large {
  max-width: 320px;
}

.ImageHero__BlockHeading {
  margin: -0.325em 0 18px 0;
}

.ImageHero__BlockContent + .ImageHero__BlockLink {
  margin-top: 18px;
}

@media screen and (max-width: 640px) {
  .ImageHero__Block {
    font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 11px));
  }

  .ImageHero--small {
    min-height: 400px;
  }

  .ImageHero--large {
    min-height: 600px;
  }

  .ImageHero--spaced {
    padding: 40px 0;
  }

  .ImageHero__TextContent--bottomLeft,
  .ImageHero__TextContent--bottomRight,
  .ImageHero__TextContent--bottomCenter {
    bottom: 70px;
  }

}

@media screen and (min-width: 641px) {
  .ImageHero {
    min-height: 450px;
  }

  .ImageHero--small {
    min-height: 400px;
  }

  .ImageHero--large {
    min-height: 500px;
  }

  .ImageHero--extraLarge {
    min-height: 750px;
  }

  .ImageHero--spaced {
    margin: 5% auto;
  }

  .ImageHero iframe {
    width: 100%;
    height: 200%;
    left: 0;
  }

  .ImageHero__Block {
    padding: 48px 15px;
    max-width: 380px;
  }

  .ImageHero__Block--small {
    max-width: 240px;
  }

  .ImageHero__Block--large {
    max-width: 520px;
  }

  .ImageHero__TextContent--bottomLeft,
  .ImageHero__TextContent--bottomRight,
  .ImageHero__TextContent--bottomCenter {
    bottom: 40px;
  }


}

@media screen and (min-width: 1140px) {
  .ImageHero {
    min-height: 500px;
  }

  .ImageHero--small {
    min-height: 450px;
  }

  .ImageHero--large {
    min-height: 600px;
  }

  .ImageHero--extraLarge {
    min-height: 1000px;
  }

  .ImageHero--parallax {
    max-width: 100%;
  }


  .ImageHero__TextContent {
    padding: 0 50px;
    width: 50%;
  }

  .ImageHero__TextContent--bottomLeft,
  .ImageHero__TextContent--bottomRight,
  .ImageHero__TextContent--bottomCenter {
    bottom: 50px;
  }

}

@media screen and (min-width: 1500px) {
  .ImageHero--large {
    min-height: 1000px;
  }
}



/*#region Product aside and info*/
.Product__Info,
.Product__Aside {
  max-width: 749px;
  margin: 0 auto;
}


.Product__Info--noGallery {
  padding-top: 24px;
}

@media screen and (max-width: 799px) {
  .Product__Aside--left {
    padding: 0 24px;
  }
}


@media screen and (max-width: 1007px) {
  .Product__Aside--left {
    margin: 100px auto 30px auto;
    max-width: 749px;
  }
}


@media screen and (min-width: 641px) and (max-width: 799px) {
  .Product__Info .Container {
    padding: 0 24px;
  }
}

@media screen and (min-width: 800px) {
  .Product__Info .Container {
    padding-left: 0;
    padding-right: 0;
  }
}


@media screen and (min-width: 641px) {
  .Product__Aside .Section {
    max-width: 630px;
    margin: 0 auto;
  }

  .Product__Aside--left .Section {
    margin: 0;
  }

}

@media screen and (min-width: 1008px) and (max-width:1499px) {
  .Product__Aside--left {
    padding: 0 24px;
  }
}


@media screen and (min-width: 1008px) {
  .Product__InfoWrapper {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
  }

  .ProductRecommendations {
    position: relative;
  }

  .Product__Info {
    position: sticky;
    top: 0;
    /*top: var(--header-base-height);*/
    right: 0;
    width: 375px;
    margin: 0 100px -40px 50px;
    padding-top: 0;
    padding-bottom: 40px;
  }

  @supports (--css: variables) {
    .Product__Info {
      top: calc(var(--header-height) + 25px) !important;
      /*remove important to set sticky point back to original*/
    }
  }

  .Product__Aside {
    max-width: 820px;
    padding-left: 50px;
  }

  .Product__Aside--left {
    margin: 100px 0 30px 0;
  }

  .Product__Aside .SectionHeader {
    margin-bottom: 30px;
  }
}

@media screen and (min-width: 1140px) {
  .Product__Info {
    width: 400px;
  }
}

@media screen and (min-width: 1500px) {
  .Product__Info {
    margin-right: 50px;
  }

  .Product__Aside--left {
    padding: 0;
  }

}

/*#region Action list*/


.Product__ActionList {
  position: absolute;
  top: 30px;
  right: 25px;
  z-index: 1;
  visibility: visible;
  opacity: 1;
  transition: visibility 0.2s ease-in-out, opacity 0.2s ease-in-out;
}

.Product__ActionList.is-hidden {
  opacity: 0;
  visibility: hidden;
}

.Product__ActionItem {
  display: block;
  position: relative;
}

.Product__ActionItem + .Product__ActionItem {
  margin-top: 15px;
}

.Product__ShareList {
  display: block;
  position: absolute;
  visibility: hidden;
  top: 100%;
  right: 0;
  color: var(--text-color);
}

.Product__ActionItem .Icon--share {
  margin-left: -1px;
}

.Product__ShareItem {
  display: block;
  margin: 15px 0 15px auto;
  padding: 7px 15px 7px 17px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background: var(--light-background);
  border-radius: 25px;
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 13px));
  white-space: nowrap;
  opacity: 0;
  box-shadow: 0 2px 10px rgba(54, 54, 54, 0.15);
  transition: all 0.45s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s;
}

.Product__ShareItem:active,
.Product__ShareItem:focus {
  color: var(--light-background);
  background: var(--text-color);
  outline: none;
}

.Product__ShareItem:nth-child(2) {
  transition-delay: 0.1s;
}

.Product__ShareItem:nth-child(3) {
  transition-delay: 0s;
}

.Product__ShareItem svg {
  margin-right: 12px;
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 14px));
  vertical-align: sub;
  transform: translateZ(0);
}

.Product__ShareItem:hover svg {
  -webkit-animation: shareItemAnimation 0.5s ease-in-out forwards;
  animation: shareItemAnimation 0.5s ease-in-out forwards;
}

.Product__ShareList[aria-hidden=false] {
  visibility: visible;
}

.Product__ShareList[aria-hidden=false] .Product__ShareItem {
  opacity: 1;
  transition-delay: 0s;
}

.Product__ShareList[aria-hidden=false] .Product__ShareItem:nth-child(2) {
  transition-delay: 0.1s;
}

.Product__ShareList[aria-hidden=false] .Product__ShareItem:nth-child(3) {
  transition-delay: 0.2s;
}

@media screen and (min-width: 1008px) {
  .Product__ShareList {
    top: auto;
    bottom: 100%;
  }

  .Product__ShareItem {
    transition-delay: 0s;
  }

  .Product__ShareItem:nth-child(3) {
    transition-delay: 0.2s;
  }

  .Product__ShareList[aria-hidden=false] .Product__ShareItem {
    transition-delay: 0.2s;
  }

  .Product__ShareList[aria-hidden=false] .Product__ShareItem:nth-child(3) {
    transition-delay: 0s;
  }
}

/*#region Product meta and info*/

.ProductMeta {
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--border-color);
}

.ProductMeta--header {
  position: sticky;
  width: 100%;
  display: flex;
  height: 3rem;
}

.ProductMeta__Sku {
  margin-top: 25px;
}

.ProductMeta__ImageWrapper {
  display: block;
  margin-bottom: 32px;
}

.ProductMeta__Vendor {
  margin-bottom: 20px;
}

.ProductMeta__Icons {
  display: inline-flex;
  margin: 20px 0;
  flex-flow: row wrap;
  gap: 10px 20px;
}


.ProductMeta__Icons--care {
  margin: 0 0 20px 0;
}

.ProductMeta__Icons.ma-icons {
  margin: 10px 0 40px 0;
}

.ProductMeta__Icons div {
  width: 175px;
  height: 50px;
  margin: 10px 0;
}

.ProductMeta__Icons--care div {
  width: 35px;
  height: 35px;
  margin: 0;
}

.ProductMeta__Icons div svg {
  width: 100px;
  height: 40px;

}

.ProductMeta__Icons--care div svg {
  width: 35px;
  height: 35px;

}

.ProductMeta__Icons.ma-icons div {
  width: 110px;
  height: 95px;
}

@media screen and (max-width: 399px) {
  .ProductMeta__Icons div {
    width: 123px;
    margin: 0;
  }
}

.ProductMeta__Title {
  margin-bottom: 10px;
}

.ProductMeta__PriceList {
  margin-top: 15px;
}

.ProductMeta__Price.Price--compareAt {
  margin-left: 30px;
}

.ProductMeta__UnitPriceMeasurement {
  margin-top: 5px;
}

.ProductMeta__TaxNotice {
  margin-top: 5px;
}

.ProductMeta__Description,
.ProductMeta__Text {
  margin: 24px 0;
  text-align: left;
}

.ProductMeta__Rating {
  margin-top: 4px;
}

.ProductMeta__ShareButtons {
  display: flex;
  align-items: center;
  margin: 24px 0;
}

.ProductMeta__ShareTitle {
  margin-right: 6px;
}

.ProductMeta__ShareList {
  font-size: 0;
}

.ProductMeta__ShareItem {
  display: inline-block;
  margin: 0 7px;
}

.ProductMeta__ShareItem svg {
  display: block;
  width: 24px;
  height: 24px;
  opacity: 0.6;
  transition: opacity 0.2s ease-in-out;
}

.ProductMeta__ShareItem:hover svg {
  opacity: 1;
}

/* When the description is set after the product form, layout changes a bit */
.ProductForm ~ .ProductMeta__Description {
  border-top: none;
  padding-top: 0;
}

.ProductForm ~ .ProductMeta__Description .ProductMeta__ShareButtons {
  margin-bottom: 2px;
}

.Product__QuickNav {
  position: relative;
  margin-top: 40px;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
}

.Product__QuickNav a {
  display: block;
  padding: 11px 16px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: rotateX(0deg);
}

.Product__QuickNav a:last-child {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transform: rotateX(180deg);
}

.Product__QuickNav svg {
  position: absolute;
  right: 18px;
  top: calc(50% - 5px);
  height: 10px;
  width: 8px;
}

.Product__QuickNavWrapper {
  transition: 0.6s;
  transform-style: preserve-3d;
}

.Product__QuickNav.is-flipped .Product__QuickNavWrapper {
  transform: rotateX(180deg);
}

@media screen and (min-width: 1008px) {
  .ProductMeta {
    text-align: left;
  }
}

/* MPG TECH ICONS */

.ProductMeta__Icons div.icon-01::before {
  content: url(/cdn/shop/files/icon-01-wrinkle-res.svg?v=1641398694)
}

.ProductMeta__Icons div.icon-02::before {
  content: url(/cdn/shop/files/icon-02-2in1-design.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-03::before {
  content: url(/cdn/shop/files/icon-03-4way-stretch.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-04::before {
  content: url(/cdn/shop/files/icon-04-360-reflectivity.svg?v=1641398693)
}

/*.ProductMeta__Icons div.icon-05::before {content: url(/cdn/shop/files/icon-05-anti-odor.svg?v=1641398693)}*/
.ProductMeta__Icons div.icon-05::before {
  content: url(/cdn/shop/files/icon-05-anti-odour.svg?v=1679003848)
}

.ProductMeta__Icons div.icon-06::before {
  content: url(/cdn/shop/files/icon-06-breathability.svg?v=1641398694)
}

.ProductMeta__Icons div.icon-07::before {
  content: url(/cdn/shop/files/icon-07-binbra.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-08::before {
  content: url(/cdn/shop/files/icon-08-cellphone.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-09::before {
  content: url(/cdn/shop/files/icon-09-cinchable.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-10::before {
  content: url(/cdn/shop/files/icon-10-compression.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-11::before {
  content: url(/cdn/shop/files/icon-11-conv-multi-straps.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-12::before {
  content: url(/cdn/shop/files/icon-12-down-filled.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-13::before {
  content: url(/cdn/shop/files/icon-13-ex-coverage.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-14::before {
  content: url(/cdn/shop/files/icon-14-ex-shape-rec.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-15::before {
  content: url(/cdn/shop/files/icon-15-laptop.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-16::before {
  content: url(/cdn/shop/files/icon-16-lite-stretch.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-17::before {
  content: url(/cdn/shop/files/icon-17-luxe-soft.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-18::before {
  content: url(/cdn/shop/files/icon-18-mw.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-19::before {
  content: url(/cdn/shop/files/icon-19-mw-qd.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-20::before {
  content: url(/cdn/shop/files/icon-20-multi-storage-pockets.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-21::before {
  content: url(/cdn/shop/files/icon-21-perforation.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-22::before {
  content: url(/cdn/shop/files/icon-22-qd.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-23::before {
  content: url(/cdn/shop/files/icon-23-reflectivity.svg?v=1641398694)
}

.ProductMeta__Icons div.icon-24::before {
  content: url(/cdn/shop/files/icon-24-rem-storage-pouch.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-25::before {
  content: url(/cdn/shop/files/icon-25-resp-made.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-26::before {
  content: url(/cdn/shop/files/icon-26-seamless.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-27::before {
  content: url(/cdn/shop/files/icon-27-secured-zip-pocket.svg?v=1641398694)
}

.ProductMeta__Icons div.icon-28::before {
  content: url(/cdn/shop/files/icon-28-shoe-compartment.svg?v=1641605628)
}

.ProductMeta__Icons div.icon-29::before {
  content: url(/cdn/shop/files/icon-29-thermal-comfort.svg?v=1641605628)
}

.ProductMeta__Icons div.icon-30::before {
  content: url(/cdn/shop/files/icon-30-ultra-durable.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-31::before {
  content: url(/cdn/shop/files/icon-31-ultra-lite.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-32::before {
  content: url(/cdn/shop/files/icon-32-upf-protection.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-33::before {
  content: url(/cdn/shop/files/icon-33-ventilation.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-34::before {
  content: url(/cdn/shop/files/icon-34-warm.svg?v=1641398694)
}

.ProductMeta__Icons div.icon-35::before {
  content: url(/cdn/shop/files/icon-35-wb-pocket.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-36::before {
  content: url(/cdn/shop/files/icon-36-water-proof.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-37::before {
  content: url(/cdn/shop/files/icon-37-water-rep.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-38::before {
  content: url(/cdn/shop/files/icon-38-water-res.svg?v=1641398694)
}

.ProductMeta__Icons div.icon-39::before {
  content: url(/cdn/shop/files/icon-39-wind-water-proof.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-40::before {
  content: url(/cdn/shop/files/icon-40-wind-water-res.svg?v=1641398694)
}

.ProductMeta__Icons div.icon-41::before {
  content: url(/cdn/shop/files/icon-41-wind-res.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-42::before {
  content: url(/cdn/shop/files/icon-42-hidden-pocket.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-43::before {
  content: url(/cdn/shop/files/icon-43-stowaway-hood.svg?v=1641398694)
}

.ProductMeta__Icons div.icon-44::before {
  content: url(/cdn/shop/files/icon-44-polygiene.svg?v=1641398694)
}

.ProductMeta__Icons div.icon-45::before {
  content: url(/cdn/shop/files/icon-45-lite-support.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-46::before {
  content: url(/cdn/shop/files/icon-46-med-support.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-47::before {
  content: url(/cdn/shop/files/icon-47-max-support.svg?v=1641398693)
}

.ProductMeta__Icons div.icon-48::before {
  content: url(/cdn/shop/files/icon-48-side-pockets.svg?v=1660851174)
}

.ProductMeta__Icons div.icon-49::before {
  content: url(/cdn/shop/files/icon-49-sustainable-fabric.svg?v=1641398694)
}

.ProductMeta__Icons div.icon-50::before {
  content: url(/cdn/shop/files/icon-50-adjustability.svg?v=1641398694)
}

.ProductMeta__Icons div.icon-51::before {
  content: url(/cdn/shop/files/icon-51-special-wash.svg?v=1641852074)
}

.ProductMeta__Icons div.icon-52::before {
  content: url(/cdn/shop/files/icon-52-kanga-pocket.svg?v=1641852074)
}

.ProductMeta__Icons div.icon-53::before {
  content: url(/cdn/shop/files/icon-53-packable.svg?v=1704994098)
}

/* MA TECH ICONS */

.ProductMeta__Icons.ma-icons div.ma-icon-01::before {
  content: url(/cdn/shop/files/MA-Anti-Odor.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-02::before {
  content: url(/cdn/shop/files/MA-Anti-Pilling.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-03::before {
  content: url(/cdn/shop/files/MA-Anti-Stain.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-04::before {
  content: url(/cdn/shop/files/MA-Anti-Static.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-05::before {
  content: url(/cdn/shop/files/MA-Anti-Wrinkle.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-06::before {
  content: url(/cdn/shop/files/MA-Breathable.png?v=1576532993);
}

.ProductMeta__Icons.ma-icons div.ma-icon-07::before {
  content: url(/cdn/shop/files/MA-light-resistant.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-08::before {
  content: url(/cdn/shop/files/MA-Lightweight.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-09::before {
  content: url(/cdn/shop/files/MA-Machine-Washable.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-10::before {
  content: url(/cdn/shop/files/MA-Moisture-Wicking.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-11::before {
  content: url(/cdn/shop/files/MA-Stretch-Recover.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-12::before {
  content: url(/cdn/shop/files/MA-Sustainable.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-13::before {
  content: url(/cdn/shop/files/MA-Temp-Regulating.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-14::before {
  content: url(/cdn/shop/files/MA-Warm.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-15::before {
  content: url(/cdn/shop/files/MA-Water-Resistant.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-16::before {
  content: url(/cdn/shop/files/MA-Coolmax.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-17::before {
  content: url(/cdn/shop/files/MA-Polygiene-Odor-Crunch.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-18::before {
  content: url(/cdn/shop/files/MA-Thermolite.png?128757);
}

.ProductMeta__Icons.ma-icons div.ma-icon-19::before {
  content: url(/cdn/shop/files/MA-Why-We-Made-It.png?128757);
}

/*#region Featured image*/
.Product__FeatureImageWrapper {
  overflow: hidden;
  background-size: cover;
}

.Product__FeatureImage {
  height: 415px;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 641px) {
  .Product__FeatureImage {
    height: 500px;
  }
}

@media screen and (min-width: 1140px) {
  .Product__FeatureImage {
    height: 600px;
  }

  .Product__FeatureImage--small {
    height: 500px;
  }

  .Product__FeatureImage--large {
    height: 700px;
  }
}

/*#region Product tabs*/
.Product__Tabs {
  margin: 50px 0;
}

@media screen and (max-width: 640px) {
  .Product__Tabs .Collapsible__Content {
    padding-top: 6px;
    padding-bottom: 28px;
  }
}

@media screen and (max-width: 1007px) {
  .Product__Tabs .Collapsible {
    padding: 0 24px;
  }
}

@media screen and (min-width: 1008px) {
  .Product__Tabs {
    margin: 80px 0;
  }

  .Product__Tabs .Collapsible__Content {
    padding-right: 80px;
  }
}




.Search {
  display: block;
  position: absolute;
  top: 100%;
  width: 100%;
  background: transparent;
  /*var(--background);*/
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
  transform: translateY(-25px);
  transition: transform 0.15s ease-in-out, opacity 0.15s ease-in-out, visibility 0.15s ease-in-out;
  z-index: -1;
}

.Search--visible {
  position: relative;
  top: 5px;
  max-width: 300px;
  padding: 0px 20px 8px 5px;
  border-bottom: 1px solid var(--header-light-text-color);
  z-index: 0;
  margin-right: 20px;
  margin-left: 30px;
}

.Search[aria-hidden=false] {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.Search__Inner {
  padding: 14px 18px;
  max-height: calc(100vh - 60px);
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

@supports (--css: variables) {
  .Search__Inner {
    max-height: calc(100vh - var(--header-height) - 88px);
    /* 88px is the height of bottom bar on iOS */
  }
}

.Search__SearchBar {
  display: flex;
  align-items: center;
}

.Search__Form {
  display: flex;
  align-items: center;
  flex: 1 0 auto;
}

.Search__Form .Icon--search {
  width: 18px;
  height: 17px;
}

.Search__Form .Icon--search-desktop {
  width: 21px;
  height: 21px;
}

.Search__InputIconWrapper {
  position: relative;
  top: -1px;
  /* For pixel perfect */
  margin-right: 12px;
  color: var(--header-light-text-color);
}

.Search__Input {
  background: none;
  width: 100%;
  border: none;
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 13px));
  vertical-align: middle;
  text-indent: 15px;
}

.Search__Input::-moz-placeholder {
  color: var(--header-light-text-color);
}

.Search__Input:-ms-input-placeholder {
  color: var(--header-light-text-color);
}

.Search__Input::placeholder {
  color: var(--header-light-text-color);
}

.Search__Input::-ms-clear {
  display: none;
}

.Search__Close {
  color: var(--header-light-text-color);
  font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 15px));
  line-height: 1;
}

.Search__Results {
  display: none;
  margin-top: 30px;
  margin-bottom: 30px;
}

.Search__Results[aria-hidden=false] {
  display: block;
}

@media screen and (max-width: 640px) {
  .Search__Results .ProductItem__Wrapper {
    display: flex;
    align-items: center;
  }

  .Search__Results .Grid__Cell + .Grid__Cell {
    margin-top: 25px;
  }

  .Search__Results .ProductItem__ImageWrapper {
    width: 70px;
    min-width: 70px;
    margin-right: 25px;
  }

  .Search__Results .ProductItem__Info {
    margin-top: 0;
    text-align: left;
  }
}

@media screen and (min-width: 641px) {
  .Search__Inner {
    padding: 28px 50px;
  }

  .Search__Input {
    font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 14px));
  }

  .Search__InputIconWrapper {
    margin-right: 0;
  }

  .Search__Close {
    font-size: calc(var(--base-text-font-size) - (var(--default-text-font-size) - 16px));
  }

  .Search__Close svg {
    stroke-width: 1.25px;
  }

  .Search__Results {
    margin-top: 70px;
    margin-bottom: 48px;
  }
}



/*#region Slideshow B Corp logo*/

.bcorp-logo {
  position: absolute !important;
  bottom: 20px;
  top: auto;

}

.ig-handle {
  position: absolute !important;
  bottom: 0;
  top: auto;
}

.ig-handle a {
  position: relative;
  display: inline;
}

.bcorp-logo.btm-right,
.bcorp-logo.force-btm-right,
.ig-handle.force-btm-right {
  right: 0;
}

.bcorp-logo.btm-left,
.bcorp-logo.force-btm-left,
.ig-handle.force-btm-left {
  left: 0;
}

.bcorp-logo.btm-center,
.ig-handle.force-btm-center {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  left: 50%;
  bottom: 0;
  right: auto !important;
}

.ig-handle.force-btm-left,
.ig-handle.force-btm-center,
.ig-handle.force-btm-right {
  bottom: -20px;
}

.ig-handle--nopad.force-btm-left {
  bottom: -50px;
}

.ig-handle--nopad.force-btm-right {
  bottom: -65px;
}

.ig-handle--nopad.force-btm-center {
  text-align: center;
  bottom: -50px;
}

.bcorp-logo img {
  max-width: 60px;
}

@media screen and (min-width:700px) and (max-width:1149px) {

  .bcorp-logo.btm-right,
  .bcorp-logo.force-btm-left {
    left: 0;
    right: auto;
  }

  .bcorp-logo.btm-left,
  .bcorp-logo.force-btm-right {
    right: 0;
    left: auto;
  }
}

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

  .bcorp-logo.btm-right,
  .bcorp-logo.force-btm-right,
  .bcorp-logo.btm-left,
  .bcorp-logo.force-btm-left,
  .ig-handle.force-btm-left,
  .ig-handle.force-btm-right {
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    left: 50%;
    bottom: 0;
    right: auto !important;
    text-align: center;
  }
}


@media screen and (max-width:499px) {
  .bcorp-logo {
    display: none
  }
}


/*#region Slideshow Animations*/

span.Animate {
  display: inline-block
}

span.Animate--none {
  animation: none;
}

span.Animate--blinking {
  -webkit-animation: blinkingText 2.0s infinite;
  animation: blinkingText 2.0s infinite;

}



span.Animate--slide-in-bck-center {
  -webkit-animation: slide-in-bck-center 0.7s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
  animation: slide-in-bck-center 0.7s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}




span.Animate--text-pop-up-top {
  -webkit-animation: text-pop-up-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
  animation: text-pop-up-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}





span.Animate--scale-up-center {
  -webkit-animation: scale-up-center 1s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
  animation: scale-up-center 1s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}





span.Animate--text-flicker-in-glow {
  -webkit-animation: text-flicker-in-glow 4s linear both;
  animation: text-flicker-in-glow 4s linear both;
}



.Animate--text-focus-in {
  -webkit-animation: text-focus-in 2s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
  animation: text-focus-in 2s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
}





.Animate--text-focus-in-out {
  -webkit-animation: text-focus-in-out 4s ease-in-out infinite both;
  animation: text-focus-in-out 4s ease-in-out infinite both;
}






/*#region ----------------------------------------------------------------------------------------------
 * Story Carousel
 * ----------------------------------------------------------------------------------------------*/



.story-slideshow .story-slideshow__title,
.story-slideshow .story-slideshow__subtitle {
  color: var(--heading-color);
}

.story-slideshow .story-slideshow__image-container {
  position: relative;
}

.story-slideshow .story-slideshow__image {
  object-position: top;
}

.story-slideshow .story-slideshow__slide-subtitle {
  max-width: 100%;
}

@media screen and (max-width: 1007px) {
  .story-slideshow .story-slideshow__slide-subtitle {
    margin: 0 auto;
  }
}

.story-slideshow .story-slideshow__banner {
  color: var(--secondary-elements-text-color);
  border-top: var(--secondary-elements-border-color);
  position: absolute;
  bottom: 50px;
  padding: 14px 28px;
  text-transform: uppercase;
  text-align: center;
  width: 100%;
  border-top-width: 1px;
  border-top-style: solid;
  letter-spacing: 0.2em;
}


@media screen and (min-width: 1008px) {
  .story-slideshow .story-slideshow__banner {
    bottom: 80px;
  }
}


/*#region ----------------------------------------------------------------------------------------------
 * MO Story Carousel Popup
 * ----------------------------------------------------------------------------------------------*/

.story-slideshow-popup-overlay {
  background-color: rgba(var(--heading-color), 0.8);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.5s var(--drawer-transition-timing);
  transition: all 0.5s var(--drawer-transition-timing);
}


.story-slideshow-popup-overlay.is-open {
  visibility: visible;
  opacity: 1;
}

.story-slideshow-popup-overlay.is-open .story-slideshow-popup {
  visibility: visible;
  opacity: 1;
}



.story-slideshow-popup {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) !important;
  max-width: 750px;
  width: 80%;
  max-height: 90%;
  height: 100%;
  overflow-y: scroll;
  padding: 0;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.5s var(--drawer-transition-timing);
  transition: all 0.5s var(--drawer-transition-timing);
}


.story-slideshow__image {
  max-width: 100%;
  width: 100%;
}

.story-slideshow-popup__close {
  background: var(--story-popup-border-background);
  width: 54px;
  height: 54px;
  position: absolute;
  border-radius: 100%;
  top: 20px;
  right: 20px;
  cursor: pointer;
  box-shadow: 0 1px 5px rgba(#363636, 0.15);
}


.story-slideshow-popup__close:hover::before,
.story-slideshow-popup__close:hover::after {
  transform: translate(-50%, -50%);
}

.story-slideshow-popup__close::before,
.story-slideshow-popup__close::after {
  background: var(--story-popup-background);
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 25px;
  height: 1px;
  transition: all 0.3s ease-in-out;
}

.story-slideshow-popup__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}


.story-slideshow__slide-title {
  background: transparent;
  color: var(--story-popup-text-color);
  border-color: var(--story-popup-border-color);
  position: absolute;
  border-width: 1px;
  border-type: solid;
  box-shadow: 0 1px 5px rgba(#363636, 0.15);
  margin-bottom: 20px
}


@media screen and (max-width:640px) {
  .story-slideshow-popup {
    max-height: 80%;
  }

  .story-slideshow-popup__close {
    z-index: 6;
    width: 30px;
    height: 30px;
    top: 15px;
  }

  .story-slideshow-popup__close::before,
  .story-slideshow-popup__close::after {
    width: 15px
  }

  .story-slideshow__slide-title {
    position: relative;
    top: 7px;
    left: 0px;
    text-align: center;
  }
}


.story-popup-block {
  margin: 20px auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 40px;
}

.story-popup-block div {
  align-items: center;
  margin: 20px auto;
}

/*Product Note & Product Highlite */

.Product__InfoWrapper .product-link {
  margin: 25px 0
}

.Product__InfoWrapper .product-link a {
  color: #ed492e !important;
  line-height: 200%;
  text-decoration: underline !important;
  font-weight: bold;
  letter-spacing: 0.03em
}

.product-info .product-note {
  padding: 1em;
  background-color: rgba(237, 73, 46, .15);
  color: #ed492e;
  margin-bottom: 20px;
  text-align: center;
}

.product-info .model-info {
  margin: 20px 0;
  font-weight: bold;
  font-size: 1em;
}

.Product__InfoWrapper .product-highlite {
  padding: 1em 0;
  text-align: left;
}

.Product__InfoWrapper .product-highlite span.sustainable,
.Product__InfoWrapper .product-highlite span.responsible,
.Product__InfoWrapper .product-highlite span.grs {
  line-height: 100%;
}


.Product__InfoWrapper .product-highlite span.sustainable,
.Product__InfoWrapper .product-highlite span.responsible {
  color: #326e55;
}

.Product__InfoWrapper .product-highlite span.grs {
  color: #008996;
}


.Product__InfoWrapper .product-highlite span.sustainable::before {
  content: url(/cdn/shop/files/sustainable-fabric-icon.svg?131450);
  display: inline-block;
  width: 50px;
  height: 50px;
  float: left;
  margin: 0 10px 15px 0;
}

.Product__InfoWrapper .product-highlite span.responsible::before {
  content: url(/cdn/shop/files/responsibly-made-icon.svg?131450);
  display: inline-block;
  width: 50px;
  height: 50px;
  float: left;
  margin: 0 10px 15px 0;
}

.Product__InfoWrapper .product-highlite span.grs::before {
  content: url(/cdn/shop/files/icon-grs.svg?v=1643387491);
  display: block;
  width: 160px;
  height: 74px;
  margin: 0 10px 15px 0;
}

.Product__InfoWrapper .pinkribbon-message {
  margin: 30px 0;
  font-size: 1.2em;
  padding: 1em;
  background: #fbe4ec;
  color: #cc3a6b;
  text-align: left;
  line-height: 130%
}

.Product__InfoWrapper .pinkribbon-message span {
  font-size: .75em;
}

.Product__InfoWrapper .bcorp-message {
  margin: 30px 0;
  font-size: 1.3em;
  padding: 1em;
  background: #e4fbf8;
  color: #000;
  text-align: left;
  line-height: 130%
}

.Product__InfoWrapper .bcorp-message span {
  font-size: .75em;
  line-height: 110%
}

.product-info__block-item:has(> .accordion):has(+ .product-info__block-item > .accordion) {
  margin-block-end: 0;
}

.product-info__block-item:has(> .accordion) + .product-info__block-item:has(> .accordion) {
  margin-block-start: 0;
}

.product-info__block-item:has(> .accordion) + .product-info__block-item > .accordion {
  border-block-start-width: 0;
}

#promo-alert {
  margin: 0 0 30px 0;
  display: block;
  background-color: inherit;
  color: #fff;
  padding: 20px
}

#promo-alert.exclusion-message {
  color: rgb(var(--on-sale-text));
  font-weight: 600;
  padding: 0;
  margin: 0;
}

#promo-alert p {
  line-height: 120%
}


.Product__InfoWrapper .product-sku {
  display: inline-block;
  font-size: 12px;
  text-transform: uppercase;
  color: #000;
  border-top: 1px solid #ccc;
  padding-top: 10px;
  width: 100%
}

.Product__Tabs .Collapsible__Inner .Collapsible__Content {
  background-color: none;
  padding: 1px;
  margin-bottom: 30px
}

.Product__Wrapper .Product__QuickNav {
  display: none;
}

.brand--mpg .Product__FinalSale {
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: 700
}

.brand--mpg .Product__FinalSale a span {
  color: #F94C43;
}

.brand--mpg div.limited-edition {
  background: #3ca4b5;
  color: #fff;
  font-weight: bold;
  font-size: 14px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  max-width: 300px;
  display: inline-block;
  padding: 10px 15px;
  margin: 0 0 20px 0
}


#modal-size-chart header.Modal__Header {
  display: none
}

.brand--mpg .Modal--small,
.brand--warehouse .Modal--small,
.brand--mondetta .Modal--small,
.brand--ma .Modal--small,
.brand--mo .Modal--small {
  max-width: 400px;
  margin: 10% auto;
  max-height: 500px;
  z-index: 7;
}

.brand--mpg .Modal__Content,
.brand--mondetta .Modal__Content,
.brand--warehouse .Modal__Content,
.brand--ma .Modal__Content,
.brand--mo .Modal__Content {
  flex: 0
}

.FinalSaleAlert {
  width: auto;
  height: 40px;
  text-align: left;
  display: inline-block;
  font-weight: 700
}

.FinalSaleAlert button.ProductForm__LabelLink {
  color: var(--product-sale-price-color);
}

.brand--mpg .FinalSaleAlert button.ProductForm__LabelLink {
  color: #DB1E3A;
}


.brand--mpg h2.Modal__Title.Heading.u-h1,
.brand--warehouse h2.Modal__Title.Heading.u-h1 {
  display: none
}

.brand--mpg .RoundButton,
.brand--mpg .flickity-prev-next-button {
  color: currentColor;
  background: transparent;
}


/* Leggings Filter */

.leggings-filter {
  margin: 2.5em auto;
  padding-bottom: 30px;
  border-bottom: 1px solid #ccc;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: flex-start;
  max-width: 1300px !important
}

.leggings-filter div {
  flex-basis: 33.33%;
  padding: 0 20px
}

.leggings-filter div img {
  margin: 15px auto !important;
  opacity: 1;
  transition: opacity .25s ease-in-out;
  -moz-transition: opacity .25s ease-in-out;
  -webkit-transition: opacity .25s ease-in-out;
}

.leggings-filter div img:hover {
  cursor: pointer;
  opacity: 0.5
}

.leggings-filter div p {
  text-align: left;
  font-size: 1.2em
}

.leggings-filter h3 {
  font-size: 1.75em;
  text-align: center;
  align-self: center
}

a.link-arrow {
  margin: 25px 0 0 0;
  color: var(--text-color-light);
  font-size: 16px;
  font-weight: bold;
}

a.link-arrow:hover {
  color: var(--text-color);
}

p.mobile-msg {
  display: none;
  font-size: 1.3em;
  font-weight: bold;
  color: #ccc;
  text-align: center
}

.leggings-filter div.filter-buttons {
  flex-basis: 33.33%;
  padding: 0 20px
}

.leggings-filter div.filter-buttons a {
  text-decoration: none !important;
  text-transform: uppercase;
  line-height: 100%;
  display: inline-block;
  min-width: 90%;
  font-size: 1em;
  background: none;
  color: #000 !important;
  border: 1px solid #000;
  padding: 10px 0;
  text-align: center;
  margin: 15px
}

.leggings-filter div.filter-buttons a:hover {
  background: #ddd;
  transition: background .25s ease-in-out;
  -moz-transition: background .25s ease-in-out;
  -webkit-transition: background .25s ease-in-out;
}


@media screen and (max-width:749px) {
  .leggings-filter {
    display: block;
    width: 100%
  }

  .leggings-filter div {
    display: flex;
    flex: 0 0 45%;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: center;
    padding: 0 0 0 20px;
    margin-bottom: 30px;
  }

  .leggings-filter div div {
    align-items: center
  }

  .leggings-filter div img {
    max-width: 200px
  }

}

@media screen and (max-width:499px) {
  .leggings-filter {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
  }

  .leggings-filter div {
    padding: 0;
    justify-content: center;
    flex: 1 0 0
  }

  .leggings-filter div img {
    max-width: 100%;
    padding: 10px
  }

  .leggings-filter div div:last-child {
    display: none
  }

  p.mobile-msg {
    display: block;
  }

}


/* Collection Page Custom Filter Buttons - Sports Bras, Jackets, MA Shirts, MA Pants */

.header-icons,
.header-icons-meta {
  margin: 1.5em auto;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: flex-start;
  max-width: 1300px !important
}

.header-icons div,
.header-icons-meta div {
  flex-basis: 33.33%
}

.header-icons.warehs div {
  flex-basis: 0
}

.header-icons.warehs div.mpg-filter {
  min-width: 100px !important
}

.header-icons div.mpg-filter a,
.header-icons-meta div.mpg-filter a {
  text-decoration: none !important;
  text-transform: uppercase;
  line-height: 100%;
  display: inline-block;
  min-width: 90%;
  font-size: 1.3em;
  background: #3a3b3d;
  color: #fff !important;
  border: 1px solid #000;
  padding: 15px 0;
  text-align: center;
  margin: 15px
}

.header-icons div.mpg-filter a:hover,
.header-icons-meta div.mpg-filter a:hover {
  background: #fff;
  color: #3a3b3d !important
}

.header-icons div.ma-filter a,
.header-icons-meta div.ma-filter a {
  text-decoration: none;
  line-height: 75%;
  display: inline-block;
  min-width: 90%;
  font-size: 1.3em;
  background: #faf8f7;
  color: #1e2228;
  border: 1px solid #1e2228;
  padding: 15px 10px;
  text-align: center;
  margin: 15px
}

.header-icons div.ma-filter a:hover,
.header-icons-meta div.ma-filter a:hover {
  background: #1e2228;
  color: #faf8f7 !important
}

.header-icons div.ma-filter a span,
.header-icons-meta div.ma-filter a span {
  font-size: 0.6em;
  text-transform: uppercase
}

.header-icons div img,
.header-icons-meta div img {
  padding: 10px;
  margin: 0 !important
}

.header-icons div img:hover,
.header-icons-meta div img:hover {
  filter: contrast(2)
}



/* LOYALTY LDP */


#loyaltylion .lion-claimed-rewards-list,
#loyaltylion .lion-rewards-list,
#loyaltylion .lion-rules-list {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
}

#loyaltylion .lion-claimed-rewards-list div,
#loyaltylion .lion-rewards-list div,
#loyaltylion .lion-rules-list div {
  padding: 10px;
}

#loyaltylion .lion-reward-item--checkout-redemption .lion-reward-item__content {
  display: flex
}

#loyaltylion .lion-reward-item--checkout-redemption .lion-reward-item__icon {
  margin: 0 auto
}

#loyaltylion .lion-header {
  background: none;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  padding: 60px 40px;
}

#loyaltylion .lion-header__nav {
  color: #000
}

#loyaltylion .lion-header__nav-link {
  border-bottom: 2px solid #000
}

#loyaltylion .lion-header__nav-link:before {
  background-color: #000
}

#loyaltylion .lion-claimed-rewards-list--empty {
  color: #000;
  font-weight: bold;
  border: 20px solid #eff3f8;
}

#loyaltylion .lion-history-table {
  border: 20px solid #eff3f8
}

#loyaltylion .lion-header__intro-text,
#loyaltylion .lion-header__join-today {
  font-size: 1.5vw;
  line-height: 1.2;
  max-width: 46vw;
  margin: 30px auto 50px
}

#loyaltylion .lion-header__join-buttons {
  flex-direction: column;
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
}

#loyaltylion .lion-header__join-buttons .lion-action-button:first-child {
  margin: 0 0 20px 0
}

#loyaltylion .lion-action-button {
  border-radius: 0;
  text-align: center;
  text-transform: uppercase;
  padding: 10px 18px;
  font-size: 1.2em;
  display: block;
  transition: 0.3s;
  border: 1px solid #000;
}

#loyaltylion .lion-action-button--neutral {
  background-color: #fff;
  color: #000;

}

#loyaltylion .lion-action-button--neutral:hover {
  background-color: #000;
  color: #fff;
}

#loyaltylion .lion-action-button--primary {
  background: #000;
  color: #fff;
}

#loyaltylion .lion-action-button--primary:hover {
  background: #fff;
  color: #000;
}

#loyaltylion .lion-reward-item__content,
#loyaltylion .lion-rule-item__content {
  padding: 30px;
  text-align: center;
  min-width: 240px;
  background-color: #eff3f8;
}



#loyaltylion .lion-claimed-rewards-list,
#loyaltylion .lion-rewards-list,
#loyaltylion .lion-rules-list {

  background-color: #fff;
  margin: 0 auto;
  max-width: 1300px;

}


#loyaltylion .lion-integrated-page-section__heading-text {
  color: #000;
  font-size: 2em;
  letter-spacing: 0.03em;
  text-transform: uppercase;

}

#loyaltylion .lion-header__your-points span,
#loyaltylion .lion-header__pending-points {
  font-size: 2em;
  color: #000
}


#loyaltylion .lion-rule-item__title,
#loyaltylion .lion-reward-item__title {
  font-size: 140%;
  color: #000
}

#loyaltylion .lion-integrated-page-section__heading {
  margin-bottom: 40px
}


.rewards-table {
  display: grid;
  grid-column-gap: 0;
  width: 100%;
  margin: 60px auto 0 auto;
  line-height: 25px;
  font-size: 1.1rem;
}

.rewards-table.divHead {
  grid-template-columns: 3fr repeat(3, 1fr) 0;
  grid-template-rows: repeat(1, 1fr);
  border-bottom: 1px solid #ccc;
}

.rewards-table.div1st {
  grid-template-columns: 3fr repeat(3, 1fr) 0;
  grid-template-rows: repeat(1, 1fr);
  margin-top: 30px;
}

.rewards-table.div2nd {
  grid-template-columns: 3fr repeat(3, 1fr) 0;
  grid-template-rows: repeat(5, 1fr);
  margin-top: 30px;
}

.rewards-table div {
  padding: 3px;
  grid-row-gap: 0;
  margin: 3px auto;
}

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

  .loyalty_title_section h1 {
    font-size: 5vw !important
  }

  #loyaltylion .lion-header__intro-text,
  #loyaltylion .lion-header__join-today {
    font-size: 3.5vw;
    max-width: 80vw;
  }

}

.rewards-table div.first {
  margin: 3px 0;
  text-align: left;
}

.rewards-table span::after {
  content: '\2713';
  font-size: 2em;
}

.gold,
.platinum,
.diamond {
  font-weight: bold;
  text-align: center
}

.gold {
  color: goldenrod
}

.platinum {
  color: silver
}

.diamond {
  color: black
}

.div1 {
  grid-area: 1 / 1 / 2 / 2;
}

.div2 {
  grid-area: 1 / 2 / 2 / 3;
}

.div3 {
  grid-area: 1 / 3 / 2 / 4;
}

.div4 {
  grid-area: 1 / 4 / 2 / 5;
}

.div5 {
  grid-area: 2 / 1 / 3 / 2;
}

.div6 {
  grid-area: 2 / 2 / 3 / 3;
}

.div7 {
  grid-area: 2 / 3 / 3 / 4;
}

.div8 {
  grid-area: 2 / 4 / 3 / 5;
}

.div9 {
  grid-area: 3 / 1 / 4 / 2;
}

.div10 {
  grid-area: 3 / 2 / 4 / 3;
}

.div11 {
  grid-area: 3 / 3 / 4 / 4;
}

.div12 {
  grid-area: 3 / 4 / 4 / 5;
}

.div13 {
  grid-area: 4 / 1 / 5 / 2;
}

.div14 {
  grid-area: 4 / 2 / 5 / 3;
}

.div15 {
  grid-area: 4 / 3 / 5 / 4;
}

.div16 {
  grid-area: 4 / 4 / 5 / 5;
}

.div17 {
  grid-area: 5 / 1 / 6 / 2;
}

.div18 {
  grid-area: 5 / 2 / 6 / 3;
}

.div19 {
  grid-area: 5 / 3 / 6 / 4;
}

.div20 {
  grid-area: 5 / 4 / 6 / 5;
}

.div21 {
  grid-area: 6 / 1 / 7 / 2;
}

.div22 {
  grid-area: 6 / 2 / 7 / 3;
}

.div23 {
  grid-area: 6 / 3 / 7 / 4;
}

.div24 {
  grid-area: 6 / 4 / 7 / 5;
}

.div25 {
  grid-area: 7 / 1 / 8 / 2;
}

.div26 {
  grid-area: 7 / 2 / 8 / 3;
}

.div27 {
  grid-area: 7 / 3 / 8 / 4;
}

.div28 {
  grid-area: 7 / 4 / 8 / 5;
}

.div29 {
  grid-area: 8 / 1 / 9 / 2;
}

.div30 {
  grid-area: 8 / 2 / 9 / 3;
}

.div31 {
  grid-area: 8 / 3 / 9 / 4;
}

.div32 {
  grid-area: 8 / 4 / 9 / 5;
}

.div33 {
  grid-area: 9 / 1 / 10 / 2;
}

.div34 {
  grid-area: 9 / 2 / 10 / 3;
}

.div35 {
  grid-area: 9 / 3 / 10 / 4;
}

.div36 {
  grid-area: 9 / 4 / 10 / 5;
}

.div37 {
  grid-area: 10 / 1 / 11 / 2;
}

.div38 {
  grid-area: 10 / 2 / 11 / 3;
}

.div39 {
  grid-area: 10 / 3 / 11 / 4;
}

.div40 {
  grid-area: 10 / 4 / 11 / 5;
}

.div41 {
  grid-area: 11 / 1 / 12 / 2;
}

.div42 {
  grid-area: 11 / 2 / 12 / 3;
}

.div43 {
  grid-area: 11 / 3 / 12 / 4;
}

.div44 {
  grid-area: 11 / 4 / 12 / 5;
}

.div45 {
  grid-area: 12 / 1 / 13 / 2;
}

.div46 {
  grid-area: 12 / 2 / 13 / 3;
}

.div47 {
  grid-area: 12 / 3 / 13 / 4;
}

.div48 {
  grid-area: 12 / 4 / 13 / 5;
}

.div53 {
  grid-area: 14 / 1 / 15 / 2;
}

.div54 {
  grid-area: 14 / 2 / 15 / 3;
}

.div55 {
  grid-area: 14 / 3 / 15 / 4;
}

.div56 {
  grid-area: 14 / 4 / 15 / 5;
}

.div57 {
  grid-area: 15 / 1 / 16 / 2;
}

.div58 {
  grid-area: 15 / 2 / 16 / 3;
}

.div59 {
  grid-area: 15 / 3 / 16 / 4;
}

.div60 {
  grid-area: 15 / 4 / 16 / 5;
}

.div61 {
  grid-area: 16 / 1 / 17 / 2;
}

.div62 {
  grid-area: 16 / 2 / 17 / 3;
}

.div63 {
  grid-area: 16 / 3 / 17 / 4;
}

.div64 {
  grid-area: 16 / 4 / 17 / 5;
}

.div65 {
  grid-area: 17 / 1 / 18 / 2;
}

.div66 {
  grid-area: 17 / 2 / 18 / 3;
}

.div67 {
  grid-area: 17 / 3 / 18 / 4;
}

.div68 {
  grid-area: 17 / 4 / 18 / 5;
}

.div69 {
  grid-area: 18 / 1 / 19 / 2;
}

.div70 {
  grid-area: 18 / 2 / 19 / 3;
}

.div71 {
  grid-area: 18 / 3 / 19 / 4;
}

.div72 {
  grid-area: 18 / 4 / 19 / 5;
}

/* LL Accordion FAQ */


.product_faq {
  padding: 0 65px 0 25px;
}

#faq-header {
  display: flex;
  justify-content: center;
  width: 500px;
  margin: 60px auto 30px auto
}



.faq-title__heading-text {
  color: #000;
  font-size: 2em;
  letter-spacing: .03em;
  text-transform: uppercase;
  margin: 60px auto 30px;
  display: inline-block;
  position: relative;
}

@media (max-width:640px) {
  .faq-title__heading-text {
    font-size: 1.6em !important;
    width: auto !important
  }

  .product_faq {
    padding: 0 10px
  }
}

.faq-title__heading-text:after,
.faq-title__heading-text:before {
  content: '';
  position: absolute;
  top: 51%;
  height: 1px;
  width: 400px;
  background: #e3e3e3;
}

.faq-title__heading-text:before {
  right: 100%;
  margin-right: 20px;
}

.faq-title__heading-text:after {
  left: 100%;
  margin-left: 20px;
}




/*MONDETTA BLOG ARTICLES*/

aside.ArticleNav {
  margin-bottom: 80px;
  margin-top: -60px
}

#blog-post-layout {
  display: flex;
  align-content: flex-start;
  overflow: hidden
}

#blog-post-layout div {
  padding: 0 30px 0 0;
  align-self: flex-start
}

#blog-post-layout p {
  font-size: 1.2em
}

#blog-post-layout a {
  font-weight: 600
}

#blog-post-layout div img {
  min-width: 400px;
  margin-top: 0
}

@media (max-width:799px) {
  #blog-post-layout {
    flex-direction: column
  }

  #blog-post-layout div {
    padding: 0 25px 0 0;
    max-width: 100%
  }
}



/* Mondetta Ambassador Program */

.Ambassador {
  line-height: 140%;
  margin-top: 30px;
}

.prose ul.checkmark {
  list-style-position: outside;
  list-style-type: none;
  margin-left: 0 !important
}

.checkmark li {
  line-height: 2em;
  margin-bottom: 15px
}

.Ambassador span::before,
.checkmark li::before {
  position: relative;
  content: '\2713';
  font-size: 2em;
  margin: 0 15px 0 -43px;
  vertical-align: middle;
}

.Ambassador ul {
  text-indent: -54px;
  list-style-type: none;
  padding-left: 15px;

}

/* Size Chart Modal Tabs */


.tabs {
  clear: both;
  position: relative;
  max-width: 100%;
  margin: 0 auto;
  height: auto;
  /* you can either manually set a min-height here or do it via JS ---> */
}

.tab {
  display: inline-block;
  margin: 2px 0;
}

@media screen and (max-width:399px) {
  .tab {
    display: block;
    margin: 5px 0;
  }
}

.tab label {
  margin-right: 40px;
  position: relative;
  top: 0;
  cursor: pointer;
  color: var(--text-color);
  min-width: 132px;
  display: inline-block;
  height: 35px;
}

.tab [type=radio] {
  display: none;
}

.tab__content {
  position: relative;
  top: 80px;
  left: 0;
  right: 0;
  bottom: 0;
  transition: opacity .2s cubic-bezier(.42, 0, .34, 1.01);
  opacity: 0;
}


/* Homepage Sustainability Block */

.Padded div {
  padding: 0 20px;
}

.EthosIcons {
  max-width: 65px;
  height: auto;
  display: block;
}

.TreetIcons {
  max-width: 165px;
  height: auto;
  display: block;
}

.divMargin {
  margin: 0 auto
}

.divMargin p {
  color: #000
}


@media screen and (max-width:640px) {
  .Padded {
    margin-top: 0
  }

  .tab__content {
    top: 150px
  }
}

@media screen and (max-width:1007px) {
  .divMargin {
    margin: 0
  }

  .Flex--breakEarly {
    flex-direction: column
  }
}


@media screen and (min-width:1008px) {
  .Padded div {
    border-right: 1px solid #898989;
    margin: 0 5px;
    min-height: 450px
  }

  .Padded div:last-child {
    border: none
  }
}

/* Sustainability Page CSS Animation */

.title-animated span {
  display: inline-block;
  opacity: 0;
  filter: blur(16px);
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
  line-break: strict;
  hyphenate-limit-chars: 10 3 4;

}

.title-animated span:nth-child(1) {
  animation: fade-in 1.5s 0.3s forwards cubic-bezier(0.11, 0, 0.5, 0);
}

.title-animated span:nth-child(2) {
  animation: fade-in 1.5s 0.6s forwards cubic-bezier(0.11, 0, 0.5, 0);
}

.title-animated span:nth-child(3) {
  animation: fade-in 1.5s 0.9s forwards cubic-bezier(0.11, 0, 0.5, 0);
}

.title-animated span:nth-child(4) {
  animation: fade-in 1.5s 1.2s forwards cubic-bezier(0.11, 0, 0.5, 0);
}






/* TENCEL & ESG Animated Pages */

.desaturate-image {
  filter: grayscale(0.5);
}

#tencel-icons,
#tencel-process,
#timeline-icons,
#esg-chain {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  position: relative;
  overflow: hidden;
  width: 100%;
  margin: 0 auto;
}


.project img {
  width: auto;
  height: auto;
}

.project {
  padding: 80px 0;
  position: relative;
}

.project--flex {
  padding: 75px 0;
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  max-width: 999px;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}

#tencel-process .project--flex,
#tencel-icons .project--flex,
#esg-chain .project--flex,
#timeline-icons .project--flex {
  text-align: center;
  flex-wrap: nowrap;
  width: 100%;
  max-width: 100%;
  justify-content: center;
  align-items: center;
  margin: 0 4%;
  position: relative;
}

#tencel-icons .project--flex,
#esg-chain .project--flex {
  align-items: flex-start;
}

#timeline-icons .project--flex {
  align-items: flex-start;
}

#tencel-icons {
  height: 60vh;
  align-content: space-evenly;
  min-height: 500px;
  background: none;
}

#esg-chain {
  height: 40vh;
  align-content: center;
}

#timeline-icons {
  height: 50vh;
  align-content: space-evenly;
  min-height: 500px;
  background: none;
}

#tencel-process {
  height: 30vh;
  align-content: space-around;
  min-height: 400px;
  overflow: visible;
}

#tencel-icons p.h2,
#tencel-process p.h2 {
  font-size: 2.3em;
  line-height: 100%;
  z-index: 1;
  padding: 0 25px;
  color: #26594f;
}

#timeline-icons h2 {
  font-size: 2.75em;
  line-height: 100%;
  z-index: 1;
  padding: 0 25px;
  color: #000;
}

#tencel-icons h3 {
  color: #26594f;
}

#tencel-groups h3 {
  font-size: 1.75em;
}

#tencel-intro h3 {
  font-size: 2em;
  text-align: center;
  margin: 30px 0;
  line-height: 100%;
}

#tencel-process h3 {
  margin: 20px;
  font-size: 1.5em;
  display: none;
}

#tencel-icons h3 {
  margin: 10px 0;
  font-size: 1em;
  text-transform: uppercase;
  word-break: normal;
}

.logo-animated {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  visibility: hidden;
}

.logo-animated--sustainable {
  height: 400px;
}

.logo-animated--sustainable::before {
  background-image: url(/cdn/shop/files/sustainable-fabric-icon-black.svg?v=1614295021);
  height: 400px;
  width: 400px;
  background-size: 400px;
}

#tencel-process .project--flex img {
  width: 300px;
  height: auto;
  position: relative;

}

#tencel-icons .project--flex img,
#esg-chain .project--flex img,
#timeline-icons .project--flex img {
  width: 150px;
  height: auto;
  position: relative;
}

#esg-chain .project--flex .image-bg img {
  width: 76%;
  height: auto;
  position: relative;
}

#tencel-process .image-wrapper {
  width: 100%;
  margin: 0 -20px;
}

#tencel-icons .image-wrapper,
#esg-chain .image-wrapper,
#timeline-icons .image-wrapper {
  width: 100%;
  margin: 0 25px;
  min-width: 80px;
}

@media screen and (min-width:1700px) and (min-height:1200px) {
  #esg-chain {
    height: 60vh;
    padding-bottom: 10vh;
  }
}

@media screen and (min-width:1700px) and (max-height:1199px) {
  #esg-chain {
    height: 80vh !important;
    padding-bottom: 10vh;
  }
}

@media screen and (min-width:1100px) and (min-height:1200px) {
  #esg-chain {
    height: 40vh;
  }
}

@media screen and (min-width:1100px) and (max-height:1199px) {
  #esg-chain {
    height: 60vh;
  }
}

#esg-chain .image-bg {
  position: absolute;
  width: 100%;
  z-index: 0;
}

#tencel-process .image-wrapper div,
#tencel-icons .image-wrapper div,
#esg-chain .image-wrapper div,
#timeline-icons .image-wrapper div {
  height: 100%;
  position: relative;
}

#esg-chain .image-bg div {
  position: relative;
  top: -60px;
}

#tencel-process .image-wrapper div::before {
  content: '\279C';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  font-size: 5vh;
  color: #fff;
  opacity: 0.75;
  z-index: 10;
}

#tencel-icons .image-wrapper div::before {
  content: '\2911';
  position: absolute;
  top: 45%;
  left: 135%;
  transform: translate(-65%, -45%);
  width: 100%;
  font-size: 4em;
  color: #26594f;
  z-index: 10;
}

#esg-chain .image-wrapper div::before {
  content: '\279C';
  position: absolute;
  top: 50%;
  left: 135%;
  transform: translate(-65%, -45%);
  width: 100%;
  font-size: 3em;
  color: #cccccc;
  z-index: 10;
}

#timeline-icons .image-wrapper div::before {
  content: '\2911';
  position: absolute;
  top: 45%;
  left: 135%;
  transform: translate(-65%, -45%);
  width: 100%;
  font-size: 4em;
  color: #000;
  z-index: 10;
}

#tencel-process .image-wrapper:last-child div::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 50%;
  box-shadow: 0 0 0 8px #bfe1bf;
}

#tencel-process .image-wrapper:last-child div::before,
#tencel-icons .image-wrapper:last-child div::before,
#esg-chain .image-wrapper:nth-child(8) div::before,
#timeline-icons .image-wrapper:last-child div::before {
  content: '';
}

#tencel-process .image-wrapper div > *,
#tencel-icons .image-wrapper div > *,
#esg-chain .image-wrapper div > *,
#timeline-icons .image-wrapper div > * {
  z-index: 1;
}


@media screen and (max-width:1007px) {
  #tencel-process {
    display: none
  }

  #tencel-icons {
    min-height: 700px;
    height: 100%
  }

  ,
  #timeline-icons {
    min-height: 1200px;
    height: 100%
  }

  #tencel-icons .project--flex {
    flex-wrap: wrap;
    width: 90%
  }

  #timeline-icons .project--flex {
    flex-wrap: wrap;
    width: 90%
  }

  #tencel-icons .image-wrapper,
  #timeline-icons .image-wrapper {
    display: flex;
    flex-wrap: wrap;
    margin: 20px 0;
    justify-content: space-evenly;
    align-items: center;
  }

  #timeline-icons .image-wrapper div::before,
  #tencel-icons .image-wrapper div::before,
  #tencel-process .image-wrapper div::before {
    transform: translate(-50%, -50%) rotate(90deg)
  }

  #timeline-icons .project--flex img,
  #tencel-icons .project--flex img {
    width: 150px;
  }

  #timeline-icons h3,
  #tencel-icons h3 {
    max-width: 100px;
    font-size: 1.5em
  }
}

@media screen and (min-width:1100px) {
  .show-mobile {
    display: none
  }

  .show-desktop {
    display: block
  }
}

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

  #esg-chain {
    min-height: 1200px;
    height: 100%
  }

  #esg-chain .image-wrapper {
    display: flex;
    flex-wrap: wrap;
    margin: 20px 0;
    justify-content: space-evenly;
    align-items: center;
  }

  #esg-chain .image-bg {
    min-width: 130%
  }

  #esg-chain .project--flex {
    flex-wrap: wrap;
    width: 90%
  }

  #esg-chain .project--flex img {
    width: 150px;
  }

  #esg-chain .image-wrapper div::before {
    transform: translate(-50%, -50%) rotate(90deg);
    top: 120%;
    left: 200%;
  }

  #esg-chain .project--flex img.seal {
    width: 100%;
    min-width: 340px
  }

  #esg-chain h5 {
    max-width: 100px;
    font-size: 1.5em
  }

  .show-mobile {
    display: block
  }

  .show-desktop {
    display: none
  }
}

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

  #tencel-process {
    height: auto
  }

  #tencel-process .project--flex {
    flex-wrap: wrap;
    width: 90%
  }

  #tencel-process .image-wrapper {
    display: flex;
    flex-wrap: wrap;
    margin: -20px 0;
    justify-content: space-around;
    align-items: center;
  }

  #tencel-process .project--flex img {
    width: 150px;
  }

}

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

  #tencel-icons .project--flex img,
  #timeline-icons .project--flex img,
  #esg-chain .project--flex img {
    width: 100px
  }
}

/* Text overlay hover effect on larger screens only */

.scrolly-padded {
  overflow-y: auto;
  overflow-x: hidden;
  padding: 0 15%;
  max-height: 760px;
}

.title-padded {
  display: flex;
  justify-content: center;
  padding: 0 15%;
  max-height: 760px;
  font-size: 3.5em;
  text-transform: uppercase;
  font-weight: 600;
  line-height: 110%;
}

@media screen and (max-width:999px) {
  .scrolly-padded {
    padding: 0 26px;
  }
}

@media screen and (min-width:1000px) {
  .scrolly {
    overflow-y: auto;
    overflow-x: hidden;
    max-height: 499px;
    padding: 0 10px 0 0;
  }
}

.ProductForm__AddPatch {
  margin-bottom: 20px;
  cursor: pointer;
}

.ProductForm__AddPatch.is-hidden {
  display: none
}

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

/* Complete the Look */
.product-info__block-item[data-block-type="complete-the-look"]:has(+ .product-info__block-item > .accordion) .complete-the-look {
  padding-block-end: 0.25rem;
}

.complete-the-look {
  container-type: inline-size;
  border-block-start: rgb(var(--border-color)) 1px solid;
  padding-block-start: 1.25rem;
}

.complete-the-look .product-list {
  --product-list-items-per-row: 3;
  --product-list-default-column-gap: 0.5rem;
  --product-list-calculated-column-gap: var(--product-list-default-column-gap);
  justify-content: start;
}

/* @media screen and (min-width: 700px) {
  .complete-the-look .product-list {
    --product-list-max-items-per-row-allowed: 3;
  }
} */

@container (width < 672px) {
  .complete-the-look.has-size-selectors .product-list {
    --product-list-max-items-per-row-allowed: 3;
  }
}

@container (width < 640px) {
  .complete-the-look .product-list {
    --product-list-max-items-per-row-allowed: 3;
  }
}

@container (width < 502px) {
  .complete-the-look.has-size-selectors .product-list {
    --product-list-max-items-per-row-allowed: 2;
  }
}

@container (width < 480px) {
  .complete-the-look .product-list {
    --product-list-max-items-per-row-allowed: 2;
  }
}

@supports not (container-type: inline-size) {
  @media screen and (min-width: 1000px) {
    .complete-the-look .product-list {
      --product-list-max-items-per-row-allowed: 3;
    }
  }

  @media screen and (min-width: 1800px) {
    .complete-the-look .product-list {
      --product-list-max-items-per-row-allowed: 4;
    }
  }
}

.complete-the-look__heading {
  margin-bottom: 1rem;
}

/* Bundles */
.bundle-component__option-label .component-option-label__value {
  opacity: 0.7;
}

.bundle-component :disabled + .block-swatch {
  cursor: not-allowed;
}

.bundle-component :disabled + .block-swatch::before {
  background: none;
  position: absolute;
  content: "";
  width: 45px;
  height: 45px;
  border: 1px solid var(--swatch-disabled-strike-color);
  transform: rotate(45deg);
  transform-origin: left bottom;
  top: auto;
  left: 0 !important;
  bottom: 0 !important;
}

.line-item-bundle {
  display: flex;
  flex-direction: column;
  /* gap: 0.5rem; */
  gap: 0.25rem;
}

.line-item-bundle__main {
  border: rgb(var(--border-color)) 1px solid;
  padding: 0.75rem;
  /* border-left: rgb(var(--border-color)) 0.25rem solid; */
  /* padding-left: 0.75rem; */
}

.line-item-bundle__main,
.line-item-bundle__components {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

@media screen and (max-width: 699.9px) {
  .line-item-bundle__main {
    gap: 1rem;
  }
}

.bundle-actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.line-item-bundle__actions::before {
  content: '';
  height: 1px;
  background-color: rgb(var(--border-color));
  flex-grow: 1;
}

.bundle-action.button--outline {
  --border-color: var(--text-color);
}

/* .line-item-bundle__remove {
  color: red;
} */

.bundle-action--remove::before,
.bundle-action--remove::after {
  display: none;
}

.order-summary__bundle {
  border-block: 0;
  padding-block-end: 0;
}

/* .order-summary__bundle line-item-bundle {
  display: block;
  padding-bottom: 1rem;
} */

.bundle-summary {
  position: relative;
}

.bundle-summary::before {
  content: '';
  position: absolute;
  inset-block: 0;
  inset-inline: -1rem;
  /* top: 0; */
  /* left: -1rem; */
  /* right: -1rem; */
  /* bottom: 0; */
  border: rgb(var(--border-color)) 1px solid;
  pointer-events: none;
}

.bundle-summary__header tr:last-of-type td {
  border-block: 0;
  padding-block-end: 0.5rem;
  /* padding-block-end: 0; */
}

.bundle-summary__actions {
  justify-content: end;
}

.bundle-summary__components td {
  border-block: 0;
  padding-block-start: 0;
}

.order-summary .order-summary__bundle-row + tr:not(.order-summary__bundle-row) td {
  border-block-start: 0;
  /* padding-block-start: 0; */
}

.order-summary tr:not(.order-summary__bundle-row):has(+ .order-summary__bundle-row) td {
  border-block-end: 0;
  padding-block-end: 0;
}

:is(product-swatches, [data-swatches]) {
  transition: opacity ease 0.2s;
  opacity: 1;
}

:is(product-swatches, [data-swatches])[aria-hidden="true"] {
  opacity: 0;
}

.no-js :is(product-swatches, [data-swatches])[aria-hidden="true"] {
  opacity: 1;
}

/* Price List Wrapper */
.price-list-wrapper {
  display: flex;
  align-items: baseline;
  column-gap: 1rem;
  flex-wrap: wrap;
}

.price-list-wrapper__discount {
  color: rgb(var(--discount-text));
  font-weight: 500;
}



/* Notifications */
.notification-container {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 0.5rem;
  position: fixed;
  inset-inline: 0;
  inset-block-end: 1rem;
  pointer-events: none;
  z-index: 100000;
}

.notification-container .banner {
  animation: notification-fade 0.2s ease-out forwards;
}

.notification-container:empty {
  display: none;
}

.notification-container > * {
  pointer-events: initial;
}

.buy-buttons__preorder-date {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.buy-buttons__preorder-date--hidden,
.preorder-variant-lists {
  display: none;
}

.line-item-info__properties {
  list-style-type: none;
  text-indent: -17px;
  font-size: 12px;
  font-weight: 500;
  margin-left: 0;
}

.line-item-info__properties li {
  padding-left: 0;
}

.product-info__block-list .variant-picker__option[data-option="size"] .block-swatch.is-preorder {
  overflow: visible;
}

.preorder-icon {
  position: absolute;
  width: 12px;
  top: -5px;
  right: -5px;
}

.buy-buttons .preorder-icon {
  position: initial;
  margin-right: -10px;
  width: 20px;
}

.preorder-tag {
  position: absolute;
  right: 0px;
  padding: 5px 10px;
  border: 1px solid rgb(var(--button-background));
  text-transform: uppercase;
}

.line-item-info__properties .preorder-tag {
  position: inherit;
  display: flex;
  border: 1px solid rgb(var(--button-background));
  text-indent: 0px;
  text-align: center;
  justify-content: center;
  margin: 5px 0;
}

@media screen and (max-width: 699.9px) {
  .preorder-tag {
    font-size: 9px;
    padding: 4px;
  }
}




/*#region Important Overrides
 * - These need to be last so that they will override any previous styles.*/

html {
  overflow-y: scroll;
  /* Adds vertical scrollbar */
}

/*#endregion