/* =========================================================
   1. HEADER — GÉNÉRAL
   ========================================================= */
/* Description / baseline du site */
.site-description {
	text-align: center;
	font-family: 'Contrail One', sans-serif;
}

/* Centrer le logo */
.custom-logo {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/* =========================================================
   2. HEADER — VIDÉO ACCUEIL
   DESKTOP UNIQUEMENT
   ========================================================= */
/* Vidéo cachée par défaut */
#astree-header-video {
	display: none !important;
}

/* ---------------------------------------------------------
   ACCUEIL — DESKTOP
   --------------------------------------------------------- */
@media (min-width: 922px) {
	/* Afficher la vidéo uniquement sur la page d'accueil */
	body.home #astree-header-video {
		display: block !important;
	}
	
	/* Supprimer les images de fond du header */
	body.home #masthead,
	    body.home #ast-desktop-header,
	    body.home .ast-above-header-wrap,
	    body.home .ast-above-header-bar {
		background-image: none !important;
	}
	
	/* Above Header */
	body.home .ast-above-header-bar {
		position: relative !important;
		overflow: hidden !important;
	}
	
	/* Supprimer les limites de largeur d'Astra */
	body.home .ast-above-header-wrap,
	    body.home .site-above-header-wrap,
	    body.home .site-above-header-wrap.ast-container {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	/* -----------------------------------------------------
	       CONTENEUR VIDÉO
	       ----------------------------------------------------- */
	body.home #astree-header-video {
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
		pointer-events: none !important;
		z-index: 0 !important;
	}
	
	/* -----------------------------------------------------
	       IFRAME YOUTUBE
	       ----------------------------------------------------- */
	body.home #astree-header-video iframe {
		position: absolute !important;
		top: 50% !important;
		left: 50% !important;
		width: 100vw !important;
		height: 56.25vw !important;
		min-width: 100% !important;
		min-height: 100% !important;
		transform: translate(-50%, -50%) !important;
		border: 0 !important;
		pointer-events: none !important;
	}
	
	/* -----------------------------------------------------
	       LOGO + TITRE AU-DESSUS DE LA VIDÉO
	       ----------------------------------------------------- */
	body.home .site-header-above-section-center {
		position: relative !important;
		z-index: 1 !important;
	}
	
	body.home .site-branding {
		position: relative !important;
		z-index: 2 !important;
	}
}

/* ---------------------------------------------------------
   MOBILE + TABLETTE
   PAS DE VIDÉO
   --------------------------------------------------------- */
@media (max-width: 921px) {
	#astree-header-video,
	    .ast-header-html-1 {
		display: none !important;
	}
	
	.ast-above-header-bar {
		min-height: 0 !important;
	}
}

/* =========================================================
   3. HEADER — MOBILE + TABLETTE
   ALIGNEMENT
   ========================================================= */
@media (max-width: 921px) {
	/* -----------------------------------------------------
	       BLOC DU LOGO + TITRE
	       ----------------------------------------------------- */
	.site-branding {
		width: 100% !important;
		max-width: 100% !important;
		text-align: center !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
	
	/* -----------------------------------------------------
	       LOGO
	       ----------------------------------------------------- */
	.site-branding .custom-logo {
		display: block !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
	
	/* -----------------------------------------------------
	       TITRE DU SITE
	       THÉÂTRE ASTRÉE
	       ----------------------------------------------------- */
	.site-title,
	    .site-title a {
		font-family: 'Contrail One', sans-serif !important;
		line-height: 1 !important;
		font-weight: 400 !important;
	/* Toujours sur une seule ligne */
		white-space: nowrap !important;
		text-align: center !important;
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
	
	/* -----------------------------------------------------
	       BASELINE
	       ----------------------------------------------------- */
	.site-description,
	    p.site-description {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		text-align: center !important;
	}
	
	/* -----------------------------------------------------
	       TITRE DE LA PAGE
	       ----------------------------------------------------- */
	h1.entry-title,
	    h1.entry-title[itemprop="headline"],
	    .entry-title {
		text-align: center !important;
	}
}

/* =========================================================
   4. PAGE D'ACCUEIL
   ========================================================= */
/* H3 responsive :
   "DES TARIFS ACCESSIBLES..." */
.vc_custom_1764165917324 {
	font-size: clamp(28px, 6vw, 70px) !important;
	line-height: 1.2 !important;
}

/* =========================================================
   5. PROGRAMMATION — RESPONSIVE
   ========================================================= */
@media (max-width: 1024px) {
	.event-left,
	    .event-right {
		flex: 0 0 100%;
		text-align: left;
	}
	
	.event-header-image img {
		max-width: 100%;
	}
	
	.event-container {
		padding: 10px;
	}
	
	.event-title {
		font-size: 1.5rem;
	}
}

/* =========================================================
   6. TITRES DES SPECTACLES — RESPONSIVE
   ========================================================= */
h2[style*="text-align: center"] {
	font-family: 'Contrail One', sans-serif !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	word-break: keep-all !important;
	overflow-wrap: normal !important;
	white-space: normal !important;
	text-wrap: balance;
	margin: .5em auto;
	text-align: center !important;
	max-width: 95%;
}

/* =========================================================
 * 7. PAGES ÉVÉNEMENTS — TITRES
  ========================================================= */
body.single-event .entry-content h2, body.single-event .wpb_wrapper h2, body.post-type-archive-event h2, body.tax-event-categories h2, body.single-tribe_events .entry-content h2, body.tribe-events-page-template h2 {
	font-family: 'Contrail One', sans-serif !important;
	font-size: 30px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
}

/* === — MOBILE ========== */
@media (max-width: 768px) {
	h1.entry-title,
	    h1.entry-title[itemprop="headline"] {
		font-family: 'Contrail One', sans-serif !important;
		font-size: 50px !important;
		font-weight: 400 !important;
		line-height: 1.1 !important;
		text-align: center !important;
	}
}

/* =========================================================
   8. BOUTON "RÉSERVER"
   ========================================================= */
/* Style principal */
.wp-block-button__link.wp-element-button.btn-reserver {
	color: #ffffff !important;
	background-color: #ff6100;
	border: 2px solid #ff6100;
	border-radius: 8px;
	padding: 6px 30px;
	font-size: 16px;
	text-decoration: none;
	transition: all .2s ease;
}

/* Survol */
.wp-block-button__link.wp-element-button.btn-reserver:hover {
	background-color: #ffffff !important;
	color: #ff6100 !important;
	border: 2px solid #ff6100 !important;
}

/* =========================================================
   9. SIDEBAR — PAGES ÉVÉNEMENTS
   ========================================================= */
/* Petit espace au-dessus du premier widget */
#secondary .widget:first-child {
	margin-top: 10px !important;
	padding-top: 40px !important;
}

/* Supprimer les paragraphes vides */
#secondary p:empty {
	display: none;
	margin: 0;
	padding: 0;
}

/* Arrondir les bords de la sidebar */
.sidebar-main {
	border-radius: 12px;
	overflow: hidden;
}

/* Style des widgets */
.ast-separate-container.ast-two-container #secondary .widget {
	background-color: var(--ast-global-color-5) !important;
	border-radius: 12px;
	padding: 20px;
}

/* =========================================================
   10. SIDEBAR — MOBILE
   ========================================================= */
/* Sur mobile, afficher la sidebar avant le contenu
   principal — uniquement sur les pages événements */
@media (max-width: 768px) {
	body.single-event .ast-container,
	    body.single-tribe_events .ast-container {
		display: flex !important;
		flex-direction: column !important;
	}
	
	body.single-event #secondary,
	    body.single-tribe_events #secondary {
		order: -1 !important;
	}
}

/* =========================================================
   11. LOGO ÉVÉNEMENT — MASQUER SI AUCUN LOGO
   ========================================================= */
#secondary img[alt="Logo"][src=""] {
	display: none !important;
}