.search {
  width: 100%;
}

.search__wrapper {
  background: var(--background-primary);
  color: var(--color-primary);
}

.search__wrapper--padding-top {
  padding-top: var(--padding-top-mobile, 0);
}

.search__wrapper--padding-bottom {
  padding-bottom: var(--padding-bottom-mobile, 0);
}

.search__message {
  text-align: center;
  color: var(--color-outline);
  font-weight: var(--font-weight-medium);
  font-size: calc(var(--font-size-regular) - 2px);
  padding-bottom: 42px;
}

.search-results {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(245px, 1fr));
  gap: 18px;
  justify-content: center;
}

.search__carousel {
  margin-bottom: 40px;
}

.search__grid {
  font-size: var(--font-size-regular);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-lg);
}

.search__wrapper > .search-results,
.search__wrapper > .search__grid {
  padding: 0 16px;
}

.search-results .product-card {
  min-width: auto;
}

@media (min-width: 768px) {
  .search-results {
    justify-content: start;
    gap: 24px;
  }
}

@media (min-width: 992px) {
  .search__wrapper--padding-top {
    padding-top: var(--padding-top, 0);
  }

  .search__wrapper--padding-bottom {
    padding-bottom: var(--padding-bottom, 0);
  }

  .search__grid {
    display: grid;
    grid-template-columns: minmax(200px, 23.25%) 1fr;
    gap: 0 5.07%;
    grid-template-areas:
      "sidebar grid"
      "pagination pagination";
  }

  .search__grid .search__sidebar {
    grid-area: sidebar;
  }

  .search__grid .search__pagination {
    grid-area: pagination;
  }

  .search__wrapper > .search-results,
  .search__wrapper > .search__grid {
    padding: 0 24px;
  }

  .search__wrapper .product-card__vision:after {
    aspect-ratio: 1 / 0.975;
  }

  .search__container .product-card__vision:after {
    aspect-ratio: 1 / 1.036;
  }

  .search__wrapper-three .product-card__vision:after {
    aspect-ratio: 1 / 1.407;
  }

  .search__wrapper-three .search__container .product-card__vision:after {
    aspect-ratio: 1 / 1.2825;
  }

  .search__wrapper-four .product-card__vision:after {
    aspect-ratio: 1 / 1.275;
  }

  .search__wrapper-four .search__container .product-card__vision:after {
    aspect-ratio: 1 / 1.32155;
  }
}

@media (min-width: 1080px) {
  .search-results {
    gap: 20px 32px;
    grid-template-columns: repeat(var(--grid-element), minmax(210px, 1fr));
  }
}
