/* Teacher biographies share the studio's typography, colours and native navigation. */
.team-directory{padding:10px 0 70px;position:relative}.anchor-target{position:absolute;top:0;scroll-margin-top:110px}.team-heading{max-width:720px;margin-bottom:52px}.team-heading h2{margin-top:20px}.team-heading>p:last-child{font-size:18px;color:var(--muted);max-width:570px;margin-top:24px}.team-entry{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(36px,7vw,100px);padding:54px 0;border-top:1px solid var(--line);scroll-margin-top:110px}.team-photo{max-width:360px;width:100%;justify-self:start}.team-photo a{display:block}.team-photo img{height:auto;width:100%;object-fit:contain}.team-copy{max-width:690px;min-width:0;padding-top:6px}.team-copy h3{font-size:clamp(32px,3.2vw,46px);margin-top:17px}.team-copy h3 a:hover{color:var(--accent)}.team-speciality{font-size:15px;color:var(--muted);margin-top:12px}.team-copy h4{font-size:24px;font-weight:500;letter-spacing:-.03em;line-height:1.4;margin:30px 0 0}.team-bio{font-size:17px;color:var(--muted);margin-top:24px}.team-bio p+p{margin-top:20px}.team-copy>.text-link{margin-top:25px}.teacher-page{max-width:1280px;width:calc(100% - 2 * var(--gutter));margin-inline:auto}.profile-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.75fr);gap:clamp(40px,8vw,120px);align-items:center;padding:36px 0 72px}.profile-intro{min-width:0}.profile-intro .back-link{margin-bottom:38px}.profile-intro h1{font-size:clamp(52px,5.6vw,80px);line-height:1.1;margin-top:24px;max-width:680px}.profile-speciality{font-size:18px;margin-top:22px;color:var(--accent)}.profile-lead{font-size:20px;line-height:1.75;color:var(--muted);max-width:570px;margin-top:28px}.profile-intro>.text-link{margin-top:30px}.profile-portrait{max-width:420px;width:100%;justify-self:end}.profile-portrait img{width:100%;height:auto;object-fit:contain}.profile-portrait figcaption{font-size:12px;color:var(--muted);margin-top:14px}.profile-biography,.profile-practice{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);gap:clamp(40px,8vw,120px);padding:72px 0;border-top:1px solid var(--line);scroll-margin-top:110px}.profile-margin-note{font-size:22px;max-width:260px;margin-top:30px;letter-spacing:-.025em}.profile-margin-note span{display:block;font-size:14px;line-height:1.75;color:var(--muted);letter-spacing:0;margin-top:12px}.profile-prose h2{font-size:clamp(36px,3.8vw,52px);line-height:1.16;margin-bottom:32px}.profile-prose>p{font-size:19px;line-height:1.85;color:var(--muted);max-width:65ch}.profile-prose>p+p{margin-top:24px}.profile-practice h2{font-size:44px;line-height:1.17;margin-top:22px}.profile-practice>div>p:not(.eyebrow){font-size:17px;color:var(--muted);max-width:360px;margin-top:24px}.profile-practice .studio-button{margin-top:28px}.profile-practice-list{list-style:none;padding:0;margin:0}.profile-practice-list li{padding:28px 0;border-bottom:1px solid var(--line)}.profile-practice-list li:first-child{padding-top:0}.profile-practice-list li:last-child{border-bottom:0;padding-bottom:0}.profile-practice-list h3{font-size:24px}.profile-practice-list p{font-size:16px;color:var(--muted);margin-top:15px}.profile-practice-list .text-link{font-size:14px;margin-top:18px}.profile-team-nav{display:grid;grid-template-columns:1fr 1fr;gap:0 60px;padding:45px 0 70px;border-top:1px solid var(--line)}.profile-team-nav>.eyebrow{grid-column:1/-1;margin-bottom:24px}.profile-team-nav>a:not(.text-link){display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:70px;font-size:20px;letter-spacing:-.025em;border-bottom:1px solid var(--line)}.profile-team-nav>a:hover{color:var(--accent)}.profile-team-nav>.text-link{justify-self:start;margin-top:14px;font-size:14px}
@media(max-width:960px){.team-entry{gap:40px;grid-template-columns:minmax(0,.8fr) minmax(0,1fr)}.profile-hero{gap:40px}.profile-intro h1{font-size:54px}.profile-biography,.profile-practice{gap:45px;grid-template-columns:minmax(0,.6fr) minmax(0,1fr)}}
@media(max-width:700px){.team-directory{padding-bottom:38px}.team-heading{margin-bottom:34px}.team-heading h2{font-size:39px}.team-heading>p:last-child{font-size:17px}.team-entry{grid-template-columns:1fr;gap:28px;padding:36px 0}.team-photo{max-width:420px;justify-self:center}.team-copy{padding-top:0}.team-copy h3{font-size:32px}.team-copy h4{font-size:23px;margin-top:26px}.team-bio{font-size:16px;margin-top:20px}.profile-hero{grid-template-columns:1fr;gap:32px;padding:25px 0 42px}.profile-intro .back-link{margin-bottom:27px}.profile-intro h1{font-size:clamp(42px,10vw,56px);margin-top:18px}.profile-speciality{font-size:16px;margin-top:18px}.profile-lead{font-size:18px;margin-top:22px}.profile-intro>.text-link{margin-top:22px}.profile-portrait{max-width:420px;justify-self:center}.profile-biography,.profile-practice{grid-template-columns:1fr;gap:30px;padding:40px 0}.profile-margin-note{display:none}.profile-prose h2{font-size:35px;margin-bottom:24px}.profile-prose>p{font-size:17px;line-height:1.8}.profile-prose>p+p{margin-top:20px}.profile-practice h2{font-size:37px;margin-top:18px}.profile-practice>div>p:not(.eyebrow){font-size:16px}.profile-practice-list h3{font-size:23px}.profile-team-nav{grid-template-columns:1fr;padding:36px 0 48px}.profile-team-nav>a:not(.text-link){font-size:20px;min-height:68px}.profile-team-nav>.text-link{margin-top:26px}}

/* The studio's own words: a reading-width biography followed by an attributed personal note. */
.profile-speciality,.team-speciality{text-wrap:pretty}
.profile-note{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);gap:clamp(40px,8vw,120px);padding:64px 0 72px;border-top:1px solid var(--line);scroll-margin-top:110px}
.profile-note h2{font-size:clamp(32px,3.3vw,44px);line-height:1.18;margin-top:22px;max-width:300px}
.profile-note-body{min-width:0;max-width:65ch}.team-quotation{margin:0;padding:0}.team-quotation blockquote{margin:0;padding:2px 0 2px 26px;border-left:2px solid var(--accent)}
.team-quotation blockquote p{font-size:19px;line-height:1.85;color:var(--ink)}.team-quotation blockquote p+p{margin-top:24px}
.team-quotation figcaption{font-size:13px;color:var(--muted);margin:20px 0 0 28px;line-height:1.6}.profile-closing{margin-top:30px;padding-top:25px;border-top:1px solid var(--line);font-size:17px;line-height:1.8;color:var(--muted)}
.team-note{margin-top:26px;padding-top:18px;border-top:1px solid var(--line)}.team-note summary{min-height:44px;cursor:pointer;font-size:15px;font-weight:600;color:var(--accent);padding:10px 0}.team-note summary::marker{color:var(--accent)}.team-note summary:focus-visible{outline:2px solid currentColor;outline-offset:4px}.team-note[open] summary{margin-bottom:20px}.team-note blockquote{padding-left:20px}.team-note blockquote p{font-size:17px;line-height:1.8}.team-note .profile-closing{font-size:16px;margin-top:24px;padding-top:20px}
@media(max-width:960px){.profile-note{gap:45px;grid-template-columns:minmax(0,.6fr) minmax(0,1fr)}}
@media(max-width:700px){.profile-note{grid-template-columns:1fr;gap:28px;padding:40px 0}.profile-note h2{font-size:33px;max-width:none;margin-top:18px}.team-quotation blockquote{padding-left:19px}.team-quotation blockquote p{font-size:17px;line-height:1.8}.team-quotation figcaption{margin-left:21px}.profile-closing{font-size:16px;margin-top:26px}.team-note blockquote p{font-size:16px}}
