@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap');

:root{--ink:#101b20;--ink-soft:#17272f;--paper:#f8f9f6;--wash:#edf1ec;--lime:#d8ec9d;--text:#17272c;--muted:#58665f;--line:#d5ddd4;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--display:'Manrope',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,h4,p{margin:0}img{display:block;max-width:100%}::selection{color:var(--ink);background:var(--lime)}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #72962e;outline-offset:6px}a{transition:color .2s,background .2s,transform .2s}.wrap{width:min(1240px,calc(100% - 112px));margin-inline:auto}.section{padding-block:108px}.header-shell{color:var(--paper);background:var(--ink)}.dark-opening{color:var(--paper);background:var(--ink)}.header{height:110px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff1f;gap:32px}.identity{display:flex;align-items:center;gap:16px;font-family:var(--display);font-weight:600;font-size:1.0625rem;white-space:nowrap}.monogram{position:relative;font-family:var(--serif);font-size:1.875rem;line-height:1;border:1px solid #ffffff56;border-radius:50%;height:47px;width:47px;display:grid;place-content:center;letter-spacing:-3px;padding-right:4px}.monogram>span{font:12px var(--sans);position:absolute;top:6px;right:4px;letter-spacing:0;color:var(--lime)}nav{display:flex;align-items:center;gap:34px;font-size:0.875rem}nav>a{color:#d3dcd9}nav>a:hover{color:var(--lime)}nav>.nav-contact{border-bottom:1px solid #d8ec9d77;padding-block:10px;color:var(--lime);margin-left:18px}.nav-contact span{margin-left:18px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:36px;min-height:700px;padding-top:58px;padding-bottom:68px}.eyebrow,.section-marker,.light-label{font-size:0.75rem;font-weight:500;line-height:1.5;letter-spacing:.12em}.light-label{color:#bdc9c7}.hero h1{font-family:var(--display);font-weight:400;font-size:clamp(80px,8.3vw,120px);letter-spacing:-.065em;line-height:.98;margin-top:28px;margin-bottom:30px}.hero h1 em{font-family:var(--serif);font-weight:400;letter-spacing:-.055em;color:var(--lime)}.hero-intro{font-size:1.5625rem;line-height:1.4;letter-spacing:-.035em}.hero-summary{color:#a9b9bb;max-width:400px;font-size:1rem;line-height:1.65;margin-top:18px}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:15px 22px;font-size:0.875rem;font-weight:600;border-radius:4px;line-height:1.5}.button-lime{background:var(--lime);color:var(--ink)}.button-lime:hover{background:#e5f6b7;transform:translateY(-2px)}.button span{font-size:1.25rem;line-height:1}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:0.875rem;font-weight:500}.text-link:hover{color:var(--lime)}.text-link svg{width:18px;height:18px}.hero-visual{align-self:center;padding-top:30px}.art-frame{overflow:hidden;border-radius:180px 180px 8px 8px;aspect-ratio:1/1.12;background:#12232a}.art-frame img{width:100%;height:100%;object-fit:contain;mix-blend-mode:lighten}.art-caption{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #ffffff24;margin-top:22px;padding-top:14px;color:#acbabd;font-size:0.75rem;letter-spacing:.12em}.credentials-strip{display:grid;grid-template-columns:repeat(4,1fr);padding-top:26px;padding-bottom:32px;border-top:1px solid #ffffff24;gap:20px}.credentials-strip>div{display:flex;flex-direction:column;gap:6px}.credentials-strip>div+div{border-left:1px solid #ffffff24;padding-left:35px}.strip-label{font-size:0.75rem;letter-spacing:.13em;color:#8fa2a7}.credentials-strip>div>span:last-child{font-family:var(--display);font-size:1.0625rem;color:#dfe8e4}.credentials-strip strong{font-weight:700}.section-marker{display:flex;align-items:center;gap:30px;margin-bottom:44px;color:#627365}.marker-line{height:1px;flex:1;background:var(--line)}h2{font-family:var(--display);font-size:clamp(36px,4vw,56px);line-height:1.15;letter-spacing:-.055em;font-weight:400}h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.055em}.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:84px}.about-text{color:var(--muted);font-size:1rem;line-height:1.8}.about-text>p+p{margin-top:20px}.about-text .lead{font-size:1.375rem;line-height:1.5;letter-spacing:-.025em;color:var(--text)}.focus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:64px}.focus{border-top:1px solid var(--line);padding-top:20px}.focus-number{font-size:0.75rem;color:#768274}.focus h3{font-family:var(--display);font-size:1.3125rem;font-weight:500;letter-spacing:-.035em;margin-top:24px;margin-bottom:12px}.focus p{color:var(--muted);font-size:0.9375rem;line-height:1.8}.work-section{background:var(--wash)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:46px}.section-heading>p{color:var(--muted);font-size:1rem;padding-bottom:4px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:24px}.project{border-radius:7px;padding:32px;min-width:0}.project-dark{background:var(--ink-soft);color:#eef4e8}.project-light{background:#dbe4d9;color:var(--ink)}.project-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.project-top .eyebrow{font-size:0.75rem;letter-spacing:.09em}.project-index{font:italic 28px var(--serif);opacity:.45}.process-flow{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:175px;margin-block:22px;border-top:1px solid #ffffff22;border-bottom:1px solid #ffffff22}.process-flow>span:not(.flow-arrow){font-size:0.75rem;line-height:1.8;opacity:.85}.process-flow strong{display:block;font-size:1.25rem;font-weight:400;letter-spacing:-.02em}.project-light .process-flow{border-color:#17272c26}.flow-arrow{font-size:1.75rem;font-weight:400;color:#97b584}.project-dark .flow-arrow{color:var(--lime)}.project-type{font-size:0.75rem;letter-spacing:.08em;opacity:.65}.project h3{font-family:var(--display);font-size:2rem;font-weight:400;line-height:1.22;letter-spacing:-.05em;margin-block:16px}.project-body>p{font-size:0.9375rem;line-height:1.8;opacity:.78;max-width:440px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.tags span{border:1px solid #ffffff2a;padding:3px 10px;border-radius:3px;font-size:0.75rem}.project-light .tags span{border-color:#17272c33}.project-footer{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-block:24px;color:var(--muted);font-size:0.875rem}.dark-link{color:var(--ink);border-bottom:1px solid #50684455;padding-bottom:4px}.dark-link:hover{color:#4e6d2b}.innovation{display:grid;grid-template-columns:.65fr 1.65fr .9fr;gap:34px;padding-top:64px;align-items:start}.innovation-label{display:flex;flex-direction:column;gap:20px}.innovation-label .eyebrow{font-size:0.75rem}.award-mark{font-size:4.375rem;line-height:1.1;font-weight:400;color:#718855}.innovation h3{font-family:var(--display);font-size:1.8125rem;line-height:1.3;font-weight:400;letter-spacing:-.045em}.innovation p{color:var(--muted);font-size:0.9375rem;line-height:1.8;margin-top:16px;max-width:450px}.patent-meta{display:block;font-size:0.75rem;letter-spacing:.1em;margin-top:16px;color:#6f7e6f}.award{border-left:1px solid #bac9b6;padding:10px 0 10px 28px;display:flex;flex-direction:column;margin-top:32px}.award strong{font-family:var(--serif);font-size:2.5rem;font-weight:400;letter-spacing:-.04em;line-height:1.2;margin-bottom:14px}.award span{font-size:0.8125rem;color:#54674e}.experience-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:90px}.experience-intro p{max-width:280px;color:var(--muted);margin-top:26px;margin-bottom:28px}.timeline{border-top:1px solid var(--line)}.role{padding-block:30px 32px;border-bottom:1px solid var(--line)}.role-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}.role-date{font-size:0.75rem;letter-spacing:.06em;color:#6c7b6f}.current-label{background:#e1edcd;border-radius:2px;padding:3px 7px;font-size:0.75rem;letter-spacing:.07em;color:#48612c}.role h3{font-family:var(--display);font-size:1.5625rem;line-height:1.3;letter-spacing:-.04em;font-weight:500;margin-top:16px}.role-title{font-size:1rem;margin-top:5px}.role-context{font-size:0.8125rem;color:#69736e;margin-top:3px;line-height:1.6}.role>p:last-child{font-size:0.9375rem;line-height:1.75;color:var(--muted);margin-top:18px}.foundation-section{background:#f0f2ec}.foundation-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;margin-top:55px}.column-title{font-size:0.9375rem;font-weight:500;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:28px}.education article+article{margin-top:30px}.small-label{font-size:0.75rem;letter-spacing:.08em;color:#6a7966}.education h4{font-size:1.1875rem;font-weight:500;line-height:1.45;margin-top:6px;letter-spacing:-.025em}.education p{font-size:0.9375rem;color:var(--muted);margin-top:3px}.education article>span:last-child:not(:first-child){font-size:0.8125rem;color:#6b7768}.certifications ul{list-style:none;padding:0;margin:0}.certifications li{padding-bottom:24px}.certifications strong{display:block;font-size:1rem;font-weight:500;line-height:1.5}.certifications li>span{display:block;color:var(--muted);font-size:0.875rem;line-height:1.7;margin-top:6px;max-width:420px}.publication{display:flex;justify-content:space-between;align-items:center;gap:50px;margin-top:58px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:32px}.publication .eyebrow{color:#697a61;font-size:0.75rem}.publication h3{font-family:var(--display);font-size:1.4375rem;line-height:1.4;font-weight:500;letter-spacing:-.035em;margin-top:12px;max-width:800px}.publication p{color:var(--muted);font-size:0.8125rem;line-height:1.8;max-width:830px;margin-top:13px}.round-link{flex-shrink:0;border:1px solid #a5b39a;border-radius:50%;width:54px;height:54px;display:grid;place-items:center;font-size:1.5625rem}.round-link:hover{background:var(--lime);transform:translate(2px,-2px)}.community{display:grid;grid-template-columns:1fr 2fr;gap:32px;padding-top:28px}.community .eyebrow{font-size:0.75rem;padding-top:5px;color:#697a61}.community p{font-size:0.8125rem;color:var(--muted);line-height:2}.community p span{font-size:0.75rem;color:#677b60;margin-left:8px}.contact-section{color:var(--paper);background:var(--ink);padding-top:75px}.contact-section .section-marker{color:#a5b5b3;margin-bottom:50px}.contact-section .marker-line{background:#ffffff24}.contact-grid{display:grid;grid-template-columns:1.6fr .7fr;gap:80px;padding-bottom:76px}.contact-grid h2{font-size:clamp(38px,4.6vw,64px)}.contact-grid h2 em{color:var(--lime)}.email-link{display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid #d8ec9d66;padding-block:14px;margin-top:25px;color:var(--lime);font-size:1.375rem;letter-spacing:-.025em;max-width:100%}.email-link:hover{color:#effbce}.contact-aside{padding-top:7px;max-width:230px}.contact-aside p{color:#a8b8b9;font-size:1rem;margin-bottom:24px}.contact-aside>a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff25;padding-block:12px;font-size:0.875rem}.contact-aside>a:hover{color:var(--lime)}footer{display:flex;justify-content:space-between;gap:24px;padding-block:25px;border-top:1px solid #ffffff24;font-size:0.75rem;color:#a3b3b5}footer a:hover{color:var(--lime)}.skip-link{position:fixed;top:10px;left:10px;padding:10px 20px;background:var(--lime);color:var(--ink);transform:translateY(-150%);z-index:100}.skip-link:focus{transform:translateY(0)}

@media(min-width:1600px){.hero{min-height:740px}.art-frame{aspect-ratio:1/1.04}}@media(max-width:1100px){.wrap{width:calc(100% - 72px)}.hero{gap:28px}.hero h1{font-size:6rem}.hero-intro{font-size:1.4375rem}.hero-summary{font-size:0.9375rem}.hero-actions{gap:20px}.art-frame{border-radius:140px 140px 6px 6px}.credentials-strip>div+div{padding-left:20px}.credentials-strip>div>span:last-child{font-size:0.9375rem}nav{gap:24px}nav>.nav-contact{margin-left:0}.about-grid{gap:50px}.experience-grid{gap:55px}.foundation-grid{gap:64px}.project{padding:26px}.project h3{font-size:1.8125rem}.process-flow strong{font-size:1.0625rem}.innovation{grid-template-columns:.7fr 1.7fr 1fr;gap:25px}.innovation-label .eyebrow{max-width:100px}.innovation h3{font-size:1.625rem}.award{padding-left:20px}.award strong{font-size:2.1875rem}}
@media(max-width:800px){.wrap{width:calc(100% - 48px)}.header{height:88px}.identity{font-size:0.9375rem;gap:10px}.monogram{height:40px;width:40px;font-size:1.6875rem}nav{gap:17px;font-size:0.8125rem}.nav-contact span{margin-left:5px}.hero{padding-top:46px;min-height:auto;gap:20px}.hero h1{font-size:5rem}.hero-intro{font-size:1.3125rem}.hero-summary{font-size:0.9375rem}.light-label{font-size:0.75rem;letter-spacing:.08em}.hero-actions{gap:19px;align-items:flex-start;flex-direction:column}.art-frame{aspect-ratio:1/1.45;border-radius:140px 140px 6px 6px}.art-frame img{object-position:50% 50%}.art-caption{font-size:0.75rem;letter-spacing:.05em;flex-direction:column;gap:4px}.credentials-strip{gap:12px}.credentials-strip>div+div{padding-left:12px}.credentials-strip>div>span:last-child{font-size:0.8125rem}.strip-label{font-size:0.75rem}.section{padding-block:76px}.section-marker{margin-bottom:35px}.about-grid{gap:30px;grid-template-columns:.9fr 1fr}.about-text .lead{font-size:1.25rem}.focus-grid{gap:24px;margin-top:44px}.focus h3{font-size:1.125rem}.focus p{font-size:0.875rem}.section-heading>p{font-size:0.875rem}.project{padding:22px}.project-top .eyebrow{font-size:0.75rem;max-width:180px}.process-flow{min-height:150px;gap:6px}.process-flow>span:not(.flow-arrow){font-size:0.75rem}.process-flow strong{font-size:0.9375rem}.project h3{font-size:1.625rem}.project-body>p{font-size:0.875rem}.innovation{grid-template-columns:1.4fr .8fr}.innovation-label{grid-column:1/-1;flex-direction:row;align-items:center}.innovation-label .eyebrow{max-width:none}.award-mark{font-size:1.75rem}.experience-grid{gap:35px;grid-template-columns:.85fr 1.15fr}.role-top{gap:8px}.role-date{font-size:0.75rem}.foundation-grid{gap:36px}.community{grid-template-columns:1fr;gap:12px}.contact-grid{gap:50px}.email-link{font-size:1.25rem;gap:20px}}
@media(max-width:620px){html{scroll-padding-top:16px}.wrap{width:calc(100% - 40px)}.header{position:relative;height:82px}.menu-toggle{display:flex;align-items:center;gap:15px;background:none;border:1px solid #ffffff3b;color:#e6ede6;border-radius:3px;padding:6px 12px;font-size:0.875rem}.menu-toggle span{font-size:1.375rem;font-weight:400;line-height:1.2}nav{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:14px 20px;background:#1c2d32;border:1px solid #ffffff25;border-radius:6px;z-index:5;box-shadow:0 15px 40px #0005}nav[data-open="true"]{display:flex}nav>a{padding:13px 0;font-size:0.9375rem}nav>.nav-contact{margin-top:5px;display:flex;justify-content:space-between}.hero{grid-template-columns:1fr;padding-block:42px 35px;gap:36px}.hero h1{font-size:clamp(84px,20vw,118px);margin-top:24px;margin-bottom:25px}.light-label{font-size:0.75rem;letter-spacing:.1em}.hero-intro{font-size:1.5rem}.hero-summary{font-size:1rem;max-width:390px}.hero-actions{flex-direction:row;align-items:center;gap:22px;margin-top:28px}.hero-visual{padding-top:0}.art-frame{aspect-ratio:1.2/1;border-radius:140px 140px 5px 5px;max-height:420px}.art-caption{flex-direction:row;font-size:0.75rem;letter-spacing:.07em;margin-top:15px;padding-top:12px}.credentials-strip{grid-template-columns:repeat(2,1fr);gap:24px 12px;padding-block:24px 30px}.credentials-strip>div+div{padding-left:18px}.credentials-strip>div:nth-child(3){padding-left:0;border-left:0}.strip-label{font-size:0.75rem}.credentials-strip>div>span:last-child{font-size:0.9375rem}.section{padding-block:65px}.section-marker{font-size:0.75rem;gap:20px;margin-bottom:32px}h2{font-size:2.5rem}.about-grid{grid-template-columns:1fr;gap:28px}.about-text .lead{font-size:1.3125rem}.about-text{font-size:1rem}.focus-grid{grid-template-columns:1fr;gap:26px;margin-top:40px}.focus{display:grid;grid-template-columns:35px 1fr;gap:8px 10px;padding-top:22px}.focus-number{grid-row:1/3;padding-top:4px}.focus h3{font-size:1.3125rem;margin:0}.focus p{font-size:0.9375rem}.section-heading{flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:30px}.section-heading>p{font-size:1rem}.section-heading>p br{display:none}.projects{grid-template-columns:1fr;gap:20px}.project{padding:25px}.project-top .eyebrow{font-size:0.75rem;max-width:none}.process-flow{min-height:150px;margin-block:16px}.process-flow>span:not(.flow-arrow){font-size:0.75rem}.process-flow strong{font-size:1.1875rem}.project h3{font-size:2rem}.project-body>p{font-size:0.9375rem}.project-footer{font-size:0.75rem;gap:16px}.project-footer .text-link{font-size:0.8125rem;white-space:nowrap}.innovation{grid-template-columns:1fr;padding-top:42px;gap:22px}.innovation-label{grid-column:auto}.innovation h3{font-size:1.8125rem}.award{margin-top:2px;padding-left:20px}.award strong{font-size:2.1875rem;margin-bottom:8px}.experience-grid{grid-template-columns:1fr;gap:30px}.experience-intro p{max-width:100%;margin-top:20px;margin-bottom:22px}.role{padding-block:28px}.role-date{font-size:0.75rem}.role h3{font-size:1.5625rem}.foundation-grid{grid-template-columns:1fr;gap:42px;margin-top:38px}.foundation-section h2{font-size:2.375rem}.column-title{margin-bottom:22px}.education h4{font-size:1.25rem}.publication{gap:20px;align-items:flex-start;margin-top:34px;padding-block:28px}.publication h3{font-size:1.3125rem}.round-link{width:42px;height:42px;font-size:1.375rem;margin-top:5px}.publication p{font-size:0.8125rem}.community p{font-size:0.875rem;line-height:1.85}.community p span{white-space:nowrap}.contact-section{padding-top:55px}.contact-section .section-marker{margin-bottom:32px}.contact-grid{grid-template-columns:1fr;gap:35px;padding-bottom:48px}.contact-grid h2{font-size:clamp(34px,9vw,49px)}.email-link{font-size:1.25rem;gap:18px;margin-top:15px}.contact-aside{display:grid;grid-template-columns:1fr 1fr;max-width:none;gap:10px 24px}.contact-aside p{grid-column:1/-1;margin:0 0 10px;font-size:0.9375rem}.contact-aside p br{display:none}.contact-aside p br:after{content:' '}.contact-aside p{max-width:280px}footer{flex-wrap:wrap;gap:12px;justify-content:space-between;font-size:0.75rem;padding-block:22px}footer>span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a,button{transition:none}}
@media print{body{background:white;color:black}.header,.hero-visual,.hero-actions,.contact-section,.skip-link{display:none}.dark-opening{background:white;color:black}.hero{display:block;padding:20px 0;min-height:0}.hero h1{font-size:3.75rem}.hero h1 em,.hero-summary,.hero-intro{color:black}.credentials-strip{display:none}.wrap{width:100%}.section{padding-block:30px}.section-marker{margin-bottom:20px}.projects,.about-grid,.foundation-grid,.experience-grid{gap:24px}.project{border:1px solid #aaa;background:white;color:black}.project-body>p{opacity:1}.work-section,.foundation-section{background:white}.project,.role,.publication{break-inside:avoid}h2{font-size:2rem}.project h3{font-size:1.5rem}.process-flow{display:none}}

/* Keep reading text comfortable at every screen size. */
.hero-summary,.focus p,.project-body>p,.innovation p,.role>p:last-child{font-size:1rem}
@media(min-width:621px) and (max-width:800px){.art-frame img{object-fit:contain}}
