/** Shopify CDN: Minification failed

Line 3870:0 Unexpected "}"
Line 3877:0 Unexpected "}"
Line 4020:0 Unexpected "<"
Line 4022:2 Comments in CSS use "/* ... */" instead of "//"
Line 4025:2 Comments in CSS use "/* ... */" instead of "//"
Line 4026:2 Comments in CSS use "/* ... */" instead of "//"
Line 4032:4 Comments in CSS use "/* ... */" instead of "//"
Line 4035:4 Comments in CSS use "/* ... */" instead of "//"
Line 4041:55 Comments in CSS use "/* ... */" instead of "//"
Line 4042:55 Comments in CSS use "/* ... */" instead of "//"
... and 13 more hidden warnings

**/
: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;
  background-color: rgb(var(--color-background));
}

.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(.button--tertiary):not([disabled]):active,
  .animate--hover-vertical-lift .shopify-challenge__button:not([disabled]):active,
  .animate--hover-vertical-lift .customer button:not([disabled]):active,
  .animate--hover-vertical-lift .shopify-payment-button__button:active {
    transform: translateY(0);
  }

  .animate--hover-vertical-lift .button:not([disabled]):hover:after,
  .animate--hover-vertical-lift .customer button:not([disabled]):hover:after,
  .animate--hover-vertical-lift .shopify-payment-button__button:not([disabled]):hover:after {
    --border-offset: 0.3px; /* Default is 1.3px as defined above in this file. This removes 1px to prevent the border from growing on buttons when this effect is on.  */
    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));
  }

  .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);
  }
}
/* === SIP N SPIN PRODUCT PAGE STYLES === */
:root{
  --brand:#FF6B81;
  --ink:#1e1e1e;
  --muted:#6b7280;
  --bg:#ffffff;
  --soft:#f9fafb;
  --ring:rgba(255,107,129,.25);
  --radius:16px;
}
.sns-wrap{max-width:1200px;margin:0 auto;padding:24px 16px;font-family:Inter,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);}
.sns-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:start}
@media(max-width:980px){.sns-grid{grid-template-columns:1fr}}
.sns-gallery{position:relative}
.sns-main{background:var(--soft);border-radius:var(--radius);padding:8px;display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;overflow:hidden}
.sns-main img{width:100%;height:100%;object-fit:cover;border-radius:calc(var(--radius) - 4px);}
.sns-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:10px}
.sns-thumb{background:var(--soft);border-radius:12px;overflow:hidden;cursor:pointer;border:2px solid transparent}
.sns-thumb img{width:100%;height:70px;object-fit:cover;display:block}
.sns-thumb[aria-current="true"]{border-color:var(--brand)}
.sns-title{font-size:clamp(24px,3.2vw,34px);line-height:1.1;margin:4px 0 10px}
.sns-sub{color:var(--muted);font-size:14px;margin:0 0 14px}
.sns-stars{display:flex;align-items:center;gap:8px;margin:6px 0 18px}
.sns-stars i{color:#f59e0b}
.sns-price{display:flex;align-items:baseline;gap:10px;margin:6px 0 14px}
.sns-price .now{font-size:28px;font-weight:800}
.sns-price .was{color:var(--muted);text-decoration:line-through}
.sns-badges{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 16px}
.sns-badge{background:var(--soft);border-radius:999px;padding:8px 12px;font-size:12px;border:1px solid #eceff1}
.sns-card{border:1px solid #eceff1;border-radius:var(--radius);padding:16px;background:#fff}
.sns-opt{margin:12px 0}
.sns-opt label{font-weight:600;font-size:14px;display:block;margin-bottom:8px}
.sns-select,.sns-qty{width:100%;padding:12px 14px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;font-size:14px}
.sns-swatch-row{display:flex;flex-wrap:wrap;gap:10px}
.sns-swatch{border:1px solid #e5e7eb;border-radius:12px;padding:10px 14px;font-size:13px;cursor:pointer;background:#fff}
.sns-swatch[data-selected="true"]{outline:3px solid var(--ring);border-color:var(--brand)}
.sns-btn{appearance:none;border:none;border-radius:999px;padding:14px 20px;font-weight:800;font-size:16px;cursor:pointer;background:var(--brand);color:#fff}
.sns-btn:active{transform:translateY(1px)}
.sns-ghost{background:#fff;border:2px solid var(--brand);color:var(--brand)}
.sns-note{font-size:12px;color:var(--muted);text-align:center;margin-top:6px}
.sns-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0 8px}
@media(max-width:900px){.sns-tiles{grid-template-columns:1fr 1fr}}
@media(max-width:540px){.sns-tiles{grid-template-columns:1fr}}
.sns-tile{background:var(--soft);border-radius:16px;padding:16px;border:1px solid #eceff1}
.sns-tile h4{margin:6px 0 6px;font-size:16px}
.sns-tile p{margin:0;color:var(--muted);font-size:14px}
.sns-acc{margin:18px 0;border:1px solid #eceff1;border-radius:16px;overflow:hidden}
.sns-acc summary{list-style:none;padding:16px 18px;font-weight:700;cursor:pointer}
.sns-acc .content{padding:0 18px 18px;color:var(--muted);font-size:14px}
.sns-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}
@media(max-width:720px){.sns-trust{grid-template-columns:1fr 1fr}}
.sns-trust .chip{background:#fff;border:1px solid #eceff1;border-radius:12px;padding:10px 12px;font-size:12px;display:flex;gap:8px;align-items:center}
.sns-dot{width:8px;height:8px;border-radius:50%;background:var(--brand)}
.sns-rev{background:#fff;border:1px solid #eceff1;border-radius:14px;padding:14px;margin-bottom:10px}
.sns-rev strong{font-size:14px}
.sns-sticky{position:sticky;bottom:0;background:#ffffffd9;backdrop-filter:saturate(160%) blur(8px);border-top:1px solid #eceff1;padding:10px 12px;margin-top:18px}
.sns-sticky .row{display:flex;gap:10px;align-items:center}
.sns-sticky .price{font-weight:800;font-size:18px;margin-right:auto}
/* Make announcement bar text scroll like a ticker */
.announcement-bar__message {
  display: inline-block;
  white-space: nowrap;
  animation: ticker 12s linear infinite;
}

@keyframes ticker {
  0%   { transform: translateX(100%); }
  100% { transform: translateX(-100%); }
}
/* Announcement bar background + text color */
.announcement-bar {
  background-color: #000000 !important; /* Black background */
  color: #ffffff !important;           /* White text */
}

/* If you want links inside the bar to also be white */
.announcement-bar a {
  color: #ffffff !important;
}
/* Make entire announcement bar solid black with Poppins font */
#shopify-section-announcement-bar,
.shopify-section-announcement,
.header__announcement-bar,
.section-announcement,
.announcement-bar {
  background-color: #000 !important;   /* Full-width black background */
  color: #fff !important;              /* White text */
  font-family: 'Poppins', sans-serif !important; /* Match site font */
}

/* Ensure inner wrappers don’t override the black */
.announcement-bar .page-width,
.announcement-bar__message,
.announcement-bar__text,
.announcement-bar__link,
.marquee,
.marquee * {
  background: transparent !important;  /* Let black show through */
  color: #fff !important;              /* White text */
  fill: #fff !important;               /* White icons */
  opacity: 1 !important;
  font-family: 'Poppins', sans-serif !important;
}

/* Styling for visibility */
.announcement-bar,
.announcement-bar__message,
.marquee {
  font-weight: 600 !important;          /* Medium-bold */
  text-align: center !important;        /* Centered */
  letter-spacing: 0.5px;                /* Slight spacing for readability */
}/* Full-width solid black announcement bar with Poppins font */
#shopify-section-announcement-bar,
.shopify-section-announcement,
.header__announcement-bar,
.section-announcement,
.announcement-bar {
  width: 100% !important;
  background-color: #000 !important;   /* Full-width black background */
  color: #fff !important;              /* White text */
  font-family: 'Poppins', sans-serif !important;
}

/* Make sure inner wrappers don't shrink or add white gaps */
.announcement-bar .page-width,
.announcement-bar__message,
.announcement-bar__text,
.announcement-bar__link,
.marquee,
.marquee * {
  width: 100% !important;
  background: transparent !important;
  color: #fff !important;
  fill: #fff !important;
  opacity: 1 !important;
  font-family: 'Poppins', sans-serif !important;
  font-weight: 400 !important;    /* Regular weight, not bold */
  text-align: center !important;
}

/* Adjust sizing and spacing */
.announcement-bar__message,
.marquee {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 16px !important;     /* Adjust size to match site */
  letter-spacing: 0.3px !important;
  line-height: 1.5 !important;
}
/* === STATIC ANNOUNCEMENT BAR, FULL WIDTH === */

/* Style the whole bar */
#shopify-section-announcement-bar,
.announcement-bar {
  width: 100% !important;
  background: #000 !important;   /* Black background */
  color: #fff !important;        /* White text */
  font-family: 'Poppins', sans-serif !important;
  text-align: center !important;
  padding: 12px 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  position: relative !important;
  z-index: 99;
}

/* Kill ticker/marquee animation, force text to stay static */
.marquee,
.marquee * {
  animation: none !important;
  transform: none !important;
  transition: none !important;
  white-space: normal !important;
  overflow: visible !important;
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  position: static !important;
}

/* Style the actual text */
.announcement-bar__message,
.announcement-bar__text,
.announcement-bar__link {
  color: #fff !important;
  font-family: 'Poppins', sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  margin: 0 auto !important;
}
/* Force announcement bar to span the full viewport width */
#shopify-section-announcement-bar,
.announcement-bar {
  width: 100vw !important;        /* full viewport width */
  max-width: 100vw !important;
  background-color: #000 !important;
  margin: 0 !important;
  padding: 12px 0 !important;
  box-sizing: border-box !important;
  position: relative !important;
  left: 0 !important;
  right: 0 !important;
}

/* === Full-width black announcement bar, fixed left/right === */
#shopify-section-announcement-bar,
.announcement-bar {
  position: relative !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;

  width: 100vw !important;        /* full viewport width */
  max-width: 100vw !important;

  background-color: #000 !important;
  color: #fff !important;

  margin: 0 !important;
  padding: 12px 0 !important;
  box-sizing: border-box !important;

  font-family: 'Poppins', sans-serif !important;
  text-align: center !important;
  z-index: 99;
}

/* Reset container inside so it doesn't add side margins */
.announcement-bar .page-width {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}

/* Text styling */
.announcement-bar__message,
.announcement-bar__text,
.announcement-bar__link {
  color: #fff !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
/* Remove default page margins that cause left gap */
html, body {
  margin: 0 !important;
  padding: 0 !important;
  background-color: #fff; /* or your site background */
  overflow-x: hidden;     /* prevent horizontal scrollbars */
}
  text-align: center !important;
  margin: 0 auto !important;
}

}
/* Double-space product description text */
.product__description,
.product__description p {
  line-height: 2 !important;   /* 2 = double spacing */
}

}/* === FULL-BLEED, STATIC ANNOUNCEMENT BAR (Poppins 400) === */
#shopify-section-announcement-bar,
.announcement-bar {
  /* make the section stretch edge-to-edge, even inside centered layouts */
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  width: 100vw !important;
  max-width: none !important;

  background: #000 !important;
  color: #fff !important;
  padding: 12px 0 !important;
  text-align: center !important;
  font-family: 'Poppins', sans-serif !important;
  z-index: 1000 !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* remove any overlays/pseudo elements some themes use */
#shopify-section-announcement-bar::before,
#shopify-section-announcement-bar::after,
.announcement-bar::before,
.announcement-bar::after {
  content: none !important;
  display: none !important;
  background: transparent !important;
}

/* prevent the inner wrapper from re-adding side padding or a max-width */
#shopify-section-announcement-bar .page-width,
.announcement-bar .page-width {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}

/* kill the ticker completely and keep text static */
.marquee,
.marquee * {
  animation: none !important;
  transform: none !important;
  transition: none !important;
  white-space: normal !important;
  overflow: visible !important;
  display: block !important;
  position: static !important;
}

/* clean text style */
.announcement-bar__message,
.announcement-bar__text,
.announcement-bar__link {
  color: #fff !important;
  font-family: 'Poppins', sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  margin: 0 auto !important;
}
/* === FULL-BLEED, STATIC ANNOUNCEMENT BAR (Poppins 400) === */
#shopify-section-announcement-bar,
.announcement-bar {
  /* make the section stretch edge-to-edge, even inside centered layouts */
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  width: 100vw !important;
  max-width: none !important;

  background: #000 !important;
  color: #fff !important;
  padding: 12px 0 !important;
  text-align: center !important;
  font-family: 'Poppins', sans-serif !important;
  z-index: 1000 !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* remove any overlays/pseudo elements some themes use */
#shopify-section-announcement-bar::before,
#shopify-section-announcement-bar::after,
.announcement-bar::before,
.announcement-bar::after {
  content: none !important;
  display: none !important;
  background: transparent !important;
}

/* prevent the inner wrapper from re-adding side padding or a max-width */
#shopify-section-announcement-bar .page-width,
.announcement-bar .page-width {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}

/* kill the ticker completely and keep text static */
.marquee,
.marquee * {
  animation: none !important;
  transform: none !important;
  transition: none !important;
  white-space: normal !important;
  overflow: visible !important;
  display: block !important;
  position: static !important;
}

/* clean text style */
.announcement-bar__message,
.announcement-bar__text,
.announcement-bar__link {
  color: #fff !important;
  font-family: 'Poppins', sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  margin: 0 auto !important;
}
/* === Announcement/Ticker universal styling === */
#shopify-section-announcement-bar,
.shopify-section-announcement,
.header__announcement-bar,
.announcement-bar,
.announcement-bar__message,
.announcement,
.ticker, .ticker__wrap, .ticker__item,
.marquee, .marquee__content, .marquee__inner,
[id*="announcement"], [class*="announcement"],
[id*="marquee"], [class*="marquee"] {
  background-color: #F8F9FA !important;
}
<script>
document.addEventListener('DOMContentLoaded', function () {
  // Close any product accordions that load open
  document.querySelectorAll('details[open]').forEach(d => d.removeAttribute('open'));

  // If your theme uses a specific class, narrow it:
  // document.querySelectorAll('details.product__accordion[open]').forEach(d => d.removeAttribute('open'));
});
</script>
<script>
(function () {
  function closeAll() {
    // Close <details open>
    document.querySelectorAll('details[open]').forEach(d => d.removeAttribute('open'));

    // Close ARIA-style accordions (buttons/links that toggle panels)
    document.querySelectorAll('[aria-controls][aria-expanded="true"]').forEach(ctrl => {
      const id = ctrl.getAttribute('aria-controls');
      const panel = id && document.getElementById(id);
      ctrl.setAttribute('aria-expanded', 'false');
      if (panel) {
        panel.setAttribute('hidden', 'true');          // Dawn/Refresh panels
        panel.style.display = 'none';                  // Catch-all for app panels
        panel.classList.remove('is-open', 'open');     // Common app classes
      }
    });

    // Close common “open” classes some apps add
    document.querySelectorAll('.is-open, .open, .expanded').forEach(el => {
      el.classList.remove('is-open', 'open', 'expanded');
      if (!el.hasAttribute('hidden')) el.setAttribute('hidden', 'true');
      el.style.display = 'none';
    });
  }

  // 1) Close right after DOM is ready
  document.addEventListener('DOMContentLoaded', closeAll);

  // 2) Close again after all apps/widgets finish initializing
  window.addEventListener('load', function () {
    setTimeout(closeAll, 300);
  });

  // 3) If any app re-opens it later, close it again
  new MutationObserver(function (muts) {
    let touched = false;
    muts.forEach(m => {
      m.addedNodes && m.addedNodes.forEach(n => {
        if (n.nodeType === 1) {
          if (n.matches && n.matches('details[open], .is-open, .open, .expanded')) touched = true;
          if (n.querySelectorAll) {
            if (n.querySelector('details[open], .is-open, .open, .expanded')) touched = true;
          }
        }
      });
    });
    if (touched) closeAll();
  }).observe(document.documentElement, { childList: true, subtree: true });

  // 4) Ignore hash anchors that auto-open sections (optional; comment out if you need hashes)
  if (location.hash && /^(#(shipping|returns|specs|faq|reviews))$/i.test(location.hash)) {
    history.replaceState(null, '', location.pathname + location.search);
  }
})();
</script>
/* --- Clean Multicolumn / Text columns with icons --- */
section.multicolumn .multicolumn-list,
section.text-with-icons .text-with-icons__grid {
  gap: 24px !important;
}
/* --- Clean Multicolumn / Text columns with icons --- */
section.multicolumn .multicolumn-list,
section.text-with-icons .text-with-icons__grid {
  gap: 24px !important;
}

section.multicolumn .multicolumn-card,
section.text-with-icons .text-with-icons__item {
  background: #ffffff !important;
  border: 1px solid rgba(0,0,0,.06) !important;
  border-radius: 16px !important;
  padding: 20px 18px !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.06) !important;
}

/* Headings */
section.multicolumn .multicolumn-card__info h3,
section.text-with-icons .text-with-icons__item h3 {
  font-size: 18px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  margin-bottom: 6px !important;
  color: #111 !important;
}

/* Body text */
section.multicolumn .multicolumn-card__info p,
section.text-with-icons .text-with-icons__item p {
  font-size: 15px !important;
  line-height: 1.55 !important;
  color: #3a3a3a !important;
  margin: 0 !important;
}

/* Optional icon/image (clean look, no emojis) */
section.multicolumn .multicolumn-card__image-wrapper,
section.text-with-icons .text-with-icons__icon {
  margin-bottom: 12px !important;
}
section.multicolumn .multicolumn-card__image,
section.text-with-icons .text-with-icons__icon img,
section.text-with-icons .text-with-icons__icon svg {
  max-width: 64px !important;
  max-height: 64px !important;
}

/* Layout alignment */
section.multicolumn .multicolumn-card,
section.multicolumn .multicolumn-card__info,
section.text-with-icons .text-with-icons__item { 
  text-align: left !important; 
}

/* Mobile tweaks */
@media (max-width: 749px) {
  section.multicolumn .multicolumn-list,
  section.text-with-icons .text-with-icons__grid { gap: 16px !important; }
  section.multicolumn .multicolumn-card,
  section.text-with-icons .text-with-icons__item { padding: 16px 14px !important; }
  section.multicolumn .multicolumn-card__image,
  section.text-with-icons .text-with-icons__icon img,
  section.text-with-icons .text-with-icons__icon svg { 
    max-width: 52px !important; 
    max-height: 52px !important; 
  }
}

section.multicolumn .multicolumn-card,
section.text-with-icons .text-with-icons__item {
  background: #ffffff !important;
  border: 1px solid rgba(0,0,0,.06) !important;
  border-radius: 16px !important;
  padding: 20px 18px !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.06) !important;
}

/* Headings */
section.multicolumn .multicolumn-card__info h3,
section.text-with-icons .text-with-icons__item h3 {
  font-size: 18px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  margin-bottom: 6px !important;
  color: #111 !important;
}

/* Body text */
section.multicolumn .multicolumn-card__info p,
section.text-with-icons .text-with-icons__item p {
  font-size: 15px !important;
  line-height: 1.55 !important;
  color: #3a3a3a !important;
  margin: 0 !important;
}

/* Optional icon/image (clean look, no emojis) */
section.multicolumn .multicolumn-card__image-wrapper,
section.text-with-icons .text-with-icons__icon {
  margin-bottom: 12px !important;
}
section.multicolumn .multicolumn-card__image,
section.text-with-icons .text-with-icons__icon img,
section.text-with-icons .text-with-icons__icon svg {
  max-width: 64px !important;
  max-height: 64px !important;
}

/* Layout alignment */
section.multicolumn .multicolumn-card,
section.multicolumn .multicolumn-card__info,
section.text-with-icons .text-with-icons__item { 
  text-align: left !important; 
}

/* Mobile tweaks */
@media (max-width: 749px) {
  section.multicolumn .multicolumn-list,
  section.text-with-icons .text-with-icons__grid { gap: 16px !important; }
  section.multicolumn .multicolumn-card,
  section.text-with-icons .text-with-icons__item { padding: 16px 14px !important; }
  section.multicolumn .multicolumn-card__image,
  section.text-with-icons .text-with-icons__icon img,
  section.text-with-icons .text-with-icons__icon svg { 
    max-width: 52px !important; 
    max-height: 52px !important; 
  }
}
/* --- Clean Multicolumn / Text columns with icons --- */
section.multicolumn .multicolumn-list,
section.text-with-icons .text-with-icons__grid {
  gap: 24px !important;
}
section.multicolumn .multicolumn-card,
section.text-with-icons .text-with-icons__item {
  background: #ffffff !important;
  border: 1px solid rgba(0,0,0,.06) !important;
  border-radius: 16px !important;
  padding: 20px 18px !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.06) !important;
}
section.multicolumn .multicolumn-card__info h3,
section.text-with-icons .text-with-icons__item h3 {
  font-size: 18px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  margin-bottom: 6px !important;
  color: #111 !important;
}
section.multicolumn .multicolumn-card__info p,
section.text-with-icons .text-with-icons__item p {
  font-size: 15px !important;
  line-height: 1.55 !important;
  color: #3a3a3a !important;
  margin: 0 !important;
}
section.multicolumn .multicolumn-card__image-wrapper,
section.text-with-icons .text-with-icons__icon {
  margin-bottom: 12px !important;
}
section.multicolumn .multicolumn-card__image,
section.text-with-icons .text-with-icons__icon img,
section.text-with-icons .text-with-icons__icon svg {
  max-width: 64px !important;
  max-height: 64px !important;
}
section.multicolumn .multicolumn-card,
section.multicolumn .multicolumn-card__info,
section.text-with-icons .text-with-icons__item { 
  text-align: left !important; 
}
@media (max-width: 749px) {
  section.multicolumn .multicolumn-list,
  section.text-with-icons .text-with-icons__grid { gap: 16px !important; }
  section.multicolumn .multicolumn-card,
  section.text-with-icons .text-with-icons__item { padding: 16px 14px !important; }
  section.multicolumn .multicolumn-card__image,
  section.text-with-icons .text-with-icons__icon img,
  section.text-with-icons .text-with-icons__icon svg { 
    max-width: 52px !important; 
    max-height: 52px !important; 
  }
}
/* Force the announcement bar to black background with white text (Dawn & OS2 themes) */
#shopify-section-announcement-bar,
#shopify-section-announcement-bar .announcement-bar,
.header__announcement-bar,
.announcement-bar {
  --color-background: 0,0,0;
  --gradient-background: 0,0,0;
  --color-foreground: 255,255,255;
  background-color: #000 !important;
  background-image: none !important;
  color: #fff !important;
}

/* Make links/icons inside the bar white too */
#shopify-section-announcement-bar a,
#shopify-section-announcement-bar .link,
.announcement-bar a,
.announcement-bar .link {
  color: #fff !important;
  text-decoration-color: #fff !important;
}

#shopify-section-announcement-bar svg,
.announcement-bar svg {
  color: #fff !important;
  fill: #fff !important;
}/* Remove white background box inside announcement bar */
.announcement-bar__message,
.announcement-bar__text,
.announcement-bar span {
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}
/* Style for hero "Shop Now" button */
.button,
.shopify-section .button {
  background-color: #FF6B81 !important; /* fruity pink */
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 0.9rem 1.5rem !important;
  font-weight: 600;
  transition: background 0.2s ease-in-out;
}

.button:hover {
  background-color: #e55b72 !important; /* darker pink hover */
}
/* Remove rectangular button shadow */
.button,
.shopify-section .button {
  box-shadow: none !important;      /* kills the default blocky shadow */
  border-radius: 999px !important;  /* keeps pill shape */
}

/* Optional: Add a softer shadow that matches the rounded shape */
.button,
.shopify-section .button {
  box-shadow: 0 4px 12px rgba(0,0,0,0.12); /* soft glow */
}
/* Remove the extra background & shadow behind buttons */
.button,
.shopify-section .button,
.shopify-section .button:before,
.shopify-section .button:after {
  box-shadow: none !important;
  background: #FF6B81 !important; /* your pink */
  border-radius: 999px !important;
}

/* Make sure container doesn't add a blocky background */
.shopify-section .button-wrapper,
.shopify-section .button::before {
  background: transparent !important;
  box-shadow: none !important;
}
/* Fix Dawn button: show label, kill blocky shadow/backplate */
.button,
.button--primary,
.shopify-payment-button__button--unbranded {
  position: relative;
  background-color: #FF6B81 !important; /* your pink */
  color: #ffffff !important;            /* bring text back */
  border-radius: 999px !important;
  box-shadow: none !important;
  padding: 0.9rem 1.5rem !important;
  font-weight: 600;
}

/* Remove Dawn's overlay layers that were covering the text */
.button::before,
.button::after,
.button--primary::before,
.button--primary::after {
  content: none !important;             /* fully disable the layers */
  background: transparent !important;
  box-shadow: none !important;
  border-radius: inherit !important;
}
/* Force pill button, remove rectangular backplate */
.button,
.button--primary,
.shopify-payment-button__button--unbranded {
  background-color: #FF6B81 !important; /* fruity pink */
  color: #ffffff !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  border: none !important;
  position: relative;
  z-index: 1;
}

/* Remove Dawn’s pseudo-elements that create the rectangle */
.button::before,
.button::after,
.button--primary::before,
.button--primary::after,
.shopify-section .button::before,
.shopify-section .button::after {
  content: none !important;
  background: none !important;
  box-shadow: none !important;
  border: none !important;
}
.button:hover {
  background-color: #e55b72 !important;
}
@media (max-width: 600px) {
  .hero-brand-intro h2 {
    font-size: 1.5rem !important;
  }
}
.header {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
.header__heading-logo {
  max-height: 42px !important; /* keep logo balanced */
}
/* Header padding: make header tighter but keep logo proportionate */
.header {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* Logo sizing: scale proportionally instead of squishing */
.header__heading-logo {
  max-height: 44px !important;  /* caps height */
  width: auto !important;       /* keeps aspect ratio */
  height: auto !important;      /* ensures proportional scaling */
  object-fit: contain !important;
}
/* Header padding: keep slim */
.header {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

/* Logo: larger but proportional */
.header__heading-logo {
  max-height: 70px !important;   /* increase height so it’s readable */
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}
/* --- Logo resizing & retina optimization --- */

/* Desktop & general */
.header__heading-logo {
  max-height: 85px !important;   /* adjust between 70–90px depending on taste */
  width: auto !important;        /* keeps proportions */
  height: auto !important;
  object-fit: contain !important;
}

/* Mobile screens */
@media (max-width: 768px) {
  .header__heading-logo {
    max-height: 65px !important; /* slightly smaller on phones */
  }
}

/* Retina optimization: ensure sharp scaling */
.header__heading-logo img {
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}
/* Make header logo bigger and readable */
.header__heading-logo {
  max-height: 110px !important;  /* increase this if you want it even larger */
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Mobile adjustments */
@media (max-width: 768px) {
  .header__heading-logo {
    max-height: 80px !important; /* still large but fits on phones */
  }
}
/* Force larger logo container */
.header__heading,
.header__heading-link,
.header__heading-logo {
  max-width: none !important;
  max-height: none !important;
}

/* Set a larger readable logo size */
.header__heading-logo {
  height: 100px !important;   /* adjust: try 90px–120px for comfort */
  width: auto !important;
  object-fit: contain !important;
}

/* Mobile: scale down a bit so it doesn’t dominate */
@media (max-width: 768px) {
  .header__heading-logo {
    height: 75px !important;
  }
}
/* Allow larger logo in Dawn header and keep proportions */
.header__heading,
.header__heading-link,
.header__heading-logo,
.header__heading-logo-wrapper {
  max-width: none !important;
  max-height: none !important;
}

/* Target the actual IMG inside the header wrapper */
.header__heading-logo,
.header__heading-logo-wrapper img {
  height: 110px !important;   /* adjust: 90–130px as you like */
  width: auto !important;
  object-fit: contain !important;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}

/* Mobile: scale down a bit so it doesn't overpower the icons */
@media (max-width: 768px) {
  .header__heading-logo,
  .header__heading-logo-wrapper img {
    height: 80px !important;
  }
}
/* Remove white box on banner/slideshow text in Dawn */
.banner__content .banner__box,
.slideshow__text-content,
.slideshow__text-wrapper .slideshow__text-content {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Force lifestyle images to stack vertically */
.multicolumn,
.image-banner__media,
.image-with-text__grid {
  display: block !important;
}

.multicolumn__item,
.image-banner__media,
.image-with-text__media {
  width: 100% !important;
  max-width: 100% !important;
}

/* Force lifestyle images to stack vertically */
.multicolumn,
.image-banner__media,
.image-with-text__grid {
  display: block !important;
}

.multicolumn__item,
.image-banner__media,
.image-with-text__media {
  width: 100% !important;
  max-width: 100% !important;
}
/* --- Force lifestyle images to stack vertically on desktop --- */
.image-with-text__grid,
.multicolumn__wrapper,
.collage {
  display: block !important;
}

.image-with-text__media-item,
.image-with-text__text-item,
.multicolumn-list__item,
.collage__item {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
}
/* Force Image banner split layout to stack on desktop */
.image-banner--split {
  display: block !important;
}

/* Force Image banner text & CTA to overlay on mobile */
@media screen and (max-width: 749px) {
  .banner__content {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    text-align: center !important;
    width: 90% !important;
    color: #fff !important; /* makes text readable */
    z-index: 2;
  }

  .banner {
    position: relative !important;
  }
}
/* Desktop: keep overlay for lifestyle banners */
@media screen and (min-width: 750px) {
  .banner__content {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    text-align: center !important;
    color: #fff !important;
    z-index: 2;
  }

  .banner {
    position: relative !important;
  }
}

/* Mobile: put text below image */
@media screen and (max-width: 749px) {
  .banner__content {
    position: static !important;
    transform: none !important;
    padding: 1rem;
    text-align: center;
    color: inherit !important; /* uses theme color for readability */
  }
}
/* Mobile: make banner text dark when it's below the image */
@media (max-width: 749px) {
  .banner--mobile-bottom .banner__content,
  .banner--mobile-bottom .banner__content * {
    color: #1f2937 !important; /* dark gray text */
  }

  /* CTA button style for mobile */
  .banner--mobile-bottom .banner__buttons .button {
    background: #ff6b82 !important; /* your pink brand color */
    color: #fff !important;
    border: none !important;
  }
}
<div class="alireviews-review-widget" data-widget-id="carousel"></div>
<!-- AliReviews Carousel -->
<div class="alireviews-review-widget" 
     data-widget-id="carousel" 
     data-type="carousel">
</div>
<div style="background:#faf8f5; padding:40px 20px; text-align:center; border-radius:20px; max-width:900px; margin:40px auto;">
  <h2 style="font-size:1.5rem; margin-bottom:16px;">⭐️⭐️⭐️⭐️⭐️ Rated 4.9/5 by 500+ happy customers</h2>
  <p style="margin:8px 0;">“So convenient for the gym, I love it.” – Marcus</p>
  <p style="margin:8px 0;">“I use it at work every day — blends perfectly!” – Sarah</p>
  <a href="/products/sip-n-spin-portable-blender#reviews" 
     style="display:inline-block; background:#ff6b82; color:#fff; text-decoration:none; padding:12px 28px; border-radius:40px; font-weight:600; margin-top:20px;">
    Read More Reviews
  </a>
</div>
<div style="background:#faf8f5; padding:40px 20px; text-align:center; border-radius:20px; max-width:900px; margin:40px auto;">
  <h2 style="font-size:1.5rem; margin-bottom:16px;">⭐️⭐️⭐️⭐️⭐️ Rated 4.9/5 by 500+ happy customers</h2>
  <p style="margin:8px 0;">“So convenient for the gym, I love it.” – Marcus</p>
  <p style="margin:8px 0;">“I use it at work every day — blends perfectly!” – Sarah</p>
  <a href="/products/sip-n-spin-portable-blender#reviews" 
     style="display:inline-block; background:#ff6b82; color:#fff; text-decoration:none; padding:12px 28px; border-radius:40px; font-weight:600; margin-top:20px;">
    Read More Reviews
  </a>
</div>
<div class="mf-multicol">
  <div class="mf-multicol__grid">
    <article class="mf-card">
      <h3>Blend Anywhere</h3>
      <p>Lightweight and portable — desk to gym to travel.</p>
    </article>

    <article class="mf-card">
      <h3>USB-C Rechargeable</h3>
      <p>8–12 blends per charge. No cords, no outlets.</p>
    </article>

    <article class="mf-card">
      <h3>Powerful Blades</h3>
      <p>Crushes fruit and ice for smooth shakes in ~20s.</p>
    </article>

    <article class="mf-card">
      <h3>Easy Clean</h3>
      <p>Quick rinse or top-rack dishwasher for the bottle.</p>
    </article>
  </div>
</div>

/* Multi-column benefits grid */
.mf-multicol__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr); /* 4 columns */
  gap: 20px;
}

.mf-card {
  background: #fff; /* or var(--color-background-1) for theme matching */
  padding: 20px;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  text-align: center;
  transition: transform .2s ease, box-shadow .2s ease;
}

.mf-card h3 {
  margin-bottom: 10px;
  font-size: 1.1rem;
}

.mf-card p {
  font-size: .95rem;
  line-height: 1.4;
  opacity: .85;
}

.mf-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.12);
}

/* Responsive: stack columns on smaller screens */
@media (max-width: 989px) {
  .mf-multicol__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 749px) {
  .mf-multicol__grid {
    grid-template-columns: 1fr;
  }
}

.multicolumn-list{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.multicolumn-list__item{text-align:center;padding:20px;border-right:1px solid #e5e5e5}
.multicolumn-list__item:last-child{border-right:none}
@media(max-width:989px){.multicolumn-list{grid-template-columns:repeat(2,1fr)}.multicolumn-list__item:nth-child(2n){border-right:none}}
@media(max-width:749px){.multicolumn-list{grid-template-columns:1fr}.multicolumn-list__item{border-right:0;border-bottom:1px solid #e5e5e5}.multicolumn-list__item:last-child{border-bottom:0}}
/* Force multicolumns into real side-by-side columns */
@media (min-width: 990px){
  .multicolumn-list{
    display:grid !important;
    grid-template-columns:repeat(4,1fr) !important;
    gap:24px !important;
  }
  .multicolumn-list__item, .grid__item{
    width:auto !important;
    max-width:none !important;
  }
  slider-component{overflow:visible !important}
  .slider-buttons{display:none !important}
}

@media (max-width:989px){
  .multicolumn-list{grid-template-columns:repeat(2,1fr) !important}
}
@media (max-width:749px){
  .multicolumn-list{grid-template-columns:1fr !important}
}
<style>
  /* Benefits grid (self-contained) */
  #benefits { --bg: var(--color-background-3); --card:#fff; --text: var(--color-foreground); }
  #benefits { background: var(--bg); border-radius: 20px; padding: 40px 20px; margin: 40px auto; max-width: 1200px; }
  #benefits .grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
  #benefits .card { background: var(--card); color: var(--text); border-radius:14px; padding:20px; text-align:center;
                    box-shadow:0 6px 18px rgba(0,0,0,.06); }
  #benefits h3{ margin:0 0 8px; font-size:1.06rem; line-height:1.25; }
  #benefits p{ margin:0; opacity:.9; font-size:.95rem; line-height:1.45; }
  @media (max-width:989px){ #benefits .grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
  @media (max-width:749px){ #benefits .grid{ grid-template-columns:1fr; } #benefits{ padding:28px 16px; border-radius:16px; } }
</style>

<section id="benefits">
  <div class="grid">
    <article class="card">
      <h3>Blend Anywhere</h3>
      <p>Lightweight and portable — desk to gym to travel.</p>
    </article>
    <article class="card">
      <h3>USB-C Rechargeable</h3>
      <p>8–12 blends per charge. No cords, no outlets.</p>
    </article>
    <article class="card">
      <h3>Powerful Blades</h3>
      <p>Smooth shakes in ~20s — crushes fruit & ice.</p>
    </article>
    <article class="card">
      <h3>Easy Clean</h3>
      <p>Quick rinse or top-rack dishwasher for the bottle.</p>
    </article>
  </div>
</section>
/* ===== Multicolumn “3D pop” cards (Dawn-compatible) ===== */

/* 1) Set a perspective on the list so child cards can tilt in 3D */
.multicolumn .multicolumn-list,
.multicolumn .multicolumn-list__inner {
  perspective: 1200px;
}

/* 2) The card base */
.multicolumn .multicolumn-card {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  /* Light border + glassy overlay to separate from background */
  border: 1px solid rgba(0,0,0,.06);
  background: var(--card-bg, #f8f9fa);
  /* Soft depth (layered shadows) */
  box-shadow:
    0 1px 2px rgba(0,0,0,.06),
    0 8px 20px rgba(0,0,0,.08);
  transform-style: preserve-3d;        /* allow pseudo-layers to sit in 3D */
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

/* Subtle top highlight to fake a beveled edge */
.multicolumn .multicolumn-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(255,255,255,.35), rgba(255,255,255,0) 40%);
  transform: translateZ(1px);
}

/* Soft drop shadow layer behind the card (exaggerates depth) */
.multicolumn .multicolumn-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: 0 25px 40px rgba(0,0,0,.12);
  transform: translateZ(-1px) translateY(6px);
  opacity: .0;                         /* only show on hover/focus */
  transition: opacity .25s ease, transform .25s ease;
}

/* 3) Hover/focus “pop up” effect */
.multicolumn .multicolumn-card:hover,
.multicolumn .multicolumn-card:focus-within {
  transform: translateY(-8px) rotateX(2deg) rotateY(-1.5deg);
  box-shadow:
    0 4px 12px rgba(0,0,0,.08),
    0 18px 40px rgba(0,0,0,.14);
  filter: saturate(1.02);
}
.multicolumn .multicolumn-card:hover::after,
.multicolumn .multicolumn-card:focus-within::after {
  opacity: .65;
  transform: translateZ(-1px) translateY(12px);
}

/* 4) Tidy up inner spacing and text contrast */
.multicolumn .multicolumn-card__info {
  padding: 20px 18px 22px;
}
.multicolumn .title,
.multicolumn .multicolumn-card__title {
  font-weight: 700;                 /* headings bold */
}
.multicolumn .multicolumn-card__content,
.multicolumn .rte {                  /* body text not bold */
  font-weight: 400;
}

/* 5) Different background colors per column via nth-child
   (feel free to tweak these to your palette) */
.multicolumn .multicolumn-list__item:nth-child(3n+1) .multicolumn-card {
  --card-bg: linear-gradient(180deg, #F4F8FF, #E9F1FF);
}
.multicolumn .multicolumn-list__item:nth-child(3n+2) .multicolumn-card {
  --card-bg: linear-gradient(180deg, #F6FFF8, #EAF7EF);
}
.multicolumn .multicolumn-list__item:nth-child(3n+3) .multicolumn-card {
  --card-bg: linear-gradient(180deg, #FFF7F4, #FFEDE7);
}

/* Optional: add a faint pattern sheen for “material” feel */
.multicolumn .multicolumn-card {
  background-image:
    var(--card-bg),
    radial-gradient(1000px 400px at -10% -10%, rgba(255,255,255,.6), transparent 40%),
    radial-gradient(800px 300px at 110% 0%, rgba(255,255,255,.35), transparent 45%);
  background-blend-mode: normal, screen, screen;
}

/* 6) Keep columns side-by-side at tablet/desktop (Dawn uses grid) */
@media screen and (min-width: 750px) {
  .multicolumn .multicolumn-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)); /* 3 columns */
    gap: 18px;
  }
}

/* 7) Optional: “depth tilt” on mouse move (subtle) */
@media (hover:hover) {
  .multicolumn .multicolumn-card {
    --tilt: 0deg;
    transform: translateY(0) rotateX(var(--tilt)) rotateY(calc(var(--tilt)*-0.75));
  }
}
/* ===== Strong 3D POP for Dawn multicolumn cards ===== */

/* Put the 3D stage on the list */
.multicolumn .multicolumn-list,
.multicolumn .multicolumn-list__inner { perspective: 1200px; }

/* Reset any theme backgrounds so ours show through */
.multicolumn .multicolumn-card,
.multicolumn .multicolumn-card .card,
.multicolumn .multicolumn-card .card__inner {
  background: none !important;
  box-shadow: none;
}

/* Our card base (high specificity & !important where needed) */
.multicolumn .multicolumn-list__item > .multicolumn-card {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.08);
  background: var(--card-bg, #f8f9fa) !important;
  transform-style: preserve-3d;
  transition: transform .28s ease, box-shadow .28s ease, filter .28s ease;
  box-shadow:
    0 2px 6px rgba(0,0,0,.08),
    0 18px 40px rgba(0,0,0,.14) !important; /* stronger base */
}

/* Top “sheen” for beveled vibe */
.multicolumn .multicolumn-list__item > .multicolumn-card::before {
  content:""; position:absolute; inset:0; pointer-events:none;
  background: linear-gradient(to bottom, rgba(255,255,255,.5), rgba(255,255,255,0) 42%);
}

/* Deep shadow that separates from page on hover */
.multicolumn .multicolumn-list__item > .multicolumn-card::after {
  content:""; position:absolute; inset:0; border-radius:inherit;
  box-shadow: 0 30px 60px rgba(0,0,0,.28);
  transform: translateY(10px);
  opacity: 0; transition: opacity .28s ease, transform .28s ease;
}

/* Hover/focus lift + slight tilt */
.multicolumn .multicolumn-list__item > .multicolumn-card:hover,
.multicolumn .multicolumn-list__item > .multicolumn-card:focus-within {
  transform: translateY(-14px) rotateX(2.2deg) rotateY(-1.2deg);
  box-shadow:
    0 6px 16px rgba(0,0,0,.10),
    0 28px 70px rgba(0,0,0,.22) !important;
  filter: saturate(1.06);
}
.multicolumn .multicolumn-list__item > .multicolumn-card:hover::after,
.multicolumn .multicolumn-list__item > .multicolumn-card:focus-within::after {
  opacity: .75; transform: translateY(16px);
}

/* Padding & text contrast */
.multicolumn .multicolumn-card__info { padding: 22px 20px 24px; }
.multicolumn .multicolumn-card__title { color:#111 !important; font-weight:800; }
.multicolumn .multicolumn-card__content { color:#2b2b2b; font-weight:400; }

/* Bolder, punchier colorways per column (edit hexes to taste) */
.multicolumn .multicolumn-list__item:nth-child(4n+1) > .multicolumn-card {
  --card-bg:
    radial-gradient(90% 120% at 20% 0%, #ffffff88 0%, #ffffff00 55%),
    linear-gradient(180deg, #E3F2FF 0%, #B9D9FF 100%);
  outline: 2px solid #72B7FF22;
}
.multicolumn .multicolumn-list__item:nth-child(4n+2) > .multicolumn-card {
  --card-bg:
    radial-gradient(90% 120% at 20% 0%, #ffffff88 0%, #ffffff00 55%),
    linear-gradient(180deg, #E6FFE9 0%, #BFF5C9 100%);
  outline: 2px solid #6AD38A22;
}
.multicolumn .multicolumn-list__item:nth-child(4n+3) > .multicolumn-card {
  --card-bg:
    radial-gradient(90% 120% at 20% 0%, #ffffff88 0%, #ffffff00 55%),
    linear-gradient(180deg, #FFF0E9 0%, #FFCBB8 100%);
  outline: 2px solid #FF9F7A22;
}
.multicolumn .multicolumn-list__item:nth-child(4n+4) > .multicolumn-card {
  --card-bg:
    radial-gradient(90% 120% at 20% 0%, #ffffff88 0%, #ffffff00 55%),
    linear-gradient(180deg, #F3E9FF 0%, #D7BFFF 100%);
  outline: 2px solid #B68CFF22;
}

/* Subtle inner “material” texture so colors feel richer */
.multicolumn .multicolumn-list__item > .multicolumn-card {
  background-blend-mode: normal, multiply;
}

/* Keep columns side-by-side (3-up) */
@media (min-width: 750px) {
  .multicolumn .multicolumn-list {
    display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:20px;
  }
}
/* DEBUG: should turn the first card HOT PINK */
.multicolumn .multicolumn-list__item:first-child .multicolumn-card {
  background: hotpink !important;
}
/* TEMP DEBUG — outlines the multicolumn area if selector matches */
section[id*="multicolumn"], [data-section-type="multicolumn"], .shopify-section--multicolumn, .multicolumn {
  outline: 3px dashed red !important;
}
/* ===== Nuclear override: make multicolumn cards POP, even if wrappers differ ===== */

/* 0) Quick proof you're hitting the right elements (TEMP) */
.shopify-section :is(.multicolumn-card, .card--text, .card, .feature-card, .card__inner) {
  outline: 1px solid transparent; /* harmless; lets our selector win */
}

/* 1) Stage for 3D */
.shopify-section :is(.multicolumn-list, .grid, .cards) { perspective: 1200px; }

/* 2) Reset theme backgrounds so ours are visible */
.shopify-section :is(.multicolumn-card, .card--text, .card, .card__inner, .feature-card) {
  background: none !important;
  box-shadow: none !important;
}

/* 3) Card base — applies to ANY of the common card wrappers */
.shopify-section .grid .grid__item > :is(.multicolumn-card, .card--text, .card, .feature-card, .card__inner),
.shopify-section :is(.multicolumn-card, .card--text, .card, .feature-card) {
  position: relative;
  border-radius: 20px !important;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.08) !important;
  background: var(--pop-bg, #f7f7f7) !important;
  transform-style: preserve-3d;
  transition: transform .28s ease, box-shadow .28s ease, filter .28s ease;
  box-shadow:
    0 2px 8px rgba(0,0,0,.10),
    0 26px 60px rgba(0,0,0,.22) !important;
}

/* Bevel sheen */
.shopify-section :is(.multicolumn-card, .card--text, .card, .feature-card)::before {
  content:""; position:absolute; inset:0; pointer-events:none;
  background: linear-gradient(to bottom, rgba(255,255,255,.55), rgba(255,255,255,0) 42%);
}

/* Deep hover shadow */
.shopify-section :is(.multicolumn-card, .card--text, .card, .feature-card)::after {
  content:""; position:absolute; inset:0; border-radius:inherit;
  box-shadow: 0 36px 80px rgba(0,0,0,.30);
  transform: translateY(10px);
  opacity: 0; transition: opacity .28s ease, transform .28s ease;
}

/* Lift + tilt on hover/focus */
.shopify-section :is(.multicolumn-card, .card--text, .card, .feature-card):hover,
.shopify-section :is(.multicolumn-card, .card--text, .card, .feature-card):focus-within {
  transform: translateY(-16px) rotateX(2deg) rotateY(-1.2deg);
  box-shadow:
    0 8px 18px rgba(0,0,0,.12),
    0 34px 86px rgba(0,0,0,.26) !important;
  filter: saturate(1.12);
}
.shopify-section :is(.multicolumn-card, .card--text, .card, .feature-card):hover::after,
.shopify-section :is(.multicolumn-card, .card--text, .card, .feature-card):focus-within::after {
  opacity: .85; transform: translateY(18px);
}

/* 4) Typography (keeps headings bold, body normal) */
.shopify-section :is(.multicolumn-card__title, .card__heading) { color:#0f1111 !important; font-weight:800 !important; }
.shopify-section :is(.multicolumn-card__content, .rte, .card__content) { color:#2a2a2a !important; font-weight:400 !important; }

/* 5) Loud colorways per column (change hexes if you want) */
.shopify-section .grid .grid__item:nth-child(4n+1) > :is(.multicolumn-card, .card--text, .card, .feature-card, .card__inner) {
  --pop-bg:
    radial-gradient(110% 140% at 15% -10%, #ffffffaa 0%, #ffffff00 55%),
    linear-gradient(180deg, #B9D9FF 0%, #73B7FF 100%);
  outline: 2px solid #73B7FF33;
}
.shopify-section .grid .grid__item:nth-child(4n+2) > :is(.multicolumn-card, .card--text, .card, .feature-card, .card__inner) {
  --pop-bg:
    radial-gradient(110% 140% at 15% -10%, #ffffffaa 0%, #ffffff00 55%),
    linear-gradient(180deg, #BFF5C9 0%, #6FD48B 100%);
  outline: 2px solid #6FD48B33;
}
.shopify-section .grid .grid__item:nth-child(4n+3) > :is(.multicolumn-card, .card--text, .card, .feature-card, .card__inner) {
  --pop-bg:
    radial-gradient(110% 140% at 15% -10%, #ffffffaa 0%, #ffffff00 55%),
    linear-gradient(180deg, #FFCBB8 0%, #FF996E 100%);
  outline: 2px solid #FF996E33;
}
.shopify-section .grid .grid__item:nth-child(4n+4) > :is(.multicolumn-card, .card--text, .card, .feature-card, .card__inner) {
  --pop-bg:
    radial-gradient(110% 140% at 15% -10%, #ffffffaa 0%, #ffffff00 55%),
    linear-gradient(180deg, #D7BFFF 0%, #B68CFF 100%);
  outline: 2px solid #B68CFF33;
}

/* 6) Ensure 3-up layout on desktop (if theme collapsed them) */
@media (min-width: 750px) {
  .shopify-section :is(.multicolumn-list, .grid, .cards) {
    display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px;
  }
}
/* POP colors + 3D (super short version) */
.multicolumn .multicolumn-list{perspective:1200px}
.multicolumn .multicolumn-card{position:relative;border-radius:20px;overflow:hidden;border:1px solid rgba(0,0,0,.08);background:var(--bg,#f7f7f7)!important;box-shadow:0 2px 8px rgba(0,0,0,.10),0 26px 60px rgba(0,0,0,.22)!important;transition:.28s}
.multicolumn .multicolumn-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,0) 42%);pointer-events:none}
.multicolumn .multicolumn-card:hover,.multicolumn .multicolumn-card:focus-within{transform:translateY(-14px);box-shadow:0 8px 18px rgba(0,0,0,.12),0 34px 86px rgba(0,0,0,.26)!important;filter:saturate(1.1)}
/* loud gradients per column */
.multicolumn .multicolumn-list__item:nth-child(4n+1)>.multicolumn-card{--bg:linear-gradient(180deg,#B9D9FF,#73B7FF)}
.multicolumn .multicolumn-list__item:nth-child(4n+2)>.multicolumn-card{--bg:linear-gradient(180deg,#BFF5C9,#6FD48B)}
.multicolumn .multicolumn-list__item:nth-child(4n+3)>.multicolumn-card{--bg:linear-gradient(180deg,#FFCBB8,#FF996E)}
.multicolumn .multicolumn-list__item:nth-child(4n+4)>.multicolumn-card{--bg:linear-gradient(180deg,#D7BFFF,#B68CFF)}
/* keep 3-up */
@media(min-width:750px){.multicolumn .multicolumn-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}
/* POP colors + 3D (super short version) */
.multicolumn .multicolumn-list{perspective:1200px}
.multicolumn .multicolumn-card{position:relative;border-radius:20px;overflow:hidden;border:1px solid rgba(0,0,0,.08);background:var(--bg,#f7f7f7)!important;box-shadow:0 2px 8px rgba(0,0,0,.10),0 26px 60px rgba(0,0,0,.22)!important;transition:.28s}
.multicolumn .multicolumn-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,0) 42%);pointer-events:none}
.multicolumn .multicolumn-card:hover,.multicolumn .multicolumn-card:focus-within{transform:translateY(-14px);box-shadow:0 8px 18px rgba(0,0,0,.12),0 34px 86px rgba(0,0,0,.26)!important;filter:saturate(1.1)}
/* loud gradients per column */
.multicolumn .multicolumn-list__item:nth-child(4n+1)>.multicolumn-card{--bg:linear-gradient(180deg,#B9D9FF,#73B7FF)}
.multicolumn .multicolumn-list__item:nth-child(4n+2)>.multicolumn-card{--bg:linear-gradient(180deg,#BFF5C9,#6FD48B)}
.multicolumn .multicolumn-list__item:nth-child(4n+3)>.multicolumn-card{--bg:linear-gradient(180deg,#FFCBB8,#FF996E)}
.multicolumn .multicolumn-list__item:nth-child(4n+4)>.multicolumn-card{--bg:linear-gradient(180deg,#D7BFFF,#B68CFF)}
/* keep 3-up */
@media(min-width:750px){.multicolumn .multicolumn-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}
/* Benefits cards: bold color + 3D pop */
.benefits-card{border-radius:20px;padding:20px;color:#111;background:var(--bg,#f7f7f7)!important;box-shadow:0 2px 6px #0002,0 16px 40px #0003;transition:.3s}
.benefits-card:hover{transform:translateY(-12px) scale(1.02);box-shadow:0 6px 14px #0003,0 24px 60px #0005;filter:saturate(1.1)}
.benefits-card:nth-of-type(4n+1){--bg:linear-gradient(180deg,#B9D9FF,#2F8DFF)}
.benefits-card:nth-of-type(4n+2){--bg:linear-gradient(180deg,#BFF5C9,#24C073)}
.benefits-card:nth-of-type(4n+3){--bg:linear-gradient(180deg,#FFCBB8,#FF7E4E)}
.benefits-card:nth-of-type(4n+4){--bg:linear-gradient(180deg,#D7BFFF,#8E63FF)}
/* Benefits cards: brand colors + 3D pop */
.benefits-card {
  border-radius:20px;
  padding:20px;
  color:#fff; /* text white for contrast */
  background:var(--bg,#333333)!important;
  box-shadow:0 2px 6px #0002,0 16px 40px #0004;
  transition:.3s;
}
.benefits-card:hover {
  transform:translateY(-12px) scale(1.02);
  box-shadow:0 6px 14px #0003,0 24px 60px #0006;
  filter:saturate(1.05);
}

/* Rotate through charcoal tones */
.benefits-card:nth-of-type(3n+1){--bg:linear-gradient(180deg,#333333,#222222)}
.benefits-card:nth-of-type(3n+2){--bg:linear-gradient(180deg,#444444,#333333)}
.benefits-card:nth-of-type(3n+3){--bg:linear-gradient(180deg,#555555,#333333)}
/* Benefits cards: charcoal base + readable text + accent highlights */
.benefits-card {
  border-radius:20px;
  padding:20px;
  color:#fff;
  background:var(--bg,#333)!important;
  box-shadow:0 2px 6px #0002,0 16px 40px #0004;
  transition:.3s;
  position:relative;
}
.benefits-card h3 {
  color:#fff !important;
  font-weight:700;
}
.benefits-card p {
  color:#f1f1f1 !important;
}
.benefits-card:hover {
  transform:translateY(-12px) scale(1.02);
  box-shadow:0 6px 14px #0003,0 24px 60px #0006;
  filter:saturate(1.05);
}

/* Thin accent bar at the top for distinction */
.benefits-card::before {
  content:"";
  position:absolute;
  top:0; left:0; right:0;
  height:4px;
  border-radius:20px 20px 0 0;
  background:var(--accent,#fff);
}

/* Rotate accent color per card */
.benefits-card:nth-of-type(3n+1){--bg:linear-gradient(180deg,#444,#222);--accent:#2F8DFF;} /* blue */
.benefits-card:nth-of-type(3n+2){--bg:linear-gradient(180deg,#555,#333);--accent:#24C073;} /* green */
.benefits-card:nth-of-type(3n+3){--bg:linear-gradient(180deg,#666,#333);--accent:#FF7E4E;} /* orange */



/* Neutral brand cards: light grayish tan + charcoal, subtle 3D */
.benefits-card{
  --tan-1:#FAF8F3;  /* very light tan */
  --tan-2:#F2EEE7;  /* light tan */
  --tan-3:#EAE4DA;  /* warm gray-tan */
  --border:rgba(0,0,0,.08);
  --shadow1:0 2px 6px rgba(0,0,0,.08);
  --shadow2:0 14px 36px rgba(0,0,0,.12);

  position:relative;
  border-radius:20px;
  padding:20px 22px;
  background:var(--bg,linear-gradient(180deg,var(--tan-1),var(--tan-2))) !important;
  border:1px solid var(--border);
  box-shadow:var(--shadow1), var(--shadow2);
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

/* remove any earlier colored top bars */
.benefits-card::before{content:'';display:none}

/* readable, on-brand text */
.benefits-card h3{color:#111 !important;font-weight:800;margin:0 0 .4rem}
.benefits-card p{color:#2f2f2f !important;line-height:1.55}

/* subtle lift */
.benefits-card:hover,
.benefits-card:focus-within{
  transform:translateY(-8px);
  box-shadow:0 6px 16px rgba(0,0,0,.10), 0 22px 52px rgba(0,0,0,.16);
  filter:saturate(1.02);
}

/* gentle per-card shade variation (all in tan family) */
.benefits-card:nth-of-type(3n+1){--bg:linear-gradient(180deg,var(--tan-1),var(--tan-2))}
.benefits-card:nth-of-type(3n+2){--bg:linear-gradient(180deg,var(--tan-2),var(--tan-3))}
.benefits-card:nth-of-type(3n+3){--bg:linear-gradient(180deg,#F7F4EE,var(--tan-2))}
.benefits-card {
  border-radius:20px;
  padding:20px 22px;
  background:#F6F3ED !important; /* light grayish-tan */
  border:1px solid rgba(0,0,0,.05);
  box-shadow:0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12);
  transition:transform .25s ease, box-shadow .25s ease;
  color:#2f2f2f;
}
.benefits-card h3 {color:#111 !important;font-weight:800;margin:0 0 .4rem}
.benefits-card p {color:#333 !important;line-height:1.55}
.benefits-card:hover {transform:translateY(-8px);box-shadow:0 6px 16px rgba(0,0,0,.10),0 22px 52px rgba(0,0,0,.16)}
/* Center footer content */
.footer, 
.footer__content,
.footer-block, 
.footer-block__details,
.footer-block__heading,
.footer-block__list,
.footer__content-top,
.footer__content-bottom {
  text-align: center !important;
  justify-content: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Center the subscribe form */
.footer .newsletter-form,
.footer .newsletter-form form {
  display: flex;
  justify-content: center;
}

.footer .newsletter-form input {
  text-align: center;
}
/* ==== Center everything in the footer (Dawn) ==== */

/* 1) Center alignment + kill left offsets */
.footer, .footer__content-top, .footer__content-bottom,
.footer .page-width, .footer-block, .footer-block__details,
.footer-block__details-content, .footer-block__heading {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 2) Center the grid columns themselves */
.footer__content-top .grid,
.footer__content-bottom .grid,
.footer .footer__blocks {
  display: grid !important;
  justify-content: center !important;
  justify-items: center !important;   /* centers each block */
  gap: 20px !important;
}

/* 3) Make link menus sit in a centered row */
.footer-block--menu .list-unstyled,
.footer-block--menu .list-menu {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 18px !important;
  padding: 0 !important;
  margin: 8px 0 0 !important;
}
.footer-block--menu .list-unstyled li,
.footer-block--menu .list-menu li { list-style: none !important; }

/* 4) Center the newsletter form */
.footer .newsletter-form,
.footer .newsletter-form form,
.footer .footer-block--newsletter .newsletter-form__field-wrapper {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
}
.footer .footer-block--newsletter input[type="email"] {
  text-align: center !important;
  max-width: 420px !important;
}
.footer .footer-block--newsletter button { margin-left: 12px !important; }

/* 5) Safety: remove stray left padding/margins on grids */
.footer .grid { margin-left: 0 !important; padding-left: 0 !important; }
.footer .custom-liquid, .footer .rich-text { text-align: center !important; }
/* ==== CENTER THE FOOTER (matches your screenshot classes) ==== */

/* Center the page-width container and its content */
.footer__content-top.page-width,
.footer__content-bottom.page-width {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* Center the grid container that holds the blocks */
.footer__blocks-wrapper {
  display: grid !important;
  justify-content: center !important;   /* centers the grid as a whole */
  justify-items: center !important;     /* centers each block in the grid */
  row-gap: 20px !important;
  column-gap: 20px !important;
  text-align: center !important;
}

/* Make each block center itself (safety) */
.footer__blocks-wrapper .grid__item,
.footer-block { 
  justify-self: center !important;
  text-align: center !important;
}

/* Make the menu links appear centered in a row (wrap on small screens) */
.footer-block__details-content.list-unstyled {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 16px !important;
  padding: 0 !important;
  margin: 10px 0 0 !important;
}
.footer-block__details-content.list-unstyled li { list-style: none !important; }

/* Ensure headings inside blocks are centered */
.footer-block__heading,
.footer-block__heading.inline-richtext { text-align: center !important; }

/* Newsletter block/input centered */
.footer-block--newsletter .newsletter-form,
.footer-block--newsletter .newsletter-form form,
.footer-block--newsletter .newsletter-form__field-wrapper {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
}
.footer-block--newsletter input[type="email"] {
  text-align: center !important;
  max-width: 420px !important;
}
.footer-block--newsletter button { margin-left: 12px !important; }

/* Remove any stray left padding on grids in footer */
.footer .grid { padding-left: 0 !important; margin-left: 0 !important; }
.footer .custom-liquid, .footer .rich-text { text-align: center !important; }
/* ==== Global centering for common Dawn sections ==== */

/* keep page container centered */
.page-width { margin-left:auto !important; margin-right:auto !important; }

/* 1) Center text inside rich-text, multicolumn, and footer blocks */
.rich-text, .rich-text__blocks, .inline-richtext,
.multicolumn, .multicolumn .multicolumn-card__info,
.footer, .footer__content-top, .footer__content-bottom,
.footer-block, .footer-block__heading, .footer-block__details {
  text-align:center !important;
}

/* 2) Center the internal grids so blocks don't hug the left */
.rich-text .grid, .multicolumn .multicolumn-list,
.footer__blocks-wrapper, .footer__content-top .grid, .footer__content-bottom .grid {
  display:grid !important;
  justify-content:center !important;   /* centers the grid itself */
  justify-items:center !important;     /* centers each block */
  gap:20px;
}

/* 3) Footer menus: make the link list a centered row that wraps */
.footer-block__details-content,
.footer-block__details-content.list-unstyled,
.list-unstyled, .list-menu {
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  gap:18px !important;
  padding:0 !important;
  margin:8px 0 0 !important;
}
.footer-block__details-content li { list-style:none !important; }

/* 4) Newsletter: center the form + input text */
.newsletter-form, .newsletter-form form,
.footer-block--newsletter .newsletter-form__field-wrapper {
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  width:100%;
}
.newsletter-form input[type="email"] { text-align:center; max-width:420px; }

/* 5) Safety: remove stray left padding/margins on footer grids */
.footer .grid { margin-left:0 !important; padding-left:0 !important; }
.footer .custom-liquid, .footer .rich-text { text-align:center !important; }
/* ===== SECTION 1: Footer “More About Us” (matches your screenshot) ===== */

/* center the footer top container + its grid */
.footer__content-top.page-width { text-align:center !important; }
.footer__content-top .footer__blocks-wrapper.grid{
  display:grid !important;
  justify-content:center !important;   /* grid centered in its row */
  justify-items:center !important;     /* each block centered */
}

/* center the menu block heading + links */
.footer__content-top .footer-block--menu .footer-block__heading.inline-richtext{
  text-align:center !important; width:100% !important;
}
.footer__content-top .footer-block--menu .footer-block__details-content.list-unstyled{
  display:flex !important; flex-wrap:wrap !important;
  justify-content:center !important; gap:18px !important;
  padding:0 !important; margin:10px 0 0 !important; list-style:none !important;
}
.footer__content-top .footer-block--menu .footer-block__details-content li{ list-style:none !important; }

/* center the newsletter block */
.footer__content-top .footer-block--newsletter .newsletter-form,
.footer__content-top .footer-block--newsletter .newsletter-form form{
  display:flex !important; justify-content:center !important; align-items:center !important; width:100% !important;
}
.footer__content-top .footer-block--newsletter input[type="email"]{ text-align:center !important; max-width:420px !important; }

/* ===== SECTION 2: Any other FOOTER rows ===== */
.footer__content-bottom.page
/* ===== Emergency center-all shim (Dawn-safe) ===== */

/* keep page containers centered */
.page-width { margin-left:auto !important; margin-right:auto !important; }

/* center common content blocks */
.rich-text, .inline-richtext, .rte,
.multicolumn, .multicolumn .multicolumn-card__info,
.footer, .footer__content-top, .footer__content-bottom,
.footer-block, .footer-block__details, .footer-block__heading {
  text-align:center !important;
}

/* center grids so blocks don't hug the left */
.rich-text .grid, .footer__blocks-wrapper,
.footer__content-top .grid, .footer__content-bottom .grid,
.multicolumn .multicolumn-list {
  display:grid !important;
  justify-content:center !important;    /* centers the grid itself */
  justify-items:center !important;      /* centers each child */
  gap:20px;
}

/* center any flex rows used by apps/menus/newsletters */
.list-unstyled, .list-menu, .newsletter-form, .newsletter-form form,
.footer-block--newsletter .newsletter-form__field-wrapper {
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  flex-wrap:wrap;
  gap:16px;
}

/* tidy footer link lists */
.footer-block__details-content li { list-style:none !important; }
.footer .grid { margin-left:0 !important; padding-left:0 !important; }
/* Center FAQ / accordion titles */
.accordion__title {
  display: block !important;        /* full width */
  width: 100% !important;
  max-width: none !important;
  text-align: center !important;    /* center text */
  margin: 0 auto !important;
  word-break: normal !important;    /* prevent awkward breaks */
}

/* Center the whole FAQ block */
.accordion, .accordion summary, .accordion__content {
  text-align: center !important;
  justify-content: center !important;
}
/* ==== Center the Collapsible/FAQ section (Dawn) ==== */

/* Center the whole section container & grid */
.collapsible-content,
.collapsible-content .page-width { text-align:center !important; }

.collapsible-content__grid {
  display:grid !important;
  justify-content:center !important;   /* center the grid as a whole */
  justify-items:center !important;     /* center each column */
  row-gap: 22px;
}

.collapsible-content__grid .grid__item { justify-self:center !important; }

/* Keep each accordion at a readable centered width */
.collapsible-content .accordion { max-width: 760px; margin: 0 auto !important; }

/* Center the question row */
.collapsible-content summary {
  position: relative;                  /* so the caret can be positioned */
  display:flex;
  align-items:center;
  justify-content:center !important;   /* this is the key */
  gap: 8px;
}

/* Make the title span full width & center its text */
.collapsible-content .accordion__title {
  display:block !important;
  width:100% !important;
  max-width:none !important;
  text-align:center !important;
  margin:0 auto !important;
  word-break:normal !important;
}

/* Keep the caret visible without pulling layout left */
.collapsible-content summary .icon-caret {
  position:absolute;
  right:16px;
}
/* TEMP TEST — FAQ titles should turn RED centered */
h3.accordion__title.inline-richtext.h4 { color:#d00 !important; text-align:center !important; display:block !important; }
/* ==== Center Collapsible/FAQ section (Dawn) ==== */

/* Center the section and keep a single centered column */
.collapsible-content,
.collapsible-content .page-width { text-align:center !important; }

.collapsible-content__grid {
  display:grid !important;
  grid-template-columns: 1fr !important;   /* one centered column */
  justify-content:center !important;
  justify-items:center !important;
  row-gap:22px;
}

.collapsible-content .accordion {
  max-width: 760px;
  margin: 0 auto !important;
}

/* Make the clickable summary row center the title */
.collapsible-content details > summary {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  padding-right: 2.2rem;                 /* space for caret */
}

/* Title: full width, centered text (beats Dawn's max-width rule) */
h3.accordion__title.inline-richtext.h4 {
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 auto !important;
  text-align:center !important;
  word-break:normal !important;
}

/* Keep the caret on the right so it doesn't push content left */
.collapsible-content summary .icon-caret {
  position:absolute !important;
  right:14px; top:50%;
  transform:translateY(-50%);
}

/* Center FAQ accordion titles */
h3.accordion__title.inline-richtext.h4 {
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 auto !important;
  text-align:center !important;
  word-break:normal !important;
  color:inherit !important;   /* uses the default text color */
}
/* ==== Hard-center the footer (matches your DOM) ==== */

/* Center the containers */
.footer__content-top.page-width,
.footer__content-bottom.page-width { text-align:center !important; }

/* Center the wrapper grid and each block */
.footer__blocks-wrapper.grid {
  display:grid !important;
  justify-content:center !important;   /* grid centered in its row */
  justify-items:center !important;     /* each block centered */
  row-gap:20px; column-gap:32px;
}
.footer__blocks-wrapper .grid__item,
.footer__blocks-wrapper .footer-block {
  justify-self:center !important;
  text-align:center !important;
}

/* Make the menu links a centered horizontal row (wraps on small screens) */
.footer-block--menu .footer-block__details-content.list-unstyled {
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  gap:18px !important;
  padding:0 !important; margin:12px 0 0 !important;
}
.footer-block--menu .footer-block__details-content li { list-style:none !important; }

/* Newsletter: center form + input text */
.footer-block--newsletter .newsletter-form,
.footer-block--newsletter .newsletter-form form,
.footer-block--newsletter .newsletter-form__field-wrapper {
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  width:100% !important;
}
.footer-block--newsletter input[type="email"] {
  text-align:center !important;
  max-width:420px !important;
}
.footer-block--newsletter button { margin-left:12px !important; }

/* Safety: kill stray left padding/margins inside footer grids */
.footer .grid { margin-left:0 !important; padding-left:0 !important; }
/* ==== FINAL: hard-center footer ==== */

/* 1) Make the footer grid one centered column */
.footer__blocks-wrapper.grid{
  display:grid !important;
  grid-template-columns: 1fr !important;   /* single column */
  justify-items:center !important;         /* center each block */
  row-gap:24px !important;
}

/* 2) Ensure each block spans the grid and centers itself */
.footer__blocks-wrapper .grid__item,
.footer__blocks-wrapper .footer-block{
  grid-column: 1 / -1 !important;          /* take full row */
  justify-self:center !important;
  text-align:center !important;
  width:100%;
}

/* 3) Center the heading text */
.footer-block__heading,
.footer-block__heading.inline-richtext{ text-align:center !important; }

/* 4) Make the menu links a centered horizontal row */
.footer-block--menu .footer-block__details-content{
  display:flex !important;
  flex-direction: row !important;          /* override any column default */
  flex-wrap:wrap !important;
  justify-content:center !important;
  gap:18px !important;
  padding:0 !important;
  margin:12px 0 0 !important;
}
.footer-block--menu .footer-block__details-content li{ list-style:none !important; width:auto !important; }
.footer-block--menu .footer-block__details-content a{ display:inline-block !important; }

/* 5) Newsletter: keep the form centered */
.footer-block--newsletter .newsletter-form,
.footer-block--newsletter .newsletter-form form{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  width:100% !important;
}
.footer-block--newsletter input[type="email"]{ text-align:center; max-width:420px; }
.footer-block--newsletter button{ margin-left:12px; }
/* Light gray background only behind the benefits card section */
section:has(.benefits-card) {
  background-color: #f2f2f2 !important; /* light gray backdrop */
  padding: 40px 0;                      /* top/bottom breathing room */
}

/* Keep the cards themselves tan so they pop */
.benefits-card {
  background: #F6F3ED !important;       /* your tan card color */
  border-radius: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12);
}
/* Reset the earlier attempt so we don't get a stray strip */
section:has(.benefits-card){ background:transparent !important; }

/* Create a full-width light-gray band behind ONLY the section that contains .benefits-card */
.shopify-section:has(.benefits-card){
  position: relative;            /* anchor for the pseudo element */
  z-index: 0;
  padding: 36px 0;               /* breathing room above/below cards */
}
.shopify-section:has(.benefits-card)::before{
  content: "";
  position: absolute;
  top: 0; bottom: 0;
  left: 50%;                     /* stretch to the viewport edges */
  width: 100vw;
  transform: translateX(-50%);
  background: #f2f2f2;          /* <— light gray band */
  z-index: -1;                   /* sits behind the section content */
}

/* keep the cards themselves tan so they pop */
.benefits-card{
  background:#F6F3ED !important;
  border-radius:20px;
  box-shadow:0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12);
}
<section id="shopify-section-template--24415076712754__custom_liquid_rfc">
/* Light gray background behind ONLY the benefits card section */
#shopify-section-template--24415076712754__custom_liquid_rfc {
  background-color: #f2f2f2 !important;   /* light gray backdrop */
  padding: 40px 0 !important;             /* breathing room above/below */
}

/* Make sure inner wrappers stay transparent so the gray shows through */
#shopify-section-template--24415076712754__custom_liquid_rfc .page-width,
#shopify-section-template--24415076712754__custom_liquid_rfc .multicolumn,
#shopify-section-template--24415076712754__custom_liquid_rfc .multicolumn-list {
  background: transparent !important;
}

/* Keep the cards themselves tan so they pop */
#shopify-section-template--24415076712754__custom_liquid_rfc .benefits-card {
  background: #F6F3ED !important;
  border-radius: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12);
}
/* Edge-to-edge light gray background behind the benefits card section */
#shopify-section-template--24415076712754__custom_liquid_rfc {
  position: relative;
  z-index: 0;
  padding: 40px 0 !important; /* breathing room above/below cards */
}

/* Full-width gray band */
#shopify-section-template--24415076712754__custom_liquid_rfc::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;                 /* full viewport width */
  transform: translateX(-50%);  /* keep it centered */
  background: #f2f2f2;          /* light gray */
  z-index: -1;                  /* sit behind cards */
}

/* Keep inner wrappers transparent */
#shopify-section-template--24415076712754__custom_liquid_rfc .page-width,
#shopify-section-template--24415076712754__custom_liquid_rfc .multicolumn,
#shopify-section-template--24415076712754__custom_liquid_rfc .multicolumn-list {
  background: transparent !important;
}

/* Cards remain tan for contrast */
#shopify-section-template--24415076712754__custom_liquid_rfc .benefits-card {
  background: #F6F3ED !important;
  border-radius: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12);
}
/* Edge-to-edge light gray ONLY for the benefits card section */
#shopify-section-template--24415076712754__custom_liquid_rfc {
  position: relative;
  z-index: 0;
  padding: 40px 0 !important;
}

/* Override the theme's color-scheme/gradient wrappers inside this section */
#shopify-section-template--24415076712754__custom_liquid_rfc,
#shopify-section-template--24415076712754__custom_liquid_rfc [class^="color-scheme-"],
#shopify-section-template--24415076712754__custom_liquid_rfc .gradient,
#shopify-section-template--24415076712754__custom_liquid_rfc .page-width,
#shopify-section-template--24415076712754__custom_liquid_rfc [class$="__custom_liquid_Fzltfc-padding"] {
  background-color: #f2f2f2 !important;   /* <— pick your light gray */
  background-image: none !important;      /* kill gradient so the gray shows */
}

/* Make the gray band span the full browser width */
#shopify-section-template--24415076712754__custom_liquid_rfc::before {
  content: "";
  position: absolute;
  inset: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: #f2f2f2;                    /* same gray as above */
  z-index: -1;
}

/* Cards stay tan so they pop on the gray */
#shopify-section-template--24415076712754__custom_liquid_rfc .benefits-card{
  background:#F6F3ED !important;
  border-radius:20px;
  box-shadow:0 2px 6px rgba(0,0,0,.08),0 14px 36px rgba(0,0,0,.12);
}

/* === Edge-to-edge light-gray band behind your benefits cards === */

/* 1) Target the inner padding wrapper that sits behind the cards */
.section-template--24415076712754__custom_liquid_Fzltfc-padding {
  position: relative !important;
  z-index: 0 !important;
  background: #f2f2f2 !important;    /* <-- pick your light gray */
  padding: 40px 0 !important;
}

/* 2) Kill any theme gradients/colors on the color-scheme wrapper above it */
#shopify-section-template--24415076712754__custom_liquid_rfc [class^="color-scheme-"],
#shopify-section-template--24415076712754__custom_liquid_rfc .gradient {
  background: transparent !important;
  background-image: none !important;
}

/* 3) Make that gray stretch full browser width (ignores .page-width) */
.section-template--24415076712754__custom_liquid_Fzltfc-padding::before {
  content: "";
  position: absolute;
  top: 0; bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: #f2f2f2;               /* same gray as above */
  z-index: -1;                        /* sit behind the cards */
}

/* 4) Keep the cards themselves tan so they pop on the gray */
.section-template--24415076712754__custom_liquid_Fzltfc-padding .benefits-card {
  background: #F6F3ED !important;
  border-radius: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12);
}
/* Light gray band behind the benefits cards */
#shopify-section-template--24415076712754__custom_liquid_rfc {
  background-color: #f2f2f2 !important;  /* <-- light gray background */
  padding: 40px 0 !important;            /* space above/below cards */
}

/* Keep the cards tan so they contrast against the gray */
#shopify-section-template--24415076712754__custom_liquid_rfc .benefits-card {
  background-color: #F6F3ED !important;  /* tan card */
  border-radius: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12);
}
/* === FINAL: full-bleed light-gray behind the benefits cards === */
/* Your section ID from Inspect */
#shopify-section-template--24415076712754__custom_liquid_rfc{
  position:relative !important;
  z-index:0 !important;
  padding:40px 0 !important;
}

/* Draw the gray band edge-to-edge behind EVERYTHING in this section */
#shopify-section-template--24415076712754__custom_liquid_rfc::before{
  content:"";
  position:absolute;
  top:0; bottom:0;
  left:50%;
  width:100vw;                       /* full viewport width */
  transform:translateX(-50%);
  background:#f2f2f2;                /* ← your light gray */
  z-index:-1;                         /* sit behind contents */
}

/* Nuke any inner backgrounds that were repainting white/gradients */
#shopify-section-template--24415076712754__custom_liquid_rfc [class*="color-scheme"],
#shopify-section-template--24415076712754__custom_liquid_rfc .gradient,
#shopify-section-template--24415076712754__custom_liquid_rfc .page-width,
#shopify-section-template--24415076712754__custom_liquid_rfc .multicolumn,
#shopify-section-template--24415076712754__custom_liquid_rfc .multicolumn-list,
.section-template--24415076712754__custom_liquid_Fzltfc-padding{
  background:transparent !important;
  background-image:none !important;
}

/* Put the tan back on just the cards so they pop on the gray */
#shopify-section-template--24415076712754__custom_liquid_rfc .benefits-card{
  background:#F6F3ED !important;
  border-radius:20px;
  box-shadow:0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12);
}
/* Nuclear: make every child transparent, then reapply card background */
#shopify-section-template--24415076712754__custom_liquid_rfc * { background:transparent !important; }
#shopify-section-template--24415076712754__custom_liquid_rfc .benefits-card{ background:#F6F3ED !important; }
/* Full-bleed light gray behind the benefits cards section */
#shopify-section-sections--24415077171506__1755888340cc94de18 {
  position: relative !important;
  z-index: 0;
  padding: 40px 0 !important;
}

#shopify-section-sections--24415077171506__1755888340cc94de18::before {
  content: "";
  position: absolute;
  inset: 0;
  left: 50%;
  width: 100vw;                      /* stretch to viewport edges */
  transform: translateX(-50%);
  background: #f2f2f2;               /* light gray backdrop */
  z-index: -1;                       /* sit behind the cards */
}

/* Make sure no inner wrapper paints white over it */
#shopify-section-sections--24415077171506__1755888340cc94de18 .page-width,
#shopify-section-sections--24415077171506__1755888340cc94de18 [class*="color-scheme"],
#shopify-section-sections--24415077171506__1755888340cc94de18 .gradient {
  background: transparent !important;
  background-image: none !important;
}

/* Keep cards tan so they pop against the gray */
#shopify-section-sections--24415077171506__1755888340cc94de18 .benefits-card {
  background: #F6F3ED !important;
  border-radius: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12);
}
/* === Benefits cards section background (white) === */
#shopify-section-sections--24415077171506__1755888340cc94de18 {
  position: relative !important;
  z-index: 0;
  padding: 40px 0 !important;
  background: #ffffff !important;   /* white band behind cards */
}

/* === Benefits cards styled pink === */
#shopify-section-sections--24415077171506__1755888340cc94de18 .benefits-card {
  background: #FF4F84 !important;   /* replace with your CTA pink hex */
  color: #ffffff !important;        /* default text white for contrast */
  border-radius: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12);
  padding: 20px 22px;
  text-align: center;
}

/* Headings & body text on pink cards */
#shopify-section-sect
/* Force section background to white */
#shopify-section-sections--24415077171506__1755888340cc94de18,
#shopify-section-sections--24415077171506__1755888340cc94de18 [class*="color-scheme"],
#shopify-section-sections--24415077171506__1755888340cc94de18 .gradient {
  background-color: #ffffff !important;   /* clean white backdrop */
  background-image: none !important;
}

/* Cards = pink (match CTA buttons) */
#shopify-section-sections--24415077171506__1755888340cc94de18 .benefits-card {
  background-color: #ff4f84 !important;   /* swap with your CTA pink hex */
  border-radius: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12);
  padding: 20px 22px;
  text-align: center;
}

/* Card headings + text on pink */
#shopify-section-sections--24415077171506__1755888340cc94de18 .benefits-card h3 {
  color: #ffffff !important;
  font-weight: 800;
}
#shopify-section-sections--24415077171506__1755888340cc94de18 .benefits-card p {
  color: #fdfdfd !important;
}
/* Force section background to white */
#shopify-section-sections--24415077171506__1755888340cc94de18,
#shopify-section-sections--24415077171506__1755888340cc94de18 [class*="color-scheme"],
#shopify-section-sections--24415077171506__1755888340cc94de18 .gradient {
  background-color: #ffffff !important;   /* clean white backdrop */
  background-image: none !important;
}

/* Cards = pink (match CTA buttons) */
#shopify-section-sections--24415077171506__1755888340cc94de18 .benefits-card {
  background-color: #ff4f84 !important;   /* swap with your CTA pink hex */
  border-radius: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08), 0 14px 36px/* ====== SECTION: make the band behind cards WHITE ====== */
#shopify-section-sections--24415077171506__1755888340cc94de18{
  position:relative !important;
  z-index:0 !important;
  padding:40px 0 !important;
}
#shopify-section-sections--24415077171506__1755888340cc94de18::before{
  content:"";
  position:absolute; inset:0;
  left:50%; width:100vw; transform:translateX(-50%);
  background:#ffffff;         /* <-- white band */
  z-index:-1;
}

/* Kill any theme color-scheme/gradient/inner paints inside THIS section */
#shopify-section-sections--24415077171506__1755888340cc94de18 .page-width,
#shopify-section-sections--24415077171506__1755888340cc94de18 [class*="color-scheme"],
#shopify-section-sections--24415077171506__1755888340cc94de18 .gradient{
  background:transparent !important;
  background-image:none !important;
}

/* ====== CARDS: turn the card boxes PINK (match CTA) ======
   We target several common wrappers to guarantee we hit the visible box. */
#shopify-section-sections--24415077171506__1755888340cc94de18 :is(
  .benefits-card,
  .multicolumn-card,
  .card--text,
  .card__inner,
  .feature-card,
  .card
){
  background-color:#ff4f84 !important;  /* <-- replace with your exact CTA pink hex */
  background-image:none !important;
  color:#fff !important;
  border-radius:20px !important;
  box-shadow:0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12) !important;
  padding:20px 22px !important;
  text-align:center;
}

/* Headings & body text on pink */
#shopify-section-sections--24415077171506__1755888340cc94de18 :is(
  .benefits-card h3,
  .multicolumn-card h3,
  .card--text h3,
  .card__inner h3,
  .feature-card h3,
  .card h3
){
  color:#ffffff !important; font-weight:800 !important; margin:0 0 .4rem !important;
}
#shopify-section-sections--24415077171506__1755888340cc94de18 :is(
  .benefits-card p,
  .multicolumn-card p,
  .card--text p,
  .card__inner p,
  .feature-card p,
  .card p
){
  color:#fdfdfd !important; line-height:1.55 !important;
}

/* Optional: slight hover lift to keep the 3D feel */
#shopify-section-sections--24415077171506__1755888340cc94de18 :is(
  .benefits-card,.multicolumn-card,.card--text,.card__inner,.feature-card,.card
):hover{
  transform:translateY(-6px);
  box-shadow:0 6px 16px rgba(0,0,0,.10), 0 22px 52px rgba(0,0,0,.16) !important;
}
 rgba(0,0,0,.12);
  padding: 20px 22px;
  text-align: center;
}

/* Card headings + text on pink */
#shopify-section-sections--24415077171506__1755888340cc94de18 .benefits-card h3 {
  color: #ffffff !important;
  font-weight: 800;
}
#shopify-section-sections--24415077171506__1755888340cc94de18 .benefits-card p {
  color: #fdfdfd !important;
}
/* ====== SECTION: make the band behind cards WHITE ====== */
#shopify-section-sections--24415077171506__1755888340cc94de18{
  position:relative !important;
  z-index:0 !important;
  padding:40px 0 !important;
}
#shopify-section-sections--24415077171506__1755888340cc94de18::before{
  content:"";
  position:absolute; inset:0;
  left:50%; width:100vw; transform:translateX(-50%);
  background:#ffffff;         /* <-- white band */
  z-index:-1;
}

/* Kill any theme color-scheme/gradient/inner paints inside THIS section */
#shopify-section-sections--24415077171506__1755888340cc94de18 .page-width,
#shopify-section-sections--24415077171506__1755888340cc94de18 [class*="color-scheme"],
#shopify-section-sections--24415077171506__1755888340cc94de18 .gradient{
  background:transparent !important;
  background-image:none !important;
}

/* ====== CARDS: turn the card boxes PINK (match CTA) ======
   We target several common wrappers to guarantee we hit the visible box. */
#shopify-section-sections--24415077171506__1755888340cc94de18 :is(
  .benefits-card,
  .multicolumn-card,
  .card--text,
  .card__inner,
  .feature-card,
  .card
){
  background-color:#ff4f84 !important;  /* <-- replace with your exact CTA pink hex */
  background-image:none !important;
  color:#fff !important;
  border-radius:20px !important;
  box-shadow:0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12) !important;
  padding:20px 22px !important;
  text-align:center;
}

/* Headings & body text on pink */
#shopify-section-sections--24415077171506__1755888340cc94de18 :is(
  .benefits-card h3,
  .multicolumn-card h3,
  .card--text h3,
  .card__inner h3,
  .feature-card h3,
  .card h3
){
  color:#ffffff !important; font-weight:800 !important; margin:0 0 .4rem !important;
}
#shopify-section-sections--24415077171506__1755888340cc94de18 :is(
  .benefits-card p,
  .multicolumn-card p,
  .card--text p,
  .card__inner p,
  .feature-card p,
  .card p
){
  color:#fdfdfd !important; line-height:1.55 !important;
}

/* Optional: slight hover lift to keep the 3D feel */
#shopify-section-sections--24415077171506__1755888340cc94de18 :is(
  .benefits-card,.multicolumn-card,.card--text,.card__inner,.feature-card,.card
):hover{
  transform:translateY(-6px);
  box-shadow:0 6px 16px rgba(0,0,0,.10), 0 22px 52px rgba(0,0,0,.16) !important;
}
/* Mobile (default): charcoal text */
.hero__title, 
.hero__subtitle, 
.hero__text {
  color: #333333 !important;   /* charcoal on mobile */
}

/* Desktop: white text */
@media screen and (min-width: 750px) {
  .hero__title, 
  .hero__subtitle, 
  .hero__text {
    color: #ffffff !important; /* white on desktop */
    text-shadow: 0 2px 6px rgba(0,0,0,0.4); /* optional: improves readability */
  }
}/* Mobile (default): charcoal text */
.banner__text.rte {
  color: #333333 !important;   /* charcoal on small screens */
}

/* Desktop: white text */
@media screen and (min-width: 750px) {
  .banner__text.rte {
    color: #ffffff !important; /* white on desktop */
    text-shadow: 0 2px 6px rgba(0,0,0,0.4); /* optional readability */
  }
}
/* Section background = CTA button pink */
#shopify-section-sections--24415077171506__1755888340cc94de18 {
  position: relative !important;
  z-index: 0;
  padding: 40px 0 !important;
  background-color: #ff4f84 !important;   /* <-- replace with exact CTA pink */
}

/* Benefit cards = white */
#shopify-section-sections--24415077171506__1755888340cc94de18 .benefits-card {
  background-color: #ffffff !important;   /* white cards */
  color: #333333 !important;              /* charcoal text inside cards */
  border-radius: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,.08), 0 14px 36px rgba(0,0,0,.12);
  padding: 20px 22px;
  text-align: center;
}

/* Headings inside cards */
#shopify-section-sections--24415077171506__1755888340cc94de18 .benefits-card h3 {
  color: #000000 !important;   /* black for strong contrast */
  font-weight: 800;
}

/* Paragraph text inside cards */
#shopify-section-sections--24415077171506__1755888340cc94de18 .benefits-card p {
  color: #333333 !important;   /* charcoal body text */
}
/* === Pink band behind the benefits grid (edge-to-edge) === */
.section-template--24415076712754__custom_liquid_Fzltfc-padding{
  position:relative !important;
  z-index:0 !important;
  padding:40px 0 !important;
}
.section-template--24415076712754__custom_liquid_Fzltfc-padding::before{
  content:"";
  position:absolute;
  inset:0;
  left:50%;
  width:100vw;                 /* make it full-bleed */
  transform:translateX(-50%);
  background:#ff4f84;          /* ⬅️ CTA pink — swap to your exact hex */
  z-index:-1;                  /* sit behind the cards */
}

/* === Cards: white === */
.section-template--24415076712754__custom_liquid_Fzltfc-padding .benefits-card{
  background:#ffffff !important;
  color:#333 !important;
  border-radius:20px;
  box-shadow:0 2px 6px rgba(0,0,0,.08),0 14px 36px rgba(0,0,0,.12);
  padding:20px 22px;
  text-align:center;
}

/* Headings & text on white cards */
.section-template--24415076712754__custom_liquid_Fzltfc-padding .benefits-card h3{color:#000 !important;font-weight:800}
.section-template--24415076712754__custom_liquid_Fzltfc-padding .benefits-card p{color:#333 !important}
/* Force solid background color for that section */
#shopify-section-sections--24415077171506__1755888340cc94de18 {
  background: #FF6B81 !important;
}
/* Section background */
.color-scheme-4 {
  --gradient-background: none !important;
  --color-background: #FF6B81 !important;
  background: #FF6B81 !important;
}

/* Cards styling */
.color-scheme-4 .card,
.color-scheme-4 .multicolumn-card {
  background-color: #FFFFFF !important;   /* White cards */
  color: #212529 !important;              /* Charcoal text for readability */
  box-shadow: 0 4px 12px rgba(0,0,0,0.08); /* Soft shadow */
  border-radius: 16px;                    /* Smooth rounded corners */
  padding: 20px;                          /* Extra breathing room */
  transition: all 0.3s ease;              /* Smooth hover animation */
}

/* Headings */
.color-scheme-4 .card h3,
.color-scheme-4 .multicolumn-card h3 {
  color: #000000 !important; /* Solid black headings */
  font-weight: 600;
}

/* Hover effect */
.color-scheme-4 .card:hover,
.color-scheme-4 .multicolumn-card:hover {
  transform: translateY(-6px);                /* Lift up */
  box-shadow: 0 8px 20px rgba(0,0,0,0.15);    /* Stronger shadow */
}
/* Pink section stays solid */
.color-scheme-4 {
  --gradient-background: none !important;
  --color-background: #FF6B81 !important;
  background: #FF6B81 !important;
}

/* Make the cards pure white + tidy them up */
.color-scheme-4 .benefits-grid .benefits-card {
  background: #FFFFFF !important;          /* WHITE cards */
  border-radius: 16px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  border: 1px solid rgba(0,0,0,0.06);
  padding: 20px;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

/* Kill any overlay/gradient some themes add on cards */
.color-scheme-4 .benefits-grid .benefits-card::before,
.color-scheme-4 .benefits-grid .benefits-card::after {
  background: none !important;
}

/* Text colors for readability */
.color-scheme-4 .benefits-grid .benefits-card h3 {
  color: #000 !important;
  font-weight: 700;
}
.color-scheme-4 .benefits-grid .benefits-card p {
  color: #333 !important;
  line-height: 1.55;
}

/* Hover lift + subtle brand accent */
.color-scheme-4 .benefits-grid .benefits-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.15);
  border-color: #FF6B81;
}

/* Remove gray strip (section spacing) above the benefits section */
.color-scheme-4.section-template,
.color-scheme-4.section-template:before {
  background: #FF6B81 !important; /* Match section background */
}

/* Kill default top margin/padding */
#shopify-section-sections--24415076712754__custom_liquid_FzLtf {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* Remove the gray strip (top spacer) ABOVE the benefits section only */
#shopify-section-template--24415076712754__custom_liquid_FzLtf,
#shopify-section-sections--24415076712754__custom_liquid_FzLtf,           /* fallback */
[id^="shopify-section-"][id*="__custom_liquid_FzLtf"] {                    /* robust match */
  margin-top: 0 !important;   /* kills .section + .section margin */
  padding-top: 0 !important;  /* overrides .shopify-section:has(.benefits-card) padding */
}

/* If your theme wraps content in a padding div, remove that too */
[class*="__custom_liquid_FzLtf-padding"] {
  padding-top: 0 !important;
}
/* Make the hero rich-text heading (H1) much larger */
.rich-text__heading.h0 {
  font-size: 3rem;      /* adjust as needed, 3rem ≈ 48px */
  line-height: 1.2;     
  font-weight: 700;     /* bold */
  text-align: center;   /* optional, center align */
}
/* HERO H1 — make the first Rich Text heading big */
.shopify-section .rich-text__heading.h0 {
  /* default bump for all rich-text headings */
  font-weight: 700 !important;
}

.shopify-section:first-of-type .rich-text__heading.h0,
.shopify-section .rich-text__heading.h0:first-child,
.rich-text .rich-text__heading.h0 {
  font-size: clamp(32px, 5vw, 56px) !important; /* ~56px max on desktop */
  line-height: 1.15 !important;
  font-weight: 700 !important;
  color: #222 !important;
  text-decoration: none !important;
}

/* If the heading contains a link, keep it looking like a heading */
.rich-text__heading.h0 a {
  color: inherit !important;
  text-decoration: none !important;
}

