/* ==========================================================================
   INESJ — Ordinary pages, posts, archives, 404
   Same paper wall, same two voices, a calm reading column.
   ========================================================================== */

.page-view {
	padding: var(--chapter-pad) var(--margin) var(--s-9);
}

.page-head {
	display: grid;
	gap: var(--s-6);
	margin-bottom: var(--s-8);
}

.page-title {
	max-width: 14ch;
	font-size: clamp(3.25rem, 1rem + 9vw, 10rem);
	font-weight: 800;
	font-stretch: 64%;
	line-height: 0.86;
	letter-spacing: -0.012em;
	text-transform: uppercase;
	overflow-wrap: anywhere;
}

.page-cover {
	margin: 0 0 var(--s-8);
}

.page-cover img {
	width: 100%;
	border-radius: var(--radius-photo);
}

/* Reading column ------------------------------------------------------- */

.prose {
	max-width: 44rem;
	font-size: var(--fs-lede);
	line-height: 1.55;
}

.prose > * + * {
	margin-top: 1.1em;
}

.prose h2,
.prose h3,
.prose h4 {
	margin-top: 2.2em;
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: -0.015em;
}

.prose h2 {
	font-size: 1.6em;
}

.prose h3 {
	font-size: 1.25em;
}

.prose ul,
.prose ol {
	padding-left: 1.2em;
}

.prose li + li {
	margin-top: 0.4em;
}

.prose blockquote {
	padding-left: 1em;
	border-left: 1px solid currentColor;
	font-family: var(--font-serif);
	font-style: italic;
	font-size: 1.3em;
	line-height: 1.3;
}

.prose img,
.prose figure {
	max-width: 100%;
	height: auto;
}

.prose .alignwide,
.prose .alignfull {
	max-width: none;
}

.prose figcaption,
.prose .wp-element-caption {
	margin-top: 0.6em;
	font-size: var(--fs-small);
}

.prose hr {
	border: 0;
	border-top: 1px solid currentColor;
	opacity: 0.3;
}

.page-pager {
	display: flex;
	justify-content: space-between;
	gap: var(--s-5);
	max-width: 44rem;
	margin-top: var(--s-8);
}

.page-pager a {
	text-decoration: none;
}

/* Post list -------------------------------------------------------------- */

.post-list {
	display: grid;
	gap: var(--s-8);
	max-width: 60rem;
}

.post-card {
	display: grid;
	gap: var(--s-3);
}

.post-card__media img {
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	border-radius: var(--radius-photo);
}

.post-card__title {
	font-size: var(--fs-title);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -0.02em;
}

.post-card__title a {
	text-decoration: none;
}

.post-card__title a:hover {
	text-decoration: underline;
}

.nav-links {
	display: flex;
	gap: var(--s-4);
	font-size: var(--fs-label);
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
