/* =====================================================================
   AJ GLOBAL REALTY — Design System v5
   Confident. Bold type. Real photography. Gold as a rare accent only.
   ===================================================================== */
:root{
  --ink:#0e0e0d;
  --paper:#faf8f3;
  --paper-2:#f1ede3;
  --line:#dcd5c6;
  --grey:#6b6459;
  --white:#ffffff;
  --gold:#a8823f;
  --sans:'Archivo', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --serif:'Fraunces', Georgia, serif;
  --maxw:1400px;
  --gutter:56px;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--sans); background:var(--paper); color:var(--ink);
  -webkit-font-smoothing:antialiased; overflow-x:hidden; line-height:1.6; font-weight:400; font-size:16px;
}
img{max-width:100%; display:block;}
a{color:inherit; text-decoration:none;}
.wrap{max-width:var(--maxw); margin:0 auto; padding:0 var(--gutter);}
@media (max-width:760px){ :root{--gutter:22px;} }
h1,h2,h3{font-weight:700; letter-spacing:-.02em; line-height:1.02;}
p{max-width:62ch;}
.eyebrow{font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--grey); font-weight:700;}
.eyebrow.on-photo{color:rgba(255,255,255,.75);}
.eyebrow .g{color:var(--gold);}

/* ---------- TICKER (Buy/Sell/Rent/Invest) ---------- */
.ticker{width:100vw; position:relative; left:50%; right:50%; margin-left:-50vw; margin-right:-50vw; overflow:hidden; background:var(--ink); border-top:1px solid rgba(250,248,243,.14); border-bottom:1px solid rgba(250,248,243,.14);}
.ticker-track{display:flex; width:max-content; animation:tickerScroll 16s linear infinite;}
.ticker:hover .ticker-track{animation-play-state:paused;}
.ticker-seg{display:flex; align-items:center; white-space:nowrap; padding:18px 0;}
.ticker-seg span{font-size:13px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--paper); padding:0 18px;}
.ticker-seg .sep{color:var(--gold); font-size:11px; padding:0;}
@keyframes tickerScroll{ from{transform:translateX(0);} to{transform:translateX(-50%);} }
@media (max-width:760px){ .ticker-seg{padding:13px 0;} .ticker-seg span{font-size:11px; letter-spacing:.1em; padding:0 12px;} }
@media (prefers-reduced-motion: reduce){ .ticker-track{animation:none;} }

/* ---------- HEADER ---------- */
header{position:fixed; top:0; left:0; right:0; z-index:100; padding:24px 0; transition:background .4s ease, padding .3s ease, border-color .3s ease;}
header::before{content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg, rgba(10,10,9,.6) 0%, rgba(10,10,9,0) 100%); opacity:1; transition:opacity .3s ease;}
header.solid{background:rgba(250,248,243,.97); backdrop-filter:blur(10px); padding:14px 0; border-bottom:1px solid var(--line);}
header.solid::before{opacity:0;}
.hdr-wrap{display:flex; align-items:center; justify-content:space-between; gap:28px;}
.brandmark{display:flex; align-items:center;}
.brandmark img{height:64px; width:auto; transition:height .3s ease;}
header.solid .brandmark img{height:52px;}
@media (max-width:760px){ .brandmark img{height:48px;} header.solid .brandmark img{height:40px;} }
.brandmark .logo-dark{display:none;} .brandmark .logo-light{display:block;}
.hero-hdr .brandmark .logo-dark{display:block;} .hero-hdr .brandmark .logo-light{display:none;}
header.solid .brandmark .logo-dark{display:none;} header.solid .brandmark .logo-light{display:block;}

nav.primary{display:flex; align-items:center; gap:38px;}
nav.primary a.navlink{font-size:15px; letter-spacing:.1em; text-transform:uppercase; font-weight:800; position:relative; padding-bottom:3px;}
nav.primary a.navlink.active{color:var(--gold);}
nav.primary a.navlink::after{content:''; position:absolute; left:0; right:100%; bottom:-2px; height:3px; background:var(--gold); transition:right .25s ease;}
nav.primary a.navlink:hover::after{right:0;}

.btn{display:inline-flex; align-items:center; font-size:13px; letter-spacing:.04em; text-transform:uppercase; font-weight:700; padding:15px 28px; border:2px solid var(--ink); cursor:pointer; background:none; transition:all .25s ease; white-space:nowrap;}
.btn-solid{background:var(--ink); color:var(--paper); border-color:var(--ink);}
.btn-solid:hover{background:var(--gold); color:var(--ink); border-color:var(--gold);}
.btn-invert{background:var(--paper); color:var(--ink); border-color:var(--paper);}
.btn-invert:hover{background:var(--ink); color:var(--paper); border-color:var(--ink);}
.btn-line-white{color:#fff; border-color:rgba(255,255,255,.7);}
.btn-line-white:hover{background:#fff; color:var(--ink);}
.btn-sm{padding:11px 20px; font-size:12px;}

.hamburger{display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:6px; z-index:200;}
@media (max-width:900px){
  nav.primary{display:none;}
  .hamburger{display:flex;}
}
.hamburger span{width:22px; height:2px; background:#fff;}
.hero-hdr .hamburger span{background:var(--ink);}
header.solid .hamburger span{background:var(--ink);}
.hamburger.open span{background:var(--ink) !important;}
.mobile-nav{position:fixed; inset:0; background:var(--ink); z-index:150; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:18px; padding:0 30px; transform:translateY(-100%); transition:transform .4s cubic-bezier(.7,0,.2,1);}
.mobile-nav.open{transform:translateY(0);}
.mobile-nav a{font-size:30px; font-weight:700; color:var(--paper);}
.mobile-nav a.active{color:var(--gold);}
.mobile-nav .mob-cta{margin-top:14px;}
.mobile-nav .mob-contact{margin-top:24px; font-size:13px; color:rgba(250,248,243,.5);}
.mobile-nav .mob-contact a{display:block; margin-top:8px; font-size:16px; font-weight:600; color:rgba(250,248,243,.9);}

/* ---------- HERO (real photo) ---------- */
.hero{position:relative; min-height:92vh; display:flex; flex-direction:column; justify-content:flex-end; color:#fff; background-size:cover; background-position:center; padding:150px 0 70px;}
.hero::after{content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(10,10,9,.15) 0%, rgba(10,10,9,.4) 55%, rgba(10,10,9,.86) 100%);}
.hero .wrap{position:relative; z-index:2;}
.hero h1{font-family:var(--serif); font-style:italic; font-weight:500; font-size:clamp(42px,7vw,104px); line-height:1.0; letter-spacing:-.01em;}
.hero .hero-lead{margin-top:22px; font-size:18px; color:rgba(255,255,255,.82); max-width:46ch; font-weight:500;}
.hero-ctas{display:flex; gap:14px; margin-top:34px; flex-wrap:wrap;}

/* ---------- PAGE HERO (photo, shorter) ---------- */
.pagehero{position:relative; min-height:52vh; display:flex; align-items:flex-end; color:#fff; background-size:cover; background-position:center; padding:170px 0 70px;}
.pagehero::after{content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(10,10,9,.2) 0%, rgba(10,10,9,.45) 60%, rgba(10,10,9,.88) 100%);}
.pagehero .wrap{position:relative; z-index:2;}
.pagehero .crumb{font-size:12px; font-weight:600; color:rgba(255,255,255,.6); margin-bottom:16px;}
.pagehero .crumb a{color:rgba(255,255,255,.85);}
.pagehero h1{font-family:var(--serif); font-style:italic; font-weight:500; font-size:clamp(34px,5.4vw,64px); max-width:16ch; letter-spacing:-.01em;}
.pagehero p.lead{margin-top:16px; font-size:16px; color:rgba(255,255,255,.8); max-width:52ch; font-weight:500;}

/* ---------- QUICK-PATH STRIP ---------- */
.quickpath{background:var(--ink); color:var(--paper); padding:0;}
.qp-inner{display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; padding:36px var(--gutter); max-width:var(--maxw); margin:0 auto;}
.qp-inner p{font-size:17px; font-weight:600; max-width:36ch; color:rgba(250,248,243,.9);}
.qp-chips{display:flex; gap:10px; flex-wrap:wrap;}
.qp-chips a{font-size:13px; font-weight:700; padding:11px 20px; border:2px solid rgba(250,248,243,.3); transition:all .2s ease;}
.qp-chips a:hover{border-color:var(--gold); color:var(--gold);}

/* ---------- SECTION SCAFFOLD ---------- */
section{padding:110px 0;}
@media (max-width:760px){ section{padding:70px 0;} }
.section-head{max-width:680px; margin-bottom:54px;}
.section-head h2{font-family:var(--serif); font-weight:500; font-size:clamp(30px,4vw,50px); letter-spacing:-.01em;}
.section-head p{margin-top:16px; font-size:17px; color:var(--grey); font-weight:500; line-height:1.5;}
.rule{height:1px; background:var(--line); border:none;}

/* ---------- REVEAL ---------- */
.reveal{opacity:0; transform:translateY(16px); transition:opacity .6s ease, transform .6s ease;}
.reveal.in{opacity:1; transform:translateY(0);}
@media (prefers-reduced-motion: reduce){ .reveal{opacity:1; transform:none; transition:none;} html{scroll-behavior:auto;} }
:focus-visible{outline:3px solid var(--gold); outline-offset:2px;}

/* ---------- AUDIENCE SECTION ---------- */
.audience-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); margin-top:10px;}
.audience-item{background:var(--paper); padding:34px 28px;}
.audience-item h3{font-size:20px; margin-bottom:12px;}
.audience-item p{font-size:15.5px; color:var(--grey); font-weight:500; line-height:1.55;}
.audience-item a{display:inline-block; margin-top:16px; font-size:12px; font-weight:700; border-bottom:2px solid var(--gold);}
@media (max-width:900px){ .audience-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:560px){ .audience-grid{grid-template-columns:1fr;} }

/* ---------- SERVICES teaser (home) ---------- */
.svc-inline{display:flex; flex-wrap:wrap; gap:0; border-top:2px solid var(--ink); margin-top:10px;}
.svc-inline a{flex:1; min-width:150px; padding:26px 20px; border-right:1px solid var(--line); border-bottom:2px solid var(--ink); font-size:19px; font-weight:700; transition:background .2s ease;}
.svc-inline a:last-child{border-right:none;}
.svc-inline a:hover{background:var(--ink); color:var(--paper);}
.svc-inline a span{display:block; font-size:11px; font-weight:600; color:var(--grey); margin-top:6px;}
.svc-inline a:hover span{color:rgba(250,248,243,.6);}
@media (max-width:700px){ .svc-inline a{flex:1 1 50%; border-right:1px solid var(--line);} }

/* ---------- PRINCIPLES (AJ's "Laws") ---------- */
.principles{background:var(--ink); color:var(--paper);}
.principles .section-head p{color:rgba(250,248,243,.55);}
.ap-list{margin-top:10px;}
.ap-row{display:grid; grid-template-columns:64px 1fr; gap:24px; align-items:baseline; padding:26px 0; border-top:1px solid rgba(250,248,243,.15);}
.ap-row:last-child{border-bottom:1px solid rgba(250,248,243,.15);}
.ap-row .ap-n{font-size:14px; font-weight:700; color:var(--gold);}
.ap-row p{font-family:var(--serif); font-style:italic; font-size:22px; font-weight:500; line-height:1.4; color:rgba(250,248,243,.92); max-width:64ch;}
@media (max-width:640px){ .ap-row{grid-template-columns:1fr; gap:8px;} .ap-row p{font-size:17px;} }

/* ---------- FULL-BLEED PHOTO MOMENT ---------- */
.fullbleed{position:relative; min-height:64vh; background-size:cover; background-position:center; display:flex; align-items:center;}
.fullbleed::after{content:''; position:absolute; inset:0; background:linear-gradient(90deg, rgba(10,10,9,.72) 0%, rgba(10,10,9,.15) 65%);}
.fullbleed .wrap{position:relative; z-index:2;}
.fullbleed h2{color:#fff; font-size:clamp(30px,4.4vw,54px); max-width:14ch;}
.fullbleed p{color:rgba(255,255,255,.8); font-size:16.5px; margin-top:18px; max-width:44ch; font-weight:500;}

/* ---------- DEVELOPER NETWORK ---------- */
.dev-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:1px; background:var(--line); margin-top:10px;}
.dev-item{background:var(--paper); display:flex; align-items:center; justify-content:center; padding:26px 18px; height:110px;}
.dev-item img{max-width:100%; max-height:56px; width:auto; height:auto; filter:grayscale(15%); opacity:.9; transition:opacity .2s ease, filter .2s ease;}
.dev-item:hover img{opacity:1; filter:none;}
@media (max-width:900px){ .dev-grid{grid-template-columns:repeat(3,1fr);} }
@media (max-width:560px){ .dev-grid{grid-template-columns:repeat(2,1fr);} .dev-item{height:90px; padding:18px;} }

/* ---------- SELECTED OPPORTUNITIES (honest, no fake deals) ---------- */
.opportunities{background:var(--paper-2);}
.opp-inner{display:grid; grid-template-columns:1.1fr .9fr; gap:60px; align-items:center;}
.opp-inner h2{font-size:clamp(28px,3.6vw,42px);}
.opp-inner p{color:var(--grey); font-size:16.5px; margin-top:18px; font-weight:500;}
@media (max-width:840px){ .opp-inner{grid-template-columns:1fr; gap:30px;} }

/* ---------- INSIGHTS teaser ---------- */
.ins-teaser{display:flex; flex-direction:column; margin-top:10px;}
.ins-teaser .it-row{display:grid; grid-template-columns:.3fr 1.4fr .8fr; gap:24px; align-items:baseline; padding:24px 0; border-top:1px solid var(--line);}
.ins-teaser .it-row:last-child{border-bottom:1px solid var(--line);}
.ins-teaser .it-n{font-weight:700; color:var(--gold); font-size:14px;}
.ins-teaser h3{font-size:20px; font-weight:700;}
.ins-teaser .it-cat{font-size:12px; font-weight:600; color:var(--grey); text-align:right;}
@media (max-width:700px){ .ins-teaser .it-row{grid-template-columns:1fr; gap:6px;} .ins-teaser .it-cat{text-align:left;} }

/* full insights page article */
.article-full{padding:0 0 40px;}
.article-full .cat{font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--gold); font-weight:700;}
.article-full h2{font-size:clamp(26px,3.2vw,38px); margin:14px 0 10px; font-weight:700;}
.article-full .meta{font-size:12.5px; color:var(--grey); font-weight:600;}
.article-body{max-width:720px;}
.article-body p{font-size:16px; color:var(--grey); margin-bottom:18px; line-height:1.7; font-weight:500;}
.article-body h3{font-size:19px; font-weight:700; margin:30px 0 10px; color:var(--ink);}

/* ---------- RERA ---------- */
.rera-plain .rp-label{font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--grey); font-weight:700;}
.rera-plain .rp-number{font-size:22px; font-weight:700; color:var(--ink); margin-top:4px;}
.rera-plain.on-dark .rp-label{color:rgba(250,248,243,.5);}
.rera-plain.on-dark .rp-number{color:var(--paper);}
.trust-strip{border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--paper);}
.trust-inner{display:flex; justify-content:space-between; align-items:center; gap:30px; flex-wrap:wrap; padding:40px 0;}
.trust-inner p{font-size:14.5px; color:var(--grey); font-weight:500; max-width:36ch; text-align:right;}
@media (max-width:700px){ .trust-inner{flex-direction:column; align-items:flex-start;} .trust-inner p{text-align:left;} }

/* ---------- SERVICE DETAIL (buy/sell/rent/invest pages) ---------- */
.svc-detail{padding:100px 0;}
.svc-detail .svc-grid2{display:grid; grid-template-columns:.4fr 1fr; gap:50px;}
.svc-detail h2{font-size:clamp(28px,3.6vw,44px);}
.svc-detail .svc-copy2 p{color:var(--grey); font-size:16.5px; margin-bottom:20px; font-weight:500;}
.svc-process{display:flex; flex-wrap:wrap; gap:0; margin-top:8px;}
.svc-process span{font-size:12px; font-weight:700; color:var(--gold); padding-right:14px; margin-right:14px; border-right:1px solid var(--line);}
.svc-process span:last-child{border-right:none;}
@media (max-width:840px){ .svc-detail .svc-grid2{grid-template-columns:1fr; gap:16px;} }

.expect-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); margin-top:10px;}
.expect-item{background:var(--paper); padding:30px 26px;}
.expect-item h3{font-size:18px; margin-bottom:10px;}
.expect-item p{font-size:15px; color:var(--grey); font-weight:500; line-height:1.5;}
@media (max-width:840px){ .expect-grid{grid-template-columns:1fr;} }

/* ---------- CONTACT FORM ---------- */
.consult{background:var(--ink); color:var(--paper);}
.consult .section-head p{color:rgba(250,248,243,.55);}
.consult-card{border:1px solid rgba(250,248,243,.16); padding:56px; position:relative;}
.consult-card::before{content:''; position:absolute; top:0; left:0; width:64px; height:2px; background:var(--gold);}
@media (max-width:640px){ .consult-card{padding:32px 22px;} }
form#leadform{margin-top:0;}
.f-grid{display:grid; grid-template-columns:1fr 1fr; gap:0 44px;}
.field{padding:22px 0; border-bottom:1px solid rgba(250,248,243,.2); position:relative;}
.field.full{grid-column:1 / -1;}
.field label{display:block; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:rgba(250,248,243,.5); margin-bottom:12px; font-weight:700;}
.field input, .field select, .field textarea{width:100%; background:none; border:none; color:var(--paper); font-family:var(--sans); font-size:17px; outline:none; padding:4px 0; font-weight:500;}
.field select{appearance:none; -webkit-appearance:none; cursor:pointer;}
.field select option{color:#111;}
.field textarea{resize:vertical; min-height:44px;}
.field input::placeholder, .field textarea::placeholder{color:rgba(250,248,243,.25);}
.field:focus-within{border-bottom-color:var(--gold); border-bottom-width:2px;}
.field:focus-within label{color:var(--gold);}
.chip-group{display:flex; gap:12px; flex-wrap:wrap; margin-top:4px;}
.chip{font-size:13.5px; font-weight:700; padding:12px 22px; border:2px solid rgba(250,248,243,.25); cursor:pointer; transition:all .2s ease;}
.chip:hover{border-color:var(--gold);}
.chip.active{background:var(--gold); border-color:var(--gold); color:var(--ink);}
.form-foot{display:flex; justify-content:space-between; align-items:center; margin-top:40px; gap:20px; flex-wrap:wrap;}
.form-foot p{font-size:12.5px; color:rgba(250,248,243,.45); max-width:38ch; font-weight:500;}
.form-foot .btn{padding:17px 36px; font-size:13px;}
#formStatus{margin-top:18px; font-size:14.5px; font-weight:600; display:none;}
#formStatus.show{display:block;}
#formStatus.ok{color:var(--gold);}
#formStatus.err{color:#d98a6a;}
@media (max-width:760px){ .f-grid{grid-template-columns:1fr;} }

.contact-grid{display:grid; grid-template-columns:.75fr 1.25fr; gap:70px;}
.contact-info .ci-row{padding:20px 0; border-top:1px solid var(--line);}
.contact-info .ci-row:last-child{border-bottom:1px solid var(--line);}
.contact-info .ci-label{font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--grey); margin-bottom:6px; font-weight:700;}
.contact-info .ci-value{font-size:17px; font-weight:600;}
@media (max-width:900px){ .contact-grid{grid-template-columns:1fr; gap:44px;} }

/* ---------- FAQ ---------- */
.faq-item{border-top:1px solid var(--line); padding:22px 0;}
.faq-item:last-child{border-bottom:1px solid var(--line);}
.faq-item summary{cursor:pointer; font-size:16.5px; font-weight:700; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:20px;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+'; font-size:22px; color:var(--gold); flex-shrink:0; font-weight:400;}
.faq-item[open] summary::after{content:'–';}
.faq-item p{margin-top:12px; font-size:14.5px; color:var(--grey); font-weight:500;}

/* ---------- ABOUT ---------- */
.twocol{display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start;}
@media (max-width:840px){ .twocol{grid-template-columns:1fr; gap:34px;} }
.beliefs{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); margin-top:10px;}
.belief{background:var(--paper); padding:26px 22px;}
.belief h3{font-size:17px; margin-bottom:8px;}
.belief p{font-size:14.5px; color:var(--grey); font-weight:500; line-height:1.5;}
@media (max-width:900px){ .beliefs{grid-template-columns:1fr 1fr;} }
@media (max-width:520px){ .beliefs{grid-template-columns:1fr;} }

.founder-row{display:grid; grid-template-columns:.4fr 1fr; gap:40px; padding:44px 0; border-top:1px solid var(--line);}
.founder-row:last-child{border-bottom:1px solid var(--line);}
.founder-row .fname{font-family:var(--serif); font-style:italic; font-size:clamp(30px,3.8vw,46px); font-weight:500;}
.founder-row .frole{display:block; font-size:12px; font-weight:700; color:var(--gold); margin-top:8px;}
.founder-row .fcopy p{font-size:16px; color:var(--grey); font-weight:500; margin-bottom:14px;}
@media (max-width:760px){ .founder-row{grid-template-columns:1fr; gap:12px;} }

/* ---------- FOOTER ---------- */
footer{background:var(--ink); color:rgba(250,248,243,.6); padding:0 0 90px; border-top:3px solid var(--gold);}
.foot-signature{display:flex; justify-content:space-between; align-items:flex-end; gap:24px; flex-wrap:wrap; padding:60px 0 50px;}
.foot-word{font-size:clamp(36px,6vw,84px); font-weight:800; line-height:.92; letter-spacing:-.02em; color:var(--paper);}
.foot-mark{height:96px; width:auto; flex-shrink:0;}
@media (max-width:520px){ .foot-mark{height:72px;} }
.foot-top{display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:44px; padding:44px 0; border-top:1px solid rgba(250,248,243,.16); border-bottom:1px solid rgba(250,248,243,.16);}
.foot-brand p{font-size:14.5px; max-width:30ch; color:rgba(250,248,243,.45); font-weight:500; line-height:1.6;}
.foot-social{margin-top:16px;}
.foot-social a{font-size:13.5px; font-weight:600; color:rgba(250,248,243,.55);}
.foot-social a:hover{color:var(--gold);}
.foot-tagline{font-size:18px; font-weight:700; color:rgba(250,248,243,.85);}
.foot-col .foot-h{font-size:12.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--gold); margin-bottom:18px; font-weight:800;}
.foot-col a, .foot-col div{display:block; font-size:15px; margin-bottom:12px; color:rgba(250,248,243,.72); font-weight:500; line-height:1.5;}
.foot-col a:hover{color:var(--gold);}
.foot-bottom{display:flex; justify-content:space-between; align-items:center; padding-top:26px; font-size:13px; color:rgba(250,248,243,.38); flex-wrap:wrap; gap:12px; font-weight:500;}
.foot-bottom-left{display:flex; align-items:center; gap:22px; flex-wrap:wrap;}
.foot-rera{color:rgba(250,248,243,.5);}
.foot-rera b{color:rgba(250,248,243,.72);}
.foot-bottom .legal-links{display:flex; gap:20px;}
.foot-bottom .legal-links a:hover{color:var(--gold);}
@media (max-width:900px){ .foot-top{grid-template-columns:1fr 1fr; row-gap:36px;} }
@media (max-width:520px){ .foot-top{grid-template-columns:1fr;} .foot-signature{flex-direction:column; align-items:flex-start; gap:22px;} }

/* ---------- CONTACT FLOATERS (circular, restrained) ---------- */
.contact-float{position:fixed; right:24px; bottom:24px; z-index:90; display:flex; flex-direction:column; gap:12px;}
.cfab{position:relative; width:54px; height:54px; border-radius:50%; background:var(--ink); border:2px solid rgba(250,248,243,.2); display:flex; align-items:center; justify-content:center; box-shadow:0 6px 18px rgba(0,0,0,.25); transition:width .3s ease, border-color .3s ease; overflow:hidden;}
.cfab svg{width:19px; height:19px; flex-shrink:0; fill:var(--paper);}
.cfab .cfab-label{max-width:0; overflow:hidden; white-space:nowrap; font-size:11px; font-weight:700; color:var(--paper); transition:max-width .3s ease, margin .3s ease;}
.cfab:hover{width:148px; border-color:var(--gold); justify-content:flex-start; padding-left:17px;}
.cfab:hover .cfab-label{max-width:100px; margin-left:12px;}
@media (max-width:760px){ .contact-float{display:none;} }

.mobile-actionbar{display:none; position:fixed; left:0; right:0; bottom:0; z-index:120; background:var(--ink); border-top:1px solid rgba(250,248,243,.16); padding:10px 10px calc(10px + env(safe-area-inset-bottom));}
@media (max-width:760px){ .mobile-actionbar{display:flex; gap:8px;} body{padding-bottom:64px;} }
.mobile-actionbar a{flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; color:var(--paper); font-size:10px; font-weight:700; padding:9px 4px;}
.mobile-actionbar a svg{width:18px; height:18px;}
.mobile-actionbar a.primary{background:var(--gold); color:var(--ink);}
.mobile-actionbar a.primary svg{fill:var(--ink) !important;}

/* ---------- LEGAL PAGES ---------- */
.legal-body{max-width:760px;}
.legal-body h2{font-size:24px; margin:36px 0 12px;}
.legal-body h2:first-child{margin-top:0;}
.legal-body p{font-size:15.5px; color:var(--grey); margin-bottom:16px; font-weight:500;}
.it-title{font-size:20px; font-weight:700; margin:0;}
