/* =========================================================
   SECTION — Advantages (преимущества компании)
   Сетка 3×2 карточек: иконка + заголовок + описание.
   ========================================================= */
.advantages {
	padding: var(--space-16) 0;
	background: var(--bg);
}
@media (min-width: 900px) {
	.advantages { padding: var(--space-24) 0; }
}

.advantages__head {
	max-width: 720px;
	margin-bottom: var(--space-10);
}
@media (min-width: 900px) {
	.advantages__head { margin-bottom: var(--space-12); }
}

.advantages__heading {
	font-size: clamp(1.75rem, 2.5vw + 1rem, var(--text-4xl));
	font-weight: 700;
	letter-spacing: var(--tracking-snug);
	color: var(--text);
	margin-bottom: var(--space-3);
}

.advantages__subtitle {
	font-size: var(--text-lg);
	color: var(--text-muted);
	line-height: var(--leading-relaxed);
}

/* --- Сетка --- */
.advantages__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-8);
}
@media (min-width: 600px) {
	.advantages__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: var(--space-10);
	}
}
@media (min-width: 1024px) {
	.advantages__grid {
		grid-template-columns: repeat(3, 1fr);
		gap: var(--space-10) var(--space-12);
	}
}

/* --- Один пункт --- */
.advantage {
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
}

.advantage__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	color: var(--action);
}
.advantage__icon svg {
	width: 40px;
	height: 40px;
	stroke-width: 1.5;
}

.advantage__title {
	font-size: var(--text-xl);
	font-weight: 700;
	color: var(--text);
	line-height: var(--leading-snug);
	letter-spacing: var(--tracking-snug);
}

.advantage__desc {
	font-size: var(--text-base);
	color: var(--text-muted);
	line-height: var(--leading-relaxed);
}

/* --- Мобильный лейаут: иконка слева, текст справа, каждый пункт — карточка --- */
@media (max-width: 599px) {
	.advantages__grid { gap: var(--space-3); }

	.advantage {
		display: grid;
		grid-template-columns: auto 1fr;
		column-gap: var(--space-4);
		row-gap: var(--space-1);
		align-items: center;
		padding: var(--space-4);
		background: var(--bg-subtle);
		border: 1px solid var(--border);
		border-radius: var(--radius-lg);
	}
	.advantage__icon {
		grid-column: 1;
		grid-row: 1 / 3;
		width: 48px;
		height: 48px;
		background: var(--action);
		color: var(--text-on-brand);
		border-radius: var(--radius-md);
		align-self: center;
	}
	.advantage__icon svg { width: 26px; height: 26px; stroke-width: 1.75; }

	.advantage__title {
		grid-column: 2;
		font-size: var(--text-base);
		letter-spacing: var(--tracking-snug);
	}
	.advantage__desc {
		grid-column: 2;
		font-size: var(--text-sm);
		line-height: var(--leading-snug);
		color: var(--text-muted);
	}
}

/* Если в последнем ряду остался один пункт — центрируем его. */
@media (min-width: 600px) and (max-width: 1023px) {
	/* 2 колонки: одинокий последний (нечётный) растягиваем на 2 кол. и центрируем */
	.advantages__grid > .advantage:last-child:nth-child(2n + 1) {
		grid-column: 1 / -1;
		justify-self: center;
		max-width: calc(50% - var(--space-5));
	}
}
@media (min-width: 1024px) {
	/* 3 колонки: одинокий последний (на позиции 3n+1) — в среднюю колонку */
	.advantages__grid > .advantage:last-child:nth-child(3n + 1) {
		grid-column: 2;
	}
	/* Если остались двое — центрируем оба */
	.advantages__grid > .advantage:nth-last-child(2):nth-child(3n + 1) {
		grid-column: 1 / span 2;
		justify-self: end;
		max-width: 100%;
		width: calc(100% - (var(--space-12) / 2));
	}
}
