/* Self-contained team section, independent of the legacy showcase rules. */
body main .km-staff-section{box-sizing:border-box;width:calc(100% - 48px);max-width:1180px;margin:48px auto;padding:32px;background:#fff;border:1px solid #dce4ee;border-radius:24px;color:#18334d}
.km-staff-section *{box-sizing:border-box}
.km-staff-section .km-staff-heading{max-width:900px;margin:0 auto 26px;text-align:center}
.km-staff-section .km-staff-kicker{display:inline-block;color:#3861a2;font-size:11px;font-weight:750;letter-spacing:.09em;margin-bottom:8px}
body main .km-staff-section .km-staff-heading h2{color:#18334d;font-size:clamp(26px,2.7vw,36px);font-weight:750;line-height:1.2;letter-spacing:-.025em;margin:0 0 10px}
.km-staff-section .km-staff-heading p{color:#52657a;font-size:15px;line-height:1.6;margin:0}
.km-staff-section .km-staff-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;width:100%;margin:0;padding:0;align-items:stretch}
body main .km-staff-section article.km-staff-card{display:flex;flex-direction:column;min-width:0;width:100%;margin:0;padding:0;overflow:hidden;border:1px solid #dce4ee;border-radius:16px;background:#fff;box-shadow:none;transform:none!important}
body main .km-staff-section article.km-staff-card::before{content:none}
.km-staff-section .km-staff-photo{width:100%;aspect-ratio:448/354;overflow:hidden;background:#e9eef4}
.km-staff-section .km-staff-photo img{display:block;width:100%!important;height:100%!important;object-fit:cover;object-position:center;margin:0!important;border:0;border-radius:0;transform:none}
.km-staff-section .km-staff-info{display:flex;flex-direction:column;align-items:center;text-align:center;padding:18px 12px;flex:1;min-width:0}
body main .km-staff-section .km-staff-name{color:#18334d;font-size:17px;font-weight:700;line-height:1.35;letter-spacing:-.015em;margin:0 0 8px}
.km-staff-section .km-staff-role{display:flex;align-items:center;justify-content:center;gap:7px;margin:0 0 14px;color:#52657a;font-size:12px;line-height:1.5;min-height:36px}
.km-staff-section .km-staff-role svg{width:16px;height:16px;flex:0 0 16px;color:#6883a0}
.km-staff-section .km-staff-experience{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin-top:auto;padding:5px 9px;background:#eef6f2;border-radius:7px;color:#326b54;font-size:11px;line-height:1.4}
.km-staff-section .km-staff-experience svg{width:14px;height:14px;flex:0 0 14px}
.km-staff-section .km-staff-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;list-style:none;margin:24px 0 0;padding:22px 0 0;border-top:1px solid #dce4ee;width:100%}
.km-staff-section .km-staff-values li{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;min-width:0;margin:0;padding:0;border:0;list-style:none;background:none;color:#18334d;font-size:15px;font-weight:600;line-height:1.45}
.km-staff-section .km-staff-values li::before{content:none}
.km-staff-section .km-staff-values svg{display:block;width:25px;height:25px;flex:0 0 25px;color:#487b72}
@media(max-width:1000px){.km-staff-section .km-staff-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.km-staff-section .km-staff-values{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}}
@media(max-width:600px){body main .km-staff-section{width:calc(100% - 28px);padding:22px 14px;margin:28px auto;border-radius:20px}.km-staff-section .km-staff-heading{text-align:left;margin-bottom:20px}.km-staff-section .km-staff-grid{grid-template-columns:1fr;gap:12px}body main .km-staff-section article.km-staff-card{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:stretch}.km-staff-section .km-staff-photo{height:100%;min-height:138px;aspect-ratio:auto}.km-staff-section .km-staff-info{align-items:flex-start;text-align:left;padding:15px}.km-staff-section .km-staff-role{justify-content:flex-start;min-height:0;margin-bottom:10px}.km-staff-section .km-staff-name{font-size:16px}.km-staff-section .km-staff-values{gap:20px 12px}.km-staff-section .km-staff-values li{font-size:12px}}

/* Larger, readable team typography. */
body main .km-staff-section .km-staff-name{font-size:21px;line-height:1.35}
.km-staff-section .km-staff-role{font-size:15px;line-height:1.5;min-height:45px}
.km-staff-section .km-staff-role svg{width:19px;height:19px;flex-basis:19px}
.km-staff-section .km-staff-experience{font-size:13px;padding:6px 10px}
.km-staff-section .km-staff-heading p{font-size:17px}
.km-staff-section .km-staff-values li{font-size:18px;line-height:1.45}
.km-staff-section .km-staff-values svg{width:28px;height:28px;flex-basis:28px}
@media(max-width:600px){body main .km-staff-section .km-staff-name{font-size:18px}.km-staff-section .km-staff-role{font-size:14px;min-height:0}.km-staff-section .km-staff-experience{font-size:12px}.km-staff-section .km-staff-values li{font-size:14px}.km-staff-section .km-staff-heading p{font-size:15px}}

/* Compact portraits and tightly grouped captions. */
body main .km-staff-section{padding:26px}
.km-staff-section .km-staff-heading{margin-bottom:20px}
body main .km-staff-section article.km-staff-card{padding:10px;align-self:start}
.km-staff-section .km-staff-photo{aspect-ratio:auto;height:156px;border-radius:10px}
.km-staff-section .km-staff-photo img{object-position:center 35%}
.km-staff-section .km-staff-info{display:block;flex:none;padding:12px 2px 4px;text-align:center}
body main .km-staff-section .km-staff-name{font-size:20px;margin:0 0 5px;line-height:1.3}
.km-staff-section .km-staff-role{min-height:0;margin:0 0 8px;font-size:14px;line-height:1.4;gap:6px}
.km-staff-section .km-staff-experience{margin:0;padding:4px 8px;font-size:13px;line-height:1.4}
.km-staff-section .km-staff-values{margin-top:18px;padding-top:18px}
.km-staff-section .km-staff-values li{flex-direction:row;gap:8px;font-size:16px}
.km-staff-section .km-staff-values svg{width:23px;height:23px;flex-basis:23px}
@media(max-width:1000px) and (min-width:601px){.km-staff-section .km-staff-photo{height:170px}}
@media(max-width:600px){body main .km-staff-section{padding:20px 14px}body main .km-staff-section article.km-staff-card{padding:0}.km-staff-section .km-staff-photo{height:100%;min-height:120px;border-radius:0}.km-staff-section .km-staff-info{padding:12px;text-align:left}body main .km-staff-section .km-staff-name{font-size:18px}.km-staff-section .km-staff-role{justify-content:flex-start;font-size:14px;margin-bottom:7px}.km-staff-section .km-staff-experience{font-size:12px}.km-staff-section .km-staff-values li{flex-direction:column;font-size:14px}}

/* Preserve the full portrait crop on wider cards. */
@media(min-width:601px){.km-staff-section .km-staff-photo{height:auto;aspect-ratio:448/354}.km-staff-section .km-staff-photo img{object-position:center;aspect-ratio:auto}}
