/* team.html – Our Team */
.tmh{padding-bottom:56px}
.tmh__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.tmh .lead{margin-top:22px}
.tmh__facts{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0 0;padding:0;list-style:none}
.tmh__facts li{display:flex;align-items:baseline;gap:8px;padding:12px 18px;border-radius:16px;background:var(--card);border:1px solid var(--line)}
.tmh__facts b{font-size:26px;font-weight:800;letter-spacing:-.03em;min-width:1ch}
.tmh__facts span{font-size:14px;color:var(--muted)}

/* portrait wall: a staggered honeycomb of every team member */
/* rows of 6 and 5 on a 12-column grid (each portrait spans 2), so 17 people form a centred 6 · 5 · 6 honeycomb */
.tmh__wall{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:12px;row-gap:8px;max-width:620px;margin-left:auto}
.tw{display:block;grid-column:span 2;animation:tw-in .9s var(--ease) both;animation-delay:calc(var(--i) * 45ms)}
.tw:nth-child(11n+7){grid-column:2 / span 2}
.tw .tp{width:100%}
@keyframes tw-in{from{opacity:0;scale:.7}}

/* department chips: sticky under the header, scroll sideways on phones */
.tmnav{position:sticky;top:var(--nav);z-index:20;padding:10px 0;background:var(--bg);border-bottom:1px solid var(--line)}
.tmnav__in{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.tmnav__in::-webkit-scrollbar{display:none}
.tmnav .chip{flex:none;min-height:40px;padding:8px 16px;font-size:14px;font-weight:600}
.tmnav .chip.is-on{border-color:rgba(245,132,31,.6);background:rgba(245,132,31,.14);color:var(--orange2)}

/* departments */
.tmd{padding-top:80px;scroll-margin-top:calc(var(--nav) + 70px)}
.tmd__h{display:flex;flex-direction:column;margin-bottom:28px}
.tmd__h .eyebrow{margin-bottom:12px}
.tmd__note{margin-top:14px;color:var(--muted);max-width:640px}
.tmd__note a,.tm-link,.tm-err a{color:var(--orange2);text-decoration:underline;text-underline-offset:3px}
.tmg{display:grid;grid-template-columns:repeat(auto-fill,minmax(212px,1fr));gap:16px}
.tm{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 14px 22px;border-radius:24px;text-align:center;
  background:linear-gradient(180deg,rgba(var(--ink-rgb),.04),rgba(var(--ink-rgb),.015));border:1px solid var(--line);transition:border-color .3s,transform .4s var(--ease),box-shadow .4s}
.tm:hover{border-color:rgba(47,123,224,.38);box-shadow:0 40px 60px -40px rgba(var(--ink-rgb),.25)}
.tm.is-in:hover{transform:translateY(-4px)}
.tm .tp{width:132px;margin-bottom:12px}
.tm__n{font-size:21px;letter-spacing:-.02em}
.tm__r{font:700 11.5px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--orange2)}
.tm__l{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:6px 0 0;padding:0;list-style:none}
.tm__l li{padding:3px 10px;border-radius:999px;background:rgba(47,123,224,.1);color:var(--blue2);font-size:12.5px;font-weight:600}
.tm__c{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:auto;padding-top:14px}
.tmg--one{grid-template-columns:minmax(0,320px)}
/* a one-person department (Leadership): heading and a wide card side by side, no empty row beside a lone card */
.tmd--one .tmg--one{grid-template-columns:minmax(0,1fr)}
.tmd--one .tm{display:grid;grid-template-columns:auto minmax(0,1fr);justify-items:start;align-content:center;column-gap:26px;row-gap:6px;padding:26px 30px;text-align:left}
.tmd--one .tm .tp{grid-row:1 / span 4;margin:0}
.tmd--one .tm__l,.tmd--one .tm__c{justify-content:flex-start}
.tmd--one .tm__c{margin-top:6px;padding-top:0}
@media (min-width:901px){
  .tmd--one{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:24px 48px;align-items:center}
  .tmd--one .tmd__h{margin-bottom:0}
}
@media (max-width:600px){.tmd--one .tmg--one{grid-template-columns:minmax(0,1fr)}.tmd--one .tm{column-gap:18px;padding:20px}.tmd--one .tm .tp{width:96px}}

/* photos */
.tm-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tmp{margin:0;border-radius:22px;overflow:hidden;background:var(--bg2);border:1px solid var(--line)}
.tmp img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}   /* height:auto – the height="600" attribute would otherwise win over the ratio (600 px tall tiles) */
.tmp figcaption{padding:12px 16px 14px;font-size:13.5px;color:var(--muted)}
.tm-err{padding:60px 0}

@media (max-width:1024px){.tmh__in{grid-template-columns:minmax(0,1fr)}.tmh__wall{max-width:520px;margin:0}}
@media (max-width:900px){.tm-photos{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.tm-photos .tmp:last-child{display:none}}
@media (max-width:600px){
  .tmh{padding-bottom:36px}
  .tmh__wall{column-gap:7px;row-gap:5px;max-width:none}
  .tmh__facts{gap:8px}.tmh__facts li{padding:10px 14px}.tmh__facts b{font-size:22px}
  .tmd{padding-top:56px}
  .tmg{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .tmg--one{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tm{padding:20px 8px 16px;border-radius:20px}
  .tm .tp{width:96px;margin-bottom:8px}
  .tm__n{font-size:18px}.tm__r{font-size:10.5px;letter-spacing:.1em}
  .tm__l li{font-size:11.5px;padding:2px 8px}
  .tm__c{gap:6px;padding-top:10px}
  .tm__c:has(> :nth-child(4)){max-width:90px}   /* four contact buttons do not fit one row in a half-width card: 2 + 2 instead of 3 + a lone 1 */
  .tm-photos{grid-template-columns:minmax(0,1fr)}.tm-photos .tmp:last-child{display:block}
}
@media (prefers-reduced-motion:reduce){.tw{animation:none}}
