/* Grille de présentation : toutes les cartes de la page ont la même hauteur */
.view-steering_committee .view-content {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  gap: 20px;
  grid-auto-rows: 1fr;   /* toutes les lignes prennent la même hauteur */
  align-items: stretch;  /* étire les cartes sur toute la hauteur de la cellule */
}

/* Carte encadrée */
.person-card {
  border: 1px solid #ccc;
  border-radius: 12px;
  background-color: #f9f9f9;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
  padding: 12px;

  display: flex;
  flex-direction: column;
  justify-content: center;  /* centre verticalement le contenu */
  height: 100%;             /* prend toute la hauteur de la cellule */
}

/* Contenu interne (image + texte) */
.person-wrapper {
  display: flex;
  align-items: center;  /* centre verticalement image + texte */
  gap: 10px;
  flex: 1;
}

/* Image */
.person-photo img {
  width: 120px;
  height: 120px;         /* uniformise la taille */
  object-fit: cover;     /* recadrage sans déformation */
  border-radius: 12px;
  display: block;
}

/* Texte */
.person-info {
  flex: 1;
  margin: 0;
  padding-top: 4px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.person-title {
  font-weight: bold;
  margin: 0 0 4px 0;
  text-align: left;
}

.person-body {
  font-size: 13px;
  line-height: 1.4;
  margin: 0;
  text-align: left;
}

/* Responsive : sur mobile, une seule carte par ligne */
@media (max-width: 600px) {
  .view-steering_committee .view-content {
    grid-template-columns: 1fr;  /* une carte par ligne */
    grid-auto-rows: auto;        /* hauteur automatique */
  }

  .person-card {
    height: auto;                /* libère la hauteur fixe */
    justify-content: flex-start; /* contenu aligné en haut */
  }

  .person-wrapper {
    align-items: flex-start;     /* image + texte alignés en haut */
  }
}