/* Meet the Team: the names carry the page. Founders in order of precedence; each name opens its bio in place. */
.tm{padding-block:20px clamp(80px,10vw,150px)}
.tm-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,26ch);grid-template-rows:auto auto;column-gap:40px;align-items:end;padding-bottom:clamp(56px,8vw,120px)}
.tm-rail{grid-column:1/-1;padding-bottom:12px;margin-bottom:clamp(56px,9svh,110px);border-bottom:1px solid var(--rule)}
.tm-head h1{margin:0;font:400 clamp(64px,9vw,150px)/.9 var(--serif);letter-spacing:-.045em;color:var(--ink)}
.tm-lead{margin:0;font:italic 400 clamp(21px,1.7vw,27px)/1.35 var(--serif);color:var(--ink)}
.tm-group{margin:clamp(64px,8vw,110px) 0 20px;font:italic 400 clamp(30px,3vw,44px)/1 var(--serif);color:var(--ink)}
.tm-people{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.tm-person{border-bottom:1px solid var(--ink)}
.tm-person h2{margin:0;font:inherit}
.tm-toggle{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"role role" "name cue";align-items:baseline;column-gap:32px;width:100%;padding:clamp(24px,3vw,40px) 0 clamp(20px,2.6vw,34px);border:0;background:none;color:var(--ink);text-align:left;cursor:pointer;font:inherit}
.tm-role{grid-area:role;margin-bottom:6px;font:italic 400 clamp(19px,1.5vw,24px)/1.2 var(--serif);color:var(--muted)}
.tm-name{grid-area:name;font:400 clamp(56px,8.4vw,144px)/.92 var(--serif);letter-spacing:-.045em;transition:translate .7s var(--ease)}
.tm-cue{grid-area:cue;font:400 20px/1 var(--serif);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px;transition:text-underline-offset .3s var(--ease)}
.tm-cue-close,.tm-person.is-open .tm-cue-open{display:none}.tm-person.is-open .tm-cue-close{display:inline}
@media (hover:hover){.tm-toggle:hover .tm-name{translate:clamp(10px,1.4vw,24px) 0}.tm-toggle:hover .tm-cue{text-underline-offset:11px}}
.tm-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:6px}
/* The bio opens in place: the row grows, the portrait rises into it. Without script every bio stays open. */
.tm-bio{display:grid;grid-template-rows:1fr}
.tm-bio-inner{min-height:0;overflow:hidden;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,7fr);column-gap:clamp(32px,6vw,110px);align-items:start}
.tm-bio-inner>*{margin-bottom:clamp(36px,4.4vw,64px)}
.js .tm-bio{grid-template-rows:0fr;transition:grid-template-rows .75s var(--ease)}
.js .tm-person.is-open .tm-bio{grid-template-rows:1fr}
.js .tm-person:not(.is-open) .tm-bio-inner{visibility:hidden;transition:visibility 0s .75s}
.tm-portrait{margin:0;aspect-ratio:3/4;overflow:hidden;background:var(--ink)}.tm-portrait svg,.tm-portrait img{display:block;width:100%;height:100%;object-fit:cover}
.js .tm-portrait{clip-path:inset(100% 0 0);transition:clip-path .9s var(--ease) .1s}.js .tm-person.is-open .tm-portrait{clip-path:inset(0)}
.tm-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,3vw,48px) clamp(32px,4vw,64px);margin:0 0 clamp(36px,4.4vw,64px)}
.tm-fields>div:first-child{grid-column:1/-1}
.tm-fields dt{margin-bottom:10px;font:italic 400 clamp(20px,1.6vw,24px)/1.2 var(--serif);color:var(--ink)}
.tm-fields dd{margin:0;font:400 clamp(19px,1.4vw,22px)/1.5 var(--serif);color:var(--muted)}
.tm-fields>div:first-child dd{font-size:clamp(24px,2.2vw,34px);line-height:1.3;color:var(--ink)}
.tm-fields dd.is-pending{color:#8a8f80;font-style:italic}
.js .tm-fields>div{opacity:0;translate:0 14px;transition:opacity .5s,translate .7s var(--ease)}
.js .tm-person.is-open .tm-fields>div{opacity:1;translate:none;transition-delay:.25s}
.js .tm-person.is-open .tm-fields>div:nth-child(2){transition-delay:.33s}.js .tm-person.is-open .tm-fields>div:nth-child(3){transition-delay:.41s}.js .tm-person.is-open .tm-fields>div:nth-child(4){transition-delay:.49s}
@media(max-width:900px){
  .tm-head{grid-template-columns:1fr;row-gap:24px}.tm-rail{display:none}.tm{padding-top:48px}
  .tm-toggle{grid-template-areas:"role" "name" "cue";grid-template-columns:1fr;row-gap:14px}.tm-cue{justify-self:start}
  .tm-name{font-size:clamp(46px,14vw,72px)}
  .tm-bio-inner{grid-template-columns:1fr}.tm-portrait{max-width:280px;margin-bottom:28px}
  .tm-fields{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.tm *{transition:none!important}}
