
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Manrope:wght@300;400;500;600&display=swap');
:root{
 --bg:#f3f0e9;--ink:#20231f;--muted:#73756d;--dark:#1d201d;--sand:#d8d0c2;
 --line:rgba(32,35,31,.14);--serif:"Cormorant Garamond",Georgia,serif;--sans:"Manrope",Arial,sans-serif;
 --max:1520px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);overflow-x:hidden}
img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}
.nav{position:fixed;z-index:100;top:0;left:0;right:0;height:82px;padding:0 4.5vw;display:flex;align-items:center;justify-content:space-between;color:#fff;transition:background .35s,color .35s,backdrop-filter .35s}
.nav.scrolled{background:rgba(243,240,233,.92);color:var(--ink);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line)}
.brand{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}.links{display:flex;gap:32px;font-size:10px;letter-spacing:.15em;text-transform:uppercase}.links a{opacity:.9;transition:opacity .3s}.links a:hover{opacity:.45}.menu{display:none;background:none;border:0;color:inherit;text-transform:uppercase;font-size:10px;letter-spacing:.15em}
.hero{height:100svh;min-height:650px;position:relative;overflow:hidden;color:#fff;background:#555}.hero-media{position:absolute;inset:0}.hero-media img{transform:scale(1.04);animation:hero 1.7s cubic-bezier(.2,.7,.2,1) forwards}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.32),transparent 45%,rgba(0,0,0,.52))}@keyframes hero{to{transform:scale(1)}}
.hero-content{position:absolute;z-index:2;left:6vw;bottom:10vh}.eyebrow{font-size:9px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:20px}.hero h1{font:400 clamp(72px,10vw,158px)/.72 var(--serif);letter-spacing:-.045em;margin:0}.hero h1 em{font-style:italic}
.hero-foot{position:absolute;z-index:2;left:4.5vw;right:4.5vw;bottom:27px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.15em;text-transform:uppercase}.scroll{display:flex;align-items:center;gap:12px}.scroll:before{content:"";width:55px;height:1px;background:currentColor}
.section{max-width:var(--max);margin:auto;padding:120px 5vw}.split{display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;align-items:center}.label{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.serif{font:400 clamp(54px,6.3vw,96px)/.84 var(--serif);letter-spacing:-.04em;margin:0}.serif em{font-style:italic}.lead{max-width:520px;margin:28px 0 0;color:#60635c;font-size:14px;line-height:1.85}
.studio-image{height:min(48vw,610px);margin-top:70px;position:relative}.studio-image img{object-position:center 52%}.studio-image:after{content:"DW / INTERIOR DESIGN";position:absolute;left:22px;bottom:20px;color:#fff;font-size:8px;letter-spacing:.18em}
.section-head{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:45px}.section-head h2{font:400 52px/1 var(--serif);margin:0}.section-head span{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
/* feature portfolio */
.feature-project{display:grid;grid-template-columns:1.42fr .58fr;gap:5px;margin-bottom:5px}.feature-main{height:min(61vw,760px);position:relative;overflow:hidden}.feature-side{height:min(61vw,760px);position:relative;overflow:hidden}.feature-project img,.editorial img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.feature-project:hover img,.editorial:hover img{transform:scale(1.035)}
.image-caption{position:absolute;z-index:2;left:25px;right:25px;bottom:24px;color:#fff;display:flex;justify-content:space-between;align-items:end;text-shadow:0 1px 10px rgba(0,0,0,.2)}.image-caption strong{font:400 38px/1 var(--serif)}.image-caption span{font-size:8px;letter-spacing:.15em;text-transform:uppercase}
.editorial-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:5px;margin-top:5px}.editorial{height:min(48vw,590px);position:relative;overflow:hidden}.editorial:first-child{margin-top:90px}.editorial:last-child{margin-top:-20px}.editorial .image-caption strong{font-size:31px}
.portfolio-note{display:flex;justify-content:space-between;align-items:center;margin-top:34px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.portfolio-note a{border-bottom:1px solid var(--ink);padding-bottom:7px;color:var(--ink)}
/* categories */
.dark{background:var(--dark);color:var(--bg)}.dark .section{padding-top:120px;padding-bottom:120px}.dark .label,.dark .section-head span{color:#aaa99f}.dark .section-head{border-color:rgba(243,240,233,.2)}
.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.category{height:min(43vw,620px);position:relative;overflow:hidden}.category:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 42%,rgba(0,0,0,.62))}.category img{transition:transform 1s}.category:hover img{transform:scale(1.04)}.category-copy{position:absolute;z-index:2;left:22px;right:22px;bottom:23px;color:#fff}.category-copy small{display:block;font-size:8px;letter-spacing:.17em;text-transform:uppercase;margin-bottom:9px}.category-copy h3{font:400 37px/1 var(--serif);margin:0}
/* services */
.services-intro{display:grid;grid-template-columns:1fr .8fr;gap:8vw;align-items:end;margin-bottom:60px}.services-intro p{max-width:360px;margin:0;color:#666960;font-size:13px;line-height:1.85}.service-list{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:55px 1fr 25px;gap:20px;align-items:center;padding:27px 0;border-bottom:1px solid var(--line);transition:padding .35s}.service:hover{padding-left:15px;padding-right:15px}.service-num{font-size:9px;letter-spacing:.15em;color:var(--muted)}.service-name{font:400 40px/1 var(--serif)}.service-arrow{font-size:18px}
/* manifesto + process */
.manifesto{padding:135px 6vw;text-align:center}.manifesto p{font:400 clamp(50px,7vw,108px)/.84 var(--serif);max-width:1160px;margin:auto}.manifesto em{font-style:italic;color:#6d7568}
.process{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;align-items:start}.process-image{height:650px}.steps{border-top:1px solid var(--line)}.step{display:grid;grid-template-columns:45px 1fr;gap:25px;padding:27px 0;border-bottom:1px solid var(--line)}.step-number{font-size:9px;letter-spacing:.15em;color:var(--muted)}.step h3{font:400 34px/1 var(--serif);margin:0 0 9px}.step p{font-size:12px;line-height:1.75;color:#676a62;max-width:520px;margin:0}
/* materials */
.material-band{display:grid;grid-template-columns:1.2fr .8fr;gap:5px;height:min(67vw,900px)}.material-main,.material-stack>div{overflow:hidden}.material-stack{display:grid;grid-template-rows:1fr 1fr;gap:5px}
/* CTA intentionally separate and opaque */
.cta{position:relative;z-index:5;padding:150px 5vw;background:var(--sand);text-align:center;min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center}.cta h2{font:400 clamp(62px,7.5vw,112px)/.82 var(--serif);margin:0 0 42px}.cta em{font-style:italic}.cta a{display:inline-flex;gap:15px;border-bottom:1px solid var(--ink);padding-bottom:10px;font-size:10px;letter-spacing:.16em;text-transform:uppercase}
footer{background:#191c19;color:#d9d5cd;padding:32px 5vw;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.16em;text-transform:uppercase}
/* subpages */
.page-hero{height:76svh;min-height:570px}.page-hero .hero-content{bottom:9vh}.service-images{display:grid;grid-template-columns:1fr 1fr;gap:5px}.service-images>div{height:min(50vw,680px)}.service-detail{margin-top:80px}.detail{display:grid;grid-template-columns:65px 1fr;gap:25px;padding:30px 0;border-bottom:1px solid rgba(243,240,233,.2)}.detail h3{font:400 40px/1 var(--serif);margin:0 0 11px}.detail p{max-width:650px;color:#c2c1b9;font-size:13px;line-height:1.8;margin:0}
.contact{max-width:var(--max);margin:auto;padding:120px 5vw}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.contact-title{font:400 clamp(58px,7vw,108px)/.82 var(--serif);margin:20px 0 0}.contact-title em{font-style:italic}.contact-info{display:grid;grid-template-columns:1fr 1fr;gap:45px 25px}.info-label{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.info-value{font-size:13px;line-height:1.7}.form{margin-top:100px;border-top:1px solid var(--line);padding-top:45px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.field{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:14px 0;outline:none;color:var(--ink);font-size:13px}.field.full{grid-column:1/-1}.form textarea{min-height:130px;resize:vertical}.submit{border:0;background:var(--ink);color:var(--bg);padding:16px 28px;font-size:9px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.show{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media(max-width:900px){
.nav{height:70px;padding:0 6vw}.links{display:none}.menu{display:block}.links.mobile{display:flex;position:fixed;inset:0;background:var(--dark);color:var(--bg);align-items:center;justify-content:center;flex-direction:column;gap:26px}.links.mobile a{font:400 50px/1 var(--serif);letter-spacing:0}.hero{min-height:650px}.hero-content{left:6vw;bottom:13vh}.hero h1{font-size:clamp(70px,18vw,112px)}.hero-foot{left:6vw;right:6vw}
.section{padding:90px 6vw}.split,.services-intro,.process,.contact-grid{grid-template-columns:1fr;gap:45px}.studio-image{height:78vw;margin-top:50px}.section-head{margin-bottom:32px}.section-head h2{font-size:42px}
.feature-project{grid-template-columns:1fr}.feature-main{height:105vw;max-height:620px}.feature-side{height:78vw;max-height:480px}.editorial-grid{grid-template-columns:1fr}.editorial:first-child,.editorial:last-child{margin-top:0}.editorial{height:90vw;max-height:600px}.portfolio-note{display:block;line-height:2;margin-top:25px}
.dark .section{padding:90px 6vw}.category-grid{grid-template-columns:1fr 1fr}.category{height:70vw;min-height:290px}.category-copy h3{font-size:31px}
.service{grid-template-columns:30px 1fr 20px}.service-name{font-size:31px}.manifesto{padding:100px 6vw}.process-image{height:110vw;max-height:620px}.step{grid-template-columns:35px 1fr}.step h3{font-size:31px}
.material-band{grid-template-columns:1fr;height:auto}.material-main,.material-stack>div{height:65vw}.material-stack{gap:5px;margin-top:5px}
.cta{padding:100px 6vw;min-height:440px}.cta h2{font-size:70px}footer{display:block;line-height:2.2}
.page-hero{height:66svh;min-height:520px}.service-images{grid-template-columns:1fr}.service-images>div{height:78vw}.detail{grid-template-columns:35px 1fr}.detail h3{font-size:32px}.contact{padding:90px 6vw}.contact-info{grid-template-columns:1fr 1fr;gap:35px 18px}.form{grid-template-columns:1fr;margin-top:75px}.field.full{grid-column:auto}
}
@media(min-width:2200px){.section,.contact{max-width:1800px}.hero h1{font-size:180px}}
