/* DataSAI - Section « Équipe pédagogique » des pages bootcamp (fondatrice, puis experts confirmés).
   Balisage posé par profil_fondatrice.py, juste avant la bande d'inscription finale. */
.eq-carte { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 36px; align-items: center;
  margin: 8px 0 0; padding: 30px; border-radius: 24px; position: relative; overflow: hidden;
  background: radial-gradient(90% 70% at 0% 0%, rgba(245,220,176,.16), transparent 60%), #15152e;
  border: 1px solid rgba(245,220,176,.22); box-shadow: 0 24px 60px rgba(15,21,35,.22); }
.eq-photo { margin: 0; border-radius: 18px; overflow: hidden; aspect-ratio: 4 / 5; background: #e9e0d2;
  box-shadow: 0 0 0 1px rgba(245,220,176,.35), 0 18px 40px rgba(0,0,0,.35); }
.eq-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.eq-role { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 800; letter-spacing: 1.6px;
  text-transform: uppercase; color: #f5dcb0; margin-bottom: 8px; }
.eq-role i { width: 18px; height: 2px; border-radius: 2px; background: #f5dcb0; }
.eq-nom { font-family: 'DM Serif Display', Georgia, serif; font-weight: 400; font-size: 32px; line-height: 1.15; color: #fff; margin: 0 0 4px; }
.eq-nom em { font-style: italic; color: #f5dcb0; }
.eq-titre { font-size: 15px; color: rgba(255,255,255,.62); margin: 0 0 16px; }
.eq-bio p { font-size: 15.5px; line-height: 1.75; color: rgba(255,255,255,.8); margin: 0 0 12px; }
.eq-bio strong { color: #fff; font-weight: 700; }
.eq-puces { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 18px; padding: 0; list-style: none; }
.eq-puces li { font-size: 13px; font-weight: 600; color: #f5dcb0; padding: 7px 12px; border-radius: 999px;
  background: rgba(245,220,176,.08); border: 1px solid rgba(245,220,176,.25); }
.eq-lien { font-size: 14.5px; font-weight: 700; color: #00d4ff; text-decoration: none; }
.eq-lien:hover { text-decoration: underline; }
/* Petites cartes des experts, sous le profil de la directrice pédagogique */
.eq-experts { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 290px), 1fr)); gap: 14px; margin: 14px 0 0; }
.eq-expert { display: flex; flex-direction: column; gap: 14px; align-items: flex-start; padding: 22px; border-radius: 20px; background: #15152e;
  border: 1px solid rgba(255,255,255,.08); box-shadow: 0 16px 40px rgba(15,21,35,.18); }
.eq-expert-photo { flex: none; width: 76px; height: 76px; border-radius: 50%; object-fit: cover;
  box-shadow: 0 0 0 2px rgba(0,212,255,.45), 0 10px 24px rgba(0,0,0,.35); }
.eq-initiales { display: grid; place-items: center; font-family: 'DM Serif Display', Georgia, serif; font-size: 28px; color: #04131c;
  background: linear-gradient(135deg, #67e8f9, #c084fc); }
.eq-expert .eq-role { color: #67e8f9; margin-bottom: 4px; }
.eq-expert .eq-role i { background: #67e8f9; }
.eq-expert-nom { font-family: 'DM Serif Display', Georgia, serif; font-weight: 400; font-size: 22px; line-height: 1.2; color: #fff; margin: 0 0 2px; }
.eq-expert-nom em { font-style: italic; color: #67e8f9; }
.eq-expert-titre { font-size: 13.5px; color: rgba(255,255,255,.6); margin: 0 0 10px; }
.eq-expert-bio { font-size: 14.5px; line-height: 1.65; color: rgba(255,255,255,.8); margin: 0 0 14px; }
.eq-linkedin { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 10px; font-size: 13.5px; font-weight: 700;
  color: #fff; background: #0a66c2; text-decoration: none; transition: background .2s; }
.eq-linkedin:hover { background: #004182; }
.eq-linkedin svg { width: 15px; height: 15px; }
.eq-upwork { background: #14a800; }
.eq-upwork:hover { background: #108a00; }
.eq-portfolio { background: #00d4ff; color: #04131c; }
.eq-portfolio:hover { background: #4fe4ff; }
@media (min-width: 700px) {
  .eq-experts.eq-n2, .eq-experts.eq-n4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .eq-experts.eq-n2 .eq-expert, .eq-experts.eq-n4 .eq-expert { flex-direction: row; gap: 18px; }
}
@media (min-width: 1100px) {
  .eq-experts.eq-n7, .eq-experts.eq-n8 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .eq-experts.eq-n7 .eq-expert, .eq-experts.eq-n8 .eq-expert { padding: 20px 18px; }
}
.eq-expert > div { display: flex; flex-direction: column; flex: 1; }
.eq-expert-bio { flex: 1; }
.eq-expert .eq-linkedin { align-self: flex-start; }

@media (max-width: 760px) {
  .eq-carte { grid-template-columns: 1fr; gap: 22px; padding: 22px 20px; }
  .eq-photo { max-width: 220px; }
  .eq-nom { font-size: 27px; }
}
