/* Corporate team: four-column portrait cards and biography dialog, matching the supplied reference layout. */
.team-page{max-width:1160px;width:calc(100% - 80px);margin:0 auto;padding:80px 0 100px;color:#111;font-family:Arial,Helvetica,sans-serif;}
.team-heading h1{font-family:Arial,Helvetica,sans-serif;font-size:64px;font-weight:750;line-height:1.08;letter-spacing:-2px;margin:0 0 36px;}
.team-section-label{display:inline-block;color:#234a92;border-bottom:3px solid #234a92;font-size:14px;line-height:24px;padding:0 0 9px;margin-bottom:64px;}
.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:56px 24px;}
.team-card{min-width:0;}
.team-card-button{appearance:none;border:0;background:transparent;padding:0;width:100%;display:block;text-align:left;color:inherit;font:inherit;cursor:pointer;}
.team-card-photo{aspect-ratio:1/1;overflow:hidden;background:#f2f3f5;}
.team-card-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .25s ease;}
.team-card-button:hover .team-card-photo img{transform:scale(1.025);}
.team-card-role{font-size:14px;line-height:22px;min-height:44px;margin:22px 0 10px;}
.team-card h2{font:700 28px/1.18 Arial,Helvetica,sans-serif;margin:0 0 24px;letter-spacing:-.45px;}
.team-read-bio{font-size:16px;font-weight:700;text-decoration:underline;text-underline-offset:4px;}
.team-read-bio span{color:#234a92;text-decoration:none;display:inline-block;padding-left:6px;}
.team-card-button:focus-visible{outline:3px solid #234a92;outline-offset:7px;}
.team-modal{border:0;padding:0;width:min(800px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 48px);overflow:hidden;background:#fff;color:#111;box-shadow:0 20px 80px #0005;}
.team-modal::backdrop{background:rgba(0,0,0,.68);}
.team-modal-inner{max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;}
.team-modal-photo{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;display:block;}
.team-modal-close{position:absolute;right:20px;top:20px;z-index:2;width:48px;height:48px;background:#111;color:white;border:0;font:400 40px/44px Arial,sans-serif;cursor:pointer;}
.team-modal-copy{padding:38px 48px 48px;font:16px/1.7 Arial,Helvetica,sans-serif;}
.team-modal-copy h2{font:700 36px/1.15 Arial,Helvetica,sans-serif;letter-spacing:-.7px;margin:12px 0 18px;}
.team-modal-copy p{margin:0 0 18px;}
.team-modal-role{font-size:16px;}
.team-modal-meta{font-size:14px;color:#666;}
.team-modal-background{font-weight:700;}
.team-modal-open{overflow:hidden;}
@media(max-width:1023px){.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.team-page{width:calc(100% - 64px);padding-top:64px;}.team-heading h1{font-size:56px;}}
@media(max-width:767px){.team-page{width:calc(100% - 32px);padding:44px 0 64px;}.team-heading h1{font-size:44px;letter-spacing:-1.4px;margin-bottom:28px;}.team-section-label{margin-bottom:36px;}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 18px;}.team-card-role{font-size:12px;line-height:18px;min-height:36px;margin:16px 0 9px;}.team-card h2{font-size:22px;letter-spacing:-.35px;margin-bottom:16px;}.team-read-bio{font-size:14px;}.team-modal{width:calc(100% - 24px);max-height:calc(100dvh - 24px);}.team-modal-inner{max-height:calc(100dvh - 24px);}.team-modal-copy{padding:28px 24px 32px;font-size:15px;}.team-modal-copy h2{font-size:30px;}.team-modal-close{right:12px;top:12px;width:40px;height:40px;font-size:34px;line-height:36px;}}
@media(prefers-reduced-motion:reduce){.team-card-photo img{transition:none;}.team-card-button:hover .team-card-photo img{transform:none;}}
