/*
 * Кастомные стили — сюда пишет Клод (Claude Code), не трогает верстальщик.
 * Не трогать/не удалять при пересборке вёрстки: этот файл лежит вне local/templates/plus/,
 * его сборка на Node.js не затрагивает.
 */

/* Карточки услуг на /services/ */
.services-cards__row {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.services-cards__item {
  flex: 1 1 calc(33.333% - 1.5rem);
  min-width: 16rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 2rem 1.75rem;
  border: 1px solid #e6e6e6;
  border-radius: 0.5rem;
  text-decoration: none;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
.services-cards__item:hover {
  border-color: #c70000;
  box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.08);
}
.services-cards__icon {
  width: 3.5rem;
  height: 3.5rem;
  margin-bottom: 1.25rem;
}
.services-cards__icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.services-cards__title {
  font-weight: 700;
  font-family: "Montserrat", sans-serif;
  font-size: 1.125rem;
  color: #000;
  margin-bottom: 0.75rem;
}
.services-cards__desc {
  font-size: 0.9375rem;
  color: #666;
  line-height: 1.4;
  margin-bottom: 1.25rem;
}
.services-cards__link {
  margin-top: auto;
  font-weight: 700;
  font-size: 0.9375rem;
  color: #c70000;
}

@media (max-width: 61.99em) {
  .services-cards__item {
    flex: 1 1 calc(50% - 1.5rem);
  }
}

@media (max-width: 37.99em) {
  .services-cards__item {
    flex: 1 1 100%;
  }
}

/* Витрина товаров на корневых категориях каталога /products/ */
.category-showcase__head {
  text-align: left;
}
.category-showcase .category__list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
}
.category-showcase__item {
  flex: 1 1 calc(25% - 1.25rem);
  min-width: 14rem;
}
.category-showcase__card {
  display: flex;
  flex-direction: column;
  height: 100%;
  text-decoration: none;
  border: 1px solid #e6e6e6;
  border-radius: 0.5rem;
  overflow: hidden;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
.category-showcase__card:hover {
  border-color: #c70000;
  box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.08);
}
.category-showcase__card-img {
  aspect-ratio: 4 / 3;
  overflow: hidden;
}
.category-showcase__card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.category-showcase__card-title {
  padding: 1rem;
  font-size: 0.9375rem;
  color: #000;
  line-height: 1.4;
}
.category-showcase__extra {
  display: none;
}
#category-showcase-toggle:checked ~ .category__list .category-showcase__extra {
  display: block;
}
.category-showcase__toggle-btn {
  display: inline-block;
  margin-top: 1.5rem;
  cursor: pointer;
}
#category-showcase-toggle:checked ~ .category-showcase__toggle-btn {
  display: none;
}

@media (max-width: 61.99em) {
  .category-showcase__item {
    flex: 1 1 calc(33.333% - 1.25rem);
  }
}

@media (max-width: 37.99em) {
  .category-showcase__item {
    flex: 1 1 calc(50% - 1.25rem);
  }
}
