/* ==========================================================================
   BeThree Child – single post
   Figma: "Desktop | Blog | Εσωτερική" section 72:2351 (1920), mobile 72:2768.
   Loaded only on single posts (inc/enqueue.php, key "single").
   Cards and the slider live in main.css (shared with blog / home).
   ========================================================================== */

/* --- Section ------------------------------------------------------------ */
.be_post {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 60px;
	padding: 100px 100px 120px;
	background: var(--be-color-white);
	color: var(--be-color-dark);
}

/* Cream curve at the top (Figma "Ellipse 8": 2249x243, 180px above the section) */
.be_post::before {
	content: "";
	position: absolute;
	left: 50%;
	top: -180px;
	width: max(2249px, 117.15vw);
	height: 243px;
	transform: translateX(-50%);
	border-radius: 50%;
	background: var(--be-color-cream);
	pointer-events: none;
}

.be_post > * {
	position: relative; /* above the curve */
	width: 100%;
}

/* --- Title: "Lead:" 60/72, rest 45 ------------------------------------- */
.be_post-title {
	font: 700 60px/72px var(--be-font-primary);
}

.be_post-title .be_title-rest {
	font-size: 45px;
	line-height: 56px;
}

/* --- Featured image (cream frame, 1672x580, 40% dark overlay) ----------- */
.be_post-hero {
	position: relative;
	padding: 24px;
	background: var(--be-color-cream);
	border-radius: 20px;
}

.be_post-hero-img {
	display: block;
	width: 100%;
	aspect-ratio: 1672 / 580;
	object-fit: cover;
	border-radius: 10px;
}

.be_post-hero::after {
	content: "";
	position: absolute;
	inset: 24px;
	border-radius: 10px;
	background: rgba(0, 0, 0, 0.4);
	pointer-events: none;
}

/* --- Content -------------------------------------------------------------- */
.be_post-content {
	display: flex;
	flex-direction: column;
	gap: 60px;
}

.be_post-text {
	font: 400 18px/24px var(--be-font-primary);
	color: #666666;
}

.be_post-intro {
	font-size: 24px;
	line-height: 32px;
}

.be_post-text p,
.be_post-text ul,
.be_post-text ol {
	margin: 0 0 14px 0; /* user request 2026-09-08: 14px after every paragraph/list */
}

.be_post-text > :last-child {
	margin-bottom: 0;
}

.be_post-intro > * + * {
	margin-top: 12px;
}

.be_post-text ul,
.be_post-text ol {
	padding-left: 27px;
}

.be_post-text li + li {
	margin-top: 4px;
}

.be_post-text a {
	color: inherit;
	text-decoration: underline;
	text-underline-position: from-font;
	transition: color 0.2s ease;
}

.be_post-text a:hover,
.be_post-text a:focus-visible {
	color: var(--be-color-orange);
}

.be_post-text h3,
.be_post-text h4 {
	margin: 32px 0 12px;
	font: var(--be-h3);
	color: var(--be-color-dark);
}

.be_post-text img {
	display: block;
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}

.be_post-section {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.be_post-section-title {
	margin: 0;
	font: 700 40px/50px var(--be-font-primary);
}

/* --- Related posts -------------------------------------------------------- */
.be_post-related {
	display: flex;
	flex-direction: column;
	gap: 60px;
}

.be_post-related-title {
	margin: 0;
	font: 700 40px/50px var(--be-font-primary);
}

/* --- Responsive --------------------------------------------------------- */
@media (max-width: 1100px) {
	.be_post {
		gap: 48px;
		padding: 80px 60px 100px;
	}

	.be_post-title {
		font-size: 48px;
		line-height: 56px;
	}

	.be_post-title .be_title-rest {
		font-size: 36px;
		line-height: 44px;
	}

	.be_post-section-title,
	.be_post-related-title {
		font-size: 32px;
		line-height: 40px;
	}

}

@media (max-width: 700px) {
	/* Figma 72:2765 (breadcrumb band) + 72:2768 */
	.be_post {
		gap: 32px;
		padding: 60px 20px 32px;
	}

	.be_post::before {
		top: -29px;
		width: 492px;
		height: 53px;
	}

	.be_post-title,
	.be_post-title .be_title-rest {
		font: 700 26px/32px var(--be-font-primary);
	}

	.be_post-hero-img {
		aspect-ratio: 287 / 470;
	}

	.be_post-content,
	.be_post-section,
	.be_post-related {
		gap: 32px;
	}

	.be_post-text {
		font-size: 16px;
		line-height: 24px;
	}

	.be_post-intro {
		font-size: 20px; /* after .be_post-text: the intro carries both classes */
		line-height: 24px;
	}

	.be_post-section-title,
	.be_post-related-title {
		font: 700 22px/32px var(--be-font-primary);
		color: var(--be-color-navy);
	}

}
