:root{--gold:#d4af37;--navy:#070b12;--ink:#0b1220;--cream:#f3ead6;--muted:#b7c0c8;}
html{scroll-behavior:smooth}
body.home-restyle{background:var(--ink);color:var(--cream);margin:0;font-family:Inter,sans-serif}
.preloader{position:fixed;inset:0;z-index:200;background:#070b12;display:flex;align-items:center;justify-content:center;transition:opacity .6s}
.preloader.done{opacity:0;pointer-events:none}
.preloader-inner{text-align:center}
.preloader-mark{font-family:"Cormorant Garamond",Georgia,serif;font-size:42px;color:var(--gold)}
.preloader-line{display:block;width:80px;height:2px;background:#2a3548;margin:12px auto;overflow:hidden}
.preloader-line i{display:block;height:100%;width:40%;background:var(--gold);animation:load 1s infinite}
@keyframes load{from{transform:translateX(-100%)}to{transform:translateX(250%)}}
.cursor-dot,.cursor-ring{position:fixed;left:0;top:0;pointer-events:none;z-index:190;border-radius:50%}
.cursor-dot{width:8px;height:8px;background:var(--gold)}
.cursor-ring{width:40px;height:40px;border:1px solid var(--gold);transition:transform .15s}
.overlay-menu{position:fixed;inset:0;z-index:120;background:rgba(7,11,18,.97);display:flex;flex-direction:column;justify-content:center;padding:8vh 8vw;opacity:0;pointer-events:none;transition:opacity .35s}
.overlay-menu.is-open,.overlay-menu.open{opacity:1;pointer-events:auto}
.ov-link{display:flex;gap:16px;color:var(--cream);text-decoration:none;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(28px,6vw,52px);margin:8px 0}
.ov-num{color:var(--gold);font-size:14px}
.ov-auth{margin-top:24px;display:flex;gap:12px}
.ov-auth a{color:var(--cream)}
.site-header{position:absolute;left:0;right:0;top:0;z-index:40}
.header-inner{display:flex;justify-content:space-between;align-items:center;padding:16px 24px}
.logo{display:flex;align-items:center;gap:8px;color:var(--cream);text-decoration:none;font-weight:700}
.logo-mark{height:36px}
.nav-auth a,.nav-agent{margin-left:10px;color:var(--cream);text-decoration:none}
.btn{display:inline-block;border-radius:999px;padding:10px 16px;text-decoration:none;font-weight:600}
.btn-gold{background:var(--gold);color:#0b1220}
.btn-ghost,.btn-outline{border:1px solid #e8d7a2;color:var(--cream)}
.welcome-hero,.hero{position:relative;min-height:92vh;overflow:hidden}
.hero-slides,.hero-bg{position:absolute;inset:0}
.hero-slide,.hero-layer{position:absolute;inset:0;background:#0b1220 center/cover no-repeat;opacity:0;transition:opacity 1.1s}
.hero-slide.is-on,.hero-layer.is-on{opacity:1}
.welcome-hero-inner,.hero-inner{position:relative;z-index:2;min-height:92vh;display:flex;flex-direction:column;justify-content:flex-end;padding:80px 8vw 48px;background:linear-gradient(180deg,rgba(7,11,18,.2),rgba(7,11,18,.82))}
.hero-title,.welcome-copy h1{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:clamp(40px,8vw,84px);line-height:1.05;margin:0 0 12px}
.gold-text,em{color:var(--gold);font-style:italic}
.hero-sub,.welcome-copy p{max-width:32em;color:#e8d7a2}
.hero-index{letter-spacing:.2em;margin-top:16px;font-size:12px;color:var(--gold)}
.marquee{overflow:hidden;background:#d4af37;color:#0b1220;white-space:nowrap}
.marquee-track{display:inline-flex;gap:28px;padding:10px 0;animation:tick 40s linear infinite}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.trust,.how,.hoods,.owners,.contact,main{background:var(--ink);padding:48px 24px}
.section-title{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(28px,5vw,48px);font-weight:500}
.kicker{letter-spacing:.16em;text-transform:uppercase;font-size:12px;color:var(--gold)}
.trust-grid,.how-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.trust-item,.how-step,.effort-card,.contact-card{background:#141c2b;border:1px solid #2a3548;border-radius:16px;padding:18px}
.listings-grid .card{background:#141c2b!important;border:1px solid #2a3548!important;color:var(--cream)}
.site-footer{background:#070b12;color:#b7c0c8;padding:36px 24px 70px}
.menu-toggle{background:none;border:0;color:var(--cream);font-size:22px;cursor:pointer}
@media (pointer:coarse){.cursor-dot,.cursor-ring{display:none!important}}
.admin-page .dashboard{color:#f3ead6}
.admin-page .stat-card,.admin-page .listing-row{background:#141c2b!important;border-color:#2a3548!important;color:#f3ead6}
.admin-page .stat-card .label{color:#b7c0c8}
.admin-page header,.admin-page .dash-header h1{color:#f3ead6}
.preloader-text{display:block;margin-top:10px;letter-spacing:.2em;font-size:12px;color:#e8d7a2}
