.biography-trigger{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;border:0;border-bottom:1px solid var(--line);padding:18px 0;background:transparent;color:var(--brand-indigo);font:600 14px 'Nunito Sans',sans-serif;text-align:left;cursor:pointer}
.biography-trigger:hover{color:var(--ink)}.biography-trigger svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6}
body.biography-open{position:fixed;top:var(--biography-scroll-offset);left:0;right:0;overflow:hidden}
.biography-dialog{width:min(960px,calc(100% - 64px));max-width:none;max-height:86vh;max-height:86dvh;margin:auto;padding:0;border:0;background:var(--paper);color:var(--ink);box-shadow:0 28px 110px #24233d55;overflow:hidden}
.biography-dialog[open]{display:flex;flex-direction:column;animation:biography-enter .24s ease-out}
.biography-dialog::backdrop{background:#24233db3;backdrop-filter:blur(7px)}
.biography-topbar{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 26px;border-bottom:1px solid var(--line);background:var(--paper);z-index:1}
.biography-topbar>span{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}
.biography-close{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:44px;padding:10px 14px;background:var(--brand-indigo);color:white;border:0;font:600 14px 'Nunito Sans',sans-serif;cursor:pointer}
.biography-close:hover{background:var(--ink)}.biography-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}
.biography-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.biography-layout{display:grid;grid-template-columns:270px minmax(0,1fr);align-items:start;gap:42px;padding:38px}
.biography-portrait img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center top;filter:grayscale(1)}
.biography-copy .eyebrow{margin-bottom:16px}.biography-copy h2{font-size:clamp(32px,3.5vw,48px);color:var(--brand-indigo);line-height:1.12}
.biography-copy .biography-role{font-size:14px;color:var(--muted);margin:12px 0 28px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.biography-text p{font-size:15px;line-height:1.85;color:var(--muted);margin:0 0 18px}.biography-text p:last-child{margin-bottom:0}
@keyframes biography-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.biography-dialog{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-height:none;margin:0;box-shadow:none}.biography-topbar{padding:calc(12px + env(safe-area-inset-top)) 20px 12px}.biography-close{min-height:46px;padding:11px 16px}.biography-layout{grid-template-columns:1fr;gap:26px;padding:24px 24px calc(36px + env(safe-area-inset-bottom))}.biography-portrait{width:min(200px,65%)}.biography-copy h2{font-size:36px}.biography-text p{font-size:16px;line-height:1.8}}
@media(prefers-reduced-motion:reduce){.biography-dialog[open]{animation:none}}

.biography-scroll:focus-visible{outline-offset:-3px}

.team-photo-trigger{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}
.team-photo-trigger:focus-visible{outline-offset:5px}
@media(min-width:761px){.biography-portrait{position:sticky;top:38px}.biography-portrait img{max-height:calc(86vh - 152px);max-height:calc(86dvh - 152px);object-fit:contain}}
