/* ==========================================================================
   ABC DANSE - DÉTAIL D'UN ÉVÉNEMENT
   ========================================================================== */

.manifestation-detail-page{
	background:var(--home-paper);
}

.manifestation-hero{
	padding:34px 0 58px;
	background:
		radial-gradient(circle at 88% 10%,rgba(238,61,131,.16),transparent 30%),
		linear-gradient(135deg,#211126,#551845);
	color:#fff;
}

.manifestation-back{
	display:inline-flex;
	align-items:center;
	gap:8px;
	margin-bottom:26px;
	color:rgba(255,255,255,.82)!important;
	text-decoration:none;
	font-size:.9rem;
	font-weight:600;
}

.manifestation-back:hover{
	color:#fff!important;
}

.manifestation-hero-grid{
	display:grid;
	grid-template-columns:1.05fr .95fr;
	gap:44px;
	align-items:center;
}

.manifestation-visual{
	position:relative;
	overflow:hidden;
	border-radius:26px;
	background:#1b111f;
	box-shadow:0 24px 60px rgba(0,0,0,.28);
}

.manifestation-visual picture{
	display:block;
}

.manifestation-visual img{
	position:static!important;
	display:block;
	width:100%!important;
	height:auto!important;
}

.manifestation-overlay{
	position:absolute;
	inset:0;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:12%;
	background:rgba(12,7,14,.10);
}

.manifestation-overlay img{
	width:80%!important;
	height:auto!important;
	object-fit:contain!important;
}

.manifestation-hero-copy .home-kicker{
	color:#ff83b7;
}

.manifestation-hero-copy h1{
	margin:8px 0 18px;
	color:#fff;
	font-size:clamp(2.8rem,5.4vw,5.4rem);
	line-height:.98;
	letter-spacing:-.045em;
	text-transform:none;
}

.manifestation-when{
	display:flex;
	align-items:flex-start;
	gap:10px;
	margin:0 0 24px;
	color:#fff;
	font-size:1.12rem;
	font-weight:700;
	line-height:1.5;
}

.manifestation-when i{
	margin-top:4px;
	color:#ff83b7;
}

.manifestation-status{
	display:flex;
	flex-direction:column;
	gap:5px;
	margin:18px 0;
	padding:16px 18px;
	border-radius:15px;
	font-size:.92rem;
	line-height:1.5;
}

.manifestation-status strong{
	font-size:1rem;
	color: #fff;
}

.status-confirmed{
	background:rgba(72,177,105,.18);
	border:1px solid rgba(114,225,149,.24);
}

.status-cancelled,
.status-full{
	background:rgba(210,70,80,.18);
	border:1px solid rgba(255,126,136,.25);
}

.manifestation-member-note{
	display:flex;
	gap:13px;
	align-items:flex-start;
	margin:22px 0 16px;
	padding:16px 18px;
	border-radius:15px;
	background:rgba(255,255,255,.09);
	border:1px solid rgba(255,255,255,.14);
	line-height:1.55;
}

.manifestation-member-note i{
	margin-top:3px;
	color:#ff83b7;
}

.manifestation-member-note strong{
	display:block;
	color:#fff;
}

.manifestation-member-note a{
	color:#fff!important;
	text-decoration:underline;
}

.manifestation-main-cta{
	width:100%;
	text-align:center;
}

.manifestation-content{
	background:#fff;
}

.manifestation-content-grid{
	display:grid;
	grid-template-columns:minmax(0,1fr) 330px;
	gap:42px;
	align-items:start;
}

.manifestation-description{
	min-width:0;
}

.manifestation-description-text{
	color:var(--home-muted);
	line-height:1.78;
	overflow-wrap:anywhere;
}

.manifestation-description-text img{
	max-width:100%!important;
	height:auto!important;
}

.manifestation-description-text p:first-child{
	margin-top:0;
}

.manifestation-sidebar{
	position:sticky;
	top:24px;
}

.manifestation-info-card{
	padding:26px;
	border-radius:22px;
	background:#f8f2f5;
	border:1px solid rgba(25,20,33,.06);
	box-shadow:0 12px 32px rgba(31,18,39,.06);
}

.manifestation-info-card h3{
	margin:0 0 20px;
	font-size:1.2rem;
	text-transform:none;
}

.manifestation-info-row{
	display:grid;
	grid-template-columns:28px 1fr;
	gap:10px;
	margin-bottom:20px;
}

.manifestation-info-row > i{
	color:var(--home-purple);
	font-size:1.15rem;
	margin-top:3px;
}

.manifestation-info-row strong{
	display:block;
	margin-bottom:3px;
}

.manifestation-info-row span{
	display:block;
	color:var(--home-muted);
	font-size:.92rem;
	line-height:1.55;
}

.manifestation-info-card .home-btn{
	width:100%;
	margin-top:10px;
	text-align:center;
}

@media(max-width:980px){

	.manifestation-hero-grid,
	.manifestation-content-grid{
		grid-template-columns:1fr;
	}

	.manifestation-sidebar{
		position:static;
	}

	.manifestation-info-card{
		max-width:none;
	}
}

@media(max-width:736px){

	.manifestation-hero{
		padding:24px 0 42px;
	}

	.manifestation-back{
		margin-bottom:18px;
	}

	.manifestation-hero-grid{
		gap:28px;
	}

	.manifestation-visual{
		order:-1;
		border-radius:20px;
	}

	.manifestation-hero-copy h1{
		font-size:clamp(2.5rem,12vw,4rem);
	}

	.manifestation-when{
		font-size:1rem;
	}

	.manifestation-content-grid{
		gap:30px;
	}

	.manifestation-info-card{
		padding:22px;
	}
}
