html {
	scroll-behavior: smooth;
	scroll-padding-top: calc(4.2rem + var(--spark-fixed-admin-offset,0px));
}

body {
	background: var(--color-curious-cream);
	color: var(--color-new-growth-navy);
	overflow-x: clip;
}

a {
	color: inherit;
	text-decoration-thickness: .0625rem;
	text-underline-offset: .2em;
}

button {
	color: inherit;
}

img {
	height: auto;
}

section {
	scroll-margin-top: 1.2rem;
}

.background-cover {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.section {
	position: relative;
	overflow-x: clip;
}

.skip-link {
	position: fixed;
	top: -8rem;
	left: 1rem;
	z-index: 1000;
	padding: 1rem;
	background: var(--color-youthful-yellow);
}

.skip-link:focus {
	top: calc(1rem + var(--spark-admin-offset,0px));
}

:focus-visible {
	outline: .1875rem solid currentColor;
	outline-offset: .25rem;
}

::selection {
	background: var(--color-youthful-yellow);
	color: var(--color-new-growth-navy);
}

@media (prefers-reduced-motion:reduce) {

	html {
		scroll-behavior: auto;
	}

	*,*::before,*::after {
		animation: none!important;
		transition: none!important;
	}
}

/* Shared tiled section texture; uploaded images use the same repeat treatment. */
.background-repeat {
	background-repeat: repeat;
	background-size: 14rem auto;
	background-position: top left;
}

/* An explicit section checkbox controls the optional opaque reading surface. */
.section.has-text-background :where(.rich-text,.faq-trigger,.number-1) {
	background-color: var(--section-background,var(--color-curious-cream));
	padding: 1rem;
	margin: -1rem;
}
