/* Verba — base typography + container + page-level styles */

body {
	font-family: var(--font-sans);
	font-size: var(--fs-body-sm);
	line-height: var(--lh-body);
	color: var(--ink);
	background: var(--paper);
}

.ed-page__main { display: block; }

/* Kontener — nie szerszy niż 1440px, automatyczne marginesy */
.ed-container {
	width: 100%;
	max-width: var(--container-max);
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--space-section-x);
	padding-right: var(--space-section-x);
}

.ed-section {
	padding-top: var(--space-section-y);
	padding-bottom: var(--space-section-y);
}

/* Domyślna typografia treści (.ed-prose używamy w Gutenbergu / treści ACF wysiwyg) */
.ed-prose {
	font-family: var(--font-sans);
	font-size: var(--fs-body);
	line-height: var(--lh-prose);
	color: var(--text-soft);
	max-width: 720px;
}
.ed-prose p + p { margin-top: 22px; }
.ed-prose h1, .ed-prose h2, .ed-prose h3 {
	font-family: var(--font-serif);
	color: var(--green-deep);
	margin-top: 48px;
	margin-bottom: 18px;
	font-weight: 400;
}
.ed-prose h1 { font-size: var(--fs-h2-lg); line-height: var(--lh-h2); }
.ed-prose h2 { font-size: var(--fs-h2-sm); line-height: var(--lh-h2-md); }
.ed-prose h3 { font-size: var(--fs-h3);    line-height: var(--lh-h2-md); }
.ed-prose em { color: var(--brown); }
.ed-prose strong { color: var(--green-deep); font-weight: 600; }
.ed-prose a {
	color: var(--green-deep);
	border-bottom: 1px solid var(--green-deep);
	transition: border-bottom-width 200ms ease;
}
.ed-prose a:hover { border-bottom-width: 2px; }
.ed-prose ul, .ed-prose ol { padding-left: 1.5em; margin: 18px 0; }
.ed-prose ul li { list-style: disc; margin-bottom: 6px; }
.ed-prose ol li { list-style: decimal; margin-bottom: 6px; }
.ed-prose blockquote {
	font-family: var(--font-serif);
	font-style: italic;
	font-size: var(--fs-pull);
	color: var(--green-deep);
	border-left: 2px solid var(--brown);
	padding-left: 24px;
	margin: 36px 0;
	line-height: 1.4;
}

/* Page header (dla zwykłych stron) */
.ed-page__head { margin-bottom: 40px; }
.ed-page__title {
	font-family: var(--font-serif);
	font-size: var(--fs-h2-lg);
	line-height: var(--lh-h2);
	color: var(--green-deep);
	font-weight: 400;
}

/* Single (blog) */
.ed-single__head { margin-bottom: 36px; }
.ed-single__meta {
	font-family: var(--font-mono);
	font-size: var(--fs-eyebrow);
	letter-spacing: var(--ls-meta);
	text-transform: uppercase;
	color: var(--muted);
	margin-bottom: 12px;
}
.ed-single__title {
	font-family: var(--font-serif);
	font-size: var(--fs-h2-lg);
	line-height: var(--lh-h2);
	color: var(--green-deep);
	font-weight: 400;
}
.ed-single__thumb { margin: 36px 0; }
.ed-single__thumb img { width: 100%; height: auto; }

/* Archive */
.ed-archive { display: grid; gap: 48px; }
.ed-archive__item { padding-bottom: 32px; border-bottom: var(--border-soft); }
.ed-archive__link { display: block; }
.ed-archive__meta {
	font-family: var(--font-mono);
	font-size: var(--fs-eyebrow);
	letter-spacing: var(--ls-meta);
	text-transform: uppercase;
	color: var(--muted);
	margin-bottom: 8px;
}
.ed-archive__title {
	font-family: var(--font-serif);
	font-size: var(--fs-h3);
	color: var(--green-deep);
	margin-bottom: 12px;
	font-weight: 400;
}
.ed-archive__excerpt {
	font-family: var(--font-sans);
	font-size: var(--fs-body-sm);
	color: var(--text-soft);
	line-height: var(--lh-body);
}

/* 404 */
.ed-404 { text-align: center; padding-top: clamp(80px, 12vw, 160px); padding-bottom: clamp(80px, 12vw, 160px); }
.ed-404__num {
	font-family: var(--font-serif);
	font-size: clamp(96px, 14vw, 200px);
	color: var(--cream-deep);
	line-height: 1;
	font-weight: 400;
	margin-bottom: 24px;
	font-style: italic;
}
.ed-404__title {
	font-family: var(--font-serif);
	font-size: var(--fs-h2-md);
	color: var(--green-deep);
	font-weight: 400;
	margin-bottom: 18px;
}
.ed-404__lead {
	font-family: var(--font-sans);
	font-size: var(--fs-body);
	color: var(--text-soft);
	max-width: 480px;
	margin: 0 auto;
}
.ed-404__lead a {
	color: var(--green-deep);
	border-bottom: 1px solid var(--green-deep);
}
