/* Ibanint - base skeleton (design pass pending) */

:root {
	--ink: #14181f;
	--muted: #5a6577;
	--bg: #ffffff;
	--line: #e4e1d6;
	--accent: #0a1a33;
	--wrap: 1180px;
}

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

body {
	margin: 0;
	font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	font-size: 17px;
	line-height: 1.65;
	color: var(--ink);
	background: var(--bg);
	-webkit-font-smoothing: antialiased;
}

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

h1, h2, h3 { line-height: 1.15; letter-spacing: -0.02em; margin: 0 0 0.5em; color: var(--accent); }

a { color: var(--accent); }

.wrap { max-width: var(--wrap); margin: 0 auto; padding-left: 24px; padding-right: 24px; }

.skip-link {
	position: absolute;
	left: 12px;
	top: 10px;
	transform: translateY(-160%);
	background: var(--accent);
	color: #fff;
	padding: 10px 16px;
	border-radius: 4px;
}
.skip-link:focus { transform: translateY(0); }

/* Header */
.site-header { border-bottom: 1px solid var(--line); }
.header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 72px;
	flex-wrap: wrap;
}
.brand { text-decoration: none; }
.brand-text { font-size: 1.4rem; font-weight: 700; color: var(--accent); }
.custom-logo { max-height: 56px; width: auto; }

.primary-nav ul,
.site-footer ul { display: flex; gap: 18px; list-style: none; margin: 0; padding: 0; flex-wrap: wrap; }
.primary-nav a,
.site-footer a { text-decoration: none; font-weight: 600; }
.primary-nav a:hover,
.site-footer a:hover { text-decoration: underline; }

/* Sections */
.section { padding: 72px 0; }
.hero { background: #f6f6f4; }
.hero-title { font-size: clamp(2.2rem, 5vw, 3.4rem); }
.hero-text { color: var(--muted); max-width: 42rem; margin: 0; }
.page-title { font-size: clamp(2rem, 4vw, 2.8rem); }
.prose { max-width: 760px; }
.prose p { margin: 0 0 1em; }

.post-item { border-top: 1px solid var(--line); padding: 26px 0; }
.post-title { font-size: 1.5rem; margin: 0 0 8px; }

/* Footer */
.site-footer { border-top: 1px solid var(--line); padding: 32px 0; }
.footer-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	flex-wrap: wrap;
}
.footer-copy { margin: 0; color: var(--muted); font-size: 0.95rem; }
