/* Satway Club Theme - templates.css placeholder */

/* 404: раскладка — общий формат «колонка по центру» (§9.30, класс .page-column
   в design-system.css), здесь своих правил больше нет. */

/* Archive course grid */
.course-grid {
	display: grid;
	/* Все ряды одной высоты — карточки одинаковы по вертикали. */
	grid-auto-rows: 1fr;
	gap: var(--spacing-l);
}

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

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

.archive .course-card {
	display: flex;
	flex-direction: column;
	background-color: var(--color-background);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-m);
	overflow: hidden;
}

.archive .course-card__media {
	aspect-ratio: 16 / 9;
	overflow: hidden;
}

.archive .course-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.archive .course-card__body {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	padding: var(--spacing-m);
}

.archive .course-card__title {
	font-size: var(--font-size-h4);
	font-family: var(--font-heading);
	line-height: 1.2;
	margin-bottom: var(--spacing-s);
}

.archive .course-card__title a {
	color: var(--color-foreground);
	text-decoration: none;
}

.archive .course-card__title a:hover,
.archive .course-card__title a:focus {
	color: var(--color-primary);
}

.archive .course-card__excerpt {
	color: var(--color-foreground-muted);
	margin-bottom: var(--spacing-m);
	flex-grow: 1;
}

.archive .course-card .btn {
	align-self: flex-start;
}

/* Single course */
/* Шапка одиночного курса — стандартная .entry-header (§9.21,
   design-system.css). Локально остаётся только медиа-обвязка. */
.course-single__media {
	border-radius: var(--radius-m);
	overflow: hidden;
	margin-bottom: var(--spacing-l);
}

.course-single__media img {
	width: 100%;
	height: auto;
	display: block;
}

/* Catalog (front page): ссылка на архивные курсы под списком (§9.5). */
.catalog-archive-cta {
	display: flex;
	justify-content: center;
	width: 100%;
	text-align: center;
	margin-top: 100px;
}
