@font-face {
	font-family: "Shadows Into Light";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../fonts/ShadowsIntoLight-Regular.ttf") format("truetype");
}

/* Browser defaults that complement, rather than replace, WordPress global styles. */

html {
	box-sizing: border-box;
	scroll-behavior: smooth;
	text-size-adjust: 100%;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

body {
	min-height: 100vh;
	margin: 0;
	background-image: var(--background-atmosphere);
	background-repeat: no-repeat;
	overflow-wrap: break-word;
}

:where(h1, h2, h3, h4, h5, h6) {
	text-wrap: balance;
}

p {
	text-wrap: pretty;
}

a {
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

.wp-block-post-content :where(p, li, blockquote, figcaption, td, th)
	a:not(.wp-element-button) {
	color: var(--color-link);
	font-weight: 600;
	text-decoration: none;
	background-image: linear-gradient(
		var(--color-accent),
		var(--color-accent)
	);
	background-repeat: no-repeat;
	background-position: left bottom;
	background-size: 0 0.1em;
	transition: background-size var(--transition-fast),
		color var(--transition-fast);
}

.wp-block-post-content :where(p, li, blockquote, figcaption, td, th)
	a:not(.wp-element-button):hover {
	color: var(--color-link-hover);
	background-size: 100% 0.1em;
}

:where(img, picture, video, canvas, svg) {
	display: block;
	max-width: 100%;
}

:where(img, video) {
	height: auto;
}

:where(button, input, select, textarea) {
	font: inherit;
}

:where(ul, ol) li::marker {
	color: var(--color-primary);
}

hr {
	border: 0;
	border-block-start: 1px solid var(--color-border);
}

::selection {
	background: var(--color-accent-soft);
	color: var(--color-text);
}

:focus-visible {
	outline: 0;
	box-shadow: var(--focus-ring);
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

@media (forced-colors: active) {
	:focus-visible {
		outline: 0.2rem solid CanvasText;
		outline-offset: 0.2rem;
		box-shadow: none;
	}
}
