/* Only a top-level opted-in hero changes the public page's vertical layout. */
#container_main:has(> .ecpgs-hero-fill-viewport) {
	display: flex;
	flex-direction: column;
	height: auto;
	min-height: 100vh;
	min-height: 100dvh;
}

#container_main:has(> .ecpgs-hero-fill-viewport)::before,
#container_main:has(> .ecpgs-hero-fill-viewport)::after {
	display: none;
}

#container_main:has(> .ecpgs-hero-fill-viewport) > * {
	flex: 0 0 auto;
}

/* Extra room belongs to the themed hero, not a gap below the footer. */
#container_main > .ecpgs-hero-fill-viewport {
	flex: 1 0 auto;
	height: auto;
}
