/* Falcon-Wings Real Estate Group — black & minimalist gold */
:root{
  --black:#0a0a0a;
  --black2:#111111;
  --card:#161616;
  --gold:#c9a24b;
  --gold-light:#e8c877;
  --gold-dark:#9a7a2e;
  --text:#e9e4d8;
  --muted:#9c968a;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Montserrat',Helvetica,Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--black);color:var(--text);font-family:var(--sans);font-weight:300;line-height:1.7;font-size:16px}
img{max-width:100%;display:block}
a{color:var(--gold);text-decoration:none;transition:color .25s}
a:hover{color:var(--gold-light)}
.container{max-width:1180px;margin:0 auto;padding:0 24px}

/* gradient gold text */
.goldtxt{background:linear-gradient(135deg,var(--gold-light) 0%,var(--gold) 45%,var(--gold-dark) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}

/* NAV */
nav{position:sticky;top:0;z-index:100;background:rgba(10,10,10,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(201,162,75,.25)}
.navin{max-width:1180px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between}
.navlogo{display:flex;align-items:center;gap:12px}
.navlogo img{height:52px;width:auto}
.navlinks{display:flex;gap:34px;align-items:center}
.navlinks a{color:var(--text);font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:400;padding:6px 0;border-bottom:1px solid transparent}
.navlinks a:hover,.navlinks a.active{color:var(--gold-light);border-bottom:1px solid var(--gold)}
.navlinks a.cta{border:1px solid var(--gold);padding:10px 22px;color:var(--gold)}
.navlinks a.cta:hover{background:var(--gold);color:var(--black)}
#menu-toggle{display:none;background:none;border:1px solid var(--gold);color:var(--gold);font-size:20px;padding:4px 12px;cursor:pointer}

/* HERO */
.hero{min-height:88vh;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;background:radial-gradient(ellipse at 50% 30%,#1a1608 0%,var(--black) 65%)}
.hero .inner{padding:70px 24px}
.hero img.mark{height:190px;margin:0 auto 34px;filter:drop-shadow(0 0 30px rgba(201,162,75,.25))}
h1{font-family:var(--serif);font-weight:500;font-size:clamp(38px,6vw,68px);letter-spacing:.06em;line-height:1.15}
.hero p.tag{margin-top:22px;font-size:13px;letter-spacing:.35em;text-transform:uppercase;color:var(--muted)}
.hero .btns{margin-top:44px;display:flex;gap:18px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-block;padding:15px 38px;border:1px solid var(--gold);color:var(--gold);font-size:12px;letter-spacing:.25em;text-transform:uppercase;transition:all .3s}
.btn:hover{background:var(--gold);color:var(--black)}
.btn.solid{background:var(--gold);color:var(--black)}
.btn.solid:hover{background:var(--gold-light);border-color:var(--gold-light)}

/* SECTIONS */
section{padding:90px 0}
.kicker{font-size:11px;letter-spacing:.4em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
h2{font-family:var(--serif);font-weight:500;font-size:clamp(30px,4vw,46px);letter-spacing:.04em;margin-bottom:22px}
h3{font-family:var(--serif);font-weight:600;font-size:24px;letter-spacing:.03em}
.lead{max-width:760px;color:var(--muted);font-size:17px}
.rule{width:70px;height:1px;background:linear-gradient(90deg,var(--gold),transparent);margin:28px 0}
.center{text-align:center}
.center .rule{margin:28px auto}

/* CARD GRIDS */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:56px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:56px}
.card{background:var(--card);border:1px solid rgba(201,162,75,.18);transition:border-color .3s,transform .3s;display:flex;flex-direction:column}
.card:hover{border-color:rgba(201,162,75,.55);transform:translateY(-4px)}
.card .ph{aspect-ratio:16/10;overflow:hidden}
.card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.card:hover .ph img{transform:scale(1.05)}
.card .body{padding:28px;flex:1;display:flex;flex-direction:column}
.card .body p{color:var(--muted);font-size:14.5px;margin:14px 0 20px;flex:1}
.card .meta{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-top:4px}
.card .go{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.badge{display:inline-block;font-size:10px;letter-spacing:.2em;text-transform:uppercase;border:1px solid rgba(201,162,75,.5);color:var(--gold);padding:4px 12px;margin-bottom:14px}

/* STATS */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:60px;text-align:center}
.stats .num{font-family:var(--serif);font-size:46px;font-weight:500}
.stats .lbl{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);margin-top:6px}

/* DARK ALT BAND */
.band{background:var(--black2);border-top:1px solid rgba(201,162,75,.15);border-bottom:1px solid rgba(201,162,75,.15)}

/* A-to-Z timeline */
.steps{margin-top:60px;display:grid;gap:0}
.step{display:grid;grid-template-columns:110px 1fr;gap:30px;padding:38px 0;border-bottom:1px solid rgba(201,162,75,.15)}
.step:last-child{border-bottom:none}
.step .n{font-family:var(--serif);font-size:54px;color:var(--gold);opacity:.85;line-height:1}
.step p{color:var(--muted);margin-top:10px;max-width:720px}

/* LISTINGS */
.listing .ratingline{font-size:13px;color:var(--gold-light);letter-spacing:.05em;margin-top:8px}
.listing .specs{font-size:13px;color:var(--muted);letter-spacing:.08em;margin-top:4px}

/* CONTACT */
.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:56px}
form label{display:block;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);margin:22px 0 8px}
form input,form select,form textarea{width:100%;background:var(--card);border:1px solid rgba(201,162,75,.25);color:var(--text);padding:14px 16px;font-family:var(--sans);font-size:15px;outline:none;transition:border-color .3s}
form input:focus,form select:focus,form textarea:focus{border-color:var(--gold)}
form button{margin-top:30px;cursor:pointer;background:var(--gold);border:1px solid var(--gold);color:var(--black);padding:16px 44px;font-size:12px;letter-spacing:.25em;text-transform:uppercase;font-weight:500;transition:background .3s}
form button:hover{background:var(--gold-light)}
.cinfo .item{padding:26px 0;border-bottom:1px solid rgba(201,162,75,.15)}
.cinfo .item .lbl{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.cinfo .item a{font-family:var(--serif);font-size:22px}

/* FOOTER */
footer{border-top:1px solid rgba(201,162,75,.2);padding:60px 0 40px;background:var(--black2)}
.fin{max-width:1180px;margin:0 auto;padding:0 24px;display:flex;flex-wrap:wrap;gap:40px;justify-content:space-between;align-items:center}
footer img{height:70px}
footer .flinks{display:flex;gap:26px;flex-wrap:wrap}
footer .flinks a{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
footer .flinks a:hover{color:var(--gold)}
footer .copy{width:100%;text-align:center;font-size:12px;color:#6b665c;margin-top:34px;letter-spacing:.08em}

/* PAGE HERO (inner pages) */
.pagehero{padding:110px 0 70px;text-align:center;background:radial-gradient(ellipse at 50% 0%,#1a1608 0%,var(--black) 70%)}

/* WhatsApp float */
.wa-float{position:fixed;bottom:26px;right:26px;z-index:90;width:56px;height:56px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px rgba(0,0,0,.5);transition:transform .2s}
.wa-float:hover{transform:scale(1.08)}
.wa-float svg{width:30px;height:30px;fill:var(--black)}

@media(max-width:920px){
  .grid3{grid-template-columns:1fr}
  .grid2{grid-template-columns:1fr}
  .contactgrid{grid-template-columns:1fr}
  .stats{grid-template-columns:repeat(2,1fr)}
  .navlinks{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(10,10,10,.98);flex-direction:column;gap:0;padding:10px 0;border-bottom:1px solid rgba(201,162,75,.3)}
  .navlinks.open{display:flex}
  .navlinks a{padding:14px 24px;width:100%;text-align:center;border-bottom:none}
  .navlinks a.cta{border:none;color:var(--gold)}
  #menu-toggle{display:block}
  .step{grid-template-columns:70px 1fr;gap:18px}
  .step .n{font-size:38px}
}

/* Booking inquiry modal */
.bk-btn{display:block;margin-top:12px;background:var(--gold);color:var(--black);border:none;padding:12px 20px;font-family:var(--sans);font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;cursor:pointer;width:100%;transition:background .3s}
.bk-btn:hover{background:var(--gold-light)}
.bk-overlay{display:flex;position:fixed;inset:0;background:rgba(0,0,0,.8);z-index:200;align-items:center;justify-content:center;padding:20px}
.bk-modal{background:var(--black2);border:1px solid rgba(201,162,75,.4);max-width:520px;width:100%;max-height:92vh;overflow-y:auto;padding:36px;position:relative}
.bk-close{position:absolute;top:14px;right:18px;background:none;border:none;color:var(--gold);font-size:30px;cursor:pointer;line-height:1}
.bk-dates{display:grid;grid-template-columns:1fr 1fr 80px;gap:12px}
.bk-dates label,.bk-modal form label{display:block;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:14px 0 6px}
.bk-dates input,.bk-modal form input,.bk-modal form textarea{width:100%;background:var(--card);border:1px solid rgba(201,162,75,.25);color:var(--text);padding:11px 12px;font-family:var(--sans);font-size:14px;outline:none;color-scheme:dark}
.bk-check{margin-top:20px;width:100%;background:var(--gold);border:none;color:var(--black);padding:14px;font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;cursor:pointer}
.bk-check:hover{background:var(--gold-light)}
.bk-good{color:#8fce8f;margin:18px 0 4px;font-size:14.5px}
.bk-bad{color:#d99a9a;margin:18px 0 4px;font-size:14.5px}
.bk-wait{color:var(--muted);margin:18px 0 4px;font-size:14.5px}
.bk-modal form button[type=submit]{margin-top:20px;width:100%;background:var(--gold);border:none;color:var(--black);padding:14px;font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;cursor:pointer}
.bk-alt{display:block;text-align:center;margin-top:14px;font-size:12px;letter-spacing:.15em;text-transform:uppercase}

/* ============================================================
   JERUSALEM STONE THEME — brand guide v1 (overrides base theme)
   Stone pages · graphite hero/footer/bands · gold accents
   ============================================================ */
:root{
  --black:#F5F1E8;        /* page background: Jerusalem Stone */
  --black2:#ECE6D8;       /* alt band on light */
  --card:#FFFFFF;
  --gold:#9A7A2E;         /* deep gold reads on light */
  --gold-light:#C9A24B;
  --gold-dark:#7A5F20;
  --text:#2A2722;         /* Ink */
  --muted:#7A7264;
  --graphite:#23201B;
  --graphite-2:#2E2A24;
  --stone-border:#E0D8C6;
}
body{background:#F5F1E8}
/* NAV — light */
nav{background:rgba(245,241,232,.94);border-bottom:1px solid var(--stone-border)}
.navlinks a{color:var(--text)}
.navlinks a:hover,.navlinks a.active{color:var(--gold);border-bottom-color:var(--gold)}
.navlinks a.cta{border-color:var(--gold);color:var(--gold)}
.navlinks a.cta:hover{background:var(--gold);color:#fff}
#menu-toggle{border-color:var(--gold);color:var(--gold)}
@media(max-width:920px){.navlinks{background:rgba(245,241,232,.98);border-bottom:1px solid var(--stone-border)}}
/* DARK ZONES — hero, page heroes, bands, footer stay graphite */
.hero,.pagehero{background:radial-gradient(ellipse at 50% 20%,#2E2A24 0%,#23201B 70%);color:#EDE7DA}
.hero h1,.pagehero h1{color:#EDE7DA}
.hero p.tag{color:#B9B09E}
.pagehero .lead{color:#B9B09E}
.hero .kicker,.pagehero .kicker,.band .kicker{color:#C9A24B}
.hero .goldtxt,.pagehero .goldtxt,.band .goldtxt{background:linear-gradient(135deg,#E8C877 0%,#C9A24B 45%,#B08A35 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.pagehero .stats .lbl{color:#B9B09E}
.band{background:#23201B;border:none;color:#EDE7DA}
.band h2,.band h3{color:#EDE7DA}
.band .lead,.band .lbl{color:#B9B09E}
footer{background:#23201B;border-top:none}
footer .flinks a{color:#B9B09E}
footer .flinks a:hover{color:#C9A24B}
footer .copy{color:#8A8272}
/* BUTTONS */
.btn{border-color:var(--gold);color:var(--gold)}
.btn:hover{background:var(--gold);color:#fff}
.btn.solid{background:#23201B;border-color:#23201B;color:#C9A24B}
.btn.solid:hover{background:#3A362F;border-color:#3A362F;color:#E8C877}
.hero .btn,.pagehero .btn,.band .btn{border-color:#C9A24B;color:#C9A24B}
.hero .btn:hover,.pagehero .btn:hover,.band .btn:hover{background:#C9A24B;color:#23201B}
.hero .btn.solid,.pagehero .btn.solid,.band .btn.solid{background:#C9A24B;border-color:#C9A24B;color:#23201B}
.hero .btn.solid:hover,.pagehero .btn.solid:hover,.band .btn.solid:hover{background:#E8C877;border-color:#E8C877}
/* CARDS on light */
.card{border:1px solid var(--stone-border);box-shadow:0 2px 16px rgba(35,32,27,.07)}
.card:hover{border-color:var(--gold-light)}
.card .goldtxt{background:linear-gradient(135deg,#B08A35,#9A7A2E 60%,#7A5F20);-webkit-background-clip:text;background-clip:text;color:transparent}
.badge{border-color:var(--gold-light);color:var(--gold)}
.listing .ratingline{color:var(--gold)}
/* RULES & STEPS */
.rule{background:linear-gradient(90deg,#C9A24B,transparent)}
.step{border-bottom:1px solid var(--stone-border)}
.step .n{color:var(--gold-light)}
/* FORMS on light */
form input,form select,form textarea{background:#fff;border:1px solid var(--stone-border);color:var(--text)}
form input:focus,form select:focus,form textarea:focus{border-color:var(--gold-light)}
form button{background:#23201B;border-color:#23201B;color:#C9A24B}
form button:hover{background:#3A362F;color:#E8C877}
.cinfo .item{border-bottom:1px solid var(--stone-border)}
/* PROPERTIES page */
.deal{border:1px solid var(--stone-border);box-shadow:0 2px 16px rgba(35,32,27,.07)}
.deal .info ul li{border-bottom:1px solid #EFE9DC}
/* BOOKING modal — light theme */
.bk-modal{background:#FBF8F1;border:1px solid var(--stone-border);box-shadow:0 10px 40px rgba(35,32,27,.25)}
.bk-dates input,.bk-modal form input,.bk-modal form textarea{background:#fff;border:1px solid var(--stone-border);color-scheme:light}
.bk-btn{background:#23201B;color:#C9A24B}
.bk-btn:hover{background:#3A362F;color:#E8C877}
.bk-check,.bk-modal form button[type=submit]{background:#23201B;color:#C9A24B}
.bk-check:hover,.bk-modal form button[type=submit]:hover{background:#3A362F}
.bk-good{color:#4A6B42}
.bk-bad{color:#A04A3E}
.bk-close{color:var(--gold)}
/* WhatsApp float */
.wa-float{background:#23201B}
.wa-float svg{fill:#C9A24B}

/* Live availability calendar */
.bk-wide{max-width:640px}
.bk-legend{display:flex;gap:20px;font-size:12px;color:var(--muted);margin:10px 0 6px}
.bk-legend span{display:flex;align-items:center;gap:6px}
.bk-dot{width:12px;height:12px;border-radius:3px;display:inline-block}
.bk-dot-free{background:#fff;border:1px solid var(--stone-border)}
.bk-dot-busy{background:#E4DCCB;position:relative}
.bk-dot-sel{background:#C9A24B}
.bk-calnav{display:flex;justify-content:space-between;margin:8px 0 2px}
.bk-arrow{background:none;border:1px solid var(--stone-border);color:var(--gold);width:34px;height:34px;font-size:20px;cursor:pointer;line-height:1}
.bk-arrow:hover{border-color:var(--gold)}
.bk-cals{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.bk-month{min-width:0}
.bk-mname{font-family:var(--serif);font-size:18px;text-align:center;margin-bottom:8px}
.bk-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.bk-dow{font-size:10px;letter-spacing:.1em;color:var(--muted);text-align:center;padding:4px 0}
.bk-day{font-size:12.5px;text-align:center;padding:7px 0;border-radius:4px;user-select:none}
.bk-free{background:#fff;border:1px solid #EFE9DC;color:var(--text);cursor:pointer}
.bk-free:hover{border-color:var(--gold-light);color:var(--gold)}
.bk-busy{background:#E4DCCB;color:#A79C86;text-decoration:line-through;cursor:not-allowed}
.bk-past{color:#C9C2B2;cursor:default}
.bk-inrange{background:#F0E3C4;border-color:#E4D2A4;color:#6b5619}
.bk-sel{background:#C9A24B !important;border-color:#C9A24B !important;color:#23201B !important;font-weight:500}
.bk-hint{font-size:13px;color:var(--muted);margin-top:12px}
.bk-frow{display:flex;gap:12px}
@media(max-width:620px){.bk-cals{grid-template-columns:1fr}.bk-frow{flex-direction:column;gap:0}.bk-frow div{width:100% !important}}
