
:root{--ink:#181714;--muted:#6b665d;--cream:#f5f1e8;--paper:#fffdf8;--gold:#b48b45;--gold2:#d2b77f;--line:#ddd4c4;--dark:#20201e;--shadow:0 18px 50px rgba(38,31,20,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.66}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 36px));margin:auto}.topbar{background:#171715;color:#eee7da;font-size:.87rem}.topbar .wrap{display:flex;justify-content:space-between;gap:18px;padding:8px 0;flex-wrap:wrap}.topbar a:hover{color:#fff}.header{position:sticky;top:0;z-index:100;background:rgba(255,253,248,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(221,212,196,.8)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.02em}.mark{width:42px;height:42px;border:1px solid var(--gold);display:grid;place-items:center;font-family:Georgia,serif;font-size:1.2rem;background:#1c1c1a;color:#f4e6c8}.brand small{display:block;font-size:.67rem;color:var(--muted);font-weight:600;letter-spacing:.13em}.links{display:flex;align-items:center;gap:24px;font-size:.93rem;font-weight:650}.links a:hover{color:#8e6a2f}.menu{position:relative}.dropdown{display:none;position:absolute;top:100%;left:-18px;width:520px;padding:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);grid-template-columns:1fr 1fr;gap:7px}.menu:hover .dropdown{display:grid}.dropdown a{padding:7px 10px;border-radius:6px;font-weight:550}.dropdown a:hover{background:var(--cream)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#1b1b19;color:#fff;padding:12px 20px;border:1px solid #1b1b19;font-weight:750;letter-spacing:.01em;transition:.2s;cursor:pointer}.btn:hover{background:#8b672f;border-color:#8b672f}.btn.light{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}.btn.outline{background:transparent;color:var(--ink);border-color:var(--ink)}.mobile-toggle{display:none;border:0;background:none;font-size:1.55rem}.hero{min-height:610px;display:grid;align-items:end;position:relative;color:#fff;background:#27251f;overflow:hidden}.hero-media{position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(.75)}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,15,13,.82),rgba(15,15,13,.42) 55%,rgba(15,15,13,.3)),linear-gradient(0deg,rgba(10,10,9,.75),transparent 55%)}.hero-content{position:relative;z-index:2;padding:118px 0 72px;max-width:850px}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:.77rem;font-weight:800;color:#e3c997;margin-bottom:12px}.hero h1{font-family:Georgia,Times,serif;font-weight:500;font-size:clamp(2.7rem,6vw,5.3rem);line-height:1.02;margin:0 0 20px}.hero p{font-size:1.15rem;max-width:760px;color:#f0ebe2;margin:0 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.trustbar{background:#ece4d6;border-bottom:1px solid var(--line)}.trustbar .wrap{display:grid;grid-template-columns:repeat(4,1fr)}.trustbar div{padding:17px 20px;text-align:center;border-right:1px solid #d5cab6;font-size:.88rem;font-weight:750}.trustbar div:last-child{border-right:0}.section{padding:82px 0}.section.alt{background:var(--cream)}.section.dark{background:#1d1d1b;color:#eee7da}.section h2{font-family:Georgia,Times,serif;font-size:clamp(2rem,4vw,3.25rem);font-weight:500;line-height:1.12;margin:0 0 22px}.lede{font-size:1.12rem;color:var(--muted);max-width:850px}.dark .lede{color:#cfc6b8}.split{display:grid;grid-template-columns:1.03fr .97fr;gap:60px;align-items:start}.card{background:#fff;border:1px solid var(--line);padding:28px}.dark .card{background:#262622;border-color:#3a3934}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}.service-card{padding:26px;border:1px solid var(--line);background:#fff;min-height:180px;transition:.2s}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-card h3{font-family:Georgia,serif;font-size:1.35rem;margin:9px 0}.service-card p{color:var(--muted);font-size:.93rem}.num{font-size:.78rem;letter-spacing:.12em;color:#9a7131;font-weight:800}.checklist{list-style:none;padding:0;margin:24px 0}.checklist li{padding:10px 0 10px 28px;border-bottom:1px solid var(--line);position:relative}.checklist li:before{content:"✓";position:absolute;left:0;color:#a37b39;font-weight:900}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}.process .step{padding:24px;border-top:2px solid var(--gold);background:#fff;color:var(--ink)}.process .step p{color:var(--muted)}.process b{display:block;font-family:Georgia,serif;font-size:1.25rem;margin:8px 0;color:var(--ink)}.faq{max-width:920px;margin-top:30px}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-weight:760;cursor:pointer;font-size:1.04rem}.faq p{color:var(--muted);margin:12px 0 0}.cta{padding:48px;background:#1e1e1b;color:#fff;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}.cta h2{margin:0 0 8px;font-size:2.2rem}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:45px}.contact-box{background:#f0e8da;padding:32px}.contact-box strong{display:block;margin-top:16px}.form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form .full{grid-column:1/-1}.form label{display:block;font-size:.84rem;font-weight:750;margin-bottom:6px}.form input,.form select,.form textarea{width:100%;padding:13px 14px;border:1px solid #cfc5b5;background:#fff;font:inherit;border-radius:0}.form textarea{min-height:135px;resize:vertical}.footer{background:#141412;color:#cfc8bb;padding:60px 0 25px}.footer-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr .9fr;gap:35px}.footer h4{color:#fff;margin:0 0 15px}.footer a{display:block;margin:7px 0;color:#cfc8bb}.footer a:hover{color:#fff}.copyright{border-top:1px solid #34332f;margin-top:40px;padding-top:20px;font-size:.82rem;color:#958f84}.breadcrumb{font-size:.83rem;color:var(--muted);margin-bottom:22px}.note{border-left:3px solid var(--gold);padding:14px 18px;background:#f4eee3;color:#554f45}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-card{min-height:250px;position:relative;background:#39362f;overflow:hidden}.gallery-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.gallery-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent 60%)}.gallery-card span{position:absolute;left:20px;bottom:18px;z-index:2;color:#fff;font-family:Georgia,serif;font-size:1.25rem}.section img.feature{width:100%;height:470px;object-fit:cover;background:linear-gradient(135deg,#35322c,#b48b45)}.img-fallback{background:linear-gradient(135deg,#35322c,#8d6b36)!important}.local-box{background:#f0e8da;padding:28px;border:1px solid #dacdb8}.local-box h3{font-family:Georgia,serif;margin-top:0;font-size:1.5rem}.pill{display:inline-block;padding:7px 11px;border:1px solid #bda77d;margin:4px 5px 4px 0;font-size:.82rem}.mini{font-size:.86rem;color:var(--muted)}
@media(max-width:960px){.links{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:22px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.links.open{display:flex}.dropdown{display:none!important}.mobile-toggle{display:block}.split,.contact-grid{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.process{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.trustbar .wrap{grid-template-columns:1fr 1fr}.hero{min-height:560px}.cta{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.service-grid,.process,.footer-grid,.gallery-grid,.trustbar .wrap{grid-template-columns:1fr}.trustbar div{border-right:0;border-bottom:1px solid #d5cab6}.hero-content{padding:90px 0 55px}.section{padding:58px 0}.form{grid-template-columns:1fr}.form .full{grid-column:auto}.topbar .wrap{justify-content:center;text-align:center}.brand span:last-child{display:none}.cta{padding:30px}.section img.feature{height:330px}}

/* Process cards contrast fix: explicit colors inside dark sections */
.section.dark .process .step{background:#fff !important;color:#181714 !important;border-top:3px solid #b48b45 !important;}
.section.dark .process .step b{color:#181714 !important;}
.section.dark .process .step p{color:#4f4a43 !important;opacity:1 !important;}
.section.dark .process .step .num{color:#8a642b !important;opacity:1 !important;}
