/* About page only. Each complete profile remains in document order. */
.about-team{--team-gap:clamp(2rem,5vw,5rem)}
.about-team .wrap{max-width:1280px}
.team-intro{padding-block:clamp(3rem,6vw,6rem) 3rem}
.team-intro h1{font-size:clamp(2.6rem,5.7vw,5.5rem);max-width:21ch;margin:1rem 0 1.8rem;line-height:1.07}
.team-intro-copy{max-width:76ch}.team-intro-copy p+p{margin-top:1rem}
.team-jump{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin-top:1.5rem}.team-jump a{min-height:44px}
.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--team-gap);align-items:start}
.team-person{min-width:0;padding-top:2rem;border-top:1px solid var(--line);scroll-margin-top:1.5rem}
.team-person h2{font-size:clamp(2.25rem,3.3vw,3.3rem)}
.team-role{font-weight:700;color:var(--rust);margin-top:.7rem;font-size:1rem;line-height:1.6}
.team-person-intro{margin-top:.8rem;color:var(--muted);font-size:1.125rem}
.team-portrait{margin:1.7rem 0 2rem}
.team-portrait img{display:block;width:100%;aspect-ratio:4/5;height:auto;object-fit:cover;object-position:50% 42%;border-radius:0 3rem 0 3rem}
.team-profile p{margin-bottom:1.1rem}.team-profile h3,.team-contact h3{font-size:1.7rem;line-height:1.25;margin:1.8rem 0 .8rem}
.team-profile ul{padding-left:1.25rem;margin:0 0 1.5rem}.team-profile li{margin-block:.35rem}
.team-contact{margin-top:2rem;padding:clamp(1rem,2.5vw,2rem);background:var(--card);border:1px solid var(--line)}
.team-contact h3{margin-top:0}.team-contact>p{margin-block:.9rem}.team-direct{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem}
.team-direct a{min-height:44px;display:inline-flex;align-items:center;font-size:1rem;overflow-wrap:anywhere}
.team-contact form{margin-top:1.6rem}.about-team .field label,.about-team .field label span,.about-team .field small{font-size:1rem}
.team-contact .field input,.team-contact .field textarea{border-radius:0;font:inherit;font-size:1rem;line-height:1.5}
.team-contact .field small{display:block;margin-top:.6rem;line-height:1.6;color:var(--muted)}
.team-contact .team-routing,.team-contact .team-alternative{font-size:1rem;line-height:1.6;color:var(--muted)}
.team-contact .button{border-radius:0;min-height:48px}.team-contact button:disabled{opacity:.7;cursor:wait;transform:none}
.team-contact [role=status]:not(:empty){margin-block:1rem;font-size:1rem;line-height:1.6}
.team-contact .field-error{font-size:1rem;color:var(--text);border-left:3px solid var(--rust);padding-left:.6rem}
.team-review{border-top:1px solid var(--line);padding-top:1.4rem;margin-top:1.5rem}.team-review[hidden]{display:none}
.team-review h4{font-family:var(--font-body);font-size:1.15rem;margin:0 0 .75rem}.team-review p{font-size:1rem}
.team-review pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:1rem;padding:1rem;border:1px solid var(--line);background:var(--paper)}
.team-review .actions{gap:.75rem}.team-contact a:focus-visible,.team-contact button:focus-visible,.team-jump a:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.team-closing{padding-block:3rem 5rem;margin-top:4rem;border-top:1px solid var(--line)}
.team-closing h2{font-size:clamp(2rem,3.8vw,3rem);margin-bottom:1.4rem}.team-closing p{max-width:72ch;margin-bottom:1rem}.team-closing a{margin-top:.6rem}
@media(max-width:899px){.team-grid{grid-template-columns:1fr;gap:3rem}.team-person{max-width:680px;width:100%;margin-inline:auto}.team-intro{padding-top:2.5rem}.team-portrait{max-width:560px}.team-closing{margin-top:3rem}.team-person{scroll-margin-top:1rem}}
@media(max-width:380px){.team-intro h1{font-size:2.5rem}.team-contact{padding:1rem}.team-contact .button{width:100%;padding-inline:.8rem}.team-portrait img{border-radius:0 2rem 0 2rem}}
@media print{.team-contact form,.team-review,.team-result,.team-jump{display:none}.team-grid{display:block}.team-person{break-before:page}.team-portrait{max-width:250px}}
