:root{--ink:#201b1d;--muted:#70686b;--cream:#f8f3ee;--gold:#b68b51;--white:#fff;--line:#e7ddd4}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"DM Sans",Arial,sans-serif;background:#fff;line-height:1.65}a{text-decoration:none;color:inherit}.container{width:min(1160px,92%);margin:auto}
.header{position:absolute;z-index:10;top:0;left:0;right:0;color:#fff}.nav{height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px}.brand img{width:48px;height:48px}.brand strong{display:block;font:600 23px "Playfair Display",serif;letter-spacing:.4px}.brand small{display:block;font-size:8px;letter-spacing:3px}.nav-links{display:flex;gap:30px;font-size:14px}.nav-links a:hover{text-decoration:underline}.nav-cta{border:1px solid rgba(255,255,255,.7);padding:10px 18px;border-radius:30px;font-weight:600;font-size:13px}.menu-btn{display:none;background:none;border:0;color:#fff;font-size:27px}
.hero{min-height:730px;background:url("https://images.unsplash.com/photo-1519167758481-83f550bb49b3?auto=format&fit=crop&w=2200&q=90") center/cover;position:relative;color:#fff;display:flex;align-items:center}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,16,17,.78),rgba(22,16,17,.28),rgba(22,16,17,.42))}.hero-content{position:relative;padding-top:75px}.eyebrow{font-size:11px;letter-spacing:3px;font-weight:700;margin:0 0 15px}.hero h1{font:600 clamp(45px,7vw,78px)/1.05 "Playfair Display",serif;margin:0;max-width:800px}.hero h1 em,h2 em{font-style:italic;color:#d9b887}.hero-text{max-width:590px;font-size:17px;margin:25px 0 32px;color:#eee}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-block;border-radius:3px;padding:13px 23px;font-weight:700;font-size:14px;border:1px solid transparent}.btn-primary{background:var(--gold);color:#fff}.btn-primary:hover{filter:brightness(.93)}.btn-light{background:#fff;color:var(--ink)}.stats{background:var(--ink);color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stats-grid div{padding:27px 20px;border-right:1px solid #403a3c}.stats-grid div:last-child{border:0}.stats-grid strong{font:600 25px "Playfair Display";color:#c9a36e;display:block}.stats-grid span{font-size:12px;letter-spacing:1px}
.section{padding:100px 0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.image-card img{width:100%;height:540px;object-fit:cover}.eyebrow.dark{color:var(--gold)}h2{font:600 clamp(34px,4vw,52px)/1.12 "Playfair Display",serif;margin:0 0 22px}.content p{color:var(--muted);font-size:15px}.text-link{display:inline-block;margin-top:12px;color:var(--gold);font-weight:700}.services{background:var(--cream)}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:50px}.section-head>p{max-width:430px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{padding:35px 28px;min-height:280px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.35)}.service span{color:var(--gold);font-size:12px;font-weight:700}.service h3{font:600 23px/1.2 "Playfair Display",serif;margin:25px 0 14px}.service p{font-size:13px;color:var(--muted)}.banner{background:var(--ink);color:#fff;padding:70px 0}.banner-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.banner h2{margin:0;max-width:700px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-grid img{width:100%;height:340px;object-fit:cover}.gallery-grid img:nth-child(2),.gallery-grid img:nth-child(5){height:440px}.gallery-grid img:nth-child(2){margin-top:35px}.gallery-grid img:nth-child(5){margin-top:-35px}.centered{justify-content:center;text-align:center}.process{background:var(--cream)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.process-grid>div{padding:35px;border-top:1px solid #ddd1c7;border-right:1px solid #ddd1c7}.process-grid>div:last-child{border-right:0}.process-grid b{font:600 30px "Playfair Display";color:var(--gold)}.process-grid h3{font:600 23px "Playfair Display";margin:20px 0 8px}.process-grid p{color:var(--muted);font-size:14px}.contact{background:#272022;color:#fff;padding:95px 0}.contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:100px}.contact h2{max-width:600px}.contact p{color:#c9c0c2}.contact-details{margin-top:35px;display:grid;gap:16px}.contact-details a,.contact-details div{display:flex;flex-direction:column}.contact-details strong{font-size:11px;letter-spacing:2px;color:#bca98f}.contact-details span{font-size:15px}.contact-form{background:#fff;color:var(--ink);padding:35px}.contact-form label{font-size:12px;font-weight:700;display:block;margin-bottom:17px}.contact-form input,.contact-form textarea{display:block;width:100%;border:1px solid #ddd4cd;padding:13px;margin-top:6px;font:inherit;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold)}.contact-form .btn{width:100%;cursor:pointer}.footer{background:#181416;color:#aaa;padding:25px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}.footer-brand strong{font-size:18px;color:#fff}.footer-brand img{width:38px;height:38px}.footer-inner>div:last-child{display:flex;gap:18px;color:#fff}.floating-wa{position:fixed;right:22px;bottom:22px;width:54px;height:54px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;font-weight:800;font-size:14px;box-shadow:0 8px 25px #0003;z-index:20}
@media(max-width:850px){.nav-links,.nav-cta{display:none}.menu-btn{display:block}.nav-links.open{display:flex;position:absolute;top:75px;left:4%;right:4%;background:#211b1d;padding:20px;flex-direction:column;gap:16px}.hero{min-height:680px}.two-col,.contact-grid{grid-template-columns:1fr;gap:45px}.service-grid{grid-template-columns:1fr 1fr}.stats-grid{grid-template-columns:1fr 1fr}.section-head,.banner-inner{display:block}.section-head>p{margin-top:20px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid img,.gallery-grid img:nth-child(2),.gallery-grid img:nth-child(5){height:300px;margin:0}.banner .btn{margin-top:25px}.contact-form{padding:25px}}
@media(max-width:520px){.hero h1{font-size:45px}.hero-text{font-size:15px}.section{padding:70px 0}.service-grid,.gallery-grid{grid-template-columns:1fr}.stats-grid div{padding:20px 12px}.image-card img{height:400px}.footer-inner{flex-direction:column;text-align:center}}
