/* Theme-level safeguards that are clearer in CSS than in theme.json. */

html {
	scroll-behavior: auto;
}

body {
	text-rendering: optimizeLegibility;
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 3px solid #005fcc;
	outline-offset: 3px;
	box-shadow: 0 0 0 6px #fff;
}

:where(button, input:not([type="hidden"]), select, textarea, .wp-element-button) {
	min-height: 44px;
}

:where(.wp-block-navigation a, .wp-block-button__link) {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
}

a:hover,
a:focus-visible {
	text-decoration-thickness: 0.18em;
	text-underline-offset: 0.18em;
}

.wp-block-post-content :where(p, li) {
	max-width: 66ch;
}

footer a {
	color: #fff;
}

.fontlife-kicker {
	font-size: 0.9375rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.fontlife-rule {
	border-top: 2px solid #8a7b6d;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}

@media (forced-colors: active) {
	:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
		outline: 3px solid CanvasText;
		box-shadow: none;
	}
}
