/* Desktop: an introduction beside the portraits. Smaller screens: natural rows. */
.nav-link-2.active{color:var(--brand)}
.team-panel{--portrait-columns:3;padding:52px 0;background:#fff}
.team-panel+.team-panel{border-top:1px solid var(--line)}
section.team-panel{scroll-margin-top:var(--menu-height,94px)}
.team-panel>.team-layout{width:min(1200px,calc(100% - 64px))}
.team-layout{display:grid;grid-template-columns:minmax(0,.76fr) minmax(0,1.8fr);gap:40px;align-items:center}
.team-story,.team-members{min-width:0}
.team-story h1,.team-story h2{font-weight:600;letter-spacing:-.04em;line-height:1.2;margin:0;text-wrap:balance}
.team-story h1{font-size:46px}
.team-story h2{font-size:38px}
.team-intro{font-size:15px;line-height:1.75;margin-top:22px;max-width:42ch}
.team-kicker{margin-bottom:18px}
.team-project-tag{display:inline-flex;align-items:center;border:1px solid #e2e6ef;border-radius:20px;padding:4px 10px;color:#68738c;font-size:10px;line-height:1.5;white-space:nowrap}
.team-local-nav{display:flex;flex-wrap:wrap;gap:4px 15px;margin-top:20px}
.team-local-nav a{display:inline-flex;align-items:center;min-height:40px;font-size:11px;line-height:1.5;padding:8px 0;border-bottom:1px solid #e1e6ef;color:#68738c}
.team-local-nav a:hover{color:var(--brand);border-color:var(--brand)}
.member-grid{display:grid;grid-template-columns:repeat(var(--portrait-columns),minmax(0,1fr));gap:18px;align-items:stretch;width:100%}
.member-card{min-width:0;overflow:hidden;border:1px solid #e7eaf0;background:#fff;border-radius:22px;box-shadow:0 8px 30px #24345a05}
.member-portrait{display:block;width:100%;height:auto;aspect-ratio:4/5;padding:0;border:0;overflow:hidden;background:#dce6db;cursor:zoom-in}
.member-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.member-info{font-family:'Be Vietnam Pro',Urbanist,sans-serif;padding:19px 17px 20px;min-height:146px}
.member-info h3{font-family:'Be Vietnam Pro',Urbanist,sans-serif;font-size:clamp(17px,1.48vw,21px);line-height:1.35;letter-spacing:-.035em;margin:0 0 8px;color:#2b3554;overflow-wrap:normal}
.member-role{color:var(--brand);font-size:13px;font-weight:500;line-height:1.55;min-height:2.8em}
.member-credential{color:#687387;font-size:11px;line-height:1.65;margin-top:8px;min-height:1.65em}
.team-panel--company{--portrait-columns:2}
.team-panel--company .team-members{width:100%;max-width:620px;justify-self:center}
.team-panel--company .member-info h3{font-size:24px}
.team-panel--company .member-role{min-height:1.55em}
.team-panel--single{--portrait-columns:1}
.team-panel--four{--portrait-columns:4}
.team-projects{display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px}
.team-projects>a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0;min-height:80px;padding:14px 18px;border:1px solid #e1e6ef;background:#fbfcfe;border-radius:16px;transition:border-color .2s,background .2s}
.team-projects>a:hover{background:#f2f5fa;border-color:#c5ccdf}
.team-projects>a:focus-visible{outline:2px solid var(--brand);outline-offset:4px}
.team-projects .qm-brand{height:48px;gap:8px;flex-shrink:0}
.team-projects .qm-logo{width:38px;height:30px;object-fit:contain}
.team-projects .qm-name{font-size:21px}
.team-projects .qm-wordmark{gap:7px}
.team-projects .qm-brand .suite{font-size:7px;letter-spacing:.22em}
.team-projects .qm-brand .suite:before{width:12px}
.team-projects .bluegene-brand{height:48px;justify-content:center;flex-shrink:0}
.team-projects .bluegene-logo{width:118px;height:48px;object-fit:contain;object-position:left center}
.team-project-arrow{flex-shrink:0;font-size:23px;line-height:1;color:var(--brand)}
.image-dialog:has(img[src*="/team/"]){width:min(720px,94vw)}
.image-dialog:has(img[src*="/team/"]) .image-dialog-body{padding:0 16px 16px;display:flex;justify-content:center}
.image-dialog:has(img[src*="/team/"]) .image-dialog-body img{width:auto;min-width:0;max-width:100%;height:auto;max-height:76svh;object-fit:contain;border-radius:10px}
@media(min-width:1101px){
 .team-panel{padding-block:32px}
 section.team-panel{scroll-margin-top:0}
}
@media(min-width:1101px) and (max-width:1200px){
 .team-layout{grid-template-columns:minmax(0,.75fr) minmax(0,1.85fr);gap:28px}
 .team-story h1{font-size:38px}
 .team-story h2{font-size:33px}
 .team-intro{font-size:14px;line-height:1.7}
 .member-grid{gap:14px}
 .member-info{padding:18px 14px;min-height:143px}
 .member-role{font-size:12px}
 .member-credential{font-size:10px}
}
@media(min-width:1101px) and (max-height:760px){.team-panel--company .team-members{max-width:580px}}
@media(min-width:1101px) and (max-height:700px){
 .team-panel{padding-block:22px}
 .team-panel>.team-layout{max-width:1120px}
 .team-story h1{font-size:38px}
 .team-story h2{font-size:32px}
 .team-intro{font-size:13px;margin-top:17px;line-height:1.65}
 .team-kicker{margin-bottom:14px}
 .team-local-nav{margin-top:14px;gap:2px 12px}
 .team-local-nav a{font-size:10px}
 .member-info{padding:15px;min-height:126px}
 .member-info h3{font-size:18px;margin-bottom:6px}
 .member-role{font-size:12px}
 .member-credential{font-size:10px;margin-top:6px}
 .team-panel--company .team-members{max-width:500px}
 .team-panel--company .member-info h3{font-size:21px}
 .team-projects{margin-top:20px;gap:8px}
 .team-projects>a{min-height:72px;padding:10px 15px}
}
@media(max-width:1100px){
 html:has(.team-page){scroll-snap-type:none;scroll-padding-top:0}
 .team-page .team-panel{display:block;min-height:0;padding:40px 0;scroll-snap-align:none;scroll-margin-top:var(--menu-height,94px)}
 .team-panel>.team-layout{width:calc(100% - 48px)}
 .team-layout{grid-template-columns:1fr;gap:30px}
 .team-story{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;align-items:center}
 .team-kicker{grid-column:1/-1;margin:0}
 .team-story h1{font-size:40px}
 .team-story h2{font-size:34px}
 .team-intro{max-width:none;margin:0;font-size:15px;line-height:1.7}
 .team-local-nav,.team-projects{grid-column:1/-1;margin-top:4px}
 .team-local-nav a{font-size:12px;min-height:44px}
 .team-panel--company .team-members{max-width:680px}
 .team-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .team-projects>a{min-height:88px;padding:16px 20px}
 .member-info{padding:20px 16px;min-height:146px}
 .member-info h3{font-size:20px}
 .member-role{font-size:13px}
 .member-credential{font-size:12px}
 .team-panel--four{--portrait-columns:2}
 .team-page .closing-screen{display:block;min-height:0;padding:0;scroll-snap-align:none}
 .team-page .footer{padding-top:48px}
}
@media(min-width:701px) and (max-width:900px){
 .team-page .team-panel{scroll-margin-top:86px}
 .member-grid{gap:14px}
 .member-info{padding:18px 14px;min-height:158px}
 .member-info h3{font-size:18px;min-height:2.7em}
 .member-role{font-size:12px}
 .member-credential{font-size:11px}
 .team-panel--company .member-info h3{min-height:0}
}
@media(max-width:700px){
 .team-page .team-panel{--portrait-columns:1;padding:32px 0 40px;scroll-margin-top:78px}
 .team-panel>.team-layout{width:calc(100% - 40px)}
 .team-layout{gap:26px}
 .team-story{display:block}
 .team-kicker{margin-bottom:16px}
 .team-story h1,.team-story h2{font-size:34px;line-height:1.25}
 .team-intro{margin-top:16px;font-size:15px;line-height:1.75}
 .team-local-nav{gap:3px 14px;margin-top:16px}
 .team-local-nav a{font-size:12px}
 .team-members{width:100%;max-width:430px;margin-inline:auto}
 .member-grid{gap:22px}
 .member-info{min-height:0;padding:22px}
 .member-info h3,.team-panel--company .member-info h3{font-size:24px;min-height:0}
 .member-role{font-size:14px;min-height:0}
 .member-credential{font-size:12px;min-height:0;margin-top:10px}
 .team-panel--company,.team-panel--four{--portrait-columns:1}
 .team-panel--company .team-members{max-width:430px}
 .team-projects{grid-template-columns:1fr;gap:10px;margin-top:22px}
 .team-projects>a{min-height:84px;padding:15px 18px}
}
@media(max-width:370px){
 .team-panel>.team-layout{width:calc(100% - 32px)}
 .team-projects .qm-name{font-size:20px}
 .member-info{padding:20px}
 .member-info h3,.team-panel--company .member-info h3{font-size:23px}
}
