/*
 * The page shell.
 */

/* The full-bleed bands are 100vw wide, which on classic-scrollbar setups
   includes the scrollbar and overhangs the layout viewport. clip, not hidden:
   hidden would make the body a scroll container. */
body {
	overflow-x: clip;
}

.wrapper {
	position: relative;
	overflow: clip;
	/* clip does not establish a block formatting context, so the first block's
	   top margin would collapse out through the wrapper; flow-root contains it */
	display: flow-root;
}

/* Responsive wrapper for YouTube / Vimeo embeds in editor copy
   (schoolcms_wrap_oembed_html, inc/frontend-functions.php). */
.embed-container {
	position: relative;
	height: 0;
	max-width: 100%;
	padding-bottom: 56.25%;
	overflow: hidden;

	iframe,
	object,
	embed {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
}

/* WordPress's visually-hidden utility (the page's H1, form labels) */
.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

/* index.php – the not-found fallback */
.fallbackContent {
	padding: 80px 0;
	text-align: center;

	@media (min-width: 992px) {
		padding: 140px 0;
	}

	p {
		margin-bottom: 32px;
	}
}
