:root{
	--verde:#4d8f57;
	--verde-oscuro:#264b34;
	--verde-claro:#edf7ed;
	--crema:#faf7f1;
	--arena:#e9dcc6;
	--texto:#3b3b3b;
	--gris:#6d6d6d;
	--blanco:#ffffff;
	
	```
	--shadow-soft:0 8px 25px rgba(0,0,0,.06);
	--shadow-hover:0 18px 40px rgba(0,0,0,.12);
	
	--radius:28px;
	--transition:.35s ease;
	```
	
}

.div-ancho-completo *,
.div-ancho-completo *::before,
.div-ancho-completo *::after{
	box-sizing:border-box;
}

.div-ancho-completo{
	background:
	linear-gradient(to bottom,#f9fcf8,#eef7ed);
	color:var(--texto);
	overflow:hidden;
	position:relative;
	display: block;
    justify-items: center;
	padding:0;
}

/* Decoraciones fondo */
.div-ancho-completo::before{
	content:"";
	position:absolute;
	width:600px;
	height:600px;
	background:rgba(77,143,87,.08);
	border-radius:50%;
	top:-300px;
	left:-250px;
	filter:blur(20px);
}

.div-ancho-completo::after{
	content:"";
	position:absolute;
	width:500px;
	height:500px;
	background:rgba(233,220,198,.25);
	border-radius:50%;
	bottom:-250px;
	right:-180px;
	filter:blur(20px);
}

/* =========================
	SECCIONES
========================= */
.div-ancho-completo .wp-block-group{
	position:relative;
	z-index:2;
}
.div-cab-inicio{
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	text-align:center;
}

.div-cab-inicio h2{
	font-size:6rem;
	line-height:1;
	margin-bottom:20px;
	color:var(--verde-oscuro);
	font-weight:800;
	letter-spacing:-2px;
}

.div-cab-inicio p:first-of-type{
	display:inline-block;
	background:rgba(77,143,87,.12);
	color:var(--verde);
	padding:12px 22px;
	border-radius:50px;
	font-size:1rem;
	font-weight:700;
	margin-bottom:25px;
	letter-spacing:1px;
}

.div-cab-inicio p:nth-of-type(2){
	font-size:1.35rem;
	max-width:760px;
	line-height:1.9;
	color:var(--gris);
}

/* =========================
	CARDS GENERALES
========================= */
.div-invitacion,
.div-conexion,
.div-encuentras,
.div-beneficios,
.div-reserva,
.div-final{
	background:rgb(206 242 211 / 85%);
	border-radius:var(--radius);
	box-shadow:var(--shadow-soft);
	margin: 2rem!important;
	padding: 2rem;
	border:1px solid rgba(255,255,255,.8);
	backdrop-filter:blur(8px);
	transition:var(--transition);
	width: 95%;
	max-width:1200px;
	margin:2rem auto;
}

.div-invitacion:hover,
.div-conexion:hover,
.div-encuentras:hover,
.div-beneficios:hover,
.div-reserva:hover{
	transform:translateY(-8px);
	box-shadow:var(--shadow-hover);
}

/* =========================
	TITULOS
========================= */
.div-ancho-completo h2{
	color:var(--verde-oscuro);
	margin-bottom:18px;
    text-align: center;
}

.div-ancho-completo h1::after, .div-ancho-completo h2::after{
	content:"";
	display:block;
	width:90px;
	height:5px;
	margin-top:18px;
	justify-self: center;
	border-radius:10px;
	background: linear-gradient(to right,var(--verde),var(--arena));
}

.div-ancho-completo h3{
	font-size:1.8rem;
	color:var(--verde);
	margin-bottom:18px;
}

/* =========================
	TEXTOS
========================= */
.div-ancho-completo p{
	font-size:1.08rem;
	line-height:1.95;
	color:var(--gris);
}

.div-ancho-completo strong{
	color:var(--verde-oscuro);
}

/* =========================
	LISTAS MODERNAS
========================= */
.div-ancho-completo ul{
	list-style:none;
	padding:0;
	margin-top:30px;
	text-align: left;
}

.div-ancho-completo li{
	background:#fff;
	margin-bottom:16px;
	padding:18px 22px 18px 65px;
	border-radius:20px;
	position:relative;
	box-shadow:0 6px 16px rgba(0,0,0,.05);
	transition:var(--transition);
	line-height:1.7;
}

.div-ancho-completo li::before{
	content:"🌿";
	position:absolute;
	left:18px;
	top:50%;
	transform:translateY(-50%);
	width:34px;
	height:34px;
	background:var(--verde-claro);
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:1rem;
}

.div-ancho-completo li:hover{
	transform:translateX(8px);
	background:#fcfffc;
	color: black;
}

/* =========================
	STANDS EN GRID
========================= */
.div-stands{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
	gap:1rem;
	padding: 2rem;
}

.div-stands h2,
.div-stands > p:first-of-type{
	grid-column:1/-1;
}

.div-stands p{
	background:#fff;
	border-radius:28px;
	padding:35px 28px;
	box-shadow:var(--shadow-soft);
	position:relative;
	overflow:hidden;
	transition:var(--transition);
	border:1px solid rgb(77 143 87 / 30%);
	min-height:130px;
}

/* Fondo decorativo */
.div-stands p::before{
	content:"";
	position:absolute;
	width:160px;
	height:160px;
	background:rgba(77,143,87,.06);
	border-radius:50%;
	top:-70px;
	right:-70px;
}

/* Línea elegante */
.div-stands p::after{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:6px;
	background:
	linear-gradient(to right,var(--verde),var(--arena));
}

.div-stands p:hover{
	transform:translateY(-12px);
	box-shadow:var(--shadow-hover);
}

/* =========================
	BOTONES
========================= */
.wp-block-buttons{
	margin-top:40px;
}

.wp-block-button__link{
	background:
	linear-gradient(135deg,var(--verde),var(--verde-oscuro));
	color:#fff !important;
	padding:18px 42px;
	border-radius:60px;
	font-size:1.05rem;
	font-weight:700;
	text-decoration:none;
	box-shadow:
	0 12px 28px rgba(38,75,52,.22);
	transition:var(--transition);
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:10px;
}

.wp-block-button__link:hover{
	transform:translateY(-5px) scale(1.03);
	box-shadow:
	0 18px 40px rgba(38,75,52,.30);
}

.div-reserva{
	background:
	linear-gradient(135deg,#2d5135,#4d8f57);
	color:#fff;
	text-align:center;
}

.div-reserva h2,
.div-reserva p,
.div-reserva li{
	color:#fff;
}

.div-reserva li{
	background:rgba(255,255,255,.12);
}

.div-reserva li::before{
	background:#fff;
}

.div-reserva h2::after{
	margin:auto;
	background:#fff;
}

.div-reserva .wp-block-button__link{
	background:#fff;
	color:#264b34 !important;
}

/* =========================
	FINAL
========================= */
.div-final{
	background:#264b34;
	text-align:center;
}

.div-final p{
	color:#fff;
	margin-bottom:22px;
}

/* =========================
	ANIMACIONES
========================= */
.div-ancho-completo .wp-block-group{
	animation:fadeUp .9s ease both;
}

@keyframes fadeUp{
	from{
		opacity:0;
		transform:translateY(40px);
	}
	to{
		opacity:1;
		transform:translateY(0);
	}
}

@media(max-width:768px){
	.div-ancho-completo .wp-block-group{
		padding:60px 22px;
	}
	
	.div-cab-inicio{
		min-height:auto;
		padding-top:120px;
		padding-bottom:90px;
	}
	
	.div-cab-inicio h2{
		font-size:3.5rem;
	}
	
	.div-ancho-completo h2{
		font-size:2rem;
	}
	
	.div-cab-inicio p:nth-of-type(2){
		font-size:1.1rem;
	}
	
	.div-stands{
		grid-template-columns:1fr;
	}
	
	.wp-block-button__link{
		width:100%;
	}
	
}
