@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--ink:#181613;--muted:#746e67;--cream:#f6f1e9;--paper:#fffdf9;--brown:#5c3b27;--brown2:#81553a;--line:#e8dfd4;--max:1240px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:'DM Sans',sans-serif;background:var(--paper);color:var(--ink);line-height:1.65}a{text-decoration:none;color:inherit}img{display:block;width:100%;object-fit:cover}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.topbar{background:#211c18;color:#d9d0c7;font-size:12px;padding:8px 0}.topbar .wrap{display:flex;justify-content:space-between;gap:20px}.topbar a{text-decoration:underline;text-underline-offset:3px}header{position:sticky;top:0;z-index:100;background:rgba(255,253,249,.93);backdrop-filter:blur(18px);border-bottom:1px solid rgba(232,223,212,.8)}nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{display:flex;align-items:center;gap:10px}.logo-mark{font-family:'Playfair Display';font-size:30px;font-style:italic;line-height:1}.logo-text{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:#8a6247;margin-top:4px}.menu{display:flex;align-items:center;gap:28px;font-size:13px;color:#4f4943}.menu a{position:relative;padding:29px 0}.menu a:hover,.menu a.active{color:var(--brown)}.menu a.active:after{content:'';position:absolute;left:0;right:0;bottom:21px;height:2px;background:var(--brown)}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 19px;border-radius:8px;font-weight:600;font-size:13px}.nav-cta,.btn.dark{background:#2c241e;color:white}.btn.light{border:1px solid #cdbdad;background:#fff;color:#3b3028}.btn.whatsapp{border:1px solid #b8a08e;background:#fff}.mobile{display:none;border:0;background:none;font-size:26px}.hero{background:var(--cream);overflow:hidden}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;min-height:620px}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:70px 40px 70px 0}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:11px;color:#855e43;font-weight:700;margin-bottom:18px}.hero h1,.page-title h1{font-family:'Playfair Display',serif;font-size:clamp(48px,5.5vw,82px);line-height:1.03;font-weight:600;letter-spacing:-2px}.hero h1 span,.heading span{color:#8a5537;font-style:italic}.lead{font-size:17px;color:#635c55;max-width:590px;margin:24px 0 30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-media{position:relative;min-height:620px}.hero-media img{height:100%;object-position:center}.hero-media:after{content:'Spaces that feel like home';position:absolute;right:25px;bottom:25px;background:rgba(44,36,30,.84);color:#fff;padding:20px 24px;font-family:'Playfair Display';font-size:22px;max-width:220px}.stats{background:#fff;border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr)}.stat{padding:24px 20px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat b{display:block;font-family:'Playfair Display';font-size:28px}.stat small{color:var(--muted);font-size:12px}.section{padding:90px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.kicker{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#8a6045;font-weight:700}.heading{font-family:'Playfair Display';font-size:46px;line-height:1.1;margin-top:10px}.sub{color:var(--muted);max-width:600px;margin-top:12px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service{border:1px solid var(--line);background:#fff;padding:27px;border-radius:12px;transition:.25s}.service:hover{transform:translateY(-4px);box-shadow:0 16px 35px rgba(60,42,28,.08)}.service .num{font-family:'Playfair Display';font-size:17px;color:#9a6d4d}.service h3{font-family:'Playfair Display';font-size:25px;margin:28px 0 8px}.service p{color:var(--muted);font-size:14px}.service a{display:inline-block;margin-top:18px;color:#765039;font-size:12px;font-weight:700}.projects{display:grid;grid-template-columns:1.3fr .8fr .8fr;grid-auto-rows:260px;gap:14px}.project{position:relative;overflow:hidden;border-radius:10px}.project.tall{grid-row:span 2}.project img{height:100%;transition:.5s}.project:hover img{transform:scale(1.04)}.project:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.7))}.project .caption{position:absolute;z-index:2;left:18px;bottom:16px;color:#fff}.caption b{font-family:'Playfair Display';font-size:21px}.caption small{display:block;color:#e5ded7;font-size:11px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.photo-card{position:relative}.photo-card img{height:520px;border-radius:12px}.photo-card .badge{position:absolute;right:-25px;bottom:25px;background:#2b241f;color:#fff;padding:22px 25px;border-radius:8px}.quote{background:#f1eae0;padding:50px;border-radius:12px}.quote-mark{font-family:'Playfair Display';font-size:60px;color:#9b6a49;line-height:.7}.quote p{font-family:'Playfair Display';font-size:28px;line-height:1.35;margin:18px 0}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.review{background:#fff;border:1px solid var(--line);border-radius:12px;padding:25px}.stars{color:#c38a16;letter-spacing:2px;font-size:13px}.review h4{margin-top:16px}.review p{font-size:14px;color:#5f5953;margin-top:10px}.review small{color:#91877f}.cta{background:#2b241f;color:#fff;padding:70px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-family:'Playfair Display';font-size:44px;line-height:1.1}.cta p{color:#cfc4bb;margin-top:8px}.footer{background:#211c18;color:#cfc6bd;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1fr 1fr;gap:40px}.footer h4{color:#fff;margin-bottom:15px}.footer a,.footer p{display:block;font-size:13px;color:#b8aea5;margin:7px 0}.footer-logo{color:#fff;font-family:'Playfair Display';font-size:27px;font-style:italic}.copyright{border-top:1px solid #40372f;margin-top:35px;padding-top:17px;display:flex;justify-content:space-between;font-size:11px;color:#8f867e}.page-title{background:#2c241e;color:#fff;padding:95px 0}.page-title p{color:#cfc4bb;margin-top:14px}.page{padding:80px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.about-grid img{height:520px;border-radius:12px}.about-copy h2{font-family:'Playfair Display';font-size:43px;line-height:1.1}.about-copy p{color:var(--muted);margin-top:16px}.pill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:35px}.pill{padding:22px;border:1px solid var(--line);border-radius:10px;background:#fff}.pill b{font-family:'Playfair Display';font-size:20px}.pill p{font-size:13px;color:var(--muted);margin-top:7px}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-bottom:50px;align-items:center}.service-detail:nth-child(even) img{order:-1}.service-detail img{height:390px;border-radius:12px}.service-detail h2{font-family:'Playfair Display';font-size:38px}.service-detail p{color:var(--muted);margin-top:12px}.checklist{margin-top:18px;display:grid;gap:7px;font-size:13px;color:#574f49}.checklist span:before{content:'✓';color:#8a6045;font-weight:bold;margin-right:8px}.gallery{columns:3 280px;column-gap:14px}.gallery figure{break-inside:avoid;margin:0 0 14px;position:relative;overflow:hidden;border-radius:10px}.gallery img{transition:.4s}.gallery figure:hover img{transform:scale(1.03)}.gallery figcaption{position:absolute;left:14px;bottom:12px;color:white;background:rgba(35,28,23,.72);padding:7px 10px;border-radius:5px;font-size:11px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:25px}.contact-card,.form{background:#fff;border:1px solid var(--line);border-radius:12px;padding:32px}.contact-card h2,.form h2{font-family:'Playfair Display';font-size:32px;margin-bottom:20px}.contact-item{padding:17px 0;border-bottom:1px solid var(--line)}.contact-item:last-child{border:0}.contact-item b{display:block}.contact-item span{font-size:13px;color:var(--muted)}form{display:grid;grid-template-columns:1fr 1fr;gap:13px}input,textarea,select{width:100%;border:1px solid #ddd2c7;border-radius:7px;padding:13px;font:inherit;background:#fff}textarea{min-height:140px;resize:vertical}.full{grid-column:1/-1}.notice{font-size:11px;color:#9a9087;margin-top:12px}.map{height:280px;border-radius:10px;background:linear-gradient(135deg,#e9e1d6,#d9cbb9);display:grid;place-items:center;color:#5c4b3d;text-align:center;margin-top:15px}.map a{background:#2c241e;color:#fff;padding:10px 15px;border-radius:7px;margin-top:10px;display:inline-block}.floating{position:fixed;right:18px;bottom:18px;z-index:90;background:#1f9d58;color:#fff;padding:13px 17px;border-radius:50px;font-size:12px;font-weight:700;box-shadow:0 10px 25px rgba(0,0,0,.2)}
@media(max-width:900px){.menu,.nav-cta{display:none}.mobile{display:block}.hero-grid,.split,.about-grid,.contact-grid,.service-detail{grid-template-columns:1fr}.hero-copy{padding:55px 0}.hero-media{min-height:430px}.hero-media img{height:430px}.stats{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border-right:0}.services,.reviews,.pill-grid{grid-template-columns:1fr 1fr}.projects{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.project.tall{grid-row:span 1}.footer-grid{grid-template-columns:1fr 1fr}.cta-inner{align-items:flex-start;flex-direction:column}.service-detail:nth-child(even) img{order:0}}@media(max-width:560px){.wrap{width:min(var(--max),calc(100% - 28px))}.topbar{display:none}nav{height:70px}.hero h1{font-size:47px}.hero-media{min-height:330px}.hero-media img{height:330px}.stats,.services,.reviews,.pill-grid,.projects,.footer-grid{grid-template-columns:1fr}.section{padding:65px 0}.heading{font-size:38px}.section-head{align-items:flex-start;flex-direction:column}.projects{grid-auto-rows:240px}.cta h2{font-size:36px}.copyright{flex-direction:column;gap:7px}.page-title{padding:70px 0}form{grid-template-columns:1fr}.full{grid-column:auto}.logo-mark{font-size:25px}.logo-text{font-size:8px;letter-spacing:2px}}
