@charset "UTF-8";
/* CSS Document */

/***********************************************/
/* VARIABLES SPECIFIQUES LIBRES, ENSEMBLE      */
/***********************************************/

:root {
	--le-color-red: #D9505C;
	--le-color-text: #222222;
	--le-color-title: #222222;
	
	--le-color-light: #ffffff;
	
	--le-color-bg-dark: #222222;
}

/***********************************************/
/* HEADER                                      */
/***********************************************/

.le-header {
	padding: var(--cal-pad-x);
}

.le-header, .le-header h2 {
	color: var(--color-white);
}

.le-header p {
	line-height: 1.2rem;
}

/* Halo doux autour du texte blanc */
.text-contrast-halo {
  text-shadow:
    0 0 2px rgba(0,0,0,.75),
    0 0 6px rgba(0,0,0,.55),
    0 0 12px rgba(0,0,0,.45);
}

/***********************************************/
/* MENU                                        */
/***********************************************/

.le-menu {
	display: flex;
	align-items: center;
	color: var(--le-color-light);
	font-family: var(--font-headings);
	font-size: var(--h4-size);
	text-transform: uppercase;
	background: var(--le-color-red);
	padding: 0 var(--cal-pad-x) var(--space-3) var(--cal-pad-x);
}

.le-menu a {
	color: var(--le-color-light);
	padding: var(--space-6) 0 var(--space-3) 0 !important;
}

.le-menu li {
	margin-right: var(--space-6);
}

.le-menu .e--pointer-double-line .elementor-item:after, 
.le-menu .e--pointer-double-line .elementor-item:before, 
.le-menu .e--pointer-overline .elementor-item:after, 
.le-menu .e--pointer-overline .elementor-item:before, 
.le-menu .e--pointer-underline .elementor-item:after, 
.le-menu .e--pointer-underline .elementor-item:before {
	background-color: var(--le-color-light);
}

.le-menu .le-social .elementor-social-icon {
	padding: 0 !important;
/*	margin-top: 18px;
	*/
}

@media (max-width: 767px) {
	.le-menu {
		font-size: var( --body-size);
		padding-bottom: var(--space-2);
	}
	.le-menu li {
		margin-right: var(--space-3);
	}
	.le-menu a {
		padding: var(--space-3) 0 var(--space-2) 0 !important;	
	}
}

/***********************************************/
/* COMMUNS                                     */
/***********************************************/

.le-content {
	padding: var(--cal-pad-x);
}

.le-content h1 {
	color: var(--le-color-title);
	margin-bottom: 0;
}

.le-content h2 {
	color: var(--le-color-title);
	margin-bottom: 2rem;
}

.le-content a {
	color: var(--le-color-text);
	text-decoration: underline;
	text-decoration-style: dashed;
}

.le-content a:hover {
	color: var(--color-primary-900);
}

.le-title {
	padding-bottom: var(--space-3);
	border-bottom: 1px solid var(--le-color-red);
}

.le-text {
	margin: 2rem 0 0 0;
}

.le-text h2, h3, h4, h5, h6 {
	color: var(--le-color-title);
}

/* === Bouton spécifique "Libres Ensemble" (.btn-le) =============== */
/* Variante Elementor : class posée sur le widget .btn-le */
.elementor .btn-le .elementor-button {
  	background: none;
  	color: var(--le-color-text) !important;
  	border: none;
	padding-left: 0;
}

.elementor .btn-le .elementor-button:hover,
.elementor .btn-le .elementor-button:focus {
   	background: none;
 	color: var(--color-primary);
  	text-decoration: none;
}

/* Accessibilité */
.elementor .btn-le .elementor-button:focus-visible {
  	outline: none;
  	box-shadow: var(--focus-ring);
}

/* Force l’icône à suivre la couleur du texte */
.elementor .btn-le .elementor-button .elementor-button-icon svg,
.elementor .btn-le .elementor-button .elementor-button-icon i {
  	fill: currentColor !important;
  	color: currentColor !important;
}

/* === Bouton retour laicite.be (.le-menu-btn) =============== */
/* Variante Elementor : class posée sur le widget .btn-le */
.elementor .le-menu-btn .elementor-button {
  	background: none;
  	color: var(--le-color-white) !important;
	font-family: var(--font-headings);
	font-size: var(--h4-size);
	font-weight: 300;
  	border: none;
	padding-left: 0;
}

.elementor .le-menu-btn .elementor-button:hover,
.elementor .le-menu-btn .elementor-button:focus {
   	background: none;
 	color: var(--color-primary);
  	text-decoration: none;
}

/* Accessibilité */
.elementor .le-menu-btn .elementor-button:focus-visible {
  	outline: none;
  	box-shadow: var(--focus-ring);
}

/* Force l’icône à suivre la couleur du texte */
.elementor .le-menu-btn .elementor-button .elementor-button-icon svg,
.elementor .le-menu-btn .elementor-button .elementor-button-icon i {
  	fill: currentColor !important;
  	color: currentColor !important;
}

@media (max-width: 767px) {
	.elementor .le-menu-btn .elementor-button {
		font-size: var(--body-size);
	}
}


/***********************************************/
/* VIDEOS - ARTICLES                           */
/***********************************************/

.le-meta {
	margin-top: 2rem;
	font-family: var(--font-headings);
}

@media (max-width: 767px) {
	.le-meta {
		margin-top: 1rem;
	}
}

/***********************************************/
/* VIDEOS - ARCHIVES                           */
/***********************************************/

/* Style minimal, libre à toi de déplacer/adapter */
.le-filter.le-filter-saison { 
	display:flex; 
	gap:.5rem; 
	align-items:center; 
	margin: 1rem 0 1.5rem 0;
	font-family: var(--font-headings);
}
.le-filter-saison select {
	appearance: none; /* uniformise l'apparence */
	min-width: 220px;
	block-size: 40px;
	padding: 0 1rem;
}


.le-filter-saison button {
	color: var(--color-white);
	background-color: var(--le-color-red);
	border: 0;
	padding: 10px;
}

.le-filter-saison button:hover {
	background-color: var(--color-primary-900);
}

/***********************************************/
/* VIDEOS - BOUCLE.                            */
/***********************************************/

/* Titre */

.loop-item .item-content .item-title-le,
.loop-item .item-content .item-title-le .elementor-heading-title{
  	margin: .5rem 0;   /* ≈8px */
}

.loop-item .item-content .item-title-le .elementor-heading-title,
.loop-item .item-content .item-title-le h2,
.loop-item .item-content .item-title-le h3 {
  	font-family: var(--font-headings);
  	font-weight: 600;
  	font-size: clamp(1.25rem, 1rem + 1.2vw, 1.75rem);
  	line-height: var(--lh-tight);
  	color: var(--le-color-title);
  	margin: 0;
  	overflow-wrap: anywhere;                  /* évite les débordements */
}

.loop-item .item-content .item-title-le a {
  	color: inherit;
  	text-decoration: none;
}

.loop-item .item-content .item-title-le a:hover,
.loop-item .item-content .item-title-le a:focus{
  	color:var(--le-color-red);              /* feedback au survol */
  	text-decoration: none;
}

/* Meta (date, type, durée) */

.loop-item .item-content .item-meta-le {
  	display: flex;
  	flex-wrap: wrap;
  	gap: .5em;
  	font-family: var(--font-body);
  	font-size: 0.95rem;
  	font-weight: 500;
  	color: var(--le-color-text);
  	line-height: 1.3;
  	margin: 0; /* reset */
}

.loop-item .item-content .item-meta-le {
  margin-bottom: 0px; /* ≈0.25rem */
}

.loop-item .item-content .item-meta-le .elementor-post-info,
.loop-item .item-content .item-tags-le .elementor-post-info{
  	display: contents;               /* aplatit le <ul> */
}

.loop-item .item-content .item-meta-le .elementor-inline-item {
  	display: inline-flex;
  	align-items: center;
  	gap: .4em;
  	margin: 0; padding: 0;
}

.loop-item .item-content .item-tags-le a,
.loop-item .item-content .item-tags-le span{
  	color: var(--le-color-text);
}
 
.loop-item .item-content .item-meta-le a:hover,
.loop-item .item-content .item-tags-le a:hover{
  	color: var(--color-primary);
}

.loop-item .item-content .item-meta-le .elementor-icon-list-icon,
.loop-item .item-content .item-tags-le .elementor-icon-list-icon{
  	display: inline-flex;
  	align-items: center;
  	line-height: 1;
}

.loop-item .item-content .item-meta-le .elementor-icon-list-icon svg,
.loop-item .item-content .item-tags-le .elementor-icon-list-icon svg{
 	 width: 0.95em; height: 0.95em;   /* taille relative au texte */
  	fill: currentColor; stroke: currentColor;
}

.item-meta-le .elementor-inline-items .elementor-icon-list-item,
.item-tags-le .elementor-inline-items .elementor-icon-list-item{
  	margin-inline: 0 !important; /* aucune marge gauche/droite */
}

.loop-item .item-content .item-meta-le .elementor-inline-items .elementor-inline-item:not(:last-child)::after,
.loop-item .item-content .item-tags-le .elementor-inline-items .elementor-inline-item:not(:last-child)::after{
  	content: "";
  	display: inline-block;
  	vertical-align: middle;
  	height: 1em;                                      /* même hauteur que le texte */
  	border-left: 1px solid var(--le-color-text) !important;  /* comme brochures */
  	margin-left: 0;   /* un peu moins d’air avant le trait */
  	margin-right: .8rem;  /* espace standard après le trait */
}

/***********************************************/
/* Radio - ARCHIVES (PODCASTICS)               */
/***********************************************/

.le-podcastics #title {
	font-family: var(--font-headings);
}

/***********************************************/
/* LIBRES, ENSEMBLE - ACCUEIL - ARCHIVES       */
/***********************************************/

/* Dernières émiisions télé */
.le-radio {
	background: var(--color-bg-muted);
}

.le-podcast .le-podcast-text {
	font-size: 18px;
	font-weight: 600;
}

.elementor .le-podcast .elementor-button {
}

/***********************************************/
/* LIBRES, ENSEMBLE - PROGRAMME.               */
/***********************************************/

