/* ══════════════════════════════════════════
   CSS VARIABLES — edit here to retheme
══════════════════════════════════════════ */
:root {
  /* --clr-green:        #3a7d2c;
  --clr-green-dark:   #255c1a;
  --clr-green-light:  #5aaa3a;
  --clr-green-bg:     #eaf3e6;
  --clr-gold:         #c9a227;
  --clr-gold-light:   #f0c842;
  --clr-white:        #ffffff;
  --clr-off-white:    #f7f8f5;
  --clr-text:         #1e2a1e;
  --clr-text-muted:   #5a6b5a;
  --clr-border:       #d8e8d0;
  --clr-dark:         #0e1a0e; */

  --clr-green:        #46a53d;
  --clr-green-dark:   #b8962e;
  --clr-green-light:  #e8d48b;
  --clr-green-bg:     #f0e6d0;

  --clr-gold:         #d4af37;
  --clr-gold-light:   #e8d48b;

  --clr-white:        #ffffff;
  --clr-off-white:    #f8f3ea;

  --clr-text:         #1c1c1c;
  --clr-text-muted:   #5f5f5f;

  --clr-border:       #d8c28a;
  --clr-dark:         #0a0a0a;


  --font-main:    'Poppins', sans-serif;
  --font-display: 'Playfair Display', serif;

  --nav-h: 80px;
  --radius: 6px;
  --shadow: 0 4px 20px rgba(0,0,0,0.10);
  --transition: 0.3s ease;

  /* ── FONT SCALE ─────────────────────────────
     Base: 14px. To change base scale globally,
     edit --fs-base and all steps shift with it.

     Ratio ≈ 1.125 (Major Second)

     --fs-2xs  ~10px   (base × 0.714)
     --fs-xs   ~11px   (base × 0.786)
     --fs-xs2  ~11.5px (base × 0.821)
     --fs-sm   ~12px   (base × 0.857)  ← old body/base
     --fs-sm2  ~12.5px (base × 0.893)
     --fs-md   ~13px   (base × 0.929)
     --fs-md2  ~13.5px (base × 0.964)
     --fs-base  14px   ← NEW base (was 12–13px)
     --fs-body  15px   (base × 1.071)  ← was body font-size
     --fs-lg   ~16px   (base × 1.143)
     --fs-xl   ~18px   (base × 1.286)
     --fs-2xl  ~22px   (base × 1.571)
     --fs-3xl  ~30px   (base × 2.143)
     --fs-4xl  ~38px   (base × 2.714)  ← emoji/icon sizes
  ─────────────────────────────────────────── */
  --fs-base: 16px;

  --fs-2xs:  calc(var(--fs-base) * 0.714);   /* ~10px */
  --fs-xs:   calc(var(--fs-base) * 0.786);   /* ~11px */
  --fs-xs2:  calc(var(--fs-base) * 0.821);   /* ~11.5px */
  --fs-sm:   calc(var(--fs-base) * 0.857);   /* ~12px */
  --fs-sm2:  calc(var(--fs-base) * 0.893);   /* ~12.5px */
  --fs-md:   calc(var(--fs-base) * 0.929);   /* ~13px */
  --fs-md2:  calc(var(--fs-base) * 0.964);   /* ~13.5px */
  --fs-body: calc(var(--fs-base) * 1.071);   /* ~15px — body default */
  --fs-lg:   calc(var(--fs-base) * 1.143);   /* ~16px */
  --fs-xl:   calc(var(--fs-base) * 1.286);   /* ~18px */
  --fs-2xl:  calc(var(--fs-base) * 1.571);   /* ~22px */
  --fs-3xl:  calc(var(--fs-base) * 2.143);   /* ~30px */
  --fs-4xl:  calc(var(--fs-base) * 2.714);   /* ~38px */
}

/* ══════════════════════ RESET */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-main);background:var(--clr-white);color:var(--clr-text);font-size:var(--fs-body);line-height:1.6;overflow-x:hidden}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
ul{list-style:none}
button{cursor:pointer;font-family:var(--font-main)}

/* ══════════════════════ TICKER */
.ticker-bar{background:linear-gradient(90deg, #CE9B46 0%, #FDE99C 50%, #B8741D 100%);color:rgba(255,255,255,.75);font-size:var(--fs-xs2);padding:6px 0;overflow:hidden;white-space:nowrap}
.ticker-track{display:inline-block;animation:ticker 30s linear infinite}
.ticker-track span{margin:0 40px;color: var(--clr-dark);}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ══════════════════════ NAVBAR */
.navbar{
  position:sticky;top:0;z-index:1000;
  background:rgba(10,20,10,0.97);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.07);
  transition:box-shadow var(--transition);
}
.nav-inner{
  display:flex;align-items:center;
  height:var(--nav-h);
  max-width:1280px;margin:0 auto;padding:10px 20px;gap:12px;
}
.nav-brand{display:flex;align-items:center;gap:10px;flex-shrink:0}
/* .nav-m3m{background:var(--clr-green);color:#fff;font-weight:800;font-size:var(--fs-base);padding:5px 10px;border-radius:4px;letter-spacing:.5px}
.nav-brand-gic{color:rgba(255,255,255,.85);font-size:var(--fs-2xs);font-weight:700;letter-spacing:2px;line-height:1.4;text-transform:uppercase} */
/* .nav-m3m ,.nav-brand-gic {
    height:50px;
} */
.nav-m3m img ,.nav-brand-gic img {
    width:auto;
    height:60px;
}
.nav-brand-sep{width:1px;height:30px;background:rgba(255,255,255,.2)}

.nav-links{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav-links a{
  color:rgba(255,255,255,.8);font-size:var(--fs-sm);font-weight:500;
  letter-spacing:.3px;padding:6px 11px;border-radius:4px;
  transition:var(--transition);white-space:nowrap;
  display:flex;align-items:center;gap:4px;
}
/* .nav-links a::before{content:'▸';font-size:var(--fs-2xs);color:var(--clr-green-light);opacity:.7} */
.nav-links a:hover{background:rgba(255,255,255,.08);color:#fff}
.nav-enq-btn{
  background:var(--clr-green)!important;color:#fff!important;
  padding:7px 16px!important;border-radius:var(--radius)!important;
  font-weight:600!important;margin-left:8px;
}
.nav-enq-btn::before{display:none!important}
.nav-enq-btn:hover{background:var(--clr-green-dark)!important}

.nav-hamburger{display:none;flex-direction:column;gap:4px;cursor:pointer;margin-left:auto;padding:4px;flex-shrink:0}
.nav-hamburger span{width:22px;height:2px;background:#fff;border-radius:2px;transition:var(--transition)}

/* ══════════════════════ HERO */
.hero{position:relative;min-height:520px;background:var(--clr-dark);overflow:hidden;display:flex;align-items:center}
.hero-bg{
  position:absolute;inset:0;
  background:
    linear-gradient(100deg,rgba(8,18,8,.85) 0%,rgba(8,18,8,.35) 52%,rgba(8,18,8,.6) 100%);
  animation:heroPan 18s ease-in-out infinite alternate;
}
.hero-bg::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg,rgba(8,18,8,.85) 0%,rgba(8,18,8,.35) 52%,rgba(8,18,8,.6) 100%);
    z-index: 1;
}
@keyframes heroPan{from{background-position:center 30%}to{background-position:center 70%}}

    /* ── Hero ── */
    /* .hero-bg {
      position: relative;
      width: 100%;
      height: 100vh;
      overflow: hidden;
      background: #000;
    } */

    .hero-bg .slide {
      position: absolute;
      inset: 0;
      opacity: 0;
      transition: opacity 1s ease;
      background-size: cover;
      background-position: center;
    }

    .hero-bg .slide.active {
      opacity: 1;
    }

    /* ── Dot indicators ── */
    .dots {
      position: absolute;
      bottom: 20px;
      left: 50%;
      transform: translateX(-50%);
      display: flex;
      gap: 8px;
      z-index: 10;
    }

    .dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.4);
      cursor: pointer;
      transition: background 0.3s;
    }

    .dot.active {
      background: rgba(255, 255, 255, 0.95);
    }

.hero-content{
  position:relative;z-index:2;width:100%;
  max-width:1280px;margin:0 auto;padding:64px 24px 64px;
  display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;
}
.hero-badge-pill{
  display:inline-block;
  background:var(--clr-gold);color:#000;
  font-size:var(--fs-2xs);font-weight:700;letter-spacing:2px;text-transform:uppercase;
  padding:4px 14px;border-radius:40px;margin-bottom:16px;
  animation:fadeUp .7s ease both;
}
.hero-eyebrow{font-size:var(--fs-xs);font-weight:600;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:8px;animation:fadeUp .7s .1s ease both}
.hero-h1{font-family:var(--font-display);font-size:clamp(30px,4.2vw,56px);font-weight:700;color:#fff;line-height:1.1;margin-bottom:12px;animation:fadeUp .7s .2s ease both}
.hero-h1 em{color:var(--clr-green-light);font-style:normal}
.hero-p{font-size:var(--fs-md);color:rgba(255,255,255,.68);margin-bottom:26px;animation:fadeUp .7s .3s ease both}
.hero-tags{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:26px;animation:fadeUp .7s .35s ease both}
.hero-tag-item{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);border-radius:8px;padding:10px 16px;font-size:var(--fs-xs);color:rgba(255,255,255,.75);text-align:center}
.hero-tag-item strong{display:block;font-size:var(--fs-lg);font-weight:700;color:var(--clr-gold-light)}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap;animation:fadeUp .7s .42s ease both}
.btn-g{background:var(--clr-green);color:#fff;padding:11px 22px;border-radius:var(--radius);font-size:var(--fs-md);font-weight:600;border:none;display:inline-flex;align-items:center;gap:6px;transition:var(--transition)}
.btn-g:hover{background:var(--clr-green-dark);transform:translateY(-2px);box-shadow:0 8px 20px rgba(58,125,44,.4)}
.btn-ow{background:transparent;color:#fff;padding:11px 22px;border-radius:var(--radius);font-size:var(--fs-md);font-weight:600;border:1.5px solid rgba(255,255,255,.45);display:inline-flex;align-items:center;gap:6px;transition:var(--transition)}
.btn-ow:hover{background:rgba(255,255,255,.1);border-color:#fff}

/* Hero right */
.hero-right{animation:fadeUp .7s .48s ease both}
.hero-gic-box{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);
  border-radius:14px;padding:30px 28px;text-align:center;
  backdrop-filter:blur(12px);margin-bottom:16px;
}
.gic-big{font-family:var(--font-display);font-size:clamp(50px,6.5vw,78px);font-weight:700;color:var(--clr-green-light);line-height:1;margin-bottom:6px;text-shadow:0 0 60px rgba(90,170,58,.35)}
.gic-word{font-size:var(--fs-xs);letter-spacing:3px;color:rgba(255,255,255,.55);text-transform:uppercase;margin-bottom:2px}
.gic-sub{font-size:var(--fs-2xs);letter-spacing:2px;color:rgba(255,255,255,.4);text-transform:uppercase}
.hero-stat-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hsr-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);border-radius:8px;padding:12px 14px;text-align:center;backdrop-filter:blur(6px)}
.hsr-n{font-family:var(--font-display);font-size:var(--fs-2xl);font-weight:700;color:var(--clr-gold-light)}
.hsr-l{font-size:var(--fs-2xs);color:rgba(255,255,255,.55);letter-spacing:.5px}

/* Info strip */
.info-strip{background:var(--clr-green-dark);padding:10px 24px}
.info-strip-in{max-width:1280px;margin:0 auto;display:flex;flex-wrap:wrap;gap:20px;justify-content:center;align-items:center}
.isi{display:flex;align-items:center;gap:6px;font-size:var(--fs-xs2);font-weight:500;color:rgba(255,255,255,.82)}

/* ══════════════════════ LAUNCH OFFER */
.launch-section{background:var(--clr-off-white);padding:40px 24px}
.launch-box{
  max-width:1000px;margin:0 auto;
  background:#fff;border-radius:10px;border:1px solid var(--clr-border);
  box-shadow:var(--shadow);overflow:hidden;
}
.launch-hd{text-align:center;padding:22px 20px;border-bottom:1px solid var(--clr-border)}
.launch-hd h2{font-size:var(--fs-xl);font-weight:700;margin-bottom:4px}
.launch-hd p{font-size:var(--fs-sm2);color:var(--clr-text-muted)}
.launch-book{display:inline-block;background:var(--clr-green);color:#fff;padding:7px 22px;border-radius:40px;font-size:var(--fs-sm);font-weight:600;margin-top:10px;animation:pulse 2s ease infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(58,125,44,.35)}50%{box-shadow:0 0 0 9px rgba(58,125,44,0)}}
.launch-body{display:grid;grid-template-columns:1fr 1fr}
.launch-col{padding:24px}
.launch-col+.launch-col{border-left:1px solid var(--clr-border)}
.launch-col-hd{background:var(--clr-green);color:#fff;font-size:var(--fs-md);font-weight:600;padding:8px 14px;border-radius:var(--radius);margin-bottom:14px;text-align:center}
.launch-col-hd.gold{background:linear-gradient(90deg,#b07f15,#d4ac30)}
.ll{display:grid;gap:0}
.ll li{display:flex;align-items:flex-start;gap:8px;font-size:var(--fs-sm2);color:var(--clr-text-muted);padding:7px 0;border-bottom:1px dashed var(--clr-border)}
.ll li:last-child{border:none}
.ll li::before{content:'✓';color:var(--clr-green);font-weight:700;flex-shrink:0;margin-top:1px}
.off-row{font-size:var(--fs-md);font-weight:600;color:var(--clr-text);margin:8px 0 4px}
.off-price{font-size:var(--fs-sm);color:var(--clr-text-muted);margin-bottom:14px}
.off-price strong{color:var(--clr-green-dark);font-size:var(--fs-lg)}
.enq-btn{background:var(--clr-green);color:#fff;border:none;padding:10px 0;border-radius:var(--radius);font-size:var(--fs-md);font-weight:600;width:100%;margin-top:6px;transition:var(--transition)}
.enq-btn:hover{background:var(--clr-green-dark)}

/* ══════════════════════ SECTION BASE */
.section{padding:60px 24px}
.section-alt{background:var(--clr-off-white)}
.container{max-width:1100px;margin:0 auto}
.sec-head{text-align:center;margin-bottom:36px}
.sec-label{font-size:var(--fs-xs);font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--clr-green);display:block;margin-bottom:6px}
.sec-title{font-family:var(--font-display);font-size:clamp(22px,2.8vw,32px);font-weight:700;color:var(--clr-text);margin-bottom:10px}
.sec-line{width:48px;height:3px;background:linear-gradient(90deg,var(--clr-green),var(--clr-gold));margin:0 auto;border-radius:2px}

/* ══════════════════════ OVERVIEW */
.ov-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}
.ov-title{font-family:var(--font-display);font-size:clamp(20px,2.5vw,28px);font-weight:700;color:var(--clr-green);margin-bottom:6px}
.ov-sub{font-size:var(--fs-md);font-weight:600;color:var(--clr-text-muted);margin-bottom:14px}
.ov-p{font-size:var(--fs-base);color:var(--clr-text-muted);line-height:1.85;margin-bottom:14px}
.ov-dl{display:inline-flex;align-items:center;gap:7px;background:var(--clr-green);color:#fff;padding:10px 20px;border-radius:var(--radius);font-size:var(--fs-md);font-weight:600;border:none;cursor:pointer;transition:var(--transition)}
.ov-dl:hover{background:var(--clr-green-dark);transform:translateY(-2px)}
.ov-card{background:var(--clr-green-bg);border:1px solid var(--clr-border);border-radius:12px;padding:26px}
.ov-card-title{font-size:var(--fs-sm);font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--clr-green-dark);margin-bottom:16px}
.ov-feat{display:flex;align-items:center;gap:10px;font-size:var(--fs-md);color:var(--clr-text-muted);padding:8px 0;border-bottom:1px dashed var(--clr-border)}
.ov-feat:last-of-type{border:none}
.ov-price-box{margin-top:18px;padding-top:18px;border-top:1px solid var(--clr-border);text-align:center}
.ov-price-lbl{font-size:var(--fs-xs)}
.ov-price-num{font-family:var(--font-display);font-size:var(--fs-3xl);font-weight:700;color:var(--clr-green-dark)}
.ov-price-sub{font-size:var(--fs-xs);color:var(--clr-text-muted)}

/* ══════════════════════ AMENITIES */
.am-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.am-card{
  background:#fff;border:1px solid var(--clr-border);border-radius:var(--radius);
  padding:22px 14px;text-align:center;cursor:default;
  transition:var(--transition);position:relative;overflow:hidden;
}
.am-card::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--clr-green),var(--clr-green-light));
  transform:scaleX(0);transform-origin:left;transition:var(--transition);
}
.am-card:hover::after{transform:scaleX(1)}
.am-card:hover{border-color:var(--clr-green);box-shadow:0 8px 28px rgba(58,125,44,.16);transform:translateY(-5px)}
.am-img{width:52px;height:52px;object-fit:contain;margin:0 auto 12px}
.am-emoji{font-size:var(--fs-4xl);margin-bottom:10px}
.am-name{font-size:var(--fs-xs);font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--clr-text)}
.am-card:hover .am-name{color:var(--clr-green-dark)}

/* ══════════════════════ PRICE */
.price-wrap{overflow-x:auto}
.price-tbl{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:var(--shadow)}
.price-tbl thead tr{background:var(--clr-green)}
.price-tbl th{padding:14px 20px;text-align:left;font-size:var(--fs-sm);font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#fff}
.price-tbl td{padding:14px 20px;font-size:var(--fs-base);border-bottom:1px solid var(--clr-border);vertical-align:middle}
.price-tbl tr:last-child td{border:none}
.price-tbl tr:hover td{background:var(--clr-green-bg)}
.price-val{font-weight:700;color:var(--clr-green-dark);font-size:var(--fs-body)}
.price-btn{background:var(--clr-green);color:#fff;border:none;padding:7px 14px;border-radius:var(--radius);font-size:var(--fs-xs2);font-weight:600;transition:var(--transition)}
.price-btn:hover{background:var(--clr-green-dark)}

/* ══════════════════════ HIGHLIGHTS */
.hl-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.hl-list{display:grid;gap:12px}
.hl-item{
  display:flex;align-items:flex-start;gap:10px;font-size:var(--fs-base);color:var(--clr-text-muted);
  padding:12px 16px;background:#fff;
  border-left:3px solid var(--clr-green);border:1px solid var(--clr-border);
  border-left:3px solid var(--clr-green);
  border-radius:0 var(--radius) var(--radius) 0;transition:var(--transition);
}
.hl-item:hover{background:var(--clr-green-bg);color:var(--clr-text);border-color:var(--clr-green)}
.hl-ck{width:22px;height:22px;flex-shrink:0;background:var(--clr-green);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:var(--fs-xs);margin-top:1px}
.hl-img{border-radius:10px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.18)}
.hl-img img{width:100%;height:360px;object-fit:cover}

/* ══════════════════════ GALLERY */
.gal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gal-item{
  border-radius:8px;overflow:hidden;cursor:pointer;
  position:relative;aspect-ratio:4/3;background:var(--clr-green-bg);
}
.gal-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.gal-item:hover img{transform:scale(1.07)}
.gal-ov{
  position:absolute;inset:0;
  background:rgba(14,26,14,.5);
  display:flex;align-items:center;justify-content:center;
  opacity:0;transition:var(--transition);color:#fff;font-size:var(--fs-3xl);
}
.gal-item:hover .gal-ov{opacity:1}
/* lightbox */
.lightbox{display:none;position:fixed;inset:0;z-index:3000;background:rgba(0,0,0,.92);align-items:center;justify-content:center}
.lightbox.open{display:flex}
.lb-img{max-width:90vw;max-height:85vh;border-radius:8px;object-fit:contain}
.lb-x{position:absolute;top:18px;right:18px;background:rgba(255,255,255,.13);color:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:var(--fs-xl);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition)}
.lb-x:hover{background:rgba(255,255,255,.28)}

/* ══════════════════════ FLOOR PLAN */
.fp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}
.fp-card{background:#fff;border:1px solid var(--clr-border);border-radius:8px;overflow:hidden;box-shadow:var(--shadow);transition:var(--transition)}
.fp-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.14)}
.fp-img{height:250px;background:var(--clr-green-bg);display:flex;align-items:center;justify-content:center;font-size:var(--fs-4xl)}
.fp-img img{width:100%;height:100%;object-fit:cover}
.fp-body{padding:14px}
.fp-title{font-size:var(--fs-md);font-weight:700;color:var(--clr-text);margin-bottom:8px}
.fp-btn{background:var(--clr-green);color:#fff;border:none;padding:8px 14px;border-radius:var(--radius);font-size:var(--fs-sm);font-weight:600;width:100%;transition:var(--transition)}
.fp-btn:hover{background:var(--clr-green-dark)}
.metro-img{border-radius:10px;overflow:hidden;box-shadow:var(--shadow)}
.metro-img img{width:100%;max-height:290px;object-fit:cover}

/* ══════════════════════ MASTER PLAN */
.mp-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.mp-card{background:#fff;border:1px solid var(--clr-border);border-radius:8px;overflow:hidden;box-shadow:var(--shadow);position:relative}
.mp-card img{width:100%;height:250px;object-fit:cover}
.mp-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(14,26,14,.72) 0%,transparent 55%);display:flex;align-items:flex-end;padding:18px}
.mp-btn{background:var(--clr-green);color:#fff;border:none;padding:9px 18px;border-radius:var(--radius);font-size:var(--fs-md);font-weight:600;transition:var(--transition)}
.mp-btn:hover{background:var(--clr-green-dark)}

/* ══════════════════════ LOCATION */
.loc-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:40px;align-items:start}
.loc-list{display:grid;gap:10px;margin-bottom:20px}
.loc-item{
  display:flex;align-items:center;gap:12px;
  padding:12px 16px;background:#fff;border:1px solid var(--clr-border);
  border-radius:var(--radius);transition:var(--transition);
}
.loc-item:hover{border-color:var(--clr-green);transform:translateX(6px);background:var(--clr-green-bg)}
.loc-dot{width:10px;height:10px;border-radius:50%;background:var(--clr-green);flex-shrink:0}
.loc-txt{font-size:var(--fs-md2);font-weight:500;color:var(--clr-text-muted)}
.loc-time{margin-left:auto;font-size:var(--fs-sm);font-weight:600;color:var(--clr-green-dark);white-space:nowrap}
.map-box{border-radius:10px;overflow:hidden;border:2px solid var(--clr-border);box-shadow:var(--shadow);height:340px}
.map-box img{width:100%;height:100%;border:none;object-fit: cover;}
.map-box iframe{width:100%;height:100%;border:none}

/* ══════════════════════ SIDE CTA */
.side-cta{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:800;display:flex;flex-direction:column;gap:4px}
.side-btn{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);background:var(--clr-green);color:#fff;font-size:var(--fs-xs);font-weight:700;letter-spacing:1px;padding:16px 9px;border-radius:0 var(--radius) var(--radius) 0;cursor:pointer;transition:var(--transition);border:none;text-transform:uppercase}
.side-btn:hover{background:var(--clr-green-dark);padding-left:14px}
.side-btn.gold{background:linear-gradient(180deg,#b8891a,#d4ac30);color:#fff}
.side-btn.gold:hover{background:linear-gradient(180deg,#9e7515,#b8891a)}

/* ══════════════════════ FLOAT BAR */
.float-bar{position:fixed;bottom:0;left:0;right:0;z-index:900;background:var(--clr-dark);border-top:2px solid var(--clr-green);display:flex}
.float-bar a,.float-bar button{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:12px 10px;font-size:var(--fs-sm);font-weight:600;color:#fff;border:none;background:none;font-family:var(--font-main);cursor:pointer;transition:var(--transition);border-right:1px solid rgba(255,255,255,.07);text-decoration:none}
.float-bar a:last-child,.float-bar button:last-child{border:none}
.float-bar a:hover,.float-bar button:hover{background:rgba(255,255,255,.07)}
.fb-wa{color:#25d366!important}
.fb-enq{background:var(--clr-green)!important}
.fb-enq:hover{background:var(--clr-green-dark)!important}

/* ══════════════════════ MODAL OVERRIDE — Two-column brochure style */
.modal-ov{display:none;position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.65);backdrop-filter:blur(4px);align-items:center;justify-content:center;padding:20px}
.modal-ov.open{display:flex}

.modal{
  background:#fff;
  border-radius:12px;
  max-width:620px;
  width:100%;
  position:relative;
  overflow:hidden;
  box-shadow:0 40px 80px rgba(0,0,0,.28);
  animation:modalIn .35s cubic-bezier(.34,1.56,.64,1) both;
  padding:0;
}
@keyframes modalIn{from{opacity:0;transform:scale(.88) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}

.modal-x{
  position:absolute;top:10px;right:10px;
  background:rgba(255,255,255,.85);
  border:none;width:28px;height:28px;border-radius:50%;
  font-size:14px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  z-index:10;color:#333;
  transition:.2s;
}
.modal-x:hover{background:#eee}

/* Two-column body */
.modal-body{
  display:flex;
  min-height:340px;
}

/* ── LEFT column */
.modal-left{
  width:180px;
  flex-shrink:0;
  background:var(--clr-off-white);
  border-right:1px solid #e8e8e8;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:30px 16px;
  gap:24px;
}

.modal-we-promise{
  font-size:17px;
  font-weight:700;
  color:var(--clr-green,#3a7d2c);
  text-align:center;
  margin-bottom:4px;
}

.modal-promise-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  text-align:center;
}
.modal-promise-item span{
  font-size:13px;
  font-weight:600;
  color:#333;
}

.mp-icon{
  width:54px;height:54px;
  border:2px solid var(--clr-green,#3a7d2c);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  color:var(--clr-green,#3a7d2c);
  padding:10px;
}
.mp-icon svg{width:100%;height:100%}

/* ── RIGHT column */
.modal-right{
  flex:1;
  padding:28px 26px 24px;
  display:flex;
  flex-direction:column;
}

.modal-logo{
  display:flex;
  align-items:center;
  gap:0;
  margin-bottom:14px;
  justify-content:center;
}
.modal-logo-sep{
  width:1px;height:36px;background:#ddd;margin:0 14px;
}

.modal-ttl{
  font-size:18px;
  font-weight:700;
  color:#222;
  margin-bottom:16px;
  text-align:center;
}

.frow{margin-bottom:11px}
.frow label{display:none} /* labels hidden — placeholder-only style */
.frow input,.frow select{
  width:100%;
  padding:11px 14px;
  border:none;
  border-bottom:1.5px solid #ccc;
  border-radius:0;
  font-family:var(--font-main,inherit);
  font-size:14px;
  color:#333;
  background:#fff;
  outline:none;
  transition:.2s;
}
.frow input:focus,.frow select:focus{
  border-bottom-color:var(--clr-green,#3a7d2c);
}
.frow input::placeholder{color:#aaa}

/* Error message styles */
.error-msg {
  color: #d32f2f;
  font-size: 12px;
  margin-top: 5px;
  display: none;
  font-family: var(--font-main, 'Inter', sans-serif);
}

.frow.error input,
.frow.error select {
  border-bottom-color: #d32f2f !important;
}

.frow input.error-field,
.frow select.error-field {
  border-bottom-color: #d32f2f !important;
}

/* Toast message styles for success/error */
.toast-message {
  position: fixed;
  top: 20px;
  right: 20px;
  padding: 14px 20px;
  border-radius: 8px;
  font-family: var(--font-main, 'Inter', sans-serif);
  font-size: 14px;
  font-weight: 500;
  z-index: 10000;
  animation: slideInRight 0.3s ease;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: 350px;
}

.toast-message.success {
  background: #4caf50;
  color: white;
  border-left: 4px solid #2e7d32;
}

.toast-message.error {
  background: #f44336;
  color: white;
  border-left: 4px solid #c62828;
}

.toast-message.info {
  background: #2196f3;
  color: white;
  border-left: 4px solid #1565c0;
}

@keyframes slideInRight {
  from {
    transform: translateX(100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slideOutRight {
  from {
    transform: translateX(0);
    opacity: 1;
  }
  to {
    transform: translateX(100%);
    opacity: 0;
  }
}

.toast-message.hide {
  animation: slideOutRight 0.3s ease forwards;
}

.modal-submit{
  width:100%;
  padding:13px;
  background:#c8960a;
  color:#fff;
  border:none;
  border-radius:6px;
  font-size:15px;
  font-weight:700;
  margin-top:6px;
  cursor:pointer;
  letter-spacing:.3px;
  transition:.2s;
}
.modal-submit:hover{background:#b0820a}

/* ── Phone bar */
.modal-phone-bar{
  background:var(--clr-green,#3a7d2c);
  color:#fff;
  font-size:16px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:13px 20px;
  letter-spacing:.4px;
}

/* Mobile responsive */
@media(max-width:540px){
  .modal-body{flex-direction:column}
  .modal-left{width:100%;border-right:none;border-bottom:1px solid #e8e8e8;flex-direction:row;flex-wrap:wrap;gap:16px;padding:20px 16px;justify-content:space-around}
  .modal-we-promise{width:100%;text-align:center;margin-bottom:0}
  .mp-icon{width:42px;height:42px}
  .modal-promise-item span{font-size:11px}
}
/* ══════════════════════ FOOTER */
.footer{background:var(--clr-dark);color:rgba(255,255,255,.5);padding:30px 24px 90px;font-size:var(--fs-sm)}
.footer-in{max-width:1100px;margin:0 auto}
.footer-top{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:14px}
.footer-rera strong{color:rgba(255,255,255,.85);display:block;margin-bottom:4px;font-size:var(--fs-md)}
.footer-disc{max-width:660px;line-height:1.7;opacity:.7}
.footer-copy{text-align:center;font-size:var(--fs-xs)}
.footer-copy a{color:var(--clr-green-light);text-decoration:underline}

/* ══════════════════════ ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .65s ease}
.reveal.in{opacity:1;transform:none}
.stagger .reveal:nth-child(1){transition-delay:.05s}
.stagger .reveal:nth-child(2){transition-delay:.13s}
.stagger .reveal:nth-child(3){transition-delay:.21s}
.stagger .reveal:nth-child(4){transition-delay:.29s}
.stagger .reveal:nth-child(5){transition-delay:.37s}
.stagger .reveal:nth-child(6){transition-delay:.45s}
.stagger .reveal:nth-child(7){transition-delay:.53s}
.stagger .reveal:nth-child(8){transition-delay:.61s}




.hero-content .ov-price-box {
    width: 100%;
    background: var(--clr-white);
    text-align: start;
    order: 3;
    margin: 10px 0 20px 0;
    border-left: 4px solid var(--clr-green-dark);
      border-radius: 10px;
    padding: 18px 20px;
}

.hero-content .ov-price-lbl , .hero-content .ov-price-sub {
  color: var(--dark);
  font-size: 14px;
  font-weight: 500;
}


.apt-grid {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    justify-content: center;
  }
  .apt-card {
    background: var(--clr-white);
    min-width: 350px;
    /* width: 100%; */
    border-radius: 3px;
    box-shadow: 0 2px 18px rgba(100,60,10,0.10);
    display: flex;
    flex-direction: column;
    overflow: visible;
    position: relative;
  }
  .apt-card-header {
    padding: 1rem 1rem 0.7rem;
    text-align: center;
    border-bottom: 1.5px dashed var(--clr-green);
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text);
  }
  .apt-card-body {
    padding: 0.85rem 0;
    display: flex;
  }
  .apt-detail {
    flex: 1;
    text-align: center;
    padding: 0 0.75rem;
  }
  .apt-detail + .apt-detail {
    border-left: 1.5px dashed var(--clr-green);
  }
  .apt-detail-label {
    font-size: 11.5px;
    color: var(--clr-text-muted);
    margin-bottom: 4px;
    font-weight: 400;
  }
  .apt-detail-value {
    font-size: 13px;
    font-weight: 500;
    color: var(--clr-text);
  }
  .apt-detail-sub {
    font-size: 10.5px;
    color: var(--clr-text-muted);
    margin-top: 2px;
    font-weight: 300;
  }
  .apt-card-extra {
    border-top: 1.5px dashed var(--clr-green);
    padding: 0.7rem 0;
    display: flex;
  }
  .apt-price-block {
    background: var(--clr-green);
    padding: 0.9rem 1rem 1.3rem;
    text-align: center;
    position: relative;
  }
  .apt-price-block::after {
    content: '';
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    border-left: 26px solid transparent;
    border-right: 26px solid transparent;
    border-top: 20px solid var(--clr-green);
  }
  .apt-price-label {
    font-size: 11.5px;
    color: rgba(255,255,255,0.80);
    letter-spacing: 0.05em;
    margin-bottom: 4px;
  }
  .apt-price-value {
    font-size: 26px;
    font-weight: 600;
    color: #fff;
    line-height: 1;
    letter-spacing: 0.02em;
  }
  .apt-cta-wrap {
    padding: 2.6rem 1rem 1.2rem;
    text-align: center;
  }

/* ══════════════════════ RESPONSIVE */
@media(max-width:900px){
  .nav-links{display:none}
  .nav-hamburger{display:flex}
  .nav-links.open{display:flex;flex-direction:column;position:absolute;top:var(--nav-h);left:0;right:0;background:rgba(8,18,8,.98);padding:14px 20px;gap:4px;border-bottom:1px solid rgba(255,255,255,.1)}
  .hero-content{grid-template-columns:1fr}
  .hero-right{display:none}
  .launch-body{grid-template-columns:1fr}
  .launch-col+.launch-col{border-left:none;border-top:1px solid var(--clr-border)}
  .ov-grid{grid-template-columns:1fr}
  .am-grid{grid-template-columns:repeat(2,1fr)}
  .hl-grid{grid-template-columns:1fr}
  .gal-grid{grid-template-columns:repeat(2,1fr)}
  .fp-grid{grid-template-columns:1fr 1fr}
  .mp-grid{grid-template-columns:1fr}
  .loc-grid{grid-template-columns:1fr}
  .side-cta{display:none}
}
@media(max-width:560px){
  .am-grid{grid-template-columns:repeat(2,1fr)}
  .gal-grid{grid-template-columns:1fr}
  .fp-grid{grid-template-columns:1fr}
  .float-bar a span,.float-bar button span{display:none}
}

@media(max-width:768px){
  .apt-grid {
    display: grid;
    grid-template-columns: repeat(1,1fr);
    gap: 1.5rem;
    justify-content: center;
  }
  .nav-links a {
    width: 100%;
}

/* .hl-item {
    padding-bottom: 10px;
    background: var(--gold);
    padding: 11px;
} */

  .hero {
    display: flex;
    flex-direction: column;
  }
  .hero-overlay {
    opacity: 0;
  }
  .hero-bg {
    position: relative;
    inset: 0;
    z-index: 0;
    width: 100%;
    min-height: 250px;
    flex-grow: 1;
  }

    .hero-bg::before {
    content: unset;
    display: none;
  }
  .hero-content {
    padding: 12px 24px;
  }

  .hero-p,.hero-badge-pill {
    display: none;
  }

  .hero-left {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .hero-h1 {
    order: 1;
  }
  .hero-eyebrow {
    order: 2;
  }

  .hero-tags {
    order: 4;
    display: none;
  }

  .hero-btns {
    order: 5;
  }

  .info-strip,.launch-section {
    display: none;
  }
  body #chat-square {
      bottom: 50px !important;
  }
}
