.team .h2{ margin: 0 0 6px; }
.team .muted{ color: var(--muted); margin: 4px 0 14px; }

.team-grid{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 14px;
}

.team-card{
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 10px;
  padding: 14px;
  border-radius: 16px;
  border: 1px solid rgba(195,154,111,.25);
  background: var(--card-bg);
}

.team-figure{ margin: 0; }
.team-photo{
  inline-size: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 12px;
  border: 1px solid rgba(195,154,111,.25);
  background: rgba(0,0,0,.15);
}

.team-meta{ display: grid; gap: 4px; }
.team-name{ margin: 0; font-weight: 800; color: var(--text); font-size: 1.05rem; }
.team-role{ color: var(--muted); font-weight: 600; }
.team-desc{ color: var(--muted); font-size: .95rem; margin: 0; }

@media (hover:hover){
  .team-card{ transition: transform .12s ease, background .2s ease; }
  .team-card:hover{ transform: translateY(-2px); background: rgba(255,255,255,.06); }
}

