/* Base rules, typography and accessibility */
html { color-scheme: light; }
body {
	background: var(--fa-color-background);
	color: var(--fa-color-text);
	font-family: var(--fa-font-family);
	font-size: var(--fa-font-size-md);
	line-height: var(--fa-line-height-body);
}
h1, h2, h3, h4, h5, h6 {
	color: var(--fa-color-text);
	font-weight: var(--fa-font-weight-black);
	line-height: var(--fa-line-height-heading);
	letter-spacing: -0.035em;
	text-wrap: balance;
}
h1 { font-size: var(--fa-font-size-display); }
h2 { font-size: var(--fa-font-size-3xl); }
h3 { font-size: var(--fa-font-size-2xl); }
h4 { font-size: var(--fa-font-size-xl); }
p { margin-block: 0 1em; }
small, .text-small { font-size: var(--fa-font-size-sm); }
.text-muted, .entry-meta, .archive-description { color: var(--fa-color-text-secondary); }
::selection { background: var(--fa-color-brand); color: var(--fa-color-brand-ink); }
a { text-underline-offset: 0.18em; }
a:hover { color: #8A6200; }
:focus-visible {
	outline: 3px solid var(--fa-color-brand-hover);
	outline-offset: 3px;
	box-shadow: var(--fa-focus-ring);
}
input, textarea, select {
	color: var(--fa-color-text);
	font: inherit;
}
input::placeholder, textarea::placeholder { color: #767676; opacity: 1; }
hr { border: 0; border-top: 1px solid var(--fa-color-border); margin-block: var(--fa-space-6); }
