*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:#f7f6f2;color:#252822;font:15px/1.6 Arial,Helvetica,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button{color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #45533e;outline-offset:5px}.wrap{max-width:1600px;margin:auto;padding-left:4vw;padding-right:4vw}.mast{display:flex;align-items:center;justify-content:space-between;padding:25px 4vw;background:#f7f6f2;gap:30px;border-bottom:1px solid #d7d8cf}.brand{font-size:18px;letter-spacing:-.04em;line-height:1.2;font-weight:600}.brand span{display:block;font-size:10px;letter-spacing:.22em;margin-top:5px;font-weight:400}.mast nav{display:flex;align-items:center;gap:30px;font-size:12px}.mast sup{color:#7c8175}.hero{position:relative;padding:0 4vw}.hero-image{margin-left:29%;height:min(680px,72vh);min-height:500px;position:relative}.hero-image img{height:100%;width:100%;object-fit:cover}.hero-image button{position:absolute;inset:0;border:0;background:none;width:100%}.hero-copy{position:absolute;left:4vw;top:52px;width:39%;pointer-events:none}.hero-copy a{pointer-events:auto}.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:500;margin:0 0 30px}.hero h1{font-size:clamp(70px,8vw,125px);letter-spacing:-.07em;font-weight:400;line-height:.96;margin:0 0 30px;background:#f7f6f2;width:fit-content;padding:8px 15px 10px 0}.hero em,h2 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.065em}.hero-statement{background:#f7f6f2;width:fit-content;padding:5px 15px 5px 0;line-height:1.65;font-size:13px}.textlink{font-size:12px;display:inline-flex;gap:35px;justify-content:space-between;border-bottom:1px solid #3a3b35;padding:10px 0}.hero-caption{margin-left:29%;display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid #c7cbbf}.hero-caption>div:first-child{display:flex;align-items:center;gap:25px;font-size:11px}.hero-caption strong{font-weight:500}.hero-caption span{color:#757a6e}.arrows{display:flex;gap:10px}.arrows button{background:transparent;border:1px solid #b9beaf;width:36px;height:36px;border-radius:50%;font-size:18px}.intro{padding-top:95px;padding-bottom:85px;display:grid;grid-template-columns:1fr 2fr 1.3fr;gap:40px;align-items:start}.intro h2,.practice h2,.profile h2{font-size:clamp(35px,4vw,58px);font-weight:400;letter-spacing:-.06em;line-height:1.06;margin:0}.intro>p:last-child{font-size:14px;color:#676c60;line-height:1.8;margin:0;padding-top:5px}.section-title{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid #9fa694;padding:24px 0}.section-title h2{font-size:32px;font-weight:400;letter-spacing:-.04em;margin:0}.section-title span{font-size:9px;letter-spacing:.1em;color:#707768}.filter-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:5px 0 17px}.filters{display:flex;flex-wrap:wrap;gap:18px}.filters button{border:0;border-bottom:1px solid transparent;background:none;padding:8px 0;font-size:11px;color:#747969}.filters button.active{border-color:#242822;color:#242822}.search span{position:absolute;overflow:hidden;width:1px;height:1px}.search input{background:none;border:0;border-bottom:1px solid #a9af9f;padding:8px 0;width:210px;font-size:11px;border-radius:0}.results{font-size:10px;color:#7a806f;margin:0 0 20px}.projects{display:grid;grid-template-columns:1fr 1fr;column-gap:28px;row-gap:55px}.project-card{padding:0;border:0;text-align:left;background:none;min-width:0}.project-card .image{overflow:hidden;aspect-ratio:1.5;background:#eceee6}.project-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-card:hover img{transform:scale(1.025)}.card-line{display:flex;gap:15px;justify-content:space-between;align-items:baseline;margin-top:15px}.project-card h3{font-weight:400;font-size:17px;letter-spacing:-.025em;margin:0;line-height:1.3}.card-line span{font-size:10px;color:#7a806f;white-space:nowrap}.project-card p{margin:5px 0 0;font-size:11px;color:#777c6f}.practice{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-top:130px;padding-bottom:100px}.practice-copy{padding-top:36px}.practice-copy p{margin:0 0 20px;line-height:1.9;max-width:570px}.cv{border-top:1px solid #aab09f;padding-top:65px;padding-bottom:90px;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.profile{display:flex;align-items:start;gap:30px}.profile img{width:140px;max-width:32%;height:auto}.profile h2{font-size:44px}.profile p{font-size:12px}.profile .eyebrow{font-size:9px}.cv h3{font-weight:400;font-size:15px;letter-spacing:-.015em;margin:0 0 20px}.job{border-top:1px solid #dbded3;padding:13px 0;display:grid;grid-template-columns:1fr auto;gap:10px;font-size:12px}.job strong{font-weight:500}.job small{display:block;font-size:10px;color:#777e6e}.job>span{font-size:10px;color:#777e6e;white-space:nowrap}.credentials{margin-top:30px}.credentials p{font-size:11px;line-height:1.8}.references{padding-bottom:90px}.reference-intro{font-size:12px;line-height:1.8;max-width:650px}.reference-links{margin:30px 0}.reference-links a{display:flex;justify-content:space-between;border-bottom:1px solid #cbd0c1;padding:18px 0;font-size:16px}.reference-links span{font-size:11px;color:#747b69}.contact{background:#29312a;color:#e9ede2;padding-top:70px}.contact h2{font-size:clamp(60px,7vw,100px);font-weight:400;letter-spacing:-.06em;line-height:1; margin:0 0 35px}.contact-email{font-size:clamp(18px,2.4vw,35px);letter-spacing:-.03em}.contact-bottom{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:30px;margin-top:65px;padding-bottom:50px;font-size:11px}.contact-bottom p{margin:0}.copyright{border-top:1px solid #64705e;padding:22px 0;font-size:9px;display:flex;justify-content:space-between;color:#a7b39e}dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#f7f6f2;color:#252822;overflow:auto}dialog::backdrop{background:#f7f6f2}.close{position:fixed;right:4vw;top:22px;background:#f7f6f2;border:1px solid #afb6a4;padding:10px 19px;z-index:10;border-radius:0;font-size:12px}.detail-head{padding:95px 4vw 40px;max-width:1600px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:7vw}.detail-head h2{font-size:clamp(35px,4vw,60px);line-height:1.05;font-weight:400;letter-spacing:-.05em;margin:0 0 25px}.detail-head p{font-size:13px;line-height:1.85}.detail-meta{font-size:11px;color:#69715f;line-height:1.9}.detail-gallery{max-width:1600px;margin:auto;padding:0 4vw;display:grid;gap:35px}.detail-gallery figure{margin:0}.detail-gallery img{display:block;width:100%;height:auto;max-height:1000px;object-fit:contain;background:#fff}.detail-gallery figcaption{font-size:10px;color:#79816e;margin-top:8px}.detail-footer{max-width:1600px;margin:auto;padding:35px 4vw 60px;font-size:11px}.detail-footer p{max-width:700px}.detail-next{display:block;width:100%;text-align:left;border:0;border-top:1px solid #aab09e;background:none;font-size:25px;margin-top:40px;padding-top:25px}.empty{padding:70px 0;grid-column:1/-1;font-size:18px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(max-width:900px){.mast nav{gap:15px}.hero-copy{width:42%}.hero-caption>div:first-child{flex-wrap:wrap;gap:7px 14px}.intro{grid-template-columns:1fr 2fr}.intro>p:last-child{grid-column:2}.filter-row{align-items:start;flex-direction:column}.practice,.cv{gap:35px}.profile{flex-direction:column}.profile img{max-width:none;width:110px}}@media(max-width:600px){.mast{align-items:start;padding:22px 5vw;gap:18px}.brand{font-size:15px}.brand span{font-size:8px}.mast nav{gap:10px;flex-wrap:wrap;max-width:170px;justify-content:end;font-size:10px}.mast sup{display:none}.hero{padding:0 5vw}.hero-image{margin-left:0;height:52vh;min-height:320px;margin-top:0}.hero-copy{position:relative;left:auto;top:auto;width:auto;padding:28px 0}.hero h1{font-size:65px;line-height:1;margin:0 0 12px}.hero h1 br{display:none}.hero h1 br:after{content:' '}.hero .eyebrow{margin-bottom:15px}.hero-statement{margin:12px 0}.hero-caption{margin-left:0}.hero-caption>div:first-child{gap:5px 12px;flex:1}.hero-caption strong{width:75%}.hero-caption span:last-child{width:100%;padding-left:53px}.intro{padding-top:60px;padding-bottom:55px;grid-template-columns:1fr;gap:20px}.intro .eyebrow{margin:0}.intro>p:last-child{grid-column:auto}.intro h2{font-size:43px}.section-title span{max-width:130px;text-align:right;font-size:8px}.filters{gap:14px}.filters button{font-size:10px}.projects{grid-template-columns:1fr;gap:30px}.project-card h3{font-size:16px}.practice,.cv{grid-template-columns:1fr;padding-top:65px;padding-bottom:60px;gap:30px}.practice-copy{padding-top:0}.profile{flex-direction:row}.profile h2{font-size:35px}.reference-links a{gap:20px;font-size:14px}.reference-links span{font-size:10px;max-width:180px}.contact{padding-top:50px}.contact-bottom{grid-template-columns:1fr 1fr;gap:30px;margin-top:40px}.copyright{gap:25px;font-size:8px}.detail-head{grid-template-columns:1fr;gap:12px;padding-top:90px}.detail-head h2{font-size:36px}.detail-gallery{padding:0;gap:25px}.detail-gallery figcaption{padding:0 5vw}}

/* Project-led layout inspired by the selected reference. */
html{scroll-padding-top:65px}body{background:#fff;color:#111;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:300}
.mast{padding:20px 3.1vw 14px;background:#fff;border:0;display:block}
.brand{display:flex;align-items:baseline;justify-content:space-between;width:100%;gap:20px;font-size:clamp(25px,4.2vw,72px);font-weight:300;line-height:1.05;letter-spacing:-.055em;white-space:nowrap}
.brand:hover{text-decoration:none}.brand span{display:inline;font-size:inherit;letter-spacing:inherit;font-weight:300;margin:0}
.hero{padding:0}.hero-copy{display:none}.hero-image{margin:0;height:calc(100svh - 147px);min-height:380px}.hero-image img{object-fit:cover;object-position:center}.hero-image button{cursor:pointer}
.hero-caption{margin:0;padding:17px 3.1vw;border:0;position:relative;min-height:58px}.hero-caption>div:first-child{width:100%;display:flex;justify-content:space-between;gap:30px;font-size:13px;font-weight:300}
#hero-number{display:none}#hero-title{text-transform:uppercase;font-weight:300;max-width:58%}#hero-place{color:#333;text-align:right}
.arrows{position:absolute;left:0;right:0;bottom:calc(50% + 29px);transform:translateY(-50%);justify-content:space-between;pointer-events:none;padding:0 16px}
.arrows button{pointer-events:auto;border:0;border-radius:0;background:rgba(255,255,255,.85);width:42px;height:48px;font-size:28px;opacity:0;transition:opacity .2s}.hero:hover .arrows button,.arrows button:focus-visible{opacity:1}
.site-nav{display:flex;justify-content:flex-end;align-items:center;gap:30px;padding:20px 3.1vw;border-top:1px solid #eee;border-bottom:1px solid #ddd;background:#fff;font-size:12px;text-transform:uppercase;position:sticky;top:0;z-index:20}
.site-nav sup{font-size:9px;color:#888}.intro{display:none}.wrap{max-width:none;padding-left:3.1vw;padding-right:3.1vw}.projects-section{padding-top:60px}.section-title{border-color:#ddd}.section-title h2{font-size:25px;text-transform:uppercase;font-weight:300}.section-title span{color:#666;letter-spacing:0}
.filters button{color:#777;font-size:11px}.filters button.active{color:#111;border-color:#111}.projects{column-gap:24px;row-gap:38px}.project-card .image{background:#f6f6f6;aspect-ratio:1.5}.project-card img{object-fit:cover}.project-card h3{font-size:14px;text-transform:uppercase;font-weight:300;letter-spacing:-.02em}.project-card p{font-size:12px;color:#555}.card-line span{color:#666}
.practice h2,.profile h2{font-family:inherit;font-size:38px;letter-spacing:-.045em;font-weight:300}.practice h2 em,h2 em{font-family:inherit;font-style:normal;font-weight:300}.practice{padding-top:100px}.practice-copy{padding-top:0;font-size:14px}.cv{border-color:#ddd}.profile img{width:140px}.job,.reference-links a{border-color:#ddd}.job small,.job>span,.reference-links span{color:#555}.references{padding-bottom:65px}
.contact{background:#fff;color:#111;border-top:1px solid #ddd;padding-top:50px}.contact h2{font-size:clamp(45px,6vw,85px);font-weight:300}.contact-email{font-size:clamp(16px,2.5vw,32px)}.copyright{color:#666;border-color:#ddd}.textlink{border-color:#aaa}dialog,dialog::backdrop{background:#fff;color:#111}.close{background:#fff;border-color:#ddd}.detail-head h2{font-weight:300;letter-spacing:-.045em;text-transform:uppercase}.detail-gallery{padding:0;gap:35px}.detail-gallery figcaption{padding:0 3.1vw}.detail-meta,.detail-gallery figcaption{color:#555}.detail-next{border-color:#ddd;font-weight:300}
@media(max-width:900px){.brand{font-size:4.2vw}.hero-image{height:calc(100svh - 136px)}.profile{flex-direction:row}.profile h2{font-size:30px}.hero-caption>div:first-child{flex-wrap:nowrap}}
@media(max-width:600px){.mast{padding:20px 5vw}.brand{font-size:4.2vw;letter-spacing:-.045em;gap:8px}.hero{padding:0}.hero-image{margin:0;height:calc(100svh - 130px);min-height:320px}.hero-caption{padding:14px 5vw;min-height:72px}.hero-caption>div:first-child{align-items:flex-start;font-size:10px;gap:15px;flex-wrap:nowrap}.hero-caption strong{width:auto;max-width:62%}#hero-place{width:auto;padding:0;max-width:35%}.arrows{bottom:calc(50% + 36px);padding:0 8px}.arrows button{opacity:1;width:30px;height:38px;font-size:20px}.site-nav{gap:16px;padding:16px 5vw;justify-content:space-between;font-size:9px}.site-nav sup{display:none}.wrap{padding-left:5vw;padding-right:5vw}.projects-section{padding-top:30px}.projects{grid-template-columns:1fr}.practice,.cv{grid-template-columns:1fr}.section-title span{font-size:8px}.detail-head h2{font-size:32px}.contact-email{font-size:17px}}

#fullscreen-preview{position:fixed;right:12px;bottom:12px;z-index:100;background:white;color:black;border:1px solid #aaa;padding:8px 12px;cursor:pointer;font-size:12px}html:fullscreen #fullscreen-preview{display:none}
.footer-portrait{padding:0 0 35px}.footer-portrait img{display:block;width:160px;height:160px;object-fit:cover}

.copyright-notice{max-width:850px;font-size:11px;line-height:1.7;color:#555;margin:0 0 25px}
