/** Shopify CDN: Minification failed

Line 38:20 Unexpected "{"

**/
.banner {
  display: flex;
  position: relative;
  flex-direction: column;
  z-index: auto;
  isolation: isolate;
}

.banner__box {
  text-align: center;
  background: transparent;
}

.header__inline-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 1rem 0 1rem 0;
  z-index: 5;
  transition: background 1.2s;
  will-change: background;
}

.header__inline-menu .list-menu--inline {
  display: flex;
  justify-content: left;
  list-style: none;
  margin: 0;
  padding: 0;
}

.header__menu-item, {
  color: #ffffff; /* White text for visibility */
  text-decoration: none;
  padding: 0.5rem 1rem;
  font-size: 1.6rem;
}

.header__menu-item:hover,
.header__menu-item[aria-current="page"] {
  color: #cccccc; /* Light gray for hover/active */
}

/* Header */
.header__inline-menu nav {
  align-content: center;
  z-index: 2;
}

.header__icons {
  z-index: 2;
}

.header__inline-menu.scrolled {
  background-color: #FFFFFF;
  color: rgb(var(--color-foreground));
}

.header__inline-menu.scrolled .header__menu-item, .collection__chips-item {
  color: rgb(var(--color-foreground));
}

.details__main-menu > .header__menu-item {
  padding-left: 0;
}

.header__inline-menu.scrolled .header__logo-svg {
  width: 25%;
  display: flex;
  align-items: center;
  cursor: pointer;
}

.header__inline-menu:not(.scrolled) .header__logo-svg {
  width: 100%;
}

.header__logo-svg {
  transition: opacity 0.8s cubic-bezier(0.5, 0, 0, 1), 
  width 0.8s cubic-bezier(0.5, 0, 0, 1), 
  transform 0.8s cubic-bezier(0.5, 0, 0, 1), 
  padding-bottom 0.8s cubic-bezier(0.5, 0, 0, 1);
}

.header__inline-menu svg {
  color: #FFFFFF;
  transition: transform 0.8s cubic-bezier(0.5, 0, 0, 1), fill 0.8s cubic-bezier(0.5, 0, 0, 1), color 0.8s cubic-bezier(0.5, 0, 0, 1);
  transform: translateY(0);
}

@media screen and (max-width: 749px) {
  #menu-drawer svg {
    color: rgb(var(--color-foreground));
  }

  .footer div:last-child {
    order: -1;
  }
}

.footer .icon-caret {
  transform: rotate(-90deg);
}

.header__inline-menu.scrolled .icon--search svg {
  transform: scale(1);
}

.header__inline-menu:not(.scrolled) .search-modal__content {
  color: rgb(var(--color-foreground));
}

.header__inline-menu:not(.scrolled) .search-modal__content svg {
  color: rgb(var(--color-foreground));
}

.header__inline-menu.scrolled svg {
  color: rgb(var(--color-foreground));
  
}

@media only screen and (min-width: 768px) {
  /* #header_logo_container {
    transform: translate3d(0px, 8px, 0px);
  } */
}

#header_wrapper {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

#header_wrapper:not(.scrolled) > nav {
  /* display: none; */
}

#header_wrapper:not(.scrolled) nav .menu__image-container {
  display: none;
}

#header_wrapper:not(.scrolled) details.details__sub-menu:not([open])>.header__menu-item, #header_wrapper:not(.scrolled) .header__submenu a, #header_wrapper:not(.scrolled) a.header__sub-submenu-item {
  color: white;
}

#header_wrapper.scrolled details.details__sub-menu:not([open])>.header__menu-item, #header_wrapper.scrolled .header__submenu a, #header_wrapper.scrolled a.header__sub-submenu-item {
  color: #ccc;
}

#header_wrapper.scrolled  details.details__sub-menu[open] > .header__menu-item, #header_wrapper.scrolled a.header__sub-submenu-item:hover {
  color: rgb(var(--color-foreground));
}

#header_wrapper:not(.scrolled) details.details__sub-menu[open] > .header__menu-item, #header_wrapper:not(.scrolled) a.header__sub-submenu-item:hover {
  color: rgb(var(--color-foreground));
}

.header__inline-menu:not(.scrolled) .header__menu-hover > .header__submenu {
    background: transparent;
    min-height: 100%;
    width: 50%;
    border: none;
    box-shadow: none;
    z-index: 1;
}

#header_wrapper.scrolled > nav {
  display: block;
}

#header_wrapper:not(.scrolled) .header__icons {
  margin-left: auto;
}

.header__inline-menu:not(.scrolled) .header__menu-item {
  color: rgba(var(--color-background));
}

.header__inline-menu .header__menu-item:hover {
  text-decoration: underline;
  cursor: pointer;
}


/* Hover Menu */
.header__menu-hover {
  position: absolute;
  width: 100vw;
  min-height: fit-content;
  left: 0;
  top: 64px;
  display: flex;
}

.header__inline-menu:not(.scrolled) .header__submenu {
  background: transparent;
}

.header__inline-menu.scrolled .header__menu-hover > .header__submenu {
  background: rgba(var(--color-background));
  min-height: 100%;
  width: 50%;
  border: none;
  box-shadow: none;
  z-index: 1;
}

.header__inline-menu.scrolled .header__submenu {
  background: rgba(var(--color-background));
  border: none;
  box-shadow: none;
  z-index: 1;
}

.menu__image-container {
  width: 50%;
  height: fit-content;
  display: flex;
  gap: 20px;
  background: white;
  justify-content: end;
  padding-right: 2rem;
}

.menu__image-container div {
  padding: 1rem;
}

.header__sub-submenu {
  position: absolute;
  top: 0;
  height: 100%;
}

.header__submenu ul {
  list-style: none;
}

.header__submenu details {
  display: flex;
}

/* Logo */
#header_logo_container {
  /* transition: opacity 0.8s cubic-bezier(0.5, 0, 0, 1), width 0.8s cubic-bezier(0.5, 0, 0, 1), transform 0.8s cubic-bezier(0.5, 0, 0, 1), padding-bottom 0.8s cubic-bezier(0.5, 0, 0, 1); */
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
}

#header_logo.scrolled {
  display: flex;
  justify-content: center;
  /* width: 100%; */
  transform: scale(1.5);
  height: 100%;
  align-items: center;
  position: absolute;
  margin: 0 auto;
  left: 0;
  transition: padding-top 0.8s cubic-bezier(0.5, 0, 0, 1);
}

#header_logo:not(.scrolled) {
  display: flex;
  justify-content: center;
  transform: scale(1.5);
  align-items: start;
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
  padding: 0;
  padding-top: 40vh;
  transition: padding-top 0.8s cubic-bezier(0.5, 0, 0, 1);
}

@media only screen and (min-width: 768px) {
  .banner__media-image--desktop {
    display: block;
  }
  
  .banner__media-image--mobile {
    display: none !important;
  }
}

/* Needed for gradient continuity with or without animation, the transform scopes the gradient to its container which happens already when animation are turned on */
.banner__box.gradient {
  transform: perspective(0);
}

@media only screen and (max-width: 749px) {
  .banner--content-align-mobile-right .banner__box {
    text-align: right;
  }

  .banner--content-align-mobile-left .banner__box {
    text-align: left;
  }

  .header__inline-menu {
    display: flex;
  }

  .header {
    grid-template-areas: "left-icons heading icons";
    grid-template-columns: 1fr 2fr 1fr;
  }

  .mobile__add-to-cart {
    grid-area: cart;
    z-index: 5;
  }

  .header__icon .svg-wrapper.icon-cart-light {
    width: 44px;
    height: 20px;
  }

  .svg-wrapper.mobile--search {
    justify-content: end;
  }
}

@media only screen and (min-width: 750px) {
  .banner--content-align-right .banner__box {
    text-align: right;
  }

  .banner--content-align-left .banner__box {
    text-align: left;
  }

  .banner--content-align-left.banner--desktop-transparent .banner__box,
  .banner--content-align-right.banner--desktop-transparent .banner__box,
  .banner--medium.banner--desktop-transparent .banner__box {
    max-width: 68rem;
  }

  .mobile__add-to-cart {
    display: none;
  }
}

.banner__media.animate--zoom-in {
  clip-path: inset(0px);
}

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

@media screen and (max-width: 749px) {
  .banner--small.banner--mobile-bottom:not(.banner--adapt) .banner__media,
  .banner--small.banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt) > .banner__media {
    height: 28rem;
  }

  /* .banner--medium.banner--mobile-bottom:not(.banner--adapt) .banner__media,
  .banner--medium.banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt) > .banner__media {
    height: 34rem;
  } */

  .banner--large.banner--mobile-bottom:not(.banner--adapt) .banner__media,
  .banner--large.banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt) > .banner__media {
    height: 39rem;
  }

  .banner--small:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
    min-height: 28rem;
  }

  .banner--medium:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
    min-height: 34rem;
  }

  .banner--large:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
    min-height: 39rem;
  }
  
  .header__icons, #header_wrapper > nav, #header_wrapper.scrolled > nav {
    display: none;
  }

  .header-wrapper {
    width: 100%;
  }

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

  .header__inline-menu.scrolled .header__logo-svg {
    width: 100%;
    display: flex;
  }

  #header_wrapper.scrolled {
    /* position: relative; */
  }

  #header_wrapper.scrolled .banner__box {
    width: 40%;
  }

  .header__inline-menu {
    padding: 0;
  }

  #header_logo.scrolled {
    align-items: center;
    justify-content: center;
  }

  .banner--mobile-bottom .banner__box {
    transition: width 0.8s cubic-bezier(0.5, 0, 0, 1);
  }
}

@media screen and (min-width: 750px) {
  .banner {
    flex-direction: row;
  }

  .banner--small:not(.banner--adapt) {
    min-height: 100vh;
  }

  .home-header.banner--medium:not(.banner--adapt) {
    min-height: 100vh;
  }

  .banner--medium:not(.banner--adapt) {
    min-height: 65px;
  }

  .banner--large:not(.banner--adapt) {
    min-height: 100vh;
  }

  .banner__content.banner__content--top-left {
    align-items: flex-start;
    justify-content: flex-start;
  }

  .banner__content.banner__content--top-center {
    align-items: flex-start;
    justify-content: center;
  }

  .banner__content.banner__content--top-right {
    align-items: flex-start;
    justify-content: flex-end;
  }

  .banner__content.banner__content--middle-left {
    align-items: center;
    justify-content: flex-start;
  }

  .banner__content.banner__content--middle-center {
    align-items: center;
    justify-content: center;
  }

  .banner__content.banner__content--middle-right {
    align-items: center;
    justify-content: flex-end;
  }

  .banner__content.banner__content--bottom-left {
    align-items: flex-end;
    justify-content: flex-start;
  }

  .banner__content.banner__content--bottom-center {
    align-items: flex-end;
    justify-content: center;
  }

  .banner__content.banner__content--bottom-right {
    align-items: flex-end;
    justify-content: flex-end;
  }
}

@media screen and (max-width: 749px) {
  .banner:not(.banner--stacked) {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .banner--stacked {
    height: auto;
  }

  .banner--stacked .banner__media {
    flex-direction: column;
  }
}

.banner__media {
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}

.banner__media-half {
  width: 50%;
}

.banner__media-half + .banner__media-half {
  right: 0;
  left: auto;
}

.banner__media-half.animate--fixed:first-child > img,
.banner__media-half.animate--zoom-in:first-child > img {
  width: 50%;
}

.banner__media-half.animate--fixed:nth-child(2) > img,
.banner__media-half.animate--zoom-in:nth-child(2) > img {
  left: 50%;
  width: 50%;
}

@media screen and (max-width: 749px) {
  .banner--stacked .animate--fixed:first-child > img,
  .banner--stacked .animate--zoom-in:first-child > img {
    width: 100%;
  }

  .banner--stacked .banner__media-half.animate--fixed:nth-child(2) > img,
  .banner--stacked .banner__media-half.animate--zoom-in:nth-child(2) > img {
    left: 0;
    width: 100%;
  }

  .banner--stacked .banner__media-half {
    width: 100%;
  }

  .banner--stacked .banner__media-half + .banner__media-half {
    order: 1;
  }
}

@media screen and (min-width: 750px) {
  .banner__media {
    height: 100%;
  }
}

.banner--adapt,
.banner--adapt_image.banner--mobile-bottom .banner__media:not(.placeholder) {
  height: auto;
}

@media screen and (max-width: 749px) {
  .banner--mobile-bottom .banner__media,
  .banner--stacked:not(.banner--mobile-bottom) .banner__media {
    position: relative;
  }

  .banner--stacked.banner--adapt .banner__content {
    height: auto;
  }

  .banner:not(.banner--mobile-bottom):not(.email-signup-banner) .banner__box {
    background: transparent;
  }

  .banner:not(.banner--mobile-bottom) .banner__box {
    border: none;
    border-radius: 0;
    box-shadow: none;
  }

  .banner:not(.banner--mobile-bottom) .button--secondary {
    --alpha-button-background: 0;
  }

  .banner--stacked:not(.banner--mobile-bottom):not(.banner--adapt) .banner__content {
    position: absolute;
    height: auto;
  }

  .banner--stacked.banner--adapt:not(.banner--mobile-bottom) .banner__content {
    max-height: 100%;
    overflow: hidden;
    position: absolute;
  }

  .banner--stacked:not(.banner--adapt) .banner__media {
    position: relative;
  }

  .banner::before {
    display: none !important;
  }

  .banner--stacked .banner__media-image-half {
    width: 100%;
  }
}

.banner__content {
  padding: 0;
  display: flex;
  position: relative;
  width: 100%;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 750px) {
  .banner__content:not(.scrolled) {
    padding: 5rem;
  }

  .banner__content--top-left {
    align-items: flex-start;
    justify-content: flex-start;
  }

  .banner__content--top-center {
    align-items: flex-start;
    justify-content: center;
  }

  .banner__content--top-right {
    align-items: flex-start;
    justify-content: flex-end;
  }

  .banner__content--middle-left {
    align-items: center;
    justify-content: flex-start;
  }

  .banner__content--middle-center {
    align-items: center;
    justify-content: center;
  }

  .banner__content--middle-right {
    align-items: center;
    justify-content: flex-end;
  }

  .banner__content--bottom-left {
    align-items: flex-end;
    justify-content: flex-start;
  }

  .banner__content--bottom-center {
    align-items: flex-end;
    justify-content: center;
  }

  .banner__content--bottom-right {
    align-items: flex-end;
    justify-content: flex-end;
  }
}

@media screen and (max-width: 749px) {
  .banner__content {
    position: absolute; /* Overlay on top of media */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; /* Match banner height */
    z-index: 2; /* Above media */
    display: flex;
    align-items: center; /* Vertical centering */
    justify-content: center; /* Horizontal centering */
    padding: 0;
  }
  
  .banner--mobile-bottom:not(.banner--stacked) .banner__content {
    order: 2; /* Keep existing rule */
  }
  .banner:not(.banner--mobile-bottom) .field__input,
  .banner--mobile-bottom:not(.banner--stacked) .banner__box.color-scheme-1 {
    background: transparent;
  }

  .banner--mobile-bottom .banner__box:not(.scrolled) {
    padding: 0 2rem;
  }

  #header_logo:not(.scrolled) {
    padding-top: 45vh;
  }
}

.banner__box {
  padding: 2rem;
  position: relative;
  height: fit-content;
  align-items: center;
  text-align: center;
  width: 100%;
  word-wrap: break-word;
  z-index: 1;
}

.banner--mobile-bottom .banner__box {
  width: 100%;
  padding: 0rem;
  display: flex;
  justify-content: center;
}

@media screen and (min-width: 750px) {
  .banner__box {
    padding: 4rem 3.5rem;
  }

  .banner--desktop-transparent .banner__box {
    padding: 4rem 0;
    background: transparent;
    max-width: 89rem;
    border: none;
    border-radius: 0;
    box-shadow: none;
  }

  .banner--desktop-transparent .button--secondary {
    --alpha-button-background: 0;
  }

  .banner--desktop-transparent .content-container:after {
    display: none;
  }
}

@media screen and (max-width: 749px) {
  .banner--mobile-bottom::after,
  .banner--mobile-bottom .banner__media::after {
    display: none;
  }
}

.banner::after,
.banner__media::after {
  content: '';
  position: absolute;
  top: 0;
  background: #000000;
  opacity: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.banner__box > * + .banner__text {
  margin-top: 1.5rem;
}

@media screen and (min-width: 750px) {
  .banner__box > * + .banner__text {
    margin-top: 2rem;
  }
}

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

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

@media screen and (max-width: 749px) {
  .banner--stacked .banner__box {
    width: 100%;
  }
}

@media screen and (min-width: 750px) {
  .banner__box {
    width: auto;
    max-width: 100rem;
    min-width: 45rem;
  }
}

@media screen and (min-width: 1400px) {
  .banner__box {
    max-width: 125rem;
  }
}

.banner__heading {
  margin-bottom: 0;
}

.banner__box .banner__heading + * {
  margin-top: 1rem;
}

.banner__buttons {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 1rem;
  max-width: 45rem;
  word-break: break-word;
}

@media screen and (max-width: 749px) {
  .banner--content-align-mobile-right .banner__buttons--multiple {
    justify-content: flex-end;
  }

  .banner--content-align-mobile-center .banner__buttons--multiple > * {
    flex-grow: 1;
    min-width: 22rem;
  }
}

@media screen and (min-width: 750px) {
  .banner--content-align-center .banner__buttons--multiple > * {
    flex-grow: 1;
    min-width: 22rem;
  }

  .banner--content-align-right .banner__buttons--multiple {
    justify-content: flex-end;
  }
}

.banner__box > * + .banner__buttons {
  margin-top: 2rem;
}

@media screen and (max-width: 749px) {
  .banner:not(.slideshow) .rte a,
  .banner:not(.slideshow) .inline-richtext a:hover,
  .banner:not(.slideshow) .rte a:hover {
    color: currentColor;
  }
}

@media screen and (min-width: 750px) {
  .banner--desktop-transparent .rte a,
  .banner--desktop-transparent .inline-richtext a:hover,
  .banner--desktop-transparent .rte a:hover {
    color: currentColor;
  }
}

@media only screen and (max-width: 767px) {
  .banner__media {
    height: 100vh; /* Full viewport height */
    width: 100%; /* Ensure it spans the width */
    overflow: hidden; /* Prevent overflow */
    position: absolute; /* Keep as background layer */
    top: 0;
    left: 0;
    z-index: 0; /* Ensure it’s behind content */
  }
  
  /* .banner__media-image--desktop {
    display: none;
  } */
  
  .banner__media-image--mobile {
    display: block;
    width: 100%; /* Full width of container */
    height: 100%; /* Full height of container */
    object-fit: cover; /* Scale image to cover the area, cropping if needed */
    position: absolute; /* Position within the container */
    top: 0;
    left: 0;
  }
}

/* Content */
.main-content__top {
  margin-top: 10px;
  margin-bottom: 20px;
}

/* Homepage Collection */
.collection__chips {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.collection__chips-container {
  display: flex;
  z-index: 2;
}

.collection__chips-item {
  background-color: #fff;
  border-radius: 35px;
  padding: 0.5rem 3rem;
  margin: 2rem;
}

/* Full Modal */
.full-modal, .content-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 1000;
  display: none;
}

.full-modal[open], .content-modal[open] {
  display: flex;
  align-items: center;
  justify-content: center;
}

.full-modal[open] .full-modal__content {
  width: 100%;
  height: 100%;
  max-width: 100vw;
  max-height: 100vh;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

@media screen and (max-width: 749px) {
  .full-modal__text-content {
    padding: 0 20px 20px 20px;
  }
}

.full-modal__text-content, .content-modal__text-content {
  background: #fff;
  padding: 20px;
  overflow: auto;
  text-align: center;
  border-radius: 4px;
  width: 100%;
  height: 100%;
}

.full-modal__toggle, .content-modal__toggle, .aside-modal__toggle {
  position: absolute;
  top: 20px;
  right: 20px;
  background: #fff;
  border: none;
  padding: 10px;
  font-size: 20px;
  cursor: pointer;
  z-index: 1001;
  color: rgb(var(--color-foreground));
}

.main-product__info-item {
  cursor: pointer;
}

.main-product__info-item:hover {
  text-decoration: underline;
}

.full-modal .text-area {
  border-bottom: 1px solid black;
}

@media screen and (min-width: 750px) {
  .main-content__top div {
    margin-top: 20px;
  }
}

@media screen and (max-width: 749px) {
  .main-content__top > :first-child {
    margin-top: 35px;
  }

  .story__text {
    margin-top: 0 !important;
  }

  .story__text .text-container > :first-child {
    font-size: 1.5rem;
  }
    
  .story__text .text-container p {
    margin-block-end: 14px;
    margin-block-start: 0;
    font-size: 1.1rem;
  }

  .story__content {
    flex-direction: column;
    gap: 0;
  }
}

/* Main Product */
@media screen and (min-width: 750px) {
  .main-product__info-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr); 
    gap: 20%;
    width: 100%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 749px) {
  .main-product__info-container {
    display: flex;
    gap: 10px;
    flex-direction: column;
  }
}


.main-product__info-item {
  text-align: left;
}