:root{--bg:#0b0a08;--bg2:#141210;--panel:#1a1713;--gold:#d4a84a;--gold2:#f0d189;--line:#2e2820;--txt:#efe8d8;--mut:#a89f8d}
html{scroll-behavior:smooth;scroll-padding-top:70px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{background:var(--bg);color:var(--txt);font-family:Manrope,system-ui,sans-serif;line-height:1.65}
a{color:var(--gold);text-decoration:none}a:hover{color:var(--gold2)}
:focus-visible{outline:2px solid var(--gold2);outline-offset:2px}
.brand-serif,h1,.section-title{font-family:Fraunces,Georgia,serif;font-weight:700;letter-spacing:-.01em}
.text-muted{color:var(--mut)!important}.text-gold{color:var(--gold)}
.g9-nav{background:rgba(11,10,8,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.navbar-brand{font-family:Fraunces,serif;font-weight:700;color:var(--txt)}
.logo-mark{display:inline-block;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#111;padding:0 .5rem;border-radius:.3rem;margin-right:.3rem}
.btn-gold{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#141210;font-weight:700;border:0}
.btn-gold:hover{color:#000;filter:brightness(1.08)}
.btn-outline-gold{border:1px solid var(--gold);color:var(--gold)}.btn-outline-gold:hover{background:var(--gold);color:#111}
.hero{padding:4rem 0 3.5rem;background:radial-gradient(900px 400px at 85% -10%,rgba(212,168,74,.18),transparent),var(--bg)}
.hero h1{font-size:clamp(2.1rem,6vw,3.8rem);line-height:1.1;margin-bottom:1rem}
.hero-kicker{color:var(--gold);font-weight:700;margin-bottom:.5rem}.hero .lead{color:var(--mut);max-width:38rem}
.hero-card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:.9rem;padding:1.5rem}
.hero-card{border-color:var(--gold)}
.section{padding:4rem 0}.section.alt{background:var(--bg2);border-block:1px solid var(--line)}
.section-title{font-size:clamp(1.6rem,4vw,2.4rem);margin-bottom:.5rem}.section-sub{color:var(--mut);margin-bottom:1.5rem}
.svc{display:block;height:100%;background:var(--panel);border:1px solid var(--line);border-radius:.9rem;padding:1.4rem;color:var(--txt);transition:border-color .2s}
.svc:hover{border-color:var(--gold);color:var(--txt)}.svc i{font-size:1.8rem;color:var(--gold)}
.svc h3{margin:.6rem 0 .3rem}.svc p{color:var(--mut);margin:0;font-size:.95rem}
.form-control,.form-select{background-color:#0f0d0b;border:1px solid var(--line);color:var(--txt)}
.form-control:focus,.form-select:focus{background-color:#0f0d0b;color:var(--txt);border-color:var(--gold);box-shadow:0 0 0 .2rem rgba(212,168,74,.25)}
.form-range::-webkit-slider-thumb{background:var(--gold)}.form-range::-moz-range-thumb{background:var(--gold)}
output{float:right;color:var(--gold);font-weight:700}
.bar{height:10px;background:var(--gold);border-radius:9px;overflow:hidden}.bar span{display:block;height:100%;background:#4a4232;margin-left:auto}
.map{width:100%;height:230px;border:1px solid var(--line);border-radius:.9rem;filter:grayscale(.6) invert(.9) contrast(.9)}
.g9-footer{background:#070605;border-top:1px solid var(--line)}
.wa-float{position:fixed;right:1rem;bottom:1rem;z-index:1030;width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;font-size:1.7rem;box-shadow:0 4px 14px rgba(0,0,0,.5)}
.wa-float:hover{color:#fff;filter:brightness(1.1)}
.table-dark{--bs-table-bg:var(--panel)}
