@font-face {
  font-family: 'TT Lakes';
  src: url('./fonts/TTLakes.zip-Regular.woff2') format('woff2'),
       url('./fonts/TTLakes.zip-Regular.woff') format('woff'),
       url('./fonts/TTLakes.zip-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  }
  body {
  font-family: Arial, sans-serif;
  padding: 0;
  background: #f8f8f8;
}

@media (min-width: 320px) and (max-width: 767px){
.brands__toggle {display: none;}
  .brands {
  max-width: 320px;
  margin: 0 auto;
}
.brands__list {
  display: flex !important;
  gap: 12px;
}
.brands__title {
  font-size: 16px;
  font-weight: 500;
  color: #7a7a7a;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.swiper {
  width: 100%;
  height: 100%;
  position: relative !important;
  padding-bottom: 24px; /* место для пагинации */
}

.swiper-slide {
  flex: 0 0 auto;      /* важно для slidesPerView: 1.2 */
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  width: 240px; /* фиксированная ширина для 320px */
  padding: 12px 16px;
  background: #fff;
  border-radius: 12px;
  border: 1px solid #ddd;
}

.brand-card button {
  width: 32px;
  height: 32px;
  border: 1px solid #ff004d;
  border-radius: 50%;
  background: none;
  color: #ff004d;
  cursor: pointer;
}

.brand-card button:hover {
  background: #ff3366;
  color: #fff;
}

.swiper-pagination {
  position: absolute !important;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 10;
}

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #9b9898;
  display: inline-block !important;
  margin: 0 4px;
}

.swiper-pagination-bullet-active {
  background: #666565;
}
.brand-card {
  flex: 0 0 240px;      /* фиксированная одинаковая ширина */
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  background: #fff;
  border-radius: 12px;
  border: 1px solid #ddd;
  box-sizing: border-box;
}

.brand-card img {
  max-height: 32px;
  width: auto;
  object-fit: contain;
  margin: 0 auto;
}
}

@media (min-width: 768px) and (max-width: 1119px) {
  .swiper-pagination {display: none;}
  .brands {
  max-width: 768px;
  margin: 0 auto;
  display: block;
}
.swiper-wrapper {
    display: contents !important; /* отключаем слайдер, используем только сетку */
    transform: none;
  }
.swiper-slide {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  width: 768px; /* фиксированная ширина для 768px */
  background: #fff;
  border-radius: 12px;
  border: 1px solid #ddd;
}
.brands__list {
  margin-top: 20px;
  padding: 0 5px;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr); /* 3 в ряд */
  grid-template-rows: repeat(2, auto);   /* 2 ряда */
  gap: 8px;
}
.brands__title {
  margin-top: 20px;
  padding: 0 20px;
  font-size: 16px;
  font-weight: 500;
  color: #7a7a7a;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.brand-card button { 
  width: 30px;
  height: 30px;
  min-width: 30px;   
  min-height: 30px;  
  margin-left: 8px;
  display: flex;     
  align-items: center;
  justify-content: center;
  font-size: 12px;
  line-height: 1;
  border: 1px solid #ff004d;
  border-radius: 50%;
  background: none;
  color: #ff004d;
  cursor: pointer;
  box-sizing: border-box; /* чтобы border не менял размер */
  }
  
.brand-card button:hover { 
  background: #ff3366; 
  color: #fff; 
}

.brand-card {
  display: flex !important;
  align-items:center;
  justify-content:space-between;
  padding: 12px 16px;
  border: 1px solid #ddd;
  border-radius: 12px;
  background-color: #fff;
  width: auto;         
  height: 72px;
  box-sizing: border-box;
}
.brand-card img {
  padding: 0;
  max-height: 32px;
  width: auto;
  object-fit: contain;
}
.brands__list .brand-card:nth-child(n+7) {
    display: none !important; /*скрывает лишние элементы*/
  }
  .brands__list .brand-card.show {
  display: flex !important;
  
}

/* Кнопка и стрелка */
.brands__toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 700;
  color: #1b1c21;
  background: none;
  border: none;
  margin-top: 16px;
  padding: 0;
  white-space: nowrap;
  cursor: pointer;
  transition: color 0.3s ease;
}

.button__icon {
  width: 30px;
  height: 30px;
  fill: #41f6d7;
  transition: transform 0.3s ease, fill 0.3s ease;
}
.brands__toggle.open .button__icon {
  transform: rotate(180deg);
    }
  .brands__toggle:hover {
  display: inline-flex;
}
}

@media (min-width: 1120px) {
  .swiper-pagination {display: none;}
  .brands {
  max-width: 1120px;
  margin: 0 auto;
  display: block;
}
.swiper-wrapper {
    display: contents; /* отключаем слайдер, используем только сетку */
    transform: none;
  }
.swiper-slide {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  width: 1120px;
  background: #fff;
  border-radius: 12px;
  border: 1px solid #ddd;
}
.brands__list {
  margin-top: 20px;
  padding: 0 5px;
  display: grid !important;
  grid-template-columns: repeat(4, 1fr); /* 4 в ряд */
  grid-template-rows: repeat(2, auto);   /* 2 ряда */
  gap: 8px;
}
.brands__title {
  margin-top: 20px;
  padding: 0 20px;
  font-size: 16px;
  font-weight: 500;
  color: #7a7a7a;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.brand-card button {
  width: 32px;
  height: 32px;
  margin-left: 8px;
  border: 1px solid #ff004d;
  border-radius: 50%;
  background: none;
  color: #ff004d;
  cursor: pointer;
}

.brand-card button:hover {
  background: #ff3366;
  color: #fff;
}

.brand-card {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  border: 1px solid #ddd;
  border-radius: 12px;
  background-color: #fff;
  width: auto;          
  height: 72px;
  box-sizing: border-box;
}
.brand-card img {
  max-height: 32px;
  width: auto;
  object-fit: contain;
}
.brands__list .brand-card:nth-child(n+9) {
    display: none !important; /*скрывает лишние элементы*/
  }
  .brands__list .brand-card.show {
  display: flex !important;
  
}

/* Кнопка и стрелка */
.brands__toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 700;
  color: #1b1c21;
  background: none;
  border: none;
  margin-top: 16px;
  padding: 0;
  white-space: nowrap;
  cursor: pointer;
  transition: color 0.3s ease;
}

.button__icon {
  width: 30px;
  height: 30px;
  fill: #41f6d7;
  transition: transform 0.3s ease, fill 0.3s ease;
}
.brands__toggle.open .button__icon {
  transform: rotate(180deg);
    }
  .brands__toggle:hover {
  display: inline-flex;
}
}