/** Shopify CDN: Minification failed

Line 3875:0 Expected "}" to go with "{"

**/


@charset "UTF-8";
.swiper-pagination {
  height: 1px !important;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #2A2826 !important;
}

.button--solid {
  background: white;
  color: #2A2826;
  border-color: white;
}

.button {
  text-transform: uppercase;
}

.feat-collection__title .button--outline, .cart-form .button--outline, .media_heading .button--outline, .section-heading .button--outline {
  border-color: #2A2826;
}
.feat-collection__title .button--outline:hover, .cart-form .button--outline:hover, .media_heading .button--outline:hover, .section-heading .button--outline:hover {
  background: #2A2826;
  color: white;
}

#ViewCart {
  background-color: #EFEEED;
  color: #A69F92;
  display: none;
}
#ViewCart:hover {
  color: #2A2826;
  border-color: #EFEEED;
}

#site-menu-sidebar .sidebar__footer {
  display: none !important;
}

#CheckOut {
  background-color: #39646F;
  border-color: #39646F;
  color: #EFEEED;
}
#CheckOut:hover {
  background-color: #233D43;
  border-color: #233D43;
}

[id=rich-text-01JRYQSBHVYMV534728CBYPKM4] span {
  font-weight: 400 !important;
}

.footer-item__newsletter .button--solid {
  background: #EFEEED !important;
  border-color: #EFEEED !important;
}
.footer-item__newsletter .button--solid:hover {
  color: #2A2826 !important;
  border-color: #EFEEED !important;
}

.subtitle-text, .feat-collection__title .small, .spacing--custom > *:not(:last-child), .feat-collection--image-with-text p {
  margin-bottom: 24px !important;
}

.collection-heading-container {
  display: none;
}

.button--outline:hover {
  background: white;
  color: #2A2826;
}

.template-password #site-header {
  display: flex !important;
  position: absolute;
  z-index: 9999;
  top: 15px;
  right: 0;
}
@media (max-width: 768px) {
  .template-password #site-header {
    padding-top: 0;
  }
}
.template-password #site-header:after {
  display: none;
}
.template-password #site-header .logo-txt {
  display: none;
}
.template-password #site-header .modal-login-cta {
  opacity: 0;
}

.area--cart {
  position: relative;
}

.expandable {
  overflow: hidden;
}
.expandable .section-heading__title {
  max-width: none !important;
}
.expandable .expandable__heading strong {
  text-transform: uppercase;
}

.facets-sidebar p, .facets-sidebar span {
  font-size: 14px !important;
}
@media (max-width: 768px) {
  .facets-sidebar p, .facets-sidebar span {
    max-width: calc(100% - 40px);
  }
}

.template--sets #main-collection-product-grid {
  gap: 0 !important;
}
@media (min-width: 1024px) {
  .template--sets .product-item--collection {
    margin-bottom: -21px;
  }
}

#blog-posts {
  padding-top: 20px;
}

@media (max-width: 768px) {
  .facets-sidebar {
    height: auto !important;
    border: none !important;
  }
}

.media_heading {
  margin-bottom: 40px;
}
@media (min-width: 1024px) {
  .media_heading {
    display: grid;
    grid-template-columns: 1fr 1fr;
    justify-content: space-between;
    margin-bottom: 0;
  }
  .media_heading .button {
    width: fit-content;
    height: fit-content;
    margin-right: 0;
    margin-left: auto;
  }
}

@media (min-width: 1024px) {
  .pdp-bundles-wrap:nth-of-type(odd) {
    flex-direction: row;
  }
}

.footer-accreditations {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  gap: 20px;
}
.footer-accreditations img {
  width: 100%;
  height: auto;
}
@media (min-width: 1024px) {
  .footer-accreditations {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    gap: 46px;
    width: calc(100% - 40px);
  }
}

.pw {
  height: 100svh;
  width: 100%;
  position: relative;
  position: fixed;
  top: 0;
}
.pw__wrap {
  height: calc(100svh - 40px);
  width: calc(100% - 40px);
  top: 20px;
  left: 20px;
  position: relative;
  overflow: hidden;
  border-radius: 10px;
}
@media (min-width: 1024px) {
  .pw__wrap {
    height: calc(100% - 80px);
    width: calc(100% - 80px);
    top: 40px;
    left: 40px;
  }
}
.pw__wrap img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  position: absolute;
  z-index: -1;
  animation: zoomOut 0.8s ease forwards;
}
.pw__inner {
  padding: 20px;
  padding-bottom: 40px;
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: white;
  position: relative;
  overflow: hidden;
}
@media (min-width: 1024px) {
  .pw__inner {
    padding: 60px 50px;
  }
}
.pw__inner svg {
  width: 100%;
  height: auto;
}
@media (min-width: 600px) {
  .pw__inner svg {
    width: 345px;
  }
}
.pw__inner svg path {
  fill: white;
}
.pw__inner h1 {
  font-size: 36px;
  line-height: 39px;
}
@media (min-width: 600px) {
  .pw__inner h1 {
    font-size: 44px;
    line-height: 48px;
  }
}
.pw__inner p {
  font-size: 16px;
  font-weight: 400;
  line-height: 20.75px;
  letter-spacing: 0.02em;
  max-width: 519px;
}
.pw__inner fieldset {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.pw__inner fieldset input:-webkit-autofill,
.pw__inner fieldset input:-webkit-autofill:hover,
.pw__inner fieldset input:-webkit-autofill:focus {
  -webkit-text-fill-color: #fff !important;
  color: #fff !important;
  /* Force the browser’s autofill background to be “painted over” */
  -webkit-box-shadow: 0 0 0 1000px transparent inset !important;
  box-shadow: 0 0 0 1000px transparent inset !important;
  /* This “hack” tries to delay or override Chrome’s yellow background */
  transition: background-color 9999s ease-in-out 0s;
  /* Ensures the background paint is fully transparent where text is shown */
  -webkit-background-clip: text;
  background-clip: text;
  /* If you need the caret (blinking cursor) in white too */
  caret-color: #fff;
}
.pw__inner fieldset input {
  border: none;
  border-bottom: 1px solid white;
  background-color: transparent;
  color: white;
  box-shadow: none;
  border-radius: 0;
  max-width: 519px;
  padding-left: 0;
}
.pw__inner fieldset input:hover {
  border-color: white;
}
.pw__inner fieldset input::placeholder {
  color: white;
  opacity: 0;
}
.pw__inner fieldset .button {
  border-color: white;
  color: white;
  width: 160px;
  letter-spacing: 0.08em;
}
.pw__inner fieldset .button:hover {
  background-color: white;
  color: #2A2826;
}

fieldset {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
fieldset input:-webkit-autofill,
fieldset input:-webkit-autofill:hover,
fieldset input:-webkit-autofill:focus {
  -webkit-text-fill-color: #fff !important;
  color: #fff !important;
  /* Force the browser’s autofill background to be “painted over” */
  -webkit-box-shadow: 0 0 0 1000px transparent inset !important;
  box-shadow: 0 0 0 1000px transparent inset !important;
  /* This “hack” tries to delay or override Chrome’s yellow background */
  transition: background-color 9999s ease-in-out 0s;
  /* Ensures the background paint is fully transparent where text is shown */
  -webkit-background-clip: text;
  background-clip: text;
  /* If you need the caret (blinking cursor) in white too */
  caret-color: #fff;
}
fieldset input {
  border: none;
  border-bottom: 1px solid white;
  background-color: transparent;
  color: white;
  box-shadow: none;
  border-radius: 0;
  max-width: 519px;
  padding-left: 0;
}
fieldset input:hover {
  border-color: white;
}
fieldset input::placeholder {
  color: white;
  opacity: 0;
}
fieldset .button {
  border-color: white;
  color: white;
  width: 160px;
  letter-spacing: 0.08em;
}
fieldset .button:hover {
  background-color: white;
  color: #2A2826;
}

@media screen and (max-width: 1024px) {
  .pw__wrap img {
    animation: none;
  }
}
.toggle__icon svg path {
  stroke-width: 0.5px;
  stroke: var(--color-text-main);
}

.container--large-collection {
  padding-right: 0;
  /* If the browser supports :has(), use this for better targeting */
}
.container--large-collection label:has(.styled-checkbox:checked) {
  background-color: #2A2826;
  color: white;
}
.container--large-collection .pdp-badges {
  position: absolute;
  top: 0;
  z-index: 9;
  top: 19px;
  left: 19px;
  display: flex;
  gap: 10px;
}
@media (min-width: 1024px) {
  .container--large-collection .pdp-badges {
    top: 25px;
    left: 20px;
  }
}
.container--large-collection .pdp-badges .badge {
  padding: 20px;
  border-radius: 40px;
  padding: 6.75px 19px;
  border-radius: 40px;
  display: flex;
  align-items: center;
}
.container--large-collection .pdp-badges .badge span {
  font-size: 14px;
  letter-spacing: 0.02em;
  position: relative;
  line-height: normal;
}
.container--large-collection .collection-title {
  margin-top: 20px;
}
@media (min-width: 1024px) {
  .container--large-collection .collection-title {
    margin-top: 120px;
  }
}
.container--large-collection .facets__list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.container--large-collection .facets__item {
  padding: 0 !important;
}
.container--large-collection .show-more_panel {
  max-height: none !important;
}
.container--large-collection .show-more_panel::after {
  display: none !important;
}
.container--large-collection show-more .js-show-more {
  display: none !important;
}
.container--large-collection .facets__disclosure {
  margin-top: 40px;
}
.container--large-collection .facets__summary-text {
  display: none !important;
}
.container--large-collection .facet-checkbox {
  width: fit-content !important;
  display: block !important;
  min-width: 0;
  font-size: 14px;
  padding: 7px 17px;
}
.container--large-collection .facet-checkbox span {
  text-transform: none;
}
.container--large-collection .facet-checkbox input {
  display: none;
}

#main-collection-product-grid .product-item__image img {
  transition: 0.3s;
}
#main-collection-product-grid .product-item__image:hover img {
  transform: scale(1.025);
}
#main-collection-product-grid .swiper-navigation {
  height: 1px;
}
#main-collection-product-grid .swiper-container {
  width: 100%;
  overflow: hidden;
  padding-right: 15px;
}
@media (min-width: 1024px) {
  #main-collection-product-grid .swiper-container {
    padding-right: 40px;
  }
}
#main-collection-product-grid .collection-set {
  grid-template-columns: 1fr;
  gap: 10px;
  display: grid;
  padding-right: 15px;
}
@media (min-width: 1024px) {
  #main-collection-product-grid .collection-set {
    grid-template-columns: 1fr 1fr 1fr;
    padding-right: 40px;
    gap: 24px;
  }
}
@media (min-width: 1024px) {
  #main-collection-product-grid {
    gap: 24px !important;
    grid-template-columns: 1fr;
  }
}

.sticky-add-to-cart__price-original br {
  display: none !important;
}

.sup {
  position: relative;
  top: -6px;
  font-size: 11px;
}

.product-type--bundle {
  grid-column: 1/3;
  border: none !important;
  display: block;
}
/*.product-type--bundle .product-item__image {
  padding-bottom: calc(62.305% + 24px);
  padding-bottom: calc(75.305% - 15.05px);
}
@media (min-width: 1024px) {
  .product-type--bundle .product-item__image {
    padding-bottom: calc(62.305% - 15.05px);
  }
}
@media (min-width: 1024px) {
  .product-type--bundle .product-description {
    max-width: 65%;
  }
}*/

.collection--grid {
  gap: 24px;
  grid-template-columns: 1fr;
}
@media (min-width: 1024px) {
  .collection--grid {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}



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

@keyframes zoomOut {
  from {
    transform: scale(1.05);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}
.button {
  min-width: 160px;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.08em;
  padding: 11.25px 20px;
}

.element--height-square .card__image {
  padding-top: 100%;
  position: relative;
}
.element--height-square .remove-empty-space {
  display: none;
}

.draw {
  stroke-dasharray: 500; /* The total length of the path */
  stroke-dashoffset: 500; /* Hide the entire path initially */
  animation: none; /* No animation initially */
}

.draw.active {
  animation: drawLine 2.5s linear forwards; /* Start animation when active */
}

@keyframes drawLine {
  to {
    stroke-dashoffset: 0; /* Fully reveal the path */
  }
}
.footer-top {
  padding-top: 0;
}

.sticky-header.show {
  opacity: 0.5;
}
.sticky-header.show .header__top {
  padding-bottom: 0;
  border: none !important;
  margin-bottom: 0px !important;
}

.babymenu .menu-link span {
  font-family: inherit !important;
  font-weight: 400;
}

.menu-promotion-background-image figure {
  padding-top: 100% !important;
}

.article-grid {
  display: grid;
}
@media (min-width: 1024px) {
  .article-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
  }
}

.expandable__card.article-card {
  width: 100%;
}
.expandable__card.article-card .expandable__heading strong {
  text-transform: uppercase;
}
.expandable__card.article-card .expandable__media {
  padding-bottom: 68.6%;
}
.expandable__card.article-card .expandable__content {
  color: white;
  padding-bottom: 20px;
}
@media (max-width: 768px) {
  .expandable__card.article-card .expandable__content p, .expandable__card.article-card .expandable__content span {
    font-size: 14px;
  }
}
.expandable__card.article-card:hover .expandable__content {
  opacity: 1;
  transform: translateY(0px);
  transition: 0.4s;
  transition-delay: 0s;
}

html {
  scroll-behavior: smooth;
}

.header-logos {
  display: flex;
  align-items: center;
  justify-content: end;
}
@media (min-width: 1024px) {
  .header-logos {
    gap: 30px;
  }
}
.header-logos a {
  padding: 5px;
}

.swiper-slide.active img {
  filter: brightness(0.5);
}

@media (max-width: 1023px) {
  .expandable__card.swiper-slide-active img {
    filter: brightness(0.5);
  }
}
.expandable__card img {
  transition: 0.3s !important;
}
.expandable__card:hover img {
  filter: brightness(0.5);
}

.product-item--collection {
  border-bottom: 1px solid #2A2826;
  padding-bottom: 10px;
  margin-bottom: 20px;
}
@media (min-width: 1024px) {
  .product-item--collection {
    padding-bottom: 40px;
    margin-bottom: 0;
  }
}
.product-item--collection .product-item__image {
  margin-bottom: 24px;
}
.product-item--collection.has-hover-img:hover * {
  color: inherit;
}
.product-item--collection .custom-title {
  position: relative;
}
.product-item--collection .custom-price {
  position: absolute;
  bottom: 0;
  right: 0;
  white-space: nowrap;
}
.product-item--collection .product-description {
  margin-top: 20px;
  opacity: 0.4;
}

.custom-title {
  position: relative;
}
.custom-title .savings-badge {
  position: absolute;
  top: 0;
  right: 0;
  background-color: #830000;
  color: white;
  font-size: 13px;
  padding: 5px 10px;
  border-radius: 21px;
  margin-bottom: 5px !important;
}

.Avada-CookiesBar_BtnDeny {
  border-radius: 30px !important;
}

.Avada-CookiesBar_BtnAgree {
  background: transparent !important;
  border-radius: 30px !important;
  border: 1px solid black !important;
}

.Avada-CookiesBar_AgreeButtonText, .Avada-CookiesBar_DenyButtonText {
  color: black !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 11.25px 20px;
  font-size: 12px !important;
  font-family: SuisseIntl-Regular !important;
}
.Avada-CookiesBar_AgreeButtonText span, .Avada-CookiesBar_DenyButtonText span {
  font-family: SuisseIntl-Regular !important;
}

.Avada-CookiesMobile Avada-Preview_CookiesMobile__bottom, .Avada-CookiesBar_BtnEnd Avada-CookiesBar__BtnEnd--Mobile, #Avada-CookiesBar .Avada-CookiesMobile, #Avada-CookiesBar .Avada-CookiesFull_bar .Avada-CookiesBar_Container, #Avada-CookiesBar .Avada-CookiesFull_bar .Avada-CookiesBar_Container .Avada-CookiesBar_Footer .Avada-CookiesBar_BtnEnd .Avada-CookiesBar_GroupButton {
  background: #F5F5F5 !important;
}

.Avada-CookiesBar__MessageInner {
  font-family: SuisseIntl-Regular !important;
}

.Avada-CookiesBar__MessageInner *, .Avada-CookiesBar__Header {
  font-family: SuisseIntl-Regular !important;
}

.collection-banner .col-img-wrap img {
  object-position: center !important;
}

#admin-bar-iframe {
  display: none !important;
}

@media (min-width: 1024px) {
  #Avada-CookiesBar .Avada-CookiesFull_bar .Avada-CookiesBar_Container {
    flex-direction: row !important;
  }
}
.Avada-CookiesBar__Header {
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
}

.sidebar-opened--right #shopify-chat {
  display: none !important;
}

[data-testid=animated-teaser] {
  display: none !important;
}

.scrolled-past [data-testid=animated-teaser] {
  display: flex !important;
  max-width: none !important;
}

.sticky-add-to-cart-visible [data-testid=animated-teaser], .sidebar-opened [data-testid=animated-teaser] {
  display: none !important;
}
.sticky-add-to-cart-visible inbox-online-store-chat, .sidebar-opened inbox-online-store-chat {
  bottom: 75px !important;
  right: 9px !important;
}
@media (min-width: 1024px) {
  .sticky-add-to-cart-visible inbox-online-store-chat, .sidebar-opened inbox-online-store-chat {
    bottom: 118px !important;
    right: 33px !important;
  }
}

@media (max-width: 768px) {
  .feat-collection__title {
    max-width: calc(100% - 40px);
  }
}

.pdp-bundles-wrap {
  display: flex;
  flex-direction: column-reverse;
}
@media (max-width: 768px) {
  .pdp-bundles-wrap {
    padding-bottom: 0 !important;
  }
  .pdp-bundles-wrap .feat-collection--bundles__title-wrap {
    margin-top: 20px !important;
  }
}

@media (max-width: 768px) {
  .info-tab-wrap .button--outline:hover {
    background: inherit;
    color: inherit;
    border-color: inherit;
  }
}

@media (max-width: 768px) {
  .media-posts .expandable__content, #blog-posts .expandable__content {
    display: none !important;
  }
  .media-posts .expandable__card.swiper-slide-active img, #blog-posts .expandable__card.swiper-slide-active img {
    filter: brightness(1) !important;
  }
  .media-posts .swiper-slide.active img, #blog-posts .swiper-slide.active img {
    filter: brightness(1) !important;
  }
}

.contact-form__the-form input, .contact-form__the-form textarea {
  border: none;
  border-bottom: 1px solid #2a2826;
  background: transparent;
  border-radius: 0;
  padding-left: 0;
}

.has-mob-img .mob-image {
  display: block !important;
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
@media (min-width: 1024px) {
  .has-mob-img .mob-image {
    display: none !important;
  }
}
.has-mob-img figure {
  display: none;
}
@media (min-width: 1024px) {
  .has-mob-img figure {
    display: block !important;
  }
}

.info-tabs__tab.js-info-tab.active .info-tabs__tab-caption {
  display: block;
}

.info-tab-wrap.active {
  max-height: none !important;
}

.supply-options {
  display: grid !important;
  grid-template-columns: 1fr;
}
@media (min-width: 1024px) {
  .supply-options {
    grid-template-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.supply-options .button {
  font-size: 12px !important;
  width: 100%;
  padding: 7px 7px !important;
  background-color: #EFEEED;
  border-color: #EFEEED;
}
.supply-options .button.active {
  background-color: #39646F !important;
  border-color: #39646F !important;
}

.supply-options .button:hover {
  background-color: #39646F !important;
    border-color: #39646F !important;
    color: #ffffff;
}

.subsctiption-options {
  margin-top: 20px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  margin-bottom: 20px;
}
@media (min-width: 1024px) {
  .subsctiption-options {
    grid-template-columns: 1fr;
  }
}
.subsctiption-options .checkbox {
  height: 15px;
  width: 15px;
  border: 1px solid #39646F;
  border-radius: 50%;
  position: relative;
  top: -1px;
}
.subsctiption-options__option.active .checkbox:after {
  content: "";
  position: absolute;
  top: 1px;
  left: 1px;
  width: 11px;
  height: 11px;
  background: #39646F;
  border-radius: 50%;
}
.subsctiption-options__details {
  margin-top: 17px;
}
.subsctiption-options__details p {
  font-size: 13px;
  margin: 0;
  margin-bottom: 5px;
}
.subsctiption-options__header {
  padding-top: 20px;
  border-top: 1px solid #2A2826;
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: space-between;
  height: 36px;
}
@media (min-width: 1024px) {
  .subsctiption-options__header {
    padding-top: 10px;
  }
}
.subsctiption-options__header .radio {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
}
.subsctiption-options__header .savings-badge {
  background-color: #D7D4CF !important;
  color: #D7D4CF !important;
  font-size: 12px;
  padding: 5px 10px;
  border-radius: 21px;
  min-width: 100px;
  text-align: center;
}
.subsctiption-options__header .savings-badge * {
  font-size: 12px;
}
.subsctiption-options__header:hover {
  cursor: pointer;
}
.subsctiption-options__header p {
  margin: 0;
  font-size: 14px;
}


.mobile-buy-btn-price js-final-price strong text-weight--bold {
  display: none !important;
}

.sub-on {
  display: none;
  text-transform: none !important;
}

.one-on {
  display: inline-flex;
}


.mobile-buy-btn-price {
    display: none;
}


.subscribe-chosen .sub-on {
  display: inline-flex;
}
.subscribe-chosen .one-on {
  display: none;
}

.kl-teaser-SsCAvX {
  bottom: 10px !important;
  bottom: 20px !important;
  right: auto !important;
  left: -5px !important;
  width: 302px !important;
}
@media (min-width: 1024px) {
  .kl-teaser-SsCAvX {
    bottom: 20px !important;
    right: 20px !important;
    left: auto !important;
  }
}

/*=============================================
=            Klaviyo Mods            =
=============================================*/
[data-testid=klaviyo-form-SsCAvX] {
  border-radius: 0 !important;
}
[data-testid=klaviyo-form-SsCAvX] > div {
  align-items: flex-start !important;
}
[data-testid=klaviyo-form-SsCAvX] > div * {
  text-align: left !important;
  font-family: SuisseIntl-Regular !important;
  padding-left: 0 !important;
}
[data-testid=klaviyo-form-SsCAvX] > div img {
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 0 !important;
}
[data-testid=klaviyo-form-SsCAvX] > div .ql-font-poppins {
  font-size: 14px !important;
}
[data-testid=klaviyo-form-SsCAvX] > div button {
  min-width: 160px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  padding: 11.25px 20px !important;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 28px !important;
  font-family: SuisseIntl-Regular !important;
  letter-spacing: 1px !important;
  text-transform: uppercase;
  background: transparent !important;
  color: #2A2826 !important;
  border: 1px solid #2A2826 !important;
  height: 22px !important;
}
[data-testid=klaviyo-form-SsCAvX] > div input {
  border: none !important;
  font-family: SuisseIntl-Regular !important;
  border-bottom: 1px solid #2A2826 !important;
  background: transparent !important;
  border-radius: 0 !important;
  padding-left: 0 !important;
  color: #2A2826 !important;
  width: 380px !important;
  margin-bottom: 20px !important;
  padding: 0 !important;
  max-width: none !important;
  font-size: 14px !important;
}
[data-testid=klaviyo-form-SsCAvX] > div input::placeholder {
  color: #2A2826 !important;
  font-family: SuisseIntl-Regular !important;
  opacity: 0.8 !important;
  font-size: 14px !important;
}

@media (max-width: 768px) {
  [aria-label="FLYOUT Form"] {
    transform: scale(1) translateY(-50%) !important;
  }
  [data-testid=klaviyo-form-SsCAvX] {
    width: 100vw !important;
  }
  [data-testid=klaviyo-form-SsCAvX] > div {
    justify-content: flex-start !important;
    padding-top: 51px !important;
  }
  .klaviyo-close-form {
    top: 65px !important;
    right: 34px !important;
  }
}
[data-testid=klaviyo-form-SsCAvX] > div {
  justify-content: flex-start !important;
  padding-top: 51px !important;
}

[data-testid=FLYOUT] {
  height: 100vh !important;
}
[data-testid=FLYOUT] > div {
  height: 100vh;
  padding: 0 !important;
  margin: 0 !important;
}
[data-testid=FLYOUT] > div::before, [data-testid=FLYOUT] > div::after {
  display: none !important;
}
[data-testid=FLYOUT] > div > div {
  height: 100%;
}
[data-testid=FLYOUT] > div > div > div {
  height: 100%;
}

[data-testid=animated-teaser] {
  max-width: 200px !important;
  position: relative !important;
  max-width: none !important;
  max-width: none !important;
  bottom: 0 !important;
  transform: none !important;
}
[data-testid=animated-teaser] span {
  font-family: "SuisseIntl-Regular" !important;
  text-transform: uppercase;
  font-weight: 800 !important;
  letter-spacing: 1px;
  font-size: 13px !important;
  border-radius: 38px !important;
  padding: 7px 9px !important;
}

/*=====  End of Klaviyo Mods  ======*/
.css-slider:not(.css-slider--overlay-navigation) .css-slider-dot-navigation .css-slider-dot {
  opacity: 0.3 !important;
}
.css-slider:not(.css-slider--overlay-navigation) .css-slider-dot-navigation .css-slider-dot.active {
  opacity: 1 !important;
}

.css-slider:not(.css-slider--overlay-navigation) .css-slider-dot-navigation .css-slider-dot.active ~ .css-slider-dot {
  background: var(--color-text-main) !important;
}

@font-face {
  font-family: "SuisseIntl-Medium";
  src: url("SuisseIntl-Medium.otf") format("opentype");
}
h1, h2, h3, h4, h5, h6 {
  font-family: "SuisseIntl-Regular";
  font-weight: 500;
}

@font-face {
  font-family: "americanabt";
  src: url("americanabt_roman_1.ttf") format("truetype");
}
.americana, .americana * {
  font-family: "americanabt";
  font-size: 26px !important;
}
@media (min-width: 1024px) {
  .americana, .americana * {
    font-size: 42px !important;
  }
}

p {
  font-weight: 400;
  line-height: normal;
  font-size: 16px;
}

h2, .section-heading__text, .section-heading__text span, .h2, .text-font--heading, .text-font--heading span {
  font-size: 28px;
}
@media (min-width: 1024px) {
  h2, .section-heading__text, .section-heading__text span, .h2, .text-font--heading, .text-font--heading span {
    font-size: 44px;
    line-height: 125%;
  }
}

h3, .h3, h3 span {
  font-size: 18px;
}
@media (max-width: 1024px) {
  h3, .h3, h3 span {
    font-size: 16px;
  }
}

/* ==========================================================================
   Blog article headings, 2026 house format
   --------------------------------------------------------------------------
   The default h2 above is 44px on desktop, a size meant for homepage section
   titles. Inside an article, against 24px h3 and body copy, it reads as
   oversized, and it left writers pasting a style block into every new post.

   These rules apply only to articles carrying
   .article-main__content--type-2026, which sections/main-article.liquid adds
   from 9 September 2026 onward, or via the type-2026 article tag. Articles
   published before that are untouched, and nothing outside a blog article can
   match the class.

   Kept here, next to the base heading sizes, rather than at the end of the
   file: further down, custom.css has unclosed braces that trap everything
   after them inside nested mobile media queries. The selectors below outrank
   the bare h2/h3 rules on specificity, so source order does not matter.

   !important is needed because templates/article.json sets section-level
   custom_css of "h3 { font-size: 24px }". Shopify wraps section custom_css in
   a #shopify-section-... selector, so it carries ID specificity and would
   otherwise beat these class rules.
   ========================================================================== */
.article-main__content--type-2026 h2,
.article-main__content--type-2026 h2 span {
  font-size: 22px !important;
  line-height: 1.3;
}
.article-main__content--type-2026 h3,
.article-main__content--type-2026 h3 span {
  font-size: 18px !important;
  line-height: 1.35;
}
@media (min-width: 1024px) {
  .article-main__content--type-2026 h2,
  .article-main__content--type-2026 h2 span {
    font-size: 26px !important;
    line-height: 1.3;
  }
  .article-main__content--type-2026 h3,
  .article-main__content--type-2026 h3 span {
    font-size: 20px !important;
    line-height: 1.35;
  }
}

.menu-link, .announcement, .header__top a {
  font-family: "SuisseIntl-Regular";
  text-transform: uppercase;
}

.suisse {
  font-family: "SuisseIntl-Regular" !important;
}
@media (min-width: 1024px) {
  .suisse {
    font-size: 42px;
  }
}

.section-heading__title {
  font-family: "SuisseIntl-Regular" !important;
}

strong {
  letter-spacing: 0.02em;
}
@media (min-width: 1024px) {
  strong {
    letter-spacing: 1px;
  }
}

.button {
  font-family: "SuisseIntl-Regular";
}
.button span {
  font-family: "SuisseIntl-Regular";
  text-transform: uppercase;
  font-size: 12px;
}

.experts__link, .expandable__content a {
  font-size: 14px !important;
}

.footer-item__title {
  font-size: 12px !important;
}

.small, .samll *, .small p, .small span {
  font-size: 14px !important;
}

.text-animation--underline-in-header, .area--account span, .area--cart span {
  font-size: 14px;
}

.menu-link, .header__top a {
  font-size: 14px;
}

.js-original-price {display: none !important}

.custom-title {
  line-height: 0.5;
  font-weight: 400;
}
.custom-title strong {
  text-transform: uppercase;
}

.table-wrapper table tr {
  gap: 0 !important;
  display: table !important;
}


.header .site-nav {
  justify-content: center;
}

@media (min-width: 1024px) {
  body .site-header--style-one-row .header__top--logo-left.no-custom-link.site-header--menu-classic {
    grid-template-columns: 400px 1fr 400px !important;
    grid-template-columns: 237px 1fr 237px !important;
  }
}

body .site-header--alignment-left .site-nav.style--classic {
  justify-content: center;
}

body .site-nav.style--classic .menu-link {
  padding-left: 40px;
  padding-right: 40px;
}

@media (min-width: 1024px) {
  .submenu-masonry {
    display: grid;
    grid-template-columns: repeat(4, 1fr) !important;
    height: auto !important;
  }
  .submenu-masonry li {
    position: relative !important;
    top: 0 !important;
  }
}

mobile-navigation .menu-link, mobile-navigation .menu-link span {
  font-size: 14px !important;
}
mobile-navigation .has-promotion {
  display: none;
}

.product-text .custom-title {
  margin-top: 5px;
  margin-bottom: 10px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

@media (min-width: 1200px) {
  .product-text .custom-title {
    margin-bottom: 20px;
  }
}
.product-text .custom-title .custom-price {
  font-size: 22px !important;
  white-space: nowrap;
}


.product-text .custom-title .custom-price span {
  font-size: 22px !important;
}

@media (max-width: 1000px) {
  .product-text .custom-title .custom-price span {
    font-size: 22px !important;
  }
}

.product-text .custom-title p {
  font-size: 22px;
  margin: 0;
}
@media (max-width: 1000px) {
  .product-text .custom-title p {
    font-size: 18px;
  }
}
.product-price--compare {
  color: #2A2A2A !important;
  opacity: 0.8 !important;
  display: inline-block !important;
  opacity: 1 !important;
  text-decoration: line-through !important;
  position: relative !important;
  z-index: 10 !important;
}

.custom-title p.custom-price { display:none; }          /* safest */
.custom-title p { margin:0; }                           /* removes default P margins */
.custom-title { display:flex; align-items:baseline; }   /* keep baseline alignment */
.custom-title .product-price { margin-left:auto; }      /* pushes price to the right */


product-page {
  gap: 30px !important;
  --col-gap: 30px !important;
  margin-bottom: 40px;
}
product-page .css-slider:not(.css-slider--overlay-navigation) .css-slider-dot-navigation {
  width: 100%;
}
product-page .css-slider:not(.css-slider--overlay-navigation) .css-slider-dot-navigation .css-slider-dot {
  width: 100%;
}
product-page .css-slider-button.css-slider-next, product-page .css-slider-button.css-slider-prev {
  max-width: 0;
  opacity: 0;
}


@media (min-width: 1024px) {
  .product-item.has-hover-img:hover .hover-image {
    opacity: 1;
    filter: brightness(0.5);
    transform: scale(1);
  }
  .product-item.has-hover-img:hover .hover-text {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
    transition: transform 0.25s cubic-bezier(0.4, 0, 1, 1), opacity 0.25s cubic-bezier(0.4, 0, 1, 1);
  }
  .product-item.has-hover-img:hover * {
    color: white;
  }
  .product-item.has-hover-img:hover .button__text {
    color: var(--color-text-main);
  }
}
.product-item .hover-text {
  color: white;
  font-size: 13px;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  pointer-events: none;
  transform: translateY(5%);
}
.product-item .custom-title {
  display: flex;
  justify-content: start;
  align-items: end;
}
.product-item .custom-title * {
  margin: 0;
  line-height: normal;
}

.product-item__image {
  width: 100%;
  padding-bottom: 124.61%;
  position: relative;
  overflow: hidden;
  border-radius: 10px;
}
.product-item__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
/* Hover image — desktop only */
@media (min-width: 1024px) {
  .product-item.has-hover-img .hover-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 0.3s ease;
  }

  .product-item.has-hover-img:hover .hover-image {
    opacity: 1;
  }
}


@media (min-width: 1024px) {
  .product-item.has-hover-img .hover-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 0.4s ease;
  }

  .product-item.has-hover-img:hover .hover-image {
    opacity: 1;
  }
}

.product-item__info {
  position: absolute;
  inset: auto 0 0 0;   /* bottom-aligned */
  margin: 0 !important;
  height: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px;
}

@media (max-width: 768px) {
  .feat-collection__title {
    margin-bottom: 20px;
  }
}

@media (max-width: 768px) {
  .swiper-slide-active .has-hover-img .hover-image {
    opacity: 1;
    filter: brightness(0.5);
    transform: scale(1);
    display: none !important;
  }
  .swiper-slide-active .has-hover-img .hover-text {
    opacity: 0;
    transform: translateY(0);
    pointer-events: auto;
    transition: transform 0.25s cubic-bezier(0.4, 0, 1, 1), opacity 0.25s cubic-bezier(0.4, 0, 1, 1);
  }
  .swiper-slide-active .has-hover-img .button__text {
    color: var(--color-text-main);
  }
}

@media (min-width: 1200px) {
  product-page {
    grid-template-columns: 1.45fr 1fr !important;
    gap: 24px !important;
  }
}
product-page .toggle__title {
  padding-top: 7px;
  padding-bottom: 25px;
}

recharge-subscription-widget {
  max-width: none !important;
}

/* ==========================================================================
   Mobile overlays, 2 Oct 2026.
   Cookie notice: the Avada banner only gets .Avada-CookiesMobile on phones.
   Its stacked padding and empty footer/preferences margins made it 118px
   tall, covering the add to cart area. Same content, tightened to ~62px.
   On iPhone the strip under the text is Safari's floating toolbar laid over
   the page bottom, not banner padding, so it cannot be reclaimed here.
   Judge.me floating "Reviews" tab: its default right-edge spot covers the
   purchase option prices on phones, so below 768px it becomes a slim strip
   on the left edge. transform-origin is reset because Judge.me sets an
   offset origin for its own rotation, which shifted the flipped tab inward.
   ========================================================================== */
.Avada-CookiesMobile .Avada-CookiesBar__Header {
  padding-top: 7px !important;
  padding-right: 24px !important;
  margin-bottom: 0 !important;
  font-size: 12px !important;
  letter-spacing: 0.04em !important;
  line-height: 1.2 !important;
}
.Avada-CookiesMobile .Avada-CookiesBar_Message {
  padding-top: 1px !important;
}
.Avada-CookiesMobile .Avada-CookiesBar__MessageInner {
  margin: 0 !important;
  line-height: 1.25 !important;
}
/* 16 Oct 2026: the message and its two policy links were centred under a
   left-aligned heading; left-align them so the notice reads as one block. */
.Avada-CookiesMobile .Avada-CookiesBar__MessageInner,
.Avada-CookiesMobile .Avada-CookiesBar__MessageInner * {
  text-align: left !important;
}
.Avada-CookiesMobile .CookiesBar-Pop__Close {
  top: 6px !important;
}
.Avada-CookiesMobile .Avada-CookiesBar__PolicyWrapper {
  display: inline-block !important;
  height: auto !important;
}
.Avada-CookiesMobile .Avada-CookiesBar__PolicyWrapper a {
  margin-bottom: 0 !important;
}
.Avada-CookiesMobile .Avada-CookiesBar_Content {
  margin-top: 0 !important;
  padding-bottom: 6px !important;
}
.Avada-CookiesMobile .Avada-CookiesBar_Footer,
.Avada-CookiesMobile .Avada-CookiesBar__PreferencesText-Container {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
@media (max-width: 767px) {
  .jdgm-revs-tab-btn {
    left: 0 !important;
    right: auto !important;
    writing-mode: vertical-rl !important;
    transform: rotate(180deg) !important;
    transform-origin: center center !important;
    font-size: 11px !important;
    line-height: 1 !important;
    padding: 10px 3px !important;
    border-radius: 4px 0 0 4px !important;
  }
}

/* ==========================================================================
   Bundles widget option titles, 1 Oct 2026. The standard subscription
   widget (bundles only, every single product is on the quantity upsell
   widget) renders its option titles at 20px; the quantity upsell widget
   uses 14px. ::part reaches through the widget's shadow DOM, and only the
   standard widget exposes rc-purchase-option__selector, so the quantity
   upsell widget is untouched.
   ========================================================================== */
recharge-subscription-widget::part(rc-purchase-option__selector) {
  font-size: 14px;
}
/* Price laid out like the quantity upsell widget: title left, price right,
   vertically centred, 14px with the final price bold and the struck
   original smaller and lighter. All via exposed shadow parts, which only
   the standard widget has. */
recharge-subscription-widget::part(rc-purchase-option__label) {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}
recharge-subscription-widget::part(rc-purchase-option__prices) {
  font-size: 14px;
  margin: 0 0 0 auto;
  white-space: nowrap;
}
recharge-subscription-widget::part(rc-purchase-option__discounted-price) {
  font-size: 14px;
  font-weight: 600;
}
recharge-subscription-widget::part(rc-purchase-option__original-price) {
  font-size: 12px;
  font-weight: 400;
  margin-right: 6px;
}
/* "(cancel anytime)" is split into this part by custom.js; on phones it
   drops to its own line under "Subscribe & Save". */
@media (max-width: 767px) {
  recharge-subscription-widget::part(mnp-cancel-note) {
    display: block;
  }
}
/* The frequency picker inside the expanded subscription option, matched to
   the 14px type used everywhere else in the restyled widgets. */
recharge-subscription-widget::part(rc-plans__label) {
  font-size: 14px;
}
recharge-subscription-widget::part(rc-plans-button__interval) {
  font-size: 14px;
}
recharge-subscription-widget::part(rc-plans-button__discount) {
  font-size: 12px;
}
recharge-subscription-widget::part(rc-purchase-option__price) {
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
}
/* ==========================================================================
   PDP spacing rhythm, 1 Oct 2026. Evens the gaps around the title block and
   the Judge.me star rows on every product page (all templates share
   main-product.liquid). The title rules are the September block, revived;
   the Judge.me rules are new, because the star rows arrived with the press
   theme work. Kept mid-file: the end of custom.css has unclosed braces that
   trap later rules inside mobile media queries.
   ========================================================================== */

/* Title: the theme gives h1.custom-title margin 5px/10px (20px bottom from
   1200px up), so it sat tight under the top badges and uneven above the
   stars. The child combinator plus tag lifts this to (0,2,1), outranking the
   (0,2,0) theme rules at both breakpoints without !important. */
.opening-pdp-main > h1.custom-title {
  margin-top: 16px;
  margin-bottom: 16px;
}

/* The stars are the last child of .opening-pdp-main, so the gap beneath them
   is that block's own 2px bottom margin from
   `.product-text > *:not(:last-child)` in section-main-product.css. The tag
   qualifier beats that rule despite load order. */
.product-text > div.opening-pdp-main {
  margin-bottom: 16px;
}

/* Description: sat 2px under the benefit pills but 16px-plus above the buy
   box. Adjacent-sibling match keeps this to the subtitle directly under the
   pills, leaving any later subtitle untouched. */
.product-text > .product-inline-badges + .product__subtitle {
  margin-top: 16px;
  margin-bottom: 16px;
}

/* The second star row, inside the buy form under the purchase options: it
   rendered flush against the widget above (0px) and 10px above the add to
   cart row. The empty .bundle-value-line spacer's 8px top margin collapses
   with this bottom margin rather than adding, and a further 2px rides along
   from the theme on some pages; 16px here lands the visible gap on 16px. */
.product-form__apps .jdgm-preview-badge {
  margin-top: 16px;
  margin-bottom: 16px;
}


.product__subtitle {
  width: 100%;
  display: block;
  margin-bottom: 20px;
}

.product__subtitle .metafield-rich_text_field ul {
  list-style-position: outside;
  margin-left: 20px;
}
@media (min-width: 1024px) {
  .product__subtitle .metafield-rich_text_field ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0px;
    padding: 0;
    margin-left: 28px;
    list-style-position: outside;
    column-gap: 20px;
    display: flex;
    flex-wrap: wrap;
  }
  .product__subtitle .metafield-rich_text_field ul li {
    width: calc(50% - 10px);
  }
}

.product__cart-functions .button {
  background-color: #108474;
  border-color: #108474;
  color: #ffffff;
  margin-top: 50px !important;
  height: 2.75rem;
}
.product__cart-functions .button:hover {
  background-color: #108474!important;
    color: #ffffff;
}

.template-product .info-tabs__tab-title {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
.template-product .main-footer {
  margin-bottom: 79px;
}
@media (min-width: 1200px) {
  .template-product .main-footer {
    margin-bottom: 150px;
  }
}
.template-product .css-slider:not(.css-slider--overlay-navigation) .css-slider-navigation-container {
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
  gap: 20px;
}
.template-product .css-slider:not(.css-slider--overlay-navigation) .css-slider-navigation-container .css-slider-dot {
  width: 10px;
  height: 10px;
  border-radius: 50% !important;
}
.template-product .css-slider:not(.css-slider--overlay-navigation) .css-slider-navigation-container .css-slider-dot-navigation {
  gap: 9px;
  display: flex !important;
}

#main .product-main-container {
  margin-top: 4px !important;
}

product-page {
  gap: 15px !important;
}
@media (min-width: 1024px) {
  product-page {
    gap: 24px !important;
  }
}
product-page .css-slider-viewport {
  width: calc(100% - 30px);
  margin-left: 15px;
}
@media (min-width: 1024px) {
  product-page .css-slider-viewport {
    width: calc(100% - 0px);
    margin-left: 0px;
  }
}

.sticky-add-to-cart.visible {
  margin: 15px;
  margin-bottom: 10px;
  width: calc(100% - 30px);
  border-radius: 10px;
}
@media (min-width: 1024px) {
  .sticky-add-to-cart.visible {
    margin: 40px;
    width: calc(100% - 80px);
  }
}

@media (max-width: 768px) {
  .sticky-add-to-cart__actions {
    width: 100%;
  }
}

sticky-add-to-cart {
  background: #d7d4cf !important;
}

#CollectionProductCount {
  display: none;
}

.collection-links {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 40px;
}
.collection-links .button {
  width: fit-content !important;
  display: block !important;
  min-width: 0;
  font-size: 14px;
  padding: 7px 17px;
  text-transform: none;
}
.collection-links .button:hover {
  background-color: #2A2826;
  color: white;
  border-color: #2A2826;
}
.collection-links .button.active {
  background-color: #2A2826;
  color: white;
}

@media (min-width: 1024px) {
  .text-cols {
    padding-top: 10px;
  }
  .text-cols .card__icon {
    width: 100px;
  }
  .text-cols .card__icon img {
    width: 100%;
  }
}

.toggle__content ul {
  margin-bottom: 0;
}

.feat-collection {
  overflow: hidden;
  padding-bottom: 42px;
}
@media (min-width: 1024px) {
  .feat-collection.border-desktop .swiper-navigation {
    height: 1px;
    background: #2a2826;
  }
}
@media (min-width: 1024px) {
  .feat-collection__title {
    margin-top: 31px !important;
    padding-right: 40px;
  }
}
.feat-collection__badge {
  width: fit-content;
  padding: 8px 20px;
  border-radius: 40px;
  display: flex;
  justify-content: center;
  align-items: baseline;
  margin-bottom: 20px;
}
@media (min-width: 1024px) {
  .feat-collection__badge {
    margin-bottom: 55px;
  }
}
.feat-collection__badge span {
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
@media (min-width: 1024px) {
  .feat-collection {
    display: flex;
    align-items: flex-start;
  }
}
.feat-collection .swiper-navigation {
  position: absolute;
  width: calc(100% - 30px);
  left: 15px;
  bottom: 1px;
}
.feat-collection .swiper-navigation::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--color-text-main);
  margin-top: 10px;
}
@media (min-width: 1024px) {
  .feat-collection .swiper-navigation {
    width: calc(100% - 80px);
    left: 40px;
  }
}

/*=====  End of Featured collection  ======*/
/*=============================================
=            Bendles            =
=============================================*/
@media (min-width: 1024px) {
  .feat-collection--bundles.image-position--right {
    flex-direction: row !important;
    gap: 140px;
    align-items: center;
  }
}
@media (min-width: 1024px) {
  .feat-collection--bundles {
    flex-direction: row-reverse;
    gap: 140px;
    align-items: center;
  }
}
.feat-collection--bundles .feat-collection__title {
  padding-right: 0 !important;
  margin-top: 0px !important;
  margin-bottom: 24px;
}
.feat-collection--bundles .product-item__text {
  align-items: flex-start;
  margin-top: 24px;
}
.feat-collection--bundles .product-item__image {
  padding-bottom: 59%;
}
.feat-collection--bundles .feat-collection__badge:last-of-type, .feat-collection--bundles h2:last-of-type, .feat-collection--bundles p:last-of-type {
  margin-bottom: 24px;
}
@media (min-width: 1024px) {
  .feat-collection--bundles .feat-collection__badge:last-of-type, .feat-collection--bundles h2:last-of-type, .feat-collection--bundles p:last-of-type {
    margin-bottom: 48px;
  }
}
.feat-collection--bundles p {
  max-width: 412px;
}
/*=====  End of Bendles  ======*/
/*=============================================
=            text with images            =
=============================================*/
@media (min-width: 1024px) {
  .feat-collection--image-with-text {
    gap: 140px;
    align-items: center;
  }
}
.feat-collection--image-with-text .feat-collection__title {
  padding-right: 0 !important;
  margin-top: 0px !important;
  margin-bottom: 24px;
}
.feat-collection--image-with-text .feat-collection__title h2 {
  max-width: 420px;
}
.feat-collection--image-with-text .feat-collection__title p {
  max-width: 472px;
}
.feat-collection--image-with-text .product-item__text {
  align-items: flex-start;
  margin-top: 24px;
}
.feat-collection--image-with-text .product-item__image {
  padding-bottom: 83.88%;
}
.feat-collection--image-with-text .feat-collection__badge, .feat-collection--image-with-text h2, .feat-collection--image-with-text p {
  margin-bottom: 24px;
}
@media (min-width: 1024px) {
  .feat-collection--image-with-text .feat-collection__badge, .feat-collection--image-with-text h2, .feat-collection--image-with-text p {
    margin-bottom: 48px;
  }
}
.feat-collection--image-with-text p {
  max-width: 412px;
}
/*=====  End of text with images  ======*/
/*=============================================
=            Stats card            =
=============================================*/
.stats-card {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.stats-card img {
  border-radius: 10px;
}
.stats-card__inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  row-gap: 51px;
}
@media (min-width: 1024px) {
  .stats-card__inner {
    gap: 24px;
    grid-template-columns: 1fr 1fr;
  }
}
.stats-card__bottom {
  display: flex;
  flex-direction: column;
  justify-content: end;
  gap: 24px;
}
.stats-card__bottom img {
  width: 100%;
}
.stats-card__bottom .img-container {
  height: 100%;
}
.stats-card__card {
  border-top: 1px solid var(--color-text-main);
  padding-top: 15px;
  margin-top: 2px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .stats-card__card {
    font-size: 13px;
  }
}
.stats-card__top {
  display: flex;
  gap: 10px;
  align-items: baseline;
  margin-bottom: 24px;
  flex-direction: column;
}
@media (max-width: 768px) {
  .stats-card__top {
    gap: 5px;
  }
}
.stats-card__top .h3 p {
  font-size: 22px;
}
@media (min-width: 1024px) {
  .stats-card__top .h3 p {
    font-size: 24px;
  }
}
.stats-card__top p {
  margin: 0;
}
@media (max-width: 768px) {
  .stats-card__top p {
    font-size: 13px;
  }

.js-count-up {
  overflow: visible !important;
  display: inline-block;
  min-width: 4ch;
  white-space: nowrap;
  transform: translateZ(0);
}

.js-count-up.h2 {
  line-height: 1.1;
  padding: 0.1em 0;
}


}
/*=====  End of Stats card  ======*/
/*=============================================
=            media with overlay            =
=============================================*/
@media (min-width: 1024px) {
  .card--has-border .card__text {
    padding-bottom: 120px;
  }
}

.card__text .line-separator {
  width: calc(100% - 36px);
  position: absolute;
  top: calc(var(--gutter-large) - var(--spacing));
  left: 18px;
}
@media (min-width: 1024px) {
  .card__text .line-separator {
    left: 42px;
    width: calc(100% - 84px);
  }
}
.card__text .subtitle {
  max-width: 473px;
}
.card__text .subtitle .subtitle-text {
  display: block;
  margin-bottom: 24px;
}

/*=====  End of media with overlay  ======*/
/*=============================================
=            Graph            =
=============================================*/
.graph__inner {
  position: relative;
}
@media (min-width: 1024px) {
  .graph__inner {
    display: grid;
    grid-template-columns: 2fr 1.13fr;
    grid-gap: 130px;
  }
}
.graph__image-wrap {
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
  left: 0;
  z-index: -1;
  opacity: 0;
  transition: 0.5s;
}
.graph__image-wrap.active {
  opacity: 1;
}
.graph__image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.graph__content {
  position: relative;
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-radius: 10px;
  overflow: hidden;
}
@media (min-width: 1024px) {
  .graph__content {
    padding: 45px;
  }
}
.graph__content * {
  margin: 0;
}
.graph__content h2 {
  margin-bottom: 24px;
}
.graph__content .button {
  width: fit-content;
  margin-top: 40px;
}
.graph__content-wrap {
  display: none;
}
.graph__content-wrap.active {
  display: block;
}
.graph__toggle {
  display: flex;
  margin-bottom: 55px;
  border: solid 1px white;
  border-radius: 40px;
  width: fit-content;
}
.graph__toggle-btn {
  padding: 5px 14px;
  border-radius: 40px;
  transition: 0.4s;
  font-size: 13px;
}
.graph__toggle-btn:hover {
  cursor: pointer;
}
.graph__toggle-btn.active {
  padding: 5px 28px;
}
.graph__animation {
  display: none;
  padding-top: 30px;
  padding-bottom: 30px;
}
.graph__animation.active {
  display: block;
}
.graph__animation svg {
  width: 100%;
  height: 100%;
}

/*=====  End of Graph  ======*/
/*=============================================
=            Expandable            =
=============================================*/
.expandable .swiper-wrapper {
  align-items: baseline !important;
}
.expandable__inner {
  align-items: baseline;
}
.expandable__inner .swiper-slide {
  align-self: baseline;
}
@media (max-width: 768px) {
  .expandable__inner .swiper-slide-active .expandable__content {
    opacity: 1;
    transform: translateY(0px);
    transition: 0.4s;
    transition-delay: 0.4s;
  }
}
.expandable__card {
  width: 25%;
  position: relative;
  transition: 0.4s;
}
@media (min-width: 1024px) {
  .expandable__card {
    padding-top: calc(var(--padding-top) + 32px) !important;
  }
}
.expandable__card:hover {
  cursor: pointer;
}
.expandable__card.active a:after {
  position: absolute;
  height: 100%;
  width: 100%;
  content: "";
  top: 0;
  left: 0;
}
@media (min-width: 1024px) {
  .expandable__card.active {
    width: calc(var(--expanded-width) + 32px) !important;
    padding-top: 0 !important;
  }
}
.expandable__card.active .expandable__content {
  opacity: 1;
  transform: translateY(0px);
  transition: 0.4s;
  transition-delay: 0.4s;
}
.expandable__media {
  padding-bottom: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 10px;
}
.expandable__media img {
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.expandable__heading {
  margin-top: 24px;
}
.expandable__heading p {
  margin: 0;
}
.expandable__content {
  position: absolute;
  top: 0;
  display: flex;
  justify-content: flex-end;
  align-items: baseline;
  height: 100%;
  flex-direction: column;
  padding: 20px;
  opacity: 0;
  transform: translateY(20px);
  transition: 0s;
  transition-delay: 0s;
}
@media (min-width: 1024px) {
  .expandable__content {
    padding-bottom: 30px;
    padding-right: 74px;
  }
}

/*=====  End of Expandable  ======*/
/*=============================================
=            Experts            =
=============================================*/
.experts {
  overflow: hidden;
  padding-bottom: 24px;
}
@media (max-width: 768px) {
  .experts .hide-mobile {
    display: none !important;
  }
}
.experts--landscape .experts__media {
  padding-bottom: 66.666%;
}
@media (min-width: 1024px) {
  .experts--landscape .experts__content {
    width: 50%;
    right: -50%;
  }
}
.experts .video-background video .swiper-container {
  position: relative;
}
.experts .heading p {
  margin: 0;
}
.experts .controls {
  position: absolute;
  bottom: 55px;
  left: 20px;
  position: relative;
  height: 30px;
  width: 30px;
  display: none;
}
.experts .controls.muted .unmute {
  display: none;
}
.experts .controls.muted .mute {
  display: block;
}
.experts .controls .mute {
  display: none;
}
.experts .controls:hover {
  cursor: pointer;
}
.experts .controls svg {
  width: 30px;
  height: 30px;
  position: absolute;
  top: 0;
  left: 0;
}
.experts .swiper-navigation {
  position: absolute;
  width: 117px;
  right: 8px;
  top: -62px;
}
.experts .swiper-slide {
  transition: 0.4s;
  opacity: 0.4;
  z-index: 55;
}
.experts .swiper-slide-active {
  opacity: 1;
  z-index: 9;
  z-index: 9999999;
}
@media (min-width: 1024px) {
  .experts .swiper-slide-active {
    margin-right: calc(25% + 24px) !important;
  }
}
.experts .swiper-slide-active .controls {
  display: block;
}
.experts .swiper-slide-active .experts__content {
  opacity: 1;
  transform: translateY(0px);
  transition: 0.4s;
  transition-delay: 0.4s;
  overflow: hidden;
}
.experts__media {
  border-radius: 10px;
  padding-bottom: 150%;
  position: relative;
  z-index: -1;
}
.experts__media:hover {
  cursor: grab;
}
.experts__media img, .experts__media video {
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 10px !important;
}
.experts__content.desktop {
  display: none;
}
@media (min-width: 1024px) {
  .experts__content.desktop {
    display: flex;
  }
}
.experts__content.mobile {
  display: block;
  margin-top: 20px;
  max-width: calc(100% - 50px);
}
@media (min-width: 1024px) {
  .experts__content.mobile {
    display: none;
  }
}
@media (min-width: 1024px) {
  .experts__content {
    display: block;
    padding: 15px;
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: end;
    height: 100%;
    border-radius: 10px;
    background-color: var(--color-bg-main);
    position: absolute;
    right: -100%;
    width: 100%;
    bottom: 0;
    opacity: 0;
    transform: translateY(20px);
    transition: 0s;
    transition-delay: 0s;
  }
}
@media (min-width: 1024px) {
  .experts__content {
    padding: 24px;
    padding-bottom: 26px;
  }
}
@media (max-width: 768px) {
  .experts__content p {
    font-size: 13px;
  }
}
@media (max-width: 768px) {
  .experts__content .small {
    font-size: 11px !important;
  }
}

/*=====  End of Experts  ======*/
/*=============================================
=            Bundler            =
=============================================*/
.product-item--bundled {
  opacity: 1 !important;
  pointer-events: all !important;
}
.product-item--bundled .add-to-cart {
  display: none;
}

@media (min-width: 1024px) {
  product-bundler .products-container {
    grid-template-columns: 1fr 1fr;
  }
  product-bundler .outer-wrap {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 180px;
    align-items: center;
  }
  product-bundler .grid-offset-3 {
    grid-column-start: inherit;
  }
  product-bundler .element--is-sticky {
    position: relative !important;
    top: 0;
  }
  product-bundler .bundler__footer {
    max-width: 200px;
  }
  product-bundler .bundler__header {
    margin-top: 20px;
  }
}

/*=====  End of Bundler  ======*/
/*=============================================
=            Rich text            =
=============================================*/
.element--height-fit-content .gutter-bottom--xlarge {
  padding-bottom: 0;
}
.element--height-fit-content .gutter-top--xlarge {
  padding-top: 0;
}

@media (min-width: 1024px) {
  .rich-text__container .stats-card__inner {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
.rich-text__container .rich-text-heading {
  max-width: 1013px;
}

/*=====  End of Rich text  ======*/
/*=============================================
=            Reveal cards            =
=============================================*/
.reveal-card-image-link {
  display: block;
}

.expandable__media:after {
  pointer-events: none;
}

.reveal-cards__inner {
  display: grid;
  gap: 24px;
}
@media (min-width: 1024px) {
  .reveal-cards__inner {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.reveal-cards .expandable__card {
  width: 100%;
}
@media (max-width: 768px) {
  .reveal-cards .expandable__card img {
    filter: brightness(0.5);
  }
}
.reveal-cards .expandable__card figure {
  z-index: -1;
}
.reveal-cards .expandable__card p {
  margin: 0;
  margin-bottom: 16px;
}
.reveal-cards .expandable__card .expandable__content {
  padding-bottom: 5px;
}
@media (max-width: 768px) {
  .reveal-cards .expandable__card .expandable__content {
    top: -20px;
    opacity: 1;
    transform: translateY(0px);
    transition: 0.4s;
    transition-delay: 0s;
  }
}
@media (min-width: 1024px) {
  .reveal-cards .expandable__card:hover {
    width: calc(var(--expanded-width) + 32px) !important;
    padding-top: 0 !important;
  }
}
.reveal-cards .expandable__card:hover .expandable__content {
  opacity: 1;
  transform: translateY(0px);
  transition: 0.4s;
  transition-delay: 0s;
}
@media (max-width: 768px) {
  .reveal-cards .expandable__card:hover .expandable__content {
    top: -20px;
  }
}
.reveal-cards .expandable__media {
  padding-bottom: 70%;
}
@media (max-width: 768px) {
  .reveal-cards .expandable__media {
    padding-bottom: 100%;
  }
}
.reveal-cards .expandable__heading {
  text-transform: uppercase;
}
.reveal-cards .expandable__heading strong {
  text-transform: uppercase !important;
}
/*=====  End of Reveal cards  ======*/
/*=============================================
=            Slideshow            =
=============================================*/
.slide-show .css-slider-dot-navigation {
  width: 100% !important;
}
.slide-show .css-slider:not(.css-slider--overlay-navigation) .css-slider-dot-navigation .css-slider-dot {
  width: 100%;
}
.slide-show .css-slider:not(.css-slider--overlay-navigation) .css-slider-navigation-container {
  margin-bottom: 1px;
}
.slide-show .css-slider-button[style*=block] {
  display: none !important;
}

/*=====  End of Slideshow  ======*/
/*=============================================
=            Info tab            =
=============================================*/
.info-tab .info-tabs__tab {
  padding-top: 16px !important;
  padding-bottom: 40px !important;
  border-color: #2A2826;
}
.info-tab .info-tabs__tab:first-child {
  border-top: 1px solid #2A2826;
}
@media (min-width: 1024px) {
  .info-tab__left {
    position: sticky;
    top: 0;
  }
}
.info-tab .tab-ref {
  background-color: #DBDAD9;
  padding: 30px 24px;
  border-radius: 10px;
  margin-top: 40px;
}
.info-tab .tab-ref .tab-ref__heading {
  margin-bottom: 25px;
  padding-bottom: 13px;
  border-bottom: 1px solid #2A2826;
}
.info-tab .info-tabs {
  align-items: flex-start;
}
.info-tab .graph__animation {
  display: block;
  padding-top: 40px;
  padding-bottom: 0px;
}
.info-tab img {
  border-radius: 10px;
  margin-top: 40px;
}
.info-tab .info-tabs__tab-caption {
  max-width: 551px;
  padding-top: 28px !important;
}
.info-tab .info-tabs__tab-caption p {
  min-height: 16px;
}
@media (min-width: 1024px) {
  .info-tab {
    display: grid !important;
    grid-template-columns: 551px auto;
    gap: 141px;
  }
}

.info-tab__left .info-tab__left-inner {
  position: sticky;
  top: 35px;
}

@media (max-width: 404px) {
  #shopify-section-template--18001763565705__info_tab_W7dTU6 .info-tab-wrap {
    overflow: hidden !important;
    max-height: 173px;
  }
  #shopify-section-template--18001763565705__info_tab_W7dTU6 .info-tab-wrap.active {
    max-height: none;
  }
}

.info-tab-wrap {
  border-top: 1px solid var(--color-text-main);
  max-height: 100px;
  overflow: hidden;
}
.info-tab-wrap.active {
  overflow: visible;
}
@media (max-width: 768px) {
  .info-tab-wrap {
    overflow: hidden !important;
    max-height: 151px;
  }
}
.info-tab-wrap .open {
  display: none !important;
}
.info-tab-wrap .info-tab {
  padding-bottom: 100px;
  padding-top: 80px;
}
.info-tab-wrap.active {
  max-height: none;
}
.info-tab-wrap.active .open {
  display: block !important;
}
.info-tab-wrap.active .closed {
  display: none !important;
}
.info-tab-wrap .section-heading {
  padding: 0;
  display: flex;
  gap: 18px;
  margin-top: 5px;
  padding-top: 29px;
}
@media (min-width: 1024px) {
  .info-tab-wrap .section-heading {
    align-items: baseline;
    gap: 10px;
    margin: 0;
    justify-content: space-between;
  }
}
.info-tab-wrap .small a {
  font-size: 14px;
}
.info-tab-wrap .section-heading__title span {
  font-size: 18px;
  display: block;
  max-width: 551px;
}
@media (min-width: 1024px) {
  .info-tab-wrap .section-heading__title span {
    font-size: 22px;
  }
}
/*=====  End of Info tab  ======*/
.feat-collection--image-with-text .product-item__text p {
  margin-bottom: 4px !important;
}

@media (min-width: 1024px) {
  .info-tabs__tab-caption {
    max-width: 70%;
  }
}

.collection-set:empty {
  display: none;
}

.info-tabs__tab-title strong {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.js-info-tab .close-me path, .js-info-tab .open-me path {
  stroke-width: 0.5px;
  stroke: var(--color-text-main);
}
.js-info-tab .close-me {
  display: none;
}
.js-info-tab .open-me path:first-of-type {
  transition: all 100ms linear;
  transform-origin: center;
}
.js-info-tab.active .open-me path:first-of-type {
  transform: rotate(-90deg) translateX(0.5px) translateY(-0.5px);
  display: block !important;
}
@media (min-width: 600px) {
  .js-info-tab.active .close-me {
    display: block;
  }
  .js-info-tab.active .close-me path {
    stroke-width: 0.5px;
    stroke: var(--color-text-main);
  }
  .js-info-tab.active .open-me path {
    stroke-width: 0.5px;
    stroke: var(--color-text-main);
  }
}

.experts--landscape, .footer-top {
  max-width: none !important;
}

@media (max-width: 768px) {
  #section-template--17479690027145__media_with_text_overlay_pRRTXd .grid--layout {
    display: flex;
    flex-direction: column-reverse;
    gap: 31px;
  }
  #section-template--17479690027145__media_with_text_overlay_pRRTXd #element-image_hxkq7J {
    height: 300px;
    width: 100%;
  }
}

@media (min-width: 1024px) {
  .product-gallery .grid--slider {
    max-height: calc(100vh - 174px);
  }
  .product-gallery .grid--slider img {
    max-height: calc(100vh - 174px);
  }
}

/*=============================================
=            Company img and Text            =
=============================================*/
.company-img-text {
  align-items: start;
  overflow: visible;
}
@media (min-width: 1024px) {
  .company-img-text {
    margin-top: 192px;
  }
}
.company-img-text .feat-collection__title h2 {
  max-width: none !important;
}
.company-img-text br {
  min-height: 16px !important;
}
.company-img-text__logo svg {
  width: 100%;
  height: auto;
}
@media (min-width: 1024px) {
  .company-img-text__logo svg {
    padding-left: 60px;
    padding-right: 60px;
  }
}
.company-img-text .feat-collection__title p {
  max-width: 553px !important;
}
.company-img-text .feat-collection__title h2 {
  margin-top: 0;
}
.company-img-text .feat-collection__title h2:last-of-type {
  margin-top: 100px;
}
.company-img-text__brand {
  position: absolute;
  height: 100%;
  flex-direction: column;
  width: 100%;
  color: white;
  display: flex;
  justify-content: center;
  align-items: start;
  padding: 40px 40px;
}
@media (min-width: 1024px) {
  .company-img-text__brand {
    padding: 100px 116px;
  }
}
.company-img-text__brand h2 {
  margin: 0;
  font-family: "americanabt";
  margin-bottom: 16px;
}
.company-img-text__brand .plus {
  margin: 36px 0px 51px;
}
.company-img-text__brand p {
  margin: 0 !important;
  margin-bottom: 14px !important;
}
.company-img-text__brand p:last-of-type {
  margin-bottom: 0 !important;
}
@media (min-width: 1024px) {
  .company-img-text__right {
    width: 45% !important;
    position: sticky;
    top: 0;
    height: 100%;
  }
}
.company-img-text__right .img-one, .company-img-text__right .img-two {
  position: absolute;
  transition: opacity 0.8s ease-in-out;
  border-radius: 10px;
}
.company-img-text__right .img-one {
  opacity: 1;
}
.company-img-text__right .img-two {
  opacity: 0;
}
@media (min-width: 1024px) {
  .company-img-text .feat-collection--bundles__title-wrap {
    width: 55% !important;
  }
}
.company-img-text__img-wrap {
  padding-bottom: 150%;
  position: relative;
}
@media (min-width: 1024px) {
  .company-img-text__img-wrap {
    padding-bottom: 90vh;
    margin-top: 5vh;
  }
}
.company-img-text__img-wrap img {
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
}

/*=====  End of Company img and Text  ======*/
.announcement-bar__content-nav {
  display: none !important;
}

.footer__inner {
  border-radius: 10px;
  padding: 20px;
  padding-bottom: 23px;
  margin-bottom: 15px;
}
@media (min-width: 1024px) {
  .footer__inner {
    padding: 50px;
    padding-bottom: 23px;
    margin-bottom: 40px;
  }
}
.footer__top {
  border-bottom: 1px solid #EFEEED;
  margin-bottom: 34px;
  padding-bottom: 34px;
}
.footer__top svg {
  width: 100%;
  height: auto;
}
.footer__bottom {
  border-bottom: 1px solid #EFEEED;
  padding-bottom: 26px;
  margin-bottom: 24px;
}
.footer__bottom .newsletter-small {
  max-width: 362px;
  margin-top: 20px;
  margin-bottom: 0;
}
@media (min-width: 1024px) {
  .footer__bottom .newsletter-small {
    margin-top: 56px;
    margin-bottom: 0;
  }
}
@media (min-width: 1024px) {
  .footer__bottom {
    display: grid;
    gap: 140px;
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 1024px) {
  .footer__left {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
}
.footer__left .button {
  margin-top: 24px;
  color: var(--color-background-footer);
}
.footer__left .button:hover {
  color: #2A2826;
}
.footer__right {
  display: grid;
  gap: 20px;
  column-gap: 20px;
  row-gap: 40px;
  grid-template-columns: 1fr 1fr;
  padding-top: 24px;
  margin-top: 24px;
}
@media (max-width: 768px) {
  .footer__right {
    margin-bottom: 40px;
  }
}
@media (min-width: 1024px) {
  .footer__right {
    padding-top: 18px;
    border-top: 1px solid #EFEEED;
    padding-bottom: 48px;
    padding-right: 65px;
    margin: 0;
    border: none;
    display: grid;
    gap: 63px;
    column-gap: 37px;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
.footer__right .footer-item__title {
  font-weight: 500;
  font-size: 11px;
  text-transform: uppercase;
}
.footer__right a {
  text-decoration: none;
  border: none;
}
.footer__credits {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  flex-direction: column-reverse;
}
@media (min-width: 1024px) {
  .footer__credits {
    flex-direction: row;
    gap: 0;
  }
}
.footer__credits p, .footer__credits a {
  margin: 0;
  font-size: 11px;
}
.footer__credits .links {
  display: flex;
  gap: 20px;
}
@media (min-width: 1024px) {
  .footer__credits .links {
    gap: 60px;
  }
}

/* === Payment Icons Under Newsletter === */
.footer__payments-under-newsletter {
  margin-top: 36px;
  padding-top: 16px;
  text-align: left;
  width: 100%
}

.footer__payments-under-newsletter .footer-item__title {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin-bottom: 12px;
  color: var(--color-foreground, #fff);
  opacity: 0.8;
}

/* Payment grid */
.footer__payment-icons {
  display: grid;
  justify-content: flex-start;
  align-items: center;
  gap: 14px 18px;
}

/* Desktop: 4 per row in left column */
@media (min-width: 1024px) {
  .footer__payment-icons {
    grid-template-columns: repeat(7, auto);
  }
}

/* Mobile: center + 5 per row */
@media (max-width: 1023px) {
  .footer__payments-under-newsletter {
    text-align: left;
    border-top: none;
    margin-top: 20px;
  }

  .footer__payment-icons {
    justify-content: center;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px 12px;
  }
}

.footer__payment-icons img,
.footer__payment-icons svg {
  height: 26px;
  width: auto;
  display: block;
}

.form-row {
  position: relative;
}

.form-row::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  background: #EFEEED;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.5s ease;
  animation-delay: 0.4s;
  pointer-events: none;
}
@media (min-width: 1024px) {
  .form-row::after {
    width: calc(100% - 40px);
    max-width: 519px;
  }
}

.newsletter__input {
  border: none;
  border-bottom: 1px solid #EFEEED;
  background: transparent;
  color: #EFEEED;
  padding: 8px 0;
  outline: none;
  width: 100%;
}

.form-row:focus-within::after {
  transform: scaleX(1);
}

.form-row:focus-within .newsletter__input {
  border-bottom: none;
}

.contact-us-footer {
  position: relative;
  margin-bottom: 0;
  transition: 0.4s;
}
.contact-us-footer.active {
  margin-bottom: 31px !important;
}
.contact-us-footer__mail {
  margin-top: 5px;
  display: block;
  text-decoration: underline !important;
  margin-bottom: 8px;
  position: absolute;
  bottom: -31px;
  left: 0;
  opacity: 0;
  transition: 0.4s;
  transition-delay: 0.3s;
}
.contact-us-footer__mail.active {
  opacity: 1;
}

.newsletter-small.desktop {
  display: none;
}
@media (min-width: 1024px) {
  .newsletter-small.desktop {
    display: block;
  }
}
.newsletter-small.mobile {
  margin-bottom: 0;
  margin-top: 20px;
}
@media (min-width: 1024px) {
  .newsletter-small.mobile {
    display: none;
  }
}

.article-main .newsletter__container {
  padding: 0;
}
.article-main .newsletter__container input {
  border-color: #2A2826;
  color: #2A2826;
}
.article-main .newsletter__container .button--solid {
  background-color: #39646F;
  border-color: #39646F;
}
.article-main .newsletter__container .button--solid:hover {
  background-color: #233D43 !important;
}
.article-main .article-main__featured-products {
  padding-bottom: 20px;
}
@media (min-width: 1024px) {
  .article-main {
    display: grid;
    grid-template-columns: auto 332px;
    gap: 25px;
  }
}
.article-main__sign-up {
  background-color: #DBDAD9;
  padding: 30px 24px;
  border-radius: 10px;
}
.article-main__authors {
  margin-bottom: 40px;
}
@media (min-width: 1200px) {
  .article-main__authors {
    padding-right: 113px;
    text-align: right;
    margin-bottom: 0;
  }
}
.article-main__authors .title {
  margin-bottom: 20px;
}
.article-main__authors .metafield-rich_text_field p {
  margin-bottom: 3px;
  min-height: 16px;
  line-height: 20.75px;
}
.article-main__title h1{
  max-width: 553px;
  margin-top: 24px;
  margin-bottom: 48px;
  font-size:36px;
}
.article-main__title h2 {
  max-width: 553px;
  margin-top: 24px;
  margin-bottom: 48px;
}
.article-main .excerpt p {
  max-width: 553px;
  margin: 0;
}
.article-main .social-icons {
  margin-top: 48px;
}
.article-main .social-icons a {
  width: 40px;
  height: 40px;
}
.article-main__feat-image {
  padding-bottom: 25px;
}
.article-main__feat-image img {
  margin-top: 80px;
  border-radius: 10px;
  max-width: 100%;
  width: 100%;
}
@media (min-width: 1200px) {
  .article-main__feat-image img {
    max-width: 80%;
  }
}
.article-main__content ul, .article-main .main-page ul {
  padding-left: 20px;
  list-style: disc;
  max-width: 553px;
}
.article-main__content h2, .article-main .main-page h2 {
  max-width: 553px;
}
.article-main__content table, .article-main .main-page table {
  margin-top: 100px;
  max-width: 668px;
  margin-bottom: 100px;
}
.article-main__content table tr, .article-main .main-page table tr {
  display: flex;
  gap: 24px;
}
.article-main__content table tr td, .article-main .main-page table tr td {
  border-top: 1px solid #2A2826;
}
.article-main__content img, .article-main .main-page img {
  border-radius: 10px;
  max-width: 100%;
  margin-top: 40px;
  margin-bottom: 40px !important;
}
@media (min-width: 1200px) {
  .article-main__content img, .article-main .main-page img {
    margin-top: 100px;
    margin-bottom: 100px !important;
    max-width: 80%;
    margin-right: 20%;
  }
}
.article-main .main-page h3 {
font-weight: 600 !important;
}
.article-main__content p, .article-main__content h3, .article-main .main-page p, .article-main .main-page h3 {
  max-width: 553px;
}
.article-main__content blockquote, .article-main .main-page blockquote {
  padding-top: 50px;
  padding-bottom: 50px;
  border-top: 1px solid #2A2826;
}
@media (min-width: 1024px) {
  .article-main__content blockquote, .article-main .main-page blockquote {
    max-width: 80% !important;
    padding-top: 82px;
    padding-bottom: 82px;
  }
}
.article-main__content blockquote, .article-main__content blockquote *, .article-main .main-page blockquote, .article-main .main-page blockquote * {
  font-family: americanabt;
  font-size: 26px;
  max-width: none;
}
@media (min-width: 1024px) {
  .article-main__content blockquote, .article-main__content blockquote *, .article-main .main-page blockquote, .article-main .main-page blockquote * {
    font-size: 42px !important;
  }
}
.article-main__featured-products {
  margin-top: 30px;
  border-top: 1px solid #2A2826;
  padding-top: 9px;
  position: sticky;
  top: 24px;
}
.article-main__featured-products .custom-title {
  margin-top: 24px;
}
.article-main__featured-products .custom-title p {
  margin: 0;
}
.article-main__featured-products .product-card__img-wrap {
  height: auto;
  position: relative;
  width: calc(100vw - 30px);
  padding-bottom: 100%;
}
@media (min-width: 1024px) {
  .article-main__featured-products .product-card__img-wrap {
    height: 256px;
    position: relative;
    width: 206px;
  }
}
.article-main__featured-products .product-card__img-wrap img {
  border-radius: 10px;
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.article-main__featured-products-list {
  display: grid;
  gap: 24px;
  width: fit-content;
}
.article-main__bottom .border {
  border-bottom: 1px solid #2A2826;
}

.main-page h1 {
  font-size: 44px;
}
.main-page ul {
  padding-left: 20px;
  list-style: disc;
  max-width: 553px;
}
.main-page h2 {
  max-width: 553px;
}
.main-page table {
  margin-top: 100px;
  max-width: 668px;
  margin-bottom: 100px;
}
.main-page table tr {
  display: flex;
  gap: 24px;
}
.main-page table tr td {
  border-top: 1px solid #2A2826;
}
.main-page img {
  border-radius: 10px;
  max-width: 100%;
  margin-top: 40px;
  margin-bottom: 40px !important;
}
@media (min-width: 1200px) {
  .main-page img {
    margin-top: 100px;
    margin-bottom: 100px !important;
    max-width: 80%;
  }
}
.main-page p, .main-page h3 {
  max-width: 1000px;
}
.main-page blockquote {
  padding-top: 50px;
  padding-bottom: 50px;
  border-top: 1px solid #2A2826;
}
@media (min-width: 1024px) {
  .main-page blockquote {
    max-width: 80% !important;
    padding-top: 82px;
    padding-bottom: 82px;
  }
}
.main-page blockquote, .main-page blockquote * {
  font-family: americanabt;
  font-size: 26px;
  max-width: none;
}
@media (min-width: 1024px) {
  .main-page blockquote, .main-page blockquote * {
    font-size: 42px !important;
  }
}


.js-orginal-price {display:none important;}

.rich-text__container .rich-text__image figure  {
  border-radius:15px !important;}

.jdgm-rev-widg__header {
  text-align: left;
}
.jdgm-row-stars {
  text-align: left !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
}
.jdgm-rev-widg__summary-text {
  padding-top: 10px;
}
.jdgm-rev-widg__summary {
  text-align: left !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
}
.jdgm-rev-widg__summary-average {
  font-size: 20px;
}

.jdgm-review-widget .jdgm-rev-widg__title {
  font-size: 28px !important;
}

  @media (max-width: 768px) {
    .jdgm-review-widget .jdgm-rev-widg__title {
  font-size: 24px !important;
}

.jdgm-rev-widg__summary-average {
  font-size: 18px;
}}

/* ===============================
   PRODUCT PRICE ALIGNMENT + STYLE
   =============================== */

/* --- Main price wrapper --- */
.product-text .product-price {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  flex-wrap: nowrap !important;     /* prevent wrapping to second line */
  white-space: nowrap !important;   /* force single-line display */
  margin-top: 20px;
  margin-bottom: 0;
  line-height: 1;
}

/* --- Current (sale) price --- */
.product-price--original {
  font-size: 22px !important;
  font-weight: 500;
  color: #2A2A2A;
  line-height: 1;
  margin: 0;
  white-space: nowrap;
}

/* --- Compare-at (old) price --- */
.product-price--compare {
  font-size: 22px !important;
  color: #7A3636;
  opacity: 0.8;
  line-height: 1;
  margin: 0;
  white-space: nowrap;
  display: inline !important;                  /* revert from inline-flex */
  text-decoration: line-through !important;    /* ensure visible */
  text-decoration-thickness: 1px;              /* optional: cleaner line */
  text-decoration-color: #2A2A2A;              /* brand red */
  position: relative;
  top: -1px;                                   /* visually align baselines */
}

/* --- Ensure nested spans behave inline --- */
.product-price span,
.product-price del {
  display: inline !important;
  font-size: 20px !important;
  align-items: baseline;
  white-space: nowrap;
  line-height: 1;
}



/* --- Responsive adjustments --- */
@media (max-width: 768px) {
.product-price span,
.product-price del  {
    font-size: 15px !important;}}


.submenu.mega-menu #product-price- span.product-price--original.pps span.glc-money {
  font-size: 18px !important;
  font-weight: 400 !important;
}

.submenu.mega-menu .product-item__price .product-price span,
.submenu.mega-menu .product-item__price .product-price del {
  font-size: 16px !important;
  font-weight: 400 !important;
}

.submenu.mega-menu .product-item__title .text-animation--underline-in-header {
  font-size: 18px !important;
  font-weight: 400 !important;
  letter-spacing: 0.5px;
}
/* Force SEE MORE button in mega menu footer to centre and resize */
.mega-menu__footer .button.button--outline-hover {
  display: block !important;
  margin: 20px auto 0 auto !important;
  width: 120px !important;  /* or 100px if you want tighter */
  text-align: center !important;
  justify-content: center !important;
  align-items: center !important;
}

/* Make sure the text inside stays centered and consistent */
.mega-menu__footer .button__text {
  font-size: 12px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px;
  text-align: center !important;
  width: 100%;
}

.collection-links {
  display: none !important;
}
.subsctiption-options {
  display: none !important;
}


@media (max-width: 767px) {
  .product-gallery-item .lazy-image img {
    transform: scale(1.5);
    transform-origin: center center;
  }
}

.savings-badge[data-percent="0"] { display: none !important; }

.content-promotion-message {
  font-size: 16px !important;
  font-family: "SuisseIntl-Regular"!important;
  font-weight: 400 !important;
}

.glider-track {padding: 5px!important;
border-radius: 15px !important;}

.glider {border-radius: 10px !important;}

.product-form__buttons .button span.glc-money {
    display: none !important;
}

button span.glc-money,
.button span.glc-money {
    display: none !important;
}

.menu-promotion-content h4 {
  text-align: center !important;
  justify-content: center !important;
  width: 100%;
  display: block;
}

.menu-promotion-content {
  text-align: center !important;
  justify-content: center !important;
  width: 100%;
  display: block;
}

.countdown_annoucement_bar_wrapper_cmik6sat6001j133uwk4pxume {
  padding:4px!important;
}

.countdown_annoucement_bar_cta_cmik6sat6001j133uwk4pxume, .countdown_annoucement_bar_cta_cmik6sat6001j133uwk4pxume:visited{
  font-size:12px!important;
  font-weight:500!important;
  letter-spacing: .08em!important;
  font-family: "SuisseIntl-Regular"!important;
}

@media (max-width: 767px) {
  .countdown_annoucement_bar_cta_cmik6sat6001j133uwk4pxume, .countdown_annoucement_bar_cta_cmik6sat6001j133uwk4pxume:visited{
    display:none!important;}

.countdown_annoucement_bar_title_cmik6sat6001j133uwk4pxume.h2 {
  letter-spacing: .08em!important;
  font-family: "SuisseIntl-Regular"!important;
}

@media (max-width: 767px) {
  .product-gallery-item .lazy-image img {
    transform: scale(1.5)!important;
  }

  @media (max-width: 1024px) {
    .submenu-holder--promotion-width-third .menu-promotion-content {
        text-align: center !important;
    }


.cart-notice__slider{
  color:#ffffff!important;
}

.bogos-progress-success-label {
  line-height: 1.3!important;
}

.cart-form-item .text-size--small:contains("Gifting Season") {
    display: none !important;
}

.text-size--small:has(.glc-money[translate="no"][data-amount="-3500"]) {
    display: none !important;
}

.text-size--small:has(.glc-money[translate="no"][aria-hidden="true"]) {
    display: none !important;
}

.text-size--small:has(.glc-money[translate="no"]) {
    display: none !important;
}

.text-size--small:has(.glc-money[translate="no"][data-amount*="35"]) {
    display: none !important;
}

.text-size--small:has(.glc-money[translate="no"]) {
    display: none !important;
}

.text-size--small:has(.glc-money[translate="no"][innerHTML*="35.00"]) {
    display: none !important;
}


.text-size--small:has(.glc-money[translate="no"]:not(:empty)) {
  display: none !important;
}
.text-size--small .glc-money {
    display: none !important;
}

.christmas-cutoff-text {
display: none!important;
}




.feat-collection .swiper-wrapper {
  display: flex !important;
}

.collection-set {
  display: grid !important;
}

.product-item__image img,
.product-item__image .hover-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}




.custom-price-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.custom-savings-badge {
  background: #830000;
  color: #fff;
  font-size: 13px;
  padding: 5px 10px;
  border-radius: 21px;
  white-space: nowrap;
}

.custom-savings-badge[data-percent="0"],
.custom-savings-badge:empty {
  display: none !important;
}

.feat-collection .product-item__image {
  aspect-ratio: unset !important;
  padding-bottom: 124.61% !important;
}



.product-form .add-to-cart.button--solid {
  background-color: #108474;
  border-color: #108474;
  color: #ffffff;
}


/* complementary clean mode */

.complementary--no-bg {
  background: transparent !important;
}

.complementary--no-outline {
  border: none !important;
  box-shadow: none !important;
}

/* also remove inner card grey */
.complementary--no-bg .product-item-compact {
  background: transparent !important;
}

/* remove thin title underline if theme adds it */
.complementary--no-outline .text-animation--underline-thin {
  border-bottom: none !important;
}

/* ============================================================
   Money-format migration block, added 2 Sep 2026.

   The Recharge Quantity Upsell widget cannot render HTML money
   formats, so the store's money format is moving from
   "<span class=glc-money>£{{amount}} </span>" to plain text
   (Recharge ticket 1239999). Every rule below re-anchors an
   existing glc-money hack to markup that survives that change.
   They are deliberately additive: with the old format still
   active they duplicate the effect of the glc rules above, so
   flipping the format changes nothing visually. The old
   glc-money rules die silently once the span stops existing.

   1. Quick-buy button prices. The theme prints " - <price>"
      inside .button__text wrapped in .element--hide-on-small;
      the old rules hid only the money span within it. Hiding
      the wrapper also removes the orphaned " - " separator.
      section-heading puts element--hide-on-small ON a button
      element, never inside .button__text, so it is unaffected.

   2. Cart discount-allocation line ("Discount ... (-£35.00)").
      The old :has(.glc-money...) cluster dies with the span.
      Both cart snippets render this line with a misspelled
      <spann> tag, unique in the theme, which makes a precise
      selector that no future markup can collide with.

   3. Mega-menu price sizing, moved from the doomed inner span
      to its stable parent wrapper.
   ============================================================ */

.button__text .element--hide-on-small {
  display: none !important;
}

spann.text-size--small {
  display: none !important;
}

.submenu.mega-menu #product-price- span.product-price--original.pps {
  font-size: 18px !important;
  font-weight: 400 !important;
}
