/* Standard pages and the deliberately restrained 404 state. */

.p42-page {
	width: 100%;
	max-width: var(--p42-page-max);
}

.p42-page__header {
	width: min(100%, var(--p42-reading));
	margin: 0 auto clamp(2rem, 5vw, 4rem);
}

.p42-page__title {
	font-size: clamp(2.75rem, 7vw, 5.5rem);
	overflow-wrap: anywhere;
	hyphens: auto;
	text-wrap: balance;
}

.p42-page__featured-image {
	width: min(100%, var(--p42-content-wide));
	margin: 0 auto clamp(2rem, 5vw, 4rem);
}

.p42-page__featured-image-well {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 8rem;
	padding: clamp(0.5rem, 1.5vw, 1rem);
	background: var(--p42-deep-navy);
}

.p42-page__featured-image img {
	display: block;
	width: auto;
	height: auto;
	margin-inline: auto;
	object-fit: contain;
}

.p42-page__featured-image figcaption {
	max-width: var(--p42-reading);
	margin: 0.75rem auto 0;
	color: var(--p42-paper-muted);
	font-size: 0.875rem;
}

.p42-page__content > * {
	width: min(100%, var(--p42-reading));
	max-width: var(--p42-reading);
	margin-inline: auto;
}

.p42-page__content {
	min-width: 0;
	overflow-wrap: anywhere;
}

.p42-page__content > .alignwide {
	width: min(100%, var(--p42-content-wide));
	max-width: var(--p42-content-wide);
}

.p42-page__content > .alignfull {
	width: min(100%, var(--p42-page-max));
	max-width: var(--p42-page-max);
}

.p42-error-page .error-404 {
	width: min(100%, var(--p42-reading));
	margin-inline: auto;
	padding: clamp(1.5rem, 5vw, 4rem);
	border-block: 1px solid var(--p42-line-dark);
}

.p42-error-page__eyebrow {
	margin: 0 0 1rem;
	color: var(--p42-sand);
	font-family: var(--p42-font-mono);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.12em;
}

.p42-error-page__title {
	font-size: clamp(2.75rem, 8vw, 5.5rem);
	overflow-wrap: anywhere;
	hyphens: auto;
}

@media (forced-colors: active) {
	.p42-page__featured-image-well,
	.p42-error-page .error-404 {
		border: 1px solid CanvasText;
	}
}
