/* ============================================
   Landing de Proyecto — GNE Finance
   ============================================ */

:root {
	--gne-dark: #101a2b;
	--gne-accent: #2e86d1;
	--gne-texto: #374151;
	--gne-gris-claro: #6b7280;
}

.gne-proyecto {
	font-family: inherit; /* hereda la tipografía real del sitio (header/footer) */
	margin-top: 0;
}

/* Por si el tema recorta el contenido en algún contenedor más arriba */
body.single-proyecto #content,
body.single-proyecto #primary,
body.single-proyecto .site-content,
body.single-proyecto .ast-container,
body.single-proyecto .entry-content,
body.single-proyecto article {
	overflow: visible !important;
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* ---------- HERO ---------- */
.gne-proyecto__hero {
	position: relative;
	min-height: 460px;
	background-size: cover;
	background-position: center;
	background-color: #111;
	display: flex;
	align-items: flex-end;
	box-sizing: border-box;
}

.gne-proyecto__hero-overlay {
	width: 100%;
	background: linear-gradient(180deg, rgba(10,15,25,0.15) 0%, rgba(10,15,25,0.75) 100%);
	padding: 60px 24px 40px;
}

.gne-proyecto__hero-contenido {
	max-width: 1200px;
	margin: 0 auto;
}

.gne-proyecto__etiqueta {
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-size: 13px;
	font-weight: 600;
	color: var(--gne-accent);
	margin: 0 0 12px;
}

.gne-proyecto__titulo {
	font-size: 2.6rem;
	line-height: 1.15;
	color: #fff;
	margin: 0 0 14px;
}

.gne-proyecto__subtitulo {
	font-size: 1.1rem;
	color: #e5e9f0;
	line-height: 1.5;
	max-width: 640px;
	margin: 0;
}

.gne-proyecto__contenedor--sin-hero {
	max-width: 1200px;
	margin: 0 auto;
	padding: 60px 24px 0;
}
.gne-proyecto__contenedor--sin-hero .gne-proyecto__titulo,
.gne-proyecto__contenedor--sin-hero .gne-proyecto__subtitulo { color: inherit; }

/* ---------- FRANJA DE DATOS ---------- */
.gne-proyecto__meta {
	position: relative;
	background: #eef1f5;
	border-bottom: 1px solid #e2e6ec;
	box-sizing: border-box;
}

.gne-proyecto__meta-interior {
	max-width: 1200px;
	margin: 0 auto;
	padding: 28px 24px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px 24px;
}

.gne-proyecto__meta-item { display: flex; flex-direction: column; }

.gne-proyecto__meta-label {
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #9aa3af;
	margin-bottom: 4px;
}

.gne-proyecto__meta-valor {
	font-size: 1rem;
	font-weight: 700;
	color: #111827;
}

/* ---------- CUERPO: nav lateral + contenido ---------- */
.gne-proyecto__cuerpo {
	max-width: 1200px;
	margin: 0 auto;
	padding: 48px 32px 80px;
	display: grid;
	grid-template-columns: 210px 1fr;
	gap: 56px;
	align-items: start;
}

.gne-proyecto__nav {
	position: sticky;
	top: 40px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.gne-proyecto__nav a {
	padding: 8px 0;
	color: var(--gne-gris-claro);
	text-decoration: none;
	font-size: 14px;
	border-left: 2px solid transparent;
	padding-left: 14px;
	transition: color 0.15s ease, border-color 0.15s ease;
}

.gne-proyecto__nav a:hover { color: #111827; }

.gne-proyecto__nav a.is-active {
	color: var(--gne-accent);
	border-left-color: var(--gne-accent);
	font-weight: 600;
}

.gne-proyecto__col-contenido { min-width: 0; }

.gne-proyecto__seccion {
	display: none;
	margin-bottom: 0;
	padding-bottom: 8px;
}

.gne-proyecto__seccion.is-visible {
	display: block;
}

.gne-proyecto__seccion h2 {
	font-size: 1.5rem;
	margin: 0 0 20px;
}

/* -- El proyecto: texto + imagen al costado -- */
.gne-proyecto__proyecto-grid {
	display: grid;
	grid-template-columns: 1.3fr 1fr;
	gap: 32px;
	align-items: start;
}

.gne-proyecto__texto p {
	line-height: 1.7;
	color: var(--gne-texto);
	margin: 0 0 16px;
}

.gne-proyecto__imagen-secundaria img {
	width: 100%;
	height: auto;
	border-radius: 6px;
	display: block;
}

/* -- Contribución de GNE (panel oscuro) -- */
.gne-proyecto__panel-oscuro {
	background: var(--gne-dark);
	color: #fff;
	padding: 40px;
	border-radius: 8px;
}

.gne-proyecto__panel-oscuro h2 { color: #fff; }

.gne-proyecto__lista-numerada {
	list-style: none;
	counter-reset: contribucion;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4px 40px;
}

.gne-proyecto__lista-numerada li {
	counter-increment: contribucion;
	position: relative;
	padding: 16px 0 16px 40px;
	border-bottom: 1px solid rgba(255,255,255,0.12);
	line-height: 1.5;
	color: #dfe3ea;
	font-size: 0.95rem;
}

.gne-proyecto__lista-numerada li::before {
	content: counter(contribucion, decimal-leading-zero);
	position: absolute;
	left: 0;
	top: 16px;
	font-weight: 700;
	color: var(--gne-accent);
	font-size: 13px;
}

/* -- Valor estratégico -- */
.gne-proyecto__lista-valores {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.gne-proyecto__lista-valores li {
	background: #eef5fb;
	border-left: 3px solid var(--gne-accent);
	border-radius: 4px;
	padding: 18px 20px;
	line-height: 1.5;
	color: var(--gne-texto);
	font-size: 0.95rem;
}

/* -- Acciones finales -- */
.gne-proyecto__acciones {
	display: flex;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
	margin-top: 24px;
}

.gne-proyecto__boton-externo {
	display: inline-block;
	padding: 12px 24px;
	background: var(--gne-dark);
	color: #fff;
	text-decoration: none;
	border-radius: 4px;
	font-weight: 600;
	font-size: 14px;
}

.gne-proyecto__boton-externo:hover { background: #1f2c45; color: #fff; }

.gne-proyecto__volver {
	color: var(--gne-gris-claro);
	text-decoration: none;
	font-size: 14px;
}

.gne-proyecto__volver:hover { color: #111827; }

/* ---------- RESPONSIVE ---------- */
@media (max-width: 780px) {
	.gne-proyecto__cuerpo { grid-template-columns: 1fr; }
	.gne-proyecto__nav {
		position: static;
		flex-direction: row;
		flex-wrap: wrap;
		gap: 16px;
		margin-bottom: 12px;
	}
	.gne-proyecto__nav a { padding-left: 0; border-left: none; border-bottom: 2px solid transparent; }
	.gne-proyecto__nav a.is-active { border-left: none; border-bottom-color: var(--gne-accent); }
	.gne-proyecto__proyecto-grid { grid-template-columns: 1fr; }
	.gne-proyecto__lista-numerada { grid-template-columns: 1fr; }
	.gne-proyecto__lista-valores { grid-template-columns: 1fr; }
	.gne-proyecto__meta-interior { grid-template-columns: 1fr 1fr; }
	.gne-proyecto__titulo { font-size: 2rem; }
	.gne-proyecto__panel-oscuro { padding: 28px 20px; }
}
