@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500&display=swap');
:root{--ink:#1d1d1b;--paper:#fff;--line:#ddd;--sans:"Poppins","Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;font-weight:300}a{color:inherit;text-decoration:none}img{width:100%;display:block;object-fit:cover}
.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;background:#fff;position:relative;z-index:4}.brand{font-size:24px;font-weight:400;letter-spacing:.19em}.brand span{font-weight:300;letter-spacing:.12em}.nav{display:flex;gap:32px;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.nav a:hover,.text-link:hover{opacity:.55}
.hero{height:calc(100vh - 104px);position:relative;margin:0 2.2vw;overflow:hidden}.hero img{height:100%;filter:brightness(.9)}.hero-copy{position:absolute;left:4vw;bottom:6vh;color:#fff;max-width:630px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.2em;margin-bottom:18px}.hero h1{font-size:clamp(34px,4vw,62px);font-weight:300;line-height:1.12;letter-spacing:-.025em;margin:0}.hero-sub{font-size:13px;letter-spacing:.16em;text-transform:uppercase;margin-top:24px}
.hero-slides{position:absolute;inset:0;background:#eee}.hero-slide{position:absolute;inset:0;opacity:0;animation:heroFade 49s infinite;object-position:center}.hero-slide:nth-child(2){animation-delay:7s}.hero-slide:nth-child(3){animation-delay:14s}.hero-slide:nth-child(4){animation-delay:21s}.hero-slide:nth-child(5){animation-delay:28s}.hero-slide:nth-child(6){animation-delay:35s}.hero-slide:nth-child(7){animation-delay:42s}@keyframes heroFade{0%{opacity:0;transform:scale(1.006)}2%{opacity:1}12%{opacity:1}14%{opacity:0;transform:scale(1)}100%{opacity:0}}@media(prefers-reduced-motion:reduce){.hero-slide{animation:none;opacity:0}.hero-slide:first-child{opacity:1}}
.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:10vw;padding:135px 9vw 125px}.intro h2,.section-head h2,.about h2{font-size:clamp(32px,3.5vw,53px);font-weight:300;line-height:1.15;letter-spacing:-.025em;margin:0}.intro p,.about p{font-size:16px;line-height:1.8;margin:4px 0 0}.text-link{display:inline-block;margin-top:28px;border-bottom:1px solid;padding-bottom:5px;font-size:10px;letter-spacing:.15em;text-transform:uppercase}
.projects{padding:0 4.5vw 135px}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:44px}.project-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:5vw}.project-card img{height:66vw;max-height:860px}.project-card.small{padding-top:140px}.project-card.small img{height:45vw;max-height:650px}.project-meta{display:flex;justify-content:space-between;gap:20px;margin-top:17px}.project-title{font-size:18px;font-weight:300}.project-place{font-size:9px;letter-spacing:.14em;text-transform:uppercase;margin-top:7px}.project-no{font-size:12px;color:#777}
.press{margin:0 4.5vw;padding:100px 4.5vw;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;align-items:center}.press-mark{font-size:clamp(40px,6vw,84px);font-weight:300;line-height:.9;letter-spacing:-.05em}.press-copy h2{font-size:clamp(30px,3.5vw,48px);font-weight:300;line-height:1.15;letter-spacing:-.025em;margin:18px 0}.press-copy p{font-size:15px;line-height:1.75;max-width:650px;color:#555}
.about{display:grid;grid-template-columns:1fr 1.1fr;gap:9vw;padding:140px 9vw}.about>div:first-child{display:flex;align-items:center;justify-content:center}.about img{height:500px;max-width:390px;object-position:center 50%}.about-copy{display:flex;flex-direction:column;justify-content:center}.footer{border-top:1px solid var(--line);margin:0 4.5vw;padding:38px 0 48px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.project-hero{margin:0 4.5vw 100px}.project-hero h1{font-size:clamp(42px,6vw,88px);font-weight:300;line-height:1.02;letter-spacing:-.035em;margin:60px 0 35px}.project-hero img{height:78vh}.gallery{padding:0 4.5vw 120px;display:grid;grid-template-columns:1fr 1fr;gap:7vw 4vw}.gallery .wide{grid-column:1/-1}.gallery img{height:70vw;max-height:900px}.gallery .wide img{height:70vh}.project-note{font-size:16px;line-height:1.75;max-width:660px;margin:0 9vw 120px}
.review{padding:60px 4.5vw 120px}.review-head{max-width:760px;margin-bottom:70px}.review-head h1{font-size:clamp(38px,5vw,72px);font-weight:300;letter-spacing:-.04em;margin:0 0 22px}.review-head p{line-height:1.75}.review-group{margin-top:80px}.review-group h2{font-size:25px;font-weight:300;margin-bottom:28px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 22px}.review-item img{aspect-ratio:4/3}.review-item.portrait img{aspect-ratio:3/4}.review-label{margin-top:10px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:760px){.site-header{height:82px;padding:0 22px}.brand{font-size:17px}.nav{gap:14px;font-size:8px}.nav a:nth-child(2){display:none}.hero{margin:0;height:calc(100vh - 82px)}.hero-copy{left:24px;right:24px;bottom:50px}.hero h1{font-size:38px}.intro,.about{grid-template-columns:1fr;padding:85px 24px;gap:36px}.intro p,.about p{font-size:15px}.projects{padding:0 24px 85px}.section-head{align-items:start}.project-grid{grid-template-columns:1fr;gap:65px}.project-card.small{padding-top:0}.project-card img,.project-card.small img{height:125vw}.press{margin:0 24px;padding:75px 0;grid-template-columns:1fr;gap:42px}.about img{height:115vw}.footer{margin:0 24px;gap:20px;flex-wrap:wrap}.project-hero{margin:0 24px 70px}.project-hero h1{margin-top:42px}.project-hero img{height:65vh}.gallery{padding:0 24px 80px;grid-template-columns:1fr;gap:28px}.gallery .wide{grid-column:auto}.gallery img,.gallery .wide img{height:auto}.project-note{margin:0 24px 80px}.review{padding:45px 24px 80px}.review-grid{grid-template-columns:1fr 1fr;gap:28px 12px}}
.portfolio-index{padding:55px 4.5vw 130px}.portfolio-index h1{font-size:clamp(42px,6vw,88px);font-weight:300;letter-spacing:-.04em;margin:0 0 70px}.portfolio-list{display:grid;grid-template-columns:1fr 1fr;gap:85px 4vw}.portfolio-tile:nth-child(even){margin-top:120px}.portfolio-tile img{height:48vw;max-height:700px}.portfolio-tile h2{font-size:20px;font-weight:300;margin:17px 0 5px}.portfolio-tile p{font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin:0}@media(max-width:760px){.portfolio-index{padding:40px 24px 80px}.portfolio-list{grid-template-columns:1fr;gap:60px}.portfolio-tile:nth-child(even){margin-top:0}.portfolio-tile img{height:120vw}}
.brand{font-size:21px}.nav{font-size:10px}.hero h1{font-size:clamp(30px,3.2vw,48px);max-width:540px}.hero-sub{font-size:11px}.intro h2,.section-head h2,.about h2{font-size:clamp(28px,2.8vw,42px)}.project-title{font-size:16px}.press{grid-template-columns:.9fr 1.1fr;padding-top:80px;padding-bottom:80px}.press-image img{height:480px;object-position:center}.press-image span{display:block;margin-top:9px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#777}.press-copy h2{font-size:clamp(26px,2.8vw,36px)}.press-copy p{font-size:16px}.project-hero h1{font-size:clamp(36px,5vw,70px)}.portfolio-index h1{font-size:clamp(34px,5vw,64px)}.portfolio-tile h2{font-size:17px}
@media(max-width:760px){.brand{font-size:16px}.hero h1{font-size:31px}.intro h2,.section-head h2,.about h2{font-size:29px}.press{grid-template-columns:1fr}.press-image img{height:105vw}.press-copy h2{font-size:27px}.project-hero h1{font-size:38px}.portfolio-index h1{font-size:40px}}
