/* ==========================================================================
   PAGE D'ACCUEIL — EMI-LAB
   Nouveau design vitrine niveau MIT/INRIA
   ========================================================================== */

/* --- Hero ----------------------------------------------------------------- */

.emi-home {
  font-family: var(--font-sans);
  color: var(--color-text);
}

.emi-home * { box-sizing: border-box; }

.emi-home-hero {
  position: relative;
  min-height: auto;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: var(--clr-navy-800);
}

/* Photo background avec overlay */
.emi-home-hero-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center 30%;
  background-image: url('/wp-content/uploads/2026/03/slider-image-fsjes.jpg');
  opacity: 0.30;
  transition: opacity 0.6s ease;
}

/* Dégradé directionnel */
.emi-home-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    115deg,
    rgba(11, 110, 135, 0.94) 0%,
    rgba(0, 126, 164, 0.80) 48%,
    rgba(79, 174, 200, 0.55) 100%
  );
  z-index: 1;
}

/* Cercle d'ambiance orange — touche bicolore « waouh » FSJES */
.emi-home-hero::after {
  content: '';
  position: absolute;
  top: -120px;
  right: -80px;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(247, 148, 29, 0.16) 0%, transparent 70%);
  border-radius: 50%;
  z-index: 1;
}

.emi-home-hero-inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: var(--container-max-wide);
  margin: 0 auto;
  padding: clamp(46px, 6vh, 78px) clamp(24px, 5vw, 72px);
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: clamp(40px, 6vw, 96px);
  align-items: center;
}

/* Phrase de bienvenue — ligne horizontale (point pulsé + libellé + filet dégradé) */
.emi-home-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  background: none;
  border: none;
  padding: 0;
  color: #ffd6a6;
  font-size: var(--text-sm);
  font-weight: var(--fw-bold);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  margin-bottom: var(--space-5);
}

.emi-home-hero-badge::before {
  content: '';
  width: 8px;
  height: 8px;
  background: var(--clr-gold-700);
  border-radius: 50%;
  box-shadow: 0 0 0 0 rgba(247, 148, 29, 0.55);
  animation: emi-welcome-pulse 2.2s ease-out infinite;
}

.emi-home-hero-badge::after {
  content: '';
  width: clamp(48px, 8vw, 110px);
  height: 1px;
  background: linear-gradient(90deg, rgba(255, 214, 166, 0.85), transparent);
}

@keyframes emi-welcome-pulse {
  0%   { box-shadow: 0 0 0 0 rgba(247, 148, 29, 0.55); }
  70%  { box-shadow: 0 0 0 9px rgba(247, 148, 29, 0); }
  100% { box-shadow: 0 0 0 0 rgba(247, 148, 29, 0); }
}

/* Titre hero */
.emi-home-hero-title {
  font-family: var(--font-sans) !important;
  font-size: clamp(2.6rem, 5.2vw, 4.6rem) !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  line-height: 1.05 !important;
  letter-spacing: -0.035em !important;
  margin: 0 0 var(--space-6) !important;
}

.emi-home-hero-title em {
  font-style: normal;
  background: linear-gradient(100deg, #f7941d 0%, #ffd28a 25%, #fff3df 45%, #ffd28a 65%, #f7941d 100%);
  background-size: 250% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #f7941d;
  animation: emi-title-shine 5.5s linear infinite;
}

@keyframes emi-title-shine {
  to { background-position: -250% center; }
}

@media (prefers-reduced-motion: reduce) {
  .emi-home-hero-title em { animation: none; }
  .emi-home-hero-badge::before { animation: none; }
}

/* Sous-titre hero */
.emi-home-hero-sub {
  font-size: var(--text-lg) !important;
  color: rgba(255,255,255,0.88) !important;
  line-height: var(--leading-loose) !important;
  margin: 0 0 var(--space-10) !important;
  max-width: 620px;
  font-weight: var(--fw-regular);
}

/* Boutons CTA */
.emi-home-hero-cta {
  display: flex;
  gap: var(--space-4);
  flex-wrap: wrap;
}

/* Stats flottantes (colonne droite) */
.emi-home-hero-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}

.emi-home-hero-stat {
  position: relative;
  overflow: hidden;
  background: linear-gradient(155deg, rgba(255,255,255,0.12), rgba(255,255,255,0.04));
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--radius-xl);
  padding: var(--space-6) var(--space-5);
  text-align: left;
  backdrop-filter: blur(12px);
  transition: transform var(--transition-base), background var(--transition-base), border-color var(--transition-base);
}

.emi-home-hero-stat::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, #00a7c4, #f7941d);
  opacity: 0;
  transition: opacity var(--transition-base);
}

.emi-home-hero-stat:hover {
  transform: translateY(-3px);
  background: linear-gradient(155deg, rgba(255,255,255,0.16), rgba(255,255,255,0.06));
  border-color: rgba(247, 148, 29, 0.45);
}
.emi-home-hero-stat:hover::before { opacity: 1; }

.emi-home-hero-stat-num {
  font-family: var(--font-sans);
  font-size: clamp(2rem, 3vw, 2.7rem);
  font-weight: 800;
  color: #ffffff;
  line-height: 1;
  margin-bottom: var(--space-2);
  letter-spacing: -0.04em;
}

.emi-home-hero-stat-lab {
  font-size: var(--text-xs);
  color: rgba(255,255,255,0.62);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wide);
  font-weight: var(--fw-semibold);
  line-height: 1.3;
}

/* Scroll indicator */
.emi-home-hero-scroll {
  position: absolute;
  bottom: var(--space-8);
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-2);
  color: rgba(255,255,255,0.4);
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: var(--tracking-widest);
}

.emi-home-hero-scroll::after {
  content: '';
  width: 1px;
  height: 40px;
  background: linear-gradient(180deg, rgba(255,255,255,0.4), transparent);
  animation: emi-fade-in 1.5s ease-in-out infinite alternate;
}

/* --- Sections communes ---------------------------------------------------- */

.emi-home-section {
  padding: var(--section-py) 0;
}

.emi-home-section--alt {
  background: var(--wash-cool);   /* wash bleuté froid — signature FSJES */
}

.emi-home-section--navy {
  background: var(--clr-navy-800);
}

.emi-home-section-inner {
  max-width: var(--container-max);
  margin: 0 auto;
  padding: 0 var(--container-px);
}

/* Barre décorative de section */
.emi-home-section-bar {
  width: 3px;
  height: 32px;
  background: var(--clr-gold-700);
  border-radius: var(--radius-full);
  margin-bottom: var(--space-4);
}

/* En-tête de section (kicker + titre + intro) */
.emi-home-section-head { max-width: 760px; margin: 0 0 var(--space-10); }
.emi-home-section-kicker {
  font-size: var(--text-xs); font-weight: var(--fw-bold);
  text-transform: uppercase; letter-spacing: var(--tracking-widest);
  color: var(--clr-navy-700); margin: 0 0 var(--space-2);
}
.emi-home-section-title {
  font-family: var(--font-sans); font-weight: var(--fw-bold);
  font-size: clamp(1.6rem, 3vw, 2.25rem); color: var(--clr-ink);
  letter-spacing: -0.02em; line-height: 1.15; margin: 0 0 var(--space-3);
}
.emi-home-section-intro {
  font-size: var(--text-base); color: var(--clr-ink-muted);
  line-height: var(--leading-loose); margin: 0;
}

/* Boutons (hero + CTA) */
.emi-home-btn {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 13px 26px; border-radius: var(--radius-full);
  font-size: var(--text-sm); font-weight: var(--fw-semibold);
  text-decoration: none; transition: all var(--transition-base);
}
.emi-home-btn--primary { background: var(--clr-gold-700); color: #252525; }
.emi-home-btn--primary:hover { background: var(--clr-gold-600); transform: translateY(-2px); box-shadow: var(--shadow-md); }
.emi-home-btn--ghost { background: rgba(255,255,255,0.08); color: #fff; border: 1px solid rgba(255,255,255,0.35); }
.emi-home-btn--ghost:hover { background: rgba(255,255,255,0.16); border-color: #fff; }

/* Textes de la bande CTA finale */
.emi-home-cta-inner { position: relative; z-index: 2; max-width: 720px; margin: 0 auto; }
.emi-home-cta-title {
  font-family: var(--font-sans); font-weight: var(--fw-bold);
  font-size: clamp(1.7rem, 3.2vw, 2.5rem); color: #fff;
  letter-spacing: -0.02em; line-height: 1.15; margin: 0 0 var(--space-4);
}
.emi-home-cta-sub {
  font-size: var(--text-lg); color: rgba(255,255,255,0.82);
  line-height: var(--leading-loose); margin: 0 0 var(--space-8);
}

/* --- Section "À propos" (extrait accueil) -------------------------------- */

.emi-home-about {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-16);
  align-items: center;
}

.emi-home-about-content {
  padding-right: var(--space-8);
}

.emi-home-about-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}

.emi-home-stat {
  background: var(--clr-white);
  border: 1px solid var(--clr-stone);
  border-radius: var(--radius-xl);
  padding: var(--space-6);
  position: relative;
  overflow: hidden;
  transition: box-shadow var(--transition-slow), border-color var(--transition-slow);
}

.emi-home-stat::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: var(--clr-gold-700);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--transition-slow);
}

.emi-home-stat:hover {
  box-shadow: var(--shadow-md);
  border-color: var(--clr-stone-dark);
}

.emi-home-stat:hover::before {
  transform: scaleX(1);
}

.emi-home-stat-num {
  font-family: var(--font-serif);
  font-size: var(--text-5xl);
  font-weight: var(--fw-bold);
  color: var(--clr-navy-800);
  letter-spacing: -0.04em;
  line-height: 1;
  margin-bottom: var(--space-2);
}

.emi-home-stat-lab {
  font-size: var(--text-xs);
  color: var(--clr-ink-muted);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wider);
  font-weight: var(--fw-medium);
  line-height: 1.3;
}

/* --- Axes de recherche ---------------------------------------------------- */

.emi-home-axes-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-5);
}

.emi-home-axe {
  background: var(--clr-white);
  border: 1px solid var(--clr-stone);
  border-radius: var(--radius-xl);
  padding: var(--space-8);
  position: relative;
  overflow: hidden;
  transition: all var(--transition-slow);
  text-decoration: none;
  color: inherit;
  display: block;
}

.emi-home-axe::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: var(--clr-gold-700);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--transition-slow);
}

.emi-home-axe:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
  border-color: transparent;
}

.emi-home-axe:hover::before {
  transform: scaleX(1);
}

.emi-home-axe-icon {
  width: 52px;
  height: 52px;
  background: var(--clr-navy-050);
  border-radius: var(--radius-lg);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  margin-bottom: var(--space-5);
  transition: background var(--transition-base);
}

.emi-home-axe:hover .emi-home-axe-icon {
  background: var(--clr-gold-100);
}

.emi-home-axe-title {
  font-family: var(--font-sans) !important;
  font-size: var(--text-base) !important;
  font-weight: var(--fw-semibold) !important;
  color: var(--clr-navy-800) !important;
  margin: 0 0 var(--space-3) !important;
  line-height: var(--leading-snug) !important;
}

.emi-home-axe-desc {
  font-size: var(--text-sm) !important;
  color: var(--clr-ink-muted) !important;
  line-height: var(--leading-loose) !important;
  margin: 0 0 var(--space-4) !important;
}

.emi-home-axe-link {
  font-size: var(--text-xs);
  font-weight: var(--fw-semibold);
  color: var(--clr-navy-700);
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wide);
  transition: color var(--transition-base), gap var(--transition-base);
}

.emi-home-axe-link::after {
  content: '→';
  transition: transform var(--transition-base);
}

.emi-home-axe:hover .emi-home-axe-link {
  color: var(--clr-gold-700);
  gap: var(--space-2);
}

.emi-home-axe:hover .emi-home-axe-link::after {
  transform: translateX(3px);
}

/* --- Événements récents -------------------------------------------------- */

.emi-home-events-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: var(--space-6);
}

.emi-home-evt {
  background: var(--clr-white);
  border: 1px solid var(--clr-stone);
  border-radius: var(--radius-xl);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: all var(--transition-slow);
  text-decoration: none;
  color: inherit;
}

.emi-home-evt:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-card-hover);
  border-color: var(--clr-gold-700);
}

.emi-home-evt-top {
  height: 120px;
  background: linear-gradient(135deg, var(--clr-navy-800), var(--clr-navy-700));
  position: relative;
  display: flex;
  align-items: flex-end;
  padding: var(--space-4);
}

.emi-home-evt-date {
  position: absolute;
  top: var(--space-3);
  right: var(--space-3);
  background: rgba(255,255,255,0.95);
  color: var(--clr-navy-800);
  font-size: var(--text-xs);
  font-weight: var(--fw-bold);
  padding: 4px 10px;
  border-radius: var(--radius-full);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.emi-home-evt-tag {
  background: var(--clr-gold-700);
  color: var(--clr-ink);          /* texte foncé sur orange — contraste AA */
  font-size: 10px;
  font-weight: var(--fw-bold);
  padding: 3px 10px;
  border-radius: var(--radius-full);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.emi-home-evt-body {
  padding: var(--space-5) var(--space-5);
  flex: 1;
  display: flex;
  flex-direction: column;
}

.emi-home-evt-title {
  font-size: var(--text-base) !important;
  font-weight: var(--fw-semibold) !important;
  color: var(--clr-navy-800) !important;
  margin: 0 0 var(--space-3) !important;
  line-height: var(--leading-snug) !important;
}

.emi-home-evt-desc {
  font-size: var(--text-sm) !important;
  color: var(--clr-ink-muted) !important;
  line-height: var(--leading-loose) !important;
  margin: 0 !important;
  flex: 1;
}

.emi-home-evt-link {
  margin-top: var(--space-4);
  font-size: var(--text-xs);
  font-weight: var(--fw-semibold);
  color: var(--clr-navy-700);
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wide);
}

/* --- Membres (extrait) --------------------------------------------------- */

.emi-home-members-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: var(--space-5);
}

.emi-home-mem {
  text-align: center;
  padding: var(--space-6);
  background: var(--clr-white);
  border: 1px solid var(--clr-stone);
  border-radius: var(--radius-xl);
  transition: all var(--transition-slow);
  text-decoration: none;
  color: inherit;
  display: block;
}

.emi-home-mem:hover {
  box-shadow: var(--shadow-md);
  border-color: var(--clr-gold-700);
  transform: translateY(-3px);
}

.emi-home-mem-photo {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--clr-navy-700), var(--clr-navy-500));
  margin: 0 auto var(--space-4);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--clr-white);
  font-size: 28px;
  font-weight: var(--fw-semibold);
  font-family: var(--font-serif);
  background-size: cover;
  background-position: center;
  border: 3px solid var(--clr-white);
  box-shadow: var(--shadow-sm);
}

.emi-home-mem-name {
  font-size: var(--text-sm) !important;
  font-weight: var(--fw-semibold) !important;
  color: var(--clr-navy-800) !important;
  margin: 0 0 var(--space-1) !important;
  line-height: 1.3 !important;
}

.emi-home-mem-role {
  font-size: var(--text-xs) !important;
  color: var(--clr-ink-muted) !important;
  line-height: 1.4 !important;
  margin: 0 !important;
}

/* --- Formations (extrait) ------------------------------------------------ */

.emi-home-formations {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: var(--space-5);
}

/* --- Partenaires ---------------------------------------------------------- */

.emi-home-partners-grid {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  justify-content: center;
  align-items: center;
}

.emi-home-partner {
  background: var(--clr-white);
  border: 1px solid var(--clr-stone);
  border-radius: var(--radius-lg);
  padding: var(--space-4) var(--space-6);
  font-size: var(--text-sm);
  font-weight: var(--fw-semibold);
  color: var(--clr-navy-800);
  text-align: center;
  transition: all var(--transition-base);
}

.emi-home-partner:hover {
  border-color: var(--clr-gold-700);
  box-shadow: var(--shadow-sm);
}

/* --- CTA bande finale ---------------------------------------------------- */

.emi-home-cta {
  background: linear-gradient(115deg, var(--clr-navy-800) 0%, var(--clr-navy-700) 100%);
  padding: var(--section-py) var(--container-px);
  text-align: center;
  position: relative;
  overflow: hidden;
}

.emi-home-cta::before {
  content: '';
  position: absolute;
  top: -100px;
  right: -100px;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(247, 148, 29, 0.14) 0%, transparent 70%);
  border-radius: 50%;
}

/* --- Responsive ---------------------------------------------------------- */

@media (max-width: 1024px) {
  .emi-home-hero { min-height: auto; }
  .emi-home-hero-inner { grid-template-columns: 1fr; gap: var(--space-10); }
  /* Compteurs : on les GARDE (ligne de 4) au lieu de les masquer */
  .emi-home-hero-stats { display: grid; grid-template-columns: repeat(4, 1fr); }
  .emi-home-about { grid-template-columns: 1fr; }
  .emi-home-about-content { padding-right: 0; }
  .emi-home-axes-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
  .emi-home-hero-inner { padding: var(--space-16) var(--container-px-sm); }
  .emi-home-section { padding: var(--space-12) 0; }
  .emi-home-section-inner { padding: 0 var(--container-px-sm); }
  .emi-home-hero-stat-num { font-size: var(--text-4xl); }
  .emi-home-cta { padding: var(--space-12) var(--container-px-sm); }
}

@media (max-width: 640px) {
  .emi-home-hero-title { font-size: var(--text-4xl) !important; }
  .emi-home-hero-cta { flex-direction: column; align-items: stretch; }
  .emi-home-hero-cta .emi-home-btn { justify-content: center; }
  .emi-home-hero-stats { grid-template-columns: repeat(2, 1fr); }
  .emi-home-hero-scroll { display: none; }   /* évite le chevauchement sur petit écran */
  .emi-home-axes-grid { grid-template-columns: 1fr; }
  .emi-home-about-stats { grid-template-columns: 1fr 1fr; }
  .emi-home-events-grid { grid-template-columns: 1fr; }
  .emi-home-members-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ==========================================================================
   GALERIE MOSAÏQUE — « Au cœur du laboratoire » (photos réelles, sans légende)
   ========================================================================== */

.emi-gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 170px;
  grid-auto-flow: dense;
  gap: 12px;
}
.emi-gallery-item {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  cursor: pointer;
  display: block;
  text-decoration: none;
}
.emi-gallery-item img {
  width: 100%; height: 100%;
  object-fit: cover; display: block;
  transition: transform 0.7s var(--ease-out-quart), filter 0.5s ease;
}
/* voile teal/orange au survol — signature, sans texte */
.emi-gallery-item::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(150deg, rgba(0,126,164,0.45) 0%, rgba(6,59,73,0.15) 45%, rgba(247,148,29,0.30) 100%);
  opacity: 0;
  transition: opacity 0.45s ease;
}
.emi-gallery-item:hover img { transform: scale(1.09); }
.emi-gallery-item:hover::after { opacity: 1; }
/* petit liseré teal qui apparaît au survol */
.emi-gallery-item::before {
  content: '';
  position: absolute; inset: 0; z-index: 2;
  border: 0 solid #f7941d; border-radius: var(--radius-lg);
  transition: border-width 0.3s ease;
  pointer-events: none;
}
.emi-gallery-item:hover::before { border-width: 3px; }

/* tailles variées pour un rythme mosaïque */
.emi-gallery-item--big  { grid-column: span 2; grid-row: span 2; }
.emi-gallery-item--wide { grid-column: span 2; }
.emi-gallery-item--tall { grid-row: span 2; }

@media (max-width: 900px) {
  .emi-gallery { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 150px; }
  .emi-gallery-item--big { grid-column: span 2; grid-row: span 2; }
  .emi-gallery-item--wide { grid-column: span 2; }
  .emi-gallery-item--tall { grid-row: span 1; }
}
@media (max-width: 520px) {
  .emi-gallery { grid-template-columns: 1fr 1fr; grid-auto-rows: 120px; }
  .emi-gallery-item--big, .emi-gallery-item--wide { grid-column: span 2; }
  .emi-gallery-item--big { grid-row: span 2; }
}

/* ==========================================================================
   ACCUEIL — pied de section « Voir tout » + photos réelles des membres
   ========================================================================== */
.emi-home-section-foot { text-align: center; margin-top: var(--space-8); }
.emi-home-seeall {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 11px 26px; border-radius: var(--radius-full);
  border: 1px solid var(--clr-navy-800); color: var(--clr-navy-800);
  font-family: var(--font-sans); font-weight: 700; font-size: var(--text-sm);
  text-decoration: none; transition: background .25s ease, color .25s ease, gap .25s ease;
}
.emi-home-seeall:hover { background: var(--clr-navy-800); color: #fff; gap: 13px; }

/* Membres : la pastille reçoit une vraie photo via background-image inline */
.emi-home-mem-photo[style*="background-image"] { color: transparent; }

/* ==========================================================================
   ACCUEIL v2 — Qui sommes-nous, axes plus visuels, 8 membres 4 col, events
   ========================================================================== */

/* — Qui sommes-nous (juste après le hero) — */
.emi-home-about-wrap {
  display: grid; grid-template-columns: 0.92fr 1.08fr;
  gap: clamp(28px, 5vw, 64px); align-items: center;
}
.emi-home-about-media {
  border-radius: var(--radius-2xl); overflow: hidden;
  box-shadow: var(--shadow-xl); position: relative;
}
.emi-home-about-media::before {
  content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 5px; z-index: 2;
  background: linear-gradient(90deg, #007ea4 66%, #f7941d 66%);
}
.emi-home-about-media img { width: 100%; height: 100%; object-fit: cover; display: block; aspect-ratio: 4 / 3; }
.emi-home-about-desc { font-size: var(--text-base); color: var(--clr-ink-mid); line-height: 1.85; margin: 0 0 var(--space-6); }
@media (max-width: 860px) { .emi-home-about-wrap { grid-template-columns: 1fr; } }

/* — Axes : cases plus grandes et plus visuelles (2 colonnes) — */
.emi-home-axes-grid { grid-template-columns: repeat(2, 1fr) !important; gap: var(--space-6); }
@media (max-width: 720px) { .emi-home-axes-grid { grid-template-columns: 1fr !important; } }
.emi-home-axe { padding: clamp(26px, 3vw, 36px) !important; }
.emi-home-axe-icon {
  width: 56px !important; height: 56px !important; border-radius: var(--radius-lg) !important;
  background: linear-gradient(135deg, #007ea4, #0b6e87) !important;
  color: #fff !important; font-family: var(--font-sans); font-weight: 800; font-size: 18px;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 6px 16px rgba(0,126,164,0.25);
}
.emi-home-axe:hover .emi-home-axe-icon { background: linear-gradient(135deg, #f7941d, #e8850f) !important; }
.emi-home-axe-title { font-size: var(--text-lg) !important; }
.emi-home-axe-desc  { font-size: var(--text-sm) !important; }

/* — Membres : grille 4 colonnes (8 profils = 2 rangées) — */
.emi-home-members-grid { grid-template-columns: repeat(4, 1fr) !important; gap: var(--space-5); }
@media (max-width: 900px) { .emi-home-members-grid { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 600px) { .emi-home-members-grid { grid-template-columns: repeat(2, 1fr) !important; } }
.emi-home-mem-photo { width: 104px !important; height: 104px !important; }

/* — Membres : fond photo (flou + voile teal) dans chaque carte, avatar net dessus — */
.emi-home-members-grid .emi-home-mem {
  position: relative;
  overflow: hidden;
  background-color: #00313f !important;
  border-color: transparent !important;
  color: #fff !important;
}
/* photo du prof, floutée et assombrie, en arrière-plan */
.emi-home-members-grid .emi-home-mem::before {
  content: '';
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center top;
  filter: blur(8px) brightness(0.55) saturate(1.05);
  transform: scale(1.18);   /* recouvre les bords adoucis par le flou */
  z-index: 0;
}
/* voile teal pour unifier et garantir la lisibilité */
.emi-home-members-grid .emi-home-mem::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,49,66,0.62) 0%, rgba(0,49,66,0.86) 100%);
  z-index: 1;
}
.emi-home-members-grid .emi-home-mem > * { position: relative; z-index: 2; }
.emi-home-members-grid .emi-home-mem-name { color: #fff !important; }
.emi-home-members-grid .emi-home-mem-role { color: rgba(255,255,255,0.88) !important; }
.emi-home-members-grid .emi-home-mem-photo { border-color: #fff !important; }
.emi-home-members-grid .emi-home-mem:hover { border-color: var(--clr-gold-700) !important; }

/* photo de fond propre à chaque membre (même ordre que la grille) */
.emi-home-members-grid .emi-home-mem:nth-child(1)::before { background-image: url('/wp-content/uploads/2025/09/6.png'); }
.emi-home-members-grid .emi-home-mem:nth-child(2)::before { background-image: url('/wp-content/uploads/2026/05/edited-photo-2.png'); }
.emi-home-members-grid .emi-home-mem:nth-child(3)::before { background-image: url('/wp-content/uploads/2025/09/3.png'); }
.emi-home-members-grid .emi-home-mem:nth-child(4)::before { background-image: url('/wp-content/uploads/2026/05/edited-photo-1.png'); }
.emi-home-members-grid .emi-home-mem:nth-child(5)::before { background-image: url('/wp-content/uploads/2025/09/8.png'); }
.emi-home-members-grid .emi-home-mem:nth-child(6)::before { background-image: url('/wp-content/uploads/2025/09/5.png'); }
.emi-home-members-grid .emi-home-mem:nth-child(7)::before { background-image: url('/wp-content/uploads/2025/09/ZEHMED-KARIM.jpeg.jpg'); }
.emi-home-members-grid .emi-home-mem:nth-child(8)::before { background-image: url('/wp-content/uploads/2025/09/4.png'); }

/* — Événements : cartes plus nettes — */
.emi-home-events-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.emi-home-evt-top { height: 96px !important; background: linear-gradient(135deg, #0b6e87, #007ea4) !important; }
.emi-home-evt:hover { border-color: var(--clr-gold-700) !important; }

/* — Axes : fond illustré par carte + voile teal (texte blanc lisible) — */
.emi-home-axes-grid .emi-home-axe {
  background-color: #00313f !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: cover !important;
  border-color: transparent !important;
  color: #fff !important;
}
/* voile dégradé par-dessus l'image pour garantir la lisibilité */
.emi-home-axes-grid .emi-home-axe::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(155deg, rgba(0,38,51,0.92) 0%, rgba(0,72,96,0.85) 45%, rgba(0,126,164,0.78) 100%);
  z-index: 0;
}
/* la barre dorée du haut et le contenu restent au-dessus du voile */
.emi-home-axes-grid .emi-home-axe::before { z-index: 2; }
.emi-home-axes-grid .emi-home-axe > * { position: relative; z-index: 1; }

.emi-home-axes-grid .emi-home-axe-title { color: #fff !important; }
.emi-home-axes-grid .emi-home-axe-desc  { color: rgba(255,255,255,0.90) !important; }
.emi-home-axes-grid .emi-home-axe-link  { color: #fff !important; }
.emi-home-axes-grid .emi-home-axe:hover .emi-home-axe-link { color: var(--clr-gold-100) !important; }
.emi-home-axes-grid .emi-home-axe-icon {
  background: rgba(255,255,255,0.18) !important;
  box-shadow: none !important;
}
.emi-home-axes-grid .emi-home-axe:hover .emi-home-axe-icon {
  background: linear-gradient(135deg, #f7941d, #e8850f) !important;
}
/* voile légèrement renforcé au survol */
.emi-home-axes-grid .emi-home-axe:hover::after {
  background: linear-gradient(155deg, rgba(0,38,51,0.94) 0%, rgba(0,72,96,0.88) 40%, rgba(11,110,135,0.80) 100%);
}

/* image de fond propre à chaque axe */
.emi-home-axes-grid .emi-home-axe:nth-child(1) {
  background-image: url('/wp-content/uploads/2025/09/reseaux-neuronaux-analyse-donnees-intelligence-artificielle.1.9.avif') !important;
}
.emi-home-axes-grid .emi-home-axe:nth-child(2) {
  background-image: url('/wp-content/uploads/2025/09/adobestock-329138725.jpg') !important;
}
.emi-home-axes-grid .emi-home-axe:nth-child(3) {
  background-image: url('/wp-content/uploads/2025/09/Le-controle-de-gestion.jpg') !important;
}
.emi-home-axes-grid .emi-home-axe:nth-child(4) {
  background-image: url('/wp-content/uploads/2025/09/AideDecision.jpg') !important;
}
