.main-collection-container,
.product-detail-wrapper,
.section-recommended-product,
.section-recently-viewed-product {
  --cp-earth: 65, 86, 62;
  --cp-moss: 111, 128, 83;
  --cp-clay: 175, 117, 84;
  --cp-stone: 242, 240, 232;
  --cp-ink-soft: 31, 37, 30;
}

.main-collection-container .main-collection {
  gap: 28px;
  padding-block: 34px 56px;
}

.main-collection-container .main-collection__products {
  min-width: 0;
}

.main-collection-container .main-collection__list {
  row-gap: 34px;
}

.main-collection-container .facets-filtering,
.main-collection-container .facets-sorting-wrapper {
  border: 1px solid rgba(var(--cp-earth), 0.12);
  background: rgba(var(--cp-stone), 0.62);
}

.main-collection-container .facets-filtering {
  padding: 18px;
}

.main-collection-container .facets-sorting-wrapper {
  padding: 12px 16px;
}

.main-collection-container .facets-position-sticky {
  top: calc(var(--header-height, 0px) + 18px);
  z-index: 2;
}

.block-product-card {
  height: 100%;
  overflow: hidden;
  border: 1px solid rgba(var(--cp-earth), 0.1);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(var(--cp-stone), 0.38)),
    rgb(var(--color-background));
  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.block-product-card:hover {
  border-color: rgba(var(--cp-moss), 0.34);
  box-shadow: 0 18px 44px rgba(var(--cp-earth), 0.1);
  transform: translateY(-2px);
}

.block-product-card .block-product-card-info {
  gap: 8px;
  padding-block-end: 14px;
}

.block-product-card .block-product-card__description {
  color: rgba(var(--cp-ink-soft), 0.72);
  line-height: 1.45;
}

.block-product-card .block-product-card__quick-add {
  color: rgb(var(--color-background));
  background: rgba(var(--cp-earth), 0.92);
  border: 1px solid rgba(var(--cp-earth), 0.2);
}

.block-product-card .block-product-card__quick-add:hover {
  background: rgba(var(--cp-clay), 0.94);
}

.promotion-card {
  min-height: 100%;
  border: 1px solid rgba(var(--cp-earth), 0.16);
  background:
    linear-gradient(135deg, rgba(var(--cp-earth), 0.88), rgba(var(--cp-clay), 0.7)),
    rgba(var(--cp-earth), 0.9);
}

.promotion-card__content {
  color: #fff;
}

.promotion-card__desc {
  max-width: 30ch;
}

.product-detail-wrapper .product-detail {
  color: rgb(var(--cp-ink-soft));
}

.product-detail-wrapper {
  overflow-x: hidden;
}

.product-detail-wrapper .page-width {
  max-width: 1280px;
}

.product-detail__main[data-desktop-direction="row"] {
  align-items: flex-start;
}

.product-detail-wrapper .product-detail__main[data-desktop-direction="row"] .product-detail__media-group--sticky {
  inset-block-start: calc(var(--header-height, 0px) + 24px);
}

.product-detail__media-gallery .media-gallery__item {
  background: rgba(var(--cp-stone), 0.7);
}

.product-detail__variant-picker .variant-picker__button {
  border-radius: 4px;
}

.product-detail__sell-info {
  padding: 14px;
  border: 1px solid rgba(var(--cp-earth), 0.12);
  background: rgba(var(--cp-stone), 0.55);
}

.product-detail__additional {
  border-color: rgba(var(--cp-earth), 0.14);
}

.product-detail-wrapper .product-detail__info > .product-description {
  margin-block-start: 6px;
  padding-block-start: 18px;
  border-block-start: 1px solid rgba(var(--cp-earth), 0.14);
  color: rgba(var(--cp-ink-soft), 0.84);
  line-height: 1.58;
}

.product-detail-wrapper .product-detail__info > .product-description .product-expander__content {
  max-height: none;
  overflow: visible;
}

.product-detail-wrapper .product-detail__info > .product-description .product-expander__content::after,
.product-detail-wrapper .product-detail__info > .product-description .product-expander__trigger {
  display: none;
}

.product-detail-wrapper .product-description p,
.product-detail-wrapper .product-description ul,
.product-detail-wrapper .product-description ol,
.product-detail-wrapper .product-description table {
  margin-block: 0 12px;
}

.product-detail-wrapper .product-description img,
.product-detail-wrapper .product-description video,
.product-detail-wrapper .product-description iframe {
  max-width: 100%;
}

.product-detail-wrapper .product-description img,
.product-detail-wrapper .product-description video {
  display: block;
  width: auto;
  height: auto;
  margin-block: 14px;
  background: rgba(var(--cp-stone), 0.5);
  object-fit: contain;
}

.product-detail__form .form__buttons .button[name="add"] {
  color: #fff;
  -webkit-text-fill-color: #fff;
  text-indent: 0;
  visibility: visible;
  opacity: 1;
  background: rgb(var(--cp-earth));
  border-color: rgb(var(--cp-earth));
  mix-blend-mode: normal;
}

.product-detail__form .form__buttons .button[name="add"] span,
.product-detail__form .form__buttons .button[name="add"] .button__spinner {
  color: #fff;
  -webkit-text-fill-color: #fff;
  visibility: visible;
  opacity: 1;
}

.product-detail__form .form__buttons .button[name="add"][disabled] {
  color: rgba(255, 255, 255, 0.86);
  -webkit-text-fill-color: rgba(255, 255, 255, 0.86);
  opacity: 0.72;
}

.product-detail__form .form__buttons .button[name="add"][disabled] span,
.product-detail__form .form__buttons .button[name="add"][disabled] .button__spinner {
  color: rgba(255, 255, 255, 0.86);
  -webkit-text-fill-color: rgba(255, 255, 255, 0.86);
}

.product-detail__form .form__buttons .button,
.product-detail__form .form__buttons shopline-payment-button {
  width: 100%;
  min-height: 48px;
}

.product-detail__form .form__buttons .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.product-detail__form .form__buttons .button[name="add"]:not(:disabled):hover {
  color: #fff;
  -webkit-text-fill-color: #fff;
  background: rgb(var(--cp-clay));
  border-color: rgb(var(--cp-clay));
}

.product-detail__form .form__buttons .button[name="add"]:focus-visible {
  color: #fff;
  -webkit-text-fill-color: #fff;
  outline: 2px solid rgba(var(--cp-clay), 0.75);
  outline-offset: 3px;
}

.is-sticky > .product-detail__buy-buttons {
  backdrop-filter: blur(12px);
}

.section-recommended-product,
.section-recently-viewed-product {
  position: relative;
  max-width: 1280px;
  margin-inline: auto;
}

.section-recommended-product .block-product-card,
.section-recently-viewed-product .block-product-card {
  box-shadow: none;
}

@media (min-width: 960px) {
  .main-collection.facets-layout-vertical.enable-filtering {
    grid-template:
      "filtering sorting" auto
      "filtering list" 1fr
      / minmax(220px, 268px) minmax(0, 1fr);
    column-gap: 30px;
  }

  .product-detail__media-gallery[data-desktop-layout="two-columns"] .media-gallery__list {
    align-items: stretch;
  }
}

@media (max-width: 959px) {
  .product-detail-wrapper .page-width {
    max-width: 100%;
  }

  .product-detail-wrapper .product-detail {
    max-width: 100%;
  }

  .main-collection-container .main-collection {
    padding-block: 0 30px;
  }

  .main-collection-container .facets-mobile-inner {
    border-block-end: 1px solid rgba(var(--cp-earth), 0.12);
    background: rgba(var(--color-background), 0.96);
  }

  .block-product-card {
    transform: none;
  }

  .block-product-card:hover {
    transform: none;
  }

  .product-detail__sell-info {
    padding: 12px;
  }

  .product-detail-wrapper .product-detail__info > .product-description {
    margin-block-start: 6px;
    padding-block-start: 18px;
    line-height: 1.55;
  }

  .product-detail-wrapper .product-description img,
  .product-detail-wrapper .product-description video,
  .product-detail-wrapper .product-description iframe {
    width: auto;
    max-width: 100%;
  }

  .section-recommended-product,
  .section-recently-viewed-product {
    max-width: 100%;
  }
}
