:root{--cream:#f4efe6;--ink:#27231f;--brown:#574437;--gold:#b28a50;--white:#fff;--line:rgba(39,35,31,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif}img{display:block;width:100%;object-fit:cover}a{color:inherit;text-decoration:none}.nav{height:88px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:#f8f4ed;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:13px;font-size:12px;letter-spacing:.16em;font-weight:600}.brand small{display:block;font-size:7px;letter-spacing:.11em;margin-top:5px;color:#75695e}.monogram{width:44px;height:44px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font-family:"Playfair Display";font-size:12px;color:var(--gold)}nav{display:flex;align-items:center;gap:2.3vw;font-size:13px}nav a:hover{color:var(--gold)}.nav-cta{border:1px solid var(--gold);padding:13px 20px}.menu{display:none}.hero{height:calc(100vh - 88px);min-height:630px;position:relative;color:white;overflow:hidden}.hero>img{height:100%;position:absolute}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,15,11,.75),rgba(20,15,11,.2) 65%),linear-gradient(0deg,rgba(20,15,11,.5),transparent 45%)}.hero-copy{position:absolute;left:7vw;top:46%;transform:translateY(-50%);max-width:720px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-weight:600;color:var(--gold);margin:0 0 20px}.hero h1{font:500 clamp(52px,7vw,100px)/.95 "Playfair Display";letter-spacing:-.04em;margin:0 0 28px}.hero h1 em{font-weight:500;color:#d8b47b}.hero-copy>p:not(.eyebrow){font-size:18px;line-height:1.7;max-width:570px}.actions{display:flex;gap:12px;margin-top:32px}.button{display:inline-flex;justify-content:center;align-items:center;padding:15px 25px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:600;cursor:pointer}.gold{background:var(--gold);color:white}.gold:hover{background:#9d7540}.ghost{border-color:rgba(255,255,255,.65);color:white}.proof{position:absolute;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(3,1fr);padding:23px 7vw;background:rgba(32,26,21,.76);backdrop-filter:blur(10px);font-size:12px}.proof span{padding-right:20px}.proof strong{color:#d8b47b;text-transform:uppercase;letter-spacing:.14em;margin-right:8px}.intro{padding:120px 12vw;text-align:center}.intro h2,.section-title h2,.quote h2{font:500 clamp(38px,5vw,66px)/1.1 "Playfair Display";margin:0}.intro>p:last-child{max-width:760px;margin:30px auto 0;color:#675d54;line-height:1.8}.services{padding:100px 7vw 120px;background:#f9f6f0}.section-title{max-width:700px;margin-bottom:55px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.service-grid article{padding:36px 28px 30px 0;border-right:1px solid var(--line);margin-right:28px}.service-grid article:last-child{border:0}.service-grid span{font:500 12px "Playfair Display";color:var(--gold)}h3{font:500 25px "Playfair Display";margin:30px 0 15px}.service-grid p{font-size:14px;line-height:1.75;color:#6c6259}.portfolio{padding:110px 7vw 120px;background:#2c2723}.light{color:white}.gallery{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.gallery figure{margin:0;position:relative;overflow:hidden}.gallery .wide{grid-row:span 2}.gallery img{height:320px;transition:transform .6s}.gallery .wide img{height:658px}.gallery figure:hover img{transform:scale(1.025)}figcaption{position:absolute;bottom:0;left:0;right:0;padding:50px 25px 22px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.6));font-family:"Playfair Display";font-size:19px}.process{padding:120px 9vw;display:grid;grid-template-columns:1fr 1.25fr;gap:9vw}.process ol{list-style:none;margin:0;padding:0;counter-reset:steps}.process li{counter-increment:steps;display:grid;grid-template-columns:45px 1fr;padding:26px 0;border-bottom:1px solid var(--line)}.process li:before{content:"0" counter(steps);color:var(--gold);font:500 13px "Playfair Display";grid-row:span 2}.process li strong{font:500 21px "Playfair Display"}.process li span{margin-top:7px;color:#6b6159;font-size:14px;line-height:1.6}.quote{padding:110px 9vw;background:#dfd2c0;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.quote>div>p:not(.eyebrow){line-height:1.75;color:#5e5349}.area{font-size:13px;margin-top:30px}form{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:600}input,select,textarea{display:block;width:100%;margin-top:8px;border:0;border-bottom:1px solid #8f806f;background:transparent;padding:11px 2px;font:14px "DM Sans";outline:none}textarea,label:last-of-type{grid-column:1/-1}form button{width:max-content}.form-note{margin:0;align-self:center;font-size:13px;color:#5d4c3b}footer{padding:50px 7vw;background:#1f1b18;color:#eee;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:11px}footer p{color:#aaa}.reveal{opacity:0;transform:translateY(20px);transition:.8s}.reveal.visible{opacity:1;transform:none}@media(max-width:850px){.nav{height:74px}.nav nav{display:none;position:absolute;top:74px;left:0;right:0;padding:25px;background:#f8f4ed;flex-direction:column;align-items:flex-start}.nav nav.open{display:flex}.menu{display:block;border:0;background:none;text-transform:uppercase;letter-spacing:.12em}.hero{height:760px}.hero-copy{left:7vw;right:7vw}.hero h1{font-size:55px}.proof{grid-template-columns:1fr;gap:9px}.service-grid{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr}.gallery .wide img,.gallery img{height:420px}.process,.quote{grid-template-columns:1fr}.process{gap:30px}.quote{gap:55px}footer{flex-direction:column;align-items:flex-start}}@media(max-width:560px){.brand{font-size:9px}.monogram{width:38px;height:38px}.hero{min-height:690px;height:calc(100vh - 74px)}.hero h1{font-size:46px}.hero-copy>p:not(.eyebrow){font-size:16px}.actions{flex-direction:column;align-items:flex-start}.proof{padding:18px 7vw}.intro,.services,.portfolio,.process,.quote{padding:80px 6vw}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid var(--line)}.gallery .wide img,.gallery img{height:310px}form{grid-template-columns:1fr}label{grid-column:1/-1}}
