@import url(https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500&family=Playfair+Display:ital,wght@400;500;600&display=swap);*{box-sizing:border-box}body{margin:0;background:#e9e5de;color:#292723;font:13px DM Sans,sans-serif}html{scroll-behavior:smooth}a{text-decoration:none;color:inherit}img{width:100%;height:100%;object-fit:cover}.nav{height:72px;position:fixed;z-index:10;inset:0 0 auto;display:flex;align-items:center;padding:0 5%;background:#e9e5dedc;backdrop-filter:blur(12px)}.brand{font:600 18px 'Playfair Display';letter-spacing:.15em}.nav nav{display:flex;gap:28px;margin:auto}.nav nav a,.nav-cta,small{font-size:9px;text-transform:uppercase;letter-spacing:.18em}.nav-cta{border-bottom:1px solid;padding:9px}.menu{display:none}.interior-hero{height:100vh;min-height:760px;display:grid;grid-template-columns:42% 58%;position:relative;padding-top:72px}.hero-title{padding:14vh 0 0 9%;position:relative;z-index:2}.hero-title h1{font:clamp(65px,8vw,120px) 'Playfair Display';line-height:.86;margin:20px 0}.hero-title h1 i{color:#9b755e}.hero-image{background:url(https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?auto=format&fit=crop&w=1800&q=90) center/cover}.scroll-word{position:absolute;left:4%;bottom:30px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.2em}.work{padding:120px 6%}.work-intro{max-width:700px;margin:0 auto 80px;text-align:center}.work-intro h2,.studio h2,.process h2,.contact h2{font:65px 'Playfair Display';line-height:.88;margin:15px 0}.work-intro p{color:#746f68;line-height:1.9}.masonry{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:14px;align-items:start}.masonry figure{margin:0;position:relative;overflow:hidden}.masonry figure img{display:block;height:430px;transition:.7s}.masonry figure:hover img{transform:scale(1.04)}.masonry .large{grid-row:span 2}.masonry .large img{height:720px}.masonry .wide{grid-column:span 2}.masonry .wide img{height:500px}.masonry figcaption{position:absolute;left:18px;bottom:18px;color:#fff;text-shadow:0 2px 15px #000;display:grid;gap:5px}.masonry figcaption span{font-size:8px;letter-spacing:.17em}.masonry figcaption b{font:22px 'Playfair Display'}.studio{display:grid;grid-template-columns:1fr 1fr;min-height:700px;background:#28251f;color:#eee8dd}.studio-photo{background:url('https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?auto=format&fit=crop&w=1400&q=90') center/cover}.studio>div:last-child{padding:110px 10%;display:flex;flex-direction:column;justify-content:center}.studio p{max-width:470px;line-height:1.9;color:#bcb5aa}.studio-notes{display:grid;gap:10px;margin-top:30px}.studio-notes span{border-bottom:1px solid #4d4942;padding:12px 0}.process{padding:120px 8%;display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}.process-grid{display:grid;grid-template-columns:1fr 1fr}.process-grid div{padding:30px;border-top:1px solid #bdb6ad}.process-grid b{color:#9b755e}.process-grid h3{font:25px 'Playfair Display'}.process-grid p{color:#716d66;line-height:1.7}.contact{padding:150px 8%;background:#9b755e;color:#fff}.contact h2{font-size:85px}.contact a{border-bottom:1px solid;padding-bottom:8px}footer{padding:25px 5%;font-size:9px;letter-spacing:.15em;border-top:1px solid #cfc8be}@media(max-width:800px){.nav nav,.nav-cta{display:none}.menu{display:block;margin-left:auto}.interior-hero{grid-template-columns:1fr;display:block}.hero-image{position:absolute;inset:72px 0 0}.hero-image:after{content:'';position:absolute;inset:0;background:#e9e5de99}.hero-title{padding:18vh 7% 0}.work,.studio,.process{padding:80px 7%}.masonry{grid-template-columns:1fr 1fr}.masonry .large{grid-row:auto;grid-column:span 2}.masonry .large img{height:520px}.masonry .wide{grid-column:span 2}.studio{grid-template-columns:1fr}.studio-photo{min-height:430px}.process{grid-template-columns:1fr}.process-grid{margin-top:30px}.contact h2{font-size:60px}}
html{scroll-behavior:smooth}.masonry figure,.studio-photo,.hero-image{overflow:hidden}.masonry figure img,.studio-photo{transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .6s}.masonry figure:hover img{transform:scale(1.045)}.masonry figure{transition:transform .45s,box-shadow .45s}.masonry figure:hover{transform:translateY(-7px);box-shadow:0 25px 50px #0002}.masonry figcaption{transition:transform .35s,opacity .35s}.masonry figure:hover figcaption{transform:translateY(-5px)}.studio-photo:hover{transform:scale(1.025)}.studio-notes span{transition:.3s;cursor:default}.studio-notes span:hover{transform:translateX(8px)}.process-grid>div{transition:.35s}.process-grid>div:hover{transform:translateY(-8px);background:#fff}.contact a{transition:.3s}.contact a:hover{letter-spacing:.04em}
/* --- Motion polish --- */
@media (prefers-reduced-motion:no-preference){
  .reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.75,.25,1)}
  .reveal.is-visible{opacity:1;transform:none}
  .reveal:nth-child(2){transition-delay:.08s}.reveal:nth-child(3){transition-delay:.16s}.reveal:nth-child(4){transition-delay:.24s}
  .service-card,.project-card,.gallery-card,.value-card,.cta-card{transition:transform .45s cubic-bezier(.2,.75,.25,1),box-shadow .45s ease}
  .service-card:hover,.project-card:hover,.gallery-card:hover,.value-card:hover,.cta-card:hover{transform:translateY(-8px);box-shadow:0 24px 55px rgba(0,0,0,.16)}
  img{transition:transform .7s cubic-bezier(.2,.75,.25,1)}
  figure:hover img,.project-card:hover img,.gallery-card:hover img{transform:scale(1.045)}
}
