:root{--paper:#f5f3ef;--ink:#38313f;--muted:#6d666e;--line:#d7d1d3;--purple:#4a3a59;--soft:#eae5eb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--purple);outline-offset:6px}button{border:0}img{max-width:100%;display:block;object-fit:cover}figure{margin:0}p{margin:0 0 22px}h1,h2,h3{font-weight:400;margin:0;line-height:1.06}h1{font-size:clamp(60px,7.5vw,120px);letter-spacing:-.065em}h2{font-size:clamp(38px,4.4vw,66px);letter-spacing:-.055em}h3{font-size:23px;letter-spacing:-.035em}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.06em}::selection{background:#d8cbdc}.section-width{width:min(1280px,calc(100% - 112px));margin-inline:auto}.eyebrow{font-size:10px;letter-spacing:.19em;line-height:1.7;font-weight:400}.skip{position:fixed;left:10px;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}.site-header{margin:0 56px;border-bottom:1px solid var(--line);min-height:116px;display:flex;justify-content:space-between;align-items:center;gap:30px}.brand img{width:82px;height:82px;object-fit:contain}.site-header nav{display:flex;gap:34px;align-items:center;font-size:13px}.site-header nav a{padding:8px 0}.site-header nav a[aria-current=page]{border-bottom:1px solid var(--ink)}.nav-profile{margin-left:18px}.nav-profile span{margin-left:16px}.menu-toggle{display:none;background:none}.hero{padding-block:74px 80px;display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.hero h1{margin:32px 0}.hero-copy .professional-title{font-size:16px;line-height:1.55;letter-spacing:-.015em}.hero-copy .intro{max-width:330px;color:var(--muted);font-size:15px}.text-link{display:inline-flex;justify-content:space-between;align-items:center;gap:38px;border-bottom:1px solid var(--ink);padding:8px 0;font-size:13px;line-height:1.5}.text-link span{font-size:23px;line-height:1}.location{font-size:9px;letter-spacing:.15em;margin:56px 0 0}.hero-image img{width:100%;height:620px;object-position:50% 40%}.hero-image figcaption{display:flex;justify-content:space-between;margin-top:16px;font-size:9px;letter-spacing:.14em}.selected{padding:65px 0 95px;border-top:1px solid var(--line)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:44px}.section-heading .eyebrow{margin-bottom:20px}.selected-grid,.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px 30px}.work-card{display:block;background:none;padding:0;text-align:left;min-width:0}.image-wrap{display:block;position:relative;overflow:hidden}.image-wrap img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;transition:transform .6s}.work-card:hover img{transform:scale(1.025)}.image-open{position:absolute;right:13px;bottom:13px;background:var(--paper);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:20px;opacity:0;transition:opacity .2s}.work-card:hover .image-open,.work-card:focus-visible .image-open{opacity:1}.card-line{display:flex;justify-content:space-between;gap:10px;margin-top:14px;font-size:14px;align-items:center}.card-category{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.manifesto{text-align:center;background:var(--soft);padding:95px 24px 100px}.manifesto h2{font-size:clamp(42px,5.3vw,82px);margin:25px 0}.manifesto>p:last-child{max-width:460px;margin:30px auto 0;color:var(--muted);font-size:15px}.home-about,.about-lead{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;padding:110px 0}.home-about figure img{height:570px;width:100%;object-position:center}.home-about h2,.about-lead h2{margin-bottom:30px}.home-about p:not(.eyebrow),.about-lead p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:440px}.home-about .text-link{margin-top:10px}.contact-strip{padding:65px 0 85px;border-top:1px solid var(--line);position:relative}.contact-strip h2{max-width:700px}.contact-strip>.text-link{position:absolute;right:0;bottom:100px;min-width:185px}footer{background:var(--purple);color:#f5f3ef;padding:58px 56px 24px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px;font-size:13px}footer p{font-size:12px;color:#d8cddb}.footer-name{font-size:28px;letter-spacing:-.04em;line-height:1.25}.footer-name span{display:block;font-size:9px;letter-spacing:.2em;margin-top:12px}.footer-bottom{grid-column:1/-1;border-top:1px solid #776784;padding-top:22px;margin-top:18px;display:flex;justify-content:space-between;font-size:10px;color:#dfd5e3}.page-intro{padding:70px 0 50px}.page-intro h1{margin-top:25px}.intro-bottom{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-top:34px}.intro-bottom p{color:var(--muted);font-size:15px;margin:0}.intro-bottom span{font-size:9px;letter-spacing:.16em}.filters{border-block:1px solid var(--line);padding:23px 0;display:flex;align-items:center;gap:10px;margin-bottom:40px}.filters button{background:none;padding:9px 18px;border-radius:30px;font-size:12px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper)}#work-count{margin-left:auto;font-size:11px;color:var(--muted)}.work-grid{row-gap:45px}[hidden]{display:none!important}.portfolio-note{margin-top:76px;color:var(--muted);font-size:12px;max-width:580px}.portfolio{padding-bottom:65px}.about-lead{padding-top:10px;align-items:start}.about-lead figure img{height:650px;width:100%}.about-lead>div{padding-top:45px}.expertise{padding:65px 0 90px;border-top:1px solid var(--line)}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px 50px}.expertise-grid article{border-top:1px solid var(--line);padding-top:22px}.expertise-grid h3{margin:17px 0}.expertise-grid p{color:var(--muted);font-size:14px}.education{padding:70px 0 90px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.15fr;gap:12%}.education>div>p:not(.eyebrow){color:var(--muted);font-size:14px;max-width:290px;margin-top:24px}.education-row{padding:23px 0;border-bottom:1px solid var(--line)}.education-row:first-child{padding-top:0}.education-row h3{font-size:20px;margin-bottom:12px}.education-row p{font-size:14px;color:var(--muted);margin:0}.experience{padding:70px 0 90px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.15fr;gap:12%}.experience h2{font-size:45px}.experience-content>p{max-width:460px;color:var(--muted);font-size:15px}.experience .role{margin:20px 0}.contact-page{padding:75px 0 100px;display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center}.contact-page h1{margin:30px 0}.contact-description{max-width:355px;color:var(--muted);font-size:15px}.email-link{font-size:clamp(22px,2.7vw,37px);letter-spacing:-.04em;display:inline-flex;gap:45px;border-bottom:1px solid var(--line);padding:6px 0 12px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:40px 0 22px;font-size:13px}.contact-details .eyebrow{display:block;margin-bottom:9px;font-size:9px}.contact-page figure img{height:670px;width:100%}.contact-page figcaption{font-size:11px;color:var(--muted);margin-top:14px}.profile{max-width:850px;padding:60px 0 90px}.profile h1{font-size:70px;margin:25px 0 18px}.profile h2{font-size:30px;margin-bottom:24px}.profile h3{font-size:20px}.profile-title{font-size:19px;line-height:1.4}.profile>p{font-size:14px}.profile section{border-top:1px solid var(--line);padding:28px 0 12px;margin-top:22px}.profile section p{font-size:14px}.profile-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.profile-top p{margin:0}.print-button{font-size:12px;background:var(--purple);color:white;padding:10px 15px}.modal-open{overflow:hidden}.lightbox{border:0;background:var(--paper);color:var(--ink);width:min(1100px,94vw);max-height:92vh;padding:50px 36px 30px}.lightbox::backdrop{background:rgba(30,23,34,.83)}.modal-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:45px;align-items:center}.modal-photo{width:100%;height:72vh;object-fit:contain}.modal-close{position:absolute;right:24px;top:12px;background:none;font-size:12px}.modal-title{font-size:42px}.modal-description{font-size:14px;color:var(--muted);margin-top:24px}.modal-role{font-size:11px;color:var(--muted)}.modal-controls{display:flex;align-items:center;gap:22px;margin-top:35px}.modal-controls button{background:none;font-size:25px;min-width:44px;min-height:44px}.modal-count{font-size:11px;letter-spacing:.15em}
@media(min-width:1500px){.site-header{max-width:1380px;margin-inline:auto}.hero-image img{height:690px}}
@media(max-width:1000px){.section-width{width:calc(100% - 64px)}.site-header{margin-inline:32px}.hero{gap:5%;padding-top:50px}.hero-image img{height:540px}.hero h1{font-size:78px}.location{margin-top:35px}.selected-grid,.work-grid{gap:28px 20px}.home-about,.about-lead{gap:7%}.contact-strip>.text-link{position:static;margin-top:30px}footer{padding-inline:32px}.contact-page{gap:5%}.contact-page figure img{height:620px}}
@media(max-width:650px){body{font-size:16px}.section-width{width:calc(100% - 40px)}.site-header{margin-inline:20px;min-height:94px;position:relative;z-index:5}.brand img{width:68px;height:68px}.menu-toggle{display:flex;align-items:center;gap:22px;font-size:13px;padding:12px 0 12px 20px;min-height:44px}.menu-toggle span{font-size:22px}.site-header nav{display:none;position:absolute;top:93px;left:-20px;right:-20px;background:var(--paper);border-bottom:1px solid var(--line);padding:22px 28px 32px;align-items:stretch;gap:12px}.site-header nav.is-open{display:flex;flex-direction:column}.site-header nav a{font-size:17px;min-height:44px}.nav-profile{margin-left:0}.hero{display:flex;flex-direction:column;align-items:stretch;padding:38px 0 46px;gap:32px}.hero .eyebrow{font-size:9px}.hero h1{font-size:clamp(48px,14vw,60px);margin:21px 0 24px}.hero-copy .professional-title{font-size:15px}.hero-copy .intro{max-width:320px;font-size:14px}.hero-copy .text-link{font-size:13px}.location{margin-top:28px;font-size:9px}.hero-image img{height:auto;aspect-ratio:4/5;object-position:center 33%}.hero-image figcaption{font-size:9px;letter-spacing:.09em}.selected{padding:38px 0 55px}.section-heading{display:block;margin-bottom:28px}.section-heading>.text-link{margin-top:20px}.selected-grid{grid-template-columns:1fr;gap:30px}.selected-grid .work-card:nth-child(2){padding-top:0}.selected-grid .image-wrap img{aspect-ratio:4/5}.card-line{font-size:14px}.card-category{font-size:10px}.manifesto{padding:55px 22px}.manifesto h2{font-size:42px}.manifesto>p:last-child{font-size:14px}.home-about,.about-lead{grid-template-columns:1fr;gap:32px;padding:55px 0}.home-about figure img,.about-lead figure img{height:auto;aspect-ratio:4/5}.home-about h2,.about-lead h2{font-size:40px}.home-about p:not(.eyebrow),.about-lead p:not(.eyebrow){font-size:15px}.contact-strip{padding:40px 0 55px}.contact-strip h2{font-size:42px}.contact-strip>.text-link{min-width:170px}footer{padding:40px 20px 22px;grid-template-columns:1fr 1fr;gap:26px}footer>a:not(.footer-name){grid-column:1/-1}.footer-name{font-size:25px}.footer-bottom{flex-direction:column;gap:10px}.page-intro{padding:38px 0 30px}.page-intro h1{font-size:clamp(48px,15vw,60px);margin-top:20px}.intro-bottom{display:block;margin-top:24px}.intro-bottom p{font-size:14px}.intro-bottom span{display:block;margin-top:20px;font-size:9px}.filters{gap:3px;padding:16px 0;flex-wrap:wrap;margin-bottom:26px}.filters button{padding:10px 15px;min-height:44px}#work-count{width:100%;margin:8px 0 0;font-size:11px}.work-grid{grid-template-columns:1fr 1fr;gap:27px 14px}.work-grid .work-card:nth-child(3n+2){transform:none}.work-grid .card-line{display:block;font-size:12px;line-height:1.45;margin-top:10px}.work-grid .card-category{display:block;font-size:9px;margin-top:4px;letter-spacing:.06em}.portfolio-note{margin-top:35px;font-size:12px}.portfolio{padding-bottom:35px}.about-lead{padding-top:0}.about-lead>div{padding-top:0}.expertise{padding:40px 0}.expertise-grid{grid-template-columns:1fr;gap:20px}.expertise-grid article{padding-top:20px}.expertise-grid h3{font-size:24px;margin:10px 0}.expertise-grid p{font-size:14px}.education{grid-template-columns:1fr;gap:25px;padding:45px 0}.education h2{font-size:42px}.education>div>p:not(.eyebrow){max-width:100%}.education-row h3{font-size:20px}.experience{grid-template-columns:1fr;gap:15px;padding:40px 0 55px}.experience h2{font-size:38px}.contact-page{grid-template-columns:1fr;padding:38px 0 55px;gap:40px}.contact-page .eyebrow{font-size:9px}.contact-page h1{font-size:clamp(65px,21vw,85px);margin:25px 0}.contact-description{font-size:15px}.email-link{font-size:30px;gap:22px}.contact-details{gap:18px;margin-top:30px}.contact-page figure img{height:auto;aspect-ratio:4/5}.profile{padding:35px 0 50px}.profile h1{font-size:clamp(44px,13.8vw,54px)}.profile-title{font-size:17px}.profile-top{align-items:start}.print-button{font-size:10px;padding:9px 12px;min-height:44px}.modal-layout{grid-template-columns:1fr;gap:20px}.lightbox{padding:48px 18px 20px;max-height:94vh}.modal-photo{height:48vh}.modal-title{font-size:30px}.modal-description{margin-top:15px}.modal-controls{margin-top:15px}.modal-copy .eyebrow{margin-bottom:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{@page{size:A4;margin:17mm}body{background:white;color:#222;font-size:11pt}.site-header,footer,.print-button,.skip{display:none!important}.section-width{width:100%;max-width:none}.profile{padding:0}.profile h1{font-size:35pt}.profile h2{font-size:18pt}.profile h3{font-size:12pt}.profile-title{font-size:12pt}.profile p,.profile section p,.education-row p{font-size:10pt}.profile section{margin-top:12px;padding:16px 0 2px;break-inside:avoid}.education-row{padding:10px 0;break-inside:avoid}.profile .eyebrow{font-size:8pt}.profile a{text-decoration:none}}

/* Full-width headings and aligned photographic rows. */
.section-heading{display:flex;flex-direction:column;align-items:stretch;gap:20px}
.section-heading>div{width:100%;min-width:0}
.section-heading>.text-link{align-self:flex-end}
.section-heading h2{max-width:none}
.selected-grid,.work-grid{align-items:start}
.work-card{align-self:start}
.card-line{min-height:2.8em;align-items:baseline}
.contact-strip h2{max-width:none}
.contact-strip>.text-link{position:static;display:flex;width:max-content;min-width:185px;margin:26px 0 0 auto}
@media(max-width:650px){.section-heading>.text-link{align-self:flex-start;margin-top:0}.contact-strip>.text-link{margin-left:0}.card-line{min-height:3em}}
