.template-collection-section {
  overflow-x: hidden;
  overflow-x: clip;
}

.collection-banner-wrapper {
  margin-bottom: calc(2rem * var(--body-scale));
}

.collection-banner-wrapper.has-banner-background {
  position: relative;
  z-index: 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.collection-banner-wrapper.has-banner-background::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background-color: rgb(var(--overlay-background) / calc(var(--_overlay-opacity, 0) / 100));
}

.collection-banner-wrapper.has-banner-background > .wrapper {
  position: relative;
  z-index: 1;
}

.collection-banner-wrapper .banner-inner-wrapper {
  --_banner-col-gap: calc(2rem * var(--body-scale));
  display: flex;
  justify-content: space-between;
  column-gap: var(--_banner-col-gap);
  row-gap: calc(2rem * var(--body-scale));
  align-items: center;
}

.collection-banner-wrapper .text-container {
  width: calc(var(--_text-width, 85%) - var(--_banner-col-gap));
  flex-grow: 1;
}

.collection-banner-wrapper .text-container .breadcrumbs-wrapper {
  margin-bottom: calc(0.5rem * var(--body-scale));
}

.collection-banner-wrapper .banner-title:not(:last-child) {
  margin-bottom: 0.375em;
}

.collection-banner-wrapper .media-container {
  flex-shrink: 0;
  width: min(var(--_image-width, 15%), 100%);
}

.collection-banner-wrapper .media-container img {
  width: 100%;
}

@media(max-width: 991.98px) {
  .collection-banner-wrapper .banner-inner-wrapper {
    flex-wrap: wrap;
  }

  .collection-banner-wrapper .text-container {
    --_text-width: 60%;
  }
}

@media(max-width: 767.98px) {
  .collection-banner-wrapper .text-container {
    --_text-width: 75%;
  }
}

@media(max-width: 639.98px) {
  .collection-banner-wrapper .text-container {
    --_text-width: 100%;
  }
}

@media(min-width: 1024px) {
  .collection-banner-wrapper .text-container:not(:only-child) {
    max-width: 65%;
  }
}

/* Collection banner - END */
/* Product result - START */
.main-collection__products .product-result-head,
.main-collection__products .product-result-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: calc(0.625rem * var(--body-scale));
}

.main-collection__products .product-result-head {
  margin-bottom: calc(1rem * var(--body-scale));
}

.main-collection__products .product-result-footer {
  margin-top: calc(2rem * var(--body-scale));
}

.main-collection__products .product-result-head .pagination,
.main-collection__products .product-result-footer .pagination {
  margin-inline-start: auto;
}

@media (max-width: 959px) {

  .main-collection__products .product-result-head,
  .main-collection__products .product-result-footer {
    flex-direction: column;
    justify-content: center;
    gap: calc(1rem * var(--body-scale));
  }

  .main-collection__products .product-result-head .pagination,
  .main-collection__products .product-result-footer .pagination {
    margin-inline-start: 0;
  }
}

.main-collection__products .product-result-grid {
  --_column-spacer: 0.875rem;
  --_column-row-spacer: 2rem;
}

.main-collection__products .empty-result-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  min-height: min(400px, 100%);
  padding-block: calc(2rem * var(--body-scale));
  padding-inline: calc(4rem * var(--body-scale));
}

/* Product result - END */
/* Product content wrapper / main-collection grid - START */
.main-collection-container {
  max-width: calc(var(--page-width, 1440) * 1px) !important;
  margin-inline: auto !important;
  padding-inline: var(--wrapper-padding) !important;
}

.main-collection__no-products-tips {
  color: rgb(var(--color-text));
}

.main-collection__list {
  list-style: none;
  padding: 0;
  margin-block-end: calc(2.5rem * var(--body-scale));
}

.product-content-wrapper .main-collection {
  margin-top: calc(2rem * var(--body-scale));
}

.product-content-wrapper .filter-head+.filter-active-wrapper {
  margin-top: calc(0.625rem * var(--body-scale));
}

@media (min-width: 1024px) {
  .main-collection {
    display: grid;
  }

  .main-collection .main-collection__products {
    grid-area: list;
  }

  .main-collection .facets-filtering {
    grid-area: filtering;
  }

  .main-collection .facets-sorting {
    grid-area: sorting;
  }

  .main-collection .facets-count {
    grid-area: count;
  }

  /* Horizontal layout */
  .main-collection.facets-layout-horizontal {
    grid-template:
      "filtering sorting count"
      "list list list" /
      1fr auto auto;
    row-gap: calc(2.5rem * var(--body-scale));
  }

  /* Vertical layout (no filter sidebar) */
  .main-collection.facets-layout-vertical {
    grid-template:
      "count count sorting" 10px
      "list list list" /
      calc(16rem * var(--body-scale)) auto auto;
    row-gap: calc(2.5rem * var(--body-scale));
  }

  /* Vertical layout (with filter sidebar) */
  .main-collection.facets-layout-vertical.enable-filtering {
    grid-template:
      "filtering count sorting" 10px
      "filtering list list" /
      calc(16rem * var(--body-scale)) auto auto;
    gap: calc(2.5rem * var(--body-scale));
  }

  .main-collection.facets-layout-vertical.enable-filtering .filter-wrapper {
    flex-shrink: 0;
  }

  /* Drawer layout */
  .main-collection.facets-layout-drawer {
    grid-template:
      "filtering sorting count"
      "list list list" /
      1fr auto auto;
    row-gap: calc(2.5rem * var(--body-scale));
  }
}

/* Product content wrapper / main-collection grid - END */
