.team-section {
  padding: 2.5rem 0;
  background: var(--clr-gray);
}

.team-section .section-title {
  text-align: center;
  margin-bottom: 1.8rem;
  font-size: clamp(1.5rem, 1.4899rem + 0.0462vw, 1.75rem);
}

.team-slider-wrapper {
  overflow: hidden;
  position: relative;
}

.team-slider {
  display: flex;
  gap: 1rem;
  transition: transform 0.6s ease;
}

.team-card {
  background: var(--clr-white);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 1rem 0.8rem 1.2rem;
  text-align: center;
  flex: 0 0 100%;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.team-photo {
  width: 100%;
  height: 280px;
  /* object-fit: cover; */
  border-radius: var(--radius);
  margin-bottom: 0.6rem;
}

.team-card h3 {
  margin-bottom: 0.5rem;
  font-size: 1rem;
}

.team-social {
  display: flex;
  justify-content: center;
  gap: 0.7rem;
}

.team-social a {
  font-size: 0.95rem;
  color: var(--clr-primary);
}

/* fade-in when slider starts moving */
.team-card.visible {
  opacity: 1;
  transform: translateY(0);
}

.team-card h3 {
  margin-bottom: 0.2rem;
  font-size: 1rem;
}

.team-role {
  font-size: 0.9rem;
  color: #555;
  margin-bottom: 0.6rem;
}

/* responsive widths: 1 / 2 / 3 per view */
@media (min-width: 600px) {
  .team-card {
    flex: 0 0 calc(50% - 0.5rem);
  }
}

@media (min-width: 850px) {
  .team-card {
    flex: 0 0 calc(33.333% - 0.7rem);
  }
}
