
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#f7f8fc;--ink:#17202d;--muted:#555e6a;--line:#d5dce5;--accent:#214ce8;--soft:#e7ecff;--paper:#fff;--head:Manrope,Arial,sans-serif;font-family:'DM Sans',Arial,sans-serif;font-size:16px;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{margin:0;background:var(--bg);color:var(--ink)}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:.3em}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:5px}p{line-height:1.7;margin:0 0 1.2rem}h1,h2,h3{font-family:var(--head);font-weight:500;line-height:1.08;letter-spacing:-.045em;margin:0}h1{font-size:clamp(3.5rem,7.5vw,7.2rem)}h2{font-size:clamp(2rem,4vw,3.7rem)}h3{font-size:1.55rem}img{max-width:100%;display:block}section{scroll-margin-top:6rem}.wrap{max-width:1320px;margin:auto;padding:0 4.5rem}.top{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:2rem}.wordmark{font-family:var(--head);font-size:2rem;font-weight:800;letter-spacing:-.07em;white-space:nowrap}.wordmark .small{display:inline-block;font:500 .75rem/1.2 var(--head);letter-spacing:.04em;margin-left:.8rem;vertical-align:middle}.nav{display:flex;align-items:center;gap:2.2rem;font-size:.94rem}.nav .contactlink{padding:.7rem 1.2rem;border:1px solid var(--line);border-radius:99px}.eyebrow{text-transform:uppercase;font-size:.8rem;font-weight:600;letter-spacing:.16em;line-height:1.5}.muted{color:var(--muted)}.pill{display:inline-block;padding:.45rem .75rem;border:1px solid var(--line);border-radius:99px;font-size:.85rem;line-height:1.3}.btn{display:inline-flex;gap:2rem;align-items:center;padding:1rem 1.4rem;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:4px;font-weight:500;text-decoration:none}.btn:hover{background:var(--accent);border-color:var(--accent);text-decoration:none}.btn.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.btn.secondary:hover{background:var(--soft)}.actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.hero{padding:5.5rem 0 5rem}.hero p{font-size:1.14rem;max-width:40rem}.hero .eyebrow{margin-bottom:2rem}.hero h1{margin-bottom:2rem}.split{display:grid;grid-template-columns:1.35fr 1fr;gap:5rem;align-items:center}.section{padding:5rem 0;border-top:1px solid var(--line)}.sectiontop{display:grid;grid-template-columns:1fr 1.1fr;gap:5rem;margin-bottom:3rem}.sectiontop h2{max-width:14ch}.sectiontop p{max-width:37rem;margin-top:.3rem}.section .eyebrow{color:var(--muted);margin-bottom:1.4rem}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.card{border:1px solid var(--line);padding:2rem;background:var(--paper);min-width:0}.card .num{font-size:.8rem;font-family:monospace;color:var(--muted);margin-bottom:3rem;display:block}.card h3{margin-bottom:1.2rem}.card p{color:var(--muted);font-size:1rem}.tagline{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:2rem}.rows{border-top:1px solid var(--line)}.row{display:grid;grid-template-columns:.3fr 1fr 1.3fr;gap:2rem;padding:2.2rem 0;border-bottom:1px solid var(--line)}.row h3{font-size:1.7rem}.row p{color:var(--muted);margin:0}.bigcontact{padding:4rem;background:var(--soft);margin:1rem 0 5rem;border-radius:4px}.bigcontact .eyebrow{margin-bottom:1.5rem}.bigcontact h2{margin-bottom:1.4rem;max-width:16ch}.email{display:inline-block;font-size:clamp(1.1rem,2.4vw,1.7rem);border-bottom:1px solid currentColor;overflow-wrap:anywhere}.foot{padding:2rem 0 3rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:2rem;font-size:.85rem}.network{display:flex;gap:1.4rem;flex-wrap:wrap}.skip{position:fixed;left:1rem;top:-100px;z-index:100;background:var(--paper);padding:1rem}.skip:focus{top:1rem}.mobilemenu{display:none}.disclosure{border-bottom:1px solid var(--line);padding:1.5rem 0}.disclosure summary{cursor:pointer;font-size:1.15rem;font-weight:500}.disclosure p{color:var(--muted);max-width:50rem;margin:1.2rem 0 .2rem}.lede{font-size:1.3rem;line-height:1.65}.bar{display:flex;gap:2rem;padding:1.5rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;font-size:.85rem}.list{list-style:none;padding:0;margin:1.5rem 0}.list li{padding:.8rem 0;border-bottom:1px solid var(--line);line-height:1.5}.academic{--accent:#3c35ca;--soft:#e9e8fc}.academic .monogram{font-family:var(--head);font-size:clamp(8rem,13.5vw,13rem);font-weight:800;letter-spacing:-.12em;line-height:.92;margin-left:-.06em}.academic .hero{padding-top:4rem}.academic .hero h1{font-size:clamp(2.6rem,4vw,4.2rem);max-width:12ch}.identity{border-top:1px solid var(--line);padding-top:1.5rem;margin-top:2rem;display:flex;justify-content:space-between;gap:2rem}.academic .introaside{padding-top:1rem}.note{font-size:.85rem;color:var(--muted);line-height:1.6}.research{--bg:#071c23;--ink:#edf5f3;--muted:#aebfbe;--line:#345058;--accent:#d8f27b;--soft:#15343b;--paper:#0c262e}.research .btn{background:var(--accent);border-color:var(--accent);color:#122224}.research .btn:hover{background:#e9ffb2}.research .btn.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.research .card{background:transparent}.research .hero h1{font-weight:500}.research .researchindex{border:1px solid var(--line);padding:2rem}.researchindex .indexrow{padding:1.5rem 0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:1.5rem}.indexrow:last-child{border:0}.indexrow span{color:var(--accent);font-size:.85rem}.indexrow strong{font:500 1.65rem var(--head)}.research .accent{color:var(--accent)}.physio{--accent:#2459f5;--soft:#e8efff;--ink:#0e2549}.physio .wordmark em{color:var(--accent);font-style:normal}.physio .hero{padding-top:3rem}.physio .heroimg{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:0 7rem 0 0}.physio .heromedia{position:relative}.physio .photocaption{position:absolute;left:1.5rem;right:1.5rem;bottom:1.5rem;color:white;padding:1.2rem;background:#0d2349eb;display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:.85rem}.physio .btn{background:var(--accent);border-color:var(--accent)}.physio .btn:hover{background:#1743c7}.physio .btn.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.physio .card{border:0;border-top:2px solid var(--accent);background:var(--soft)}.physio .introquote{font:500 clamp(2rem,4vw,3.5rem)/1.2 var(--head);letter-spacing:-.04em;max-width:19ch}.email-copy{margin-top:1rem;font-size:.85rem;background:none;border:0;color:var(--muted);padding:.3rem 0;text-decoration:underline}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:950px){.wrap{padding:0 2rem}.split{gap:2.5rem}.sectiontop{gap:2rem}.grid3{gap:1rem}.card{padding:1.5rem}.nav{gap:1.2rem}.row{grid-template-columns:.15fr 1fr 1.2fr}.bigcontact{padding:3rem}.physio .heroimg{aspect-ratio:3/4}.hero h1{font-size:4rem}}
@media(max-width:700px){.wrap{padding:0 1.25rem}.top{height:auto;min-height:85px;flex-wrap:wrap;gap:0;padding:1rem 0}.wordmark{font-size:1.75rem}.mobilemenu{display:block;background:none;border:1px solid var(--line);color:var(--ink);padding:.5rem .8rem;border-radius:3px}.nav{display:none;width:100%;padding:1.2rem 0 .2rem;flex-wrap:wrap;gap:1.4rem}.nav.open{display:flex}.split,.sectiontop{grid-template-columns:1fr;gap:2.5rem}.hero{padding:3rem 0}.hero h1{font-size:clamp(3rem,12vw,4.5rem)}.hero p{font-size:1.05rem}.academic .monogram{font-size:32vw}.academic .hero h1{font-size:3rem;max-width:15ch}.academic .introaside{padding:0}.identity{margin-top:1.4rem}.grid3{grid-template-columns:1fr}.card .num{margin-bottom:1.5rem}.section{padding:3.5rem 0}.sectiontop{margin-bottom:2rem;gap:1.5rem}.sectiontop h2{max-width:17ch}.row{grid-template-columns:2rem 1fr;gap:1rem}.row p{grid-column:2}.bigcontact{padding:2rem 1.5rem;margin-bottom:3rem}.foot{align-items:flex-start;flex-direction:column;gap:1.5rem}.bar{flex-wrap:wrap;gap:1rem}.physio .heroimg{aspect-ratio:4/3;border-radius:0 4rem 0 0}.physio .photocaption{left:1rem;right:1rem;bottom:1rem;padding:1rem;font-size:.8rem}.research .hero h1{font-size:3.25rem}.researchindex{padding:1.5rem!important}.btn{padding:.9rem 1.1rem}.actions{gap:.75rem} }
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Portraits and source-backed research profile. */
figure{margin:0}.portraitframe img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 42%;border-radius:3px 5rem 3px 3px}.portraitframe figcaption{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);margin-top:1rem;padding-top:.8rem;font-size:.85rem}.portraitframe figcaption span{color:var(--muted)}.academic .profilehero{grid-template-columns:1.25fr 1fr;align-items:center}.academic .hero .namehero{font-size:clamp(6rem,13vw,11rem);font-weight:800;letter-spacing:-.085em;max-width:none;line-height:1;margin:0 0 1.5rem}.academic .hero .heroline{font-family:var(--head);font-size:clamp(1.5rem,2.5vw,2.3rem);line-height:1.3;letter-spacing:-.04em}.projectgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 2.5rem}.project{padding:2.5rem 0;border-top:1px solid var(--line)}.project:last-child{grid-column:1/-1;max-width:100%}.project:last-child>p:last-child{max-width:54rem}.projectmeta{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:2rem}.section .projectmeta .eyebrow{margin:0;font-size:.7rem}.projectmeta .pill{font-size:.75rem}.project .projectname{font:600 .95rem var(--head);color:var(--accent);margin-bottom:.7rem}.project h3{font-size:1.8rem;line-height:1.2;margin-bottom:1rem;max-width:23ch}.project>p:last-child{color:var(--muted);margin:0}.detailgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding:1.5rem 0 .5rem}.detailgrid h3{font-size:1.2rem;letter-spacing:-.025em;line-height:1.35}.background{display:grid;grid-template-columns:.72fr 1.3fr;gap:4rem;align-items:center;max-width:900px}.graduation img{max-width:290px;width:100%;border-radius:3px}.graduation figcaption{font-size:.8rem;color:var(--muted);margin-top:.8rem}.clinician{display:grid;grid-template-columns:.65fr 1.3fr;gap:4rem;align-items:center;margin-bottom:3rem}.clinician h2{margin-bottom:1.5rem}.clinician .portraitframe{max-width:330px}.research .hero h1{font-size:clamp(3rem,5.5vw,5.4rem)}
@media(max-width:950px){.projectgrid{gap:0 1.7rem}.projectmeta{align-items:flex-start;flex-direction:column}.detailgrid{grid-template-columns:1fr}.background,.clinician{gap:2.5rem}}
@media(max-width:700px){.academic .profilehero,.projectgrid,.background,.clinician{grid-template-columns:1fr}.academic .hero .namehero{font-size:28vw}.profilehero .portraitframe{max-width:420px}.portraitframe img{aspect-ratio:5/4;object-position:center 36%}.projectmeta{flex-direction:row}.project h3{font-size:1.6rem}.project{padding:2rem 0}.detailgrid{gap:1rem}.clinician .portraitframe{max-width:280px}.background{gap:2rem}.graduation img{max-width:230px}.research .hero h1{font-size:clamp(2.8rem,10vw,4.2rem)}}

/* Selected March 2026 portraits; framing is layout-only. */
.photo-crop{aspect-ratio:4/5;position:relative;overflow:hidden;border-radius:8px;width:100%}.photo-crop img{position:absolute;max-width:none;height:auto;aspect-ratio:auto;object-fit:initial;border-radius:0;image-orientation:from-image}.event-crop img{width:187.5%;left:-25%;top:-70%}.portrait-crop img{width:180.3%;left:-47.2%;top:-10.1%}.graduation{max-width:260px}.clinician .portraitframe{width:100%;max-width:330px}@media(max-width:700px){.profilehero .portraitframe{width:100%;max-width:420px}.photo-crop{aspect-ratio:4/5}.graduation{max-width:240px}.clinician .portraitframe{max-width:300px}}

/* Personal profile, online CV and lab programmes. */
.textlink{text-decoration:underline;text-underline-offset:.2em}.life-notes h3{font-size:clamp(1.8rem,3vw,2.6rem);margin-bottom:1.5rem}.life-notes p{max-width:36rem}.nowsection .sectiontop{margin-bottom:0}.cv-invite{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2rem 0;border-top:1px solid var(--line)}.cv-invite h3{margin-bottom:.7rem}.cv-invite p:last-child{margin:0}.cv-invite .btn{flex-shrink:0}.programme-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 3rem}.programme{border-top:1px solid var(--line);padding:2.5rem 0}.programme h3{font-size:1.8rem;line-height:1.2;margin-bottom:1.3rem;max-width:25ch}.programme p{color:var(--muted)}.programme .programme-focus{font-size:.875rem;color:var(--accent);margin-top:1.5rem;margin-bottom:0}.researchindex .indexrow strong{font-size:clamp(1.15rem,1.8vw,1.5rem)}.founder .sectiontop{margin-bottom:0}.cv-heading{padding:4.5rem 0 3.5rem;max-width:850px}.cv-heading h1{font-size:clamp(4rem,9vw,7rem);font-weight:800;letter-spacing:-.045em;margin:1rem 0}.cv-heading .heroline{font:500 clamp(1.4rem,2.5vw,2rem)/1.4 var(--head);margin-bottom:1.5rem}.cv-section{padding:3rem 0;border-top:1px solid var(--line)}.cv-section h2{font-size:2rem;margin-bottom:2rem}.cv-entry{display:grid;grid-template-columns:180px minmax(0,1fr);gap:2rem;padding:1.3rem 0}.cv-entry h3{font-size:1.3rem;line-height:1.3;margin-bottom:.7rem;letter-spacing:-.025em}.cv-entry p{max-width:48rem;margin-bottom:.6rem}.cv-date{font-size:.9rem;color:var(--muted)}.cv-list{padding-left:1.3rem;max-width:58rem;line-height:1.7}.cv-list li{padding:.35rem 0}.cv-page .cv-nav{display:flex;flex-wrap:wrap}.cv-page .cv-nav .btn{padding:.65rem 1rem}.academic .hero .namehero{letter-spacing:-.045em}
@media(max-width:1050px){.nav{gap:1rem}.top{gap:1rem}}
@media(max-width:900px){.top{height:auto;min-height:85px;flex-wrap:wrap;padding:1rem 0}.mobilemenu{display:block;background:none;border:1px solid var(--line);color:var(--ink);padding:.5rem .8rem;border-radius:3px}.nav{display:none;width:100%;padding:1rem 0 .2rem;flex-wrap:wrap}.nav.open{display:flex}.cv-page .cv-nav{width:auto}.programme-grid{gap:0 2rem}}
@media(max-width:700px){.cv-invite{align-items:flex-start;flex-direction:column}.programme-grid{grid-template-columns:1fr}.cv-entry{grid-template-columns:1fr;gap:.2rem;padding:1.1rem 0}.cv-heading{padding:3rem 0}.cv-section{padding:2rem 0}.cv-page .top{gap:1rem}.programme{padding:2rem 0}}
@media print{.cv-page{background:white;color:#111;font-size:11pt}.cv-page .wrap{max-width:none;padding:0}.cv-page .top,.cv-page .foot,.cv-page .skip{display:none}.cv-page .cv-heading{padding:0 0 1rem;max-width:none}.cv-page .cv-heading h1{font-size:30pt}.cv-page .cv-heading .heroline{font-size:16pt}.cv-page .lede{font-size:12pt;line-height:1.5}.cv-page p{line-height:1.5}.cv-page .cv-section{padding:1rem 0}.cv-page .cv-section h2{font-size:17pt;margin-bottom:.5rem;break-after:avoid}.cv-page .cv-entry{grid-template-columns:100pt 1fr;gap:1rem;break-inside:avoid;padding:.6rem 0}.cv-page .cv-entry h3{font-size:12pt}.cv-page .cv-date{font-size:10pt}.cv-page .cv-list li{break-inside:avoid}.cv-page a{color:inherit}.cv-page a[href^="index.html"]{display:none}@page{margin:16mm}}

/* Final image allocation and compact lab founder. */
.clinical-hero-portrait{width:100%;max-width:480px;justify-self:end}.clinical-hero-portrait figcaption{font-size:.875rem}.clinical-about{margin-bottom:2.5rem}.life-background{display:block;max-width:none}.life-background .life-notes{max-width:42rem}.lab-founder{padding:2.5rem 0 3rem;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:3rem}.lab-founder p{font-size:.95rem;color:var(--muted);margin:0;max-width:52rem}.lab-founder .eyebrow{font-size:.8rem;color:var(--ink)}
@media(max-width:700px){.clinical-hero-portrait{justify-self:start;max-width:420px}.lab-founder{grid-template-columns:1fr;gap:1rem;padding:2rem 0}.clinical-hero-portrait figcaption{flex-wrap:wrap}}

.life-background{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center}.lifestyle-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:8px}.lifestyle-photo figcaption{font-size:.85rem;color:var(--muted);margin-top:.8rem}.life-background .life-notes{max-width:none}@media(max-width:700px){.life-background{grid-template-columns:1fr;gap:2rem}}
