/* Сетка карточек разделов: 4 колонки от 1200px, 3 — от 900px, иначе 2.
   На телефонах 2 колонки вместо одной (отступление от дизайн-системы): 15 разделов
   в одну колонку — это ~15 экранов прокрутки. */
.nv-grid.nv-catalog-grid {
	grid-template-columns: repeat(2, 1fr);
	margin-bottom: var(--space-8);
}

@media (min-width: 560px) {
	.nv-grid.nv-catalog-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (min-width: 900px) {
	.nv-grid.nv-catalog-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (min-width: 1200px) {
	.nv-grid.nv-catalog-grid { grid-template-columns: repeat(4, 1fr); }
}

.nv-catalog-grid .nv-card,
.nv-catalog-grid .nv-card:hover {
	color: var(--ink);
	text-decoration: none;
}

.nv-catalog-grid .nv-card__media img {
	width: auto;
	height: auto;
}

/* Название — не больше двух строк, длинные слова переносятся */
.nv-catalog-grid .nv-card__title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	hyphens: auto;
	overflow-wrap: break-word;
}

/* Подразделы — не больше двух строк */
.nv-catalog-grid .nv-card__meta {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	line-height: 1.45;
}

@media (max-width: 559.98px) {
	.nv-grid.nv-catalog-grid {
		gap: var(--space-3);
	}

	.nv-catalog-grid .nv-card__media {
		padding: var(--space-2);
	}

	.nv-catalog-grid .nv-card__body {
		gap: var(--space-1);
		padding: var(--space-2) var(--space-3) var(--space-3);
	}

	.nv-catalog-grid .nv-card__title {
		font-size: 15px;
	}

	.nv-catalog-grid .nv-card__meta {
		display: none;
	}

	/* Карточка целиком — ссылка; на узком экране подпись «Перейти в раздел» не помещается */
	.nv-catalog-grid .nv-card__link {
		display: none;
	}
}
