:root {
	--color-text: #2f2926;
	--color-muted: #6f6660;
	--color-background: #fffdf9;
	--color-surface: #f7f1e9;
	--color-border: #ded5ca;
	--color-accent: #8a4f45;
	--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--font-serif: Georgia, "Times New Roman", serif;
	--container: 75rem;
	--content: 47.5rem;
	--space-1: 0.5rem;
	--space-2: 1rem;
	--space-3: 1.5rem;
	--space-4: 2rem;
	--space-5: 3rem;
}

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

html { overflow-x: hidden; scroll-behavior: smooth; }

body {
	margin: 0;
	color: var(--color-text);
	background: var(--color-background);
	font-family: var(--font-sans);
	font-size: 1rem;
	line-height: 1.7;
	overflow-wrap: break-word;
}

img,
svg,
video { display: block; max-width: 100%; height: auto; }

iframe { max-width: 100%; }

button,
input,
select,
textarea { max-width: 100%; font: inherit; }

a { color: var(--color-accent); text-underline-offset: 0.16em; }
a:hover { text-decoration-thickness: 0.13em; }

:focus-visible { outline: 3px solid var(--color-accent); outline-offset: 3px; }

h1,
h2,
h3,
h4,
h5,
h6 {
	margin-block: 0 0.65em;
	font-family: var(--font-serif);
	line-height: 1.2;
}

p { margin-block: 0 1.25em; }

.container { width: min(100% - 2rem, var(--container)); margin-inline: auto; }
.content-narrow { max-width: var(--content); }
.site-main { padding-block: var(--space-4); }

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus {
	top: var(--space-2);
	left: var(--space-2);
	z-index: 100000;
	width: auto;
	height: auto;
	padding: var(--space-1) var(--space-2);
	clip: auto;
	background: var(--color-background);
	white-space: normal;
}

.page-header { margin-bottom: var(--space-4); }
.entry-card { padding-block: var(--space-3); border-bottom: 1px solid var(--color-border); }
.entry-card__image { display: block; margin-bottom: var(--space-2); }
.entry-title { font-size: clamp(1.75rem, 5vw, 2.75rem); }
.entry-card .entry-title { font-size: clamp(1.35rem, 4vw, 2rem); }
.entry-title a { color: inherit; text-decoration: none; }
.entry-meta { margin-bottom: var(--space-2); color: var(--color-muted); font-size: 0.9rem; }
.entry-featured-image { margin-bottom: var(--space-4); }
.entry-content > * { max-width: 100%; }
.entry-content .alignwide { width: min(100vw - 2rem, var(--container)); max-width: none; margin-left: 50%; transform: translateX(-50%); }
.entry-content .alignfull { width: 100vw; max-width: none; margin-left: 50%; transform: translateX(-50%); }

.widget-area { padding-block: var(--space-4); }
.widget { padding: var(--space-3); background: var(--color-surface); }
.widget + .widget { margin-top: var(--space-3); }
.widget-title { font-size: 1.25rem; }

.navigation.pagination .page-numbers {
	display: inline-flex;
	min-width: 2.75rem;
	min-height: 2.75rem;
	align-items: center;
	justify-content: center;
}

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

@media (min-width: 48rem) {
	.container { width: min(100% - 3rem, var(--container)); }
	.content-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(15rem, 19rem); gap: var(--space-5); }
}
