/* Rent Browse v2.3 — "Sovereign" authority system. Loads last.
 * One action colour (emerald) on deep ink navy; brass is a hairline accent only. Serif display voice for gravitas,
 * Inter for UI. Adds: utility bar + mega-menu nav, restrained hero, stat band, spotlight cards, section rail, pointer glow.
 * No content or sample data is changed by this file. */
:root{
  --ink-950:#050b16;--ink-900:#08111f;--ink-850:#0b1829;--ink-800:#0f2036;--ink-700:#173250;--ink-600:#21476f;
  --em:#10b981;--em-bright:#34d399;--em-deep:#047857;--em-ink:#064e3b;--em-glow:rgba(52,211,153,.35);
  --brass:#c9a45c;--brass-soft:#e6cf9a;
  --paper:#f6f8fb;--paper-2:#eef2f7;--rule:#dde4ee;--text:#0b1626;--text-2:#4a5668;
  --serif:"Fraunces","Iowan Old Style","Palatino Linotype",Georgia,serif;--sans:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  --gold-soft:var(--brass-soft);--gold:var(--brass);--gold-deep:var(--em-deep);--navy-950:var(--ink-950);--navy-900:var(--ink-900);--navy-800:var(--ink-800);--navy-700:var(--ink-700);
  --ease:cubic-bezier(.22,.8,.24,1);
}
html{scroll-padding-top:110px}
body{font-family:var(--sans);color:var(--text);background:var(--paper);font-feature-settings:"cv11","ss01"}
h1,h2,h3{text-wrap:balance}
.section-head h2,.faq-wrap h2,.answer-block h2,.final-cta h2,.hero h1{font-family:var(--serif);font-weight:600;letter-spacing:-.02em}
.eyebrow{color:var(--em-deep);letter-spacing:.18em}.eyebrow.light{color:var(--em-bright)}
.text-link{color:var(--ink-700);border-bottom:1px solid var(--brass)}.text-link:hover{color:var(--em-deep);border-color:var(--em)}
a:hover{color:var(--em-deep)}
:focus-visible{outline:2px solid var(--em-bright);outline-offset:3px;border-radius:6px}

/* ---------- Utility bar ---------- */
.util-bar{background:var(--ink-950);color:rgba(255,255,255,.72);font-size:12px;border-bottom:1px solid rgba(255,255,255,.06)}
.util-inner{display:flex;justify-content:space-between;align-items:center;min-height:36px;gap:20px}
.util-facts{display:flex;gap:22px;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.util-facts li{display:flex;align-items:center;gap:8px;letter-spacing:.02em}
.util-facts li+li:before{content:"";width:3px;height:3px;border-radius:50%;background:var(--brass);margin-right:14px;opacity:.8}
.util-links{display:flex;gap:20px}.util-links a{color:rgba(255,255,255,.78)}.util-links a:hover{color:var(--em-bright)}
.live-dot{width:7px;height:7px;border-radius:50%;background:var(--em-bright);box-shadow:0 0 0 0 var(--em-glow);animation:rbpulse 2.4s infinite;display:inline-block}
@keyframes rbpulse{70%{box-shadow:0 0 0 9px rgba(52,211,153,0)}100%{box-shadow:0 0 0 0 rgba(52,211,153,0)}}

/* ---------- Header / nav ---------- */
.site-header{background:rgba(7,15,28,.95);-webkit-backdrop-filter:saturate(1.6) blur(20px);backdrop-filter:saturate(1.6) blur(20px);border-bottom:1px solid rgba(255,255,255,.07);transition:background .3s,box-shadow .3s}
.site-header:after{background:linear-gradient(90deg,transparent,var(--brass),transparent);opacity:.35}
.site-header.is-scrolled{background:rgba(5,11,22,.94);box-shadow:0 18px 50px rgba(0,0,0,.4)}
.header-inner{min-height:72px}
.site-header .brand{gap:12px}
.site-header .brand-mark{width:42px;height:42px;border-radius:12px;font-family:var(--serif);font-size:23px;background:linear-gradient(145deg,var(--ink-700),var(--ink-900));color:var(--brass-soft);box-shadow:inset 0 0 0 1px rgba(201,164,92,.65),0 8px 22px rgba(0,0,0,.4)}
.site-header .brand-mark i{background:var(--em-bright);box-shadow:0 0 10px var(--em-bright)}
.site-header .brand small{color:var(--brass-soft);letter-spacing:.28em}
.nav{gap:2px}
.nav>a:not(.button),.nav-drop-toggle{font-size:13.5px;font-weight:600;color:rgba(255,255,255,.84);padding:10px 14px;border-radius:999px;transition:color .2s,background .2s}
.nav>a:not(.button):hover,.nav-drop-toggle:hover,.nav-drop:focus-within .nav-drop-toggle,.nav-drop.is-open .nav-drop-toggle{color:#fff;background:rgba(255,255,255,.08)}
.nav>a:not(.button)[aria-current="page"],.nav-drop.is-current .nav-drop-toggle{color:var(--em-bright);background:rgba(52,211,153,.1)}
.nav>a:not(.button):after{display:none}
.nav-cta{background:linear-gradient(135deg,var(--em-bright),var(--em))!important;color:var(--ink-950)!important;box-shadow:0 8px 26px var(--em-glow),inset 0 1px 0 rgba(255,255,255,.5)!important;font-weight:800;margin-left:12px}
.nav-cta:hover{color:var(--ink-950)!important;box-shadow:0 14px 38px rgba(52,211,153,.55),inset 0 1px 0 rgba(255,255,255,.6)!important}
.menu-toggle{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.06)}.menu-toggle .menu-bars i{background:var(--em-bright)}
.scroll-progress{background:linear-gradient(90deg,var(--em),var(--em-bright),#fff);height:3px}
/* mega menu */
.nav-drop-panel{min-width:340px;padding:10px;border-radius:18px;background:linear-gradient(180deg,#0b1829,#08111f);border:1px solid rgba(201,164,92,.28);box-shadow:0 30px 80px rgba(0,0,0,.55)}
.mm-title{margin:6px 12px 8px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass-soft);font-weight:800}
.nav-drop-panel a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 12px}
.nav-drop-panel a:hover{background:rgba(52,211,153,.1);color:#fff;padding-left:12px;transform:translateX(2px)}
.mm-name{display:flex;flex-direction:column;line-height:1.25}.mm-name small{font-size:11px;font-weight:500;color:rgba(255,255,255,.52)}
.mm-tag{font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--em-bright);border:1px solid rgba(52,211,153,.35);padding:4px 8px;border-radius:999px;white-space:nowrap}
.nav-drop-panel a.mm-all{margin-top:6px;border-top:1px solid rgba(255,255,255,.08);border-radius:0 0 10px 10px;color:var(--em-bright);font-size:12.5px}
@media(max-width:1100px){.util-bar{display:none}.nav-cta{margin:14px 0 0}.nav-drop-panel{min-width:0}.mm-tag{display:none}}

/* ---------- Hero ---------- */
.hero-city{background:var(--ink-950);min-height:calc(100vh - 108px);max-height:900px}
.hero-city .hero-shade{background:linear-gradient(105deg,rgba(5,11,22,.96),rgba(5,11,22,.7) 52%,rgba(5,11,22,.25))}
.hero-city .hero-inner{grid-template-columns:minmax(0,1fr) 420px;gap:56px;padding-top:56px;padding-bottom:64px}
.hero h1{font-size:clamp(40px,4.6vw,64px);line-height:1.04;letter-spacing:-.025em;max-width:700px;margin:0 0 22px;color:#fff}
.hero h1 .hero-city-name,.hero h1 .hero-sub{display:inline;background:none;-webkit-text-fill-color:currentColor;color:#fff;font-size:inherit;letter-spacing:inherit;font-weight:600;line-height:inherit}
.hero h1 .hero-sub em{font-style:italic;font-weight:500;color:var(--em-bright)}
.hero-copy>p{color:rgba(232,240,250,.82);font-size:17.5px;max-width:600px}
.hero .eyebrow.light{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid rgba(201,164,92,.4);border-radius:999px;background:rgba(5,11,22,.5);color:var(--brass-soft);font-size:10px;letter-spacing:.16em;margin-bottom:22px}
.button-green,.hero .button-green{background:linear-gradient(135deg,var(--em-bright),var(--em));color:var(--ink-950);box-shadow:0 10px 30px var(--em-glow);font-weight:800}
.button-green:hover{color:var(--ink-950);box-shadow:0 16px 40px rgba(52,211,153,.55)}
.button-ghost{border-color:rgba(255,255,255,.4)}.button-ghost:hover{background:#fff;color:var(--ink-900)}
.hero-areas a{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff;transition:all .25s var(--ease)}
.hero-areas a:hover{background:rgba(52,211,153,.16);border-color:var(--em-bright);color:#fff;transform:translateY(-2px)}
.hero-perks span{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.05)}
/* search panel = glass instrument */
.search-panel{background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(246,248,251,.95));border-top:3px solid var(--em);border-radius:22px;box-shadow:0 40px 100px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.12)}
.search-panel .button-green{box-shadow:0 10px 26px rgba(16,185,129,.35)}
.search-panel input:focus,.search-panel select:focus{border-color:var(--em);box-shadow:0 0 0 3px rgba(16,185,129,.2);outline:0}
.seg-radio input:checked+span{background:var(--ink-900);color:#fff}

/* ---------- Marquee + stats ---------- */
.area-marquee{background:var(--ink-900);border-block:1px solid rgba(255,255,255,.06)}
.area-marquee span{color:rgba(255,255,255,.62)}
.stat-band{position:relative;background:var(--ink-900);color:#fff;overflow:hidden;border-bottom:1px solid rgba(201,164,92,.25)}
.stat-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);padding:46px 0}
.stat{padding:6px 28px;border-left:1px solid rgba(255,255,255,.1)}.stat:first-child{border-left:0;padding-left:0}
.stat b{display:block;font-family:var(--serif);font-weight:600;font-size:clamp(38px,4.4vw,58px);line-height:1;letter-spacing:-.03em;background:linear-gradient(180deg,#fff,var(--em-bright));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.stat span{display:block;margin-top:10px;font-size:12.5px;color:rgba(255,255,255,.66);max-width:210px;letter-spacing:.01em}
@media(max-width:820px){.stat-grid{grid-template-columns:1fr 1fr;row-gap:26px}.stat:nth-child(3){border-left:0;padding-left:0}}

/* ---------- Sections ---------- */
.section{padding:104px 0}
.section-soft{background:var(--paper-2)}
.section-head{margin-bottom:44px;align-items:flex-end;padding-bottom:22px;border-bottom:1px solid var(--rule);position:relative}
.section-head:after{content:"";position:absolute;left:0;bottom:-1px;width:84px;height:2px;background:linear-gradient(90deg,var(--brass),transparent)}
.section-head h2{font-size:clamp(30px,3.4vw,46px);line-height:1.08;color:var(--ink-900)}
.section-head p{max-width:640px;color:var(--text-2)}
.visitor-guides .section-head,.how-it-works .section-head{border-color:rgba(255,255,255,.14)}
.visitor-guides .section-head h2,.how-it-works .section-head h2{color:#fff}
.visitor-guides .section-head p,.how-it-works .section-head p{color:rgba(255,255,255,.7)}
.visitor-guides,.how-it-works,.final-cta{background:var(--ink-900);color:#fff}
.location-card{border-radius:20px;box-shadow:0 18px 50px rgba(5,11,22,.18);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.location-card:hover{transform:translateY(-6px);box-shadow:0 34px 80px rgba(5,11,22,.34)}
.location-card:after{background:linear-gradient(0deg,rgba(5,11,22,.9),rgba(5,11,22,.15) 62%)}
.location-overlay small{color:var(--em-bright)}.location-overlay strong{font-family:var(--serif);font-weight:600}
.location-num{font-family:var(--serif)}
.property-card,.feature-card,.tourist-card,.split-card,.faq-list details{position:relative;isolation:isolate}
.property-card{border-radius:18px;border:1px solid var(--rule);background:#fff;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s}
.property-card:hover{border-color:rgba(16,185,129,.5);box-shadow:0 26px 60px rgba(5,11,22,.16)}
.property-location,.property-bottom a,.text-link{color:var(--em-deep)}
.image-badge-furnished{background:var(--em)!important;color:var(--ink-950)!important}
.split-card{background:linear-gradient(135deg,var(--ink-800),var(--ink-900));border:1px solid rgba(201,164,92,.3);border-radius:18px;color:#fff;transition:transform .3s var(--ease),border-color .3s}
.split-card:hover{transform:translateY(-3px);border-color:var(--em-bright);color:#fff}
.feature-card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.12);border-radius:20px;transition:transform .35s var(--ease),border-color .35s,background .35s}
.feature-card:hover{background:rgba(255,255,255,.08);border-color:rgba(52,211,153,.5)}
.feature-num{font-family:var(--serif);color:var(--em-bright)}
.tourist-card{border-radius:20px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04)}
.tourist-card:hover{border-color:rgba(52,211,153,.45)}
.tourist-tag,.tourist-card .text-link{color:var(--em-bright)}
.answer-block h2{font-size:clamp(26px,2.8vw,38px)}
.faq-list details{border:1px solid var(--rule);border-radius:14px;background:#fff;padding:2px 20px;margin-bottom:10px;transition:border-color .25s,box-shadow .25s}
.faq-list details[open]{border-color:var(--em);box-shadow:0 14px 40px rgba(16,185,129,.12)}
.faq-list summary{font-weight:650;padding:16px 0;cursor:pointer}
.final-cta{position:relative;overflow:hidden;text-align:center}
.final-cta h2{font-size:clamp(34px,4.4vw,58px);color:#fff}
.button-light{background:linear-gradient(135deg,var(--em-bright),var(--em));color:var(--ink-950);font-weight:800}
.site-footer{background:var(--ink-950);border-top:1px solid rgba(201,164,92,.3)}
.site-footer a:hover{color:var(--em-bright)}
.whatsapp-float{background:linear-gradient(135deg,var(--em-bright),var(--em));color:var(--ink-950);box-shadow:0 12px 34px var(--em-glow)}

/* ---------- Interactive layer ---------- */
/* pointer spotlight inside each card/section (vars set by sovereign.js) */
.property-card:before,.feature-card:before,.tourist-card:before,.split-card:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;opacity:0;transition:opacity .3s;background:radial-gradient(340px circle at var(--mx,50%) var(--my,50%),rgba(52,211,153,.16),transparent 60%);pointer-events:none}
.property-card:hover:before,.feature-card:hover:before,.tourist-card:hover:before,.split-card:hover:before{opacity:1}
.has-spot{--mx:50%;--my:50%}
.stat-band:before,.hero-city:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(520px circle at var(--mx,70%) var(--my,30%),rgba(52,211,153,.12),transparent 60%);transition:background .2s}
.section-rail{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:60;display:flex;flex-direction:column;gap:14px;opacity:0;pointer-events:none;transition:opacity .4s}
.section-rail.is-on{opacity:1;pointer-events:auto}
.section-rail a{position:relative;width:11px;height:11px;border-radius:50%;border:1.5px solid var(--ink-600);background:rgba(246,248,251,.85);box-shadow:0 0 0 3px rgba(5,11,22,.12);transition:all .3s var(--ease)}
.section-rail a:hover,.section-rail a.is-active{background:var(--em);border-color:var(--em);transform:scale(1.35)}
.section-rail a span{position:absolute;right:22px;top:50%;transform:translateY(-50%) translateX(6px);background:var(--ink-900);color:#fff;font-size:11px;font-weight:650;padding:5px 10px;border-radius:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:all .25s}
.section-rail a:hover span,.section-rail a:focus-visible span{opacity:1;transform:translateY(-50%)}
@media(max-width:1000px){.section-rail{display:none}.hero-city .hero-inner{grid-template-columns:1fr}.hero-city{max-height:none}}
@media(max-width:700px){.section{padding:72px 0}.hero h1{font-size:clamp(34px,9vw,44px)}}
@media(prefers-reduced-motion:reduce){.live-dot{animation:none}}

/* hero polish: fade skyline under the content, keep pills legible */
.hero-city .hero-inner{z-index:3}
.hero-city:after{content:"";position:absolute;left:0;right:0;bottom:0;height:46%;z-index:2;pointer-events:none;background:linear-gradient(0deg,rgba(5,11,22,.92),rgba(5,11,22,.55) 55%,transparent)}
.hero-perks span{background:rgba(5,11,22,.55);backdrop-filter:blur(6px)}
.hero .eyebrow.light{max-width:100%;white-space:normal;line-height:1.5}

/* Quick answers accordion */
.geo-quick{max-width:980px;margin:0 auto;padding:64px 22px}
.geo-quick>h2{font-family:var(--serif);font-size:clamp(26px,3vw,38px);margin:0 0 22px;color:var(--ink-900)}
.geo-qa{border:1px solid var(--rule);border-radius:14px;background:#fff;margin-bottom:10px;transition:border-color .25s,box-shadow .25s}
.geo-qa[open]{border-color:var(--em);box-shadow:0 14px 40px rgba(16,185,129,.12)}
.geo-qa summary{list-style:none;cursor:pointer;padding:16px 52px 16px 20px;position:relative}
.geo-qa summary::-webkit-details-marker{display:none}
.geo-qa summary h3{margin:0;font-size:16px;font-weight:650;letter-spacing:0}
.geo-qa summary:after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--em-deep);transition:transform .25s}
.geo-qa[open] summary:after{transform:translateY(-50%) rotate(45deg)}
.geo-qa .geo-snippet{margin:0;padding:0 20px 18px;color:var(--text-2)}
/* CTA buttons: single emerald action colour */
.final-cta .button-light,.button-light{background:linear-gradient(135deg,var(--em-bright),var(--em))!important;color:var(--ink-950)!important}
