:root{--green:#173b32;--green2:#244f43;--gold:#c5a46d;--cream:#f7f5ef;--ink:#202b27;--muted:#69756f}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}
.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;padding:8px 6vw;background:#fff;position:sticky;top:0;z-index:30;border-bottom:1px solid #e9e8e1;gap:20px}.brand img{width:235px;max-width:100%;max-height:66px;display:block}.links{display:flex;gap:24px;align-items:center;font-size:13px}.links a:hover{color:#9d7d4b}.nav-phone{color:var(--green);font-weight:700;white-space:nowrap}.hero-phone{display:inline-block;color:#fff;text-decoration:underline;text-underline-offset:4px;font-weight:700;font-size:16px}.lang{border:1px solid #ddd8cc;background:white;padding:9px 13px;border-radius:30px}.nav a.active{font-weight:700;color:var(--green)}
.hero{min-height:610px;background:linear-gradient(90deg,rgba(14,39,32,.91),rgba(14,39,32,.45)),url('https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?auto=format&fit=crop&w=2000&q=85') center/cover;display:flex;align-items:center;color:white;padding:90px 10vw}.hero.compact{min-height:365px;padding:70px 9vw}.hero-inner{max-width:760px}.eyebrow{letter-spacing:3px;text-transform:uppercase;color:#dfc99f;font-size:11px;font-weight:700}.hero h1{font:600 clamp(43px,6vw,76px)/1.08 'Playfair Display',serif;margin:22px 0;white-space:pre-line}.hero.compact h1{font-size:clamp(40px,5vw,65px)}.hero p{font-size:17px;line-height:1.8;color:#e5e9e4;max-width:620px}.btn{display:inline-block;background:var(--gold);color:#152e27;padding:16px 24px;border:0;border-radius:3px;font-weight:700;font-size:12px;letter-spacing:.5px;cursor:pointer}.btn:hover{filter:brightness(1.07)}.btn.dark{background:var(--green);color:#fff}.btn.outline{background:transparent;border:1px solid var(--green);color:var(--green)}.btn.ghost{background:transparent;border:1px solid #e0d5bb;color:white}
.section{padding:90px 9vw}.section-head{text-align:center;max-width:700px;margin:0 auto 50px}.section h2{font:600 clamp(32px,4vw,48px)/1.2 'Playfair Display',serif;color:var(--green);margin:14px 0}.section-head p,.about-copy p{color:var(--muted);line-height:1.8}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service{background:white;box-shadow:0 14px 40px #1b30200b}.service img,.service .placeholder{width:100%;height:220px;object-fit:cover;background:linear-gradient(135deg,#e4e2d7,#c9d1c7);display:block}.service-body{padding:27px}.service h3{font:600 24px 'Playfair Display',serif;color:var(--green);margin:0 0 12px}.service p{color:var(--muted);line-height:1.7;font-size:14px}.service-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.service-actions a{font-size:13px;font-weight:700}.service-actions .read-link{text-decoration:underline;text-underline-offset:5px}.service-actions .quote-link{color:#9b7541}
.about{background:#fff;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.about-photo{min-height:430px;background:url('https://images.unsplash.com/photo-1581578731548-c64695cc6952?auto=format&fit=crop&w=1200&q=85') center/cover}.about-copy{max-width:520px}.promise{background:var(--green);color:#fff;text-align:center;padding:78px 20px}.promise h2{color:#fff}.promise p{color:#d7e1da;max-width:620px;margin:0 auto;line-height:1.8}.quote-intro{max-width:700px;margin-bottom:24px}.quote-intro p{line-height:1.75;color:var(--muted)}
.contact-area{display:grid;grid-template-columns:.8fr 1.2fr;gap:5vw;align-items:start}.contact-info p{color:var(--muted);line-height:1.8}.contact-info a{color:var(--green);text-decoration:underline;text-underline-offset:3px}.contact-form-wrap{background:#fff;border:1px solid #ebe9e2;padding:30px}.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quote-form label{font-size:12px;font-weight:700;color:#43574b}.quote-form .field{display:flex;flex-direction:column;gap:7px}.quote-form input,.quote-form textarea{width:100%;padding:14px;border:1px solid #dedfd7;background:white;border-radius:3px}.quote-form textarea{min-height:105px;resize:vertical}.quote-form .full{grid-column:1/-1}.quote-form .choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;padding:15px;background:#fafbf8;border:1px solid #e6e9e1;border-radius:5px}.quote-form .choice-grid label{display:flex;align-items:flex-start;gap:9px;font-size:13px;font-weight:500;line-height:1.4}.quote-form .choice-grid input{width:auto;margin:2px 0 0;accent-color:var(--green)}.notice{font-size:13px;color:#176b45;font-weight:600}.hidden{display:none!important}.map-panel{margin-top:25px;padding:18px;border:1px solid #e6e6dd;background:#f7f9f5}.map-placeholder{min-height:225px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;background:linear-gradient(135deg,#e5eae2,#e7e6df);text-align:center;padding:25px;color:#395448}.map-panel iframe{width:100%;height:280px;border:0}.map-panel a{text-decoration:underline}
.content-copy{max-width:960px;margin:auto;font-size:16px;line-height:1.85;color:#536259;white-space:pre-line}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.detail-grid img{width:100%;height:390px;object-fit:cover}.detail-copy p{line-height:1.85;color:var(--muted)}footer{background:#102d26;color:#dce5df;padding:45px 9vw;display:flex;justify-content:space-between;gap:30px;font-size:12px}footer .footer-brand img{width:200px;background:white;padding:6px;border-radius:3px}footer p{line-height:1.8}footer a:hover{text-decoration:underline}.admin-link{opacity:.6}.footer-links{display:flex;gap:16px;flex-wrap:wrap}.privacy-banner{position:fixed;bottom:18px;left:18px;right:18px;z-index:50;max-width:720px;background:#fff;border:1px solid #dfebdf;border-radius:10px;box-shadow:0 18px 55px #0002;padding:20px;display:flex;gap:18px;align-items:center}.privacy-banner p{font-size:13px;line-height:1.5;margin:5px 0;color:#526257}.privacy-banner .actions{display:flex;gap:8px;flex-shrink:0}.privacy-banner button{font-size:12px;padding:10px 13px}.small{font-size:12px;color:var(--muted)}
@media(max-width:1000px){.nav{flex-wrap:wrap}.links{gap:14px;flex-wrap:wrap}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.nav{padding:12px 5vw;gap:6px}.brand img{width:184px}.links{width:100%;justify-content:space-between;gap:9px;font-size:12px}.hero{min-height:520px;padding:70px 7vw}.hero.compact{min-height:320px}.cards,.about,.contact-area,.detail-grid{grid-template-columns:1fr}.about-photo{min-height:300px}.section{padding:65px 7vw}footer{flex-direction:column}.quote-form{grid-template-columns:1fr}.quote-form .full{grid-column:auto}.quote-form .choice-grid{grid-template-columns:1fr}.contact-form-wrap{padding:19px}.privacy-banner{flex-direction:column;align-items:stretch}.privacy-banner .actions{flex-wrap:wrap}}
