/* =========================================================
   Sobha One World — Landing Page
   White + Bronze-Gold (#7d663b) · Marcellus / Jost / Great Vibes
   ========================================================= */

:root{
  --accent:#7d663b;
  --accent-dark:#5e4d2c;
  --accent-soft:#b59b69;
  --accent-light:#d8c7a4;
  --ink:#211c14;
  --muted:#6f6657;
  --cream:#faf7f1;
  --cream2:#f3ecdf;
  --line:#e7dfd0;
  --white:#fff;
  --shadow:0 22px 60px rgba(33,28,20,.12);
  --shadow-sm:0 8px 26px rgba(33,28,20,.09);
  --radius:16px;
  --radius-sm:10px;
  --maxw:1180px;
  --rail:360px;          /* width of the sticky desktop enquiry panel */
  --serif:"Marcellus",Georgia,serif;
  --sans:"Jost",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --script:"Great Vibes",cursive;
  --ease:cubic-bezier(.22,.61,.36,1);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{font-family:var(--sans);color:var(--ink);background:var(--white);line-height:1.7;font-size:16px;font-weight:300;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}

.container{width:min(var(--maxw),92%);margin-inline:auto}
.center{text-align:center}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}

/* ---------- Typography ---------- */
.h2{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,3.8vw,3.2rem);line-height:1.1;color:var(--ink);letter-spacing:.5px}
.h2--light{color:#fff}
.eyebrow{display:inline-block;font-family:var(--sans);font-size:.74rem;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--accent)}
.body{color:var(--muted);font-size:1.04rem;font-weight:300;max-width:60ch}
.body--light{color:rgba(255,255,255,.85)}
.note{font-size:.84rem;color:var(--muted);font-style:italic}
.script{font-family:var(--script);font-weight:400;font-size:1.5em;color:var(--accent);line-height:1;vertical-align:-2px;margin-left:2px}

.section{padding:clamp(64px,8vw,116px) 0;position:relative}
.section--alt{background:var(--cream)}
.section__head{text-align:center;max-width:760px;margin:0 auto clamp(40px,5vw,66px)}
.section__head--left{text-align:left;margin:0 0 6px}
.section__sub{color:var(--muted);margin-top:12px;font-weight:300}
.ornament{display:block;width:74px;height:14px;margin:0 auto 16px;background:
  linear-gradient(var(--accent),var(--accent)) center/100% 1px no-repeat;position:relative}
.ornament::after{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;background:var(--accent);transform:translate(-50%,-50%) rotate(45deg)}
.section__head--left .ornament{margin:0 0 14px}

/* ---------- Luxury line backgrounds ---------- */
.section--lines::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;z-index:0;
  background-image:
   repeating-linear-gradient(90deg,transparent 0,transparent 145px,rgba(125,102,59,.045) 145px,rgba(125,102,59,.045) 146px);}
.section--lines > .container{position:relative;z-index:1}
.section--alt::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.6;z-index:0;
  background-image:radial-gradient(circle at 12% 18%,rgba(125,102,59,.05),transparent 38%),radial-gradient(circle at 88% 82%,rgba(125,102,59,.05),transparent 38%)}
.section--alt > .container{position:relative;z-index:1}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--sans);font-weight:500;
  font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;padding:14px 30px;border-radius:50px;cursor:pointer;
  border:1.5px solid transparent;position:relative;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s,color .35s,background .35s;white-space:nowrap}
.btn--solid{background:var(--accent);color:#fff}
.btn--solid:hover{background:var(--accent-dark);box-shadow:0 14px 30px rgba(125,102,59,.38);transform:translateY(-2px)}
.btn--outline{background:transparent;border-color:var(--accent);color:var(--accent)}
.btn--outline:hover{background:var(--accent);color:#fff;transform:translateY(-2px)}
.btn--light{background:#fff;color:var(--accent-dark)}
.btn--light:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.18)}
.btn--lg{padding:17px 40px;font-size:.96rem}
.btn--sm{padding:9px 18px;font-size:.74rem}
.btn--block{display:flex;width:100%}

/* ---------- Icon mask helper ---------- */
.ic-phone,.ic-wa,.ic-pin,.tick{display:inline-block;width:1em;height:1em;background:currentColor;vertical-align:-.12em;
  -webkit-mask:center/contain no-repeat;mask:center/contain no-repeat}
.ic-phone{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.6 21 3 13.4 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.2.2 2.4.6 3.6.1.4 0 .7-.2 1l-2.3 2.2z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.6 21 3 13.4 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.2.2 2.4.6 3.6.1.4 0 .7-.2 1l-2.3 2.2z'/%3E%3C/svg%3E")}
.ic-wa{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 0 0-8.5 15.2L2 22l4.9-1.3A10 10 0 1 0 12 2zm5.3 14.1c-.2.6-1.3 1.2-1.8 1.2-.5.1-1 .1-3.3-.9-2.8-1.2-4.5-4.1-4.7-4.3-.1-.2-1.1-1.4-1.1-2.7 0-1.3.7-1.9.9-2.2.2-.2.5-.3.7-.3h.5c.2 0 .4 0 .6.5l.8 2c.1.2.1.4 0 .5l-.4.6c-.1.2-.3.3-.1.6.1.3.7 1.1 1.4 1.8 1 .8 1.7 1.1 2 1.2.2.1.4.1.5-.1l.7-.8c.2-.2.4-.2.6-.1l1.9.9c.2.1.4.2.4.4.1.2.1.8-.1 1.4z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 0 0-8.5 15.2L2 22l4.9-1.3A10 10 0 1 0 12 2zm5.3 14.1c-.2.6-1.3 1.2-1.8 1.2-.5.1-1 .1-3.3-.9-2.8-1.2-4.5-4.1-4.7-4.3-.1-.2-1.1-1.4-1.1-2.7 0-1.3.7-1.9.9-2.2.2-.2.5-.3.7-.3h.5c.2 0 .4 0 .6.5l.8 2c.1.2.1.4 0 .5l-.4.6c-.1.2-.3.3-.1.6.1.3.7 1.1 1.4 1.8 1 .8 1.7 1.1 2 1.2.2.1.4.1.5-.1l.7-.8c.2-.2.4-.2.6-.1l1.9.9c.2.1.4.2.4.4.1.2.1.8-.1 1.4z'/%3E%3C/svg%3E")}
.ic-pin,.pin{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5 7 13 7 13s7-8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5 7 13 7 13s7-8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E")}
.tick{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E")}

/* ---------- Top bar ---------- */
.topbar{background:var(--ink);color:#fff;font-size:.82rem;position:relative;z-index:40}
.topbar__inner{display:flex;justify-content:space-between;align-items:center;min-height:42px;gap:16px;flex-wrap:wrap}
.topbar__left,.topbar__right{display:flex;align-items:center;gap:18px}
.topbar__link{opacity:.92;transition:color .3s;display:inline-flex;align-items:center;gap:6px}
.topbar__link:hover,.topbar__call:hover{color:var(--accent-soft)}
.topbar__call{font-weight:500;display:inline-flex;align-items:center;gap:6px}
.topbar__cb{background:var(--accent);padding:8px 16px;border-radius:4px;font-weight:500;transition:background .3s}
.topbar__cb:hover{background:var(--accent-dark)}

/* ---------- Header / Nav ---------- */
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line);transition:box-shadow .3s}
.header__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 0;transition:padding .3s var(--ease)}
.header.is-stuck{box-shadow:0 8px 28px rgba(33,28,20,.09)}
.header.is-stuck .header__inner{padding:8px 0}
.brand__logo{height:68px;width:auto;transition:height .3s var(--ease)}
.header.is-stuck .brand__logo{height:54px}
.nav{display:flex;align-items:center;gap:24px}
.nav__link{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:.7rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);transition:color .3s}
.nav__link span:last-child{position:relative}
.nav__link:hover{color:var(--accent)}
.nav__ic{width:26px;height:26px;background:var(--accent);
  -webkit-mask-position:center;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;
  mask-position:center;mask-size:contain;mask-repeat:no-repeat;transition:transform .3s}
.nav__link:hover .nav__ic{transform:translateY(-2px)}
.ni-home{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11l8-7 8 7'/%3E%3Cpath d='M6 10v10h12V10'/%3E%3Cpath d='M10 20v-6h4v6'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11l8-7 8 7'/%3E%3Cpath d='M6 10v10h12V10'/%3E%3Cpath d='M10 20v-6h4v6'/%3E%3C/svg%3E")}
.ni-price{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 3H4v9l8 8 9-9z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.5'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 3H4v9l8 8 9-9z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.5'/%3E%3C/svg%3E")}
.ni-plan{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='1.5'/%3E%3Cpath d='M3 10h18M11 3v7M15 10v11'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='1.5'/%3E%3Cpath d='M3 10h18M11 3v7M15 10v11'/%3E%3C/svg%3E")}
.ni-amenities{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h12l3 6-9 12L3 9z'/%3E%3Cpath d='M3 9h18M8 3l-2 6 6 12M16 3l2 6-6 12'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h12l3 6-9 12L3 9z'/%3E%3Cpath d='M3 9h18M8 3l-2 6 6 12M16 3l2 6-6 12'/%3E%3C/svg%3E")}
.ni-gallery{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='16' rx='2'/%3E%3Ccircle cx='8.5' cy='9' r='1.5'/%3E%3Cpath d='M4 17l4-4 3 3 4-4 5 5'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='16' rx='2'/%3E%3Ccircle cx='8.5' cy='9' r='1.5'/%3E%3Cpath d='M4 17l4-4 3 3 4-4 5 5'/%3E%3C/svg%3E")}
.ni-location{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-6 7-11a7 7 0 10-14 0c0 5 7 11 7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-6 7-11a7 7 0 10-14 0c0 5 7 11 7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E")}
.ni-tour{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M10.5 8.5l5.5 3.5-5.5 3.5z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M10.5 8.5l5.5 3.5-5.5 3.5z'/%3E%3C/svg%3E")}
.ni-brochure{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 6c-2-1.5-5-1.5-8-1v13c3-.5 6-.5 8 1'/%3E%3Cpath d='M12 6c2-1.5 5-1.5 8-1v13c-3-.5-6-.5-8 1'/%3E%3Cpath d='M12 6v13'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 6c-2-1.5-5-1.5-8-1v13c3-.5 6-.5 8 1'/%3E%3Cpath d='M12 6c2-1.5 5-1.5 8-1v13c-3-.5-6-.5-8 1'/%3E%3Cpath d='M12 6v13'/%3E%3C/svg%3E")}
.nav__cta{color:#fff;text-transform:uppercase;padding:12px 24px;font-size:.78rem;flex-direction:row}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px;z-index:56}
.nav-toggle span{width:26px;height:2px;background:var(--ink);transition:.3s}

/* ---------- HERO ---------- */
.hero{position:relative;min-height:94vh;display:flex;align-items:center;color:#fff;overflow:hidden}
.hero__slider,.hero__overlay,.hero__lines{position:absolute;inset:0}
.hero__slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.5s var(--ease)}
.hero__slide.is-active{opacity:1;animation:kenburns 8s ease-out forwards}
@keyframes kenburns{from{transform:scale(1.05)}to{transform:scale(1.15)}}
.hero__overlay{background:linear-gradient(105deg,rgba(18,14,9,.82) 0%,rgba(18,14,9,.5) 48%,rgba(18,14,9,.28) 100%)}
.hero__lines{pointer-events:none;opacity:.5;background-image:
  repeating-linear-gradient(90deg,transparent 0,transparent 119px,rgba(255,255,255,.05) 119px,rgba(255,255,255,.05) 120px)}
.hero__lines::after{content:"";position:absolute;inset:28px;border:1px solid rgba(255,255,255,.16)}
.hero__inner{position:relative;z-index:2;padding:96px 0 80px}
.hero__copy{max-width:680px}
.hero__open{display:inline-flex;align-items:center;gap:12px;font-size:.78rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;
  color:#fff;padding:9px 22px;border-radius:50px;margin-bottom:24px;
  background:linear-gradient(110deg,var(--accent-dark),var(--accent-soft),var(--accent-dark));background-size:220% 100%;
  animation:shimmer 4s linear 4;box-shadow:0 6px 22px rgba(125,102,59,.5)}
.hero__open i{width:6px;height:6px;background:#fff;transform:rotate(45deg);display:inline-block}
@keyframes shimmer{to{background-position:-220% 0}}
.hero__logo{margin:0 0 18px;line-height:0}
.hero__logo img{width:min(440px,80%);height:auto;filter:brightness(0) invert(1)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero__tagline{font-family:var(--serif);font-size:clamp(1.3rem,2.6vw,2rem);color:#f4ead7;letter-spacing:.5px;line-height:1.2}
.hero__loc{display:inline-flex;align-items:center;gap:8px;font-size:1.02rem;color:#e2d6bf;margin-top:10px;font-weight:300}
.hero__loc .ic-pin{color:var(--accent-soft);font-size:1.1em}
.hero__facts{display:flex;flex-wrap:wrap;gap:0;margin:30px 0 24px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);
  border-radius:14px;overflow:hidden;width:fit-content;max-width:100%}
.hf{padding:16px 26px;text-align:center;position:relative}
.hf+.hf::before{content:"";position:absolute;left:0;top:20%;height:60%;width:1px;background:rgba(255,255,255,.2)}
.hf strong{display:block;font-family:var(--serif);font-size:1.9rem;color:#fff;line-height:1}
.hf span{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-light);margin-top:5px;display:block}
.hero__points{display:flex;flex-direction:column;gap:11px;margin-bottom:28px}
.hero__points li{display:flex;align-items:center;gap:12px;font-size:1.04rem;font-weight:300;color:#f3ecdd;letter-spacing:.01em}
.hero__points .tick{flex:none;width:24px;height:24px;color:#1a150e;background:var(--accent-soft);border-radius:50%;padding:4px;
  -webkit-mask:none;mask:none;position:relative}
.hero__points .tick::after{content:"";position:absolute;inset:5px;background:#1a150e;-webkit-mask:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E");mask:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E")}
.hero__cta{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.hero__price{position:relative;display:flex;flex-direction:column;line-height:1}
.hero__price-label{font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-light)}
.hero__price-val{position:relative;font-family:var(--serif);font-size:clamp(2.2rem,4.4vw,3.1rem);color:#fff;overflow:hidden;animation:pricePulse 2.8s ease-in-out 6}
.hero__price-val b{font-weight:400;background:linear-gradient(110deg,#fff 30%,var(--accent-light) 50%,#fff 70%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:shine 3.2s linear 6}
.hero__price-val sup{color:var(--accent-soft);font-size:.5em}
@keyframes shine{to{background-position:-220% 0}}
@keyframes pricePulse{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}
.hero__price-on{font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-light);margin-top:2px}
.hero__scroll{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:9px;color:rgba(255,255,255,.72);transition:color .3s}
.hero__scroll:hover{color:#fff}
.hero__scroll-txt{font-size:.62rem;letter-spacing:.3em;text-transform:uppercase}
.hero__scroll-arrow{width:11px;height:11px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);animation:scrollchev 1.6s ease-in-out 12}
@keyframes scrollchev{0%{opacity:0;transform:rotate(45deg) translate(-3px,-3px)}50%{opacity:1}100%{opacity:0;transform:rotate(45deg) translate(3px,3px)}}

/* ---------- Overview ---------- */
.overview__logo{height:78px;width:auto;margin:8px auto 8px;display:block;
  filter:brightness(.32) sepia(1) saturate(2.2) hue-rotate(354deg)}
.overview__loc{font-family:var(--sans);font-size:1rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
.overview__body{align-items:stretch}
.overview__left{display:flex;flex-direction:column}
.overview__media{display:flex}
.overview__media img{border-radius:var(--radius);box-shadow:var(--shadow);width:100%;height:100%;min-height:340px;object-fit:cover}
.hl-text{color:var(--accent-dark);font-weight:500}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:auto;padding-top:30px}
.stat{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);padding:24px 14px;text-align:center;transition:transform .4s var(--ease),box-shadow .4s,border-color .4s}
.stat:hover{transform:translateY(-5px);box-shadow:var(--shadow-sm);border-color:var(--accent-soft)}
.stat .count,.stat__txt{font-family:var(--serif);font-size:2.1rem;color:var(--accent-dark);line-height:1;display:block}
.stat__txt{font-size:1.55rem}
.stat em{font-style:normal;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:8px;display:block}

/* shared section icons */
.ic-township{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 21V9l6-4 6 4v3h6v9h-7v-5h-4v5z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 21V9l6-4 6 4v3h6v9h-7v-5h-4v5z'/%3E%3C/svg%3E")}
.ic-tower{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 21V4l4-2 4 2v17h3v2H5v-2zm3-13h2v2h-2zm0 4h2v2h-2z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 21V4l4-2 4 2v17h3v2H5v-2zm3-13h2v2h-2zm0 4h2v2h-2z'/%3E%3C/svg%3E")}
.ic-floors{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 20V4h7v4h9v12zm3-2h2v-2H7zm0-4h2v-2H7zm0-4h2V8H7zm6 8h5v-2h-5zm0-4h5v-2h-5z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 20V4h7v4h9v12zm3-2h2v-2H7zm0-4h2v-2H7zm0-4h2V8H7zm6 8h5v-2h-5zm0-4h5v-2h-5z'/%3E%3C/svg%3E")}
.ic-home{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3l9 8h-3v9h-5v-6h-2v6H6v-9H3z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3l9 8h-3v9h-5v-6h-2v6H6v-9H3z'/%3E%3C/svg%3E")}
.ic-amenity{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l2.4 5.6L20 8l-4 4 1 6-5-3-5 3 1-6-4-4 5.6-.4z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l2.4 5.6L20 8l-4 4 1 6-5-3-5 3 1-6-4-4 5.6-.4z'/%3E%3C/svg%3E")}
.ic-road{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6l3 18h-5l-.5-5h-1L11 21H6zm2.5 3v3h1V6zm0 5v3h1v-3z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6l3 18h-5l-.5-5h-1L11 21H6zm2.5 3v3h1V6zm0 5v3h1v-3z'/%3E%3C/svg%3E")}
.ic-trophy{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 3h10v2h3v3a4 4 0 0 1-4 4 5 5 0 0 1-3 2.8V18h3v3H8v-3h3v-3.2A5 5 0 0 1 8 12a4 4 0 0 1-4-4V5h3zm0 4H6v1a2 2 0 0 0 1 1.7zm10 0v2.7A2 2 0 0 0 18 8V7z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 3h10v2h3v3a4 4 0 0 1-4 4 5 5 0 0 1-3 2.8V18h3v3H8v-3h3v-3.2A5 5 0 0 1 8 12a4 4 0 0 1-4-4V5h3zm0 4H6v1a2 2 0 0 0 1 1.7zm10 0v2.7A2 2 0 0 0 18 8V7z'/%3E%3C/svg%3E")}
.ic-building{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 21V3h10v6h6v12zM7 7h2V5H7zm0 4h2V9H7zm0 4h2v-2H7zm0 4h2v-2H7zm9 0h2v-2h-2zm0-4h2v-2h-2z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 21V3h10v6h6v12zM7 7h2V5H7zm0 4h2V9H7zm0 4h2v-2H7zm0 4h2v-2H7zm9 0h2v-2h-2zm0-4h2v-2h-2z'/%3E%3C/svg%3E")}
.ic-cap{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3 1 9l11 6 9-4.9V17h2V9zM5 14v3l7 4 7-4v-3l-7 4z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3 1 9l11 6 9-4.9V17h2V9zM5 14v3l7 4 7-4v-3l-7 4z'/%3E%3C/svg%3E")}
.ic-plane{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21 16v-2l-8-5V3.5a1.5 1.5 0 0 0-3 0V9l-8 5v2l8-2.5V19l-2 1.5V22l3.5-1 3.5 1v-1.5L13 19v-5.5z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21 16v-2l-8-5V3.5a1.5 1.5 0 0 0-3 0V9l-8 5v2l8-2.5V19l-2 1.5V22l3.5-1 3.5 1v-1.5L13 19v-5.5z'/%3E%3C/svg%3E")}

/* ---------- Highlights ---------- */
.highlights__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.hl{display:flex;align-items:flex-start;gap:20px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 28px;transition:transform .4s var(--ease),box-shadow .4s,border-color .4s}
.hl:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--accent-soft)}
.hl__ic{flex:none;width:52px;height:52px;background:var(--accent);
  -webkit-mask-position:center;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;
  mask-position:center;mask-size:contain;mask-repeat:no-repeat;transition:transform .4s var(--ease)}
.hl:hover .hl__ic{transform:scale(1.12)}
.hl h3{font-family:var(--serif);font-size:1.28rem;font-weight:400;margin:0 0 8px;color:var(--ink);line-height:1.25}
.hl p{font-size:.95rem;color:var(--muted);font-weight:300}
.rera-banner{display:flex;align-items:center;gap:28px;margin-top:34px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius);padding:22px 30px;box-shadow:var(--shadow-sm)}
.rera-banner__logo{width:96px;height:96px;flex:none;object-fit:contain}
.rera-banner__text{flex:1}
.rera-banner__text h3{font-family:var(--serif);font-size:1.4rem;font-weight:400;color:var(--accent-dark)}
.rera-banner__text p{font-size:.86rem;color:var(--muted);margin-top:4px}

/* ---------- Price ---------- */
.price__card{max-width:880px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.price-table{width:100%;border-collapse:collapse}
.price-table th,.price-table td{padding:17px 26px;text-align:left;border-bottom:1px solid var(--line);font-size:1rem}
.price-table thead th{background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;font-weight:500;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}
.price-table tbody tr{transition:background .25s}
.price-table tbody tr:nth-child(even){background:var(--cream)}
.price-table tbody tr:hover{background:var(--cream2)}
.price-table td:first-child{font-weight:500;color:var(--ink)}
.price-table td:last-child{font-weight:500;color:var(--accent-dark)}
.price__foot{display:flex;align-items:center;justify-content:center;gap:18px;padding:20px 26px;flex-wrap:wrap;background:var(--cream)}

/* ---------- Site & Floor plan ---------- */
.siteplan__grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch}
.plan-master{display:flex;flex-direction:column}
.plan-master img{flex:1;width:100%;height:520px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);cursor:zoom-in;padding:10px}
.plan-master figcaption{text-align:center;margin-top:14px;font-family:var(--serif);font-size:1.3rem;color:var(--accent-dark)}
.floorplans{position:relative;display:flex;flex-direction:column}
.floorplans__collage{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:8px;height:520px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}
.floorplans__collage img{width:100%;height:100%;object-fit:cover;filter:blur(7px) brightness(.92);transform:scale(1.05)}
.floorplans__lock{position:absolute;inset:0 0 56px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;
  background:linear-gradient(rgba(33,28,20,.55),rgba(33,28,20,.72));border-radius:var(--radius);color:#fff;padding:24px}
.floorplans__ic{width:48px;height:48px;background:var(--accent-light);-webkit-mask:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1 3 5v6c0 5 3.8 9.7 9 11 5.2-1.3 9-6 9-11V5zm0 6a2 2 0 0 1 1 3.7V14h-2v-3.3A2 2 0 0 1 12 7z'/%3E%3C/svg%3E");mask:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1 3 5v6c0 5 3.8 9.7 9 11 5.2-1.3 9-6 9-11V5zm0 6a2 2 0 0 1 1 3.7V14h-2v-3.3A2 2 0 0 1 12 7z'/%3E%3C/svg%3E")}
.floorplans__lock p{max-width:30ch;font-weight:300;color:#f0e7d6}
.floorplans__cap{text-align:center;margin-top:14px;font-family:var(--serif);font-size:1.3rem;color:var(--accent-dark)}

/* ---------- Amenities ---------- */
.amenities__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.amenity{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);aspect-ratio:4/5}
.amenity img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.amenity:hover img{transform:scale(1.08)}
.amenity figcaption{position:absolute;left:12px;right:12px;bottom:12px;background:rgba(125,102,59,.94);color:#fff;
  font-family:var(--sans);font-weight:500;font-size:.9rem;letter-spacing:.03em;text-align:center;padding:10px 8px;border-radius:8px;
  box-shadow:0 6px 16px rgba(0,0,0,.25)}

/* ---------- Gallery carousel ---------- */
.carousel{max-width:960px;margin:0 auto}
.carousel__tabs{display:flex;justify-content:center;gap:12px;margin-bottom:24px}
.cz-tab{background:#fff;border:1.5px solid var(--line);color:var(--accent-dark);padding:10px 26px;border-radius:50px;font-family:var(--sans);
  font-weight:500;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;cursor:pointer;transition:.3s}
.cz-tab:hover{border-color:var(--accent)}
.cz-tab.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}
.carousel__stage{position:relative;display:flex;align-items:center;gap:14px}
.carousel__frame{flex:1;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:16/10;background:var(--cream2)}
.carousel__frame img{width:100%;height:100%;object-fit:cover;transition:opacity .4s}
.carousel__frame img.is-fading{opacity:0}
.cz-nav{flex:none;width:50px;height:50px;border-radius:50%;border:0;background:#fff;color:var(--accent-dark);box-shadow:var(--shadow-sm);cursor:pointer;font-size:1.1rem;transition:.3s}
.cz-nav:hover{background:var(--accent);color:#fff}
.carousel__dots{display:flex;justify-content:center;gap:9px;margin-top:20px}
.cz-dot{width:9px;height:9px;border-radius:50%;background:var(--line);border:0;cursor:pointer;transition:.3s;padding:0}
.cz-dot.is-active{background:var(--accent);width:26px;border-radius:5px}

/* ---------- Location ---------- */
.location__map{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);height:420px;border:1px solid var(--line);margin-bottom:30px}
.location__map iframe{display:block;width:100%;height:420px;border:0}
/* Click-to-load map facade (saves ~40–60MB until clicked) */
.map-facade{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;height:100%;border:0;cursor:pointer;color:var(--ink);position:relative;overflow:hidden;
  background:linear-gradient(135deg,#eef1ea,#e4e8df)}
.map-facade::before{content:"";position:absolute;inset:0;opacity:.5;background-image:
  repeating-linear-gradient(0deg,transparent 0 38px,rgba(125,102,59,.10) 38px 39px),
  repeating-linear-gradient(90deg,transparent 0 38px,rgba(125,102,59,.10) 38px 39px)}
.map-facade::after{content:"";position:absolute;width:160%;height:46px;background:rgba(125,102,59,.16);transform:rotate(-26deg);top:32%;left:-30%}
.map-facade>*{position:relative;z-index:1}
.map-facade__pin{width:48px;height:48px;background:var(--accent);filter:drop-shadow(0 6px 10px rgba(0,0,0,.25));
  -webkit-mask:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5 7 13 7 13s7-8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E");mask:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5 7 13 7 13s7-8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E")}
.map-facade__title{font-family:var(--serif);font-size:1.5rem;color:var(--accent-dark)}
.map-facade__sub{font-size:.9rem;color:var(--muted)}
.map-facade__cta{margin-top:8px;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:var(--accent);padding:9px 20px;border-radius:50px;transition:background .3s}
.map-facade:hover .map-facade__cta{background:var(--accent-dark)}
.loc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.loc-box{background:#fff;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:var(--radius);padding:28px 24px;transition:transform .4s var(--ease),box-shadow .4s,border-color .4s}
.loc-box:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.loc-box__ic{display:block;width:40px;height:40px;background:var(--accent);
  -webkit-mask-position:center;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;
  mask-position:center;mask-size:contain;mask-repeat:no-repeat;margin-bottom:14px}
.loc-box h3{font-family:var(--serif);font-size:1.24rem;font-weight:400;color:var(--accent-dark);padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid var(--line)}
.loc-box ul{display:flex;flex-direction:column;gap:13px}
.loc-box li{display:flex;align-items:center;gap:11px;font-size:.94rem;color:var(--ink);font-weight:300}
.loc-box li b{margin-left:auto;color:var(--accent-dark);font-weight:600;font-size:.82rem;white-space:nowrap}
.loc-box .dot{flex:none;width:8px;height:8px;background:var(--accent);transform:rotate(45deg)}

/* ---------- Virtual Tour ---------- */
.tour__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.tour__card{position:relative;height:340px;border-radius:var(--radius);overflow:hidden;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}
.tour__card::before{content:"";position:absolute;inset:0;background:rgba(18,14,9,.42);transition:background .4s}
.tour__card:hover::before{background:rgba(18,14,9,.26)}
.tour__play{position:relative;z-index:2;width:76px;height:76px;border-radius:50%;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;transition:transform .4s var(--ease)}
.tour__play::after{content:"";border-left:21px solid var(--accent);border-top:13px solid transparent;border-bottom:13px solid transparent;margin-left:6px}
.tour__card:hover .tour__play{transform:scale(1.12)}
.tour__label{position:absolute;z-index:2;bottom:22px;left:24px;color:#fff;font-family:var(--serif);font-size:1.6rem;text-shadow:0 2px 12px rgba(0,0,0,.5)}

/* ---------- Developer ---------- */
.developer__media img{border-radius:var(--radius);box-shadow:var(--shadow);width:100%;height:460px;object-fit:cover}
.developer__logo{height:48px;width:auto;margin:6px 0 20px;display:block}

/* ---------- Enquire strip ---------- */
.enquire-strip{background:linear-gradient(135deg,var(--accent-dark),var(--accent));position:relative;overflow:hidden;padding:clamp(48px,6vw,72px) 0}
.enquire-strip::before{content:"";position:absolute;inset:0;background:url("Images/Main Sliders/slider extra.webp") center/cover;opacity:.12}
.enquire-strip::after{content:"";position:absolute;inset:0;opacity:.5;background-image:repeating-linear-gradient(90deg,transparent 0,transparent 119px,rgba(255,255,255,.06) 119px,rgba(255,255,255,.06) 120px)}
.enquire-strip__inner{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.enquire-strip__inner .body--light{margin-top:8px}

/* ---------- Footer (compact) ---------- */
.footer{background:var(--ink);color:#b4ab9c;font-size:.86rem}
.footer__top{display:flex;align-items:center;gap:30px;padding:30px 0 18px;flex-wrap:wrap}
.footer__logo{height:130px;width:auto;background:#fff;padding:14px 20px;border-radius:12px;flex:none}
.footer__meta{flex:1;min-width:260px}
.footer__call a{color:var(--accent-soft);font-weight:500;font-size:1.05rem;display:inline-flex;align-items:center;gap:8px;margin-bottom:8px}
.footer__rera{font-size:.78rem;color:#8e8474;line-height:1.6}
.footer__disclaimer{padding:14px 0;border-top:1px solid rgba(255,255,255,.08)}
.footer__disclaimer p{font-size:.7rem;color:#766d5f;line-height:1.6}
.footer__bottom{background:#16120d;padding:13px 0}
.footer__bottom .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px}
.footer__bottom p{font-size:.78rem;color:#766d5f;margin:0}
.footer__legal a{color:#8e8474}
.footer__legal a:hover{color:var(--accent-soft)}

/* ---------- Floating + mobile CTA ---------- */
.floats{position:fixed;right:18px;bottom:84px;z-index:60;display:flex;flex-direction:column;gap:12px}
.float{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.4rem;box-shadow:0 8px 20px rgba(0,0,0,.28);transition:transform .3s}
.float:hover{transform:scale(1.1)}
.float--call{background:var(--accent)}
.float--wa{background:#25d366}
.mobile-cta{display:none;position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--accent);color:#fff;text-align:center;padding:15px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.9rem}

/* ---------- Forms ---------- */
.lead-form{display:flex;flex-direction:column;gap:12px}
.field{position:relative}
.field input,.field select{width:100%;padding:14px 16px;border:1.5px solid var(--line);border-radius:8px;font-family:var(--sans);font-size:.95rem;font-weight:300;color:var(--ink);background:#fff;transition:border-color .25s,box-shadow .25s}
.field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%237d663b'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
.field input:focus,.field select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(125,102,59,.13)}
.field--phone{display:flex}
.field--phone .field__cc{display:flex;align-items:center;padding:0 13px;border:1.5px solid var(--line);border-right:0;border-radius:8px 0 0 8px;background:var(--cream);font-weight:500;color:var(--accent-dark)}
.field--phone input{border-radius:0 8px 8px 0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.form-status{font-size:.85rem;text-align:center;min-height:1em;margin-top:2px}
.form-status.ok{color:#2e7d32}
.form-status.err{color:#c0392b}

/* ---------- Modal ---------- */
.modal{position:fixed;inset:0;z-index:120;display:none;align-items:center;justify-content:center;padding:20px}
.modal.is-open{display:flex}
.modal__backdrop{position:absolute;inset:0;background:rgba(18,14,9,.78);animation:fade .3s}
.modal__dialog{position:relative;z-index:2;width:min(440px,100%);background:#fff;border-radius:var(--radius);padding:34px 30px 30px;box-shadow:0 40px 90px rgba(0,0,0,.4);border-top:4px solid var(--accent);animation:popIn .4s var(--ease)}
@keyframes popIn{from{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:none}}
.modal__close{position:absolute;top:12px;right:16px;background:none;border:0;font-size:2rem;line-height:1;color:var(--muted);cursor:pointer;transition:color .3s}
.modal__close:hover{color:var(--accent)}
.modal__head{text-align:center;margin-bottom:20px}
.modal__logo{height:54px;width:auto;margin:0 auto 8px;filter:brightness(.35) sepia(1) saturate(2) hue-rotate(354deg)}
.modal__sub{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.modal__pitch{font-size:1rem;color:var(--ink);font-weight:500}
.modal__pitch b{color:var(--accent);font-weight:700}

/* ---------- Split modal (info aside + form) ---------- */
.modal__dialog--split{width:min(860px,100%);max-height:92vh;overflow:auto;padding:0;display:grid;grid-template-columns:1fr 1.18fr;background:#fff}
.modal__dialog--split .modal__aside{grid-column:1}
.modal__dialog--split .modal__main{grid-column:2;grid-row:1}
.modal__dialog--split .modal__close{top:12px;right:12px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--accent-dark);box-shadow:0 2px 10px rgba(0,0,0,.18);z-index:3}
.modal__dialog--split .modal__close:hover{background:var(--accent);color:#fff}
.modal__aside{position:relative;background:linear-gradient(157deg,var(--accent-dark) 0%,var(--accent) 70%,var(--accent-soft) 130%);color:#fff;padding:38px 30px;display:flex;flex-direction:column;gap:28px}
/* seamless feather where the gold meets the white form */
.modal__aside::after{content:"";position:absolute;top:0;right:-1px;width:26px;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12));pointer-events:none}
.modal__info-title{font-family:var(--serif);font-size:1.42rem;line-height:1.22;margin:0 0 18px;letter-spacing:.005em}
.modal__avail{list-style:none;display:flex;flex-direction:column;gap:15px}
.modal__avail li{display:flex;align-items:center;gap:12px;font-weight:500;font-size:1.04rem}
.modal__avail svg{width:26px;height:26px;flex:none;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.modal__promise{margin-top:auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.22)}
.modal__promise-head{font-family:var(--serif);font-size:1.12rem;letter-spacing:.01em;margin-bottom:16px;color:var(--accent-light)}
.modal__perks{list-style:none;display:flex;flex-direction:column;gap:16px}
.modal__perks li{display:flex;align-items:center;gap:14px}
.modal__perk-ic{width:46px;height:46px;flex:none;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
.modal__perk-ic svg{width:24px;height:24px;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.modal__perk-ic--rupee{font-family:var(--serif);font-size:1.5rem;font-weight:600;color:#fff;line-height:1}
.modal__perks div{display:flex;flex-direction:column}
.modal__perks strong{font-size:1rem;font-weight:600}
.modal__perks em{font-style:normal;font-size:.8rem;color:rgba(255,255,255,.78);margin-top:1px}
.modal__main{padding:40px 36px 32px;display:flex;flex-direction:column;justify-content:center}
@media (max-width:680px){
  .modal__dialog--split{grid-template-columns:1fr;width:min(440px,100%)}
  .modal__dialog--split .modal__aside,
  .modal__dialog--split .modal__main{grid-column:auto;grid-row:auto}
  .modal__aside{padding:26px 26px 28px;gap:22px}
  .modal__aside::after{display:none}
  .modal__info-title{font-size:1.2rem;margin-bottom:14px}
  .modal__promise{margin-top:0}
  .modal__main{padding:32px 26px 22px}
}

/* ---------- Sticky side enquiry panel (desktop only) ---------- */
.side-form{display:none}
@media (min-width:1400px){       /* only when there's room for nav + content + rail */
  body{padding-right:var(--rail)}
  .side-form{display:flex;flex-direction:column;position:fixed;top:0;right:0;width:var(--rail);height:100vh;overflow-y:auto;z-index:70;
    background:var(--white);border-left:1px solid var(--line);box-shadow:-12px 0 40px rgba(33,28,20,.07);padding:28px 26px 26px}
  /* keep the floating call/WhatsApp buttons clear of the panel */
  .floats{right:calc(var(--rail) + 18px)}
}
.side-form__head{text-align:center;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.side-form__eyebrow{display:inline-block;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-dark);background:var(--cream2);border:1px solid var(--accent-light);padding:5px 12px;border-radius:999px;margin-bottom:12px}
.side-form__title{font-family:var(--serif);font-size:1.85rem;color:var(--ink);line-height:1.1}
.side-form__sub{font-size:.88rem;color:var(--muted);margin-top:5px}
.side-form .lead-form{flex:1}
.side-form__note{margin-top:14px;text-align:center;font-size:.74rem;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:6px}
.ic-lock-sm{width:13px;height:13px;display:inline-block;background:var(--accent);
  -webkit-mask:no-repeat center/contain;mask:no-repeat center/contain;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='4' y='11' width='16' height='9' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='4' y='11' width='16' height='9' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E")}

/* ---------- Lightbox ---------- */
.lightbox{position:fixed;inset:0;z-index:130;background:rgba(15,12,8,.93);display:none;align-items:center;justify-content:center;padding:30px}
.lightbox.is-open{display:flex;animation:fade .3s}
.lightbox__img{max-width:92vw;max-height:88vh;border-radius:8px;box-shadow:0 30px 80px rgba(0,0,0,.6);background:#fff;padding:10px}
.lightbox__close{position:absolute;top:22px;right:30px;background:none;border:0;color:#fff;font-size:2.6rem;cursor:pointer;line-height:1}

/* ---------- Reveal ---------- */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.is-in{opacity:1;transform:none}
@keyframes fade{from{opacity:0}to{opacity:1}}

/* ---------- FAQ ---------- */
.faq__list{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:14px}
.faq__item{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;transition:box-shadow .3s,border-color .3s}
.faq__item[open]{box-shadow:var(--shadow-sm);border-color:var(--accent-soft)}
.faq__item summary{list-style:none;cursor:pointer;padding:20px 56px 20px 24px;position:relative;font-family:var(--serif);font-size:1.14rem;color:var(--ink);transition:color .3s}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary::after{content:"";position:absolute;right:22px;top:50%;width:10px;height:10px;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:translateY(-65%) rotate(45deg);transition:transform .35s var(--ease)}
.faq__item[open] summary::after{transform:translateY(-35%) rotate(-135deg)}
.faq__item summary:hover{color:var(--accent)}
.faq__a{padding:0 24px 20px;color:var(--muted);font-weight:300;line-height:1.75}
.faq__a a{color:var(--accent);font-weight:500}

/* ---------- Legal pages ---------- */
.legal-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow-sm)}
.legal-header .container{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:16px}
.legal-header .brand__logo{height:56px;width:auto}
.legal-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--accent-dark),var(--accent));color:#fff;padding:clamp(56px,9vw,96px) 0;text-align:center}
.legal-hero::after{content:"";position:absolute;inset:0;opacity:.5;background-image:repeating-linear-gradient(90deg,transparent 0,transparent 119px,rgba(255,255,255,.06) 119px,rgba(255,255,255,.06) 120px)}
.legal-hero .container{position:relative;z-index:1}
.legal-hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.1rem,5vw,3.3rem);line-height:1.05}
.legal-hero p{color:rgba(255,255,255,.85);margin-top:10px;letter-spacing:.04em}
.legal-body{padding:clamp(46px,7vw,84px) 0;background:var(--cream)}
.legal-body .container{max-width:860px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(28px,5vw,56px);box-shadow:var(--shadow-sm)}
.legal-body .intro{font-size:1.08rem;color:var(--ink);font-weight:300;border-left:3px solid var(--accent);padding-left:20px;margin-bottom:30px;line-height:1.75}
.legal-body h2{font-family:var(--serif);font-weight:400;font-size:clamp(1.3rem,2.6vw,1.7rem);color:var(--accent-dark);margin:34px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.legal-body h2:first-of-type{margin-top:0}
.legal-body p{color:var(--muted);margin-bottom:14px;font-size:1rem;font-weight:300;line-height:1.85}
.legal-back{display:inline-flex;align-items:center;gap:8px;margin-top:34px;font-weight:500;letter-spacing:.05em;color:var(--accent);text-transform:uppercase;font-size:.85rem}
.legal-back:hover{color:var(--accent-dark)}
.legal-footer{background:var(--ink);color:#8e8474;text-align:center;padding:22px 0;font-size:.82rem}

/* ---------- Thank-you page ---------- */
.ty{min-height:100vh;display:grid;place-items:center;padding:30px 20px;background:linear-gradient(160deg,var(--cream),#fff)}
.ty__card{max-width:560px;width:100%;text-align:center;background:#fff;border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:var(--radius);box-shadow:0 30px 70px rgba(0,0,0,.1);padding:clamp(34px,6vw,56px)}
.ty__check{display:inline-grid;place-items:center;width:84px;height:84px;margin-bottom:18px}
.ty__check svg{width:84px;height:84px;fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.ty__check circle{opacity:.28;stroke-dasharray:151;stroke-dashoffset:151;animation:tyCircle .7s var(--ease) forwards}
.ty__check path{stroke-dasharray:40;stroke-dashoffset:40;animation:tyCheck .5s var(--ease) .55s forwards}
@keyframes tyCircle{to{stroke-dashoffset:0}}
@keyframes tyCheck{to{stroke-dashoffset:0}}
.ty__logo{height:56px;width:auto;margin:0 auto 14px;filter:brightness(.35) sepia(1) saturate(2) hue-rotate(354deg)}
.ty__title{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,5vw,2.8rem);color:var(--ink);margin-bottom:14px}
.ty__msg{color:var(--muted);font-weight:300;line-height:1.8;margin-bottom:18px}
.ty__call{color:var(--ink);margin-bottom:28px}
.ty__call a{color:var(--accent-dark);font-weight:600}
.ty__actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
@media (prefers-reduced-motion:reduce){.ty__check circle,.ty__check path{animation:none;stroke-dashoffset:0}}

/* ============ RESPONSIVE ============ */
/* ----- Tablet (≤1024) ----- */
@media (max-width:1024px){
  .nav{position:fixed;inset:0 0 0 auto;width:min(300px,82%);height:100%;background:#fff;flex-direction:column;align-items:flex-start;justify-content:flex-start;
    padding:74px 26px 24px;gap:0;transform:translateX(100%);transition:transform .4s var(--ease);box-shadow:-10px 0 40px rgba(0,0,0,.13);z-index:55;overflow-y:auto}
  .nav.is-open{transform:translateX(0)}
  .nav__link{flex-direction:row;gap:14px;font-size:.92rem;width:100%;padding:11px 0;border-bottom:1px solid var(--line)}
  .nav__ic{width:23px;height:23px}
  .nav__cta{margin-top:16px;align-self:flex-start;width:auto;justify-content:center;border-bottom:0;padding:11px 26px}
  .nav-toggle{display:flex}
  .nav-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-toggle.is-open span:nth-child(2){opacity:0}
  .nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .grid-2{grid-template-columns:1fr;gap:40px}
  .overview__body{align-items:stretch}
  .overview__media img,.developer__media img{height:auto;min-height:300px;max-height:440px}
  .stats{grid-template-columns:repeat(4,1fr);margin-top:30px}
  .highlights__grid{grid-template-columns:1fr 1fr}
  .loc-grid{grid-template-columns:repeat(2,1fr)}
  .siteplan__grid{grid-template-columns:1fr}
  .plan-master img,.floorplans__collage{height:auto;min-height:340px}
  .amenities__grid{grid-template-columns:repeat(3,1fr)}
}
/* ----- Large phone / small tablet (≤760) ----- */
@media (max-width:760px){
  html{scroll-padding-top:78px}
  .section{padding:52px 0}
  .section__head{margin-bottom:32px}
  .h2{font-size:clamp(1.7rem,6.4vw,2.3rem)}
  .brand__logo{height:50px}
  .header.is-stuck .brand__logo{height:42px}
  .hero{min-height:auto}
  .hero__inner{padding:64px 0 64px}
  .hero__logo{width:min(300px,76%)}
  .hero__tagline{font-size:1.25rem}
  .hero__points li{font-size:.95rem}
  .stats{grid-template-columns:repeat(2,1fr);gap:12px}
  .amenities__grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .loc-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .tour__grid{grid-template-columns:1fr;gap:16px}
  .tour__card{height:240px}
  .rera-banner{flex-direction:column;text-align:center;gap:16px}
  .price-table th,.price-table td{padding:13px 12px;font-size:.84rem}
  .price__foot{flex-direction:column;align-items:stretch;text-align:center;gap:14px}
  .footer__top{flex-direction:column;text-align:center;gap:16px}
  .footer__logo{height:104px}
  .enquire-strip__inner{flex-direction:column;text-align:center;gap:20px}
  .topbar__left{display:none}
  .floats{bottom:72px;right:14px}
  .float{width:48px;height:48px}
  .mobile-cta{display:block}
  body{padding-bottom:52px}
  .carousel__stage{position:relative;gap:0}
  .cz-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:40px;height:40px;background:rgba(255,255,255,.9)}
  .cz-prev{left:8px}
  .cz-next{right:8px}
  .location__map,.location__map iframe{height:300px}
}
/* ----- Phone (≤520) ----- */
@media (max-width:520px){
  .container{width:90%}
  .highlights__grid{grid-template-columns:1fr;gap:14px}
  .hl{gap:16px;padding:22px 20px}
  .hl__ic{width:44px;height:44px}
  .hl h3{font-size:1.18rem}
  .hero__facts{display:grid;grid-template-columns:1fr 1fr;gap:0;width:100%}
  .hf{padding:14px 10px}
  .hf+.hf::before{display:none}
  .hf:nth-child(n+3){border-top:1px solid rgba(255,255,255,.16)}
  .hf:nth-child(even){border-left:1px solid rgba(255,255,255,.16)}
  .hf strong{font-size:1.5rem}
  .hero__cta{gap:16px}
  .stats{grid-template-columns:repeat(2,1fr)}
  .footer__bottom .container{flex-direction:column;text-align:center}
}
/* ----- Small phone (≤400) ----- */
@media (max-width:400px){
  .amenities__grid{grid-template-columns:1fr 1fr;gap:10px}
  .loc-grid{grid-template-columns:1fr}
  .price-table th,.price-table td{padding:11px 8px;font-size:.78rem}
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}
