/** Shopify CDN: Minification failed

Line 9:18 Expected identifier but found whitespace
Line 9:25 Unexpected ";"
Line 796:0 Unexpected "}"

**/

  scroll-behavior: smooth;
}

.page-width--slider {
  overflow: hidden;
}

@media (max-width: 768px) {
  .page-width--gallery {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

.page-width--page * {
  text-align: left !important;
}
@media (min-width: 1200px) {
  .page-width--page {
    max-width: 70%;
    margin-left: 0;
  }
}

.product__accordion:hover {
  border-bottom: 1px solid #5B5B5B;
}

.section-border {
  width: 100%;
  border-bottom: 1px solid #E0DCD5;
}

.page-width {
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 1024px) {
  .page-width {
    padding-left: 64px;
    padding-right: 64px;
  }
}
.page-width--wide {
  padding-left: 18px;
  padding-right: 18px;
}
@media (min-width: 1024px) {
  .page-width--wide {
    padding-left: 66px;
    padding-right: 65px;
  }
}
.page-width--narrow {
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 1024px) {
  .page-width--narrow {
    padding-left: 64px;
    padding-right: 64px;
    max-width: 1216px;
  }
}

@media (min-width: 1024px) {
  .page-width--product {
    padding-right: 65px;
  }
}

.cover-link {
  display: block !important;
}
.cover-link::after {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  z-index: 1;
  top: 0;
  left: 0;
}

.swiper-navigation {
  position: relative;
  display: flex;
  align-items: center;
  align-items: baseline;
}
.swiper-navigation .swiper-pagination {
  position: relative;
  width: calc(100% - 100px);
  height: 1px;
  background-color: #E0DCD5;
  top: -6px !important;
}
.swiper-navigation .swiper-pagination .swiper-pagination-progressbar-fill {
  background-color: #5B5B5B;
}
.swiper-navigation .swiper-btns {
  width: 100px;
  display: flex;
  justify-content: end;
}
.swiper-navigation .swiper-btns .swiper-button-prev, .swiper-navigation .swiper-btns .swiper-button-next {
  position: relative;
  left: 0 !important;
  right: 0;
  top: 0;
  bottom: 0;
  width: 24px !important;
  height: 24px !important;
}
.swiper-navigation .swiper-btns .swiper-button-prev::after, .swiper-navigation .swiper-btns .swiper-button-next::after {
  display: none;
}
.swiper-navigation .swiper-btns .swiper-button-prev svg, .swiper-navigation .swiper-btns .swiper-button-next svg {
  width: 7px;
  height: auto;
}
.thumbnail__badge {
  background: transparent;
}

.accordion summary {
  padding-top: 26px !important;
  padding-bottom: 26px !important;
}
.accordion summary[aria-expanded=true] svg {
  transform: rotate(45deg);
}
.accordion summary svg {
  width: 12px;
  height: 12px;
  top: 7px;
  position: relative;
}

@media (max-width: 1023px) {
  .hide-mobile {
    display: none !important;
  }
}

.button,
.shopify-challenge__button,
.customer button {
  display: inline-flex;
  justify-content: center;
  gap: 32px;
  align-items: center;
  border: 0;
  padding: 19px 30px;
  cursor: pointer;
  font: inherit;
  font-size: 15px;
  text-decoration: none;
  color: rgb(var(--color-button-text));
  transition: box-shadow var(--duration-short) ease;
  -webkit-appearance: none;
  appearance: none;
  background-color: rgba(var(--color-button));
  border: 1px solid rgba(var(--color-button));
  transition: 0.2s;
  height: fit-content;
  font-weight: 500;
}
.button:hover,
.shopify-challenge__button:hover,
.customer button:hover {
  background-color: transparent;
  color: rgb(var(--color-button));
}
.button:hover .arrow path,
.shopify-challenge__button:hover .arrow path,
.customer button:hover .arrow path {
  stroke: rgb(var(--color-button));
}
.button .arrow path,
.shopify-challenge__button .arrow path,
.customer button .arrow path {
  transition: 0.2s;
  stroke: rgb(var(--color-button-text));
}
.button--outline,
.shopify-challenge__button--outline,
.customer button--outline {
  background-color: transparent;
  color: rgba(var(--color-button));
}
.button--outline .arrow path,
.shopify-challenge__button--outline .arrow path,
.customer button--outline .arrow path {
  stroke: rgb(var(--color-button));
}
.button--outline:hover,
.shopify-challenge__button--outline:hover,
.customer button--outline:hover {
  background-color: rgba(var(--color-button));
  color: rgb(var(--color-button-text));
}
.button--outline:hover .arrow path,
.shopify-challenge__button--outline:hover .arrow path,
.customer button--outline:hover .arrow path {
  stroke: rgb(var(--color-button-text));
}
.button--underlined,
.shopify-challenge__button--underlined,
.customer button--underlined {
  background-color: transparent;
  color: rgba(var(--color-button));
  border: 0;
  padding: 0;
  min-height: 0;
  min-width: 0;
  gap: 8px;
  border-bottom: 1px solid rgba(var(--color-button));
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
}
.button--underlined .arrow path,
.shopify-challenge__button--underlined .arrow path,
.customer button--underlined .arrow path {
  stroke: rgb(var(--color-button));
}

@media (max-width: 768px) {
  .header__heading-logo-wrapper {
    width: 90%;
  }
}

.productcard__extra-dets--no-volurs {
  grid-template-columns: 1fr !important;
}

.button.loading {
  pointer-events: none; /* Prevent multiple clicks */
}

.button.loading span,
.button.loading svg {
  visibility: hidden;
  display: none;
}

.button.loading::before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  border: 2px solid rgb(var(--color-button-text));
  border-top: 2px solid rgba(var(--color-button));
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  display: block;
  z-index: 9;
  top: 21px;
  left: 50%;
  transform: translate(-50%, -50%);
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.button--product svg {
  position: relative;
  right: 0;
  transition: right 0.3s;
}
.button--product:hover {
  background-color: rgba(var(--color-button));
  border: 1px solid rgba(var(--color-button));
  color: rgb(var(--color-button-text));
}
.button--product:hover svg {
  right: -5px;
}
.button--product:hover svg path {
  stroke: white !important;
}

/* The switch - the box around the slider */
.switch {
  position: relative;
  display: inline-block;
  width: 52px;
  height: 34px;
}

/* Hide default HTML checkbox */
.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

/* The slider */
.toggle-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: transparent;
  border: 1px solid #E0DCD5;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.toggle-slider:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 3px;
  background-color: #5B5B5B;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

input:checked + .toggle-slider {
  background-color: #5B5B5B;
}
input:checked + .toggle-slider::before {
  background-color: #FAFAF6;
}

input:focus + .toggle-slider {
  box-shadow: 0 0 1px #5B5B5B;
}

input:checked + .toggle-slider:before {
  -webkit-transform: translateX(17px);
  -ms-transform: translateX(17px);
  transform: translateX(17px);
}

/* Rounded sliders */
.toggle-slider.round {
  border-radius: 34px;
}

.toggle-slider.round:before {
  border-radius: 50%;
}

localization-wrapper .disclosure__button span {
  font-size: 14px;
}

.localization-wrapper .vat-toggle p {
  margin: 0;
  position: relative;
  top: 2.5px;
  font-size: 13px;
  margin-left: 30px;
}
.localization-wrapper .switch {
  height: 20px;
  width: 34px;
}
.localization-wrapper .toggle-slider:before {
  background-color: white;
}
.localization-wrapper input:checked + .toggle-slider {
  background-color: white;
}
.localization-wrapper input:checked + .toggle-slider::before {
  background-color: #5B5B5B;
}
.localization-wrapper .toggle-slider:before {
  height: 12px;
  width: 12px;
}
.localization-wrapper input:checked + .toggle-slider:before {
  -webkit-transform: translateX(13px);
  -ms-transform: translateX(13px);
  transform: translateX(13px);
}

.popup__content {
  background-color: #FAFAF6;
}
.popup__content .page-width {
  padding: 0;
  padding-left: 20px;
  padding-right: 20px;
}

.page-breadcrumbs {
  margin-top: 32px;
}

.video-controls {
  position: absolute !important;
  width: 100% !important;
  display: flex;
  justify-content: space-between;
  padding: 10px;
  bottom: 10px;
  left: 0;
  pointer-events: none;
  z-index: 9;
  background: transparent !important;
}

.video-control {
  background: transparent;
  border: none;
  cursor: pointer;
  pointer-events: all;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.video-control path {
  stroke: rgba(var(--color-foreground));
  stroke: white;
}
.video-control svg {
  height: 24px;
  width: 24px;
}

.vat-toggle {
  display: flex;
  align-items: center;
  gap: 14px;
}
.vat-toggle p {
  line-height: normal;
}

.mute-toggle .unmute-icon,
.play-pause-toggle .play-icon {
  display: none;
}

.mute-toggle {
  position: absolute;
  bottom: 16px;
  right: 16px;
}
@media (min-width: 1024px) {
  .mute-toggle {
    bottom: 21px;
    right: 120px;
  }
}

.play-pause-toggle {
  position: absolute;
  bottom: 16px;
  right: 16px;
}
@media (min-width: 1024px) {
  .play-pause-toggle {
    bottom: 21px;
    right: 64px;
  }
}

.mute-toggle[data-state=unmuted] .mute-icon,
.play-pause-toggle[data-state=playing] .pause-icon {
  display: none;
}

.mute-toggle[data-state=unmuted] .unmute-icon,
.play-pause-toggle[data-state=playing] .play-icon {
  display: inline;
}

.swiper-container {
  opacity: 0;
  transition: 0.2s;
}

body.hide-header sticky-header {
  opacity: 0 !important;
}

/* CSS for lightbox */
#lightbox {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.09);
  backdrop-filter: blur(3px);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

#lightbox .lightbox-content {
  position: relative;
  max-width: 90%;
  max-height: 90%;
}

#lightbox img {
  max-width: 100%;
  max-height: 90vh;
}

#close-lightbox {
  position: absolute;
  top: -10px;
  right: -10px;
  background: white;
  border: none;
  font-size: 24px;
  cursor: pointer;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);
}
.lightbox-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  border: none;
  background: rgba(255, 255, 255, 0.9);
  color: #3a3a3a;
  font-size: 24px;
  line-height: 1;
  display: none;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border-radius: 50%;
  z-index: 2;
}

.lightbox-prev {
  left: -30px;
}

.lightbox-next {
  right: -30px;
}

@media (max-width: 768px) {
  .lightbox-prev {
    left: 12px;
  }

  .lightbox-next {
    right: 12px;
  }
}
.breadcrumbs__list {
  display: flex;
  list-style: none;
  padding-inline-start: 0px;
  margin: 0;
}
.breadcrumbs__list a {
  text-decoration: none;
}

.product-count.medium-hide, .mobile-facets__wrapper {
  display: none !important;
}

@media (max-width: 768px) {
  [for=SortBy] {
    display: none;
  }
}

.popup-open {
  overflow: hidden;
}

.popup__inner .expand-image-btn {
  height: auto !important;
}
.popup__inner .expand-image-btn:hover {
  cursor: pointer;
}

.hhh a {
  margin-top: 0 !important;
}

.popup {
  z-index: 9;
  position: fixed;
  width: 100vw;
  height: 100vh;
  background-color: #FAFAF6;
  padding-bottom: 0;
  bottom: 0;
  visibility: hidden;
  opacity: 0;
  transition: 0.4s;
  padding: 0px;
  padding-top: 0px;
  padding-top: 74px;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100%;
}
@media (min-width: 1024px) {
  .popup {
    padding: 64px;
    padding: 64px;
    padding-top: 140px;
    padding-bottom: 0;
  }
}
.popup::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: -1;
}
.popup.active {
  visibility: visible;
  opacity: 1;
}
.popup.active .popup__inner {
  transform: translateY(0);
}
.popup__close {
  position: absolute;
  top: 20px;
  right: 20px;
}
@media (min-width: 1024px) {
  .popup__close {
    top: 48px;
    right: 44px;
  }
}
.popup__close:hover {
  cursor: pointer;
}
.popup__inner {
  background-color: #FAFAF6;
  height: 100%;
  width: 100%;
  transform: translateY(100%);
  transition: 0.4s;
  padding: 75px 20px;
  overflow-y: scroll;
  overflow-x: hidden;
}
@media (min-width: 1024px) {
  .popup__inner {
    padding: 99px 120px;
  }
}

.customer-gallery-popup .swiper-navigation {
  top: 24px !important;
}
.customer-gallery-popup .swiper-navigation .swiper-pagination {
  top: -5px !important;
}
.customer-gallery-popup .swiper-container {
  overflow: hidden;
  padding-bottom: 20px;
}
.customer-gallery-popup__heading {
  margin-top: 44px;
  margin-bottom: 24px;
}
@media (min-width: 1024px) {
  .customer-gallery-popup__heading {
    margin-bottom: 40px;
  }
}
.customer-gallery-popup__heading p,
.customer-gallery-popup__heading h3,
.customer-gallery-popup__title {
  margin: 0;
}

.customer-gallery-popup__heading p {
  margin-bottom: 8px;
}

.customer-gallery-popup__title {
  display: block;
  font-family: "ivypresto-display", serif;
  font-weight: 100;
  text-decoration: none;
  line-height: 120%;
  letter-spacing: 1.2px;
  font-size: 22px;
  font-style: normal;
}

@media (min-width: 1024px) {
  .customer-gallery-popup__title {
    font-size: 26px;
  }
}
.customer-gallery-popup__product-title {
  display: block;
  font-family: "ivypresto-display", serif;
  font-weight: 100;
  text-decoration: none;
  line-height: 120%;
  letter-spacing: 1.2px;
  font-size: 22px;
  font-style: normal;
  margin: 8px 0 16px;
}

@media (min-width: 1024px) {
  .customer-gallery-popup__product-title {
    font-size: 26px;
  }
}

.customer-gallery-popup__secondary {
  display: block;
  margin-bottom: 16px;
}
.customer-gallery-popup__main {
  display: grid;
  gap: 32px;
}
@media (min-width: 1024px) {
  .customer-gallery-popup__main {
    grid-template-columns: 192px auto;
  }
}
.customer-gallery-popup__main .heading {
  border-bottom: 1px solid #E0DCD5;
  margin: 0;
  padding-bottom: 16px;
}
.customer-gallery-popup__button {
  margin-top: 40px;
}
@media (min-width: 1024px) {
  .customer-gallery-popup__button {
    margin-left: 223px;
  }
}
.customer-gallery-popup__product-iamge {
  position: relative;
  width: 100%;
  max-width: 192px;
  height: 192px;
  padding-bottom: 0;
  overflow: hidden;
}

.customer-gallery-popup__product-iamge img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
}
.customer-gallery-popup .metafield-wrapper {
  display: grid;
  gap: 32px;
  row-gap: 16px;
}
@media (min-width: 1024px) {
  .customer-gallery-popup .metafield-wrapper {
    grid-template-columns: 1fr 1fr;
  }
}
.customer-gallery-popup .metafield-wrapper .item {
  border-bottom: 1px solid #E0DCD5;
  padding-top: 16px;
  padding-bottom: 16px;
}
.customer-gallery-popup .metafield-wrapper .item .title, .customer-gallery-popup .metafield-wrapper .item .content {
  padding: 0;
  margin: 0;
}

.uk-selected .pdp-price__wrap {
  gap: 0 !important;
}
.uk-selected .pdp-price__wrap .with-vat {
  display: none;
}

.vat-toggle-active .pdp-price__wrap .without-vat {
  display: none;
}
.vat-toggle-active .with-vat {
  display: block !important;
}

.with-vat {
  display: none;
}

.vat-toggle-active .without-vat {
  display: none;
}
.vat-toggle-active .with-vat {
  display: block;
}

.non-uk .vat-toggle {
  display: none;
}
.non-uk .without-vat {
  display: block;
}
.non-uk .with-vat {
  display: none;
}

@media (max-width: 768px) {
  .localization-wrapper .vat-toggle {
    display: none !important;
  }
}

@media (min-width: 1024px) {
  .blog-posts .blog-posts__content {
    padding-left: 32px;
  }
}

.product-options-summary__add input, .product-options-summary__add textarea {
  background: transparent;
  margin-bottom: 10px;
}
.product-options-summary__add textarea {
  margin-bottom: 40px;
}

.product-options-summary__add .docapp-cart-with-shipping-summary .docapp-cart-subtotal, .product-options-summary__add .docapp-cart-with-shipping-summary .docapp-est-total {
  font-size: 18px !important;
}

.template-search .facets__form {
  margin-bottom: 33px !important;
}
.template-search .collection-view {
  display: none;
}
@media (max-width: 768px) {
  .template-search .vat-toggle {
    display: none;
  }
}
.template-search__results .product-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 16px;
}
@media (min-width: 1024px) {
  .template-search__results .product-grid {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 32px;
    row-gap: 128px;
  }
}

.article-main-title {
  margin-top: 8px;
}
@media (min-width: 1024px) {
  .article-main-title {
    font-size: 42px;
  }
}
@media (min-width: 1200px) {
 .article-main-title {
  max-width: 1100px;
  margin: 0 auto;
  }
}

.cm-article{
  display: block;
  max-width: 900px;
  margin: 0 auto;
  padding-left: 50px;
  padding-right: 50px;
}
.article-template__link {
  display: none !important;
}

.article--blog-posts {
  margin-bottom: 64px !important;
}
.article-template__title {
  text-align: center;
}
@media (min-width: 1024px) {
  .article--blog-posts .product-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 2px;
  }
}
.article--blog-posts .title {
  text-align: left !important;
  margin-left: 0 !important;
}
.article--blog-posts .section-heading__title {
  margin-left: 0 !important;
  margin-bottom: 32px !important;
}

.facet-filters__sort, .collection-view__btn p {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 400;
}

p strong, span strong, div strong, .h5 .strong, .h5.strong, .product-count__text, .strong, .mega-menu__link--level-2 {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  line-height: 160%;
}

.product-count__text {
  font-size: 16px;
}

.light {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 300;
}

.announcement-bar__message, .disclosure__button span {
  font-size: 13px;
  font-weight: 500;
}

.disclosure__button span {
  position: relative;
  display: block;
  top: 2px;
}

p, .p, body, a, select, ul, li, ::placeholder {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 400;
  line-height: 160%;
  font-size: 15px;
  letter-spacing: 0.04em;
}

p.large, .p.large, .large p {
  font-size: 18px;
  font-weight: 500;
  line-height: 27px;
}

.small {
  font-size: 14px;
  line-height: 22.4px;
}

.extra-small {
  font-size: 12px;
  line-height: 22.4px;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  font-family: "ivypresto-display", serif;
  font-weight: 100;
  text-decoration: none;
  line-height: 120%;
  letter-spacing: 1.2px;
}

.footer-block__heading {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-size: 15px !important;
  letter-spacing: 0.04em;
}

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

.h0 {
  font-size: 48px;
}
@media (min-width: 1024px) {
  .h0 {
    font-size: 54px;
  }
}

.right .angled, .right .underlined, .right .button, .banner--content-align-right .angled, .banner--content-align-right .underlined, .banner--content-align-right .button {
  margin-left: auto;
}

.underlined {
  width: fit-content;
  position: relative;
  margin-bottom: 10px;
}
.underlined svg {
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  z-index: -1;
  height: 10px;
}
.angled {
  transform: rotate(-5deg) !important;
  position: relative;
  font-size: 38px !important;
  width: fit-content;
  /* Animation to reveal the SVG from left to right */
}
@media (min-width: 1024px) {
  .angled {
    font-size: 50px !important;
  }
}
.angled .svg-reveal {
  position: absolute;
  top: -13px;
  left: -15px;
  height: calc(100% + 16px);
  width: 236px;
  overflow: hidden;
  clip-path: inset(0 100% 0 0);
  z-index: -1;
  max-width: 84%;
  min-width: 71%;
  max-height: 59px;
}
.angled .svg-reveal.animate {
  animation: revealSvg 0.9s ease forwards; /* Trigger animation when 'animate' class is added */
}
.angled svg {
  position: absolute;
  z-index: -1;
  bottom: 0;
  height: 100%;
  width: 100%;
  /* transform: rotate(7deg); */
  left: 0px;
  object-fit: contain;
}
@keyframes revealSvg {
  0% {
    clip-path: inset(0 100% 0 0); /* Hides the SVG */
  }
  100% {
    clip-path: inset(0 0 0 0); /* Reveals the entire SVG */
  }
}

h1, .h1 {
  font-size: 38px;
}
@media (min-width: 1024px) {
  h1, .h1 {
    font-size: 60px;
  }
}

h2, .h2, .section-title, .title__title, .product__title h1 {
  font-size: 28px;
}
@media (min-width: 1024px) {
  h2, .h2, .section-title, .title__title, .product__title h1 {
    font-size: 40px;
  }
}

h3, .h3 {
  font-size: 22px;
  font-style: normal;
}
@media (min-width: 1024px) {
  h3, .h3 {
    font-size: 26px;
  }
}

.product-option-custom__question h4, .product-option-custom h4, .size-heading h4, .pdp-fixed-bar__left h2, .pdp-fixed-bar__right * {
  font-size: 22px;
  font-style: normal;
}
@media (min-width: 1024px) {
  .product-option-custom__question h4, .product-option-custom h4, .size-heading h4, .pdp-fixed-bar__left h2, .pdp-fixed-bar__right * {
    font-size: 28px;
  }
}

h4, .h4 {
  font-size: 28px;
  font-style: italic;
}
@media (min-width: 1024px) {
  h4, .h4 {
    font-size: 36px;
  }
}

h5, .h5 {
  font-size: 14px;
  letter-spacing: 0.04em;
}
.button::after, .button::before {
  display: none;
}

.btn-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.btn-bg path {
  fill: rgba(var(--color-button));
}

.predictive-search__preset-text {
  font-size: 15px !important;
  font-weight: 400;
  letter-spacing: 0.04em;
}

.predictive-search__heading {
  font-size: 16px !important;
  font-weight: 400 !important;
}

.megamnu-title {
  display: flex;
  justify-content: space-between;
  width: 100%;
  align-items: center;
}
.megamnu-title .button {
  text-decoration: none;
  border-bottom: none;
}

.mega-menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0);
  z-index: 98;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.4s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
  display: block !important;
}
.mega-menu-overlay.active {
  opacity: 1;
  visibility: visible;
  background-color: rgba(0, 0, 0, 0.6);
  pointer-events: auto;
  z-index: -1;
}

.mega-menu[open] {
  z-index: 99;
}
.mega-menu__gallery .swiper-slide {
  padding-bottom: 40px;
}
.mega-menu .swiper-navigation {
  width: calc(100% + 143px);
  margin-top: 30px;
}
.mega-menu__tab {
  margin-bottom: 10px;
  margin-top: 5px;
}
.mega-menu__tab.active {
  text-decoration: underline;
  text-underline-offset: 14px;
}
.mega-menu__content {
  width: 100vw;
  right: auto !important;
}
.mega-menu__list--3 {
  display: flex;
  gap: 32px;
  margin-bottom: 21px;
}
@media (min-width: 1024px) {
  .mega-menu__list--2 .swiper-navigation {
    width: calc(100% + 130px) !important;
    left: -64px;
  }
}
.mega-menu__content {
  overflow: hidden;
}
.mega-menu__collections .swiper-pagination-progressbar {
  top: auto;
  bottom: 0;
}
.mega-menu__collections img {
  transition: 0.3s;
}
.mega-menu__collections .image-wrap {
  overflow: hidden;
}
.mega-menu__collections .swiper-slide:hover img {
  transform: scale(1.1);
}
.mega-menu__collections.active {
  display: block;
}
.mega-menu__collections li {
  list-style: none;
}
.mega-menu__collections li p {
  padding-left: 20px;
  padding-right: 20px;
  text-align: center;
}
.mega-menu__collections li .image-wrap {
  padding-bottom: 150%;
  position: relative;
}
.mega-menu__collections li .image-wrap img {
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.mega-menu__products {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0s linear 0.3s; /* Delay visibility change to match fade-out */
  height: 0; /* Ensures only active content takes up space */
  overflow: hidden; /* Prevent content spilling out */
}
.mega-menu__products .swiper-slide:hover img {
  transform: scale(1.1);
}
.mega-menu__products .swiper-pagination-progressbar {
  top: auto;
  bottom: 0;
}
.mega-menu__products.active {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s ease, visibility 0s linear 0s; /* Visibility changes immediately when active */
  height: auto; /* Allows content to occupy space */
}
.mega-menu__products.hidden {
  opacity: 0;
  visibility: hidden;
}
.mega-menu__products li p {
  padding-left: 20px;
  padding-right: 20px;
  text-align: center;
}
.mega-menu__products li .image-wrap {
  padding-bottom: 100%;
  position: relative;
  overflow: hidden;
}
.mega-menu__products li .image-wrap img {
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition: 0.3s;
}

@media (max-width: 768px) {
  .header {
    padding-bottom: 33px !important;
    padding-left: 16px !important;
    padding-right: 21px !important;
    grid-template-columns: 24px 2fr 1fr;
  }
}

@media (max-width: 768px) {
  .header__search {
    position: absolute;
    bottom: 0;
    left: 0;
  }
}

header-menu .mega-menu__products .swiper-wrapper .swiper-slide:first-of-type {
  padding-left: 65px;
}

.header__icon--cart {
  width: auto;
  text-decoration: none;
  font-size: 15px;
}

.search.search-modal__form {
  padding: 16px;
  background: #fafaf6;
  padding-top: 4px;
}
@media (min-width: 1024px) {
  .search.search-modal__form {
    padding-top: 16px;
  }
}

.search-modal__content {
  padding: 0;
}

.search-modal {
  opacity: 1;
  z-index: 999;
}
.search-modal::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: transparent;
  pointer-events: none;
  transition: 0.4s;
}
@media (max-width: 768px) {
  .search-modal.focused {
    top: -53px;
  }
}
.search-modal.focused::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
}

.header__search {
  width: 100%;
  justify-content: end;
}
.header__search details {
  width: 100%;
  max-width: 400px;
}

@media (min-width: 1024px) {
  .modal__content {
    position: relative;
  }
}

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

.header__icons {
  gap: 20px;
  width: 100%;
  justify-content: flex-end;
}

@media screen and (min-width: 1440px) {
  .header__icons {
    gap: 71px;
  }
}
.search-modal__form .field__button {
  height: 100%;
}
.search-modal__form label {
  display: none;
}
.search-modal__form .field__button {
  left: 0;
  right: auto;
}
.search-modal__form .field::after {
  display: none;
}

.search__button svg {
  height: 15px;
}

.search-modal__form .search__input {
  padding-left: 44px;
  background-color: #F5F2ED;
  border: none;
  max-height: 38px;
}
.search-modal__form .search__input:focus {
  border: 1px solid #5B5B5B;
}
.search-modal__form .search__input::placeholder {
  opacity: 1;
}
.search-modal__form .search__input:focus, .search-modal__form .search__input:not(:placeholder-shown) {
  padding-top: 17px;
  padding-left: 44px;
}

@media screen and (min-width: 1488px) {
  .search-modal__form .search__input {
    width: 320px;
  }
}
.predictive-search__result-group h2 {
  font-family: "Basis Grotesque Mono Pro";
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: 0.004em;
  text-transform: none;
}
.predictive-search__result-group .predictive-search__item-heading, .predictive-search__result-group .predictive-search__heading {
  font-family: "neue-haas-grotesk-display", sans-serif !important;
}
.predictive-search__result-group .predictive-search__image {
  height: 50px;
  object-fit: cover;
}

.mega-menu--help-guides .mega-menu__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  list-style: none;
}
.mega-menu--help-guides .mega-menu__list li a {
  font-weight: 600;
  list-style: none;
}
.mega-menu--help-guides .mega-menu__list .list-unstyled li a {
  font-weight: 400;
}

@media (max-width: 768px) {
  .header__heading {
    width: 180px;
    justify-self: flex-start;
    top: 2px;
    left: 2px;
    position: relative;
  }
}

@media (max-width: 768px) {
  .header__icon--cart {
    top: 3.5px;
  }
}

.mobile-nav {
  width: calc(100vw - 0px);
  overflow-x: hidden;
}
.mobile-nav li {
  list-style: none;
}
.mobile-nav ul {
  margin-block-start: 0;
  padding-inline-start: 0;
  list-style: none;
}
.mobile-nav ul li {
  list-style: none;
}
.mobile-nav .swiper-wrapper {
  padding-left: 15px;
}
.mobile-nav .megamnu-title {
  margin-top: 50px;
}
.mobile-nav .mega-menu__tab {
  padding-left: 15px;
}
.mobile-nav .mega-menu__products, .mobile-nav .mega-menu__collections {
  padding-right: 30px;
}
.mobile-nav .swiper-navigation {
  padding-left: 15px;
  width: calc(100% + 12px);
  padding-top: 18px;
}
.mobile-nav .list--help-guides {
  display: grid;
  padding-left: 15px;
  padding-right: 15px;
}

.menu-drawer__utility-links {
  display: none !important;
}

@media (max-width: 768px) {
  .search-open .announcement-bar-section {
    display: none;
  }
}

@media (max-width: 768px) {
  .search-modal.focused {
    top: -62px;
  }
  .search-modal.focused .search-modal__form {
    padding-top: 13px;
  }
}

.predictive-search {
  border: none !important;
}

#predictive-search-products {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
#predictive-search-products .predictive-search__products-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

#predictive-search-pages-desktop {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
#predictive-search-pages-desktop .predictive-search__pages-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  padding: 2px;
}

.footer {
  border-top: 3px solid #DB7F52 !important;
}
@media (min-width: 1024px) {
  .footer__content-top {
    padding-bottom: 64px !important;
  }
}
.footer__column--info {
  display: flex;
  justify-content: space-between;
}
.footer__blocks-wrapper {
  display: grid;
}
.footer__blocks-wrapper .localization-form__select {
  margin: 0 !important;
}
@media (min-width: 1024px) {
  .footer__blocks-wrapper .disclosure__list-wrapper {
    width: calc(100% + 48px) !important;
    left: -32px !important;
  }
}
.footer__blocks-wrapper .disclosure__button {
  justify-content: flex-start;
  padding: 0 !important;
  width: 100%;
  font-size: 16px !important;
  border-bottom: 1px solid white;
}
.footer__blocks-wrapper .localization-form__select .icon-caret {
  right: 0 !important;
  height: 10px;
  top: 14px;
}
@media (min-width: 1024px) {
  .footer__blocks-wrapper {
    gap: 64px !important;
  }
}
.footer__blocks-wrapper .localization-form:only-child {
  width: 100% !important;
}
.footer .footer-block {
  width: 100%;
}

.locale-selectors__container {
  display: none;
}

.footer-block__heading {
  margin-bottom: 16px;
}
.footer-block__details-content .list-menu__item--link {
  font-size: 15px;
  text-transform: capitalize;
  line-height: 21px;
  padding-bottom: 10px;
}

.copyright__content {
  font-size: 14px !important;
}
.copyright__content * {
  font-size: 14px !important;
}

.footer-block__heading .opened {
  display: none;
}
.footer-block__heading .closed {
  display: block;
}

.footer-block--menu.active .footer-block__heading .opened {
  display: block;
}
.footer-block--menu.active .footer-block__heading .closed {
  display: none;
}

@media (max-width: 1023px) {
  #FooterCountryForm {
    margin-top: 32px;
  }
  .footer__column--info {
    display: flex;
    flex-direction: column-reverse;
    gap: 20px;
  }
  .footer-block__details-content {
    max-height: 0;
    overflow: hidden;
    margin: 0 !important;
  }
  .footer-block--menu.active .footer-block__details-content {
    max-height: 100%;
    overflow: hidden;
    margin: 0 !important;
  }
  .footer-block--menu.active .footer-block__details-content .opened {
    display: block;
  }
  .footer-block--menu.active .footer-block__details-content .closed {
    display: none;
  }
  .footer-block--menu.active .footer-block__details-content svg path:first-of-type {
    display: none;
  }
  .footer-block--menu {
    border-top: 1px solid rgba(255, 255, 255, 0.2784313725);
  }
  .footer-block--menu h2 {
    margin: 0;
    padding: 0;
  }
}
.footer-block__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.footer-block__heading span {
  display: block;
  position: relative;
  top: 0px;
}
@media (min-width: 1024px) {
  .footer-block__heading span {
    display: none;
  }
}

/*=============================================
=            Media Banner            =
=============================================*/
.media-banner .banner__content {
  padding: 32px;
}
@media (min-width: 1024px) {
  .media-banner .banner__content {
    padding: 64px;
  }
}

.banner--overlap {
  margin-bottom: 217px;
}
@media (max-width: 768px) {
  .banner--overlap .banner__media {
    left: -16px;
    width: calc(100% + 32px);
  }
}
.banner--overlap .banner__content {
  padding: 0;
  display: block;
}
.banner--overlap .banner__box {
  background-color: var(--gradient-background) !important;
  padding: 64px !important;
  top: calc(100% - 65px);
  left: 50%; /* Move the element's left edge to the center */
  transform: translateX(-50%) !important;
}
.banner__buttons {
  max-width: none;
}
.banner__buttons .button--with-arrow {
  width: 100%;
}
.banner video {
  object-fit: cover;
}
.banner--content-align-left .banner__box {
  align-items: flex-start;
}
.banner__box {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (min-width: 1024px) {
  .banner--desktop-transparent .banner__box {
    padding: 0;
  }
}
.banner__buttons {
  margin-top: 12px;
}
@media (min-width: 1024px) {
  .banner__buttons {
    margin-top: 16px;
  }
}
.banner__content {
  padding: 0;
}
@media (min-width: 1024px) {
  .banner__content {
    padding: 80px 80px;
  }
}
.banner__heading {
  margin-top: 0;
}
.banner .subtitle p {
  font-size: 11px;
  text-transform: uppercase;
}

@media (max-width: 768px) {
  .banner--content-align-mobile-left .banner__box {
    align-items: flex-start;
    justify-content: flex-start;
  }
}

/*=====  End of Media Banner  ======*/
/*=============================================
=            Image with text            =
=============================================*/
.image-with-text .grid__item {
  width: 100%;
}
.image-with-text__content {
  padding: 0;
}
.image-with-text video {
  object-fit: cover;
}
@media (min-width: 1024px) {
  .image-with-text__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 256px !important;
  }
  .image-with-text__grid::after {
    content: "";
    height: 100%;
    background-color: #E0DCD5;
    width: 1px;
    position: absolute;
    left: 50%;
  }
}
@media (min-width: 1024px) {
  .image-with-text__grid--reverse .image-with-text__media-item {
    order: 2;
  }
}

/*=====  End of Image with text  ======*/
/*=============================================
=            Featured collection            =
=============================================*/
@media (min-width: 1024px) {
  .section-heading--vertical.section-heading__title .title {
    margin-right: 70px !important;
  }
}
@media (min-width: 1024px) {
  .section-heading--vertical.section-heading__title {
    display: grid !important;
    max-width: none !important;
    grid-template-columns: 0.9fr 1.4fr 0.8fr;
    padding-right: 0 !important;
  }
}
@media (min-width: 1024px) {
  .section-heading--vertical.section-heading__title .title, .section-heading--vertical.section-heading__title .section-heading__description {
    margin-left: 0 !important;
    text-align: left !important;
  }
}
@media (min-width: 1024px) {
  .section-heading--vertical.section-heading__title .button {
    margin-right: 0 !important;
  }
}
.section-heading .section-heading__title {
  max-width: 640px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-right: 16px;
  margin-bottom: 64px;
  margin-left: auto;
  margin-right: auto;
  /* margin-left: auto; */
}
@media (min-width: 1024px) {
  .section-heading .section-heading__title {
    margin-bottom: 128px;
    text-align: center;
  }
}
.section-heading .section-heading__title .title {
  width: fit-content;
  margin: 0;
}
@media (min-width: 1024px) {
  .section-heading .section-heading__title .title {
    margin-left: auto;
    margin-right: auto;
  }
}
.section-heading .section-heading__title .button {
  width: fit-content;
  min-width: 0;
}
@media (min-width: 1024px) {
  .section-heading .section-heading__title .button {
    margin-left: auto;
    margin-right: auto;
  }
}
.section-heading .swiper-container {
  padding-bottom: 0;
}
@media (min-width: 1024px) {
  .section-heading .swiper-container {
    padding-bottom: 109px;
  }
}
/*=====  End of Featured collection  ======*/
/*=============================================
=            Slider Grid            =
=============================================*/
.slider-grid--gallery .cover-link {
  display: none !important;
}
.slider-grid--autoplay .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
  -o-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}
.slider-grid--autoplay .swiper-wrapper:hover {
  cursor: grab;
}
.slider-grid--autoplay .swiper-navigation {
  display: none;
}
.slider-grid--autoplay .slider-grid__slide:hover, .slider-grid--autoplay a:hover {
  cursor: grab !important;
}
.slider-grid--autoplay .button:hover, .slider-grid--autoplay .expand-image-btn:hover {
  cursor: pointer !important;
}
@media (min-width: 1024px) {
  .slider-grid--fullwidth .swiper-container, .slider-grid--fullwidth .grid {
    left: -64px;
    position: relative;
    width: calc(100% + 128px);
  }
  .slider-grid--fullwidth .swiper-navigation {
    padding-left: 64px;
    padding-right: 64px;
  }
}
.slider-grid .grid {
  display: grid;
}
.slider-grid .swiper-navigation {
  margin-top: 44px;
}
.slider-grid__slide {
  text-align: center;
  position: relative;
  height: 100%;
}
.slider-grid__slide img {
  width: 100%;
  transition: 0.3s;
}
.slider-grid__img-wrap {
  position: relative;
  padding-bottom: 100%;
  overflow: hidden;
}
.slider-grid__img-wrap .button, .slider-grid__img-wrap .expand-image-btn {
  position: absolute;
  bottom: 16px;
  left: 16px;
}
.slider-grid__img-wrap .expand-image-btn {
  height: 24px;
  padding: 16px;
  bottom: 0;
  left: 0;
}
.slider-grid__img-wrap.portrait {
  padding-bottom: 133.5%;
}
.slider-grid__img-wrap img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*=====  End of Featured Collections  ======*/
/*=============================================
=            promotion            =
=============================================*/
.promotion .featured-collections__slide {
  text-align: left;
}
.promotion .swiper-container {
  padding-bottom: 0;
}

/*=====  End of promotion  ======*/
/*=============================================
=            Logo list            =
=============================================*/
.logo-list .featured-collections__img-wrap {
  padding-bottom: 100%;
}
.logo-list .featured-collections__img-wrap img {
  object-fit: contain;
  height: calc(100% - 50px);
  width: calc(100% - 50px);
  left: 25px;
  top: 25px;
}

/*=====  End of Logo list  ======*/
/*=============================================
=            icons            =
=============================================*/
@media (max-width: 768px) {
  .icons .icons-mobile-cols--1.icons-mibile-layout--grid {
    gap: 65px;
  }
}
.icons .icons-mobile-cols--1.icons-mibile-layout--grid .featured-collections__slide .verticle-border {
  display: none;
}
@media (min-width: 1024px) {
  .icons .icons-mobile-cols--1.icons-mibile-layout--grid .featured-collections__slide .verticle-border {
    display: block;
  }
}
@media (min-width: 1024px) {
  .icons .icons-mobile-cols--1.icons-mibile-layout--grid .featured-collections__slide .horizontal-border {
    display: none;
  }
}
.icons .featured-collections__slide .verticle-border {
  position: absolute;
  right: 0;
  height: 100%;
  right: -15px;
}
@media (min-width: 1024px) {
  .icons .featured-collections__slide .verticle-border {
    right: -32.5px;
  }
}
.icons .featured-collections__slide .verticle-border path {
  fill: rgba(var(--color-foreground));
}
.icons .featured-collections__slide .horizontal-border {
  position: absolute;
  right: 0;
  width: 100%;
  bottom: -29px;
  left: 0;
}
@media (min-width: 1024px) {
  .icons .featured-collections__slide .horizontal-border {
    display: none;
  }
}
@media (min-width: 1024px) {
  .icons .featured-collections__slide .horizontal-border {
    right: -32.5px;
  }
}
.icons .featured-collections__slide .horizontal-border path {
  fill: rgba(var(--color-foreground));
}
.icons .grid {
  gap: 30px;
}
@media (min-width: 1024px) {
  .icons .grid {
    gap: 65px;
  }
}
.icons .featured-collections__slide {
  position: relative;
}
.icons .featured-collections__slide:hover img {
  transform: none;
  scale: 1;
}
.icons .featured-collections__img-wrap {
  width: 120px;
  padding-bottom: 120px;
  margin: auto;
}
.icons .featured-collections__img-wrap img {
  object-fit: contain;
}

/*=====  End of icons  ======*/
/*=============================================
=            img-text-cards            =
=============================================*/
.img-text-cards .button {
  z-index: 99;
}
.img-text-cards__card-text {
  text-align: left;
  padding: 16px;
}
@media (min-width: 1024px) {
  .img-text-cards__card-text {
    padding: 32px;
  }
}
.img-text-cards__card-text *:first-of-type {
  margin-top: 0;
}
.img-text-cards__card-text a:last-of-type {
  margin-top: 16px;
}

/*=====  End of img-text-cards  ======*/
/*=============================================
=            Testimonials            =
=============================================*/
.tesemonials .grid {
  gap: 16px;
}
@media (min-width: 1024px) {
  .tesemonials .grid {
    gap: 32px;
  }
}
.tesemonials__card-text {
  text-align: left;
}
.tesemonials__product {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 32px;
}
.tesemonials__product p {
  margin: 0;
}
.tesemonials__product-image {
  width: 60px;
  padding-bottom: 60px;
  overflow: hidden;
  position: relative;
}
.tesemonials__product-image img {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}

/*=====  End of Testimonials  ======*/
/*=============================================
=            Blog posts            =
=============================================*/
.blog-posts .grid {
  row-gap: 32px;
}
@media (min-width: 1024px) {
  .blog-posts .grid {
    row-gap: 32px;
  }
}
.blog-posts__content {
  text-align: left;
}
@media (min-width: 1024px) {
  .blog-posts__content {
    padding-left: 32px;
    padding-right: 34px;
  }
}

/*=====  End of Blog posts  ======*/
/*=============================================
=            Customer Galley            =
=============================================*/
.mega-menu__list .cutomer-gallery__button p {
  font-size: 12px;
  padding: 10px 8px;
}
.mega-menu__list .cutomer-gallery__button svg {
  margin-right: 8px;
}

.rich-text-section .section-heading .section-heading__title {
  margin-bottom: 0;
}
.rich-text-section .section-heading .section-heading__title .title {
  max-width: none;
}

.cutomer-gallery .swiper-container {
  padding-bottom: 0 !important;
}
.cutomer-gallery__card:hover {
  cursor: pointer;
}
.cutomer-gallery__button {
  position: absolute;
  bottom: 8px;
  left: 8px;
  position: 9;
  background-color: rgb(var(--color-background));
  display: flex;
  align-items: center;
  background: #EEE8E0;
  max-width: calc(100% - 16px);
  pointer-events: none;
}
@media (min-width: 1024px) {
  .cutomer-gallery__button {
    bottom: 16px;
    left: 16px;
    max-width: calc(100% - 36px);
  }
}
.cutomer-gallery__button::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  right: 0;
  top: 0;
}
.cutomer-gallery__button:hover {
  cursor: pointer;
}
.cutomer-gallery__button p {
  margin: 0;
  padding: 10px 14px;
  padding-right: 8px;
  font-size: 14px;
  line-height: normal;
  text-align: left;
}
.cutomer-gallery__button svg {
  margin-right: 8px;
  min-width: 22px;
}
@media (min-width: 1024px) {
  .cutomer-gallery__button svg {
    margin-right: 16px;
  }
}
.cutomer-gallery__product-image {
  position: relative;
  width: 40px;
  min-width: 40px;
  height: 40px;
  overflow: hidden;
}
@media (min-width: 1024px) {
  .cutomer-gallery__product-image {
    width: 46px;
    min-width: 46px;
    height: 46px;
  }
}

/*=====  End of Customer Galley  ======*/
/*=============================================
=            Customer gallery            =
=============================================*/
.popup-gallery {
  width: 100%;
}
.popup-gallery .swiper-navigation {
  top: 32px;
}

.customer-gallery-nav {
  /* Custom scrollbar progress indicator */
}
@media (max-width: 768px) {
  .customer-gallery-nav {
    margin-top: 40px;
  }
}
.customer-gallery-nav__container {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  position: relative;
}
@media (min-width: 1024px) {
  .customer-gallery-nav__container {
    gap: 24px;
  }
}
.customer-gallery-nav__scroll-area {
  flex: 1;
  position: relative;
  /* Custom scrollbar track */
}
.customer-gallery-nav__scroll-area::after {
  content: "";
  position: absolute;
  bottom: 8px;
  left: 0;
  right: 114px; /* Stop before buttons - mobile */
  height: 1px;
  background: rgba(var(--color-foreground), 0.08);
  border-radius: 0px;
  pointer-events: none;
  z-index: 1;
}
@media (min-width: 1024px) {
  .customer-gallery-nav__scroll-area::after {
    right: 180px; /* Stop before buttons - desktop */
  }
}
.customer-gallery-nav__buttons {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  margin-top: 0;
  position: absolute;
  bottom: 0;
  right: 0;
  bottom: -12px;
  right: -19px;
}
.customer-gallery-nav__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: transparent;
  border: none;
  cursor: pointer;
  flex-shrink: 0;
  transition: all 0.3s ease;
}
@media (min-width: 1024px) {
  .customer-gallery-nav__btn {
    width: 48px;
    height: 48px;
  }
}
.customer-gallery-nav__btn:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
.customer-gallery-nav__btn:disabled:hover {
  border-color: rgba(var(--color-foreground), 0.2);
  background-color: rgba(var(--color-background));
}
.customer-gallery-nav__btn svg {
  width: 24px;
  height: 24px;
}
.customer-gallery-nav__wrap {
  display: flex;
  overflow-x: scroll;
  overflow-y: hidden;
  padding-bottom: 24px; /* More space for custom scrollbar */
  gap: 32px;
  scroll-behavior: smooth;
  max-width: calc(100vw - 14px);
  position: relative;
  /* Hide native scrollbar but keep functionality */
  -ms-overflow-style: none; /* IE/Edge */
  scrollbar-width: none; /* Firefox */
}
.customer-gallery-nav__wrap::-webkit-scrollbar {
  display: none; /* Safari/Chrome */
}
@media (min-width: 1024px) {
  .customer-gallery-nav__wrap {
    max-width: calc(100vw - 130px);
  }
}
.customer-gallery-nav__scroll-indicator {
  display: block !important;
  position: absolute;
  bottom: 8px;
  left: 0;
  height: 1px;
  width: 0%; /* Start at 0% */
  background: rgba(var(--color-foreground));
  border-radius: 0px;
  transition: width 0.2s ease;
  pointer-events: none;
  z-index: 2;
  transform-origin: left center;
}
.customer-gallery-nav__item {
  white-space: nowrap;
  flex-shrink: 0;
  padding-bottom: 30px;
}
.customer-gallery-nav__item:hover {
  cursor: pointer;
}
.customer-gallery-nav__item.active {
  text-decoration: underline;
  text-underline-offset: 10px;
}

/*=====  End of Customer gallery  ======*/
.image-ratio--natural .slider-grid__img-wrap {
  padding-bottom: 0;
  height: 100%;
}
.image-ratio--natural .slider-grid__img-wrap img {
  position: relative;
}

/*=============================================
=            Contatc form            =
=============================================*/
.contact .title {
  max-width: 313px;
}
@media (min-width: 1024px) {
  .contact {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 60px;
  }
}
@media (max-width: 1023px) {
  .contact .title {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 64px;
  }
}
@media (max-width: 1023px) {
  .contact .contact__button {
    text-align: center;
  }
}

/*=====  End of Contatc form  ======*/
.logos .mm-image {
  object-fit: contain;
}

/*=============================================
=            Accordian section            =
=============================================*/
.accordian-section .svg-wrapper {
  display: none;
}
.accordian-section .accordion__title {
  width: 100%;
  font-size: 15px;
  max-width: 100%;
}
.accordian-section .collapsible-content summary:hover {
  background: transparent;
}
.accordian-section .collapsible-content summary:hover .accordion__title {
  text-decoration: none;
}
.accordian-section .accordion__content {
  padding-left: 0;
}
@media (min-width: 1024px) {
  .accordian-section .accordion__content {
    max-width: calc(100% - 64px);
  }
}
.accordian-section details svg {
  width: 24px !important;
  height: 24px !important;
}
.accordian-section details .open {
  display: none;
}
.accordian-section details[open] .closed {
  display: block;
}
.accordian-section details[open] .open {
  display: none;
}
.accordian-section .acc-desc {
  max-width: 526px;
  margin-bottom: 16px;
  margin-top: 40px;
}
.accordian-section .acc-desc p {
  margin-top: 0;
}
@media (min-width: 1024px) {
  .accordian-section .acc-desc {
    margin-top: 0px;
  }
}
@media (min-width: 1024px) {
  .accordian-section .accordian__right {
    display: flex;
    justify-content: space-between;
    gap: 20px;
  }
}

/*=====  End of Accordian section  ======*/
/*=============================================
=            Featured Products            =
=============================================*/
@media (min-width: 1024px) {
  .featured-products .list-view .productcard__images {
    height: 0;
  }
}
.featured-products .swiper-slide {
  height: auto;
}
.featured-products .pdp-price__wrap .js-price-vat {
  display: none !important;
}
.featured-products .productcard__extra-dets {
  grid-template-columns: 1fr;
}
.featured-products .list-view {
  display: flex;
  gap: 40px;
}
.featured-products .swiper-container .grid-view {
  gap: 0;
}
.featured-products .swiper-container .productcard {
  border-bottom: none;
  padding-bottom: 0px;
  margin-bottom: 0px;
}

/*=====  End of Featured Products  ======*/
/*=============================================
=            Newsleter            =
=============================================*/
.newsletter__wrapper {
  text-align: left;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
@media (min-width: 1024px) {
  .newsletter__wrapper {
    display: grid;
    grid-template-columns: 1.3fr 1fr;
    gap: 100px;
  }
}
.newsletter .title {
  margin-top: 0;
}
@media (min-width: 1024px) {
  .newsletter__right {
    margin-top: 0 !important;
  }
}
.newsletter .button {
  margin-top: 32px;
}
@media (min-width: 1024px) {
  .newsletter .button {
    margin-left: auto;
    margin-right: auto;
  }
}
.newsletter .newsletter-form {
  max-width: none;
  width: 100%;
}
.newsletter .field {
  margin-bottom: 20px;
}
.newsletter .disclamer {
  margin-top: 32px;
}
@media (min-width: 1024px) {
  .newsletter .disclamer {
    text-align: center;
  }
}
.newsletter .newsletter-form__field-wrapper {
  width: 100% !important;
  max-width: none !important;
}

/*=====  End of Newsleter  ======*/
/*=============================================
=            USPs            =
=============================================*/
@media (max-width: 768px) {
  .usps .section-heading .section-heading__title {
    align-items: center;
    padding-right: 0;
  }
}
.usps.margins {
  margin-left: 16px;
  width: calc(100% - 32px);
}
@media (min-width: 1024px) {
  .usps.margins {
    margin-left: 64px;
    width: calc(100% - 128px);
  }
}
.usps__wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  margin-top: 96px;
  gap: 40px;
  padding-left: 20px;
  padding-right: 20px;
}
@media (min-width: 1024px) {
  .usps__wrap {
    padding-left: 60px;
    padding-right: 60px;
  }
}
.usps__item {
  display: flex;
  align-items: center;
  gap: 16px;
}
.usps__item p {
  margin: 0;
  line-height: normal;
  position: relative;
  top: 2px;
}

/*=====  End of USPs  ======*/
/*=============================================
=            Reviews System            =
=============================================*/
.reviews-display .reviews-display__description {
  margin-bottom: 32px;
  text-align: center;
}
.reviews-display .reviews-display__actions {
  display: flex;
  margin-bottom: 48px;
}
.reviews-display .reviews-display__controls {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 32px;
  gap: 16px;
}
@media (max-width: 768px) {
  .reviews-display .reviews-display__controls {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
  }
}
.reviews-display .reviews-display__sort {
  display: flex;
  align-items: center;
  gap: 8px;
}
.reviews-display .reviews-display__sort-label {
  font-size: 14px;
  margin: 0;
}
.reviews-display .reviews-display__sort-select {
  padding: 8px 12px;
  border: 1px solid rgba(var(--color-foreground), 0.2);
  border-radius: 4px;
  background: rgb(var(--color-background));
  color: rgba(var(--color-foreground), 0.9);
  font-size: 14px;
}
.reviews-display .reviews-display__pagination-info {
  font-size: 14px;
  color: rgba(var(--color-foreground), 0.6);
}
.reviews-display .reviews-display__loading {
  text-align: center;
  padding: 64px 0;
  color: rgba(var(--color-foreground), 0.6);
}
.reviews-display .reviews-display__grid {
  display: grid;
  grid-template-columns: 1fr;
}
.reviews-display__card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 48px 0;
  border-bottom: 1px solid rgba(var(--color-foreground), 0.08);
}
.reviews-display__card:last-child {
  border-bottom: none;
}
@media (max-width: 768px) {
  .reviews-display__card {
    padding: 32px 0;
  }
}
.reviews-display__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .reviews-display__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}
.reviews-display__customer {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 500;
}
.reviews-display__date {
  color: rgba(var(--color-foreground), 0.6);
  font-size: 14px;
}
@media (max-width: 768px) {
  .reviews-display__date {
    margin-left: 36px;
  }
}
.reviews-display__rating {
  margin-bottom: 0;
}
.reviews-display__title {
  font-weight: 600;
  margin-bottom: 0;
  line-height: 1.3;
  font-size: 18px;
  color: rgba(var(--color-foreground), 0.9);
}
.reviews-display__content {
  margin-bottom: 0;
  line-height: 1.6;
  color: rgba(var(--color-foreground), 0.8);
}
.reviews-display__content p:last-child {
  margin-bottom: 0;
}
.reviews-display__product {
  font-size: 14px;
  color: rgba(var(--color-foreground), 0.6);
  margin: 0;
  font-style: italic;
}
.reviews-display__product-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(var(--color-foreground), 0.8);
  text-decoration: underline;
  transition: color 0.2s ease;
}
.reviews-display__product-link:hover {
  color: rgba(var(--color-foreground), 1);
  text-decoration: none;
}
.reviews-display__product-image {
  width: 24px;
  height: 24px;
  object-fit: cover;
  border-radius: 2px;
  flex-shrink: 0;
}
.reviews-display__product-title {
  line-height: 1.2;
}
.reviews-display__empty {
  text-align: center;
  padding: 64px 0;
  color: rgba(var(--color-foreground), 0.6);
}
.reviews-display__pagination {
  margin-top: 64px;
  display: flex;
  justify-content: center;
}
.reviews-display__pagination .pagination {
  display: flex;
  gap: 8px;
  align-items: center;
}
.reviews-display__pagination .pagination__btn {
  padding: 8px 12px;
  border: 1px solid rgba(var(--color-foreground), 0.2);
  background: rgb(var(--color-background));
  color: rgba(var(--color-foreground), 0.9);
  cursor: pointer;
  border-radius: 4px;
  font-size: 14px;
  transition: all 0.2s ease;
}
.reviews-display__pagination .pagination__btn:hover {
  background: rgba(var(--color-foreground), 0.05);
  border-color: rgba(var(--color-foreground), 0.3);
}
.reviews-display__pagination .pagination__btn--active {
  background: rgba(var(--color-foreground), 0.9);
  color: rgb(var(--color-background));
  border-color: rgba(var(--color-foreground), 0.9);
}
.reviews-display__pagination .pagination__btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.reviews-display__pagination .pagination__btn:disabled:hover {
  background: rgb(var(--color-background));
  border-color: rgba(var(--color-foreground), 0.2);
}

.country-flag {
  display: inline-flex;
  align-items: center;
}
.country-flag__image {
  border-radius: 2px;
  display: block;
}
.country-flag__emoji {
  font-size: 16px;
  line-height: 1;
}

.star-rating {
  display: flex;
  align-items: center;
  gap: 4px;
}
.star-rating--medium .star-rating__stars {
  gap: 2px;
}
.star-rating--medium .star-rating__star svg {
  width: 16px;
  height: 16px;
}
.star-rating--interactive .star-rating__star--clickable {
  cursor: pointer;
  transition: transform 0.1s ease, opacity 0.2s ease;
}
.star-rating--interactive .star-rating__star--clickable:hover {
  transform: scale(1.1);
}
.star-rating--interactive .star-rating__star--clickable:active {
  transform: scale(0.95);
}
.star-rating__stars {
  display: flex;
  gap: 2px;
}
.star-rating__star {
  color: #fbbf24;
  transition: color 0.2s ease;
}
.star-rating__star--empty {
  color: rgba(var(--color-foreground), 0.2);
}
.star-rating__star--empty svg {
  fill: transparent;
}
.star-rating__star--filled svg {
  fill: currentColor;
}
.star-rating__input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* Reviews Form Modal */
.reviews-form-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 0, 0, 0.4196078431);
}
.reviews-form-modal__backdrop {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(2px);
}
.reviews-form-modal__content {
  position: relative;
  background: rgb(var(--color-background));
  border-radius: 8px;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  max-width: 600px;
  width: 90%;
  max-height: 90vh;
  overflow-y: auto;
}
@media (max-width: 768px) {
  .reviews-form-modal__content {
    width: 95%;
    max-height: 95vh;
    border-radius: 0;
  }
}
.reviews-form-modal__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 32px 32px 0;
  border-bottom: 1px solid rgba(var(--color-foreground), 0.08);
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .reviews-form-modal__header {
    padding: 24px 24px 0;
  }
}
.reviews-form-modal__title {
  margin: 0;
  margin-bottom: 20px;
}
.reviews-form-modal__close {
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  color: rgba(var(--color-foreground), 0.6);
  transition: color 0.2s ease;
}
.reviews-form-modal__close:hover {
  color: rgba(var(--color-foreground), 0.9);
}
.reviews-form-modal__close svg {
  width: 20px;
  height: 20px;
}
.reviews-form-modal .contact {
  display: block;
  padding: 20px 40px;
}

.reviews-form__description {
  margin-bottom: 32px;
  text-align: center;
}

.reviews-form__rating-field .field__label {
  margin-bottom: 12px;
}
.reviews-form__rating-field .star-rating {
  margin-top: 43px;
}

/* Prevent body scroll when modal is open */
body.reviews-modal-open {
  overflow: hidden;
}

/* Field error styling for reviews form */
.field--error .field__input,
.field--error .text-area {
  border-color: rgb(var(--color-base-accent-1));
  background-color: rgba(var(--color-base-accent-1), 0.04);
}

.field__error {
  display: block;
  color: rgb(var(--color-base-accent-1));
  font-size: 12px;
  margin-top: 8px;
  line-height: 1.4;
}

/*=====  End of Reviews System  ======*/
product-info {
  margin-bottom: 40px;
}

.product__media-list, .thumbnail-list, .thumbnail {
  border: none;
}

@media (min-width: 1024px) {
  .product-form__input--pill {
    margin-bottom: -10px !important;
  }
}
.product-form__input--pill .variant-market-label:last-child {
  margin-bottom: 0 !important;
}

@media (min-width: 1200px) {
  [data-desktop-layout=thumbnail_slider] {
    display: flex !important;
    flex-direction: row-reverse;
    gap: 2px;
  }
}
[data-desktop-layout=thumbnail_slider] .slider-component .slider-button {
  display: none !important;
}
@media (min-width: 1200px) {
  [data-desktop-layout=thumbnail_slider] .slider-mobile-gutter {
    width: calc(100% - 80px);
  }
}
@media (min-width: 1200px) {
  [data-desktop-layout=thumbnail_slider] .thumbnail-slider {
    width: 129px;
  }
  [data-desktop-layout=thumbnail_slider] .thumbnail-slider .thumbnail-list__item {
    margin-bottom: 8px;
  }
}
@media (min-width: 1200px) {
  [data-desktop-layout=thumbnail_slider] .thumbnail-list {
    display: block;
  }
}
@media (max-width: 768px) {
  [data-desktop-layout=thumbnail_slider] .thumbnail-list {
    height: auto !important;
  }
}

.product-media-container video {
  object-fit: cover;
}

.underline-button-select {
  display: flex;
  gap: 32px;
}
.underline-button-select p:hover {
  cursor: pointer;
}
.underline-button-select p.active {
  text-decoration: underline;
  text-underline-offset: 11px;
  font-weight: 500;
}

.section-number {
  font-size: 14px;
  margin: 0;
}

.product-options-section {
  margin-bottom: 128px;
  position: relative;
}
.product-options-section::after {
  content: "";
  position: absolute;
  width: calc(63% - 83px);
  height: 1px;
  background: #E0DCD5;
  bottom: 0;
}

.product-option-custom {
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin-bottom: 64px;
  border: 2px solid transparent;
}
@media screen and (min-width: 768px) {
  .product-option-custom {
    width: 63%;
  }
}
.product-option-custom .checkbox-wrapper {
  margin-top: 16px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.product-option-custom .checkbox-wrapper label {
  position: relative;
  top: 2px;
}
.product-option-custom .checkbox-wrapper input {
  width: 24px;
  height: 24px;
}
.product-option-custom ul, .product-option-custom ol {
  padding-left: 15px;
  margin-bottom: 16px;
}
.product-option-custom ul li, .product-option-custom ol li {
  margin-bottom: 5px;
}
.product-option-custom.highlighted input {
  border: 2px solid;
}
.product-option-custom__question * {
  margin-top: 0;
  margin-bottom: 0px;
}
.product-option-custom__question p {
  margin-bottom: 20px;
}
.product-option-custom__question p:last-of-type {
  margin-bottom: 0px;
}
.product-option-custom__question a:last-of-type {
  margin-top: 8px;
}
.product-option-custom--secondary {
  padding: 32px;
  background: #F6F6F6;
  border-radius: 16px;
  gap: 16px;
  left: 20px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .product-option-custom--secondary {
    width: calc(100% - 380px);
  }
}
.product-option-custom input {
  padding: 20px 10px;
}
.product-option-custom select {
  padding: 20px 10px;
}

.po-image {
  display: grid;
  gap: 8px;
}
.po-image.images-large .has-image {
  grid-template-columns: auto auto;
}
.po-image.images-large .has-image .image-wrap {
  grid-column: span 2;
  width: 100%;
  height: 120px;
}
.po-image.images-large .has-image .image-wrap img {
  max-height: 120px;
}
.po-image.images-large .has-image .po-image__additional-cost {
  justify-self: flex-end;
}
@media (max-width: 768px) {
  .po-image.swatches {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 18px;
  }
}
.po-image.swatches label.has-image {
  display: flex;
  flex-direction: column;
  border: none;
  padding: 0;
  gap: 0px;
  align-items: baseline;
}
.po-image.swatches label.has-image p {
  max-width: calc(100% - 10px);
}
.po-image.swatches label.selected .image-wrap {
  border: 2px solid #5B5B5B;
}
.po-image.swatches .image-wrap {
  width: 100%;
  padding-bottom: 100%;
  height: auto;
  border: 2px solid #E0DCD5;
  margin-bottom: 8px;
}
.po-image.swatches .image-wrap img {
  position: absolute;
  object-fit: contain;
  top: 0;
  left: 0;
  padding: 8px;
  max-height: none;
}
.po-image label {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 16px;
  border: 2px solid #E0DCD5;
  padding: 8px 16px;
  align-items: center;
  min-height: 104px;
}
.po-image label:hover {
  border: 2px solid #5B5B5B;
}
.po-image label.has-image {
  grid-template-columns: auto 1fr auto;
}
.po-image label.selected {
  border: 2px solid #5B5B5B;
}
.po-image label input {
  display: none;
}
.po-image label P {
  font-weight: 800;
  margin: 0;
}
.po-image--three label {
  width: calc(33.3333% - 22px) !important;
}
.po-image .image-wrap {
  width: 80px;
  height: 60px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.po-image .image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  max-height: 50px;
}
.po-image input[type=checkbox]:checked + label {
  border: 2px solid #5B5B5B; /* Change color and thickness as needed */
}
.po-image label:hover {
  cursor: pointer;
}

.product-option-custom-wrap {
  position: relative;
}
.product-option-custom-wrap .product-option-custom-info__button:hover {
  cursor: pointer;
}
.product-option-custom-wrap .product-option-custom-info__button::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  right: 0;
  top: 0;
}
.product-option-custom-wrap .product-option-custom-info__button::after:hover {
  cursor: pointer;
}
@media (min-width: 1024px) {
  .product-option-custom-wrap {
    display: flex;
  }
}

.product-option-custom-info {
  background-color: #F5F2ED;
  padding: 32px;
  height: fit-content;
  align-items: center;
  display: grid;
  grid-template-columns: 1fr 24px;
  position: sticky;
  top: 20px;
  margin-top: 65px;
}
@media (max-width: 768px) {
  .product-option-custom-info {
    margin-top: -44px;
    margin-bottom: 64px;
  }
}
.product-option-custom-info__button {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  height: 100%;
}
@media (min-width: 1024px) {
  .product-option-custom-info__wrap {
    padding-left: 64px;
    max-width: 37%;
    width: calc(37% - var(--grid-desktop-horizontal-spacing) / 2);
  }
}

.variant-market-label {
  width: 100%;
  display: flex;
  border: 1px solid #E0DCD5;
  padding: 12px 16px;
  margin-bottom: 16px;
  min-height: 84px;
  align-items: center;
  justify-content: space-between;
}
.variant-market-label__left {
  display: flex;
  align-items: center;
  gap: 16px;
}
.variant-market-label__left img {
  width: 80px;
  height: auto;
}

[data-show-us-only=true] {
  display: none !important;
}

[data-show-uk-only=true] {
  display: none !important;
}

.uk-selected [data-show-uk-only=true] {
  display: grid !important;
}

.us-selected [data-show-us-only=true] {
  display: grid !important;
}

.in-customizer .product-option-custom {
  display: flex !important;
}

.js-checkbox-check {
  filter: grayscale(1);
}

.product-options-summary {
  opacity: 0.6;
}
.product-options-summary .field {
  margin-bottom: 10px;
}
.product-options-summary.highlighted {
  opacity: 1;
}
.product-options-summary__lines {
  margin-bottom: 34px;
}
.product-options-summary__line {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #E0DCD5;
}
.product-options-summary__line:first-of-type {
  border-top: none;
}
.product-options-summary__line p {
  font-size: 18px;
}
.product-options-summary__payments {
  text-align: center;
}
.product-options-summary__payments p {
  font-size: 14px;
}
.product-options-summary__payments ul {
  justify-content: center;
}
.product-options-summary__text {
  max-width: 863px;
}
.product-options-summary__text h2 {
  margin-top: 0;
  margin-bottom: 32px;
}
.product-options-summary__text p {
  margin-top: 0;
  margin-bottom: 20px;
}
.product-options-summary__add {
  background-color: #F5F2ED;
  padding: 32px;
  width: 100%;
  height: fit-content;
}
.product-options-summary__add .button {
  width: 100%;
}
@media (min-width: 1024px) {
  .product-options-summary__block {
    display: grid;
    grid-template-columns: 192px auto 416px;
    gap: 32px;
  }
}
.product-options-summary__block .image-wrap {
  width: 100%;
  height: 100%;
}
.product-options-summary__block .image-wrap img {
  width: 100%;
  height: auto;
  position: sticky;
  top: 65px;
}
.product-options-summary__info .product__accordion {
  margin-top: 32px;
}
.product-options-summary__info .summary-item {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  padding-top: 16px;
  padding-bottom: 16px;
  border-top: 1px solid #E0DCD5;
  transition: 0.4s;
}
.product-options-summary__info .summary-item strong {
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 76px;
}

.svg-wrapper {
  height: 30px;
  width: 30px;
  pointer-events: none;
}

.thumbnail__badge {
  pointer-events: none;
}

.pdp-fixed-bar {
  height: 82px;
  margin-bottom: 40px;
}
.pdp-fixed-bar__inner {
  pointer-events: none;
  transition: 0.4s;
  width: 100%;
  background-color: #FAFAF6;
  z-index: 99;
  height: 82px;
  padding: 16px 0px;
}
@media (max-width: 768px) {
  .pdp-fixed-bar h2 {
    font-size: 15px;
    line-height: normal;
  }
}
.pdp-fixed-bar__right h3 {
  display: flex;
  align-items: center;
  min-width: 100px;
  text-align: right;
  justify-content: end;
}
.pdp-fixed-bar__right h3 h3 {
  text-align: right;
}
.pdp-fixed-bar__content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.pdp-fixed-bar.visible .pdp-fixed-bar__inner {
  opacity: 1;
  position: fixed;
  top: 0;
  pointer-events: all;
  box-shadow: 0px 9px 46px -37px rgba(0, 0, 0, 0.8196078431);
}
.pdp-fixed-bar__left {
  display: flex;
  align-items: center;
  gap: 16px;
}
.pdp-fixed-bar__left h2 {
  margin: 0;
}
.pdp-fixed-bar__left img {
  width: 50px;
  height: 50px;
  object-fit: cover;
}
.pdp-fixed-bar__right h3 {
  margin: 0;
}

product-form {
  display: none !important;
}

.product__info-container .product__title {
  margin-top: 8px;
}
.product__info-container .button--gallery {
  width: 100%;
  justify-content: space-between;
  background-color: rgba(var(--color-button));
  color: rgb(var(--color-button-text));
}
.product__info-container .button--gallery svg path {
  transition: 0.2s;
  stroke: white;
}
.product__info-container .button--gallery:hover {
  border-color: rgba(var(--color-button));
  background-color: transparent;
  color: rgba(var(--color-button));
}
.product__info-container .button--gallery:hover svg path {
  stroke: rgba(var(--color-button));
}
.product__info-container .button--gallery span {
  position: relative;
  top: 3px;
}
.product__info-container .product__accordion, .product__info-container .product__text, .product__info-container .size-heading {
  margin-top: 32px;
}
.product__info-container .summary__title {
  font-size: 15px;
}
.product__info-container variant-selects {
  margin-top: 24px;
}
.product__info-container .size-heading p {
  margin: 0;
}
.product__info-container .size-heading h4 {
  margin: 0;
  margin-top: 8px;
}

.pdp-price {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}
.pdp-price__wrap {
  display: flex;
  align-items: end;
  gap: 8px;
}
.pdp-price__wrap p {
  position: relative;
  top: -1px !important;
}
.pdp-price h2, .pdp-price p {
  margin: 0;
  line-height: 1;
}
.pdp-price p {
  position: relative;
  top: 1px;
}

media-gallery .slider-button {
  display: none;
}

@media (max-width: 768px) {
  .product__info-wrapper {
    margin-top: 32px;
  }
}

.written-text.show {
  padding: 50px;
  background-color: white;
  font-size: 32px;
  text-align: center;
}
.written-text.show p {
  font-size: 32px;
  margin: 0;
  padding: 0;
}

.force-show.product-form {
  display: block !important;
}
.force-show #product-form-uplaod, .force-show [name="properties[Uploaded File]"] {
  display: none !important;
}

.cart-header {
  margin-top: 32px;
  margin-bottom: 64px;
}
.cart-header.is-empty {
  display: none;
}

.cart-wrap {
  margin-bottom: 64px;
}
@media (min-width: 1024px) {
  .cart-wrap {
    margin-bottom: 128px;
  }
}
.cart-wrap.is-empty {
  display: none;
}
@media (min-width: 1024px) {
  .cart-wrap {
    display: grid;
    grid-template-columns: 1fr 416px;
    grid-gap: 32px;
  }
}
.cart-wrap .cart__buy {
  position: sticky;
  top: 113px;
}
.cart-wrap .product-options-summary__add {
  display: block;
}

.bundled-item {
  margin-bottom: 64px;
  padding-bottom: 64px;
  border-bottom: 1px solid #E0DCD5;
}
@media (min-width: 1024px) {
  .bundled-item {
    display: grid;
    grid-template-columns: 191px 1fr;
    grid-gap: 32px;
  }
}
.bundled-item__remove:hover {
  cursor: pointer;
}
.bundled-item__image {
  width: 100%;
}
.bundled-item__image img {
  width: 100%;
  position: sticky;
  top: 112px;
}
.bundled-item__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  border-bottom: 1px solid #E0DCD5;
  display: none;
}
.bundled-item__header--mobile {
  display: flex;
}
@media (min-width: 1024px) {
  .bundled-item__header--mobile {
    display: none !important;
  }
}
@media (min-width: 1024px) {
  .bundled-item__header {
    display: flex;
  }
}
.bundled-item__data h3 {
  margin-top: 0;
}
@media (min-width: 1024px) {
  .bundled-item__table {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 32px;
    row-gap: 0;
  }
}
.bundled-item__cell {
  border-top: 1px solid #E0DCD5;
  padding-top: 16px;
  margin-top: 16px;
}
.bundled-item__cell:nth-child(1), .bundled-item__cell:nth-child(2) {
  border: none;
  margin-top: 0;
}
.bundled-item__cell p {
  margin: 0;
}

.mobile-cart-header {
  display: grid;
  grid-template-columns: 108px auto;
  gap: 16px;
  border-bottom: 1px solid #E0DCD5;
  padding-bottom: 16px;
  margin-bottom: 16px;
}
@media (min-width: 1024px) {
  .mobile-cart-header {
    display: block;
    border-bottom: none;
  }
}
.mobile-cart-header .bundled-item__header {
  border: none;
}
.mobile-cart-header h3 {
  margin: 0;
}

@media (max-width: 1023px) {
  .cart__right {
    position: relative;
    left: -20px;
    width: calc(100% + 40px);
  }
}

.collection-view {
  display: flex;
  gap: 32px;
}
@media (max-width: 768px) {
  .collection-view {
    display: none;
  }
}
.collection-view p {
  margin: 0;
}
.collection-view__btn {
  display: flex;
  gap: 8px;
  align-items: center;
  opacity: 0.5;
}
.collection-view__btn:hover {
  opacity: 1;
  cursor: pointer;
}
.collection-view__btn.active {
  opacity: 1;
}

#product-grid {
  display: grid;
}
#product-grid .grid__item {
  width: 100%;
  max-width: none;
}

.productcard {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  min-height: 430px;
  gap: 71px;
  border-bottom: 1px solid #E0DCD5;
  padding-bottom: 128px;
  margin-bottom: 128px;
}
.productcard .pdp-price {
  white-space: nowrap;
}
.productcard .pdp-price__wrap {
  align-items: flex-end;
}
.productcard__contnet {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (min-width: 1024px) {
  .productcard__contnet {
    gap: 0px;
  }
}
.productcard__title {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  align-items: end;
  margin-bottom: 16px;
}
@media (min-width: 1024px) {
  .productcard__title {
    gap: 50px;
  }
}
.productcard__title h2 {
  margin: 0;
  line-height: 1;
}
.productcard__money {
  white-space: nowrap;
  white-space: nowrap;
  display: flex;
  align-items: baseline;
  gap: 7px;
}
.productcard__extra-details {
  margin-top: 24px;
}
.productcard__extra-details p {
  margin: 0;
  min-height: 16px;
  display: block;
}
.productcard__short-desc {
  margin-bottom: 24px;
}
.productcard__short-desc p {
  margin: 0;
}
.productcard__divider {
  height: 1px;
  width: 100%;
  display: block !important;
  background-color: #E0DCD5;
}
.productcard__extra-dets {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: end;
}
.productcard__extra-dets .productcard__colours {
  position: relative;
  top: -5px;
}
.productcard__colours {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.productcard__swatch {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1px solid #E0DCD5;
  display: block !important;
  transition: 0.3s;
}
.productcard__swatch:hover {
  transform: scale(1.1);
}
.productcard__images {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 2px;
  position: relative;
}
.productcard__images img {
  transition: 0.3s;
}
.productcard__images:hover img {
  transform: scale(1.1);
}
.productcard__images a {
  position: absolute;
  height: 100%;
  width: 100%;
  display: block;
  z-index: 1;
}
.productcard__btns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
@media (min-width: 600px) {
  .productcard__btns {
    grid-template-columns: 1fr;
  }
}
@media (min-width: 1359px) {
  .productcard__btns {
    grid-template-columns: 1fr 1fr;
  }
}
.productcard__btns .button {
  justify-content: space-between;
}
.productcard__btns .button--gallery:hover svg path {
  stroke: white;
}
.productcard__btns .button--product svg {
  position: relative;
  right: 0;
  transition: right 0.3s;
}
.productcard__btns .button--product:hover {
  background-color: rgba(var(--color-button));
  border: 1px solid rgba(var(--color-button));
  color: rgb(var(--color-button-text));
}
.productcard__btns .button--product:hover svg {
  right: -5px;
}
.productcard__btns .button--product:hover svg path {
  stroke: rgb(var(--color-button-text));
}
.productcard__btns span {
  display: flex;
}
.productcard__price {
  display: flex;
  white-space: nowrap;
  gap: 10px;
  align-items: flex-end;
}
.productcard__price p, .productcard__price h2 {
  margin: 0;
}
.productcard__main-img {
  padding-bottom: 100%;
  position: relative;
  grid-column: span 2;
  grid-row: span 2;
  overflow: hidden;
}
.productcard__main-img img {
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.productcard__samll-img-top img {
  transition-delay: 0.03s !important;
}
.productcard__samll-img {
  padding-bottom: 100%;
  position: relative;
  grid-column: span 1;
  grid-row: span 1;
  overflow: hidden;
}
.productcard__samll-img img {
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition-delay: 0.06s;
}

.list-view {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0px;
}

.pdp-price__wrap span {
  display: flex;
  align-items: end;
  gap: 8px;
}

.grid-view {
  grid-template-columns: 1fr 1fr 1fr;
  gap: 32px;
  row-gap: 128px;
}
.grid-view .pdp-price__wrap {
  flex-direction: column;
  gap: 4px !important;
}
.grid-view .productcard {
  grid-template-columns: 1fr;
  height: 100%;
  grid-template-rows: calc(23.5vw - 68px) 1fr;
  gap: 32px;
  padding-bottom: 0;
  margin-bottom: 0;
  border: none;
}
.grid-view .productcard__short-desc {
  display: none;
}
.grid-view .productcard__extra-dets {
  margin-bottom: 32px;
}
.grid-view .productcard__samll-img, .grid-view .productcard__main-img {
  padding-bottom: inherit;
}
.grid-view .productcard__money {
  display: flex;
  white-space: nowrap;
  justify-content: flex-end;
  align-items: baseline;
  gap: 10px;
}
.grid-view .money {
  font-size: 26px;
}
.grid-view .productcard__title {
  min-height: 45px;
}
.grid-view .productcard__title .h2 {
  font-size: 26px;
}
.grid-view .productcard__divider {
  margin-bottom: 32px;
}
.grid-view .productcard__extra-details {
  margin-top: 0px;
}
.grid-view .productcard__btns {
  grid-template-columns: 1fr;
}
.grid-view .productcard__price {
  display: block;
}
.grid-view .productcard__price p {
  text-align: right;
}
.grid-view .productcard__price h2 {
  font-size: 18px;
}

@media (max-width: 1023px) {
  #product-grid .grid__item {
    margin-bottom: 64px;
    padding-bottom: 64px;
    border-bottom: 1px solid #E0DCD5;
  }
  .grid-view {
    grid-template-columns: 1fr;
    gap: 0px;
  }
  .grid-view .productcard {
    grid-template-rows: calc(82vw - 83px) 1fr;
  }
  .productcard__contnet {
    display: block;
  }
  .productcard {
    grid-template-columns: 1fr;
    height: 100%;
    grid-template-rows: calc(76.5vw - 68px) 1fr;
    gap: 16px;
    padding-bottom: 0;
    margin-bottom: 0;
    border: none;
  }
  .productcard__short-desc {
    margin-bottom: 16px;
  }
  .productcard__divider {
    margin-bottom: 16px !important;
  }
  .productcard__short-desc {
    display: block !important;
  }
  .productcard__extra-dets {
    margin-bottom: 32px;
  }
  .productcard__samll-img, .productcard__main-img {
    padding-bottom: inherit;
  }
  .productcard__money {
    display: block;
    white-space: wrap;
    justify-content: flex-start !important;
    align-items: baseline;
    gap: 10px;
  }
  .productcard__price p {
    text-align: left !important;
  }
  .productcard__title .h2 {
    font-size: 18px;
  }
  .productcard__divider {
    margin-bottom: 32px;
  }
  .productcard__extra-details {
    margin-top: 0px;
  }
  .productcard__btns {
    grid-template-columns: 1fr;
  }
  .productcard__price {
    display: block;
  }
  .productcard__price p {
    text-align: left;
  }
  .productcard__price h2 {
    font-size: 18px;
  }
}
.collection-banner--with-image .collection-banner__top * {
  color: rgb(var(--color-background));
}
.collection-banner--with-image .collection-banner__bottom {
  padding: 32px;
}
@media (min-width: 1024px) {
  .collection-banner--with-image .collection-banner__bottom {
    padding: 64px;
  }
}
.collection-banner--with-image .collection-banner__content {
  position: relative;
  top: -128px;
  margin-bottom: -128px;
  padding-top: 0px;
}
@media (min-width: 1024px) {
  .collection-banner--with-image .collection-banner__content {
    top: -179px;
    margin-bottom: -179px;
  }
}
.collection-banner__image {
  width: 100%;
  overflow: hidden;
  height: 400px;
}
@media (min-width: 1480px) {
  .collection-banner__image {
    height: 500px;
  }
}
.collection-banner__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0;
  animation: fadeIn 0.4s ease-in forwards;
}
@media (min-width: 1024px) {
  .collection-banner__image img {
    height: 100%;
  }
}
.collection-banner__top h1 {
  margin-top: 0;
  margin-bottom: 16px;
}
@media (min-width: 1024px) {
  .collection-banner__top h1 {
    margin-bottom: 32px;
  }
}
.collection-banner__content {
  padding-top: 80px;
}
.collection-banner__bottom {
  background-color: rgb(var(--color-background));
  padding-top: 32px;
  padding-bottom: 0;
}
@media (min-width: 1024px) {
  .collection-banner__bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 128px;
    padding: 0px;
    padding-top: 48px;
  }
}
.collection-banner__bottom p {
  margin: 0;
}
.collection-banner__left {
  padding-bottom: 16px;
}
@media (min-width: 1024px) {
  .collection-banner__left {
    padding-bottom: 0;
  }
}
.collection-banner__left p::first-letter {
  font-size: 48px;
  float: left;
  margin-right: 5px;
  line-height: 100%;
  font-family: "ivypresto-display", serif;
  font-weight: 400;
  margin-top: 1px;
}
@media (min-width: 1024px) {
  .collection-banner__left p::first-letter {
    font-size: 43px;
  }
}
.collection-banner__right {
  position: relative;
}
@media (min-width: 1024px) {
  .collection-banner__right::before {
    content: "";
    position: absolute;
    top: 0;
    left: -64px;
    width: 1px;
    height: 100%;
    background-color: rgba(var(--color-foreground));
    opacity: 0.3;
  }
}
.collection-banner__buttons {
  display: flex;
  gap: 16px;
  margin-top: 32px;
  flex-direction: column;
  justify-content: flex-start;
}
@media (min-width: 1024px) {
  .collection-banner__buttons {
    flex-direction: row;
  }
}
.collection-banner__buttons .button {
  text-decoration: none;
  border: none;
  gap: 8px;
  align-items: flex-start;
  justify-content: flex-start;
}
.collection-banner__buttons .button svg {
  transition: 0.3s;
}
.collection-banner__buttons .button:hover svg {
  transform: rotate(-90deg);
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: scale(1.07);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.facets__form {
  align-items: center;
  padding-top: 16px;
  padding-bottom: 16px;
  border-top: 1px solid rgba(var(--color-foreground), 0.3);
  border-bottom: 1px solid rgba(var(--color-foreground), 0.3);
  margin-bottom: 47px !important;
  gap: 5px !important;
}
@media (min-width: 1024px) {
  .facets__form {
    padding-top: 32px;
    padding-bottom: 32px;
    gap: 32px !important;
    margin-bottom: 113px !important;
  }
}
/* Responsive image row for blog posts */
@media (max-width: 768px) {
  .rte div[style*="display: flex"] img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
  .rte div[style*="display: flex"] {
    flex-direction: column !important;
    align-items: center !important;
  }
}
/* Defer rendering of country selector list */
.disclosure__list-wrapper.country-selector {
  content-visibility: auto;
}
@media (min-width: 1024px) {
  .hide-desktop {
    display: none !important;
  }
}
/* Cap modal images at native size, centre them */
.product-media-modal__content img {
  max-width: 1000px;
  max-height: 95vh;
  width: auto;
  height: auto;
  margin-inline: auto;
  object-fit: contain;
}


/*# sourceMappingURL=custom.css.map */

/* Per-option info icon */
.po-image label.has-image {
  position: relative; /* anchor for the absolute icon */
}

.option-info-btn {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 32px;
  height: 32px;
  padding: 0;
  margin: 0;
  border: 1px solid rgba(91, 91, 91, 0.3);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.92);
  color: #5B5B5B;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
  z-index: 2;
}

.option-info-btn:hover,
.option-info-btn:focus-visible {
  background: #5B5B5B;
  border-color: #5B5B5B;
  color: #fff;
  outline: none;
}

.option-info-btn svg {
  display: block;
}

@media (max-width: 749px) {
  .option-info-btn {
    width: 36px;
    height: 36px;
    top: 6px;
    right: 6px;
  }
}

/* Pre-action popup CTA button */
.pre-action-popup .popup__cta-wrap {
  display: flex;
  justify-content: center;
  margin-top: 32px;
  padding-bottom: 32px;
}

.pre-action-popup .pre-action-cta-btn {
  min-width: 240px;
}
.pre-action-popup .pre-action-popup__close {
  background: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
}

.pre-action-popup .popup__content {
  max-width: 100%;
}

.pre-action-popup .pre-action-cta-btn {
  margin-left: auto;
  margin-right: auto;
}
