/* Team-only presentation; the public header, footer and Academy defaults remain shared. */
.team-main{padding-bottom:100px}
.team-intro{max-width:760px;margin-bottom:64px}
.team-intro .hero-eyebrow{margin:0 0 22px;font-size:10px}
.team-intro h1{margin:0;color:#f8fbfd;font-size:clamp(44px,5.2vw,72px);font-weight:400;line-height:1.08;letter-spacing:-.055em}
.team-intro>p:last-child{max-width:580px;margin:24px 0 0;color:#e0edf7;font-size:18px;line-height:1.7}
.team-directory-section+.team-directory-section{margin-top:58px}
.team-section-heading{display:flex;align-items:baseline;gap:18px;padding-bottom:20px;margin-bottom:24px;border-bottom:1px solid #deeffb40}
.team-section-heading h2{margin:0;color:#f8fbfd;font-size:clamp(22px,2.5vw,30px);font-weight:400;line-height:1.3;letter-spacing:-.025em}
.team-member-list{display:grid;gap:20px}
.team-member-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.team-member-card{display:flex;flex-direction:column;min-width:0;background:#fbfaf7;color:#183a56;border:1px solid #ffffff90;border-radius:12px;overflow:hidden;text-decoration:none;box-shadow:0 8px 24px #0b263718;transition:transform 180ms cubic-bezier(.23,1,.32,1),box-shadow 180ms ease,border-color 180ms ease}
.team-portrait{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--leadership-portrait-background);border-bottom:1px solid #78bbdb80}
.team-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.team-portrait-placeholder{display:flex;align-items:center;justify-content:center;position:relative;width:100%;height:100%;color:#edf5fb;isolation:isolate}
.team-portrait-placeholder::before{content:'';position:absolute;width:58%;aspect-ratio:1;border:1px solid #b7daec38;border-radius:50%;z-index:-1}
.team-portrait-icon{display:block;width:clamp(52px,5vw,72px);height:auto;flex-shrink:0}
.team-portrait-note{position:absolute;bottom:14px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#e0edf7}
.team-member-copy{padding:24px 22px 16px;flex:1;min-width:0}
.team-member-copy h3{margin:0 0 8px;font-size:21px;font-weight:500;line-height:1.3;letter-spacing:-.025em;overflow-wrap:anywhere}
.team-member-copy p{margin:0;color:#415d72;font-size:14px;line-height:1.6}
.team-location{display:inline-block;margin-top:10px;color:#415d72;font-size:12px;line-height:1.5}
.team-member-access{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 22px;padding:16px 0 20px;border-top:1px solid #dce6e9;color:#214a65;font-size:12px;font-weight:600;min-height:44px}
.team-arrow{font-size:20px;font-weight:400;transition:transform 180ms cubic-bezier(.23,1,.32,1)}
.team-member-card-horizontal{display:grid;grid-template-columns:128px minmax(0,1fr) auto;align-items:center}
.team-member-card-horizontal .team-portrait{aspect-ratio:1;border-bottom:0;border-right:1px solid #78bbdb80}
.team-member-card-horizontal .team-portrait-icon{width:42px}
.team-member-card-horizontal .team-portrait-note{display:none}
.team-member-card-horizontal .team-member-copy{padding:22px 28px}
.team-member-card-horizontal .team-member-access{border:0;margin:0 30px 0 12px;padding:12px 0;gap:24px}
.team-back{display:inline-flex;align-items:center;gap:12px;min-height:44px;margin-bottom:28px;color:#f8fbfd;font-size:14px;text-decoration:none}
.team-back:hover{text-decoration:underline;text-underline-offset:5px}
.team-profile{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:32px;align-items:start}
.team-profile-portrait .team-portrait{aspect-ratio:4/5;border:1px solid #78bbdb80;border-radius:12px;box-shadow:var(--leadership-portrait-shadow)}
.team-profile-portrait .team-portrait-icon{width:clamp(88px,9vw,124px)}
.team-profile-portrait .team-portrait-note{bottom:28px;font-size:10px}
.team-profile-portrait>p{margin:20px 0;color:#e0edf7;font-size:13px;line-height:1.6}
.team-profile-panel{padding:clamp(24px,3.8vw,52px);border:1px solid #ffffff90;border-radius:12px;background:#fbfaf7;color:#344e60;box-shadow:0 20px 54px #0b26372b;min-width:0;overflow-wrap:anywhere}
.team-eyebrow,.team-section-label{margin:0 0 18px;color:#415d72;font-size:10px;line-height:1.5;letter-spacing:.12em;text-transform:uppercase}
.team-profile-heading h1{margin:0 0 16px;color:#183a56;font-size:clamp(34px,4vw,52px);font-weight:400;line-height:1.12;letter-spacing:-.045em}
.team-profile-role{margin:0;color:#214a65;font-size:19px;line-height:1.5}
.team-profile-location{margin:8px 0 0;color:#415d72;font-size:14px}
.team-profile-actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 36px}
.team-action-item{flex:1;min-width:125px}
.team-profile-action{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:48px;padding:12px 14px;border:1px solid #b8cad6;border-radius:7px;background:#fbfaf7;color:#183a56;font:inherit;font-size:13px;font-weight:600;text-decoration:none;touch-action:manipulation;transition:background 160ms ease,border-color 160ms ease}
.team-profile-action svg{width:18px;height:18px;flex-shrink:0}
.team-profile-action:disabled{background:#edf1f3;color:#526677;cursor:not-allowed;border-color:#d5dfe3}
.team-action-note{display:block;margin-top:8px;color:#415d72;text-align:center;font-size:10px;line-height:1.5}
.team-profile-section{border-top:1px solid #dce6e9;padding-top:28px;margin-top:28px;scroll-margin-top:110px}
.team-profile-section .team-section-label{margin-bottom:12px}
.team-profile-section h2{margin:0 0 20px;color:#183a56;font-size:26px;font-weight:400;line-height:1.3;letter-spacing:-.025em}
.team-profile-section>p:not(.team-section-label){font-size:16px;line-height:1.85;margin:0 0 18px;white-space:pre-line}
.team-empty-state{padding:22px 24px;border:1px solid #dce6e9;border-radius:7px;background:#edf4f6}
.team-empty-state p{margin:0 0 8px;color:#214a65;font-size:16px;line-height:1.5}
.team-empty-state span{display:block;color:#415d72;font-size:14px;line-height:1.7}
.team-member-card:focus-visible,.team-back:focus-visible{outline:3px solid #fff;outline-offset:5px}
.team-profile-action:focus-visible,.team-profile-section:focus-visible{outline:3px solid #214a65;outline-offset:4px}
@media(hover:hover) and (pointer:fine){
  .team-member-card:hover{transform:translateY(-3px);border-color:#c8e9f5;box-shadow:0 16px 36px #0b263732}
  .team-member-card:hover .team-arrow{transform:translate(2px,-2px)}
  a.team-profile-action:hover{background:#edf4f6;border-color:#214a65}
}
@media(max-width:1100px){.team-member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.team-profile{gap:24px;grid-template-columns:minmax(0,1fr) minmax(0,1.8fr)}}
@media(max-width:767px){
  .team-main{padding-bottom:64px}
  .team-intro{margin-bottom:42px}
  .team-intro>p:last-child{font-size:16px;margin-top:20px}
  .team-member-grid{grid-template-columns:minmax(0,1fr)}
  .team-directory-section+.team-directory-section{margin-top:42px}
  .team-section-heading{gap:12px}
  .team-member-card-horizontal{grid-template-columns:88px minmax(0,1fr);align-items:start}
  .team-member-card-horizontal .team-portrait{width:88px;height:100%;min-height:142px;aspect-ratio:auto;grid-row:1/3}
  .team-member-card-horizontal .team-portrait-icon{width:32px}
  .team-member-card-horizontal .team-member-copy{padding:18px 18px 10px}
  .team-member-card-horizontal .team-member-copy h3{font-size:19px}
  .team-member-card-horizontal .team-member-access{grid-column:2;margin:0 18px;padding:8px 0 14px;justify-content:space-between}
  .team-member-card-horizontal .team-location{margin-top:6px}
  .team-profile{grid-template-columns:minmax(0,1fr);gap:20px}
  .team-profile-portrait .team-portrait{aspect-ratio:4/3}
  .team-profile-portrait .team-portrait-icon{width:88px}
  .team-profile-portrait>p{margin:12px 0 0}
  .team-profile-actions{gap:10px}
  .team-action-item{min-width:110px}
  .team-empty-state{padding:18px}
}
@media(prefers-reduced-motion:reduce){.team-member-card,.team-arrow,.team-profile-action{transition:none}.team-member-card:hover,.team-member-card:hover .team-arrow{transform:none}}
