/* Homepage bestsellers — Figma node 9292:5925 (1920 desktop). */
.bestsellersSec:not(.ecoCollectionSec) {
  display: block;
  min-height: 0;
  height: auto;
  padding: 80px;
  overflow: visible;
  background: #fff;
  box-sizing: border-box;
}

.bestsellersSec:not(.ecoCollectionSec) > .container {
  width: 100%;
  max-width: none;
  padding: 0;
  box-sizing: border-box;
}

.bestsellersSec:not(.ecoCollectionSec) .heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  width: 100%;
  min-height: 106px;
  margin: 0 0 44px;
  padding: 0 32px;
  box-sizing: border-box;
}

.bestsellersSec:not(.ecoCollectionSec) .heading .left {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}

.bestsellersSec:not(.ecoCollectionSec) .bestsellersEyebrow {
  color: #30a67f;
  font-family: Lato, sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 12px;
  letter-spacing: 0.2px;
  text-transform: uppercase;
}

.bestsellersSec:not(.ecoCollectionSec) .heading h2 {
  margin: 0;
  color: #363635;
  font-family: "Noto Sans", sans-serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 42px;
  letter-spacing: -0.2px;
  text-transform: capitalize;
}

.bestsellersSec:not(.ecoCollectionSec) .heading p {
  margin: 0;
  color: #000;
  font-family: Lato, sans-serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 36px;
  letter-spacing: 0.52px;
}

.bestsellersSec:not(.ecoCollectionSec) .heading .desktopCollectionCopy {
  display: block;
}

.bestsellersSec:not(.ecoCollectionSec) .heading .mobileCollectionCopy {
  display: none;
}

.bestsellersSec:not(.ecoCollectionSec) .btnLinkWrap {
  flex: 0 0 auto;
  margin: 0;
}

.bestsellersSec:not(.ecoCollectionSec) .btnLinkWrap a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: 72px;
  padding: 0 22px;
  gap: 8px;
  border: 0;
  border-radius: 10px;
  color: #30a67f;
  font-family: "Noto Sans", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 20px;
  letter-spacing: 0.2px;
  text-decoration: none;
  background: #e6f4ef;
  box-shadow: none;
  box-sizing: border-box;
}

.bestsellersSec:not(.ecoCollectionSec) .btnLinkWrap a:hover {
  color: #1f8462;
  background: #e0f9f0;
}

.bestsellersSec:not(.ecoCollectionSec) .btnLinkWrap svg {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

.bestsellersSec:not(.ecoCollectionSec) .productList {
  position: relative;
  width: 100%;
  height: auto;
  min-height: 0;
  /* Override style.css `.specialOffersSec .productList` (36px) — it doubled the left gap. */
  padding: 0;
}

.bestsellersSec:not(.ecoCollectionSec) .bestsellerSwiper,
.bestsellersSec:not(.ecoCollectionSec) .productList .bestsellerSwiper {
  position: relative !important;
  width: 100%;
  height: auto;
  min-height: 0;
  /* Same inset as `.heading` so the first card aligns with the title; arrows sit in the gutter. */
  padding: 0 32px 0 !important;
  overflow: hidden;
  box-sizing: border-box;
}

.bestsellersSec:not(.ecoCollectionSec) .bestsellerSwiper .swiper-wrapper {
  height: auto;
  align-items: stretch;
}

.bestsellersSec:not(.ecoCollectionSec) .bestseller-card {
  height: auto;
  border-radius: 30px;
  box-sizing: border-box;
}

.bestsellersSec:not(.ecoCollectionSec) .bestsellerSwiper .product-card {
  display: flex;
  width: 100%;
  max-width: none;
  min-height: 410px;
  height: 100%;
  margin: 0 !important;
  padding: 10px;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  border: 0 !important;
  border-radius: 30px;
  background: transparent !important;
  box-shadow: none !important;
  box-sizing: border-box;
}

.bestsellersSec:not(.ecoCollectionSec) .bestsellerSwiper .swiper-slide-active .product-card,
.bestsellersSec:not(.ecoCollectionSec) .bestsellerSwiper .product-card:hover {
  background: #e6f4ef !important;
  box-shadow: 0 0 6px rgba(54, 54, 53, 0.16) !important;
}

.bestsellersSec:not(.ecoCollectionSec) .product-thumb {
  position: relative;
  width: 100%;
  height: 250px;
  flex: 0 0 250px;
  margin: 0;
  overflow: visible;
  border-radius: 20px;
}

.bestsellersSec:not(.ecoCollectionSec) .product-thumb > a {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 20px;
}

.bestsellersSec:not(.ecoCollectionSec) .product-thumb > a > img {
  width: 100% !important;
  height: 100% !important;
  margin: 0;
  object-fit: cover;
  border-radius: 20px;
}

.bestsellersSec:not(.ecoCollectionSec) .product-icons {
  top: 16px;
  right: 16px;
  gap: 12px;
  width: auto;
  max-width: none;
  align-items: flex-end;
  z-index: 5;
}

.bestsellersSec:not(.ecoCollectionSec) .product-icons .wishlsbn,
.bestsellersSec:not(.ecoCollectionSec) .product-icons .yith-add-to-wishlist-button-block,
.bestsellersSec:not(.ecoCollectionSec) .product-icons .compare-button {
  width: auto;
  height: auto;
  max-width: none;
  background: transparent;
  overflow: visible;
}

/* Figma 9292:5945 / 9292:5946 — 32px chip, 4px pad, 24px icon, radius 20. */
.bestsellersSec:not(.ecoCollectionSec)
  .product-thumb
  .product-icons
  .yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--anchor,
.bestsellersSec:not(.ecoCollectionSec)
  .product-thumb
  .product-icons
  .yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--icon-button,
.bestsellersSec:not(.ecoCollectionSec) .product-thumb .product-icons a.add-to-compare,
.bestsellersSec:not(.ecoCollectionSec) .product-thumb .product-icons a.compare {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  max-width: 32px !important;
  padding: 7px !important;
  border-radius: 20px !important;
  background: rgba(48, 166, 127, 0.8) !important;
  overflow: hidden;
}

.bestsellersSec:not(.ecoCollectionSec)
  .product-thumb
  .product-icons
  .yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--anchor:hover,
.bestsellersSec:not(.ecoCollectionSec)
  .product-thumb
  .product-icons
  .yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--icon-button:hover,
.bestsellersSec:not(.ecoCollectionSec) .product-thumb .product-icons a.add-to-compare:hover,
.bestsellersSec:not(.ecoCollectionSec) .product-thumb .product-icons a.compare:hover {
  width: auto !important;
  max-width: 155px !important;
  overflow: visible !important;
  padding: 7px 12px 7px 7px !important;
}

.bestsellersSec:not(.ecoCollectionSec)
  .product-thumb
  .product-icons
  .yith-wcwl-add-to-wishlist-button
  svg.yith-wcwl-icon-svg,
.bestsellersSec:not(.ecoCollectionSec)
  .product-thumb
  .product-icons
  .yith-wcwl-add-to-wishlist-button
  img,
.bestsellersSec:not(.ecoCollectionSec) .product-thumb .product-icons a.add-to-compare img,
.bestsellersSec:not(.ecoCollectionSec) .product-thumb .product-icons a.compare img {
  width: 18px !important;
  height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
  object-fit: contain;
}

.bestsellersSec:not(.ecoCollectionSec) .title-box {
  display: flex;
  width: 100%;
  min-height: 52px;
  height: auto;
  margin: 0;
  padding: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}

.bestsellersSec:not(.ecoCollectionSec) .product-brand {
  width: 100%;
  margin: 0 !important;
  overflow: hidden;
  color: #30a67f !important;
  font-family: Lato, sans-serif;
  font-size: 12px !important;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0.12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.bestsellersSec:not(.ecoCollectionSec) .product-title {
  display: -webkit-box;
  width: 100%;
  min-height: 0;
  margin: 0;
  overflow: hidden;
  color: #363635;
  font-family: "Noto Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 22px;
  letter-spacing: 0.64px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.bestsellersSec:not(.ecoCollectionSec) .product-title a {
  color: inherit;
  text-decoration: none;
}

.bestsellersSec:not(.ecoCollectionSec) .offer-row,
.bestsellersSec:not(.ecoCollectionSec) .loop-action-box,
.bestsellersSec:not(.ecoCollectionSec) .product-share-overlay,
.bestsellersSec:not(.ecoCollectionSec) img.sharepro {
  display: none !important;
}

.bestsellersSec:not(.ecoCollectionSec) .price-line {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  width: 100%;
  height: auto;
  min-height: 16px;
  margin: 0;
  color: #363635;
  line-height: 16px;
}

.bestsellersSec:not(.ecoCollectionSec) .price-line a {
  color: #363635;
  font-family: "Noto Sans", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 16px;
  letter-spacing: 0.22px;
  text-decoration: none;
  white-space: nowrap;
}

.bestsellersSec:not(.ecoCollectionSec) .price-line .price-decimal,
.bestsellersSec:not(.ecoCollectionSec) .price-line .sqm {
  display: inline !important;
  position: relative;
  top: -4px;
  font-size: 14.19px;
  line-height: 1;
  vertical-align: baseline;
}

.bestsellersSec:not(.ecoCollectionSec) .bestseller-regular-price {
  display: inline-flex !important;
  align-items: baseline;
  color: #444441;
  font-family: Lato, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 10px;
  letter-spacing: 0.2px;
  opacity: 0.6;
  white-space: nowrap;
  text-decoration: line-through;
}

.bestsellersSec:not(.ecoCollectionSec) .bestseller-regular-price .woocommerce-Price-amount,
.bestsellersSec:not(.ecoCollectionSec) .bestseller-regular-price bdi {
  font-weight: 400;
}

.bestsellersSec:not(.ecoCollectionSec) .swatches {
  width: 100%;
  min-height: 28px;
  margin: 0;
}

.bestsellersSec:not(.ecoCollectionSec) .product-swatches {
  display: flex;
  min-height: 28px;
  align-items: center;
  gap: 16px;
  flex-wrap: nowrap;
}

.bestsellersSec:not(.ecoCollectionSec) .product-swatches .swatch,
.bestsellersSec:not(.ecoCollectionSec) .product-swatches .swatch a,
.bestsellersSec:not(.ecoCollectionSec) .product-swatches .swatch img {
  display: block;
  width: 28px;
  height: 28px;
  margin: 0;
  border-radius: 50%;
}

.bestsellersSec:not(.ecoCollectionSec) .product-swatches .swatch img {
  border: 1px solid rgba(54, 54, 53, 0.25);
  object-fit: cover;
}

.bestsellersSec:not(.ecoCollectionSec) .more-swatches,
.bestsellersSec:not(.ecoCollectionSec) .more-swatches a {
  margin-left: 0;
  color: rgba(68, 68, 65, 0.6);
  font-family: Lato, sans-serif;
  font-size: 12px;
  line-height: 20px;
  letter-spacing: 0.12px;
  white-space: nowrap;
  text-decoration: none;
}

.bestsellersSec:not(.ecoCollectionSec) .swiper-button-prev,
.bestsellersSec:not(.ecoCollectionSec) .swiper-button-next {
  top: 50%;
  transform: translateY(-50%);
  margin-top: -33px;
  width: 34px;
  height: 34px;
  margin-left: 0;
  margin-right: 0;
  background: center / 34px 34px no-repeat;
  z-index: 4;
}

.bestsellersSec:not(.ecoCollectionSec) .swiper-button-prev {
  left: 4px !important;
  background-image: url("../images/arrow_left-circle-gray.png");
}

.bestsellersSec:not(.ecoCollectionSec) .swiper-button-next {
  right: 4px !important;
  background-image: url("../images/arrow_left-circle.png");
}

.bestsellersSec:not(.ecoCollectionSec) .swiper-button-prev::after,
.bestsellersSec:not(.ecoCollectionSec) .swiper-button-next::after {
  display: none !important;
  content: none !important;
}

/* Figma 9292:6195 — desktop pagination: all dots 16×16, 6px gap, 44px above */
@media (min-width: 981px) {
  .bestsellersSec.specialOffersSec:not(.ecoCollectionSec) .productList .swiper-pagination,
  .bestsellersSec:not(.ecoCollectionSec) .bestsellerSwiper .swiper-pagination {
    position: relative !important;
    bottom: auto !important;
    left: 0;
    right: 0;
    display: flex !important;
    width: 100%;
    height: 16px;
    margin: 44px 0 0 !important; /* Frame 257 → Frame 1209 gap in Figma */
    padding: 0;
    align-items: center;
    justify-content: center;
    gap: 6px;
    line-height: 0;
  }

  .bestsellersSec.specialOffersSec:not(.ecoCollectionSec)
    .productList
    .swiper-pagination
    span.swiper-pagination-bullet,
  .bestsellersSec:not(.ecoCollectionSec)
    .bestsellerSwiper
    .swiper-pagination
    span.swiper-pagination-bullet,
  .bestsellersSec.specialOffersSec:not(.ecoCollectionSec)
    .productList
    .swiper-pagination
    span.swiper-pagination-bullet.swiper-pagination-bullet-active,
  .bestsellersSec:not(.ecoCollectionSec)
    .bestsellerSwiper
    .swiper-pagination
    span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    display: block;
    width: 16px !important;
    min-width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
    flex: 0 0 16px !important;
    border-radius: 50% !important;
    opacity: 1 !important;
    transform: none !important;
    transition: background-color 0.25s ease;
  }

  .bestsellersSec.specialOffersSec:not(.ecoCollectionSec)
    .productList
    .swiper-pagination
    span.swiper-pagination-bullet,
  .bestsellersSec:not(.ecoCollectionSec)
    .bestsellerSwiper
    .swiper-pagination
    span.swiper-pagination-bullet {
    background: #ebebea !important; /* Background/Neutral/Tertiary */
  }

  .bestsellersSec.specialOffersSec:not(.ecoCollectionSec)
    .productList
    .swiper-pagination
    span.swiper-pagination-bullet.swiper-pagination-bullet-active,
  .bestsellersSec:not(.ecoCollectionSec)
    .bestsellerSwiper
    .swiper-pagination
    span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #30a67f !important; /* Background/Brand/Primary */
  }
}

.bestsellersSec:not(.ecoCollectionSec) .swiper-pagination {
  bottom: auto !important;
  left: 0;
  right: 0;
  display: flex;
  height: 16px;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.bestsellersSec:not(.ecoCollectionSec) .swiper-pagination .swiper-pagination-bullet,
.bestsellersSec:not(.ecoCollectionSec) .swiper-pagination .swiper-pagination-bullet-active {
  width: 16px;
  height: 16px;
  margin: 0 !important;
  opacity: 1;
  border-radius: 50%;
}

.bestsellersSec:not(.ecoCollectionSec) .swiper-pagination .swiper-pagination-bullet {
  background: #ebebea;
}

.bestsellersSec:not(.ecoCollectionSec) .swiper-pagination .swiper-pagination-bullet-active {
  background: #30a67f;
}

/* Mid desktop — keep 7-up layout readable between 1440–1919 */
@media (min-width: 981px) and (max-width: 1599px) {
  .bestsellersSec:not(.ecoCollectionSec) {
    padding: 64px;
  }

  .bestsellersSec:not(.ecoCollectionSec) .heading {
    padding: 0 16px;
    margin-bottom: 36px;
  }

  .bestsellersSec:not(.ecoCollectionSec) .bestsellerSwiper {
    padding: 0 16px 0 !important;
  }
}

@media (min-width: 981px) and (max-width: 1279px) {
  .bestsellersSec:not(.ecoCollectionSec) {
    padding: 56px 40px;
  }

  .bestsellersSec:not(.ecoCollectionSec) .heading {
    padding: 0;
    margin-bottom: 32px;
  }

  .bestsellersSec:not(.ecoCollectionSec) .heading h2 {
    font-size: 32px;
    line-height: 38px;
  }

  .bestsellersSec:not(.ecoCollectionSec) .heading p {
    font-size: 18px;
    line-height: 28px;
  }

  .bestsellersSec:not(.ecoCollectionSec) .btnLinkWrap a {
    height: 56px;
    padding: 0 18px;
    font-size: 18px;
  }

  .bestsellersSec:not(.ecoCollectionSec) .bestsellerSwiper {
    padding: 0 !important;
  }
}

@media (max-width: 980px) and (min-width: 600px) {
  .bestsellersSec:not(.ecoCollectionSec) {
    min-height: 0;
    padding: 48px 24px;
  }

  .bestsellersSec:not(.ecoCollectionSec) .heading {
    min-height: 0;
    margin-bottom: 32px;
    padding: 0;
    align-items: flex-start;
  }

  .bestsellersSec:not(.ecoCollectionSec) .heading h2 {
    font-size: 30px;
    line-height: 38px;
  }

  .bestsellersSec:not(.ecoCollectionSec) .heading p {
    font-size: 18px;
    line-height: 28px;
  }

  .bestsellersSec:not(.ecoCollectionSec) .heading .btnLinkWrap {
    display: none;
  }

  .bestsellersSec:not(.ecoCollectionSec) .bestsellerSwiper {
    padding: 0 0 56px;
    overflow: hidden;
  }

  .bestsellersSec:not(.ecoCollectionSec) .swiper-button-prev,
  .bestsellersSec:not(.ecoCollectionSec) .swiper-button-next {
    display: none;
  }
}

/* Mobile ≤599px is owned by mobile-homepage.css (Figma 9292:8568). */

/* Shared card chrome for Bestsellers + Eco Collection carousels */
.bestsellersSec .offer-row,
.bestsellersSec .loop-action-box,
.bestsellersSec .product-share-overlay,
.bestsellersSec img.sharepro {
  display: none !important;
}

.bestsellersSec .product-icons {
  z-index: 5;
}

.bestsellersSec .product-icons .wishlsbn,
.bestsellersSec .product-icons .yith-add-to-wishlist-button-block,
.bestsellersSec .product-icons .compare-button {
  width: auto;
  height: auto;
  max-width: 155px;
}

.bestsellersSec .swiper-button-prev::after,
.bestsellersSec .swiper-button-next::after {
  display: none;
}

.bestsellersSec .swiper-pagination .swiper-pagination-bullet {
  opacity: 1;
  background: #ebebea;
}

.bestsellersSec .swiper-pagination .swiper-pagination-bullet-active {
  background: #30a67f;
}

.bestsellersSec .product-swatches .swatch,
.bestsellersSec .product-swatches .swatch a,
.bestsellersSec .product-swatches .swatch img {
  display: block;
  width: 28px;
  height: 28px;
  margin: 0;
  border-radius: 50%;
}

.bestsellersSec .product-swatches .swatch img {
  border: 1px solid rgba(54, 54, 53, 0.25);
  object-fit: cover;
}
