/* Shared editorial headers. Hero, Valera and animated scenes keep their own layout. */
/* stylelint-disable selector-class-pattern -- Preserve the theme's existing BEM hooks. */
body.home {
	--rc-section-heading-size: min(var(--wp--preset--font-size--heading-lg), 3.25rem);
	--rc-section-heading-gap: var(--wp--preset--spacing--30);
}

/* Carry the approved paper grid with these sections, even on legacy templates. */
body.home .rent-club-main :is(
	.rent-club-cases,
	.rent-club-process,
	.rc-monthly-program,
	.rent-club-community,
	.rent-club-goals,
	.rent-club-reviews,
	.rent-club-faq,
	.rent-club-blog
) {
	--rent-club-content-width: var(--rc-paper-shell);
	--rent-club-page-gutter: max(12px, calc((100vw - var(--rc-paper-shell)) / 2));
}

body.home .rent-club-main :is(
	.rent-club-cases__intro,
	.rent-club-process .rent-club-process__intro,
	.rent-club-community__intro,
	.rent-club-reviews__header,
	.rent-club-blog__header
) {
	box-sizing: border-box;
	display: grid;
	width: var(--rent-club-content-width);
	max-width: 100%;
	margin-inline: auto;
	padding-inline: 0;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--rc-section-heading-gap);
	align-items: start;
}

body.home .rent-club-main .rent-club-goals__intro,
body.home #rent-club-program.rc-monthly-program .program-intro {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--rc-section-heading-gap);
	align-items: start;
}

body.home .rent-club-main :is(
	.rent-club-cases__title,
	.rent-club-process .rent-club-process__title,
	.rent-club-community__title,
	.rent-club-goals__title,
	.rent-club-reviews__title,
	.rent-club-faq__title,
	.rent-club-blog__title
),
body.home #rent-club-program.rc-monthly-program #program-title {
	grid-column: 1 / -1;
	min-width: 0;
	width: 100%;
	max-width: 24em;
	margin: 0;
	font-size: var(--rc-section-heading-size);
	line-height: 1.08;
	letter-spacing: -0.035em;
	text-align: left;
	text-transform: uppercase;
	text-wrap: balance;
	overflow-wrap: anywhere;
}

body.home .rent-club-main :is(
	.rent-club-cases__description,
	.rent-club-process .rent-club-process__description,
	.rent-club-community__description,
	.rent-club-goals__lead,
	.rent-club-blog__summary
),
body.home #rent-club-program.rc-monthly-program .program-intro > div,
body.home #rent-club-program.rc-monthly-program .program-intro-copy {
	grid-column: 1 / -1;
	min-width: 0;
	margin: 0;
	padding: 0;
}

body.home .rent-club-main :is(
	.rent-club-cases__description,
	.rent-club-process .rent-club-process__description,
	.rent-club-community__description,
	.rent-club-goals__description,
	.rent-club-blog__description
),
body.home #rent-club-program.rc-monthly-program .program-intro-copy {
	max-width: 44em;
	color: var(--rc-paper-graphite);
	font-size: min(var(--wp--preset--font-size--text-lg), 1.125rem);
	line-height: 1.5;
	letter-spacing: -0.015em;
	text-wrap: pretty;
}

/* The process strip shares the page grid, not a second inset shell. */
body.home .rent-club-process--photo-scenes {
	--process-shell: var(--rent-club-content-width);
}

body.home #rent-club-program.rc-monthly-program {
	padding-inline: 0;
}

/* FAQ questions remain a separate reading surface below their header. */
body.home .rent-club-main .rent-club-faq__header,
body.home .rent-club-main .rent-club-faq__list {
	grid-column: 1 / -1;
}

body.home .rent-club-main .rent-club-faq__header {
	gap: var(--rc-section-heading-gap);
}

@media (max-width: 767px) {

	body.home {
		--rc-section-heading-size: clamp(1.3rem, 5.6vw, 1.55rem);
	}

	body.home .rent-club-main :is(
		.rent-club-cases__description,
		.rent-club-process .rent-club-process__description,
		.rent-club-community__description,
		.rent-club-goals__description,
		.rent-club-blog__description
	),
	body.home #rent-club-program.rc-monthly-program .program-intro-copy {
		font-size: var(--wp--preset--font-size--text-md);
	}
}

/* Approved Nunito Sans typography; self-hosted under SIL OFL. */
@font-face {
	font-family: "Nunito Sans";
	src: url(../fonts/nunito-sans-variable.ttf) format("truetype");
	font-style: normal;
	font-weight: 200 900;
	font-display: swap;
}

/* Override component font shorthands without altering layout or motion. */
body.home .rent-club-main,
body.home .rent-club-main *,
body.home .rent-club-header nav *,
body.home .rent-club-button,
body.home .rent-club-footer :is(p, a, li, button) {
	font-family: "Nunito Sans", Arial, sans-serif !important;
}

body.home .rent-club-main :is(h1, h2, h3, h4) {
	font-weight: 800 !important;
}

/* Steps are editorial rows, not cards. Outrank the legacy card reset. */
body.home .rent-club-goals .rent-club-goals__steps > .rent-club-goals__step {
	border: 0;
	border-bottom: 1px solid var(--rc-paper-line);
	border-radius: 0;
}

