.page-our-team .hero-our-team { height: 560px; }
.page-our-team .hero-our-team .hero-content { top: 280px; }
.page-our-team .hero-our-team h1 { font-size: 70px; line-height: 1.15; }
.page-our-team .generic-header { background: #f3f6fa; }
.page-our-team .generic-header .site-header { right: auto; }
.team-directory { padding: 64px 0 80px; }
.team-category-filters { display: flex; justify-content: center; flex-wrap: wrap; gap: 14px; margin-bottom: 44px; }
.team-category-filters[hidden], .team-directory [hidden] { display: none; }
.team-category-filters button { display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 52px; padding: 10px 24px; border: 1px solid #dce3eb; border-radius: 30px; background: #f5f7fa; color: #354450; font: inherit; font-size: 16px; font-weight: 600; cursor: pointer; }
.team-category-filters button span { display: grid; place-items: center; min-width: 25px; height: 25px; padding: 0 5px; border-radius: 50%; background: #fff; color: #65737e; font-size: 12px; font-variant-numeric: tabular-nums; }
.team-category-filters button:hover { border-color: #4384ff; color: #0075a9; }
.team-category-filters button[aria-selected="true"] { background: #fabc05; border-color: #fabc05; color: #111; }
.team-category-filters button[aria-selected="true"] span { color: #111; background: #ffffffb3; }
.team-category-filters button:focus-visible, .team-directory a:focus-visible { outline: 3px solid #0075a9; outline-offset: 4px; }
.team-profile-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 42px 24px; }
.team-profile { min-width: 0; }
.team-directory .director { text-align: center; }
.team-directory .director-photo { position: relative; aspect-ratio: 389 / 451; border-radius: 15px; overflow: hidden; background: #edf1f4; }
.team-directory .director-photo > img { position: absolute; max-width: none; object-fit: cover; width: 111.05%; height: 143.46%; left: -2.57%; top: -12.86%; }
.team-directory [data-team-portrait="1"] .director-photo > img { width: 134.19%; height: 173.61%; left: -17.095%; top: 0; }
.team-directory [data-team-portrait="2"] .director-photo > img { width: 110.03%; height: 142.35%; left: -5.015%; top: -2.44%; }
.team-directory [data-team-portrait="3"] .director-photo > img { width: 126.99%; height: 146.34%; left: -9%; top: -7.98%; }
.team-directory .director-linkedin { position: absolute; right: 20px; bottom: 20px; width: 46px; height: 46px; border: 3px solid #fff; border-radius: 50%; background: #4384ff; display: grid; place-items: center; }
.team-directory .director-linkedin img { width: 20px; height: 20px; }
.team-directory .director h3 { font-size: 24px; line-height: 28px; font-weight: 700; color: #000; margin: 24px 0 6px; overflow-wrap: break-word; }
.team-directory .team-designation { display: block; color: #0075a9; font-size: 14px; line-height: 22px; font-weight: 600; margin-bottom: 12px; overflow-wrap: break-word; }
.team-directory .director p { font-size: 18px; line-height: 30px; color: #5c5c5c; max-width: 332px; min-height: 60px; margin-inline: auto; overflow-wrap: break-word; }
.team-empty { text-align: center; padding: 50px 0; color: #5c5c5c; }
.team-load-more { display: flex; justify-content: center; margin-top: 42px; }
.page-our-team .team-load-more .button .arrow { transform: rotate(135deg); }
.team-profile:focus-visible { outline: 2px solid #0075a9; outline-offset: 6px; }
@media (max-width: 1700px) {
  .team-directory .director h3 { font-size: 20px; line-height: 26px; }
  .team-directory .director p { font-size: 16px; line-height: 26px; min-height: 78px; }
}
@media (max-width: 1050px) {
  .page-our-team .hero-our-team { height: 460px; }
  .page-our-team .hero-our-team .hero-content { top: 235px; }
  .page-our-team .hero-our-team h1 { font-size: 54px; }
  .team-category-filters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 650px; margin-inline: auto; }
  .team-profile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .page-our-team .hero-our-team { height: auto; min-height: 350px; }
  .page-our-team .hero-our-team .hero-content { top: 0; padding-block: 180px 80px; }
  .page-our-team .hero-our-team h1 { font-size: 42px; }
  .team-directory { padding: 36px 0 50px; }
  .team-category-filters { gap: 10px; margin-bottom: 28px; }
  .team-category-filters button { min-height: 54px; padding: 8px 12px; gap: 8px; font-size: 14px; line-height: 20px; border-radius: 8px; }
  .team-category-filters button span { flex-shrink: 0; min-width: 22px; height: 22px; }
  .team-directory .director h3 { min-height: 0; }
}
@media (max-width: 600px) {
  .team-profile-grid { grid-template-columns: 1fr; gap: 34px; }
  .team-directory .director p { min-height: 0; }
}
