/* ============================================================
   Single News Post
   ============================================================ */

:root {
	--paidevesi-single-red-light: #fee8e9;
	--paidevesi-single-red-dark: #c03a2b;
}

/* ── Page wrapper ── */
.single-post {
	background: var(--wp--preset--color--white);
}

.single-post__wrapper {
	max-width: calc(var(--pv-content-article-measure, 880px) * var(--pv-ui-scale));
	margin: 0 auto;
	padding: calc(48px * var(--pv-ui-scale)) calc(24px * var(--pv-ui-scale)) calc(80px * var(--pv-ui-scale));
	display: flex;
	flex-direction: column;
	gap: calc(42px * var(--pv-ui-scale));
}

/* ============================================================
   Breadcrumb
   ============================================================ */

.single-breadcrumb {
	display: flex;
	align-items: center;
	gap: calc(10px * var(--pv-ui-scale));
	flex-wrap: wrap;
}

.single-breadcrumb__link,
.single-breadcrumb__current {
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 600;
	font-size: calc(14px * var(--pv-ui-scale));
	letter-spacing: calc(1.4px * var(--pv-ui-scale));
	text-transform: uppercase;
	white-space: nowrap;
}

.single-breadcrumb__link {
	color: var(--wp--preset--color--gray-03);
	text-decoration: none;
}

.single-breadcrumb__link:hover {
	color: var(--wp--preset--color--brand-01-dark);
}

.single-breadcrumb__link:focus-visible {
	outline: 2px solid var(--wp--preset--color--brand-01);
	outline-offset: 2px;
	border-radius: calc(2px * var(--pv-ui-scale));
}

.single-breadcrumb__sep {
	display: flex;
	align-items: center;
	color: var(--wp--preset--color--gray-03);
	flex-shrink: 0;
}

.single-breadcrumb__current {
	color: var(--wp--preset--color--brand-01-dark);
}

/* ============================================================
   Article
   ============================================================ */

.single-article {
	display: flex;
	flex-direction: column;
	gap: calc(24px * var(--pv-ui-scale));
}

/* ── Meta row ── */
.single-meta {
	display: flex;
	align-items: center;
	gap: calc(12px * var(--pv-ui-scale));
	flex-wrap: wrap;
}

/* ── Category badge ── */
.single-badge {
	display: inline-flex;
	align-items: center;
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 400;
	font-size: calc(14px * var(--pv-ui-scale));
	line-height: 1.5;
	padding: calc(2px * var(--pv-ui-scale)) calc(8px * var(--pv-ui-scale));
	border-radius: calc(4px * var(--pv-ui-scale));
	white-space: nowrap;
}

.single-badge--katkestus {
	background: var(--paidevesi-single-red-light);
	color: var(--paidevesi-single-red-dark);
}

.single-badge--uudis {
	background: var(--wp--preset--color--brand-02-light);
	color: var(--wp--preset--color--brand-02);
}

.single-badge--teade,
.single-badge--default {
	background: var(--wp--preset--color--brand-01-light);
	color: var(--wp--preset--color--brand-01);
}

/* ── Date ── */
.single-meta__date {
	display: flex;
	align-items: center;
	gap: calc(4px * var(--pv-ui-scale));
	font-family: var(--wp--preset--font-family--inter);
	font-size: calc(14px * var(--pv-ui-scale));
	line-height: 1.5;
	color: var(--wp--preset--color--gray-03);
}

/* ── Title ── */
.single-title {
	font-family: var(--wp--preset--font-family--plus-jakarta-sans);
	font-weight: 700;
	font-size: calc(48px * var(--pv-ui-scale));
	line-height: 1.1;
	letter-spacing: calc(-1.44px * var(--pv-ui-scale));
	color: var(--wp--preset--color--brand-01-dark);
	margin: 0;
}

/* ── Featured image ── */
.single-image {
	width: 100%;
	border-radius: calc(24px * var(--pv-ui-scale));
	overflow: hidden;
}

.single-image__img {
	width: 100%;
	height: auto;
	display: block;
}

.single-image--placeholder {
	background: var(--wp--preset--color--brand-02-light);
}

/* ============================================================
   Article body
   ============================================================ */

.single-body {
	display: flex;
	flex-direction: column;
	gap: calc(22px * var(--pv-ui-scale));
}

/* Lead */
.single-lead {
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 500;
	font-size: calc(24px * var(--pv-ui-scale));
	line-height: 1.5;
	color: var(--wp--preset--color--brand-01-dark);
	margin: 0;
}

/* Content */
.single-content {
	font-family: var(--wp--preset--font-family--inter);
	font-size: calc(var(--pv-content-body-size, 16px) * var(--pv-ui-scale));
	line-height: 1.5;
	color: var(--wp--preset--color--gray-03);
}

.single-content p {
	margin: 0 0 calc(16px * var(--pv-ui-scale));
}

.single-content p:last-child {
	margin-bottom: 0;
}

.single-content h2,
.single-content h3,
.single-content h4 {
	font-family: var(--wp--preset--font-family--plus-jakarta-sans);
	font-weight: 700;
	color: var(--wp--preset--color--brand-01-dark);
	margin: calc(32px * var(--pv-ui-scale)) 0 calc(12px * var(--pv-ui-scale));
	line-height: 1.2;
}

.single-content h2 { font-size: calc(28px * var(--pv-ui-scale)); }
.single-content h3 { font-size: calc(22px * var(--pv-ui-scale)); }
.single-content h4 { font-size: calc(18px * var(--pv-ui-scale)); }

.single-content a {
	color: var(--wp--preset--color--primary-blue);
	text-decoration: underline;
}

.single-content a:hover {
	opacity: 0.8;
}

.single-content a:focus-visible {
	outline: 2px solid var(--wp--preset--color--brand-01);
	outline-offset: 2px;
	border-radius: calc(2px * var(--pv-ui-scale));
}

.single-content ul,
.single-content ol {
	padding-left: calc(24px * var(--pv-ui-scale));
	margin: 0 0 calc(16px * var(--pv-ui-scale));
}

.single-content li {
	margin-bottom: calc(6px * var(--pv-ui-scale));
}

.single-content blockquote {
	border-left: 3px solid var(--wp--preset--color--brand-01-light);
	margin: calc(24px * var(--pv-ui-scale)) 0;
	padding: calc(12px * var(--pv-ui-scale)) calc(20px * var(--pv-ui-scale));
	color: var(--wp--preset--color--brand-01-dark);
	font-style: italic;
}

.single-content img {
	max-width: 100%;
	height: auto;
	border-radius: calc(12px * var(--pv-ui-scale));
	display: block;
	margin: calc(16px * var(--pv-ui-scale)) 0;
}

.single-content figure {
	margin: calc(24px * var(--pv-ui-scale)) 0;
}

.single-content figcaption {
	font-size: calc(13px * var(--pv-ui-scale));
	color: var(--wp--preset--color--gray-03);
	margin-top: calc(6px * var(--pv-ui-scale));
	text-align: center;
}

/* ============================================================
   Back link
   ============================================================ */

.single-back {
	display: inline-flex;
	align-items: center;
	gap: calc(4px * var(--pv-ui-scale));
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 600;
	font-size: calc(16px * var(--pv-ui-scale));
	line-height: 1.5;
	color: var(--wp--preset--color--primary-blue);
	text-decoration: none;
	transition: opacity 0.15s;
}

.single-back svg {
	transform: rotate(180deg);
	flex-shrink: 0;
}

.single-back:hover {
	opacity: 0.8;
}

.single-back:focus-visible {
	outline: 2px solid var(--wp--preset--color--brand-01);
	outline-offset: 2px;
	border-radius: calc(2px * var(--pv-ui-scale));
}

/* ============================================================
   Responsive
   ============================================================ */

@media (max-width: 640px) {
	.single-post__wrapper {
		padding: calc(48px * var(--pv-ui-scale)) calc(16px * var(--pv-ui-scale)) calc(64px * var(--pv-ui-scale));
	}

	.single-breadcrumb {
		/* Parent gap is 42px; pull next block up so crumb→title ≈ 28px */
		margin-bottom: calc(-14px * var(--pv-ui-scale));
	}

	.single-title {
		font-size: calc(32px * var(--pv-ui-scale));
		letter-spacing: calc(-0.8px * var(--pv-ui-scale));
	}

	.single-lead {
		font-size: calc(20px * var(--pv-ui-scale));
	}

	/* Full image at natural aspect ratio — no fixed-height crop */
	.single-image {
		height: auto;
	}

	.single-image__img {
		width: 100%;
		height: auto;
		object-fit: contain;
	}

	.single-image--placeholder {
		height: calc(220px * var(--pv-ui-scale));
	}
}
