/* TEAM Card Styles - global for all team sections */
.team-card {
  border: 2.5px solid #198754 !important;
  border-radius: 1.2rem;
  box-shadow: 0 2px 12px rgba(25,135,84,0.08);
  transition: box-shadow 0.18s, border-color 0.18s, transform 0.18s;
  background: #fff;
}
.team-card:hover {
  box-shadow: 0 8px 32px rgba(25,135,84,0.16);
  border-color: #145c2c !important;
  transform: translateY(-4px) scale(1.01);
}
.team-img {
  width: 140px;
  height: 140px;
  object-fit: cover;
  object-position: top;
  border-radius: 50%;
  border: 4px solid #198754;
  box-shadow: 0 2px 12px rgba(25,135,84,0.13);
  margin-top: 1.5rem;
  margin-bottom: 0.5rem;
  background: #e9fbe7;
}
.team-card .card-title {
  color: #053310;
  font-weight: 700;
  font-family: 'Segoe UI', 'Arial', sans-serif;
  letter-spacing: 0.01em;
  margin-bottom: 0.25rem;
}
.team-card .badge-position {
  background: linear-gradient(90deg, #198754 60%, #145c2c 100%);
  color: #fff;
  font-weight: 600;
  border-radius: 1em;
  font-size: 1rem;
  margin-bottom: 0.5rem;
  padding: 0.5em 1.2em;
  box-shadow: 0 1px 4px rgba(25,135,84,0.08);
  display: inline-block;
}
.team-card .badge-term {
  background: #f6fff3;
  color: #198754;
  font-weight: 500;
  border-radius: 1em;
  font-size: 0.95rem;
  padding: 0.4em 1em;
  border: 1.5px solid #198754;
  display: inline-block;
}
@media (max-width: 575px) {
  .team-img {
    width: 90px;
    height: 90px;
  }
  .team-card {
    border-radius: 0.8rem;
  }
}
