

/* ===============================
   CSS pour module EN BREF (en et fr)
=============================== */
/* Cache le bloc EN sur toutes les pages françaises (fr, fr-FR, fr_CA, etc.) */
html[lang^="fr"], body[class*="pll-lang-fr"] {
  --_fr: 1; /* juste un marqueur */
}
html[lang^="fr"] .en-only,
body[class*="pll-lang-fr"] .en-only { 
  display: none !important;
}

/* Cache le bloc FR sur toutes les pages anglaises (en, en-GB, en-US, etc.) */
html[lang^="en"], body[class*="pll-lang-en"] {
  --_en: 1;
}
html[lang^="en"] .fr-only,
body[class*="pll-lang-en"] .fr-only { 
  display: none !important;
}

/* Cacher le module EN sur toutes les pages FR */
html[lang^="fr"] .en-only,
body[class*="pll-lang-fr"] .en-only { display: none !important; }

/* Cacher le module FR sur toutes les pages EN */
html[lang^="en"] .fr-only,
body[class*="pll-lang-en"] .fr-only { display: none !important; }

/* */
.juju-alaune .pagination a:before,
.juju-alaune .pagination a:after {
  font-size: 16px;
}
/* ===============================
   Styles pour le module "En Bref" 
   =============================== */

   
   .juju-bref .et_pb_post {
	 position: relative;
	 background: #fff;
	 border-radius: 16px;
	 overflow: hidden;           /* 🔑 clé absolue */
	 padding: 30px 30px 30px 40px !important; /* espace pour la barre violette */
	 box-shadow: 0 15px 30px rgba(0,0,0,0.1);
   }
   
   /* Barre violette */
   .juju-bref .et_pb_post::before {
	 content: "";
	 position: absolute;
	 top: 16px;
	 bottom: 16px;
	 left: 16px;
	 width: 6px;
	 background-color: #800080;
	 border-radius: 4px;         /* arrondi de la barre elle-même */
	 z-index: 1;
   }
   
   /* Contenu au-dessus de la barre */
   .juju-bref .et_pb_post .post-content,
   .juju-bref .et_pb_post .entry-title,
   .juju-bref .et_pb_post .post-meta {
	 position: relative;
	 z-index: 2;
   }
   
   /* Titre noir */
   .juju-bref .entry-title {
	 display: inline-block;
	 background-color: #000;
	 color: #fff;
	 padding: 6px 14px;
	 border-radius: 12px;
	 font-size: 30px;
	 font-weight: bold;
	 line-height: 1.2;
	 margin-bottom: 15px;
   }
   
   /* Désactive le lien */
   .juju-bref .entry-title a {
	 pointer-events: none;
	 color: inherit;
	 text-decoration: none;
	 cursor: default;
   }
/* 1. On neutralise TOUS les fonds autour */
   .juju-bref,
   .juju-bref .et_pb_column,
   .juju-bref .et_pb_row,
   .juju-bref .et_pb_ajax_pagination_container {
	   background: transparent !important;
   }
   
   /* 2. Le vrai conteneur visuel = la carte */
   .juju-bref article.et_pb_post {
	   background: #ffffff !important;
	   border-radius: 8px !important;
	   overflow: hidden !important;
	   position: relative;
	   z-index: 2;
   }
   
   /* 3. On force le clip sur le parent immédiat */
   .juju-bref .et_pb_ajax_pagination_container {
	   overflow: visible !important;
   }

/* ===============================
	  Styles pour le module "TITRE "A LA UNE" 
	  =============================== */

.titre-alaune {
	  display: inline-block;
	  background-color: #800080; /* violet */
	  color: #fff;
	  padding: 6px 12px;
	  border-radius: 6px;
	  font-weight: bold;
	  line-height: 1.2;
	
   }


 /* ===============================
		 Module Blog avec .juju-alaune
		 =============================== */
	  
	  /* Catégorie : style violet avec bordure */
	  .juju-alaune .et_pb_post .post-meta a {
		  display: inline-block;
		  padding: 2px 8px;
		  margin-right: 4px;
		  border: 3px solid #800080; /* violet */
		  border-radius: 4px;
		  font-size: 18px;
		  color: #800080;
		  text-decoration: none;
	  }
	  
	  /* Décalage du texte et titre */
	  .juju-alaune .et_pb_post .post-content,
	  .juju-alaune .et_pb_post .entry-title,
	  .juju-alaune .et_pb_post .post-meta {
		  padding-left: 10px;
	  }
	  
	  /* Encadré + position relative */
	  .juju-alaune .et_pb_post {
		  position: relative;
		  border: 1px solid #ddd !important; /* encadré fin */
		  border-radius: 5px !important; /* coins arrondis */
		  overflow: hidden !important; /* éviter les débordements */
		  margin-bottom: 60px;
		  background: #fff; /* fond blanc pour que le cadre se voie bien */
	  }
	  
	 /* Cadre autour du module juju-alaune uniquement en tablette et desktop */
	 @media (min-width: 768px) {
		 .juju-alaune {
			 border: 1px solid #ddd;
			 border-radius: 5px;
			 padding: 20px; /* espace interne */
			 background: #fff;
			 margin-bottom: 60px;
		 }
	 }
	 
   /* Forcer le cadre aussi sur mobile */
	 @media (max-width: 767px) {
		 .juju-alaune {
			 border: 1px solid #ddd;
			 border-radius: 5px;
			 padding: 15px;
			 background: #fff;
			 margin-bottom: 30px;
		 }
	 }
	  
	  /* Barre violette sur le côté (corrigée) */
	  .juju-alaune .et_pb_post .post-content::before {
		  content: "";
		  position: absolute;
		  top: 150px; /* commence plus haut dans l'image */
		  left: 0;
		 width: 6px;
		   background-color: #800080;
		   border-radius: 4px;  
		  height: calc(100% - 200px); /* longueur ajustée */
		  transform: translateX(10px); /* décalage de la barre */
		  z-index: 1;
	  }
	  
	  /* Images des posts */
	  .juju-alaune .et_pb_post .et_pb_image_container img {
		  width: 100%; /* occupe toute la largeur */
		  height: 200px; /* hauteur fixe */
		  object-fit: cover; /* remplit sans déformer */
		  object-position: center; /* centre l’image */
	  }
	 
	 
	 
	  
	  /* ===== Pagination personnalisée pour le module juju-alaune ===== */
	  
	  /* Structure desktop */
	  .juju-alaune .pagination {
		  display: flex;
		  justify-content: space-between;
		  flex-wrap: wrap;
	  }
	  .juju-alaune .pagination .alignleft {
		  order: 2;
		  text-align: right;
		  flex: 1;
	  }
	  .juju-alaune .pagination .alignright {
		  order: 1;
		  text-align: left;
		  flex: 1;
	  }
	  
	  /* Liens communs */
	  .juju-alaune .pagination a {
		  font-size: 0;
		  text-decoration: none;
		  color: #884081;
		  font-weight: 600;
		  position: relative;
		  transition: all 0.3s ease;
		  display: inline-block;
		  padding: 8px 16px;
	  }



/* ===============================
   Style commun Publications & Séminaires
   =============================== */

/* Image en haut */
.juju-publications .et_pb_post .et_pb_image_container img,
.juju-seminaires .et_pb_post .et_pb_image_container img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    object-position: top;
}

/* Encadré + barre violette */
.juju-publications .et_pb_post,
.juju-seminaires .et_pb_post {
    position: relative;
    border: 1px solid #ddd;  /* encadré */
    border-radius: 5px;      /* coins arrondis */
    overflow: hidden;
    margin-bottom: 60px;     /* espace vertical uniforme */
}


/* ===============================
   Publications
   =============================== */

/* 📚 Publications : barre violette démarre sous l'image */
   .juju-publications .et_pb_post .post-content::before {
   content: "";
	position: absolute;
	top: 170px; /* remonte dans l'image */
	left: 0;
	height: calc(100% - 180px);
	width: 6px;
    background-color: #800080;
    border-radius: 4px;  
	transform: translateX(10px);
	z-index: 1;
   }

/* Texte, titre, auteurs */
.juju-publications .et_pb_post .post-content,
.juju-publications .et_pb_post .entry-title,
.juju-publications .et_pb_post .post-meta {
    padding-left: 15px;
}

/* Date (violet clair, police Adel) */
.juju-publications .et_pb_post .post-meta {
    font-family: "Adel", sans-serif;
    font-size: 18px;
    color: #b26de8;
    display: inline-block;
    margin-right: 6px;
}

/* Catégorie Publication : encadrée violet foncé */
.juju-publications .et_pb_post .post-meta a {
    font-family: "Adel", sans-serif;
    font-size: 18px;
    color: #800080;
    border: 3px solid #800080;
    border-radius: 4px;
    padding: 2px 8px;
    display: inline-block;
    text-decoration: none;
}
/* Encadré violet "Publication" sur page d'accueil */
#juju-publications .post-meta {
	font-family: "Adel", sans-serif;
	font-size: 18px;
	color: #b26de8;
}

#juju-publications .post-meta::after {
	content: attr(data-category);
}

#juju-publications .post-meta span.published + span.publication-badge {
	font-family: "Adel", sans-serif;
	font-size: 18px;
	color: #800080;
	border: 3px solid #800080;
	padding: 2px 8px;
	border-radius: 4px;
	margin-left: 4px;
}
/* Auteurs */
.juju-publications .et_pb_post .auteurs {
    font-weight: normal;
    display: block;
    margin-top: 5px;
}

/* Logos arXiv & journal */
.juju-publications .et_pb_post .logos-publication img {
    height: 24px;
    margin-right: 10px;
    vertical-align: middle;
}
/* Titre des publications */
.juju-publications .et_pb_post .entry-title {
    font-family: "Barlow Condensed", sans-serif !important;
    font-size: 30px !important;
}

/* ===============================
      Module Séminaires avec .juju-seminaires
=============================== */
   /* Neutralise le décalage de la row avant les séminaires */
/* NE PAS toucher aux marges/largeurs des rows Divi */
   .et_pb_row_4_tb_body{
	 padding-left: 0 !important;
	 padding-right: 0 !important;
	 margin-left: auto !important;
	 margin-right: auto !important;
   }
   /* Image en haut */
   .juju-seminaires .et_pb_post .et_pb_image_container img {
       width: 100%;
       height: 200px;
       object-fit: cover;
       object-position: top;
   }
   
   /* Bloc général */
   .juju-seminaires .et_pb_post {
       position: relative;
       border: 1px solid #ddd;
       border-radius: 5px;
       overflow: hidden;
       margin-bottom: 60px;
   }
   
   /* Barre violette qui remonte dans l'image */
   .juju-seminaires .et_pb_post .post-content::before {
       content: "";
       position: absolute;
       top: 150px; /* remonte dans l'image */
       left: 0;
       
       height: calc(100% - 155px);
       width: 6px;
		  background-color: #800080;
		  border-radius: 4px;  
       transform: translateX(10px);
       z-index: 1;
   }
   
   /* Conteneur du contenu → décale tout à droite de la barre violette */
   .juju-seminaires .post-content {
       padding-left: 30px; /* espace pour la barre + marge */
   }

 /* Page d'accueil : masquer UNIQUEMENT la date noire */
 body.home .seminaire-date-custom {
   display: none !important;
 }
   /* Titre */
   .juju-seminaires .titre-seminaire {
       font-size: 20px;
       font-weight: bold;
       margin-top: 5px;
   }
   

   /* Date (même style que publications) */
   .juju-seminaires .date-seminaire {
       font-family: "Adel", sans-serif !important;
       font-size: 18px !important;
       color: #b26de8 !important;
       display: inline-block;
       margin-right: 6px;
   }
   
   /* Catégorie (même style que publications) */
   .juju-seminaires .categorie-seminaire {
       font-family: "Adel", sans-serif;
       font-size: 18px;
       color: #800080;
       border: 3px solid #800080;
       border-radius: 4px;
       padding: 2px 8px;
       display: inline-block;
       text-decoration: none;
   }
   
 /* Taille icône ICS */
   /* Icône ICS — taille cohérente partout */
   .juju-seminaires .ical-link img {
	 width: 35px;
	 height: auto;
	 display: inline-block;
	 vertical-align: top;
   }
   .juju-seminaires .ical-link:hover {
     color: #800080;
   }
   
  /* Intervenant (nom) */
  .juju-seminaires .seminaire-intervenant {
      font-size: 18px !important;   /* taille du nom */
      font-weight: bold !important; /* nom en gras */
      margin-top: 10px;
      line-height: 1.4;
  }
  
  /* Université (affiliation) sous le nom */
  .juju-seminaires .seminaire-intervenant .seminaire-affiliation {
      display: block;          /* retour à la ligne */
      font-size: 14px;         /* plus petit que le nom */
      font-style: italic;      /* italique pour l'affiliation */
      font-weight: normal;     /* pas en gras */
      color: #666;             /* gris plus clair */
      margin-left: 24px;       /* décalage pour aligner après 🧑‍🏫 */
      margin-bottom: 10px; /* ✅ espace sous l’université */
  }
   /* Lieu */
   .juju-seminaires .lieu-seminaire {
       margin-top: 5px;
   }
   
   /* Contact */
   .juju-seminaires .contact-seminaire a {
       color: #800080;
       text-decoration: none;
   }
   .juju-seminaires .contact-seminaire a:hover {
       text-decoration: underline;
   }
/* Titre séminaires - police Barlow Condensed */
   .juju-seminaires .et_pb_post .entry-title {
       font-family: "Barlow Condensed", sans-serif !important;
       font-size: 30px !important;
       margin-top: 5px;
   }

/* Le bloc séminaire doit prendre la largeur normale des modules (comme Publications) */
   .juju-seminaires {
	 width: 100% !important;
	 max-width: 100% !important;
	 margin: 0 !important;
   }
   
   /* On force le conteneur interne (la carte) à remplir la colonne */
   .juju-seminaires .et_pb_ajax_pagination_container,
   .juju-seminaires .et_pb_blog_grid,
   .juju-seminaires article.et_pb_post {
	 width: 100% !important;
	 max-width: 100% !important;
   }
   
   
   
  
   
   /* === TEXTES selon la langue === */
   
/* Français (toutes variantes : fr, fr-FR, fr_CA...) */
   html[lang^="fr"] .juju-alaune .pagination .alignleft a:before {
	 content: "Actualités précédentes";
   }
   html[lang^="fr"] .juju-alaune .pagination .alignright a:after {
	 content: "Actualités suivantes";
   }
   
   /* Anglais (toutes variantes : en, en-GB, en-US...) */
   html[lang^="en"] .juju-alaune .pagination .alignleft a:before {
	 content: "Previous news";
   }
   html[lang^="en"] .juju-alaune .pagination .alignright a:after {
	 content: "Next news";
   }

   
   /* === Styles flèches & texte === */
   
   /* Précédentes (droite) */
   .juju-alaune .pagination .alignleft a:before {
       font-family: inherit;
       font-size: 16px;
       margin-right: 6px;
       color: inherit;
   }
   .juju-alaune .pagination .alignleft a:after {
       content: "\f061"; /* flèche → */
       font-family: "Font Awesome 5 Free";
       font-weight: 900;
       font-size: 16px;
       margin-left: 6px;
       color: inherit;
       transition: transform 0.3s ease;
   }
   .juju-alaune .pagination .alignleft a:hover:after {
       transform: translateX(5px);
   }
   
   /* Suivantes (gauche) */
   .juju-alaune .pagination .alignright a:before {
       content: "\f060"; /* flèche ← */
       font-family: "Font Awesome 5 Free";
       font-weight: 900;
       font-size: 16px;
       margin-right: 6px;
       color: inherit;
       transition: transform 0.3s ease;
   }
   .juju-alaune .pagination .alignright a:after {
       font-family: inherit;
       font-size: 16px;
       color: inherit;
   }
   .juju-alaune .pagination .alignright a:hover:before {
       transform: translateX(-5px);
   }
   
   /* ===== Responsive tablette & mobile ===== */
   @media (max-width: 980px) {
       .juju-alaune .pagination {
           display: flex;
           flex-direction: column;
           align-items: center;
           gap: 12px;
       }
       .juju-alaune .pagination .alignleft,
       .juju-alaune .pagination .alignright {
           order: unset;
           text-align: center;
           width: 100%;
       }
       .juju-alaune .pagination a {
           min-width: 220px;
           border: 2px solid #884081;
           border-radius: 30px;
           padding: 10px 20px;
           font-size: 0;
           text-align: center;
       }
       .juju-alaune .pagination a:hover {
           background: #884081;
           color: #fff;
       }
       .juju-alaune .pagination .alignleft a:hover:after,
       .juju-alaune .pagination .alignright a:hover:before {
           color: #fff;
       }
   }

   
/* =========================================
      Cartes .juju-alaune : hauteur fixe identique
      ========================================= */

   .juju-alaune .et_pb_blog_grid .et_pb_post {
     height: 520px !important;   /* même hauteur pour toutes les cartes */
     overflow: hidden !important;
     
     flex-direction: column !important;
     justify-content: space-between !important;
   }
/* DESKTOP : dans chaque module (FR et EN), ne garder que 3 cartes */
   @media (min-width: 981px) {
	 .juju-alaune.fr-only .et_pb_ajax_pagination_container > article.et_pb_post:nth-of-type(n+4),
	 .juju-alaune.en-only .et_pb_ajax_pagination_container > article.et_pb_post:nth-of-type(n+4) {
	   display: none !important;
	 }
   }
   
   /* TABLETTE : dans chaque module (FR et EN), en garder 4 */
   @media (max-width: 980px) and (min-width: 768px) {
	 .juju-alaune.fr-only .et_pb_ajax_pagination_container > article.et_pb_post:nth-of-type(n+5),
	 .juju-alaune.en-only .et_pb_ajax_pagination_container > article.et_pb_post:nth-of-type(n+5) {
	   display: none !important;
	 }
   }
   
   /* ===============================
	 Correction Bug affichage du menu sur la page actualité pour tel et tablette
	 =============================== */
   @media (max-width: 980px) {
	   #et-top-navigation a,
	   #et-secondary-menu a,
	   .menu-secondaire-mobile a,
	   #et-top-navigation i,
	   #et-secondary-menu i {
		   color: #000 !important;
	   }
   }
   /* Pas de marge basse quand c’est un message d’erreur */
   /* ============================================================
	  PAGINATION A LA UNE – Même style que Publications
   ============================================================ */
   
   .juju-alaune .pagination {
	   display: flex;
	   justify-content: space-between;
	   align-items: center;
	   gap: 16px;
	   margin-top: 40px;
   }
   
   /* Boutons */
   .juju-alaune .pagination a {
	   background: #6a1b9a;
	   color: #ffffff !important;
	   border: none;
	   padding: 12px 22px;
	   border-radius: 30px;
	   font-weight: 600;
	   cursor: pointer;
	   transition: all 0.25s ease;
	   min-width: 200px;
   
	   /* Masque texte natif */
	   font-size: 0;
	   text-align: center;
	   display: inline-block;
   }
   
   /* Hover */
   .juju-alaune .pagination a:hover {
	   background: #4a148c;
   }
/* =========================================
	  Pagination A LA UNE – Mobile sur une ligne + inversion
	  ========================================= */
   @media (max-width: 980px) {
   
	 .juju-alaune .pagination{
	   display:flex !important;
	   flex-direction:row !important;
	   justify-content:space-between !important;
	   align-items:center !important;
	   gap:12px !important;
	 }
   
	 .juju-alaune .pagination .alignleft,
	 .juju-alaune .pagination .alignright{
	   width:auto !important;
	   flex:0 0 auto !important;
	   text-align:unset !important;
	 }
   
	 /* Inversion : Suivant à gauche / Précédent à droite */
	 .juju-alaune .pagination .alignleft { order: 2 !important; }  /* Précédent -> droite */
	 .juju-alaune .pagination .alignright{ order: 1 !important; }  /* Suivant   -> gauche */
   
	 /* pour éviter que tes boutons prennent trop de place */
	 .juju-alaune .pagination a{
	   min-width:0 !important;
	 }
   
	 /* Texte court */
	 html[lang^="fr"] .juju-alaune .pagination .alignleft a:before { content:"Précédent"; }
	 html[lang^="fr"] .juju-alaune .pagination .alignright a:after { content:"Suivant"; }
   
	 html[lang^="en"] .juju-alaune .pagination .alignleft a:before { content:"Previous"; }
	 html[lang^="en"] .juju-alaune .pagination .alignright a:after { content:"Next"; }
   }
