/* Styles for the /team page (cards rendered by partials-team/profile-member.html). */

.team-card {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.team-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 0.5rem 1.25rem rgba(0, 0, 0, 0.1) !important;
}

.team-description {
  font-size: 0.9rem;
  line-height: 1.5;
}

/* Homepage carousel placeholder (partials/team-avatar.html). The photo path
   uses `<img class="avatar-img w-75">` which renders at ~75% column width
   and keeps a 1:1 aspect; mirror that here so the initials placeholder
   matches the photo's footprint instead of collapsing to the 50px default
   width of `.avatar-initials`.

   No `!important` on display: flex — the template uses an inline
   `style="display: none;"` to keep the placeholder hidden under the photo
   in the common case and an `<img onerror>` swap reveals it on 404. The
   inline rule must keep its precedence over the stylesheet. */
.team-avatar-fallback {
  width: 75%;
  aspect-ratio: 1;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.team-avatar-fallback .avatar-initials {
  width: 100%;
  height: 100%;
  font-size: clamp(1rem, 4cqw, 2rem);
}
