/* =========================================================
   SINGLE EVENTOS (mismo criterio que single-local.css)
   ========================================================= */

/* ===== HERO superior (250px alto, overlay 50%) ===== */
.single-event-hero{
	position:relative;
	z-index:2;
	width:100vw;
	left:50%; right:50%;
	margin-left:-50vw; margin-right:-50vw;
	height:250px;
	background-position:center;
	background-size:cover;
	background-repeat:no-repeat;
}
.single-event-hero::before{
	content:"";
	position:absolute;
	inset:0;
	background:rgba(0,0,0,.5);
}
.single-event-hero__inner{
	position:relative;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	padding:0 1rem;
}
.single-event-hero__title{
	color:#fff;
	font-weight:600;
	line-height:1.05;
	text-transform:uppercase;
	margin:0;
	font-size:3.3333333333rem;
}

/* ===== SINGLE EVENTO (60/40) ===== */
.single-event{
	--gap:2rem;
	--radius:18px;

	position:relative;
	margin-top:350px; /* mismo criterio que local */
	display:grid;
	grid-template-columns:minmax(0,60%) minmax(0,40%);
	grid-template-areas:"head photo" "cont photo";
	gap:var(--gap);
	align-items:start;
}
.single-event.no-side-photo{
	grid-template-columns:1fr;
	grid-template-areas:"head" "cont";
}

.single-event__header{ grid-area:head; }
.single-event__content{ grid-area:cont; }
.single-event__photo{  grid-area:photo; }

/* Imagen principal (evento) */
.single-event__hero{
	margin:0 0 .75rem 0;
	border-radius:var(--radius);
	overflow:hidden;
	background:#fff;
	width:100%; /* en eventos mejor grande */
}
.single-event__hero-img{
	display:block;
	width:100%;
	height:auto;
}

/* Facts */
.single-event__facts{
	list-style:none;
	padding:0;
	margin:.25rem 0 1.5rem 0;
	display:grid;
	grid-template-columns:1fr; /* 1 item por fila */
	gap:.75rem;
	font-family:'Antonio',sans-serif;
}
.fact{
	display:flex;
	align-items:center;
	gap:.5rem;
	font-size:1rem;
	font-weight:bold;
	margin-top:-12px;
}
.fact a{
	color:inherit;
	text-decoration:underline;
	text-underline-offset:2px;
}

/* Columna derecha: mínimo 600px y foto cover */
.single-event__photo{
	position:relative;
	border-radius:var(--radius);
	overflow:hidden;
	background:#f5f5f5;
	min-height:600px;
}
.single-event__photo img{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center;
	display:block;
}
@media (max-width:1024px){
	.single-event__photo{ min-height:420px; }
}
@media (max-width:640px){
	.single-event__photo{ min-height:320px; }
}

/* Texto */
.single-event__acfdesc,
.single-event__content{
	font-size:1.05rem;
	line-height:1.65;
}
.single-event__acfdesc p,
.single-event__content p{
	margin:0 0 1rem 0;
}

/* SR-only helper */
.sr-only{
	position:absolute;
	width:1px;
	height:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip:rect(0,0,0,0);
	white-space:nowrap;
	border:0;
}

/* ===== Mucho más por descubrir (cards pequeñas) ===== */
.single-event-more{ margin-top:0; }



.single-event-more__h{
	font-weight:800;
	font-size:clamp(1.4rem, 2.2vw, 1.75rem);
	display:grid;
	grid-template-columns:auto 1fr;
	align-items:baseline;
	gap:.75rem;
	margin:3rem 0 1.25rem;
}
.single-event-more__h::after{
	content:"";
	height:2px;
	background:#000;
}

/* Grid 3 columnas */
.single-event-more__grid{
	list-style:none;
	padding:0;
	margin:0;
	display:grid;
	grid-template-columns:repeat(3, minmax(0, 1fr));
	gap:28px; /* más aire entre tarjetas */
}
.single-event-more__link{
	display:block;
	text-decoration:none;
	color:inherit;
}
.single-event-more__media{
	position:relative;
	border-radius:var(--radius);
	overflow:hidden;
	background:#f5f5f5;
	box-shadow:0 10px 24px rgba(0,0,0,.12);
}
.single-event-more__img{
	width:100%;
	display:block;
	aspect-ratio:4 / 5;
	object-fit:cover;
	transform:translateZ(0) scale(1);
	transition:transform .28s ease;
}
.single-event-more__link:hover .single-event-more__img,
.single-event-more__link:focus-visible .single-event-more__img{
	transform:translateZ(0) scale(1.045);
}
.single-event-more__body{
	padding:12px 2px 0;
}
.single-event-more__title{
	margin:0;
	font-size:18px;
	line-height:1.2;
	font-weight:800;
}
.single-event-more__sub{
	margin-top:8px;
	font-size:14px;
	opacity:.88;
}

/* Responsive */
@media (max-width:1024px){
	.single-event{
		grid-template-columns:1fr;
		grid-template-areas:"head" "photo" "cont";
	}
	.single-event-more__grid{
		grid-template-columns:repeat(2, minmax(0, 1fr));
		gap:20px;
	}
}
@media (max-width:640px){
	.single-event{ --gap:1.25rem; margin-top:20px; }
	.single-event__facts{ gap:.5rem 1rem; }
	.single-event-more__grid{
		grid-template-columns:1fr;
		gap:18px;
	}
}

/* WPBakery fix */
.single-event__content .vc_column_container > .vc_column-inner,
.single-event__acfdesc .vc_column_container > .vc_column-inner{
	padding-left:0 !important;
}



