/* Circular portrait and centred panel adapted from the supplied team reference. */
.team-directory-hero.directory-hero { padding-bottom:40px; }
.team-member-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:start;
  gap:40px 28px;
  width:min(1180px,calc(100% - 64px));
  margin:0 auto;
  padding:18px 0 88px;
}
.team-member-card { position:relative; padding-top:88px; text-align:center; }
.team-member-portrait {
  position:absolute;
  z-index:1;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:176px;
  height:176px;
  overflow:hidden;
  border:6px solid #fff;
  border-radius:50%;
  background:#0d9488;
  color:#fff;
  box-shadow:0 6px 18px rgba(0,37,38,.12);
  display:grid;
  place-items:center;
  font-size:48px;
  font-weight:700;
}
.team-member-portrait img { object-fit:cover; object-position:center 36%; }
.team-member-panel {
  display:flex;
  flex-direction:column;
  align-items:center;
  min-height:320px;
  padding:108px 26px 28px;
  border-radius:8px;
  background:#004145;
  color:#fff;
  box-shadow:0 14px 34px rgba(0,37,38,.09);
}
.team-member-panel h2 { margin:0; font-family:var(--font-display); font-size:28px; line-height:1.2; font-weight:750; letter-spacing:-.025em; }
.team-member-panel h2 a { color:inherit; text-decoration:none; }
.team-member-credentials { margin:8px 0 0; font-size:14px; font-weight:600; letter-spacing:.04em; color:#d4eeeb; }
.team-member-title { margin:16px 0 0; max-width:270px; font-size:17px; line-height:1.5; font-weight:600; color:#fff; }
.team-member-divider { display:block; width:36px; height:3px; margin:20px 0; background:var(--teal-bright); }
.team-member-actions { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:14px; margin-top:0; }
.team-member-profile { display:inline-flex; justify-content:center; align-items:center; min-height:44px; padding:10px 16px; border:1px solid #81bcb9; border-radius:4px; color:#fff; text-decoration:none; font-size:14px; font-weight:650; }
.team-member-linkedin { display:grid; place-items:center; width:44px; height:44px; border:1px solid #81bcb9; border-radius:4px; color:#fff; text-decoration:none; }
.team-member-linkedin span { font-family:Arial,sans-serif; font-size:22px; font-weight:800; line-height:1; }
.team-member-profile:hover,.team-member-linkedin:hover { background:#0d9488; border-color:#12c7b7; }
.team-member-card a:focus-visible { outline:3px solid #12c7b7; outline-offset:5px; }
@media(max-width:1000px) { .team-member-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:640px) {
  .team-directory-hero.directory-hero { padding-bottom:30px; }
  .team-member-grid { grid-template-columns:minmax(0,1fr); width:min(380px,calc(100% - 36px)); padding-top:12px; padding-bottom:56px; }
  .team-member-panel { min-height:0; padding-right:22px; padding-left:22px; }
}
body.rn-static .team-member-panel h3{margin:0;font-family:var(--font-display);font-size:28px;line-height:1.2;font-weight:750;letter-spacing:-.025em;color:white}.team-member-panel h3 a{color:inherit;text-decoration:none}[data-about-people] .team-member-portrait img{position:absolute;inset:0;width:100%;height:100%}[data-about-people] .team-member-grid{width:100%;padding-bottom:0}[data-about-people] .team-member-linkedin svg{width:22px;height:22px}#team{scroll-margin-top:104px}
