@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{--ink:#151515;--muted:#6d6d6d;--line:#d6d6d6;--paper:#fff;--accent:#c6ff45}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:'DM Sans',Arial,sans-serif;font-size:16px}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #6d8f18;outline-offset:5px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 4%;background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:16px}.brand img{width:104px;mix-blend-mode:multiply}.brand span{font-size:13px;font-weight:800;line-height:1.12;letter-spacing:.01em}nav{display:flex;gap:36px;align-items:center}nav a{font-size:14px}nav a:last-child{border:1px solid #aaa;padding:11px 24px;border-radius:30px}main{overflow:hidden}.intro{padding:65px 4% 46px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:600;display:flex;gap:15px;align-items:center}.eyebrow:before{content:'';width:24px;height:1px;background:currentColor}.intro h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(55px,7.3vw,116px);line-height:1.02;letter-spacing:-.065em;font-weight:500;margin:32px 0 36px}.intro-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.intro-bottom p{max-width:455px;line-height:1.6;margin:0;color:#555}.micro{font-size:12px;letter-spacing:.04em;text-transform:uppercase}.hero{margin:0 4%;position:relative;height:clamp(360px,49vw,720px);background:#222;overflow:hidden}.hero img{width:100%;height:100%;object-fit:cover;transition:transform 1s}.hero:hover img{transform:scale(1.025)}.hero-shade{position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.65))}.hero-caption{position:absolute;bottom:34px;left:34px;right:34px;display:flex;align-items:flex-end;justify-content:space-between;color:white}.hero-caption h2{font-size:clamp(30px,4vw,58px);font-weight:500;letter-spacing:-.04em;margin:10px 0}.hero button{background:white;color:var(--ink);border:0;border-radius:40px;padding:15px 26px;transition:background .2s ease,color .2s ease}.hero button:hover{background:#e9e9e9;color:var(--ink)}.image-credit{font-size:12px;color:var(--muted);margin:10px 4% 0;text-align:right}.section{padding:100px 4%}.section-head{display:flex;align-items:baseline;justify-content:space-between;border-top:1px solid var(--ink);padding-top:25px;margin-bottom:40px}.section-head h2{font-weight:500;font-size:clamp(30px,3.6vw,54px);letter-spacing:-.045em;margin:0}.section-head small{color:var(--muted);font-size:14px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 28px}.project{background:none;border:0;text-align:left;padding:0;display:block;width:100%}.project .photo{overflow:hidden;aspect-ratio:1.48;background:#eee}.project img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.project:hover img{transform:scale(1.035)}.project-meta{display:flex;justify-content:space-between;gap:15px;margin-top:20px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#666}.project h3{font-size:clamp(24px,2.5vw,36px);font-weight:500;letter-spacing:-.035em;margin:9px 0}.project .role{font-size:14px;color:#666}.project:last-child:nth-child(odd){grid-column:1/-1;max-width:calc(50% - 14px)}.archive{margin-top:80px}.archive h3{font-weight:500;font-size:25px;letter-spacing:-.03em}.archive-row{width:100%;background:none;border:0;border-top:1px solid var(--line);padding:23px 0;display:grid;grid-template-columns:75px 1.7fr 1fr 1fr 35px;text-align:left;gap:16px;align-items:center}.archive-row:hover{background:#f5f5f5}.archive-row .name{font-size:20px;letter-spacing:-.02em}.archive-row .place,.archive-row .role{font-size:14px;color:#666}.plus{font-size:25px}.about{background:#141414;color:white;padding:90px 4% 100px;display:grid;grid-template-columns:1fr 2fr;gap:70px}.about h2{font-size:clamp(34px,4.4vw,65px);font-weight:400;letter-spacing:-.045em;line-height:1.1;margin:0 0 35px}.about p{color:#aaa;line-height:1.7;max-width:690px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:60px}.services article{border-top:1px solid #555;padding-top:18px}.services h3{font-size:19px;font-weight:500;margin-top:32px}.services p{font-size:14px;line-height:1.7}.experience{margin-top:55px;border-top:1px solid #555}.experience summary{cursor:pointer;padding:24px 0;font-size:18px}.experience-row{padding:18px 0;border-top:1px solid #333;display:flex;justify-content:space-between;gap:20px;font-size:14px}.experience-row small{color:#999}.contact{padding:90px 4%;display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.contact h2{font-size:clamp(40px,6.5vw,96px);font-weight:500;letter-spacing:-.06em;line-height:1.05;margin:24px 0 0}.contact-links{display:flex;gap:14px;flex-wrap:wrap}.pill{border:1px solid #777;border-radius:30px;padding:14px 22px;font-size:14px}.pill:hover{background:var(--ink);color:white}footer{margin:0 4%;padding:26px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px;color:#666}.footer-logo{width:140px;margin-bottom:40px}dialog{width:min(1120px,94vw);max-height:92vh;padding:0;border:0;background:white;color:var(--ink)}dialog::backdrop{background:rgba(0,0,0,.75);backdrop-filter:blur(5px)}.dialog-bar{position:sticky;top:0;background:white;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:18px 30px;border-bottom:1px solid var(--line)}.close{border:1px solid #aaa;border-radius:30px;padding:8px 20px;background:white;font-size:14px}.detail-image{width:100%;max-height:520px;object-fit:cover;display:block}.detail-body{padding:40px}.detail-body h2{font-size:clamp(32px,4.5vw,64px);font-weight:500;letter-spacing:-.045em;line-height:1.05;margin:15px 0 35px}.detail-content{display:grid;grid-template-columns:1fr 1fr;gap:60px}.detail-content p{line-height:1.7;margin-top:0}.credits{margin:0}.credits div{padding:14px 0;border-top:1px solid var(--line)}dt{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#777;margin-bottom:6px}dd{margin:0;font-size:15px;line-height:1.5}.source{display:inline-block;font-size:14px;border-bottom:1px solid;padding-bottom:4px;margin-top:20px}.detail-caption{font-size:12px;color:#777;margin-top:20px;line-height:1.5}.no-scroll{overflow:hidden}@media(max-width:700px){header{height:78px;padding:0 5%}.brand img{width:75px}.brand span{font-size:10px}nav{gap:17px}nav a{font-size:13px}nav a:last-child{display:none}.intro{padding:45px 5% 30px}.intro h1{font-size:clamp(48px,10.6vw,76px)}.intro-bottom{display:block}.intro-bottom .micro{display:none}.intro-bottom p{font-size:15px}.hero{margin:0 5%;height:490px}.hero-caption{left:22px;right:22px;bottom:24px;display:block}.hero-caption button{margin-top:12px}.hero-caption h2{font-size:33px}.section{padding:65px 5%}.section-head{gap:20px}.section-head small{max-width:100px;text-align:right}.grid{grid-template-columns:1fr;gap:38px}.project:last-child:nth-child(odd){max-width:none}.archive{margin-top:55px}.archive-row{grid-template-columns:40px 1fr 22px;gap:8px}.archive-row .name{font-size:17px}.archive-row .place,.archive-row .role{display:none}.about{padding:55px 5%;grid-template-columns:1fr;gap:35px}.services{grid-template-columns:1fr;gap:18px;margin-top:35px}.services h3{margin-top:18px}.contact{padding:65px 5%;display:block}.contact-links{margin-top:40px}.contact h2{font-size:55px}footer{margin:0 5%;line-height:1.7;gap:30px}.detail-body{padding:25px}.detail-content{grid-template-columns:1fr;gap:25px}.dialog-bar{padding:15px 20px}.detail-image{max-height:300px}.experience-row{flex-direction:column;gap:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Slim scrollbars for the page and project details. */
html,dialog{scrollbar-width:thin;scrollbar-color:#8b8b8b #f2f2f2}dialog{scrollbar-gutter:stable}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:#f2f2f2}::-webkit-scrollbar-thumb{background:#8b8b8b;border:2px solid #f2f2f2;border-radius:20px}::-webkit-scrollbar-thumb:hover{background:#555}::-webkit-scrollbar-corner{background:transparent}
