:root {
  --text-color: #000000;
  --section-height: 90vh;
}

[data-alchemy-element-root] {
  overflow: hidden;
  * {
    overflow: hidden;
  }
}

.section-display-desktop {
  @media (max-width: 767px) {
    display: none;
  }
}

.section-display-mobile {
  @media (min-width: 768px) {
    display: none;
  }
}

.collection-products__blocks {
  @media (max-width: 767px) {
    padding-right: 0;
    padding-left: 0;
  }
}

.collection-block__products {
  @media (max-width: 767px) {
    grid-column-gap: 2px !important;

    .product-card__v2 {
      .card-info__swatches,
      .product-card-footer {
        padding-left: 20px;
        padding-right: 20px;
      }
    }
  }
}

.accounts__right-title h2,
.accounts__title,
.accounts__form--heading h3,
.faqs-section__heading,
.loyalty-faq__title,
.quote-section__heading--lg,
.membership__title,
.collection-header h1,
.article-preview__heading--sm,
h2.slider-section__heading,
h2.slider-section__heading--lg,
h2.home-category__heading {
  font-size: 1.5rem;
}

.collection-header {
  padding-top: 75px;
  padding-bottom: 16px;

  @media (min-width: 768px) {
    padding-top: 50px;
    padding-bottom: 23px;
  }

  .filters-button {
    text-transform: none;
  }
}

basic-gallery,
product-card {
  .swiper {
    position: relative;
    .carousel__arrows {
      position: absolute;
      inset: 0;
      justify-content: space-between;
      z-index: 3;
      pointer-events: none;
      visibility: hidden;

      button {
        pointer-events: all;
        width: 30px;
        height: 30%;
        svg {
          width: 5px;
        }
      }

      @media (min-width: 1024px) {
        opacity: 0;
        visibility: visible;

        button {
          width: 40px;
          svg {
            width: 7px;
          }
        }
      }
    }
  }
}

basic-gallery {
  .swiper {
    .carousel__arrows {
      opacity: 1;
    }
  }
}

.product-card__v2,
.product-card-inline {
  .card-info__swatches {
    display: block;

    .card-swatches {
      display: flex;
      align-items: center;
      gap: 10px;

      li {
        a {
          color: inherit;
          &:after {
            display: none;
          }
        }
      }

      .swatch-preview {
        height: 14px;
        width: 20px;
        border-radius: 0;

        &:before {
          content: "";
          position: absolute;
          inset: initial;
          height: 1.5px;
          bottom: -5px;
          left: 0;
          right: 0;
          background-color: #8b8a89;
          display: none;
          border-radius: 0;
          border: none;
        }

        &:hover:before,
        &.active:before {
          display: block;
        }
      }
    }
  }
}

.product-card__v2,
.section--best-seller_v2 {
  @media (max-width: 1023px) {
    .carousel__progress-bar {
      height: 1.5px;
      position: absolute;
      z-index: 2;
      bottom: 0;
      left: 0;
      right: 0;
      .swiper-scrollbar-drag {
        background-color: black;
      }
    }
  }
}

.product-card__v2 {
  position: relative;

  .product-card__top-grid {
    @media (max-width: 767px) {
      padding: 10px;
      .product-card__label {
        font-size: 0.8rem;
      }
    }
  }

  >div {
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
  }

  @media (min-width: 1024px) {
    &:hover {
      .product-card__quickbuy {
        transform: translateZ(0);
      }

      .swiper {
        .carousel__arrows {
          opacity: 1;
        }
      }
    }
  }

  .product-card-image {
    aspect-ratio: 3/3.77;
    position: relative;
    background-color: #f0efeb;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    display: block;
    max-width: initial;

    img {
      position: absolute;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
  }

  .swiper {
    width: 100%;
    position: relative;
    padding-top: 118.75%;
    overflow: hidden;
    background: #f0efeb;

    .swiper-wrapper {
      position: absolute;
      inset: 0;
    }

    .swiper-slide {
      height: 100%;
      width: 100% !important;

      img,
      a {
        outline: none;
        user-select: none;
      }
    }

    .product-card__link {
      z-index: 2;
    }
  }

  .product-card-footer {
    width: 100%;
    overflow: hidden;

    flex: 1;
    * {
      font-size: 0.7rem;
      @media screen and (min-width: 768px) {
        font-size: 0.8rem;
      }
    }

    h4 {
      display: flex;
      width: 100%;
      justify-content: space-between;
      align-items: center;

    }

    a {
      text-transform: initial;
      display: block;
      width: 100%;
      justify-content: space-between;
      max-width: 100%;
      padding-right: 10px;
      gap: 10px;

      @media (min-width: 768px) {
        display: flex;
      }

      span {
        span {
          /*@media screen and (min-width: 768px) {*/
          /*  white-space: nowrap;*/
          /*}*/
          &:first-child {
            text-transform: uppercase;
          }
        }
      }

      &:after {
        display: none;
      }
    }
  }

  .card-info-color {
    @media (max-width: 767px) {
      display: none;
    }
  }
}

.product-section-block__wishlist {
  &:after {
    opacity: 0;
    visibility: visible;
  }

  &:hover {
    &:after {
      visibility: visible;
      opacity: 1 !important;
    }
  }
}

.product-section-block__subheading {
  padding: 3px 0 10px;
  font-size: 1rem;
}

.product__color-box {
  .check__box {
    border-radius: 0;
    width: 30px;
    height: 20px;
  }

  .option {
    width: 30px;
    height: 20px;
    &:before {
      border-radius: 0;
      border: none;
      height: 1.5px;
      background-color: black;
      inset: initial;
      bottom: -5px;
      left: 0;
      right: 0;
    }
  }
}

.image-wrapper {
  position: relative;

  &.image-absolute {
    position: absolute;
    width: 100%;
    inset: 0;
  }

  .image-wrapper--mobile-image {
    height: 100%;
    @media (min-width: 768px) {
      display: none;
    }
    + * {
      @media (max-width: 767px) {
        display: none;
      }
    }
  }

  img {
    position: absolute;
    inset: 0;
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
  }
}

.shopify-section {
  &:not(:first-child) {
    --section-height: 90vh;
  }
}

.content-section {
  overflow: hidden;
  background-color: #F0EFEBFF;

  .content-section__container {
    @media (min-width: 1024px) {
      display: grid;
      grid-auto-flow: column;
      grid-auto-columns: 1fr;
    }

    a {
      display: block;
      position: relative;
      cursor: pointer;
      font-size: 14px;
      align-self: stretch;
      flex-basis: auto;
      flex-shrink: 0;
      font-weight: 400;
      line-height: 18px;
      overflow-wrap: break-word;
      letter-spacing: -0.5px;

      &.image-wrapper {
        display: contents;
        &:after {
          display: none;
        }
      }
    }

    p {
      margin: 0;
      padding: 0;
      font-style: inherit;
      font-family: inherit;
      text-decoration: inherit;
      text-align: inherit;
      text-transform: inherit;
      color: inherit;
      line-height: inherit;
      letter-spacing: inherit;
      border: 0;
      font-weight: inherit;
      vertical-align: baseline;
      font-size: 100%;
      -moz-text-size-adjust: none;
      -webkit-text-size-adjust: none;
      text-size-adjust: none;
      -ms-overflow-style: none;
      scrollbar-width: none;
    }

    .content-section__column {
      position: relative;
      height: var(--section-height);
      display: flex;
      flex-direction: column;
      justify-content: end;
      min-width: 0;
      min-height: 0;
      overflow: hidden;

      @media (max-width: 767px) {
        max-height: 600px;
      }

      .image-wrapper {
        height: 100%;
      }

      &:nth-child(2):not(.content-section__column--right) {
        @media (max-width: 1023px) {
          display: none;
        }
      }

      .content-section__headline {
        font-size: 2.3rem;
        text-transform: none;
      }

      .content-section__caption {
        padding-bottom: 10px;
      }

      .content-section__content {
        height: 100%;
        position: relative;
        z-index: 2;
        padding-inline: 16px;
        padding-block: 30px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;

        @media (min-width: 768px) {
          padding-block: 5vh;
          padding-inline: 30px;
        }

        * {
          color: var(--text-color);
        }
      }

      .content-section__botton-content {
        display: grid;
        gap: 10px;
      }
    }
  }
}

.section--best-seller_v2 {
  basic-gallery {
    display: block;
    height: 100%;
  }

  .swiper {
    height: 100%;

    .carousel__arrows {
      button {
        padding: 20px;
        width: 50px;
        svg {
          width: 100%;
          height: auto;
        }
      }
    }
  }
}

.quickbuy-inline {
  &.quickbuy-inline--disable {
    opacity: 0.5;
    pointer-events: none;

    a:after {
      display: none;
    }
  }
}

.product-card-inline.product-card--padding,
.product-card-inline .product-card--padding {
  padding-block: 30px;
  padding-inline: 16px;

  @media (min-width: 768px) {
    padding-block: 5vh;
    padding-inline: 30px;
  }
}

.product-card-inline {
  height: 100%;
  display: flex;
  flex-direction: column;

  .product-card-inline--image {
    display: block;
    position: relative;
    flex: 1;
  }

  .product-card-inline--top {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
  }

  .product-card-inline--footer {
    display: grid;
    gap: 10px;

    > a {
      display: contents;
      &:after {
        display: none;
      }
    }

    .card-info-color {
      text-transform: none;
    }
  }
}

.flex {
  display: flex !important;
  width: 100%;
}
.justify-between {
  justify-content: space-between;
}