.catalog {
  margin-bottom: 43px;
}

.catalog-title {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 16px;
}

.catalog-desc {
  text-align: center;
  font-size: 15px;
  font-weight: 400;
  line-height: 23px;
  margin-bottom: 17px;
}

.catalog-pricesvars {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 23px;
  margin-bottom: 30px;
}

[data-pricevar] {
  color: #7C7E81;
  font-size: 15px;
  font-weight: 400;
  line-height: normal;
}
[data-pricevar] sup {
  font-size: 10px;
}
[data-pricevar].current {
  color: #000;
}

.catalog-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 18px 14px;
}

.catalog-filter.current {
  background: #FF6569;
  color: #fff;
  transition: all 0.12s linear;
}

.catalog-wrapper {
  margin-top: 15px;
}

.product-card[data-hint] {
  position: relative;
}
.product-card[data-hint]::after {
  position: absolute;
  content: attr(data-hint);
  border-radius: 20px;
  background: #FF6569;
  padding: 4px 12px;
  color: #FFF;
  left: 0px;
  top: 17px;
  text-align: center;
  font-size: 12px;
  font-weight: 600;
  line-height: normal;
  z-index: 100;
}

.product-card__photos {
  margin-bottom: 40px;
}
.product-card__photos .swiper-pagination-bullet {
  --swiper-pagination-bullet-width: 6px;
  --swiper-pagination-bullet-height: 6px;
  --swiper-pagination-color: #FF6569;
  --swiper-pagination-bullet-inactive-color: #EDEEE9;
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 5px;
}

.swiper.product-card__photo {
  min-width: 0;
  margin-bottom: 10px;
  max-height: 260px;
}
.swiper.product-card__photo .swiper-slide {
  height: 250px;
}
.swiper.product-card__photo .swiper-slide picture {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 20px;
}
.swiper.product-card__photo .swiper-slide picture img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.product-card__photosnav.swiper-pagination-bullets.swiper-pagination-horizontal {
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-card__name {
  color: #000;
  font-size: 18px;
  font-weight: 600;
  line-height: normal;
  margin-bottom: 20px;
}

.product-card__adds {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.stock-hint {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 30px;
  color: #55595C;
  font-size: 13px;
  font-weight: 400;
  line-height: 15px;
  padding: 7px 15px;
}
.stock-hint.in-stock {
  background: rgba(128, 165, 132, 0.05);
}
.stock-hint.in-stock::before {
  display: flex;
  font-family: "icons";
  content: "\e901";
  color: #80a584;
  font-size: 7px;
}
.stock-hint.no-stock {
  background: rgba(255, 101, 105, 0.05);
}
.stock-hint.no-stock::before {
  display: flex;
  font-family: "icons";
  content: "\e914";
  color: #ff6569;
  font-size: 13px;
}

.product-card__prices {
  display: flex;
  align-items: center;
}
.product-card__prices sup {
  font-size: 10px;
}

.product-price {
  color: #7C7E81;
  font-size: 13px;
  font-weight: 400;
  line-height: normal;
  display: none;
}
.product-price.current {
  display: block;
}
.product-price strong {
  color: #000;
  font-family: var(--lato);
  font-size: 20px;
  font-weight: 700;
  line-height: normal;
}
.product-price span {
  color: #000;
  font-size: 15px;
  font-weight: 400;
  line-height: normal;
}
.product-price[data-oldprice] {
  position: relative;
}
.product-price[data-oldprice].current {
  display: flex;
  align-items: baseline;
}
.product-price[data-oldprice]::before {
  display: block;
  content: attr(data-oldprice);
  color: #FF6569;
  font-family: var(--lato);
  font-size: 16px;
  font-weight: 700;
  line-height: normal;
  margin-right: 10px;
  text-decoration: line-through;
}

.product-card__specrow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2px;
}
.product-card__specrow > span {
  color: #7C7E81;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}
.product-card__specrow p {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}
.product-card__specrow:not(:last-child) {
  margin-bottom: 10px;
}

.product-card__opts {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-top: 17px;
}

.pagination {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px 38px;
  margin-top: 40px;
}

.pagination-pages {
  order: 3;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.pagination-pages .pagination-pages-list {
  display: flex;
  align-items: center;
}

.page {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--lato);
  width: 42px;
  height: 42px;
  border-radius: 50%;
  font-size: 19px;
  font-weight: 700;
  line-height: normal;
  color: #1F1F1F;
  text-decoration: none;
}
.page:hover, .page.current-page {
  background: #7C7E81;
  color: #fff;
}

.page-sep {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 42px;
  border-radius: 50%;
  font-size: 19px;
  font-weight: 700;
  line-height: normal;
  color: #1F1F1F;
  text-decoration: none;
}

.page-siglelink {
  color: #1F1F1F;
  font-size: 15px;
  font-weight: 400;
  line-height: normal;
  text-decoration-color: transparent;
}
.page-siglelink.prev-link {
  order: 1;
}
.page-siglelink.next-link {
  order: 2;
}

@media screen and (min-width: 600px) {
  .catalog-title {
    font-size: 24px;
    margin-bottom: 16px;
  }
  .catalog-desc {
    font-size: 16px;
    line-height: 26px;
  }
  .catalog-pricesvars {
    margin-bottom: 40px;
  }
  [data-pricevar] {
    font-size: 16px;
  }
  .catalog-filters {
    gap: 20px 26px;
  }
  .catalog-wrapper {
    margin-top: 22px;
  }
  .product-card__photos {
    margin-bottom: 0px;
    width: 250px;
  }
  .swiper.product-card__photo .swiper-slide picture {
    padding: 0;
  }
  .product-card {
    display: flex;
    gap: 36px;
  }
  .product-card:not(:last-child) {
    margin-bottom: 40px;
  }
  .product-card__base {
    padding-top: 16px;
  }
  .product-card__name {
    font-size: 19px;
  }
  .product-card__adds {
    margin-bottom: 15px;
  }
  .product-card__specrow:not(:last-child) {
    margin-bottom: 5px;
  }
  .pagination {
    gap: 20px 45px;
    margin-top: 45px;
  }
  .pagination-pages {
    order: 2;
    width: auto;
  }
  .page-siglelink.prev-link {
    order: 1;
  }
  .page-siglelink.next-link {
    order: 3;
  }
}
@media screen and (min-width: 1024px) {
  .catalog-title {
    font-size: 32px;
    margin-bottom: 18px;
  }
  .catalog__container {
    max-width: 744px;
  }
  .catalog-desc {
    font-size: 17px;
    line-height: 26px;
    margin-bottom: 22px;
  }
  .catalog-pricesvars {
    margin-bottom: 60px;
    gap: 40px;
  }
  [data-pricevar] {
    font-size: 17px;
  }
  .catalog-filters {
    justify-content: center;
    gap: 18px 38px;
  }
  .catalog-wrapper {
    margin-top: 60px;
  }
  .product-card__photos {
    margin-bottom: 0px;
    width: 250px;
  }
  .swiper.product-card__photo .swiper-slide picture {
    padding: 0;
  }
  .product-card {
    display: flex;
    gap: 36px;
  }
  .product-card:not(:last-child) {
    margin-bottom: 40px;
  }
  .product-price[data-oldprice]::before {
    font-size: 20px;
  }
  .product-card__base {
    padding-top: 16px;
  }
  .product-card__name {
    font-size: 22px;
    margin-bottom: 14px;
  }
  .product-price strong {
    font-size: 24px;
  }
  .product-price span {
    font-size: 17px;
  }
  .product-card__adds {
    margin-bottom: 18px;
  }
  .product-card__specrow > span {
    font-size: 15px;
  }
  .product-card__specrow > p {
    font-size: 15px;
  }
  .product-card__specrow:not(:last-child) {
    margin-bottom: 14px;
  }
  .product-card__opts {
    margin-top: 30px;
    align-items: flex-start;
  }
  .pagination {
    margin-top: 54px;
  }
}
@media screen and (min-width: 1366px) {
  .catalog__container {
    max-width: 1540px;
  }
  .catalog-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(520px, 1fr));
    gap: 92px;
  }
  .product-card:not(:last-child) {
    margin-bottom: 0px;
  }
  .product-card__adds {
    margin-bottom: 16px;
  }
  .product-card__specrow:not(:last-child) {
    margin-bottom: 11px;
  }
  .page-siglelink:hover {
    text-decoration-color: inherit;
    transition: all 0.12s linear;
  }
  .pagination {
    margin-top: 82px;
  }
}