/** Shopify CDN: Minification failed

Line 3503:0 Unexpected "}"
Line 3505:3 Unexpected "0%"
Line 3509:3 Unexpected "100%"

**/
@import url('https://fonts.googleapis.com/css2?family=League+Spartan:wght@400;500;600;700&display=swap');
root {
   --alpha-button-background: 1;
   --alpha-button-border: 1;
   --alpha-link: 0.85;
   --alpha-badge-border: 0.1;
   --focused-base-outline: 0.2rem solid rgba(var(--color-foreground),  0.5);
   --focused-base-outline-offset: 0.3rem;
   --focused-base-box-shadow: 0 0 0 0.3rem rgb(var(--color-background)),  0 0 0.5rem 0.4rem rgba(var(--color-foreground),  0.3);

}
 .product-card-wrapper .card,  .contains-card--product {
   --border-radius: var(--product-card-corner-radius);
   --border-width: var(--product-card-border-width);
   --border-opacity: var(--product-card-border-opacity);
   --shadow-horizontal-offset: var(--product-card-shadow-horizontal-offset);
   --shadow-vertical-offset: var(--product-card-shadow-vertical-offset);
   --shadow-blur-radius: var(--product-card-shadow-blur-radius);
   --shadow-opacity: var(--product-card-shadow-opacity);
   --shadow-visible: var(--product-card-shadow-visible);
   --image-padding: var(--product-card-image-padding);
   --text-alignment: var(--product-card-text-alignment);

}
 .collection-card-wrapper .card,  .contains-card--collection {
   --border-radius: var(--collection-card-corner-radius);
   --border-width: var(--collection-card-border-width);
   --border-opacity: var(--collection-card-border-opacity);
   --shadow-horizontal-offset: var(--collection-card-shadow-horizontal-offset);
   --shadow-vertical-offset: var(--collection-card-shadow-vertical-offset);
   --shadow-blur-radius: var(--collection-card-shadow-blur-radius);
   --shadow-opacity: var(--collection-card-shadow-opacity);
   --shadow-visible: var(--collection-card-shadow-visible);
   --image-padding: var(--collection-card-image-padding);
   --text-alignment: var(--collection-card-text-alignment);

}
 .article-card-wrapper .card,  .contains-card--article {
   --border-radius: var(--blog-card-corner-radius);
   --border-width: var(--blog-card-border-width);
   --border-opacity: var(--blog-card-border-opacity);
   --shadow-horizontal-offset: var(--blog-card-shadow-horizontal-offset);
   --shadow-vertical-offset: var(--blog-card-shadow-vertical-offset);
   --shadow-blur-radius: var(--blog-card-shadow-blur-radius);
   --shadow-opacity: var(--blog-card-shadow-opacity);
   --shadow-visible: var(--blog-card-shadow-visible);
   --image-padding: var(--blog-card-image-padding);
   --text-alignment: var(--blog-card-text-alignment);

}
 .contains-content-container,  .content-container {
   --border-radius: var(--text-boxes-radius);
   --border-width: var(--text-boxes-border-width);
   --border-opacity: var(--text-boxes-border-opacity);
   --shadow-horizontal-offset: var(--text-boxes-shadow-horizontal-offset);
   --shadow-vertical-offset: var(--text-boxes-shadow-vertical-offset);
   --shadow-blur-radius: var(--text-boxes-shadow-blur-radius);
   --shadow-opacity: var(--text-boxes-shadow-opacity);
   --shadow-visible: var(--text-boxes-shadow-visible);

}
 .contains-media,  .global-media-settings {
   --border-radius: var(--media-radius);
   --border-width: var(--media-border-width);
   --border-opacity: var(--media-border-opacity);
   --shadow-horizontal-offset: var(--media-shadow-horizontal-offset);
   --shadow-vertical-offset: var(--media-shadow-vertical-offset);
   --shadow-blur-radius: var(--media-shadow-blur-radius);
   --shadow-opacity: var(--media-shadow-opacity);
   --shadow-visible: var(--media-shadow-visible);

}
 /* base */ .page-width {
   max-width: var(--page-width);
   margin: 0 auto;
   padding: 0 1.5rem;

}
 body:has(.section-header .drawer-menu) .announcement-bar-section .page-width {
   max-width: 100%;

}
 .page-width.drawer-menu {
   max-width: 100%;

}
 .page-width-desktop {
   padding: 0;
   margin: 0 auto;

}
 .utility-bar__grid.page-width {
   padding-left: 3rem;
   padding-right: 3rem;

}
 @media screen and (min-width: 750px) {
   .page-width {
     padding: 0 5rem;

  }
   .header.page-width,  .utility-bar__grid.page-width {
     padding-left: 3.2rem;
     padding-right: 3.2rem;

  }
   .page-width--narrow {
     padding: 0 9rem;

  }
   .page-width-desktop {
     padding: 0;

  }
   .page-width-tablet {
     padding: 0 5rem;

  }

}
 @media screen and (min-width: 990px) {
   .header:not(.drawer-menu).page-width {
     padding-left: 5rem;
     padding-right: 5rem;

  }
   .page-width--narrow {
     max-width: 72.6rem;
     padding: 0;

  }
   .page-width-desktop {
     max-width: var(--page-width);
     padding: 0 5rem;

  }

}
 .isolate {
   position: relative;
   z-index: 0;

}
 .section + .section {
   margin-top: var(--spacing-sections-mobile);

}
 @media screen and (min-width: 750px) {
   .section + .section {
     margin-top: var(--spacing-sections-desktop);

  }

}
 .element-margin-top {
   margin-top: 5rem;

}
 @media screen and (min-width: 750px) {
   .element-margin {
     margin-top: calc(5rem + var(--page-width-margin));

  }

}
 .background-secondary {
   background-color: rgba(var(--color-foreground),  0.04);

}
 .grid-auto-flow {
   display: grid;
   grid-auto-flow: column;

}
 .page-margin,  .shopify-challenge__container {
   margin: 7rem auto;

}
 .rte-width {
   max-width: 82rem;
   margin: 0 auto 2rem;

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

}
 .hidden {
   display: none !important;

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

}
 .visually-hidden--inline {
   margin: 0;
   height: 1em;

}
 .overflow-hidden {
   overflow: hidden;

}
 .skip-to-content-link:focus {
   z-index: 9999;
   position: inherit;
   overflow: auto;
   width: auto;
   height: auto;
   clip: auto;

}
 .full-width-link {
   position: absolute;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   z-index: 2;

}
 ::selection {
   background-color: rgba(var(--color-foreground),  0.2);

}
 .text-body {
   font-size: 1.5rem;
   letter-spacing: 0.06rem;
   line-height: calc(1 + 0.8 / var(--font-body-scale));
   font-family: var(--font-body-family);
   font-style: var(--font-body-style);
   font-weight: var(--font-body-weight);

}
 h1,  h2,  h3,  h4,  h5,  .h0,  .h1,  .h2,  .h3,  .h4,  .h5 {
   font-family: var(--font-heading-family);
   font-style: var(--font-heading-style);
   font-weight: var(--font-heading-weight);
   letter-spacing: calc(var(--font-heading-scale) * 0.06rem);
   color: rgb(var(--color-foreground));
   line-height: calc(1 + 0.3 / max(1,  var(--font-heading-scale)));
   word-break: break-word;

}
 .hxxl {
   font-size: clamp(calc(var(--font-heading-scale) * 5.6rem),  14vw,  calc(var(--font-heading-scale) * 7.2rem));
   line-height: 1.1;

}
 .hxl {
   font-size: calc(var(--font-heading-scale) * 5rem);
   line-height: calc(1 + 0.3 / max(1,  var(--font-heading-scale)));

}
 @media only screen and (min-width: 750px) {
   .hxl {
     font-size: calc(var(--font-heading-scale) * 6.2rem);

  }

}
 .h0 {
   font-size: calc(var(--font-heading-scale) * 4rem);

}
 @media only screen and (min-width: 750px) {
   .h0 {
     font-size: calc(var(--font-heading-scale) * 5.2rem);

  }

}
 h1,  .h1 {
   font-size: calc(var(--font-heading-scale) * 3rem);

}
 @media only screen and (min-width: 750px) {
   h1,  .h1 {
     font-size: calc(var(--font-heading-scale) * 4rem);

  }

}
 h2,  .h2 {
   font-size: calc(var(--font-heading-scale) * 2rem);

}
 @media only screen and (min-width: 750px) {
   h2,  .h2 {
     font-size: calc(var(--font-heading-scale) * 2.4rem);

  }

}
 h3,  .h3 {
   font-size: calc(var(--font-heading-scale) * 1.7rem);

}
 @media only screen and (min-width: 750px) {
   h3,  .h3 {
     font-size: calc(var(--font-heading-scale) * 1.8rem);

  }

}
 h4,  .h4 {
   font-family: var(--font-heading-family);
   font-style: var(--font-heading-style);
   font-size: calc(var(--font-heading-scale) * 1.5rem);

}
 h5,  .h5 {
   font-size: calc(var(--font-heading-scale) * 1.2rem);

}
 @media only screen and (min-width: 750px) {
   h5,  .h5 {
     font-size: calc(var(--font-heading-scale) * 1.3rem);

  }

}
 h6,  .h6 {
   color: rgba(var(--color-foreground),  0.75);
   margin-block-start: 1.67em;
   margin-block-end: 1.67em;

}
 blockquote {
   font-style: italic;
   color: rgba(var(--color-foreground),  0.75);
   border-left: 0.2rem solid rgba(var(--color-foreground),  0.2);
   padding-left: 1rem;

}
 @media screen and (min-width: 750px) {
   blockquote {
     padding-left: 1.5rem;

  }

}
 .caption {
   font-size: 1rem;
   letter-spacing: 0.07rem;
   line-height: calc(1 + 0.7 / var(--font-body-scale));

}
 @media screen and (min-width: 750px) {
   .caption {
     font-size: 1.2rem;

  }

}
 .caption-with-letter-spacing {
   font-size: 1rem;
   letter-spacing: 0.13rem;
   line-height: calc(1 + 0.2 / var(--font-body-scale));
   text-transform: uppercase;

}
 .caption-with-letter-spacing--medium {
   font-size: 1.2rem;
   letter-spacing: 0.16rem;

}
 .caption-with-letter-spacing--large {
   font-size: 1.4rem;
   letter-spacing: 0.18rem;

}
 .caption-large,  .customer .field input,  .customer select,  .field__input,  .form__label,  .select__select {
   font-size: 1.3rem;
   line-height: calc(1 + 0.5 / var(--font-body-scale));
   letter-spacing: 0.04rem;

}
 .color-foreground {
   color: rgb(var(--color-foreground));

}
 table:not([class]) {
   table-layout: fixed;
   border-collapse: collapse;
   font-size: 1.4rem;
   border-style: hidden;
   box-shadow: 0 0 0 0.1rem rgba(var(--color-foreground),  0.2);
   /* draws the table border */
}
 table:not([class]) td,  table:not([class]) th {
   padding: 1em;
   border: 0.1rem solid rgba(var(--color-foreground),  0.2);

}
 @media screen and (max-width: 749px) {
   .small-hide {
     display: none !important;

  }

}
 @media screen and (min-width: 750px) and (max-width: 989px) {
   .medium-hide {
     display: none !important;

  }

}
 @media screen and (min-width: 990px) {
   .large-up-hide {
     display: none !important;

  }

}
 .left {
   text-align: left;

}
 .center {
   text-align: center;

}
 .right {
   text-align: right;

}
 .uppercase {
   text-transform: uppercase;

}
 .light {
   opacity: 0.7;

}
 a:empty,  ul:empty,  dl:empty,  div:empty,  section:empty,  article:empty,  p:empty,  h1:empty,  h2:empty,  h3:empty,  h4:empty,  h5:empty,  h6:empty {
   display: none;

}
 .link,  .customer a {
   cursor: pointer;
   display: inline-block;
   border: none;
   box-shadow: none;
   text-decoration: underline;
   text-underline-offset: 0.3rem;
   color: rgb(var(--color-link));
   background-color: transparent;
   font-size: 1.4rem;
   font-family: inherit;

}
 .link--text {
   color: rgb(var(--color-foreground));

}
 .link--text:hover {
   color: rgba(var(--color-foreground),  0.75);

}
 .link-with-icon {
   display: inline-flex;
   font-size: 1.4rem;
   font-weight: 600;
   letter-spacing: 0.1rem;
   text-decoration: none;
   margin-bottom: 4.5rem;
   white-space: nowrap;

}
 .link-with-icon .icon {
   width: 1.5rem;
   margin-left: 1rem;

}
 a:not([href]) {
   cursor: not-allowed;

}
 .circle-divider::after {
   content: '\2022';
   margin: 0 1.3rem 0 1.5rem;

}
 .circle-divider:last-of-type::after {
   display: none;

}
 hr {
   border: none;
   height: 0.1rem;
   background-color: rgba(var(--color-foreground),  0.2);
   display: block;
   margin: 5rem 0;

}
 @media screen and (min-width: 750px) {
   hr {
     margin: 7rem 0;

  }

}
 .full-unstyled-link {
   text-decoration: none;
   color: currentColor;
   display: block;

}
 .placeholder {
   background-color: rgba(var(--color-foreground),  0.04);
   color: rgba(var(--color-foreground),  0.55);
   fill: rgba(var(--color-foreground),  0.55);

}
 details > * {
   box-sizing: border-box;

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

}
 .visibility-hidden {
   visibility: hidden;

}
 @media (prefers-reduced-motion) {
   .motion-reduce {
     transition: none !important;
     animation: none !important;

  }

}
 :root {
   --duration-short: 100ms;
   --duration-default: 200ms;
   --duration-announcement-bar: 250ms;
   --duration-medium: 300ms;
   --duration-long: 500ms;
   --duration-extra-long: 600ms;
   --duration-extra-longer: 750ms;
   --duration-extended: 3s;
   --ease-out-slow: cubic-bezier(0,  0,  0.3,  1);
   --animation-slide-in: slideIn var(--duration-extra-long) var(--ease-out-slow) forwards;
   --animation-fade-in: fadeIn var(--duration-extra-long) var(--ease-out-slow);

}
 .underlined-link,  .customer a,  .inline-richtext a {
   text-underline-offset: 0.3rem;
   text-decoration-thickness: 0.1rem;
   transition: text-decoration-thickness ease 100ms;

}
 .underlined-link,  .customer a {
   color: rgba(var(--color-link),  var(--alpha-link));

}
 .inline-richtext a,  .rte.inline-richtext a {
   color: currentColor;

}
 .underlined-link:hover,  .customer a:hover,  .inline-richtext a:hover {
   color: rgb(var(--color-link));
   text-decoration-thickness: 0.2rem;

}
 .icon-arrow {
   width: 1.5rem;

}
 h3 .icon-arrow,  .h3 .icon-arrow {
   width: calc(var(--font-heading-scale) * 1.5rem);

}
 /* arrow animation */ .animate-arrow .icon-arrow path {
   transform: translateX(-0.25rem);
   transition: transform var(--duration-short) ease;

}
 .animate-arrow:hover .icon-arrow path {
   transform: translateX(-0.05rem);

}
 .svg-wrapper {
   display: inline-flex;
   justify-content: center;
   align-items: center;
   width: 20px;
   height: 20px;

}
 .svg-wrapper > svg {
   height: 100%;
   width: 100%;

}
 /* base-details-summary */ summary {
   cursor: pointer;
   list-style: none;
   position: relative;

}
 summary .icon-caret {
   position: absolute;
   height: 0.6rem;
   right: 1.5rem;
   top: calc(50% - 0.2rem);

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

}
 .disclosure-has-popup {
   position: relative;

}
 .disclosure-has-popup[open] > summary::before {
   position: fixed;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   z-index: 2;
   display: block;
   cursor: default;
   content: ' ';
   background: transparent;

}
 .disclosure-has-popup > summary::before {
   display: none;

}
 .disclosure-has-popup[open] > summary + * {
   z-index: 100;

}
 @media screen and (min-width: 750px) {
   .disclosure-has-popup[open] > summary + * {
     z-index: 4;

  }
   .facets .disclosure-has-popup[open] > summary + * {
     z-index: 2;

  }

}
 .placeholder-svg {
   height: 100%;
   width: 100%;

}
 /* base-focus */ /* Focus ring - default (with offset) */ *:focus {
   outline: 0;
   box-shadow: none;

}
 *:focus-visible {
   outline: var(--focused-base-outline);
   outline-offset: var(--focused-base-outline-offset);
   box-shadow: var(--focused-base-box-shadow);

}
 /* Fallback - for browsers that don't support :focus-visible, a fallback is set for :focus */ .focused {
   outline: var(--focused-base-outline);
   outline-offset: var(--focused-base-outline-offset);
   box-shadow: var(--focused-base-box-shadow);

}
 /* Focus ring - inset */ .focus-inset:focus-visible {
   outline: 0.2rem solid rgba(var(--color-foreground),  0.5);
   outline-offset: -0.2rem;
   box-shadow: 0 0 0.2rem 0 rgba(var(--color-foreground),  0.3);

}
 .focused.focus-inset {
   outline: 0.2rem solid rgba(var(--color-foreground),  0.5);
   outline-offset: -0.2rem;
   box-shadow: 0 0 0.2rem 0 rgba(var(--color-foreground),  0.3);

}
 /* Focus ring - none */ /* Dangerous for a11y - Use with care */ .focus-none {
   box-shadow: none !important;
   outline: 0 !important;

}
 .focus-offset:focus-visible {
   outline: 0.2rem solid rgba(var(--color-foreground),  0.5);
   outline-offset: 1rem;
   box-shadow: 0 0 0 1rem rgb(var(--color-background)),  0 0 0.2rem 1.2rem rgba(var(--color-foreground),  0.3);

}
 .focus-offset.focused {
   outline: 0.2rem solid rgba(var(--color-foreground),  0.5);
   outline-offset: 1rem;
   box-shadow: 0 0 0 1rem rgb(var(--color-background)),  0 0 0.2rem 1.2rem rgba(var(--color-foreground),  0.3);

}
 /* component-title */ .title,  .title-wrapper-with-link {
   margin: 3rem 0 2rem;

}
 .title-wrapper-with-link .title {
   margin: 0;

}
 .title .link {
   font-size: inherit;

}
 .title-wrapper {
   margin-bottom: 3rem;

}
 .title-wrapper-with-link {
   display: flex;
   justify-content: space-between;
   align-items: flex-end;
   gap: 1rem;
   margin-bottom: 3rem;
   flex-wrap: wrap;

}
 .title--primary {
   margin: 4rem 0;

}
 .title-wrapper--self-padded-tablet-down,  .title-wrapper--self-padded-mobile {
   padding-left: 1.5rem;
   padding-right: 1.5rem;

}
 @media screen and (min-width: 750px) {
   .title-wrapper--self-padded-mobile {
     padding-left: 0;
     padding-right: 0;

  }

}
 @media screen and (min-width: 990px) {
   .title,  .title-wrapper-with-link {
     margin: 5rem 0 3rem;

  }
   .title--primary {
     margin: 2rem 0;

  }
   .title-wrapper-with-link {
     align-items: center;

  }
   .title-wrapper-with-link .title {
     margin-bottom: 0;

  }
   .title-wrapper--self-padded-tablet-down {
     padding-left: 0;
     padding-right: 0;

  }

}
 .title-wrapper-with-link .link-with-icon {
   margin: 0;
   flex-shrink: 0;
   display: flex;
   align-items: center;

}
 .title-wrapper-with-link .link-with-icon .svg-wrapper {
   width: 1.5rem;

}
 .title-wrapper-with-link a {
   margin-top: 0;
   flex-shrink: 0;

}
 .title-wrapper--no-top-margin {
   margin-top: 0;

}
 .title-wrapper--no-top-margin > .title {
   margin-top: 0;

}
 .subtitle {
   font-size: 1.8rem;
   line-height: calc(1 + 0.8 / var(--font-body-scale));
   letter-spacing: 0.06rem;
   color: rgba(var(--color-foreground),  0.7);

}
 .subtitle--small {
   font-size: 1.4rem;
   letter-spacing: 0.1rem;

}
 .subtitle--medium {
   font-size: 1.6rem;
   letter-spacing: 0.08rem;

}
 /* component-grid */ .grid {
   display: flex;
   flex-wrap: wrap;
   margin-bottom: 2rem;
   padding: 0;
   list-style: none;
   column-gap: var(--grid-mobile-horizontal-spacing);
   row-gap: var(--grid-mobile-vertical-spacing);

}
 @media screen and (min-width: 750px) {
   .grid {
     column-gap: var(--grid-desktop-horizontal-spacing);
     row-gap: var(--grid-desktop-vertical-spacing);

  }

}
 .grid:last-child {
   margin-bottom: 0;

}
 .grid__item {
   width: calc(25% - var(--grid-mobile-horizontal-spacing) * 3 / 4);
   max-width: calc(50% - var(--grid-mobile-horizontal-spacing) / 2);
   flex-grow: 1;
   flex-shrink: 0;

}
 @media screen and (min-width: 750px) {
   .grid__item {
     width: calc(25% - var(--grid-desktop-horizontal-spacing) * 3 / 4);
     max-width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2);

  }

}
 .grid--gapless.grid {
   column-gap: 0;
   row-gap: 0;

}
 @media screen and (max-width: 749px) {
   .grid__item.slider__slide--full-width {
     width: 100%;
     max-width: none;

  }

}
 .grid--1-col .grid__item {
   max-width: 100%;
   width: 100%;

}
 .grid--3-col .grid__item {
   width: calc(33.33% - var(--grid-mobile-horizontal-spacing) * 2 / 3);

}
 @media screen and (min-width: 750px) {
   .grid--3-col .grid__item {
     width: calc(33.33% - var(--grid-desktop-horizontal-spacing) * 2 / 3);

  }

}
 .grid--2-col .grid__item {
   width: calc(50% - var(--grid-mobile-horizontal-spacing) / 2);

}
 @media screen and (min-width: 750px) {
   .grid--2-col .grid__item {
     width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2);

  }
   .grid--4-col-tablet .grid__item {
     width: calc(25% - var(--grid-desktop-horizontal-spacing) * 3 / 4);

  }
   .grid--3-col-tablet .grid__item {
     width: calc(33.33% - var(--grid-desktop-horizontal-spacing) * 2 / 3);

  }
   .grid--2-col-tablet .grid__item {
     width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2);

  }

}
 @media screen and (max-width: 989px) {
   .grid--1-col-tablet-down .grid__item {
     width: 100%;
     max-width: 100%;

  }
   .slider--tablet.grid--peek {
     margin: 0;
     width: 100%;

  }
   .slider--tablet.grid--peek .grid__item {
     box-sizing: content-box;
     margin: 0;

  }
   .slider.slider--tablet .scroll-trigger.animate--slide-in,  .slider.slider--mobile .scroll-trigger.animate--slide-in {
     animation: none;
     opacity: 1;
     transform: inherit;

  }
   .scroll-trigger:not(.scroll-trigger--offscreen) .slider--tablet {
     animation: var(--animation-slide-in);

  }

}
 @media screen and (min-width: 990px) {
   .grid--6-col-desktop .grid__item {
     width: calc(16.66% - var(--grid-desktop-horizontal-spacing) * 5 / 6);
     max-width: calc(16.66% - var(--grid-desktop-horizontal-spacing) * 5 / 6);

  }
   .grid--5-col-desktop .grid__item {
     width: calc(20% - var(--grid-desktop-horizontal-spacing) * 4 / 5);
     max-width: calc(20% - var(--grid-desktop-horizontal-spacing) * 4 / 5);

  }
   .grid--4-col-desktop .grid__item {
     width: calc(25% - var(--grid-desktop-horizontal-spacing) * 3 / 4);
     max-width: calc(25% - var(--grid-desktop-horizontal-spacing) * 3 / 4);

  }
   .grid--3-col-desktop .grid__item {
     width: calc(33.33% - var(--grid-desktop-horizontal-spacing) * 2 / 3);
     max-width: calc(33.33% - var(--grid-desktop-horizontal-spacing) * 2 / 3);

  }
   .grid--2-col-desktop .grid__item {
     width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2);
     max-width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2);

  }
   .slider.slider--desktop .scroll-trigger.animate--slide-in {
     animation: none;
     opacity: 1;
     transform: inherit;

  }
   .scroll-trigger:not(.scroll-trigger--offscreen) .slider--desktop {
     animation: var(--animation-slide-in);

  }

}
 @media screen and (min-width: 990px) {
   .grid--1-col-desktop {
     flex: 0 0 100%;
     max-width: 100%;

  }
   .grid--1-col-desktop .grid__item {
     width: 100%;
     max-width: 100%;

  }

}
 @media screen and (max-width: 749px) {
   .grid--peek.slider--mobile {
     margin: 0;
     width: 100%;

  }
   .grid--peek.slider--mobile .grid__item {
     box-sizing: content-box;
     margin: 0;

  }
   .grid--peek .grid__item {
     min-width: 35%;

  }
   .grid--peek.slider .grid__item:first-of-type {
     margin-left: 1.5rem;

  }
   /* Fix to show some space at the end of our sliders in all browsers */ .grid--peek.slider:after {
     margin-left: calc(-1 * var(--grid-mobile-horizontal-spacing));

  }
   .grid--2-col-tablet-down .grid__item {
     width: calc(50% - var(--grid-mobile-horizontal-spacing) / 2);

  }
   .slider--tablet.grid--peek.grid--2-col-tablet-down .grid__item,  .grid--peek .grid__item {
     width: calc(50% - var(--grid-mobile-horizontal-spacing) - 3rem);

  }
   .slider--tablet.grid--peek.grid--1-col-tablet-down .grid__item,  .slider--mobile.grid--peek.grid--1-col-tablet-down .grid__item {
     width: calc(100% - var(--grid-mobile-horizontal-spacing) - 3rem);

  }

}
 @media screen and (min-width: 750px) and (max-width: 989px) {
   .slider--tablet.grid--peek .grid__item {
     width: calc(25% - var(--grid-desktop-horizontal-spacing) - 3rem);

  }
   .slider--tablet.grid--peek.grid--3-col-tablet .grid__item {
     width: calc(33.33% - var(--grid-desktop-horizontal-spacing) - 3rem);

  }
   .slider--tablet.grid--peek.grid--2-col-tablet .grid__item,  .slider--tablet.grid--peek.grid--2-col-tablet-down .grid__item {
     width: calc(50% - var(--grid-desktop-horizontal-spacing) - 3rem);

  }
   .slider--tablet.grid--peek .grid__item:first-of-type {
     margin-left: 1.5rem;

  }
   .grid--2-col-tablet-down .grid__item {
     width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2);

  }
   .grid--1-col-tablet-down.grid--peek .grid__item {
     width: calc(100% - var(--grid-desktop-horizontal-spacing) - 3rem);

  }

}
 /* component-media */ .media {
   display: block;
   background-color: rgba(var(--color-foreground),  0.1);
   position: relative;
   overflow: hidden;

}
 .media--transparent {
   background-color: transparent;

}
 .media > *:not(.zoom):not(.deferred-media__poster-button),  .media model-viewer {
   display: block;
   max-width: 100%;
   position: absolute;
   top: 0;
   left: 0;
   height: 100%;
   width: 100%;

}
 .media > img {
   object-fit: cover;
   object-position: center center;
   transition: opacity 0.4s cubic-bezier(0.25,  0.46,  0.45,  0.94);

}
 .media--square {
   padding-bottom: 100%;

}
 .media--portrait {
   padding-bottom: 125%;

}
 .media--landscape {
   padding-bottom: 66.6%;

}
 .media--cropped {
   padding-bottom: 56%;

}
 .media--16-9 {
   padding-bottom: 56.25%;

}
 .media--circle {
   padding-bottom: 100%;
   border-radius: 50%;

}
 .media.media--hover-effect > img + img {
   opacity: 0;

}
 @media screen and (min-width: 990px) {
   .media--cropped {
     padding-bottom: 63%;

  }

}
 deferred-media {
   display: block;

}
 /* component-button */ /* Button - default */ .button--secondary,  .button--tertiary {
   --color-button: var(--color-secondary-button);
   --color-button-text: var(--color-secondary-button-text);

}
 .button--tertiary {
   --alpha-button-background: 0;
   --alpha-button-border: 0.2;

}
 .button,  .shopify-challenge__button,  .customer button,  button.shopify-payment-button__button--unbranded {
   --shadow-horizontal-offset: var(--buttons-shadow-horizontal-offset);
   --shadow-vertical-offset: var(--buttons-shadow-vertical-offset);
   --shadow-blur-radius: var(--buttons-shadow-blur-radius);
   --shadow-opacity: var(--buttons-shadow-opacity);
   --shadow-visible: var(--buttons-shadow-visible);
   --border-offset: var(--buttons-border-offset);
   /* reduce radius edge artifacts */ --border-opacity: calc(1 - var(--buttons-border-opacity));
   border-radius: var(--buttons-radius-outset);
   position: relative;

}
 .button,  .shopify-challenge__button,  .customer button,  button.shopify-payment-button__button--unbranded {
   min-width: calc(12rem + var(--buttons-border-width) * 2);
   min-height: calc(4.5rem + var(--buttons-border-width) * 2);

}
 .button,  .shopify-challenge__button,  .customer button {
   display: inline-flex;
   justify-content: center;
   align-items: center;
   border: 0;
   padding: 0 3rem;
   cursor: pointer;
   font: inherit;
   font-size: 1.5rem;
   text-decoration: none;
   color: rgb(var(--color-button-text));
   transition: box-shadow var(--duration-short) ease;
   -webkit-appearance: none;
   appearance: none;
   background-color: rgba(var(--color-button),  var(--alpha-button-background));

}
 .button:before,  .shopify-challenge__button:before,  .customer button:before,  .shopify-payment-button__button--unbranded:before {
   content: '';
   position: absolute;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   z-index: -1;
   border-radius: var(--buttons-radius-outset);
   box-shadow: var(--shadow-horizontal-offset) var(--shadow-vertical-offset) var(--shadow-blur-radius) rgba(var(--color-shadow),  var(--shadow-opacity));

}
 .button:after,  .shopify-challenge__button:after,  .customer button:after,  .shopify-payment-button__button--unbranded:after {
   content: '';
   position: absolute;
   top: var(--buttons-border-width);
   right: var(--buttons-border-width);
   bottom: var(--buttons-border-width);
   left: var(--buttons-border-width);
   z-index: 1;
   border-radius: var(--buttons-radius);
   box-shadow: 0 0 0 calc(var(--buttons-border-width) + var(--border-offset)) rgba(var(--color-button-text),  var(--border-opacity)),  0 0 0 var(--buttons-border-width) rgba(var(--color-button),  var(--alpha-button-background));
   transition: box-shadow var(--duration-short) ease;

}
 .button:not([disabled]):hover::after,  .shopify-challenge__button:hover::after,  .customer button:hover::after,  .shopify-payment-button__button--unbranded:hover::after {
   --border-offset: 1.3px;
   box-shadow: 0 0 0 calc(var(--buttons-border-width) + var(--border-offset)) rgba(var(--color-button-text),  var(--border-opacity)),  0 0 0 calc(var(--buttons-border-width) + 1px) rgba(var(--color-button),  var(--alpha-button-background));

}
 .button--secondary:after {
   --border-opacity: var(--buttons-border-opacity);

}
 .button:focus-visible,  .button:focus,  .button.focused,  .shopify-payment-button__button--unbranded:focus-visible,  .shopify-payment-button__button--unbranded:focus {
   outline: 0;
   box-shadow: 0 0 0 0.3rem rgb(var(--color-background)),  0 0 0 0.5rem rgba(var(--color-foreground),  0.5),  0 0 0.5rem 0.4rem rgba(var(--color-foreground),  0.3);

}
 .button:focus:not(:focus-visible):not(.focused),  .shopify-payment-button__button--unbranded:focus:not(:focus-visible):not(.focused) {
   box-shadow: inherit;

}
 .button::selection,  .shopify-challenge__button::selection,  .customer button::selection {
   background-color: rgba(var(--color-button-text),  0.3);

}
 .button,  .button-label,  .shopify-challenge__button,  .customer button {
   font-size: 1.5rem;
   letter-spacing: 0.1rem;
   line-height: calc(1 + 0.2 / var(--font-body-scale));

}
 .button--tertiary {
   font-size: 1.2rem;
   padding: 1rem 1.5rem;
   min-width: calc(9rem + var(--buttons-border-width) * 2);
   min-height: calc(3.5rem + var(--buttons-border-width) * 2);

}
 .button--small {
   padding: 1.2rem 2.6rem;

}
 /* Shopify Accelerated Checkout */ shopify-accelerated-checkout {
   --shopify-accelerated-checkout-button-border-radius: var(--buttons-radius-outset);
   --shopify-accelerated-checkout-button-box-shadow: var(--shadow-horizontal-offset) var(--shadow-vertical-offset) var(--shadow-blur-radius) rgba(var(--color-shadow),  var(--shadow-opacity));

}
 shopify-accelerated-checkout-cart {
   --shopify-accelerated-checkout-button-border-radius: var(--buttons-radius-outset);
   --shopify-accelerated-checkout-button-box-shadow: var(--shadow-horizontal-offset) var(--shadow-vertical-offset) var(--shadow-blur-radius) rgba(var(--color-shadow),  var(--shadow-opacity));

}
 /* Button - other */ .button:disabled,  .button[aria-disabled='true'],  .button.disabled,  .customer button:disabled,  .customer button[aria-disabled='true'],  .customer button.disabled,  .quantity__button.disabled {
   cursor: not-allowed;
   opacity: 0.5;

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

}
 .button.loading {
   color: transparent;
   position: relative;

}
 @media screen and (forced-colors: active) {
   .button.loading {
     color: rgb(var(--color-foreground));

  }

}
 .button.loading > .loading__spinner {
   top: 50%;
   left: 50%;
   transform: translate(-50%,  -50%);
   position: absolute;
   height: 100%;
   display: flex;
   align-items: center;

}
 .button.loading > .loading__spinner .spinner {
   width: fit-content;

}
 .button.loading > .loading__spinner .path {
   stroke: rgb(var(--color-button-text));

}
 /* Button - social share */ .share-button {
   display: block;
   position: relative;

}
 .share-button details {
   width: fit-content;

}
 .share-button__button {
   font-size: 1.4rem;
   display: flex;
   align-items: center;
   color: rgb(var(--color-link));
   margin-left: 0;
   padding-left: 0;
   min-height: 4.4rem;

}
 details[open] > .share-button__fallback {
   animation: animateMenuOpen var(--duration-default) ease;

}
 .share-button__button:hover {
   text-decoration: underline;
   text-underline-offset: 0.3rem;

}
 .share-button__button,  .share-button__fallback button {
   cursor: pointer;
   background-color: transparent;
   border: none;

}
 .share-button__button .icon-share {
   height: 1.2rem;
   margin-right: 1rem;
   min-width: 1.3rem;

}
 .share-button__fallback {
   display: flex;
   align-items: center;
   position: absolute;
   top: 3rem;
   left: 0.1rem;
   z-index: 3;
   width: 100%;
   min-width: max-content;
   border-radius: var(--inputs-radius);
   border: 0;

}
 .share-button__fallback:after {
   pointer-events: none;
   content: '';
   position: absolute;
   top: var(--inputs-border-width);
   right: var(--inputs-border-width);
   bottom: var(--inputs-border-width);
   left: var(--inputs-border-width);
   border: 0.1rem solid transparent;
   border-radius: var(--inputs-radius);
   box-shadow: 0 0 0 var(--inputs-border-width) rgba(var(--color-foreground),  var(--inputs-border-opacity));
   transition: box-shadow var(--duration-short) ease;
   z-index: 1;

}
 .share-button__fallback:before {
   background: rgb(var(--color-background));
   pointer-events: none;
   content: '';
   position: absolute;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   border-radius: var(--inputs-radius-outset);
   box-shadow: var(--inputs-shadow-horizontal-offset) var(--inputs-shadow-vertical-offset) var(--inputs-shadow-blur-radius) rgba(var(--color-shadow),  var(--inputs-shadow-opacity));
   z-index: -1;

}
 .share-button__fallback button {
   width: 4.4rem;
   height: 4.4rem;
   padding: 0;
   flex-shrink: 0;
   display: flex;
   justify-content: center;
   align-items: center;
   position: relative;
   right: var(--inputs-border-width);

}
 .share-button__fallback button:hover {
   color: rgba(var(--color-foreground),  0.75);

}
 .share-button__fallback button:hover .svg-wrapper {
   transform: scale(1.07);

}
 .share-button__close:not(.hidden) + .share-button__copy {
   display: none;

}
 .share-button__close,  .share-button__copy {
   background-color: transparent;
   color: rgb(var(--color-foreground));

}
 .share-button__copy:focus-visible,  .share-button__close:focus-visible {
   background-color: rgb(var(--color-background));
   z-index: 2;

}
 .share-button__copy:focus,  .share-button__close:focus {
   background-color: rgb(var(--color-background));
   z-index: 2;

}
 .field:not(:focus-visible):not(.focused) + .share-button__copy:not(:focus-visible):not(.focused),  .field:not(:focus-visible):not(.focused) + .share-button__close:not(:focus-visible):not(.focused) {
   background-color: inherit;

}
 .share-button__fallback .field:after,  .share-button__fallback .field:before {
   content: none;

}
 .share-button__fallback .field {
   border-radius: 0;
   min-width: auto;
   min-height: auto;
   transition: none;

}
 .share-button__fallback .field__input:focus,  .share-button__fallback .field__input:-webkit-autofill {
   outline: 0.2rem solid rgba(var(--color-foreground),  0.5);
   outline-offset: 0.1rem;
   box-shadow: 0 0 0 0.1rem rgb(var(--color-background)),  0 0 0.5rem 0.4rem rgba(var(--color-foreground),  0.3);

}
 .share-button__fallback .field__input {
   box-shadow: none;
   text-overflow: ellipsis;
   white-space: nowrap;
   overflow: hidden;
   filter: none;
   min-width: auto;
   min-height: auto;

}
 .share-button__fallback .field__input:hover {
   box-shadow: none;

}
 .share-button__fallback .icon {
   width: 1.5rem;
   height: 1.5rem;

}
 .share-button__message:not(:empty) {
   display: flex;
   align-items: center;
   width: 100%;
   height: 100%;
   margin-top: 0;
   padding: 0.8rem 0 0.8rem 1.5rem;
   margin: var(--inputs-border-width);

}
 .share-button__message:not(:empty):not(.hidden) ~ * {
   display: none;

}
 /* component-form */ .field__input,  .select__select,  .customer .field input,  .customer select {
   -webkit-appearance: none;
   appearance: none;
   background-color: rgb(var(--color-background));
   color: rgb(var(--color-foreground));
   font-family: var(--font-body-family);
   font-style: var(--font-body-style);
   font-weight: var(--font-body-weight);
   font-size: 1.6rem;
   width: 100%;
   box-sizing: border-box;
   transition: box-shadow var(--duration-short) ease;
   border-radius: var(--inputs-radius);
   height: 4.5rem;
   min-height: calc(var(--inputs-border-width) * 2);
   min-width: calc(7rem + (var(--inputs-border-width) * 2));
   position: relative;
   border: 0;

}
 .field:before,  .select:before,  .customer .field:before,  .customer select:before,  .localization-form__select:before {
   pointer-events: none;
   content: '';
   position: absolute;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   border-radius: var(--inputs-radius-outset);
   box-shadow: var(--inputs-shadow-horizontal-offset) var(--inputs-shadow-vertical-offset) var(--inputs-shadow-blur-radius) rgba(var(--color-shadow),  var(--inputs-shadow-opacity));
   z-index: -1;

}
 .field:after,  .select:after,  .customer .field:after,  .customer select:after,  .localization-form__select:after {
   pointer-events: none;
   content: '';
   position: absolute;
   top: var(--inputs-border-width);
   right: var(--inputs-border-width);
   bottom: var(--inputs-border-width);
   left: var(--inputs-border-width);
   border: 0.1rem solid transparent;
   border-radius: var(--inputs-radius);
   box-shadow: 0 0 0 var(--inputs-border-width) rgba(var(--color-foreground),  var(--inputs-border-opacity));
   transition: box-shadow var(--duration-short) ease;
   z-index: 1;

}
 .select__select {
   font-family: var(--font-body-family);
   font-style: var(--font-body-style);
   font-weight: var(--font-body-weight);
   font-size: 1.2rem;
   color: rgba(var(--color-foreground),  0.75);

}
 .field:hover.field:after,  .select:hover.select:after,  .select__select:hover.select__select:after,  .customer .field:hover.field:after,  .customer select:hover.select:after,  .localization-form__select:hover.localization-form__select:after {
   box-shadow: 0 0 0 calc(0.1rem + var(--inputs-border-width)) rgba(var(--color-foreground),  var(--inputs-border-opacity));
   outline: 0;
   border-radius: var(--inputs-radius);

}
 .field__input:focus-visible,  .select__select:focus-visible,  .customer .field input:focus-visible,  .customer select:focus-visible,  .localization-form__select:focus-visible.localization-form__select:after {
   box-shadow: 0 0 0 calc(0.1rem + var(--inputs-border-width)) rgba(var(--color-foreground));
   outline: 0;
   border-radius: var(--inputs-radius);

}
 .field__input:focus,  .select__select:focus,  .customer .field input:focus,  .customer select:focus,  .localization-form__select:focus.localization-form__select:after {
   box-shadow: 0 0 0 calc(0.1rem + var(--inputs-border-width)) rgba(var(--color-foreground));
   outline: 0;
   border-radius: var(--inputs-radius);

}
 .localization-form__select:focus {
   outline: 0;
   box-shadow: none;

}
 .text-area,  .select {
   display: flex;
   position: relative;
   width: 100%;

}
 /* Select */ .select .svg-wrapper,  .customer select + .svg-wrapper {
   height: 0.6rem;
   width: 1rem;
   pointer-events: none;
   position: absolute;
   top: calc(50% - 0.2rem);
   right: 0;

}
 .select__select,  .customer select {
   cursor: pointer;
   line-height: calc(1 + 0.6 / var(--font-body-scale));
   padding: 0 calc(var(--inputs-border-width) + 3rem) 0 2rem;
   margin: var(--inputs-border-width);
   min-height: calc(var(--inputs-border-width) * 2);

}
 /* Field */ .field {
   position: relative;
   width: 100%;
   display: flex;
   transition: box-shadow var(--duration-short) ease;

}
 .customer .field {
   display: flex;

}
 .field--with-error {
   flex-wrap: wrap;

}
 .field__input,  .customer .field input {
   flex-grow: 1;
   text-align: left;
   padding: 1.5rem;
   margin: var(--inputs-border-width);
   transition: box-shadow var(--duration-short) ease;

}
 .field__label,  .customer .field label {
   font-size: 1.6rem;
   left: calc(var(--inputs-border-width) + 2rem);
   top: calc(1rem + var(--inputs-border-width));
   margin-bottom: 0;
   pointer-events: none;
   position: absolute;
   transition: top var(--duration-short) ease,  font-size var(--duration-short) ease;
   color: rgba(var(--color-foreground),  0.75);
   letter-spacing: 0.1rem;
   line-height: 1.5;

}
 .field__input:focus ~ .field__label,  .field__input:not(:placeholder-shown) ~ .field__label,  .field__input:-webkit-autofill ~ .field__label,  .customer .field input:focus ~ label,  .customer .field input:not(:placeholder-shown) ~ label,  .customer .field input:-webkit-autofill ~ label {
   font-size: 1rem;
   top: calc(var(--inputs-border-width) + 0.5rem);
   left: calc(var(--inputs-border-width) + 2rem);
   letter-spacing: 0.04rem;

}
 .field__input:focus,  .field__input:not(:placeholder-shown),  .field__input:-webkit-autofill,  .customer .field input:focus,  .customer .field input:not(:placeholder-shown),  .customer .field input:-webkit-autofill {
   padding: 2.2rem 1.5rem 0.8rem 2rem;
   margin: var(--inputs-border-width);

}
 .field__input::-webkit-search-cancel-button,  .customer .field input::-webkit-search-cancel-button {
   display: none;

}
 .field__input::placeholder,  .customer .field input::placeholder {
   opacity: 0;

}
 .field__button {
   align-items: center;
   background-color: transparent;
   border: 0;
   color: currentColor;
   cursor: pointer;
   display: flex;
   height: 4.4rem;
   justify-content: center;
   overflow: hidden;
   padding: 0;
   position: absolute;
   right: 0;
   top: 0;
   width: 4.4rem;

}
 .field__button > .svg-wrapper {
   height: 2.5rem;
   width: 2.5rem;

}
 .field__input:-webkit-autofill ~ .field__button,  .field__input:-webkit-autofill ~ .field__label,  .customer .field input:-webkit-autofill ~ label {
   color: rgb(0,  0,  0);

}
 /* Text area */ .text-area {
   font-family: var(--font-body-family);
   font-style: var(--font-body-style);
   font-weight: var(--font-body-weight);
   min-height: 10rem;
   resize: none;

}
 input[type='checkbox'] {
   display: inline-block;
   width: auto;
   margin-right: 0.5rem;

}
 /* Form global */ .form__label {
   display: block;
   margin-bottom: 0.6rem;

}
 .form__message {
   align-items: center;
   display: flex;
   font-size: 1.4rem;
   line-height: 1;
   margin-top: 1rem;

}
 .form__message--large {
   font-size: 1.6rem;

}
 .customer .field .form__message {
   font-size: 1.4rem;
   text-align: left;

}
 .form__message .icon,  .customer .form__message .svg-wrapper {
   flex-shrink: 0;
   height: 1.3rem;
   margin-right: 0.5rem;
   width: 1.3rem;

}
 .form__message--large .icon,  .customer .form__message .svg-wrapper {
   height: 1.5rem;
   width: 1.5rem;
   margin-right: 1rem;

}
 .customer .field .form__message .svg-wrapper {
   align-self: start;

}
 .form-status {
   margin: 0;
   font-size: 1.6rem;

}
 .form-status-list {
   padding: 0;
   margin: 2rem 0 4rem;

}
 .form-status-list li {
   list-style-position: inside;

}
 .form-status-list .link::first-letter {
   text-transform: capitalize;

}
 /* component-quantity */ .quantity {
   color: rgba(var(--color-foreground));
   position: relative;
   width: calc(14rem / var(--font-body-scale) + var(--inputs-border-width) * 2);
   display: flex;
   border-radius: var(--inputs-radius);
   min-height: calc((var(--inputs-border-width) * 2) + 4.5rem);

}
 .quantity:after {
   pointer-events: none;
   content: '';
   position: absolute;
   top: var(--inputs-border-width);
   right: var(--inputs-border-width);
   bottom: var(--inputs-border-width);
   left: var(--inputs-border-width);
   border: 0.1rem solid transparent;
   border-radius: var(--inputs-radius);
   box-shadow: 0 0 0 var(--inputs-border-width) rgba(var(--color-foreground),  var(--inputs-border-opacity));
   transition: box-shadow var(--duration-short) ease;
   z-index: 1;

}
 .quantity:before {
   background: rgb(var(--color-background));
   pointer-events: none;
   content: '';
   position: absolute;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   border-radius: var(--inputs-radius-outset);
   box-shadow: var(--inputs-shadow-horizontal-offset) var(--inputs-shadow-vertical-offset) var(--inputs-shadow-blur-radius) rgba(var(--color-shadow),  var(--inputs-shadow-opacity));
   z-index: -1;

}
 .quantity__input {
   color: currentColor;
   font-family: var(--font-body-family);
   font-style: var(--font-body-style);
   font-weight: var(--font-body-weight);
   font-size: 1.6rem;
   font-weight: 500;
   opacity: 0.85;
   text-align: center;
   background-color: transparent;
   border: 0;
   padding: 0 0.5rem;
   width: 100%;
   flex-grow: 1;
   -webkit-appearance: none;
   appearance: none;

}
 .quantity__button {
   width: calc(4.5rem / var(--font-body-scale));
   flex-shrink: 0;
   font-size: 1.8rem;
   border: 0;
   background-color: transparent;
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: center;
   color: rgb(var(--color-foreground));
   padding: 0;

}
 .quantity__button:first-child {
   margin-left: calc(var(--inputs-border-width));

}
 .quantity__button:last-child {
   margin-right: calc(var(--inputs-border-width));

}
 .quantity__button .svg-wrapper {
   width: 1rem;
   pointer-events: none;

}
 .quantity__button:focus-visible,  .quantity__input:focus-visible {
   background-color: rgb(var(--color-background));
   z-index: 2;

}
 .quantity__button:focus,  .quantity__input:focus {
   background-color: rgb(var(--color-background));
   z-index: 2;

}
 .quantity__button:not(:focus-visible):not(.focused),  .quantity__input:not(:focus-visible):not(.focused) {
   box-shadow: inherit;
   background-color: inherit;

}
 .quantity__input:-webkit-autofill,  .quantity__input:-webkit-autofill:hover,  .quantity__input:-webkit-autofill:active {
   box-shadow: 0 0 0 10rem rgb(var(--color-background)) inset !important;
   -webkit-box-shadow: 0 0 0 10rem rgb(var(--color-background)) inset !important;

}
 .quantity__input::-webkit-outer-spin-button,  .quantity__input::-webkit-inner-spin-button {
   -webkit-appearance: none;
   margin: 0;

}
 .quantity__input[type='number'] {
   -moz-appearance: textfield;

}
 .quantity__rules {
   margin-top: 0.5rem;
   position: relative;
   font-size: 1.2rem;

}
 .quantity__rules .caption {
   display: inline-block;
   margin-top: 0;
   margin-bottom: 0;

}
 .quantity__rules .divider + .divider::before {
   content: '\2022';
   margin: 0 0.5rem;

}
 .quantity__rules-cart {
   position: relative;

}
 .product__info-container .loading__spinner:not(.hidden) ~ *,  .quantity__rules-cart .loading__spinner:not(.hidden) ~ * {
   visibility: hidden;

}
 /* component-modal */ .modal__toggle {
   list-style-type: none;

}
 .modal__toggle-close {
   display: none;

}
 .modal__toggle-open {
   display: flex;

}
 .modal__close-button.link {
   display: flex;
   justify-content: center;
   align-items: center;
   padding: 0rem;
   height: 4.4rem;
   width: 4.4rem;
   background-color: transparent;

}
 .modal__close-button .icon {
   width: 1.7rem;
   height: 1.7rem;

}
 .modal__content {
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background: rgb(var(--color-background));
   z-index: 4;
   display: flex;
   justify-content: center;
   align-items: center;

}
 .media-modal {
   cursor: zoom-out;

}
 .media-modal .deferred-media {
   cursor: initial;

}
 /* component-cart-count-bubble */ .cart-count-bubble:empty {
   display: none;

}
 .cart-count-bubble {
   position: absolute;
   background-color: rgb(var(--color-button));
   color: rgb(var(--color-button-text));
   height: 1.7rem;
   width: 1.7rem;
   border-radius: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
   font-size: 0.9rem;
   bottom: 0.8rem;
   left: 2.2rem;
   line-height: calc(1 + 0.1 / var(--font-body-scale));

}
 /* utility-bar */ .utility-bar {
   height: 100%;

}
 .utility-bar--bottom-border {
   border-bottom: 0.1rem solid rgba(var(--color-foreground),  0.08);

}
 @media screen and (min-width: 990px) {
   .utility-bar--bottom-border-social-only {
     border-bottom: 0.1rem solid rgba(var(--color-foreground),  0.08);

  }

}
 .utility-bar__grid {
   display: grid;
   grid-template-columns: 1fr;
   grid-template-areas: 'announcements';

}
 .utility-bar__grid .list-social {
   justify-content: flex-start;
   align-content: center;
   margin-left: -1.2rem;
   grid-area: social-icons;

}
 @media screen and (max-width: 989px) {
   .utility-bar .utility-bar__grid .list-social {
     display: none;

  }

}
 .utility-bar .list-social__item .icon {
   scale: 0.9;

}
 @media screen and (min-width: 990px) {
   .utility-bar__grid--3-col {
     grid-template-columns: 3fr 4fr 3fr;
     grid-template-areas: 'social-icons announcements language-currency';

  }
   .utility-bar__grid--2-col {
     grid-template-columns: 1fr 1fr;
     grid-template-areas: 'social-icons language-currency';

  }
   .announcement-bar.announcement-bar--one-announcement,  .announcement-bar--one-announcement .announcement-bar__link {
     width: fit-content;
     margin: auto;

  }

}
 .announcement-bar,  .announcement-bar__announcement {
   color: rgb(var(--color-foreground));
   width: 100%;
   height: 100%;
   display: flex;
   justify-content: center;
   flex-wrap: wrap;
   align-content: center;
   grid-area: announcements;

}
 .announcement-bar .slider--everywhere {
   margin-bottom: 0;
   scroll-behavior: auto;

}
 .utility-bar__grid .announcement-bar-slider {
   width: 100%;

}
 .utility-bar__grid .announcement-bar-slider {
   width: 100%;

}
 .announcement-bar-slider,  .announcement-bar-slider .slider {
   width: 100%;

}
 .announcement-bar .slider-button--next {
   margin-right: -1.5rem;
   min-width: 44px;

}
 .announcement-bar .slider-button--prev {
   margin-left: -1.5rem;
   min-width: 44px;

}
 .announcement-bar .slider-button--next:focus-visible,  .announcement-bar .slider-button--prev:focus-visible,  .utility-bar .list-social__link:focus-visible {
   outline-offset: -0.3rem;
   box-shadow: 0 0 0 -0.2rem rgb(var(--color-foreground));

}
 .localization-wrapper {
   grid-area: language-currency;
   align-self: center;
   display: flex;
   justify-content: flex-end;

}
 .localization-wrapper .localization-selector + .disclosure__list-wrapper {
   animation: animateMenuOpen var(--duration-default) ease;

}
 .utility-bar .localization-wrapper .disclosure .localization-form__select,  .utility-bar .localization-wrapper .disclosure__link {
   font-size: calc(var(--font-heading-scale) * 1.3rem);

}
 @media screen and (min-width: 990px) {
   body:has(.section-header .header:not(.drawer-menu)) .utility-bar .page-width {
     padding-left: 5rem;
     padding-right: 5rem;

  }
   .announcement-bar-slider {
     width: 60%;

  }
   .announcement-bar .slider-button {
     height: 3.8rem;

  }

}
 .announcement-bar__link {
   display: flex;
   width: 100%;
   text-decoration: none;
   height: 100%;
   justify-content: center;
   align-items: center;

}
 .announcement-bar__link:hover {
   text-decoration: underline;

}
 .announcement-bar__link .icon-arrow {
   display: inline-block;
   pointer-events: none;
   margin-left: 0.8rem;
   vertical-align: middle;
   margin-bottom: 0.2rem;

}
 .announcement-bar__message {
   text-align: center;
   padding: 1rem 0;
   margin: 0;
   letter-spacing: 0.1rem;
   min-height: 3.8rem;

}
 .announcement-bar-slider--fade-in-next .announcement-bar__message,  .announcement-bar-slider--fade-in-previous .announcement-bar__message,  .announcement-bar-slider--fade-out-next .announcement-bar__message,  .announcement-bar-slider--fade-out-previous .announcement-bar__message {
   animation-duration: var(--duration-announcement-bar);
   animation-timing-function: ease-in-out;
   animation-fill-mode: forwards;

}
 .announcement-bar-slider--fade-in-next .announcement-bar__message {
   --announcement-translate-from: -1.5rem;
   /* Prevent flicker */ opacity: 0;
   animation-name: translateAnnouncementSlideIn;
   animation-delay: var(--duration-announcement-bar);

}
 .announcement-bar-slider--fade-in-previous .announcement-bar__message {
   --announcement-translate-from: 1.5rem;
   /* Prevent flicker */ opacity: 0;
   animation-name: translateAnnouncementSlideIn;
   animation-delay: var(--duration-announcement-bar);

}
 .announcement-bar-slider--fade-out-next .announcement-bar__message {
   --announcement-translate-to: 1.5rem;
   animation-name: translateAnnouncementSlideOut;

}
 .announcement-bar-slider--fade-out-previous .announcement-bar__message {
   --announcement-translate-to: -1.5rem;
   animation-name: translateAnnouncementSlideOut;

}
 @keyframes translateAnnouncementSlideIn {
   0% {
     opacity: 0;
     transform: translateX(var(--announcement-translate-from));

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

  }

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

  }
   100% {
     opacity: 0;
     transform: translateX(var(--announcement-translate-to));

  }

}
 /* section-header */ .section-header.shopify-section-group-header-group {
   z-index: 3;

}
 .shopify-section-header-sticky {
   position: sticky;
   top: 0;

}
 .shopify-section-header-hidden {
   top: calc(-1 * var(--header-height));

}
 .shopify-section-header-hidden.menu-open {
   top: 0;

}
 .section-header.animate {
   transition: top 0.15s ease-out;

}
 .shopify-section-group-header-group {
   z-index: 4;

}
 .section-header ~ .shopify-section-group-header-group {
   z-index: initial;

}
 /* Main Header Layout */ .header-wrapper {
   display: block;
   position: relative;

}
 .header-wrapper--border-bottom {
   border-bottom: 0.1rem solid rgba(var(--color-foreground),  0.08);

}
 .header {
   display: grid;
   grid-template-areas: 'left-icons heading icons';
   grid-template-columns: 1fr 2fr 1fr;
   align-items: center;

}
 @media screen and (max-width: 749px) {
   .header--has-app {
     grid-template-columns: auto 1fr auto;

  }

}
 @media screen and (min-width: 990px) {
   .header {
     grid-template-columns: 1fr auto 1fr;

  }
   .header--top-left,  .header--middle-left:not(.header--has-menu) {
     grid-template-areas: 'heading icons' 'navigation navigation';
     grid-template-columns: 1fr auto;

  }
   .header--top-left.drawer-menu,  .header--middle-left.drawer-menu {
     grid-template-areas: 'navigation heading icons';
     grid-template-columns: auto 1fr auto;
     column-gap: 1rem;

  }
   .header--middle-left {
     grid-template-areas: 'heading navigation icons';
     grid-template-columns: auto auto 1fr;
     column-gap: 2rem;

  }
   .header--middle-center:not(.drawer-menu) {
     grid-template-areas: 'navigation heading icons';
     grid-template-columns: 1fr auto 1fr;
     column-gap: 2rem;

  }
   .header--middle-center a.header__heading-link {
     text-align: center;

  }
   .header--top-center {
     grid-template-areas: 'left-icons heading icons' 'navigation navigation navigation';

  }
   .header--top-center.drawer-menu {
     grid-template-areas: 'left-icons heading icons';
     grid-template-columns: 1fr auto 1fr;

  }
   .header:not(.header--middle-left,  .header--middle-center) .header__inline-menu {
     margin-top: 1.05rem;

  }

}
 .header *[tabindex='-1']:focus {
   outline: none;

}
 .header__heading {
   margin: 0;
   line-height: 0;

}
 .header > .header__heading-link {
   line-height: 0;

}
 .header__heading,  .header__heading-link {
   grid-area: heading;
   justify-self: center;

}
 .header__heading-link {
   display: inline-block;
   padding: 0.75rem;
   text-decoration: none;
   word-break: break-word;

}
 .header__heading-link:hover .h2 {
   color: rgb(var(--color-foreground));

}
 .header__heading-link .h2 {
   line-height: 1;
   color: rgba(var(--color-foreground),  0.75);

}
 .header__heading-logo {
   height: auto;
   max-width: 100%;

}
 .header__heading-logo-wrapper {
   width: 100%;
   display: inline-block;
   transition: width 0.3s cubic-bezier(0.52,  0,  0.61,  0.99);

}
 @media screen and (max-width: 989px) {
   .header__heading,  .header__heading-link {
     text-align: center;

  }
   .header--mobile-left .header__heading,  .header--mobile-left .header__heading-link {
     text-align: left;
     justify-self: start;

  }
   .header--mobile-left {
     grid-template-columns: auto 2fr 1fr;

  }

}
 @media screen and (min-width: 990px) {
   .header--middle-left .header__heading-link,  .header--top-left .header__heading-link {
     margin-left: -0.75rem;

  }
   .header__heading,  .header__heading-link {
     justify-self: start;

  }
   .header--middle-center .header__heading-link,  .header--middle-center .header__heading {
     justify-self: center;
     text-align: center;

  }
   .header--top-center .header__heading-link,  .header--top-center .header__heading {
     justify-self: center;
     text-align: center;

  }

}
 /* Header icons */ .header__icons {
   display: flex;
   grid-area: icons;
   justify-self: end;
   padding-right: 0.8rem;

}
 .header__icons .shopify-app-block {
   max-width: 4.4rem;
   max-height: 4.4rem;
   overflow: hidden;

}
 .header__icon:not(.header__icon--summary),  .header__icon span {
   display: flex;
   align-items: center;
   justify-content: center;

}
 .header__icon {
   color: rgb(var(--color-foreground));

}
 .header__icon span {
   height: 100%;

}
 .header__icon .svg-wrapper {
   width: 44px;
   height: 44px;

}
 .header__icon::after {
   content: none;

}
 .header__icon:hover .icon,  .modal__close-button:hover .icon {
   transform: scale(1.07);

}
 .header__icon .icon {
   height: 2rem;
   width: 2rem;
   fill: none;
   vertical-align: middle;

}
 .header__icon,  .header__icon--cart .icon {
   height: 4.4rem;
   width: 4.4rem;
   padding: 0;

}
 .header__icon--cart {
   position: relative;
   margin-right: -1.2rem;

}
 .header__icon--menu[aria-expanded='true']::before {
   content: '';
   top: 100%;
   left: 0;
   height: calc(var(--viewport-height,  100vh) - (var(--header-bottom-position,  100%)));
   width: 100%;
   display: block;
   position: absolute;
   background: rgba(var(--color-foreground),  0.5);

}
 .header__icon--account shop-user-avatar {
   --shop-avatar-size: 2.8rem;

}
 details .header__icon-close {
   display: none;

}
 details[open] .header__icon-close {
   display: inline-block;

}
 account-icon {
   display: flex;

}
 /* Search */ menu-drawer + .header__search {
   display: none;

}
 .header > .header__search {
   grid-area: left-icons;
   justify-self: start;

}
 .header--top-center.drawer-menu > .header__search {
   margin-left: 3.2rem;

}
 .header--top-center header-drawer {
   grid-area: left-icons;

}
 .header:not(.header--has-menu) * > .header__search {
   display: none;

}
 .header__search {
   display: inline-flex;
   line-height: 0;

}
 .header--top-center > .header__search {
   display: none;

}
 .header--top-center * > .header__search {
   display: inline-flex;

}
 @media screen and (min-width: 990px) {
   .header:not(.header--top-center) * > .header__search,  .header--top-center > .header__search {
     display: inline-flex;

  }
   .header:not(.header--top-center) > .header__search,  .header--top-center * > .header__search {
     display: none;

  }

}
 details[open] > .search-modal {
   opacity: 1;
   animation: animateMenuOpen var(--duration-default) ease;

}
 details[open] .modal-overlay {
   display: block;

}
 details[open] .modal-overlay::after {
   position: absolute;
   content: '';
   background-color: rgb(var(--color-foreground),  0.5);
   top: 100%;
   left: 0;
   right: 0;
   height: 100vh;

}
 .search-modal {
   opacity: 0;
   border-bottom: 0.1rem solid rgba(var(--color-foreground),  0.08);
   min-height: calc(100% + var(--inputs-margin-offset) + (2 * var(--inputs-border-width)));
   height: 100%;

}
 .search-modal__content {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 100%;
   height: 100%;
   padding: 0 5rem 0 1rem;
   line-height: calc(1 + 0.8 / var(--font-body-scale));
   position: relative;

}
 .search-modal__content-bottom {
   bottom: calc((var(--inputs-margin-offset) / 2));

}
 .search-modal__content-top {
   top: calc((var(--inputs-margin-offset) / 2));

}
 .search-modal__form {
   width: 100%;

}
 .search-modal__close-button {
   position: absolute;
   right: 0.3rem;

}
 @media screen and (min-width: 750px) {
   .search-modal__close-button {
     right: 1rem;

  }
   .search-modal__content {
     padding: 0 6rem;

  }

}
 @media screen and (min-width: 990px) {
   .search-modal__form {
     max-width: 74.2rem;

  }
   .search-modal__close-button {
     position: initial;
     margin-left: 0.5rem;

  }

}
 /* Header menu drawer */ .header__icon--menu .icon {
   display: block;
   position: absolute;
   opacity: 1;
   transform: scale(1);
   transition: transform 150ms ease,  opacity 150ms ease;

}
 details:not([open]) > .header__icon--menu .icon-close,  details[open] > .header__icon--menu .icon-hamburger {
   visibility: hidden;
   opacity: 0;
   transform: scale(0.8);

}
 .js details[open]:not(.menu-opening) > .header__icon--menu .icon-close {
   visibility: hidden;

}
 .js details[open]:not(.menu-opening) > .header__icon--menu .icon-hamburger {
   visibility: visible;
   opacity: 1;
   transform: scale(1.07);

}
 .js details > .header__submenu {
   opacity: 0;
   transform: translateY(-1.5rem);

}
 details[open] > .header__submenu {
   animation: animateMenuOpen var(--duration-default) ease;
   animation-fill-mode: forwards;
   z-index: 1;

}
 @media (prefers-reduced-motion) {
   details[open] > .header__submenu {
     opacity: 1;
     transform: translateY(0);

  }

}
 /* Header menu */ .header__inline-menu {
   margin-left: -1.2rem;
   grid-area: navigation;
   display: none;

}
 .header--top-center .header__inline-menu,  .header--top-center .header__heading-link {
   margin-left: 0;

}
 @media screen and (min-width: 990px) {
   .header__inline-menu {
     display: block;

  }
   .header--top-center .header__inline-menu {
     justify-self: center;

  }
   .header--top-center .header__inline-menu > .list-menu--inline {
     justify-content: center;

  }
   .header--middle-left .header__inline-menu {
     margin-left: 0;

  }

}
 .header__menu {
   padding: 0 1rem;

}
 .header__menu-item {
   padding: 1.2rem;
   text-decoration: none;
   color: rgba(var(--color-foreground),  0.75);

}
 .header__menu-item:hover {
   color: rgb(var(--color-foreground));

}
 .header__menu-item span {
   transition: text-decoration var(--duration-short) ease;

}
 .header__menu-item:hover span {
   text-decoration: underline;
   text-underline-offset: 0.3rem;

}
 details[open] > .header__menu-item {
   text-decoration: underline;

}
 details[open]:hover > .header__menu-item {
   text-decoration-thickness: 0.2rem;

}
 details[open] > .header__menu-item .icon-caret {
   transform: rotate(180deg);

}
 .header__active-menu-item {
   transition: text-decoration-thickness var(--duration-short) ease;
   color: rgb(var(--color-foreground));
   text-decoration: underline;
   text-underline-offset: 0.3rem;

}
 .header__menu-item:hover .header__active-menu-item {
   text-decoration-thickness: 0.2rem;

}
 .header__submenu {
   transition: opacity var(--duration-default) ease,  transform var(--duration-default) ease;

}
 .global-settings-popup,  .header__submenu.global-settings-popup {
   border-radius: var(--popup-corner-radius);
   border-color: rgba(var(--color-foreground),  var(--popup-border-opacity));
   border-style: solid;
   border-width: var(--popup-border-width);
   box-shadow: var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow),  var(--popup-shadow-opacity));
   z-index: -1;

}
 .header__submenu.list-menu {
   padding: 1rem 0;

}
 .header__submenu .header__submenu {
   background-color: rgba(var(--color-foreground),  0.03);
   padding: 1rem 0;
   margin: 1rem 0;

}
 .header__submenu .header__menu-item:after {
   right: 2rem;

}
 .header__submenu .header__menu-item {
   justify-content: space-between;
   padding: 0.8rem 2rem;

}
 .header__submenu .header__menu-item:hover {
   text-decoration-line: underline;

}
 .header__menu-item .icon-caret {
   right: 0.8rem;

}
 .header__submenu .icon-caret {
   flex-shrink: 0;
   margin-left: 1rem;
   position: static;

}
 header-menu > details,  details-disclosure > details {
   position: relative;

}
 @keyframes animateMenuOpen {
   0% {
     opacity: 0;
     transform: translateY(-1.5rem);

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

  }

}
 .overflow-hidden-mobile,  .overflow-hidden-tablet,  .overflow-hidden-desktop {
   overflow: hidden;

}
 @media screen and (min-width: 750px) {
   .overflow-hidden-mobile {
     overflow: auto;

  }

}
 @media screen and (min-width: 990px) {
   .overflow-hidden-tablet {
     overflow: auto;

  }

}
 .badge {
   border: 1px solid transparent;
   border-radius: var(--badge-corner-radius);
   display: inline-block;
   font-size: 1.2rem;
   letter-spacing: 0.1rem;
   line-height: 1;
   padding: 0.5rem 1.3rem 0.6rem 1.3rem;
   text-align: center;
   background-color: rgb(var(--color-badge-background));
   border-color: rgba(var(--color-badge-border),  var(--alpha-badge-border));
   color: rgb(var(--color-badge-foreground));
   word-break: break-word;

}
 .gradient {
   background: rgb(var(--color-background));
   background: var(--gradient-background);
   background-attachment: fixed;

}
 @media screen and (forced-colors: active) {
   .icon {
     color: CanvasText;
     fill: CanvasText !important;

  }
   .icon-close-small path {
     stroke: CanvasText;

  }

}
 .ratio {
   display: flex;
   position: relative;
   align-items: stretch;

}
 .ratio::before {
   content: '';
   width: 0;
   height: 0;
   padding-bottom: var(--ratio-percent);

}
 .content-container {
   border-radius: var(--text-boxes-radius);
   border: var(--text-boxes-border-width) solid rgba(var(--color-foreground),  var(--text-boxes-border-opacity));
   position: relative;

}
 .content-container:after {
   content: '';
   position: absolute;
   top: calc(var(--text-boxes-border-width) * -1);
   right: calc(var(--text-boxes-border-width) * -1);
   bottom: calc(var(--text-boxes-border-width) * -1);
   left: calc(var(--text-boxes-border-width) * -1);
   border-radius: var(--text-boxes-radius);
   box-shadow: var(--text-boxes-shadow-horizontal-offset) var(--text-boxes-shadow-vertical-offset) var(--text-boxes-shadow-blur-radius) rgba(var(--color-shadow),  var(--text-boxes-shadow-opacity));
   z-index: -1;

}
 .content-container--full-width:after {
   left: 0;
   right: 0;
   border-radius: 0;

}
 @media screen and (max-width: 749px) {
   .content-container--full-width-mobile {
     border-left: none;
     border-right: none;
     border-radius: 0;

  }
   .content-container--full-width-mobile:after {
     display: none;

  }

}
 .global-media-settings {
   position: relative;
   border: var(--media-border-width) solid rgba(var(--color-foreground),  var(--media-border-opacity));
   border-radius: var(--media-radius);
   overflow: visible !important;
   background-color: rgb(var(--color-background));

}
 .global-media-settings:after {
   content: '';
   position: absolute;
   top: calc(var(--media-border-width) * -1);
   right: calc(var(--media-border-width) * -1);
   bottom: calc(var(--media-border-width) * -1);
   left: calc(var(--media-border-width) * -1);
   border-radius: var(--media-radius);
   box-shadow: var(--media-shadow-horizontal-offset) var(--media-shadow-vertical-offset) var(--media-shadow-blur-radius) rgba(var(--color-shadow),  var(--media-shadow-opacity));
   z-index: -1;
   pointer-events: none;

}
 .global-media-settings--no-shadow {
   overflow: hidden !important;

}
 .global-media-settings--no-shadow:after {
   content: none;

}
 .global-media-settings img,  .global-media-settings iframe,  .global-media-settings model-viewer,  .global-media-settings video,  .global-media-settings .placeholder-svg {
   border-radius: calc(var(--media-radius) - var(--media-border-width));

}
 .content-container--full-width,  .global-media-settings--full-width,  .global-media-settings--full-width img,  .global-media-settings--full-width video,  .global-media-settings--full-width iframe,  .global-media-settings--full-width .placeholder-svg {
   border-radius: 0;
   border-left: none;
   border-right: none;

}
 /* check for flexbox gap in older Safari versions */ @supports not (inset: 10px) {
   .grid {
     margin-left: calc(-1 * var(--grid-mobile-horizontal-spacing));

  }
   .grid__item {
     padding-left: var(--grid-mobile-horizontal-spacing);
     padding-bottom: var(--grid-mobile-vertical-spacing);

  }
   @media screen and (min-width: 750px) {
     .grid {
       margin-left: calc(-1 * var(--grid-desktop-horizontal-spacing));

    }
     .grid__item {
       padding-left: var(--grid-desktop-horizontal-spacing);
       padding-bottom: var(--grid-desktop-vertical-spacing);

    }

  }
   .grid--gapless .grid__item {
     padding-left: 0;
     padding-bottom: 0;

  }
   @media screen and (min-width: 749px) {
     .grid--peek .grid__item {
       padding-left: var(--grid-mobile-horizontal-spacing);

    }

  }
   .product-grid .grid__item {
     padding-bottom: var(--grid-mobile-vertical-spacing);

  }
   @media screen and (min-width: 750px) {
     .product-grid .grid__item {
       padding-bottom: var(--grid-desktop-vertical-spacing);

    }

  }

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

}
 /* outline and border styling for Windows High Contrast Mode */ @media (forced-colors: active) {
   .button,  .shopify-challenge__button,  .customer button {
     border: transparent solid 1px;

  }
   .button:focus-visible,  .button:focus,  .button.focused,  .shopify-payment-button__button--unbranded:focus-visible,  .shopify-payment-button [role='button']:focus-visible,  .shopify-payment-button__button--unbranded:focus,  .shopify-payment-button [role='button']:focus {
     outline: solid transparent 1px;

  }
   .field__input:focus,  .select__select:focus,  .customer .field input:focus,  .customer select:focus,  .localization-form__select:focus.localization-form__select:after {
     outline: transparent solid 1px;

  }
   .localization-form__select:focus {
     outline: transparent solid 1px;

  }

}
 .rte:after {
   clear: both;
   content: '';
   display: block;

}
 .rte > *:first-child {
   margin-top: 0;

}
 .rte > *:last-child {
   margin-bottom: 0;

}
 .rte table {
   table-layout: fixed;

}
 @media screen and (min-width: 750px) {
   .rte table td {
     padding-left: 1.2rem;
     padding-right: 1.2rem;

  }

}
 .rte img {
   height: auto;
   max-width: 100%;
   border: var(--media-border-width) solid rgba(var(--color-foreground),  var(--media-border-opacity));
   border-radius: var(--media-radius);
   box-shadow: var(--media-shadow-horizontal-offset) var(--media-shadow-vertical-offset) var(--media-shadow-blur-radius) rgba(var(--color-shadow),  var(--media-shadow-opacity));
   margin-bottom: var(--media-shadow-vertical-offset);

}
 .rte ul,  .rte ol {
   list-style-position: inside;
   padding-left: 2rem;

}
 .rte li {
   list-style: inherit;

}
 .rte li:last-child {
   margin-bottom: 0;

}
 .rte a {
   color: rgba(var(--color-link),  var(--alpha-link));
   text-underline-offset: 0.3rem;
   text-decoration-thickness: 0.1rem;
   transition: text-decoration-thickness var(--duration-short) ease;

}
 .rte a:hover {
   color: rgb(var(--color-link));
   text-decoration-thickness: 0.2rem;

}
 .rte blockquote {
   display: inline-flex;

}
 .rte blockquote > * {
   margin: -0.5rem 0 -0.5rem 0;

}
 /* Image mask global styles */ .shape--mask {
   display: block;
   height: 0;
   width: 0;

}
 .shape--arch {
   clip-path: url('#Shape-Arch');

}
 .shape--blob {
   clip-path: polygon(var(--shape--blob-1));

}
 .shape--chevronleft {
   clip-path: polygon(100% 0%,  85% 50%,  100% 100%,  15% 100%,  0% 50%,  15% 0%);

}
 .shape--chevronright {
   clip-path: polygon(85% 0%,  100% 50%,  85% 100%,  0% 100%,  15% 50%,  0% 0%);

}
 .shape--circle {
   clip-path: circle(closest-side);

}
 .shape--diamond {
   clip-path: polygon(50% 0%,  100% 50%,  50% 100%,  0% 50%);

}
 .shape--parallelogram {
   clip-path: polygon(15% 0,  100% 0%,  85% 100%,  0% 100%);

}
 .shape--round {
   clip-path: ellipse(45% 45% at 50% 50%);

}
 /* Fixed background */ .animate--fixed {
   clip-path: inset(0);

}
 .animate--fixed > img:not(.zoom):not(.deferred-media__poster-button),  .animate--fixed > svg:not(.zoom):not(.deferred-media__poster-button) {
   position: fixed;
   height: 100vh;

}
 /* Zoom in image on scroll */ .animate--zoom-in {
   --zoom-in-ratio: 1;

}
 .animate--zoom-in > img,  .animate--zoom-in > .svg-wrapper {
   transition: scale var(--duration-short) linear;
   scale: var(--zoom-in-ratio);

}
 /* Animations */ @media (prefers-reduced-motion: no-preference) {
   .animate--ambient > img,  .animate--ambient > .svg-wrapper {
     animation: animateAmbient 30s linear infinite;

  }
   @keyframes animateAmbient {
     0% {
       transform: rotate(0deg) translateX(1em) rotate(0deg) scale(1.2);

    }
     100% {
       transform: rotate(360deg) translateX(1em) rotate(-360deg) scale(1.2);

    }

  }
   .scroll-trigger.animate--fade-in,  .scroll-trigger.animate--slide-in {
     opacity: 0.01;

  }
   .scroll-trigger.animate--slide-in {
     transform: translateY(2rem);

  }
   .scroll-trigger:not(.scroll-trigger--offscreen).animate--fade-in {
     opacity: 1;
     animation: var(--animation-fade-in);

  }
   .scroll-trigger:not(.scroll-trigger--offscreen).animate--slide-in {
     animation: var(--animation-slide-in);
     animation-delay: calc(var(--animation-order) * 75ms);

  }
   .scroll-trigger.scroll-trigger--design-mode.animate--fade-in,  .scroll-trigger.scroll-trigger--design-mode.animate--slide-in,  .scroll-trigger.scroll-trigger--design-mode .slider,  .scroll-trigger:not(.scroll-trigger--offscreen).scroll-trigger--cancel {
     opacity: 1;
     animation: none;
     transition: none;
     transform: none;

  }
   .scroll-trigger.scroll-trigger--design-mode.animate--slide-in {
     transform: translateY(0);

  }
   @keyframes slideIn {
     from {
       transform: translateY(2rem);
       opacity: 0.01;

    }
     to {
       transform: translateY(0);
       opacity: 1;

    }

  }
   @keyframes fadeIn {
     from {
       opacity: 0.01;

    }
     to {
       opacity: 1;

    }

  }

}
 /* Element Hovers: Vertical Lift, 3d Lift */ @media (prefers-reduced-motion: no-preference) and (hover: hover) {
   .animate--hover-3d-lift .card-wrapper .card--card,  .animate--hover-3d-lift .card-wrapper .card--standard .card__inner,  .animate--hover-3d-lift .button:not(.button--tertiary),  .animate--hover-3d-lift .shopify-challenge__button,  .animate--hover-3d-lift .customer button,  .animate--hover-3d-lift .shopify-payment-button__button,  .animate--hover-3d-lift .deferred-media .deferred-media__poster-button {
     transition: transform var(--duration-long) ease,  box-shadow var(--duration-long) ease;
     transform-origin: center;

  }
   .animate--hover-3d-lift .card-wrapper:hover .card--card,  .animate--hover-3d-lift .card-wrapper:hover .card--standard .card__inner,  .animate--hover-3d-lift .button:not(.button--tertiary):not([disabled]):hover,  .animate--hover-3d-lift .shopify-challenge__button:not([disabled]):hover,  .animate--hover-3d-lift .customer button:not([disabled]):hover,  .animate--hover-3d-lift .shopify-payment-button__button:hover,  .animate--hover-3d-lift .deferred-media:hover .deferred-media__poster-button {
     transition: transform var(--duration-extended) ease,  box-shadow var(--duration-long) ease;
     /* Slow the card transition speed while hover is active. */ transform: rotate(1deg);
     box-shadow: -1rem -1rem 1rem -1rem rgba(0,  0,  0,  0.05),  1rem 1rem 1rem -1rem rgba(0,  0,  0,  0.05),  0 0 0.5rem 0 rgba(255,  255,  255,  0),  0 2rem 3.5rem -2rem rgba(0,  0,  0,  0.5);

  }
   .animate--hover-3d-lift .deferred-media:hover .deferred-media__poster-button {
     transform: translate(-50%,  -50%) scale(1.05);
     /* Apply a specialized transform to the video play button. */
  }
   .animate--hover-3d-lift .collage__item .card-wrapper:hover .card--card,  .animate--hover-3d-lift .collage__item .card-wrapper:hover .card--standard .card__inner {
     transform: rotate(0.5deg);
     /* Less intense rotation for collage items. */
  }
   .animate--hover-3d-lift .product-grid .grid__item:hover,  .animate--hover-3d-lift .collection-list .grid__item:hover,  .animate--hover-3d-lift .collage__item:hover,  .animate--hover-3d-lift .blog-articles .article:hover,  .animate--hover-3d-lift .complementary-slide li:hover {
     z-index: 2;
     /* Make sure the hovered card is the topmost card. */
  }
   .animate--hover-3d-lift .product-grid {
     isolation: isolate;
     /* Ensure z-index changes here don't negatively effect other UI stacking. */
  }
   .animate--hover-3d-lift .card-wrapper .card--shape.card--standard:not(.card--text) .card__inner {
     box-shadow: none;
     transition: transform var(--duration-long) ease,  filter var(--duration-long) ease;

  }
   .animate--hover-3d-lift .card-wrapper:hover .card--shape.card--standard:not(.card--text) .card__inner {
     transition: transform calc(2 * var(--duration-extended)) ease,  filter var(--duration-long) ease;
     /* Slow the card transition speed while hover is active. */ filter: drop-shadow(0rem 2rem 2rem rgba(0,  0,  0,  0.15)) drop-shadow(0rem 1rem 1rem rgba(0,  0,  0,  0.15));

  }
   .animate--hover-3d-lift .card-wrapper:hover .card--card:after,  .animate--hover-3d-lift .card-wrapper:hover .card--standard .card__inner:after,  .animate--hover-3d-lift .card-wrapper:hover .card--shape.card--standard:not(.card--text) .card__inner .card__media:before {
     background-image: var(--easter-egg);
     background-size: 250px 250px;
     mix-blend-mode: color-dodge;
     pointer-events: none;
     z-index: 2;

  }
   .animate--hover-3d-lift .card-wrapper:hover .card--shape.card--standard:not(.card--text) .card__inner .card__media:before {
     content: '';
     position: absolute;
     top: 0;
     bottom: 0;
     left: 0;
     right: 0;

  }
   .animate--hover-3d-lift .card-wrapper .card--card:before,  .animate--hover-3d-lift .card-wrapper .card--standard .card__media:after {
     content: '';
     position: absolute;
     top: 0;
     right: 0;
     bottom: 0;
     left: 0;
     opacity: 0;
     pointer-events: none;
     transition: background-position calc(2 * var(--duration-extended)) ease,  opacity var(--duration-default) ease;
     mix-blend-mode: overlay;
     background-size: 400% 100%;
     background-position: 90% 0;
     background-repeat: no-repeat;
     background-image: linear-gradient( 135deg,  rgba(255,  255,  255,  0) 45%,  rgba(255,  255,  255,  1) 50%,  rgba(255,  255,  255,  0) 55% );

  }
   .animate--hover-3d-lift .card-wrapper:hover .card--card:before,  .animate--hover-3d-lift .card-wrapper:hover .card--standard .card__media:after {
     opacity: 0.2;
     transition: background-position 6s ease,  opacity var(--duration-long) ease;
     background-position: left;
     z-index: 2;

  }
   :root {
     --easter-egg: none;
     --sparkle: url('./sparkle.gif');

  }
   .animate--hover-vertical-lift .button:not(.button--tertiary),  .animate--hover-vertical-lift .shopify-challenge__button,  .animate--hover-vertical-lift .customer button,  .animate--hover-vertical-lift .shopify-payment-button__button {
     transition: transform var(--duration-default) var(--ease-out-slow);

  }
   .animate--hover-vertical-lift .card-wrapper .card--card,  .animate--hover-vertical-lift .card-wrapper .card--standard .card__inner {
     transition: transform var(--duration-medium) var(--ease-out-slow);

  }
   .animate--hover-vertical-lift .card-wrapper:hover .card--card,  .animate--hover-vertical-lift .card-wrapper:hover .card--standard .card__inner {
     transform: translateY(-0.75rem);

  }
   .animate--hover-vertical-lift .card-wrapper:active .card--card,  .animate--hover-vertical-lift .card-wrapper:active .card--standard .card__inner {
     transform: translateY(-0.5rem);

  }
   .animate--hover-vertical-lift .button:not(.button--tertiary):not([disabled]):hover,  .animate--hover-vertical-lift .shopify-challenge__button:not([disabled]):hover,  .animate--hover-vertical-lift .customer button:not([disabled]):hover,  .animate--hover-vertical-lift .shopify-payment-button__button:hover {
     transform: translateY(-0.25rem);

  }
   .animate--hover-vertical-lift .button:not([disabled]).button--secondary:hover:after {
     --border-offset: 0px;
     /* Prevent the border from growing on buttons when this effect is on. */
  }

}
 /* Loading spinner */ .loading__spinner {
   position: absolute;
   z-index: 1;
   width: 1.8rem;

}
 .loading__spinner {
   width: 1.8rem;
   display: inline-block;

}
 .spinner {
   animation: rotator 1.4s linear infinite;

}
 @keyframes rotator {
   0% {
     transform: rotate(0deg);

  }
   100% {
     transform: rotate(270deg);

  }

}
 .path {
   stroke-dasharray: 280;
   stroke-dashoffset: 0;
   transform-origin: center;
   stroke: rgb(var(--color-foreground));
   animation: dash 1.4s ease-in-out infinite;

}
 @media screen and (forced-colors: active) {
   .path {
     stroke: CanvasText;

  }

}
 @keyframes dash {
   0% {
     stroke-dashoffset: 280;

  }
   50% {
     stroke-dashoffset: 75;
     transform: rotate(135deg);

  }
   100% {
     stroke-dashoffset: 280;
     transform: rotate(450deg);

  }

}
 .loading__spinner:not(.hidden) + .cart-item__price-wrapper,  .loading__spinner:not(.hidden) ~ cart-remove-button {
   opacity: 50%;

}
 .loading__spinner:not(.hidden) ~ cart-remove-button {
   pointer-events: none;
   cursor: default;

}
 /* Progress bar */ .progress-bar-container {
   width: 100%;
   margin: auto;

}
 .progress-bar {
   height: 0.13rem;
   width: 100%;

}
 .progress-bar-value {
   width: 100%;
   height: 100%;
   background-color: rgb(var(--color-foreground));
   animation: indeterminateAnimation var(--duration-extra-longer) infinite ease-in-out;
   transform-origin: 0;

}
 .progress-bar .progress-bar-value {
   display: block;

}
 @keyframes indeterminateAnimation {
   0% {
     transform: translateX(-20%) scaleX(0);

  }
   40% {
     transform: translateX(30%) scaleX(0.7);

  }
   100% {
     transform: translateX(100%) scaleX(0);

  }

}




 /* Subtle glow sweep (once every few seconds) */ @keyframes ccShimmer {
   0% {
     background-position: -200%;

  }
   100% {
     background-position: 200%;

  }

}
 .announcement-bar__message {
   background-size: 300%;
   animation: ccShimmer 8s ease-in-out infinite alternate;

}

 /* Responsive */ @media (max-width: 749px) {
   .announcement-bar__message {
     font-size: 14px;
     padding: 8px 16px;

  }
   html,  body {
     overflow-x: hidden;

  }

}
 /* shimmer once every 15s, then pause 15s */ .announcement-bar__message {
   animation: ccShimmer 15s ease-in-out 1 forwards;
   animation-delay: 15s;

}

 /* Give the sticky header a gentle shadow so it floats */ .shopify-section-header-sticky .header-wrapper {
   box-shadow: 0 6px 22px rgba(45,  21,  56,  0.10);

}
 /* Logo sizing (adjust as you like) */ .header__heading-logo {
   max-height: 64px;

}
 @media (min-width: 990px) {
   .header__heading-logo {
     max-height: 72px;

  }

}
 /* Add a small brand tagline under the logo (no extra markup needed) */ .header__heading-link::after {
   content: "Two sides of every love story";
   display: block;
   font-family: "Cinzel",  serif;
   font-weight: 600;
   font-size: 11px;
   letter-spacing: .06em;
   color: #6C4B8C;
   /* muted plum */ margin-top: 6px;
   opacity: .9;

}
 /* Navigation links: elegant weight + subtle gold underline on hover */ 
 .header__menu-item {
   font-family: "Cinzel",  serif;
   font-weight: 600;
   letter-spacing: .04em;
   color: #2d1538;
   position: relative;

}

 .header__menu-item span {
   text-decoration: none !important;

}
 .header__menu-item::after {
   content: "";
   position: absolute;
   left: 1.2rem;
   right: 1.2rem;
   bottom: .6rem;
   height: 2px;
   background: linear-gradient(90deg,  #DABF91,  #B79542);
   opacity: 0;
   transform: translateY(2px);
   transition: opacity .18s ease,  transform .18s ease;
   border-radius: 2px;

}
 .header__menu-item:hover::after,  .header__menu-item:focus::after,  .header__active-menu-item::after {
   opacity: 1;
   transform: translateY(0);

}

 /* Icons: darker stroke, nicer hover */ .header__icon .icon {
   stroke: #2d1538;

}
 .header__icon:hover .icon {
   transform: scale(1.07);

}
 /* Cart bubble in brand gold */ .cart-count-bubble {
   background-color: #DABF91;
   color: #2d1538;
   font-weight: 700;

}
 /* Search field (if you enable the full search bar) */ .search-modal__form input[type="search"] {
   border-radius: 999px;
   border: 2px solid rgba(81, 47, 115, .15);

}
 /* Mobile drawer menu styling */ header-drawer .menu-drawer {
   background: linear-gradient(180deg,  #FFF8F3,  #EEC7D6 55%,  #A477C1 100%);

}
 .menu-drawer__menu-item {
   font-family: "Cinzel",  serif;
   font-weight: 600;
   letter-spacing: .04em;

}
 .menu-drawer__menu-item:hover {
   background: rgba(81, 47, 115, .08);

}
 /* Ensure header is truly full-bleed to match the announcement bar */ .header.page-width {
   max-width: none !important;
   padding-left: 3.2rem;
   padding-right: 3.2rem;

}
 /* CC — Logo fix (no squish, consistent size) */ .header__heading-logo {
   height: auto !important;
   width: auto !important;
   max-height: 72px !important;
   /* tweak to 64–80px to taste */ max-width: 220px !important;
   object-fit: contain !important;

}
 .header__heading-logo-wrapper {
   width: auto !important;

}
 @media (max-width: 749px) {
   .header__heading-logo {
     max-height: 56px !important;
     max-width: 180px !important;

  }

}

 /* Make the header container full width so the gradient doesn't cap */ .header.page-width {
   max-width: none !important;
   padding-left: 3.2rem;
   padding-right: 3.2rem;

}
 /* CC — remove tagline under logo */ .header__heading-link::after {
   content: none !important;

}

 /* ==== CC | Final header + announcement fixes ==== */ /* 1) Make header container full-bleed (correct selector) */ .page-width .header {
   padding-left: 3.2rem !important;
   padding-right: 3.2rem !important;
   max-width: none !important;

}

}
 /* 3) Announcement shimmer: every 15s continuously */ @keyframes ccShimmer {
   0% {
     background-position: -200%;

  }
   100% {
     background-position: 200%;

  }

}

 /* 4) Logo sizing (keeps aspect, no squish) */ .header__heading-logo {
   height: auto !important;
   width: auto !important;
   max-height: 72px !important;
   max-width: 220px !important;
   object-fit: contain !important;

}
 .header__heading-logo-wrapper {
   width: auto !important;

}
 @media (max-width: 749px) {
   .header__heading-logo {
     max-height: 56px !important;
     max-width: 180px !important;

  }

}
 .header__menu-item span {
   text-decoration: none !important;

}
 .header__menu-item::after {
   content:"";
   position:absolute;
   left:1.2rem;
   right:1.2rem;
   bottom:.6rem;
   height:2px;
   background: linear-gradient(90deg, #DABF91, #B79542);
   opacity:0;
   transform: translateY(2px);
   transition: opacity .18s ease,  transform .18s ease;
   border-radius:2px;

}
 .header__menu-item:hover::after,  .header__menu-item:focus::after {
   opacity:1;
   transform: translateY(0);

}

 /* === CC | Larger Logo Adjustment === */ .header__heading-logo {
   max-height: 100px !important;
   /* increase height limit */ max-width: 260px !important;
   /* adjust width proportionally */ object-fit: contain !important;

}
 .header__heading-logo-wrapper {
   width: auto !important;
   height: auto !important;

}
 /* Keep alignment centered vertically with nav */ .header__heading-link {
   display: flex;
   align-items: center;

}
 /* Remove the thin hairline between announcement bar and header */ .search-modal {
   border-bottom: 0 !important;

}
 /* Also nuke any theme “bottom-border” variants just in case */ .utility-bar--bottom-border,  .utility-bar--bottom-border-social-only,  .header-wrapper--border-bottom {
   border-bottom: 0 !important;

}
 /* (optional) if your theme sneaks in a thin border on sticky states */ .shopify-section-header-sticky .header-wrapper {
   border: 0 !important;
   box-shadow: none !important;

}
 /* Kill the separator line under the announcement bar */ .utility-bar--bottom-border,  .utility-bar--bottom-border-social-only {
   border: none !important;
   border-bottom: 0 !important;

}
 /* Make sure the announcement + header touch each other */ .announcement-bar {
   margin-bottom: 0 !important;

}
 .header-wrapper {
   margin-top: 0 !important;

}
 /* Add space ABOVE the whole header group (adjust to taste) */ .shopify-section-group-header-group {
   padding-top: 0 !important;
   /* avoid internal gaps */ margin-top: 12px !important;
   /* 8–16px is a nice range */
}
 /* If any sticky style tries to re-add a divider, block it */ .shopify-section-header-sticky .header-wrapper {
   border: 0 !important;
   box-shadow: none !important;

}
 /* Remove the automatic gap between announcement and header */ .announcement-bar-section + .section-header,  .announcement-bar-section + .shopify-section-group-header-group,  .utility-bar + .section-header,  .section-header + .section-header {
   margin-top: 0 !important;

}
 /* And don't let either of these add a bottom margin */ .announcement-bar-section,  .section-header,  .shopify-section-group-header-group {
   margin-bottom: 0 !important;

}
 /* Nuke the top gap above the announcement/header */ .shopify-section-group-header-group,  .announcement-bar-section,  .header-wrapper,  .utility-bar {
   margin-top: 0 !important;
   padding-top: 0 !important;

}
 /* config */ :root {
   --cc-strip-h: 34px;
   /* exact line height (tweak 32–36 if needed) */ --cc-rot-sec: 12s;
   /* total cycle duration */
}


 /* viewport: must equal one line exactly */ .cc-viewport {
   height: var(--cc-strip-h);
   overflow: hidden;
   position: relative;

}
 /* the column stack we animate (ONE definition only) */ .cc-rotate {
   margin: 0;
   padding: 0;
   list-style: none;
   transform: translate3d(0, 0, 0);
   animation: ccRotateY var(--cc-rot-sec) steps(3,  end) infinite;
   /* 3 real messages */
}
 /* each message row MUST be exactly the viewport height */ .cc-rotate li {
   height: var(--cc-strip-h);
   line-height: var(--cc-strip-h);
   /* lock line box */ margin: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   white-space: nowrap;
   /* your typography */ font: 700 14px/1 "Cinzel",  serif;
   letter-spacing: .02em;
   color: #2d1538;
   text-shadow: 0 1px 0 rgba(255, 255, 255, .35);

}
 @keyframes ccRotateY {
   from {
     transform: translateY(0);

  }
   to {
     transform: translateY(calc(-1 * var(--cc-strip-h) * 3));

  }
   /* 3 real messages */
}
 .cc-rotate a {
   color: inherit;
   text-decoration: underline;
   text-decoration-color: rgba(45, 21, 56, 0.3);

}
 .cc-rotate a:hover {
   text-decoration-color: #2d1538;

}
 /* viewport line height and centering */ .cc-rotate-viewport {
   height: var(--cc-strip-h);
   line-height: var(--cc-strip-h);
   display:flex;
   align-items:center;
   justify-content:center;
   overflow:hidden;
   width: 100%;
   max-width: min(1200px,  92vw);
   padding: 0 10px;

}
 /* the column stack we animate */ .cc-rotate {
   display:flex;
   flex-direction:column;
   margin:0;
   padding:0;
   list-style:none;
   will-change: transform;
   /* 3 REAL messages + 1 duplicate of the first at the end */ .cc-rotate {
     transform: translate3d(0, 0, 0);
     animation: ccRotateY var(--cc-rot-sec) steps(3,  end) infinite;

  }
   @keyframes ccRotateY {
     from {
       transform: translateY(0);

    }
     to {
       transform: translateY(calc(-1 * var(--cc-strip-h) * 3));

    }
     /* 3 real messages */
  }
   /* each line must have EXACT height to avoid gaps */ .cc-rotate li {
     height: var(--cc-strip-h);
     line-height: var(--cc-strip-h);
     margin: 0;
     font: 700 14px/1 "Cinzel",  serif;
     /* force line-height:1; */ letter-spacing: .02em;
     display: flex;
     align-items: center;
     justify-content: center;
     white-space: nowrap;
     padding: 0 6px;
     color: #2d1538;
     text-shadow: 0 1px 0 rgba(255, 255, 255, .35);

  }

}
 .cc-rotate .cc-link {
   color: #2d1538;
   text-decoration: underline;
   text-underline-offset: 2px;

}
 /* move from item 1 down to the duplicate of item 1 */ @keyframes ccRotateSteps {
   from {
     transform: translateY(0);

  }
   to {
     transform: translateY(calc(-100% * var(--cc-steps)));

  }

}
 /* accessibility: stop animation if user prefers reduced motion */ @media (prefers-reduced-motion: reduce) {
   .cc-rotate {
     animation: none;

  }

}

 /* — Announcement Text & Links — */ .cc-rotate li {
   height: var(--cc-strip-h);
   line-height: var(--cc-strip-h);
   margin: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   white-space: nowrap;
   font: 600 14px/1 "Cinzel",  serif;
   letter-spacing: 0.03em;
   color: #2d1538;
   /* deep plum */ text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);

}
 /* — Link Styling — */ .cc-rotate a {
   color: #2d1538;
   text-decoration: none;
   position: relative;
   transition: all 0.4s ease-in-out;

}
 .cc-rotate a::after {
   content: "";
   position: absolute;
   bottom: -1px;
   left: 0;
   width: 100%;
   height: 1px;
   background: linear-gradient(90deg,  #d6b678,  #e9d79f,  #d6b678);
   opacity: 0;
   transform: scaleX(0);
   transform-origin: right;
   transition: all 0.4s ease-in-out;

}
 .cc-rotate a:hover {
   color: #b9924c;
   /* soft gold hover text */
}
 .cc-rotate a:hover::after {
   opacity: 1;
   transform: scaleX(1);
   transform-origin: left;

}


/* === Dropdown (soft blush-to-plum gradient, pill style) === */
.header__submenu {
  background: linear-gradient(135deg, #FCE9F0 0%, #F7AFC0 40%, #8C5A94 100%);
  border: 1px solid rgba(218, 191, 145, 0.6); /* soft gold border */
  border-radius: 50px; /* pill shape */
  box-shadow: 0 4px 15px rgba(81, 47, 115, 0.25);
  overflow: hidden;
  padding: 8px 0;
  min-width: 220px;
  animation: fadeDown 0.25s ease-in-out;
}

/* === Menu links (applies to all dropdown levels) === */
.header__submenu a,
.header__submenu .header__submenu a {
  display: block;
  color: #3b1a44; /* deep plum text */
  font-weight: 600;
  letter-spacing: 0.3px;
  padding: 10px 20px;
  transition: all 0.3s ease;
}

/* === Hover effect (soft gold shimmer + lift) === */
.header__submenu a:hover,
.header__submenu .header__submenu a:hover {
  background: rgba(255, 255, 255, 0.12);
  color: #DABF91; /* soft gold highlight */
  transform: translateX(3px);
}

/* === Gold underline (on all dropdown items) === */
.header__submenu a:hover::after,
.header__submenu .header__submenu a:hover::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 2px;
  background: #DABF91;
  border-radius: 2px;
}

/* === Soft dropdown fade animation === */
@keyframes fadeDown {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* === Dropdown containers (apply to ALL nested levels) === */
.header__submenu,
.header__submenu .header__submenu {
  background: linear-gradient(
    135deg,
    rgba(252, 233, 240, 0.7) 0%,
    rgba(247, 175, 192, 0.6) 40%,
    rgba(140, 90, 148, 0.6) 100%
  ) !important;
  border: none !important;
  outline: none !important;
  border-radius: 40px !important;
  box-shadow: 0 6px 20px rgba(81, 47, 115, 0.25);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  overflow: hidden;
  padding: 8px 0;
  min-width: 220px;
  animation: fadeDown 0.3s ease forwards;
}
/* ===== Charmed Chapters Header Icon Styling ===== */
.header__icon svg {
  stroke: rgba(255, 255, 255, 0.85);      /* soft white for visibility */
  transition: stroke 0.3s ease, transform 0.25s ease;
}

/* Hover shimmer */
.header__icon:hover svg {
  stroke: #DABF91;                        /* your gold accent */
  transform: scale(1.1);                  /* gentle lift effect */
}

/* Optional: space them evenly */
.header__icon {
  margin: 0 10px;
}
/* === NESTED (level-2+) SUBMENU: fly out to the right === */

/* Anchor each li so the flyout can position against it */
.header__submenu :is(.submenu, .list-menu) > li { 
  position: relative;
}

/* The nested submenu panel */
.header__submenu :is(.submenu, .list-menu) > li > details > .header__submenu {
  position: absolute;
  top: -6px;                 /* align nicely with parent item */
  left: 100%;                /* fly out to the right */
  margin-left: 12px;         /* small gap */
  min-width: 220px;
  z-index: 80;
  display: none;             /* hidden until open */
  pointer-events: auto;

  /* Pretty background */
  background: linear-gradient(
    135deg,
    rgba(252, 233, 240, 0.92) 0%,
    rgba(247, 175, 192, 0.88) 40%,
    rgba(140, 90, 148, 0.90) 100%
  );
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(20,12,28,0.25);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  overflow: hidden;
}

/* Show when the nested <details> is open */
.header__submenu :is(.submenu, .list-menu) > li > details[open] > .header__submenu {
  display: block;
}

/* Desktop convenience: open on hover too */
@media (hover:hover) {
  .header__submenu :is(.submenu, .list-menu) > li > details:hover > .header__submenu {
    display: block;
  }
}

/* Optional: flip direction near right edge by adding 'fly-left' to that nested .header__submenu */
.header__submenu :is(.submenu, .list-menu) > li > details > .header__submenu.fly-left {
  left: auto;
  right: 100%;
  margin-left: 0;
  margin-right: 12px;
}

/* Minor polish */
.header__submenu .list-menu__item a,
.header__submenu :is(.submenu, .list-menu) a {
  display: block;
  padding: 10px 14px;
}
.header__submenu :is(.submenu, .list-menu) a:hover {
  background: rgba(255,255,255,0.12);
}
/* ===== CHARMED CHAPTERS HERO TEXT STYLING ===== */

/* Main heading */
.banner__heading,
.image-banner__heading {
  font-family: 'Cinzel', serif;
  font-size: clamp(2.2rem, 4vw, 3.4rem);
  font-weight: 600;
  line-height: 1.15;
  text-align: center;
  color: #FFF8F3; /* soft ivory over dark tones */
  letter-spacing: 0.02em;
  text-shadow:
    0 2px 6px rgba(20, 12, 28, 0.3),
    0 0 12px rgba(140, 90, 148, 0.25);
}

/* Fade-in motion */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}
/* Ghost style that pairs with the primary or stands alone */
.section--image-banner .button--ghost,
.banner .banner__buttons .button--ghost{
  border-radius: 999px !important;
  padding: 11px 21px !important;
  background: rgba(255,248,243,0.18) !important;      /* soft glass */
  border: 1.6px solid rgba(218,191,145,0.95) !important; /* gold */
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  color: var(--cc-plum) !important;
  font-weight: 700 !important;
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
}
.section--image-banner .button--ghost:hover,
.section--image-banner .button--ghost:focus-visible,
.banner .banner__buttons .button--ghost:hover,
.banner .banner__buttons .button--ghost:focus-visible{
  transform: translateY(-1px);
  background: rgba(255,248,243,0.28) !important;
  border-color: var(--cc-gold) !important;
}
/* Explore Our Collections header style */
.collections-showcase h2,
.collections-showcase .title {
  font-family: 'Cinzel', serif;
  font-weight: 700;
  font-size: 2.5rem;
  color: #4B2E2B;
  letter-spacing: 1px;
  margin-bottom: 50px;
  text-transform: none;
}
/* Ultra subtle Image Banner subheading */
.banner .banner__text {
  position: relative;
  display: inline-block;
  padding: 0.35rem 0.9rem;
}

.banner .banner__text p {
  position: relative;
  z-index: 1;
  font-family: 'Open Sans', sans-serif;
  font-size: clamp(1rem, 1.6vw, 1.35rem);
  font-weight: 400;
  color: #F4E6C8; /* softer ivory-gold */
  letter-spacing: 0.04em;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

/* whisper-soft veil */
.banner .banner__text::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 14px;
  background: rgba(20, 12, 28, 0.15); /* barely-visible shadow */
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  transition: background 0.3s ease;
}

/* very gentle hover lift */
.banner .banner__text:hover::before {
  background: rgba(20, 12, 28, 0.22);
}
/* Stack banner subheading and buttons vertically */
.banner__box {
  display: flex;
  flex-direction: column;
  align-items: center; /* centers content horizontally */
  text-align: center; /* aligns text consistently */
}

/* add a bit of spacing between subheading and buttons */
.banner__buttons {
  margin-top: 1rem !important;
}
/* ===== About hero (image_banner_3cN7cj): remove big box & add translucent pill to subheading ===== */

/* 1) If the big box is showing, disable it just for this section */
#shopify-section-image_banner_3cN7cj .banner__box {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* 2) Target the subheading/text block (multiple fallbacks for Dawn variants) */
#shopify-section-image_banner_3cN7cj #ShopifyBlock-text_ynQbK3,
#shopify-section-image_banner_3cN7cj [data-block-id="text_ynQbK3"],
#shopify-section-image_banner_3cN7cj .banner__text,
#shopify-section-image_banner_3cN7cj .image-banner__text,
#shopify-section-image_banner_3cN7cj .banner__content .rte {
  display: inline-block;
  background: rgba(247, 175, 192, 0.26) !important; /* blush tint */
  color: #fff !important;
  padding: 0.5rem 1rem;
  border-radius: 999px; /* pill shape */
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  box-shadow: 0 6px 24px rgba(20, 12, 28, 0.15);
}

/* Optional: a touch of glow on the main heading in this section */
#shopify-section-image_banner_3cN7cj .banner__heading {
  text-shadow: 0 2px 10px rgba(0,0,0,0.15);
  margin-bottom: .75rem;
}
/* ===== Match Banner Buttons to Featured Collection Style ===== */
.banner .button,
.image-banner .button {
  background: linear-gradient(135deg, #F7EADC 0%, #EADFD4 100%) !important; /* soft beige gradient */
  color: #4B2E2B !important; /* warm coffee brown text */
  border: none !important;
  border-radius: 50px !important; /* pill shape */
  font-weight: 600;
  letter-spacing: 0.5px;
  padding: 12px 32px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}

.banner .button:hover,
.image-banner .button:hover {
  background: linear-gradient(135deg, #F7AFC0 0%, #EADFD4 100%) !important; /* soft blush hover */
  color: #4B2E2B !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
}
/* Remove unwanted black underline/border on dropdown hover */
.header__submenu a:hover,
.header__submenu a:focus {
  text-decoration: none !important; /* removes underline */
  border-bottom: none !important;   /* removes small black line */
  box-shadow: none !important;      /* removes any pseudo-border effect */
}

/* Preserve your gold hover line */
.header__submenu a:hover::after {
  background-color: #DABF91 !important; /* your gold color */
  height: 2px;
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
/* 1) Nuke default underlines/borders on menu items (top + sub) */
.header__inline-menu a,
.header__inline-menu summary,
.header__submenu a,
.header__submenu summary {
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* 2) Also remove any theme pseudo-lines */
.header__inline-menu a::before,
.header__inline-menu summary::before,
.header__submenu a::before,
.header__submenu summary::before {
  content: none !important;
}

/* 3) Some themes draw dividers on list items — turn them off */
.header__submenu .list-menu__item,
.header__submenu .list-menu__item--has-child,
.header__inline-menu .list-menu__item {
  border-bottom: 0 !important;
}

/* 4) Keep YOUR gold hover line only (adjust selector to your current one) */
.header__submenu a:hover::after,
.header__inline-menu a:hover::after,
.header__inline-menu summary:hover::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 2px;
  background: #DABF91; /* gold */
}
/* === Apply to ALL submenu levels (parents + links) === */
.header__submenu :is(a, summary) {
  position: relative;
  display: block;
  color: #3b1a44;              /* deep plum */
  font-weight: 600;
  letter-spacing: 0.3px;
  padding: 10px 20px;
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: none;
  transition: all 0.3s ease;
}

/* Hover: soft glow + gold underline on the ITEM only */
.header__submenu :is(a, summary):hover {
  background: rgba(255, 255, 255, 0.12);
  color: #DABF91;
  transform: translateX(3px);
  border-radius: 50px;
  box-shadow: 0 4px 12px rgba(81, 47, 115, 0.25);
}
.header__submenu :is(a, summary):hover::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 2px;
  background: #DABF91;         /* gold line */
  border-radius: 2px;
}

/* 🔧 Nuke the tiny black line from containers at every depth */
.header__submenu :is(li, details, details[open], details[open] > summary) {
  border: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

/* If the theme draws dividers on list items, remove them here */
.header__submenu .list-menu__item,
.header__submenu .list-menu__item--has-child {
  border-bottom: 0 !important;
}

/* Ensure ALL nested submenus inherit the same glass/gradient shell */
.header__submenu,
.header__submenu .header__submenu {
  background: linear-gradient(
    135deg,
    rgba(252, 233, 240, 0.7) 0%,
    rgba(247, 175, 192, 0.6) 40%,
    rgba(140, 90, 148, 0.6) 100%
  ) !important;
  border: none !important;
  outline: none !important;
  border-radius: 40px !important;
  box-shadow: 0 6px 20px rgba(81, 47, 115, 0.25);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  overflow: hidden;
  padding: 8px 0;
  min-width: 220px;
  animation: fadeDown 0.3s ease forwards;
}
/* Keep submenu parent items (with carets) on one line */
.header__submenu summary {
  display: flex !important;
  align-items: center;
  justify-content: space-between;  /* text on left, caret on right */
  white-space: nowrap;             /* prevents wrapping */
  width: 100%;
  gap: 8px;                        /* space between text and caret */
  padding: 10px 20px;              /* same padding as links */
}

/* Normalize the caret icon */
.header__submenu summary .icon-caret {
  flex: 0 0 auto;
  margin-left: 8px;
  transform: none;                 /* base state */
  transition: transform 0.2s ease;
  position: static;                /* avoid weird vertical offsets */
  vertical-align: middle;
}

/* Rotate caret when open (if your theme does this) */
.header__submenu details[open] > summary .icon-caret {
  transform: rotate(180deg);
}
/* ===== Charmed Chapters – Collection Banner Font ===== */
.collection-hero__title,
.collection-banner__title,
.collection-hero .title,
.collection-hero h1 {
  font-family: 'Cinzel', serif !important;
  color: #4B2E2B !important; /* Coffee brown */
  letter-spacing: 1px;
  font-weight: 700;
  text-transform: none;
}

/* === Custom Heading Font (Airwaves Script Two) === */
h1, h2, h3, .h1, .h2, .h3,
.product__title,
.card__heading,
.footer-block__heading,
.section-header,
.hero__title {
  font-family: var(--font-heading) !important;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.02em;
}


/* Optional — if you want to test body font swap later */
body {
  font-family: var(--font-body, var(--font-heading), sans-serif);
}
/* === NAV READABILITY UPGRADE === */

/* 1) Use a clean, readable font for nav */
.header__menu-item,
.header__menu-item > span,
.header__menu-item > a {
  font-family: 'League Spartan', system-ui, sans-serif;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: #141010;               /* dark text */
}

/* 2) Dropdown panel: glassy light card on top of gradients */
.header__submenu,
.mega-menu,
.mega-menu__content {
  background: rgba(249, 249, 249, 0.92); /* #F9F9F9 w/ opacity */
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(20, 16, 16, 0.08);
  box-shadow: 0 10px 24px rgba(20, 16, 16, 0.15);
  border-radius: 18px;
}

/* 3) Dropdown links: darker text + clearer hover */
.header__submenu a,
.mega-menu__link,
.mega-menu__link--level-2,
.mega-menu__list a {
  color: #141010;
  font-family: 'League Spartan', system-ui, sans-serif;
  font-weight: 500;
}

.header__submenu a:hover,
.mega-menu__link:hover,
.mega-menu__list a:hover {
  color: #AC3BF1;               /* brand purple hover */
  text-decoration: none;
}

/* 4) Top-level items: stronger contrast + hover underline */
.header__inline-menu .list-menu__item > a,
.header__inline-menu .list-menu__item > button {
  color: #141010;
}

.header__inline-menu .list-menu__item > a:hover,
.header__inline-menu .list-menu__item > button:hover {
  color: #141010;
  box-shadow: inset 0 -2px 0 0 #AC3BF1; /* subtle underline */
}

/* 5) Optional: add a soft header backdrop so links never sit on busy imagery */
.header-wrapper,
.shopify-section-header-sticky {
  background: linear-gradient(180deg, rgba(249,249,249,0.92) 0%, rgba(249,249,249,0.75) 100%);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}

/* 6) Mobile drawer readability (optional) */
.menu-drawer {
  background: #F9F9F9;
}
.menu-drawer__menu-item { color: #141010; }
.menu-drawer__close-button { color: #141010; }
/* === FOOTER FONT & READABILITY === */

.footer,
.footer__content,
.footer__blocks,
.footer__column,
.footer__heading,
.footer__linklist,
.footer__linklist a,
.footer__small-text,
.footer__menu a,
.footer__copyright,
.footer__aside {
  font-family: 'League Spartan', system-ui, sans-serif !important;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: #141010; /* dark neutral for contrast */
}

/* Footer headings stronger */
.footer__heading {
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

/* Footer links hover */
.footer__linklist a:hover,
.footer__menu a:hover {
  color: #AC3BF1; /* brand purple hover */
  text-decoration: none;
}
/* === HEADER BACKGROUND - MATCH COLOR SCHEME === */

/* Main header wrapper */
.header-wrapper,
.shopify-section-header-sticky {
  background: var(--gradient-background);
  background-color: rgb(var(--color-background)); /* fallback */
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border: none;
  box-shadow: none;
}



/* Optional – dropdown menus use same scheme softly */
.header__submenu,
.mega-menu__content {
  background: rgba(var(--color-background), 0.95);
  backdrop-filter: blur(8px);
}
/* === Announcement Bar — Shimmer Gradient Text (Slow Luxe Version) === */
:root {
  --cc-shimmer-1: #DABF91; /* gold */
  --cc-shimmer-2: #EC5F87; /* blush */
  --cc-shimmer-3: #512F73; /* plum */
  --cc-announce-fallback: #3B1C21;
}

.announcement-bar .announcement-bar__message,
.announcement-bar .announcement-bar__link {
  background-image: linear-gradient(
    90deg,
    var(--cc-shimmer-1) 0%,
    var(--cc-shimmer-2) 20%,
    var(--cc-shimmer-1) 40%,
    var(--cc-shimmer-3) 60%,
    var(--cc-shimmer-1) 80%,
    var(--cc-shimmer-2) 100%
  );
  background-size: 300% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: cc-shimmer 12s ease-in-out infinite; /* slowed from 4s to 12s */
  font-weight: 600;
  letter-spacing: 0.4px;
  text-decoration: none;
}

/* Hover can pause or slightly shift shimmer */
.announcement-bar .announcement-bar__link:hover {
  animation-play-state: paused;
}

@keyframes cc-shimmer {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
/* === Pages After Midnight — Announcement Strip (High-Contrast Pop) === */
.cc-strip {
  width: 100%;
  overflow: hidden;
  background: linear-gradient(
    90deg,
    #141010 0%,   /* inky black base */
    #1e0f22 30%,  /* deep plum */
    #2e1250 60%,  /* violet depth */
    #512F73 80%,  /* accent plum */
    #ac3bf1 100%  /* brand purple edge */
  );
  padding: 0.65rem 0;
  text-align: center;
  box-shadow:
    0 4px 12px rgba(0,0,0,0.45),
    inset 0 1px 4px rgba(255,255,255,0.1);
  border-bottom: 1px solid rgba(8,160,255,0.35); /* thin blue shimmer line */
}

/* Text shimmer: bright ivory-blue blend */
.cc-rotate li {
  font-weight: 700;
  letter-spacing: 0.45px;
  text-transform: uppercase;
  background-image: linear-gradient(
    90deg,
    #f9f9f9 0%,
    #08a0ff 25%,
    #ac3bf1 50%,
    #f9f9f9 75%,
    #08a0ff 100%
  );
  background-size: 250% auto;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: shimmerPop 10s ease-in-out infinite;
  text-shadow: 0 0 8px rgba(172,59,241,0.25);
}

/* Keyframes */
@keyframes shimmerPop {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
@keyframes rotateText {
  0%,20%{transform:translateY(0%);}
  25%,45%{transform:translateY(-100%);}
  50%,70%{transform:translateY(-200%);}
  75%,95%{transform:translateY(-300%);}
  100%{transform:translateY(0%);}
}

/* Optional: pause shimmer on hover */
.cc-strip:hover .cc-rotate li { animation-play-state: paused; }
/* === Fix: ensure link text inherits shimmer and stays visible === */
.cc-rotate li a {
  color: transparent;
  background-image: inherit;
  background-size: inherit;
  background-clip: inherit;
  -webkit-background-clip: inherit;
  text-decoration: underline;
  text-decoration-color: rgba(8, 160, 255, 0.6); /* subtle blue underline */
  transition: text-decoration-color 0.3s ease, opacity 0.3s ease;
}

.cc-rotate li a:hover,
.cc-rotate li a:focus {
  text-decoration-color: rgba(172, 59, 241, 0.8); /* purple glow on hover */
  opacity: 0.9;
}
/* ===== Charmed Chapters / After Dark – Return & Refund Policy (scoped) ===== */
.shopify-policy__container .shopify-policy__body #cc-returns,
#cc-returns {
  --cc-blush: #FFF8F3;
  --cc-plum: #512F73;
  --cc-gold: #DABF91;
  --cc-brown: #4B2E2B;
  --cc-rose: #F7AFC0;
  font-family: 'League Spartan', sans-serif;
  color: var(--cc-brown);
  background: linear-gradient(180deg, #FFF8F3 0%, #FAF1F7 100%);
  border-radius: 18px;
  box-shadow: 0 6px 20px rgba(81,47,115,.08);
  padding: 28px 22px;
}

#cc-returns .cc-heading {
  font-family: 'League Spartan', sans-serif;
  color: var(--cc-plum);
  font-weight: 700;
  letter-spacing: 0.4px;
  margin: 0 0 12px;
  line-height: 1.2;
}
#cc-returns h1.cc-heading { font-size: 2rem; }
#cc-returns h2.cc-heading { font-size: 1.3rem; margin-top: 22px; }

#cc-returns p, #cc-returns li {
  font-size: 1rem;
  line-height: 1.75;
  margin: 0 0 12px;
}

#cc-returns .cc-card {
  background: #FFFFFF;
  border: 1px solid rgba(81,47,115,.08);
  border-radius: 16px;
  padding: 18px;
  margin: 14px 0;
}

#cc-returns .cc-hr {
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--cc-gold), transparent);
  border: 0;
  margin: 16px 0 18px;
}

#cc-returns .cc-badge {
  display: inline-block;
  font-size: .84rem;
  font-weight: 700;
  color: var(--cc-plum);
  background: linear-gradient(90deg, #FFF2F6, #F8ECFF);
  border: 1px solid rgba(81,47,115,.12);
  border-radius: 999px;
  padding: 6px 10px;
  margin-bottom: 10px;
}

#cc-returns a { color: var(--cc-plum); text-decoration: underline; }
#cc-returns strong { color: var(--cc-plum); }

@media (min-width: 720px) {
  #cc-returns { padding: 36px 30px; }
  #cc-returns h1.cc-heading { font-size: 2.2rem; }
  #cc-returns h2.cc-heading { font-size: 1.35rem; }
}
/* === CC / After Dark – Policy readability boost (scoped to #cc-returns) === */
.shopify-policy__container .shopify-policy__body #cc-returns,
#cc-returns {
  font-family: 'League Spartan', sans-serif;
  font-size: 1.12rem;            /* base text up */
  line-height: 1.9;              /* more breathing room */
}

#cc-returns p,
#cc-returns li {
  font-size: clamp(1.08rem, 1rem + 0.35vw, 1.22rem);
  line-height: 1.9;
}

#cc-returns .cc-badge {
  font-size: .95rem;
  padding: 8px 12px;
}

#cc-returns h2.cc-heading {
  font-size: clamp(1.6rem, 1.25rem + 1.1vw, 2.1rem);
  margin-top: 26px;
  margin-bottom: 10px;
}

#cc-returns h3.cc-heading {
  font-size: clamp(1.25rem, 1.05rem + 0.6vw, 1.45rem);
  margin-top: 6px;
  margin-bottom: 10px;
}

#cc-returns .cc-card {
  padding: 22px;                 /* a bit roomier */
  border-radius: 18px;
}

#cc-returns ul {                 /* nicer bullets spacing */
  padding-left: 1.2em;
  margin-left: .2em;
}

@media (min-width: 980px) {
  #cc-returns { padding: 42px 40px; }
}
/* === Charmed Chapters / After Dark – Policy Width Enhancement === */
.shopify-policy__container,
.shopify-policy__container .shopify-policy__body {
  max-width: 1100px !important;  /* wider than default ~680px */
  margin: 0 auto;
}

#cc-returns {
  width: 100%;
  max-width: 1000px;              /* your internal content width */
  margin: 0 auto;
}

/* Adjust the outer padding so it doesn't look boxed in */
.shopify-policy__container {
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

@media (min-width: 1200px) {
  .shopify-policy__container {
    max-width: 1250px !important;
    padding-left: 4rem !important;
    padding-right: 4rem !important;
  }
}
/* === Charmed Chapters / After Dark – Large Readable Refund Policy === */

/* Overall container width */
.shopify-policy__container,
.shopify-policy__body {
  max-width: 1200px !important;
  margin: 0 auto;
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

/* Force large base font size inside all policy text */
.shopify-policy__body,
.shopify-policy__body * {
  font-size: 1.25rem !important;    /* ≈ 20px */
  line-height: 2 !important;
  letter-spacing: 0.25px;
  color: #4B2E2B !important;
}

/* Make your custom block even larger */
#cc-returns,
#cc-returns * {
  font-size: 1.3rem !important;     /* ≈ 21px base */
  line-height: 2 !important;
}

/* Headings */
#cc-returns h1.cc-heading {
  font-size: 2.8rem !important;     /* ≈ 45px */
  line-height: 1.25;
  color: #512F73;
}
#cc-returns h2.cc-heading {
  font-size: 2.2rem !important;     /* ≈ 36px */
  line-height: 1.3;
  color: #512F73;
}
#cc-returns h3.cc-heading {
  font-size: 1.8rem !important;     /* ≈ 29px */
  line-height: 1.4;
  color: #512F73;
}

/* Badge & cards */
#cc-returns .cc-badge {
  font-size: 1.1rem !important;
  padding: 10px 16px;
}
#cc-returns .cc-card {
  padding: 32px !important;
  border-radius: 20px;
}

/* Shopify auto title ("Refund policy") */
.shopify-policy__title h1 {
  font-size: clamp(2.8rem, 2rem + 2vw, 3.2rem) !important; /* 45–50px range */
  font-family: 'League Spartan', sans-serif;
  color: #512F73 !important;
  letter-spacing: 0.4px;
}
/* ===== Charmed Chapters / After Dark — Terms of Service (scoped) ===== */
.shopify-policy__container,
.shopify-policy__container .shopify-policy__body {
  max-width: 1100px !important;
  margin: 0 auto;
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

/* Global readability for policy body */
.shopify-policy__container .shopify-policy__body,
.shopify-policy__container .shopify-policy__body * {
  font-size: 1.18rem !important;  /* ≈19px */
  line-height: 1.95 !important;
  color: #4B2E2B;
  letter-spacing: 0.25px;
}

/* Our Terms block */
#cc-terms {
  --cc-blush: #FFF8F3;
  --cc-plum: #512F73;
  --cc-gold: #DABF91;
  --cc-brown: #4B2E2B;
  background: linear-gradient(180deg, #FFF8F3 0%, #FAF1F7 100%);
  border-radius: 18px;
  box-shadow: 0 6px 20px rgba(81,47,115,.08);
  padding: 32px 26px;
  margin: 0 auto;
  max-width: 1000px;
}

/* Headings */
#cc-terms .cc-heading {
  font-family: 'League Spartan', sans-serif;
  color: var(--cc-plum);
  font-weight: 700;
  letter-spacing: 0.4px;
  margin: 0 0 12px;
  line-height: 1.25;
}
#cc-terms h2.cc-heading { font-size: clamp(1.8rem, 1.2rem + 1.4vw, 2.2rem); }  /* section title */
#cc-terms h3.cc-heading { font-size: clamp(1.3rem, 1.05rem + 0.7vw, 1.6rem); }

/* Body text + lists */
#cc-terms p, #cc-terms li {
  font-size: clamp(1.08rem, 1rem + 0.35vw, 1.22rem);
  line-height: 1.9;
  margin: 0 0 12px;
}
#cc-terms ul { padding-left: 1.2em; margin-left: .2em; }

/* Cards + dividers */
#cc-terms .cc-card {
  background: #FFFFFF;
  border: 1px solid rgba(81,47,115,.08);
  border-radius: 16px;
  padding: 22px;
  margin: 16px 0;
}
#cc-terms .cc-hr {
  height: 1px; border: 0;
  background: linear-gradient(90deg, transparent, var(--cc-gold), transparent);
  margin: 16px 0 18px;
}

#cc-terms .cc-badge {
  display: inline-block;
  font-size: .95rem;
  font-weight: 700;
  color: var(--cc-plum);
  background: linear-gradient(90deg, #FFF2F6, #F8ECFF);
  border: 1px solid rgba(81,47,115,.12);
  border-radius: 999px;
  padding: 8px 12px;
  margin-bottom: 12px;
}

/* Shopify auto page title */
.shopify-policy__title h1 {
  font-family: 'League Spartan', sans-serif;
  color: #512F73 !important;
  font-size: clamp(2.4rem, 1.8rem + 1.8vw, 3rem) !important;
  letter-spacing: 0.4px;
}

/* Roomier on wide screens */
@media (min-width: 1024px) {
  #cc-terms { padding: 40px 38px; }
}
/* ===== Charmed Chapters / After Dark — Shipping Policy (scoped) ===== */
.shopify-policy__container,
.shopify-policy__container .shopify-policy__body {
  max-width: 1100px !important;
  margin: 0 auto;
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

/* Readability boost across the policy body */
.shopify-policy__container .shopify-policy__body,
.shopify-policy__container .shopify-policy__body * {
  font-size: 1.18rem !important;  /* ≈19px */
  line-height: 1.95 !important;
  color: #4B2E2B;
  letter-spacing: 0.25px;
}

/* Our Shipping block */
#cc-shipping {
  --cc-blush: #FFF8F3;
  --cc-plum: #512F73;
  --cc-gold: #DABF91;
  --cc-brown: #4B2E2B;
  background: linear-gradient(180deg, #FFF8F3 0%, #FAF1F7 100%);
  border-radius: 18px;
  box-shadow: 0 6px 20px rgba(81,47,115,.08);
  padding: 32px 26px;
  margin: 0 auto;
  max-width: 1000px;
}

/* Headings */
#cc-shipping .cc-heading {
  font-family: 'League Spartan', sans-serif;
  color: var(--cc-plum);
  font-weight: 700;
  letter-spacing: 0.4px;
  margin: 0 0 12px;
  line-height: 1.25;
}
#cc-shipping h2.cc-heading { font-size: clamp(1.8rem, 1.2rem + 1.4vw, 2.2rem); }
#cc-shipping h3.cc-heading { font-size: clamp(1.3rem, 1.05rem + 0.7vw, 1.6rem); }

/* Body + lists */
#cc-shipping p, #cc-shipping li {
  font-size: clamp(1.08rem, 1rem + 0.35vw, 1.22rem);
  line-height: 1.9;
  margin: 0 0 12px;
}
#cc-shipping ul { padding-left: 1.2em; margin-left: .2em; }

/* Cards + dividers */
#cc-shipping .cc-card {
  background: #FFFFFF;
  border: 1px solid rgba(81,47,115,.08);
  border-radius: 16px;
  padding: 22px;
  margin: 16px 0;
}
#cc-shipping .cc-hr {
  height: 1px; border: 0;
  background: linear-gradient(90deg, transparent, var(--cc-gold), transparent);
  margin: 16px 0 18px;
}

/* Badge */
#cc-shipping .cc-badge {
  display: inline-block;
  font-size: .95rem;
  font-weight: 700;
  color: var(--cc-plum);
  background: linear-gradient(90deg, #FFF2F6, #F8ECFF);
  border: 1px solid rgba(81,47,115,.12);
  border-radius: 999px;
  padding: 8px 12px;
  margin-bottom: 12px;
}

/* Shopify auto title on policy pages */
.shopify-policy__title h1 {
  font-family: 'League Spartan', sans-serif;
  color: #512F73 !important;
  font-size: clamp(2.4rem, 1.8rem + 1.8vw, 3rem) !important;
  letter-spacing: 0.4px;
}

/* Roomier on wide screens */
@media (min-width: 1024px) {
  #cc-shipping { padding: 40px 38px; }
}
/* ===== Charmed Chapters / After Dark — Contact Information Policy (scoped) ===== */
.shopify-policy__container,
.shopify-policy__container .shopify-policy__body {
  max-width: 1100px !important;
  margin: 0 auto;
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

.shopify-policy__container .shopify-policy__body,
.shopify-policy__container .shopify-policy__body * {
  font-size: 1.18rem !important;
  line-height: 1.95 !important;
  color: #4B2E2B;
  letter-spacing: 0.25px;
}

/* Core styling */
#cc-contact {
  --cc-blush: #FFF8F3;
  --cc-plum: #512F73;
  --cc-gold: #DABF91;
  background: linear-gradient(180deg, #FFF8F3 0%, #FAF1F7 100%);
  border-radius: 18px;
  box-shadow: 0 6px 20px rgba(81,47,115,.08);
  padding: 32px 26px;
  margin: 0 auto;
  max-width: 1000px;
}

#cc-contact .cc-heading {
  font-family: 'League Spartan', sans-serif;
  color: var(--cc-plum);
  font-weight: 700;
  letter-spacing: 0.4px;
  line-height: 1.25;
  margin: 0 0 12px;
}
#cc-contact h2.cc-heading { font-size: clamp(1.8rem, 1.2rem + 1.4vw, 2.2rem); }
#cc-contact h3.cc-heading { font-size: clamp(1.3rem, 1.05rem + 0.7vw, 1.6rem); }

#cc-contact p, #cc-contact li {
  font-size: clamp(1.08rem, 1rem + 0.35vw, 1.22rem);
  line-height: 1.9;
  margin: 0 0 12px;
}
#cc-contact ul { padding-left: 1.2em; margin-left: .2em; }

#cc-contact .cc-card {
  background: #FFFFFF;
  border: 1px solid rgba(81,47,115,.08);
  border-radius: 16px;
  padding: 22px;
  margin: 16px 0;
}

#cc-contact .cc-hr {
  height: 1px;
  border: 0;
  background: linear-gradient(90deg, transparent, var(--cc-gold), transparent);
  margin: 16px 0 18px;
}

#cc-contact .cc-badge {
  display: inline-block;
  font-size: .95rem;
  font-weight: 700;
  color: var(--cc-plum);
  background: linear-gradient(90deg, #FFF2F6, #F8ECFF);
  border: 1px solid rgba(81,47,115,.12);
  border-radius: 999px;
  padding: 8px 12px;
  margin-bottom: 12px;
}

.shopify-policy__title h1 {
  font-family: 'League Spartan', sans-serif;
  color: #512F73 !important;
  font-size: clamp(2.4rem, 1.8rem + 1.8vw, 3rem) !important;
  letter-spacing: 0.4px;
}

@media (min-width: 1024px) {
  #cc-contact { padding: 40px 38px; }
}
/* === TYPOGRAPHY OVERRIDE: all policies → League Spartan === */
.shopify-policy__title h1,
#cc-returns .cc-heading,
#cc-terms .cc-heading,
#cc-shipping .cc-heading,
#cc-contact .cc-heading,
.shopify-policy__body,
.shopify-policy__body * {
  font-family: 'League Spartan', sans-serif !important;
  font-style: normal !important;
}

/* Sizes: clean & readable */
.shopify-policy__body p,
.shopify-policy__body li { font-size: 1.12rem; line-height: 1.85; letter-spacing: .2px; }

.shopify-policy__title h1 { font-weight: 600; font-size: clamp(2.2rem, 1.6rem + 1.6vw, 3rem) !important; }
#cc-returns .cc-heading,
#cc-terms .cc-heading,
#cc-shipping .cc-heading,
#cc-contact .cc-heading { font-weight: 600; }

#cc-returns h1.cc-heading { font-size: 2.3rem !important; }
#cc-returns h2.cc-heading,
#cc-terms h2.cc-heading,
#cc-shipping h2.cc-heading,
#cc-contact h2.cc-heading { font-size: clamp(1.6rem, 1.1rem + 1vw, 2rem) !important; }
#cc-returns h3.cc-heading,
#cc-terms h3.cc-heading,
#cc-shipping h3.cc-heading,
#cc-contact h3.cc-heading { font-size: clamp(1.25rem, 1.05rem + .6vw, 1.5rem) !important; }