@layer blocks {
	/* ---------- Hero ---------- */
	.hero {
		position: relative;
		display: grid;
		align-items: center;
		min-height: min(82vh, 52rem);
		padding-block: var(--space-3xl);
		background: var(--g-950);
		color: var(--white);
		overflow: hidden;
		isolation: isolate;
	}
	.hero--mic {
		min-height: 0;
		padding-block: var(--space-2xl);
	}
	.hero__media {
		position: absolute;
		inset: 0;
		z-index: -2;
	}
	.hero__media img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: 70% 50%;
	}
	.hero__media::after {
		content: "";
		position: absolute;
		inset: 0;
		background:
			linear-gradient(90deg, rgb(4 35 26 / 0.94) 0%, rgb(4 35 26 / 0.82) 40%, rgb(4 35 26 / 0.35) 75%, rgb(4 35 26 / 0.2) 100%),
			linear-gradient(0deg, rgb(4 35 26 / 0.6) 0%, transparent 40%);
	}
	.hero:not(.hero--cu-imagine) {
		background:
			radial-gradient(70% 90% at 90% 10%, color-mix(in oklab, var(--mint-500) 22%, transparent), transparent 60%),
			radial-gradient(50% 60% at 10% 100%, color-mix(in oklab, var(--blue-500) 18%, transparent), transparent 60%),
			var(--g-950);
	}
	.hero__grid {
		position: absolute;
		inset: 0;
		z-index: -1;
		background-image:
			linear-gradient(rgb(255 255 255 / 0.05) 1px, transparent 1px),
			linear-gradient(90deg, rgb(255 255 255 / 0.05) 1px, transparent 1px);
		background-size: 3.5rem 3.5rem;
		mask-image: radial-gradient(80% 80% at 70% 40%, #000 30%, transparent 100%);
		-webkit-mask-image: radial-gradient(80% 80% at 70% 40%, #000 30%, transparent 100%);
		pointer-events: none;
	}
	.hero__content {
		max-width: var(--wrap);
	}
	.eyebrow--hero {
		display: inline-flex;
		align-items: center;
		gap: 0.6rem;
		padding: 0.35rem 0.9rem 0.35rem 0.6rem;
		border-radius: var(--radius-pill);
		background: color-mix(in oklab, var(--white) 10%, transparent);
		border: 1px solid color-mix(in oklab, var(--white) 16%, transparent);
		color: var(--mint-300);
		letter-spacing: 0.1em;
		backdrop-filter: blur(6px);
	}
	.eyebrow--hero::before {
		content: "";
		width: 0.5rem;
		height: 0.5rem;
		border-radius: 50%;
		background: var(--mint-500);
		box-shadow: 0 0 0 4px color-mix(in oklab, var(--mint-500) 25%, transparent);
	}
	.hero__title {
		max-width: 16ch;
		margin-bottom: var(--space-m);
		font-size: var(--step-6);
		font-weight: 700;
		letter-spacing: 0;
		line-height: 1.08;
		color: var(--white);
	}
	.hero--mic .hero__title { font-size: var(--step-5); max-width: 20ch; }
	.hero__lead {
		max-width: 58ch;
		margin-bottom: var(--space-l);
		font-size: var(--step-1);
		color: color-mix(in oklab, var(--white) 80%, transparent);
	}
	.hero__lead p:last-child { margin-bottom: 0; }
	.hero__actions { margin: 0; }
	.hero .btn--mare { background: var(--mint-500); border-color: var(--mint-500); color: var(--g-950); }
	.hero .btn--mare:hover { background: var(--mint-300); border-color: var(--mint-300); }
	.hero .btn--contur { background: color-mix(in oklab, var(--white) 8%, transparent); border-color: color-mix(in oklab, var(--white) 45%, transparent); color: var(--white); backdrop-filter: blur(6px); }
	.hero .btn--contur:hover { background: var(--white); color: var(--g-950); border-color: var(--white); }
	.hero__nota {
		margin: var(--space-l) 0 0;
		font-size: var(--step--1);
		color: color-mix(in oklab, var(--white) 60%, transparent);
		max-width: 60ch;
	}

	/* Antetul paginilor individuale (proiect, anunț) */
	.bloc--antet {
		padding-top: var(--space-xl);
		padding-bottom: var(--space-xl);
		background:
			radial-gradient(60% 100% at 100% 0%, color-mix(in oklab, var(--mint-500) 16%, transparent), transparent 60%),
			var(--g-900);
	}
	.bloc--antet .cluster { margin-bottom: var(--space-s); }
	.bloc--antet .page-title { max-width: 26ch; font-size: var(--step-4); }

	/* Text + poză */
	.split__media {
		margin: 0;
		position: relative;
	}
	.split__media img {
		width: 100%;
		border-radius: var(--radius-l);
		box-shadow: var(--shadow-l);
	}
	.split__media::before {
		content: "";
		position: absolute;
		inset: auto -1rem -1rem auto;
		width: 55%;
		height: 55%;
		border-radius: var(--radius-l);
		background: var(--mint-100);
		z-index: -1;
	}
	.fundal--inchis .split__media::before { background: color-mix(in oklab, var(--mint-500) 20%, transparent); }
	.split__media figcaption { margin-top: var(--space-xs); font-size: var(--step--1); color: var(--ink-faint); }

	/* Pe fundal închis, textele de secțiune trec pe alb (după regulile din components) */
	.fundal--inchis .section-lead,
	.fundal--inchis .section-meta,
	.fundal--inchis .entry { color: color-mix(in oklab, var(--white) 78%, transparent); }
	.fundal--inchis .eyebrow { color: var(--mint-500); }
	.fundal--inchis .btn--contur { border-color: color-mix(in oklab, var(--white) 55%, transparent); color: var(--white); }
	.fundal--inchis .btn--contur:hover { background: var(--white); color: var(--g-950); border-color: var(--white); }
	.fundal--inchis .link-sageata { color: var(--mint-300); }
	.fundal--inchis .gol { color: color-mix(in oklab, var(--white) 60%, transparent); border-color: color-mix(in oklab, var(--white) 20%, transparent); }

	/* Apariții la derulare (doar când JS-ul e prezent; fără JS totul e vizibil) */
	.js .reveal {
		opacity: 0;
		transform: translateY(18px);
		transition: opacity 0.6s var(--ease), transform 0.6s var(--ease);
	}
	.js .reveal.is-in {
		opacity: 1;
		transform: none;
	}
	@media (prefers-reduced-motion: reduce) {
		.js .reveal { opacity: 1; transform: none; }
	}
}

@layer utilities {
	.mt-m { margin-top: var(--space-m); }
	.mt-l { margin-top: var(--space-l); }
	.mb-0 { margin-bottom: 0; }
	.text-center { text-align: center; }
	.small { font-size: var(--step--1); }
}

@layer blocks {
	/* Pagina de proiect: o coloană centrată */
	.proiect-single { max-width: 60rem; text-align: center; }
	.crumbs--inchis { color: var(--ink-faint); margin-bottom: var(--space-l); }
	.crumbs--inchis a { color: inherit; }
	.proiect-single__sigle { margin-bottom: var(--space-l); gap: var(--space-m) var(--space-xl); }
	.proiect-single__sigle img { height: 4rem; width: auto; max-height: none; }
	.proiect-single__tags { margin-bottom: var(--space-s); }
	.proiect-single__title { font-size: var(--step-3); max-width: 34ch; margin: 0 auto var(--space-s); text-wrap: balance; }
	.proiect-single__cod { margin: 0 0 var(--space-s); font-family: var(--font-display); font-weight: 600; color: var(--ink-soft); }
	.proiect-single__lead { max-width: 62ch; margin: 0 auto var(--space-m); font-size: var(--step-1); color: var(--ink-soft); }
	.proiect-single__meta { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-xs) var(--space-l); margin: 0 auto var(--space-l); max-width: 56rem; font-size: var(--step--1); }
	.proiect-single__meta div { max-width: 26rem; }
	.proiect-single__meta dt { font-size: 0.72rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-faint); }
	.proiect-single__meta dd { margin: 0; font-weight: 500; }
	.proiect-single__actions { margin: 0 0 var(--space-xl); }
	.proiect-single__text { text-align: left; max-width: 46rem; margin: 0 auto var(--space-l); }
	.proiect-single__text > * { margin-inline: auto; }
	.proiect-single .sigle-nota { margin-top: 0; color: var(--ink-soft); }
	.proiect-single__contact { max-width: 60ch; margin: var(--space-m) auto 0; font-size: var(--step--1); color: var(--ink-soft); }
}


/* ===== Identitate All Green: hero împărțit (text | poză în cadru), fundal crem ===== */
@layer blocks {
	.hero, .hero:not(.hero--cu-imagine) {
		background:
			radial-gradient(50% 70% at 100% 0%, color-mix(in oklab, var(--mint-500) 18%, transparent), transparent 60%),
			var(--cream);
		color: var(--ink);
		min-height: 0;
		padding-block: var(--space-2xl);
	}
	.hero__grid { background-image: linear-gradient(color-mix(in oklab, var(--g-800) 7%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in oklab, var(--g-800) 7%, transparent) 1px, transparent 1px); mask-image: radial-gradient(70% 90% at 80% 30%, #000 20%, transparent 100%); -webkit-mask-image: radial-gradient(70% 90% at 80% 30%, #000 20%, transparent 100%); }
	.hero__content { display: grid; gap: var(--space-l); align-items: center; }
	.hero--cu-imagine .hero__media { position: relative; inset: auto; z-index: 0; order: 2; }
	.hero--cu-imagine .hero__media::after { content: none; }
	.hero--cu-imagine .hero__media img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--radius-l); box-shadow: var(--shadow-l); }
	.hero--cu-imagine .hero__media::before { content: ""; position: absolute; inset: 1.25rem -1.25rem -1.25rem 1.25rem; border-radius: var(--radius-l); background: var(--mint-100); z-index: -1; }
	.hero--cu-imagine .hero__content { grid-template-columns: 1fr; }
	@media (min-width: 64rem) {
		.hero--cu-imagine .hero__content { grid-template-columns: 1.15fr 1fr; gap: var(--space-2xl); }
		.hero--cu-imagine .hero__media { padding-left: var(--space-m); }
	}
	.hero__title { color: var(--g-950); font-size: var(--step-6); font-weight: 600; letter-spacing: -0.015em; line-height: 1.05; }
	.hero--mic .hero__title { font-size: var(--step-5); }
	.hero__lead { color: var(--ink-soft); }
	.hero__nota { color: var(--ink-faint); }
	.eyebrow--hero { background: var(--white); border-color: var(--line); color: var(--g-700); backdrop-filter: none; }
	.eyebrow--hero::before { background: var(--g-600); box-shadow: 0 0 0 4px var(--mint-100); }
	.hero .btn--mare { background: var(--g-800); border-color: var(--g-800); color: var(--white); }
	.hero .btn--mare:hover { background: var(--g-900); border-color: var(--g-900); }
	.hero .btn--contur { background: transparent; border-color: var(--g-800); color: var(--g-900); backdrop-filter: none; }
	.hero .btn--contur:hover { background: var(--g-800); color: var(--white); }
	.bloc--antet { background: var(--cream); }
	.bloc--antet .page-title--alb, .bloc--antet .page-lead { color: var(--ink); }
	.cta { background: radial-gradient(60% 120% at 100% 0%, color-mix(in oklab, var(--mint-500) 30%, transparent), transparent 60%), linear-gradient(135deg, var(--g-900), var(--g-800)); }
}

/* ===== Structură proprie All Green: antetul paginilor interioare și eticheta din hero ===== */
@layer blocks {
	/* Eticheta din hero: text cu linie, fără pastilă */
	.eyebrow--hero { display: flex; padding: 0; border: 0; border-radius: 0; background: none; }
	.eyebrow--hero::before { width: 1.75rem; height: 2px; border-radius: 0; background: var(--mint-500); box-shadow: none; }

	/* Antet interior: fir de navigare, titlu, linie verde, text — fără grilă și fără degrade */
	.hero.hero--mic { padding-block: var(--space-xl) var(--space-l); background: var(--cream); border-bottom: 1px solid var(--line); }
	.hero--mic .hero__grid { display: none; }
	.hero__crumbs { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: var(--space-s); font-size: var(--step--1); color: var(--ink-faint); }
	.hero__crumbs a { color: var(--g-700); text-decoration: none; }
	.hero__crumbs a:hover { text-decoration: underline; }
	.hero--mic .hero__title { max-width: 24ch; margin-bottom: var(--space-s); font-size: var(--step-5); }
	.hero--mic .hero__title::after { content: ""; display: block; width: 4rem; height: 4px; margin-top: var(--space-s); border-radius: 2px; background: var(--mint-500); }
	.hero--mic .hero__lead { margin-bottom: 0; }
}
