.ag-main-page-layout {
	--ag-main-title-size: clamp(2rem, 3.125vw, 2.5rem);
	--ag-section-title-size: clamp(1.7rem, 2.5vw, 2rem);
	--ag-subsection-title-size: clamp(1.25rem, 1.875vw, 1.5rem);
}

.ag-main-page-layout :where(
	.entry-header .page-title,
	.ag-about-title,
	.ag-course-landing__title
) {
	font-size: var(--ag-main-title-size);
	line-height: 1.5;
}

/* The custom views render their own visible H1; remove the empty theme hero gap. */
.ag-prototype-view-about .hero-section,
.ag-prototype-view-courses .hero-section {
	display: none;
}

.ag-prototype-view-courses .entry-content > .ag-course-landing {
	margin-top: 0;
}

/* The theme already supplies the shared top rhythm; no second title offset. */
.ag-course-support-page .entry-header {
	padding-top: 0;
}

.ag-main-page-layout :where(
	.ag-about-page > .ag-prototype-section > h2,
	.ag-art-landing > section > h2,
	.ag-course-landing__program > h2,
	.ag-course-landing__path > h2,
	.ag-course-landing__closing-copy > h2,
	.ag-course-support__prices > h2
) {
	font-size: var(--ag-section-title-size);
	line-height: 1.5;
}

.ag-main-page-layout :where(
	.ag-cv-groups h3,
	.ag-exhibition-cv-groups h3,
	.ag-course-support__price-group
) {
	font-size: var(--ag-subsection-title-size);
	line-height: 1.5;
}
