@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#17344d;--paper:#fbfdff;--muted:#52677b;--line:#d8e6f1;--accent:#aedbff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #2681c6;outline-offset:6px}header{display:flex;align-items:center;justify-content:space-between;padding:28px 5%;border-bottom:1px solid var(--line);gap:24px}.brand{font-family:Manrope,Arial,sans-serif;font-size:23px;font-weight:700;letter-spacing:-1px}.brand span{display:block;font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:1.8px;font-weight:500;margin-top:3px}nav{display:flex;gap:30px;font-size:13px;align-items:center}nav a:hover,.text-link:hover{color:#236eac}.nav-contact{border-bottom:1px solid;padding-bottom:5px}.hero{display:grid;grid-template-columns:1.23fr 1fr;padding:64px 5% 58px;gap:5vw;max-width:1600px;margin:auto}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;margin:0 0 27px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#3c97d7;margin-right:9px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif}h1{font-size:clamp(45px,5.2vw,80px);line-height:1.11;letter-spacing:-3.8px;font-weight:500;margin-bottom:30px}em{font-family:Georgia,serif;font-weight:400}h1 em{color:#377fb6}p{color:var(--muted)}.intro{font-size:18px;max-width:470px;line-height:1.65}.actions{display:flex;gap:28px;align-items:center;margin-top:32px}.button{display:inline-flex;background:var(--ink);color:white;gap:36px;padding:15px 22px;font-size:13px}.button:hover{background:#286c9e}.text-link{font-size:13px;border-bottom:1px solid;padding-bottom:7px}.hero-note{font-size:10px;letter-spacing:.5px;margin:38px 0 0}.hero-art{position:relative;overflow:hidden;min-height:500px;background:#e5f2ff;color:#17344d;padding:30px;isolation:isolate}.art-kicker,.art-bottom{position:absolute;font-size:9px;letter-spacing:1.8px;z-index:3}.art-bottom{bottom:25px}.orb{position:absolute;width:440px;height:440px;border-radius:50%;background:linear-gradient(135deg,#a9cfea,#daefff 55%,#81b1d5);box-shadow:20px 30px 70px #29588225}.orb-one{right:-190px;top:60px}.orb-two{left:-220px;bottom:-230px;background:#a2c8e6}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#174f7a20 1px,transparent 1px),linear-gradient(90deg,#174f7a20 1px,transparent 1px);background-size:55px 55px;mask-image:linear-gradient(transparent,#000)}.art-word{position:absolute;z-index:2;font-family:Georgia,serif;font-size:clamp(34px,4vw,62px);letter-spacing:-2px}.word-one{top:130px;left:35px}.word-two{top:225px;left:70px}.word-three{top:320px;left:105px;font-style:italic}.credentials{display:grid;grid-template-columns:1fr 1.3fr 1fr 1.3fr;margin:0 5%;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:25px}.credentials strong{display:block;font-size:18px;font-weight:500}.credentials span{display:block;font-size:11px;color:var(--muted);margin-top:5px}.section{padding:95px 5%;scroll-margin-top:0}h2{font-size:clamp(32px,3.3vw,49px);line-height:1.2;font-weight:500;letter-spacing:-1.9px;margin-bottom:26px}h3{font-size:23px;letter-spacing:-.6px;line-height:1.3;font-weight:500}.section-heading>p:last-child{max-width:450px}.expertise{display:grid;grid-template-columns:1fr 1.05fr;gap:8vw}.expertise-list article{display:flex;gap:28px;padding:24px 0;border-bottom:1px solid var(--line)}.expertise-list article:first-child{padding-top:0}.number{font-size:11px;padding-top:5px;color:#507fa1}.expertise-list p{font-size:14px}.expertise-list .tags{font-size:10px;color:#527e9d;letter-spacing:.3px;margin-bottom:0}.work{background:#edf6fd}.work .section-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:10vw}.work .eyebrow{grid-column:1/-1}.work .section-heading>p:last-child{align-self:end}.projects{display:grid;grid-template-columns:1fr 1fr;margin-top:25px;gap:20px}.project{background:var(--paper);padding:32px 36px;display:flex;flex-direction:column}.project-top{display:flex;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:1.5px;margin-bottom:32px}.project h3{font-size:32px;letter-spacing:-1px}.project p{font-size:14px;max-width:480px}.project.featured{background:var(--ink);color:#fff}.featured p{color:#d9ecfa}.project-foot{border-top:1px solid #92b3cc55;font-size:10px;padding-top:18px;margin-top:auto;letter-spacing:.5px}details{margin:0 0 28px}summary{cursor:pointer;font-size:12px;list-style:none;display:flex;justify-content:space-between;border-top:1px solid #92b3cc55;padding-top:13px}details p{padding-top:12px;margin-bottom:0}details[open] summary span{transform:rotate(45deg)}.about{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.about p{font-size:15px;max-width:510px}.about .large-copy{font-size:22px;color:var(--ink);line-height:1.5}.timeline{border-left:1px solid var(--line);padding-left:34px}.timeline article{padding:0 0 30px;position:relative}.timeline article:before{content:'';position:absolute;left:-39px;top:7px;width:9px;height:9px;border-radius:50%;background:#5696c6}.timeline span{font-size:9px;letter-spacing:1.2px}.timeline h3{margin:8px 0}.timeline p{font-size:13px;margin-bottom:8px}.timeline small{font-size:12px;color:var(--muted);display:block;max-width:360px}.publication{border-block:1px solid var(--line);display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;align-items:center}.publication-label{font-size:10px;letter-spacing:1px;margin-bottom:20px}.publication p{max-width:460px}.publication-art{background:#dfeffd;min-height:330px;padding:34px;position:relative;overflow:hidden}.publication-art>span{font-family:Manrope,sans-serif;font-size:33px;line-height:1.2;position:relative;z-index:1}.publication-art em{font-size:41px}.publication-art small{position:absolute;bottom:25px;left:34px;font-size:8px;letter-spacing:1.5px}.rings{position:absolute;width:230px;height:230px;border:1px solid #8bb8dc;border-radius:50%;right:-60px;bottom:20px;box-shadow:0 0 0 25px #dfeffd,0 0 0 26px #8bb8dc,0 0 0 51px #dfeffd,0 0 0 52px #8bb8dc}.profile-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:45px;margin-top:45px}.profile h3{font-size:20px}.profile p{font-size:14px}.profile ul{padding:0;list-style:none}.profile li{margin-bottom:20px}.profile li strong{display:block;font-size:13px;font-weight:500}.profile li span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.subheading{margin-top:28px}.download-panel{background:#edf6fd;padding:28px}.download-panel .eyebrow{font-size:8px;display:block}.download{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #bdd7ec;padding:13px 0;font-size:12px}.download:hover{color:#246ca4}.download span{font-size:10px}.contact{background:var(--ink);color:var(--paper)}.contact h2{font-size:clamp(38px,5vw,70px);max-width:900px}.contact h2 em{color:var(--accent)}.contact p:not(.eyebrow){color:#d3e7f7;max-width:500px;font-size:15px}.contact .eyebrow{color:var(--accent)}.contact-link{font-size:clamp(16px,2.5vw,28px);display:inline-block;border-bottom:1px solid #88b1cf;padding:10px 0;overflow-wrap:anywhere}.contact-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:70px;font-size:10px;letter-spacing:1px}footer{display:flex;justify-content:space-between;padding:24px 5%;font-size:10px;color:var(--muted);gap:20px}.skip{position:absolute;left:10px;top:-80px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}@media(min-width:1600px){.section,header,.credentials{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}}@media(max-width:850px){header{align-items:flex-start}nav{gap:16px}nav a:nth-child(1),nav a:nth-child(3){display:none}.hero{gap:25px}.hero-art{min-height:460px}.art-word{font-size:42px}.word-three{left:45px}h1{letter-spacing:-2px}.credentials{grid-template-columns:1fr 1fr}.expertise,.about{gap:35px}.profile-grid{grid-template-columns:1fr 1fr}.download-panel{grid-column:1/-1}.publication{gap:30px}.project{padding:25px}.project-top{flex-direction:column}}@media(max-width:600px){header{padding:22px 6%}.brand{font-size:20px}.brand span{font-size:7px}nav a:not(.nav-contact){display:none}.hero{grid-template-columns:1fr;padding:45px 6%}.hero-art{min-height:360px;margin-top:10px}.word-one{top:75px}.word-two{top:150px}.word-three{top:225px;left:105px}h1{font-size:49px}.intro{font-size:17px}.hero-note{margin-top:25px}.credentials{margin:0 6%;gap:25px 16px}.credentials strong{font-size:16px}.credentials span{font-size:10px}.section{padding:65px 6%}.expertise,.about,.publication,.profile-grid{grid-template-columns:1fr}.expertise{gap:25px}.work .section-heading{display:block}.projects{grid-template-columns:1fr}.project h3{font-size:30px}.project-top{flex-direction:row}.timeline{margin-top:20px}.publication-art{min-height:280px}.profile-grid{gap:30px}.contact-bottom{flex-direction:column;margin-top:45px}footer{flex-direction:column;gap:8px}.actions{gap:20px}.button{gap:22px}.hero-note{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Photo-led profile and light blue visual system. */
body{background:#fbfdff}header{background:#f0f7fd;padding-top:21px;padding-bottom:21px}.brand span{font-size:8px;letter-spacing:1px}nav{gap:22px}.hero{align-items:center;grid-template-columns:1.35fr .85fr;gap:65px;padding-top:58px;padding-bottom:58px}.hero-specialism{color:#2879b5;font-size:14px;line-height:1.55;font-weight:600;letter-spacing:.2px;margin-bottom:22px}h1{font-size:clamp(37px,4.15vw,63px);font-weight:600;letter-spacing:-2.4px;line-height:1.15}h1 em{font-family:inherit;font-style:normal;font-weight:500}.intro{max-width:600px;font-size:17px}.portrait{margin:0;padding:12px;background:#e6f1fb;border:1px solid #d5e6f4;border-radius:12px;box-shadow:0 16px 38px #32618c12;max-width:405px;justify-self:end;width:100%;transform:rotate(1deg)}.portrait img{width:100%;height:auto;max-height:480px;object-fit:cover;object-position:center 28%;display:block;border-radius:5px}.portrait figcaption{display:flex;flex-direction:column;padding:15px 8px 5px;gap:2px}.portrait strong{font-size:16px;font-weight:600}.portrait figcaption span{font-size:11px;color:#52677b}.actions{flex-wrap:wrap;gap:15px}.button,.secondary-button{border-radius:5px;min-height:49px;padding:13px 19px}.button{background:#287dbb}.secondary-button{border:1px solid #aacbe4;font-size:13px;display:inline-flex;align-items:center}.secondary-button:hover{background:#e5f2fc}.hero-note{font-size:11px}.credentials{background:#f0f7fd;padding:24px;border:1px solid #d8e6f1;border-radius:9px}.project{border:1px solid #d7e6f2;border-radius:10px}.project.featured{background:#dfedfa;color:#17344d}.featured p{color:#465f75}.download-panel,.publication-art{border-radius:10px}.contact{background:#e8f3fd;color:#17344d}.contact p:not(.eyebrow){color:#52677b}.contact .eyebrow{color:#2879b5}.contact h2 em{color:#377fb6}.contact-link{border-color:#9dc4e2}.section{padding-top:78px;padding-bottom:78px}.publication-art>span{font-size:30px}.contact h2{font-size:clamp(36px,4.3vw,60px)}
@media(max-width:1000px){.hero{gap:30px}.brand span{max-width:240px}nav{gap:15px;font-size:12px}.hero h1{font-size:43px}.portrait img{max-height:440px}.hero-specialism{font-size:12px}}
@media(max-width:750px){.hero{grid-template-columns:1fr;gap:30px}.portrait{justify-self:start;max-width:320px;transform:none}.hero h1{font-size:clamp(35px,6.4vw,48px)}nav a:not(.nav-contact){display:none}.hero-copy{max-width:620px}.credentials{padding:20px}.section{padding-top:55px;padding-bottom:55px}.hero-specialism br{display:none}.hero .eyebrow{margin-bottom:17px}.portrait img{max-height:350px}.hero-note{margin-top:22px}}

/* A quieter portrait proportion beside the introduction. */
.portrait{max-width:300px;justify-self:center}.portrait img{max-height:350px}.hero{grid-template-columns:1.45fr .75fr;gap:45px}@media(max-width:750px){.hero{grid-template-columns:1fr}.portrait{max-width:235px;justify-self:start}.portrait img{max-height:285px}}

/* Language selector remains visible on all screen sizes. */
header{flex-wrap:wrap;column-gap:20px;row-gap:14px}header>nav[aria-label]:not(.language-switch){margin-left:auto}.language-switch{display:flex;gap:2px;padding:3px;background:#e1edf7;border:1px solid #c6dded;border-radius:7px}.language-switch a{display:inline-flex!important;align-items:center;justify-content:center;min-width:35px;min-height:35px;padding:5px;font-size:11px;border-radius:4px}.language-switch a[aria-current=page]{background:#287dbb;color:white}.language-switch a:hover{background:#cce2f3;color:#17344d}html[lang=fr] h1,html[lang=de] h1{font-size:clamp(34px,3.7vw,55px)}.publication-art small{right:20px;line-height:1.5}@media(max-width:1000px){header>nav:not(.language-switch) a:not(.nav-contact){display:none}}@media(max-width:600px){header{gap:12px}.brand{flex:1;min-width:190px}header>nav:not(.language-switch){display:none}.language-switch{margin-left:0}.language-switch a{min-width:30px}html[lang=fr] h1,html[lang=de] h1{font-size:35px;letter-spacing:-1.5px}.project-top{flex-wrap:wrap}.publication-art small{font-size:8px}}

.about .personal-motto{font-size:16px;font-style:italic;color:#377fb6;border-left:2px solid #a9cfea;padding:5px 0 5px 18px;margin:22px 0 28px;line-height:1.65}

.about .personal-motto em{font-family:Georgia,serif;font-style:italic;font-weight:400}
