/* ─── RESET & BASE ─────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Inter', sans-serif;
  background: #FAFAF8;
  color: #1A1A1A;
  line-height: 1.6;
  overflow-x: hidden;
  text-align: justify;
}
a { text-decoration: none; color: inherit; }
img { display: block; max-width: 100%; }

/* ─── TOKENS ────────────────────────────────────────────────────── */
:root {
  --navy:      #0E2340;
  --navy-mid:  #1C3557;
  --navy-soft: #2A4A72;
  --blue:      #008bd0;
  --light-blue:#1db4e0;
  --blue-pale: #c5f2ff;
  --gold:      #db862b;
  --gold-light:#F0C040;
  --gold-pale: #FDF6E3;
  --cream:     #FAFAF8;
  --stone:     #F0EDE6;
  --ink:       #1A1A1A;
  --ink-60:    rgba(26,26,26,0.6);
  --ink-30:    rgba(26,26,26,0.3);
  --white:     #FFFFFF;
  --border:    rgba(26,26,26,0.1);
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --shadow-sm: 0 1px 4px rgba(0,0,0,0.06);
  --shadow-md: 0 4px 20px rgba(0,0,0,0.08);
  --shadow-lg: 0 12px 40px rgba(0,0,0,0.12);
  --container: 1160px;
  --pad-x: 40px;
}

/* ─── UTILITY ───────────────────────────────────────────────────── */
.container { max-width: var(--container); margin: 0 auto; padding: 0 var(--pad-x); }
.sr-only { position: absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.display { font-family: 'Playfair Display', Georgia, serif; }

/* ─── TOPBAR ────────────────────────────────────────────────────── */
.topbar {
  background: var(--navy);
  padding: 8px 0;
  font-size: 12px;
  color: rgba(255,255,255,0.55);
}
.topbar .container {
  display: flex;
  justify-content: end;
  align-items: center;
  gap: 16px;
}
.topbar-links { display: flex; gap: 20px; }
.topbar-links a {
  color: rgba(255,255,255,0.55);
  transition: color 0.2s;
}
.topbar-links a:hover { color: var(--light-blue); }
.topbar-contact { display: flex; gap: 20px; }
.topbar-contact span { display: flex; align-items: center; gap: 6px; }
.topbar-contact svg { opacity: 0.6; }

/* ─── NAVBAR ────────────────────────────────────────────────────── */
.navbar {
  position: sticky;
  top: 0;
  z-index: 100;
  background: var(--white);
  border-bottom: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
}
.navbar .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 68px;
}
.logo {
  display: flex;
  align-items: center;
  gap: 10px;
}
.logo-icon {
  width: 36px;
  height: 36px;
  background: var(--navy);
  border-radius: var(--radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
}
.logo-icon svg { color: var(--light-blue); }
.logo-text { line-height: 1.1; }
.logo-name {
  font-family: 'Playfair Display', serif;
  font-size: 17px;
  font-weight: 600;
  color: var(--navy);
  letter-spacing: 0.5px;
}
.logo-tagline { font-size: 9px; letter-spacing: 1.5px; color: var(--blue); text-transform: uppercase; }

.nav-menu { display: flex; align-items: center; gap: 4px; }
.nav-item { position: relative; }
.nav-link {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 500;
  color: var(--ink-60);
  border-radius: var(--radius-sm);
  transition: color 0.2s, background 0.2s;
  cursor: pointer;
}
.nav-link:hover { color: var(--navy); background: var(--stone); }
.nav-link.active { color: var(--navy); }
.nav-arrow { font-size: 10px; opacity: 0.5; }

.dropdown {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  min-width: 200px;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-lg);
  padding: 6px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: all 0.2s;
  z-index: 200;
}
.nav-item:hover .dropdown { opacity: 1; visibility: visible; transform: translateY(0); }
.dropdown a {
  display: block;
  padding: 8px 12px;
  font-size: 13px;
  color: var(--ink-60);
  border-radius: var(--radius-sm);
  transition: all 0.15s;
}
.dropdown a:hover { background: var(--stone); color: var(--navy); }

.nav-actions { display: flex; align-items: center; gap: 10px; }
.btn-ghost {
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  color: var(--navy);
  border: 1px solid var(--navy);
  border-radius: var(--radius-sm);
  background: transparent;
  cursor: pointer;
  transition: all 0.2s;
}
.btn-ghost:hover { background: var(--navy); color: var(--white); }
.btn-primary {
  padding: 8px 20px;
  font-size: 13px;
  font-weight: 600;
  color: var(--white);
  background: var(--blue);
  border: none;
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: all 0.2s;
  letter-spacing: 0.3px;
}
.btn-primary:hover { background: #9A6F09; }

/* ─── HERO ──────────────────────────────────────────────────────── */
/*.hero {
  background: var(--navy);
  position: relative;
  overflow: hidden;
  min-height: 580px;
  display: flex;
  align-items: center;
}*/
.hero-bg-pattern {
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(circle at 70% 50%, rgba(184,134,11,0.12) 0%, transparent 55%),
    radial-gradient(circle at 20% 80%, rgba(42,74,114,0.5) 0%, transparent 50%);
  pointer-events: none;
}
.hero-grid-overlay {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,0.02) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px);
  background-size: 60px 60px;
  pointer-events: none;
}
/*
.hero .container {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr 400px;
  gap: 60px;
  align-items: center;
  padding-top: 60px;
  padding-bottom: 60px;
}*/
.hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(184,134,11,0.15);
  border: 1px solid rgba(184,134,11,0.3);
  color: var(--light-blue);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 5px 14px;
  border-radius: 20px;
  margin-bottom: 20px;
}
.hero-eyebrow-dot {
  width: 5px;
  height: 5px;
  background: var(--white);
  border-radius: 50%;
}
.hero-title {
  font-family: 'Playfair Display', serif;
  font-size: 52px;
  font-weight: 500;
  color: var(--white);
  line-height: 1.15;
  margin-bottom: 20px;
}
.hero-title em {
  color: var(--light-blue);
  font-style: normal;
}
.hero-body {
  font-size: 15px;
  color: rgba(255,255,255,0.6);
  line-height: 1.8;
  margin-bottom: 32px;
  max-width: 480px;
}
.hero-btns { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 48px; }
.btn-hero-primary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 28px;
  background: var(--blue);
  color: var(--white);
  font-size: 14px;
  font-weight: 600;
  border-radius: var(--radius-sm);
  border: none;
  cursor: pointer;
  transition: all 0.2s;
}
.btn-hero-primary:hover { background: var(--light-blue); transform: translateY(-1px); }
.btn-hero-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 28px;
  background: transparent;
  color: rgba(152, 152, 152, 0.85);
  font-size: 14px;
  font-weight: 500;
  border: 1px solid rgba(113, 113, 113, 0.25);
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: all 0.2s;
}
.btn-hero-secondary:hover { border-color: rgba(121, 121, 121, 0.4); background: rgba(226, 225, 225,0.05); }

.btn-hero-enhance {
  width: 100%;
  display: block;
  text-align: center;

}
.hero-locations {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.hero-locations-label { font-size: 11px; color: rgba(255,255,255,0.35); margin-right: 4px; }
.location-pill {
  font-size: 11px;
  color: var(--ink-30);
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  padding: 4px 10px;
  border-radius: 20px;
}

/* hero right: stat cards */
.hero-stats { display: flex; flex-direction: column; gap: 12px; }
.hero-stat-card {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--radius-md);
  padding: 20px 22px;
  display: flex;
  align-items: center;
  gap: 16px;
  backdrop-filter: blur(8px);
  transition: border-color 0.2s;
}
.hero-stat-card:hover { border-color: rgba(184,134,11,0.4); }
.stat-icon {
  width: 42px;
  height: 42px;
  background: rgba(184,134,11,0.15);
  border-radius: var(--radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 20px;
}
.stat-info {}
.stat-num {
  font-family: 'Playfair Display', serif;
  font-size: 26px;
  font-weight: 600;
  color: var(--light-blue);
  line-height: 1;
}
.stat-label { font-size: 12px; color: rgba(255,255,255,0.5); margin-top: 2px; }

/* ─── SEARCH BAR ────────────────────────────────────────────────── */
.search-section {
  background: var(--white);
  padding: 0;
  border-bottom: 1px solid var(--border);
  box-shadow: var(--shadow-md);
}
.search-inner {
  display: flex;
  align-items: center;
  gap: 0;
}
.search-field {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 16px 24px;
  border-right: 1px solid var(--border);
}
.search-field:last-of-type { border-right: none; }
.search-field label {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: var(--ink-30);
  margin-bottom: 4px;
}
.search-field select {
  border: none;
  outline: none;
  font-size: 13px;
  font-weight: 500;
  color: var(--ink);
  background: transparent;
  cursor: pointer;
  font-family: 'Inter', sans-serif;
  -webkit-appearance: none;
}
.search-field select option { color: var(--ink); }
.search-btn-wrap {
  padding: 12px 20px;
  background: var(--navy);
  flex-shrink: 0;
}
.search-submit {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: var(--blue);
  color: var(--white);
  font-size: 13px;
  font-weight: 600;
  border: none;
  border-radius: var(--radius-sm);
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.2s;
}
.search-submit:hover { background: #9A6F09; }

/* ─── STATS STRIP ───────────────────────────────────────────────── */
.stats-strip {
  background: var(--navy);
  padding: 0;
}
.stats-strip .container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.strip-stat {
  padding: 28px 32px;
  border-right: 1px solid rgba(255,255,255,0.08);
  text-align: center;
}
.strip-stat:last-child { border-right: none; }
.strip-num {
  font-family: 'Playfair Display', serif;
  font-size: 32px;
  font-weight: 600;
  color: var(--light-blue);
}
.strip-label { font-size: 11px; color: rgba(255,255,255,0.45); margin-top: 4px; letter-spacing: 0.3px; }

/* ─── SECTION SCAFFOLDING ───────────────────────────────────────── */
.section { padding: 40px 0; }
.section-alt { background: var(--stone); }
.section-dark { background: var(--navy); }
.section-header { margin-bottom: 48px; }
.section-header.centered { text-align: center; }
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 12px;
}
.eyebrow::before {
  content: '';
  width: 24px;
  height: 1px;
  background: var(--blue);
  flex-shrink: 0;
}
.section-title {
  font-family: 'Playfair Display', serif;
  font-size: 36px;
  font-weight: 500;
  color: var(--navy);
  line-height: 1.2;
  margin-bottom: 14px;
}
.section-dark .section-title { color: var(--white); }
.section-body { font-size: 15px; color: var(--ink-60); max-width: 520px; line-height: 1.8; }
.section-dark .section-body { color: rgba(255,255,255,0.55); }
.section-hdr-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 48px;
}
.view-all {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 500;
  color: var(--blue);
  flex-shrink: 0;
  transition: gap 0.2s;
}
.view-all:hover { gap: 10px; }

/* ─── FILTER TABS ────────────────────────────────────────────────── */
.filter-tabs { display: flex; gap: 8px; margin-bottom: 32px; flex-wrap: wrap; }
.filter-tab {
  padding: 7px 20px;
  font-size: 12px;
  font-weight: 500;
  border: 1px solid var(--border);
  border-radius: 20px;
  background: var(--white);
  color: var(--ink-60);
  cursor: pointer;
  transition: all 0.2s;
}
.filter-tab:hover { border-color: var(--navy); color: var(--navy); }
.filter-tab.active { background: var(--navy); color: var(--white); border-color: var(--navy); }

/* ─── PROJECT GRID ───────────────────────────────────────────────── */
.proj-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.proj-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: transform 0.25s, box-shadow 0.25s;
}
.proj-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); }
.proj-card-img {
  height: 200px;
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #1C3557 0%, #2A4A72 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}
/*
.proj-card-img-placeholder {
  font-size: 56px;
  opacity: 0.12;
  color: var(--white);
}*/
.proj-card-img img { width: 100%; height: 100%; object-fit: fill; position: absolute; inset: 0; }
.proj-badge {
  position: absolute;
  top: 166px;
  right: 5px;
  font-size: 10px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 20px;
  letter-spacing: 0.3px;
}
.badge-open   { background: #E8F5E9; color: #2E7D32; }
.badge-sold   { background: #FFEBEE; color: #C62828; }
.badge-few    { background: #FFF8E1; color: #E65100; }
.badge-coming { background: #E3F2FD; color: #1565C0; }
.proj-approvals {
  position: absolute;
  bottom: 12px;
  left: 12px;
  display: flex;
  gap: 5px;
}
.approval-tag {
  font-size: 9px;
  font-weight: 600;
  padding: 3px 7px;
  border-radius: 3px;
  background: rgba(255,255,255,0.9);
  color: #1565C0;
}
.proj-body { padding: 20px; }
.proj-meta { display: flex; align-items: center; gap: 6px; margin-bottom: 8px; }
.proj-type {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--blue);
}
.proj-meta-dot { width: 3px; height: 3px; border-radius: 50%; background: var(--ink-30); }
.proj-location { font-size: 10px; color: var(--ink-30); }
.proj-name {
  font-family: 'Playfair Display', serif;
  font-size: 17px;
  font-weight: 500;
  color: var(--navy);
  margin-bottom: 6px;
  line-height: 1.3;
}
.proj-desc { font-size: 12px; color: var(--ink-60); line-height: 1.6; margin-bottom: 18px; }
.proj-actions { display: flex; gap: 8px; }
.btn-proj-outline {
  flex: 1;
  padding: 8px;
  font-size: 12px;
  font-weight: 500;
  color: var(--navy);
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
  background: transparent;
  cursor: pointer;
  text-align: center;
  transition: all 0.15s;
}
.btn-proj-outline:hover { border-color: var(--navy); background: var(--stone); }
.btn-proj-fill {
  flex: 1;
  padding: 8px;
  font-size: 12px;
  font-weight: 600;
  color: var(--white);
  background: var(--navy);
  border: none;
  border-radius: var(--radius-sm);
  cursor: pointer;
  text-align: center;
  transition: background 0.15s;
}
.btn-proj-fill:hover { background: var(--navy-soft); }

/* ─── ABOUT ──────────────────────────────────────────────────────── */
.about-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}
.about-img-wrap { position: relative; }
.about-img-main {
  width: 100%;
  height: 353px;
  background: linear-gradient(135deg, #fff 0%, #fff 60%, #fff 100%);
  border-radius: var(--radius-lg);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 80px;
  opacity: 0.85;
  color: var(--white);
  overflow: hidden;
}
.about-float-card {
  position: absolute;
  bottom: -20px;
  right: -20px;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  padding: 20px 24px;
  box-shadow: var(--shadow-lg);
}
.about-float-num {
  font-family: 'Playfair Display', serif;
  font-size: 36px;
  color: var(--navy);
  font-weight: 600;
  line-height: 1;
}
.about-float-label { font-size: 12px; color: var(--ink-60); margin-top: 4px; }
.about-content { text-align: justify;}
.about-body { font-size: 15px; color: var(--ink-60); line-height: 1.9; margin-bottom: 32px; }
.about-pillars {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 32px;
}
.about-pillar {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.pillar-icon {
  width: 36px;
  height: 36px;
  background: var(--blue-pale);
  border-radius: var(--radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 16px;
}
.pillar-text {}
.pillar-name { font-size: 13px; font-weight: 600; color: var(--navy); margin-bottom: 2px; }
.pillar-desc { font-size: 12px; color: var(--ink-60); line-height: 1.5; }

/* ─── WHY US ──────────────────────────────────────────────────────── */
.why-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
}
.why-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: var(--radius-lg);
  padding: 28px 20px;
  text-align: center;
  transition: border-color 0.25s, background 0.25s;
}
.why-card:hover {
  border-color: rgba(184,134,11,0.4);
  background: rgba(184,134,11,0.06);
}
.why-icon {
  width: 52px;
  height: 52px;
  background: rgba(184,134,11,0.15);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 16px;
  font-size: 22px;
  color: var(--light-blue);
}
.why-name { font-size: 13px; font-weight: 600; color: var(--white); margin-bottom: 8px; }
.why-desc { font-size: 11px; color: rgba(255,255,255,0.4); line-height: 1.6; }

/* ─── TESTIMONIALS ───────────────────────────────────────────────── */
.test-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
.test-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 28px;
  position: relative;
  transition: box-shadow 0.25s;
}
.test-card:hover { box-shadow: var(--shadow-md); }
.test-card::before {
  content: '\201C';
  font-family: 'Playfair Display', serif;
  font-size: 80px;
  color: var(--blue);
  opacity: 0.15;
  position: absolute;
  top: 10px;
  left: 20px;
  line-height: 1;
}
.test-stars { color: var(--blue); font-size: 14px; letter-spacing: 2px; margin-bottom: 12px; }
.test-quote {
  font-size: 14px;
  color: var(--ink-60);
  line-height: 1.8;
  text-align: justify;
  margin-bottom: 20px;
  font-style: italic;
  position: relative;
  z-index: 1;
}
.test-author { display: flex; align-items: center; gap: 12px; }
.test-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--navy);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 600;
  color: var(--white);
  flex-shrink: 0;
}
.test-name { font-size: 13px; font-weight: 600; color: var(--navy); }
.test-project { font-size: 11px; color: var(--ink-30); margin-top: 2px; }

/* ─── PRESENCE MAP ───────────────────────────────────────────────── */
.presence-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.presence-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 24px 20px;
  text-align: center;
  transition: all 0.25s;
}
.presence-card:hover {
  border-color: var(--blue);
  box-shadow: 0 0 0 3px rgba(184,134,11,0.08);
}
.presence-icon {
  font-size: 32px;
  margin-bottom: 12px;
  display: block;
}
.presence-city {
  font-family: 'Playfair Display', serif;
  font-size: 18px;
  font-weight: 500;
  color: var(--navy);
  margin-bottom: 4px;
}
.presence-state { font-size: 11px; color: var(--ink-30); margin-bottom: 12px; }
.presence-count {
  display: inline-block;
  background: var(--blue-pale);
  color: var(--blue);
  font-size: 11px;
  font-weight: 600;
  padding: 3px 12px;
  border-radius: 20px;
}

/* ─── CTA STRIP ──────────────────────────────────────────────────── */
.cta-strip {
  background: linear-gradient(135deg, var(--navy) 0%, var(--navy-soft) 100%);
  padding: 60px 0;
  position: relative;
  overflow: hidden;
}
.cta-strip::before {
  content: '';
  position: absolute;
  right: -80px;
  top: -80px;
  width: 320px;
  height: 320px;
  background: radial-gradient(circle, rgba(184,134,11,0.15) 0%, transparent 70%);
  pointer-events: none;
}
.cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.cta-text .eyebrow { color: var(--light-blue); margin-bottom: 8px; }
.cta-text .eyebrow::before { background: var(--light-blue); }
.cta-title {
  font-family: 'Playfair Display', serif;
  font-size: 30px;
  color: var(--white);
  margin-bottom: 8px;
  line-height: 1.25;
}
.cta-sub { font-size: 14px; color: rgba(255,255,255,0.55); }
.cta-actions { display: flex; flex-direction: column; align-items: flex-end; gap: 12px; }
.cta-phone-wrap {}
.cta-phone-label { font-size: 10px; letter-spacing: 1px; text-transform: uppercase; color: rgba(255,255,255,0.35); margin-bottom: 4px; text-align: right; }
.cta-phone {
  font-family: 'Playfair Display', serif;
  font-size: 28px;
  color: var(--light-blue);
  font-weight: 500;
}
.cta-btns { display: flex; gap: 10px; }
.btn-wa {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 20px;
  background: #25D366;
  color: var(--white);
  font-size: 13px;
  font-weight: 600;
  border: none;
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: background 0.2s;
}
.btn-wa:hover { background: #1ea855; }
.btn-enquire {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 20px;
  background: var(--blue);
  color: var(--white);
  font-size: 13px;
  font-weight: 600;
  border: none;
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: background 0.2s;
}
/*.btn-enquire:hover { background: #9A6F09; }*/

/* ─── FOOTER ─────────────────────────────────────────────────────── */
.footer { background: #060f1e; padding: 60px 0 0; }
.footer-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1.2fr;
  gap: 48px;
  padding-bottom: 48px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.footer-brand-name {
  font-family: 'Playfair Display', serif;
  font-size: 20px;
  color: var(--white);
  margin-bottom: 8px;
}
.footer-tagline {
  font-size: 12px;
  color: rgba(255,255,255,0.35);
  line-height: 1.8;
  margin-bottom: 24px;
  font-style: italic;
}
.footer-socials { display: flex; gap: 8px; }
.social-btn {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,0.4);
  font-size: 15px;
  cursor: pointer;
  transition: all 0.2s;
  text-decoration: none;
}
.social-btn:hover { background: var(--blue); border-color: var(--blue); color: var(--white); }
.footer-col h4 {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.5);
  margin-bottom: 16px;
}
.footer-col a {
  display: block;
  font-size: 12px;
  color: rgba(255,255,255,0.35);
  margin-bottom: 10px;
  transition: color 0.15s;
}
.footer-col a:hover { color: var(--light-blue); }
.footer-contact-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 12px;
  color: rgba(255,255,255,0.35);
  margin-bottom: 12px;
  line-height: 1.5;
}
.footer-contact-icon { font-size: 14px; flex-shrink: 0; margin-top: 1px; }
.footer-bottom {
  padding: 18px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 11px;
  color: rgba(255,255,255,0.2);
  gap: 16px;
  flex-wrap: wrap;
}
.footer-bottom-links { display: flex; gap: 16px; }
.footer-bottom-links a {
  color: rgba(255,255,255,0.2);
  transition: color 0.15s;
}
.footer-bottom-links a:hover { color: rgba(255,255,255,0.5); }

/* ─── RERA DISCLAIMER ───────────────────────────────────────────── */
.disclaimer-bar {
  background: var(--stone);
  border-top: 1px solid var(--border);
  padding: 14px 0;
}
.disclaimer-text { font-size: 10px; color: var(--ink-30); line-height: 1.6; text-align: center; }

/* ─── FLOATING CTA ───────────────────────────────────────────────── */
.floating-cta {
  position: fixed;
  bottom: 24px;
  z-index: 999;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-end;
}
.float-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 18px;
  border-radius: 28px;
  font-size: 13px;
  font-weight: 600;
  border: none;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(0,0,0,0.2);
  transition: transform 0.2s, box-shadow 0.2s;
}
.float-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.25); }
.float-wa { background: #25D366; color: var(--white); }
.float-enquire { background: var(--navy); color: var(--white); }

/* ─── BACK TO TOP ────────────────────────────────────────────────── */
.back-to-top {
  position: fixed;
  left: 35px;
  bottom: 130px;
  z-index: 998;
  width: 40px;
  height: 40px;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: var(--shadow-md);
  font-size: 16px;
  color: var(--navy);
  transition: all 0.2s;
}
.back-to-top:hover { background: var(--navy); color: var(--white); }

/* ─── DIVIDER ─────────────────────────────────────────────────────── */
.gold-divider {
  width: 48px;
  height: 2px;
  background: var(--blue);
  margin: 12px 0 0;
  border-radius: 2px;
}
.section-header.centered .gold-divider { margin: 12px auto 0; }

/* ─── RESPONSIVE (simplified) ────────────────────────────────────── */
@media (max-width: 900px) {
  :root { --pad-x: 20px; }
  .hero .container { grid-template-columns: 1fr; }
  .hero-stats { flex-direction: row; flex-wrap: wrap; }
  .hero-stat-card { flex: 1; min-width: 140px; }
  .hero-title { font-size: 36px; }
  .proj-grid { grid-template-columns: repeat(2,1fr); }
  .about-grid { grid-template-columns: 1fr; }
  .about-img-wrap { display: none; }
  .why-grid { grid-template-columns: repeat(3,1fr); }
  .presence-grid { grid-template-columns: repeat(2,1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .cta-inner { flex-direction: column; text-align: center; }
  .cta-actions { align-items: center; }
  .stats-strip .container { grid-template-columns: repeat(2,1fr); }
  .search-inner { flex-wrap: wrap; }
  .search-field { min-width: 140px; flex: 1 0 calc(50% - 8px); }
  .topbar { display: none; }
  .test-grid { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .proj-grid { grid-template-columns: 1fr; }
  .why-grid { grid-template-columns: 1fr 1fr; }
  .nav-menu { display: none; }
  .section { padding: 48px 0; }
}

/* ─── SCROLL ANIMATION HELPERS ───────────────────────────────────── */
.fade-up {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.55s ease, transform 0.55s ease;
}
.fade-up.visible { opacity: 1; transform: translateY(0);}



/* Team page CSS */
.page-hero{background:var(--navy);position:relative;overflow:hidden;padding:72px 0 60px}
.page-hero-bg{position:absolute;inset:0;background-image:radial-gradient(circle at 80% 30%,rgba(184,134,11,.1) 0%,transparent 55%),radial-gradient(circle at 15% 80%,rgba(42,74,114,.5) 0%,transparent 50%)}
.page-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);background-size:60px 60px}
.page-hero .container{position:relative;z-index:2}
.breadcrumb{display:flex;align-items:center;gap:8px;font-size:12px;color:rgba(255,255,255,.4);margin-bottom:20px}
.breadcrumb a{color:rgba(255,255,255,.4);transition:color .2s}
.breadcrumb a:hover{color:var(--light-blue)}
.breadcrumb-current{color:var(--light-blue)}
.page-hero-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);color:var(--white);font-size:11px;font-weight:500;letter-spacing:1px;text-transform:uppercase;padding:5px 14px;border-radius:20px;margin-bottom:16px}
.page-hero-title{font-family:'Playfair Display',serif;font-size:48px;font-weight:500;color:var(--white);line-height:1.15;margin-bottom:16px}
.page-hero-title em{color:var(--gold-light);font-style:normal}
.page-hero-sub{font-size:16px;color:rgba(255,255,255,.85);max-width:560px;line-height:1.8}
.float-enq{background:var(--navy);color:var(--white)}
.nav-link:hover,.nav-link.active{color:var(--navy);background:var(--stone)}
.dropdown a.current{color:var(--blue);font-weight:500}
.back-top{position:fixed;right:24px;bottom:130px;z-index:998;width:40px;height:40px;background:var(--white);border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-md);font-size:16px;color:var(--navy);transition:all .2s}
.back-top:hover{background:var(--navy);color:var(--white)}
.sec-title{font-family:'Playfair Display',serif;font-size:36px;font-weight:500;color:var(--navy);line-height:1.2;margin-bottom:12px}
.fade-up{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}
.fade-left{opacity:0;transform:translateX(-24px);transition:opacity .55s ease,transform .55s ease}
.fade-left.visible{opacity:1;transform:translateX(0)}
.fade-right{opacity:0;transform:translateX(24px);transition:opacity .55s ease,transform .55s ease}
.fade-right.visible{opacity:1;transform:translateX(0)}
@media(max-width:960px){:root{--pad-x:20px}.footer-grid{grid-template-columns:1fr 1fr}.cta-inner{flex-direction:column;text-align:center}.cta-actions{align-items:center}.page-hero-title{font-size:34px}.topbar{display:none}}
@media(max-width:600px){.nav-menu{display:none}.section{padding:48px 0}}

.team-intro{font-size:15px;color:var(--ink-60);line-height:1.9;max-width:680px;margin:0 auto 60px;text-align:center}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.team-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:transform .25s,box-shadow .25s}
.team-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.team-img{height:220px;background:linear-gradient(145deg,#1C3557,#2A4A72);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.team-img img{width:100%;height:100%;object-fit:cover;object-position:top;position:absolute;inset:0}
.team-img-placeholder{font-size:60px;opacity:.08;color:#fff}
.team-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(14,35,64,.85),transparent 60%);display:flex;align-items:flex-end}
.team-dept{font-size:9px;font-weight:600;letter-spacing:1px;text-transform:uppercase;padding:3px 10px;border-radius:20px;background:rgba(0,139,208,.3);color:var(--light-blue);border:1px solid rgba(0,139,208,.4);margin:0 14px 14px}
.team-body{padding:18px}
.team-name{font-family:'Playfair Display',serif;font-size:16px;color:var(--navy);margin-bottom:3px}
.team-role{font-size:11px;color:var(--blue);font-weight:600;margin-bottom:10px;line-height:1.4}
.team-bio{font-size:11px;color:var(--ink-60);line-height:1.7}
.team-exp{display:inline-flex;align-items:center;gap:4px;margin-top:10px;font-size:10px;color:var(--ink-30);font-weight:500}
.team-exp::before{content:'◆';color:var(--blue);font-size:7px}
@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.team-grid{grid-template-columns:1fr}}

/* About Us page CSS */


/* ─── STAT STRIP ─────────────────────────────────────────────── */
.stat-strip { background: var(--blue); }
.stat-strip .container { display: grid; grid-template-columns: repeat(4, 1fr); }
.sstat { padding: 22px 0; text-align: center; border-right: 1px solid rgba(255,255,255,0.25); }
.sstat:last-child { border-right: none; }
.sstat-num { font-family: 'Playfair Display', serif; font-size: 30px; font-weight: 600; color: var(--white); }
.sstat-label { font-size: 11px; color: rgba(255,255,255,0.75); margin-top: 3px; }

/* ─── SECTION SCAFFOLDING ────────────────────────────────────── */
.section-alt { background: var(--stone); }
.section-dark { background: var(--navy); }
.eyebrow {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 11px; font-weight: 600; letter-spacing: 1.5px;
  text-transform: uppercase; color: var(--blue); margin-bottom: 12px;
}
.eyebrow::before { content: ''; width: 24px; height: 1px; background: var(--blue); flex-shrink: 0; }
.sec-title {
  font-family: 'Playfair Display', serif;
  font-size: 36px; font-weight: 500; color: var(--navy);
  line-height: 1.2; margin-bottom: 12px;
}
.section-dark .sec-title { color: var(--white); }
.gold-divider { width: 48px; height: 2px; background: var(--blue); border-radius: 2px; margin: 12px 0 24px; }

/* ─── STORY SECTION ──────────────────────────────────────────── */
.story-grid {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 80px; align-items: start;
}
.story-img-stack { position: relative; }
.story-img-main {
  width: 100%; height: 350px; border-radius: var(--radius-lg); overflow: hidden;
  background: linear-gradient(145deg, #0E2340 0%, #1C3557 40%, #2A5280 70%, #B8860B 100%);
  display: flex; align-items: center; justify-content: center;
  position: relative;
}
.story-img-inner { font-size: 100px; opacity: 0.8; }
.story-img-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(14,35,64,0.7) 0%, transparent 60%);
}
.story-img-caption {
  position: absolute; bottom: 0; left: 24px; right: 24px;
  color: var(--white);
}
.story-img-caption h3 { font-family: 'Playfair Display', serif; font-size: 20px; margin-bottom: 4px; }
.story-img-caption p { font-size: 12px; color: rgba(255,255,255,0.6); }
.story-float {
  position: absolute; top: -20px; right: -20px;
  background: var(--white); border: 1px solid var(--border);
  border-radius: var(--radius-md); padding: 20px 24px;
  box-shadow: var(--shadow-lg); text-align: center;
}
.story-float-year { font-family: 'Playfair Display', serif; font-size: 40px; color: var(--navy); line-height: 1; }
.story-float-label { font-size: 11px; color: var(--ink-30); margin-top: 4px; }
.story-float-badge {
  margin-top: 10px; display: inline-block;
  background: var(--blue-pale); color: var(--blue);
  font-size: 10px; font-weight: 600;
  padding: 3px 10px; border-radius: 20px;
}
.story-content-text {
  font-size: 15px; color: var(--ink-60); line-height: 1.9;
  margin-bottom: 20px;
}
.story-content-text strong { color: var(--navy); font-weight: 600; }
.story-highlights {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 14px; margin: 28px 0;
}
.highlight-item {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 14px; background: var(--stone);
  border-radius: var(--radius-md); border: 1px solid var(--border);
  transition: border-color .2s, box-shadow .2s;
}
.highlight-item:hover { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(184,134,11,0.06); }
.highlight-icon {
  width: 34px; height: 34px; border-radius: var(--radius-sm);
  background: var(--blue-pale); display: flex; align-items: center;
  justify-content: center; font-size: 16px; flex-shrink: 0;
}
.highlight-name { font-size: 13px; font-weight: 600; color: var(--navy); margin-bottom: 3px; }
.highlight-desc { font-size: 11px; color: var(--ink-60); line-height: 1.5; text-align: left; }
.btn-cta {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 13px 28px; background: var(--blue);
  color: var(--white); font-size: 14px; font-weight: 600;
  border: none; border-radius: var(--radius-sm);
  cursor: pointer; transition: background .2s, transform .2s;
}
.btn-cta:hover { background: #9A6F09; transform: translateY(-1px); }

/* ─── FOUNDER SECTION ────────────────────────────────────────── */
.founder-grid {
  display: grid; grid-template-columns: 340px 1fr;
  gap: 60px; align-items: center;
}
.founder-card {
  background: var(--white); border: 1px solid var(--border);
  border-radius: var(--radius-lg); overflow: hidden;
  box-shadow: var(--shadow-md);
}
.founder-img {
  height: 300px;
  background: linear-gradient(145deg, #1C3557, #0E2340);
  display: flex; align-items: center; justify-content: center;
  font-size: 80px; position: relative;
}
.founder-img-inner { opacity: 0.6; }
.founder-badge {
  position: absolute; bottom: 16px; left: 16px; right: 16px;
  background: var(--blue); color: var(--white);
  border-radius: var(--radius-sm); padding: 10px 14px; text-align: center;
}
.founder-badge-name { font-family: 'Playfair Display', serif; font-size: 16px; }
.founder-badge-title { font-size: 11px; opacity: 0.85; margin-top: 2px; }
.founder-card-body { padding: 20px; }
.founder-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.founder-tag {
  font-size: 10px; font-weight: 500;
  padding: 4px 10px; border-radius: 20px;
  background: var(--stone); color: var(--ink-60);
  border: 1px solid var(--border);
}
.founder-quote {
  font-family: 'Playfair Display', serif;
  font-size: 20px; font-style: italic;
  color: var(--navy); line-height: 1.6; margin-bottom: 24px;
}
.founder-quote::before { content: '\201C'; font-size: 48px; color: var(--blue); opacity: 0.3; line-height: 0.5; display: block; margin-bottom: 12px; }
.founder-bio { font-size: 15px; color: var(--ink-60); line-height: 1.9; margin-bottom: 16px; }
.founder-credentials { display: flex; gap: 20px; flex-wrap: wrap; margin-top: 24px; }
.credential { text-align: center; padding: 14px 20px; background: var(--navy); border-radius: var(--radius-md); }
.credential-val { font-family: 'Playfair Display', serif; font-size: 22px; color: var(--light-blue); }
.credential-label { font-size: 10px; color: rgba(255,255,255,0.5); margin-top: 3px; }

/* ─── TIMELINE ───────────────────────────────────────────────── */
.timeline { position: relative; padding: 0 0 0 40px; }
.timeline::before {
  content: '';
  position: absolute; left: 12px; top: 0; bottom: 0;
  width: 2px; background: linear-gradient(to bottom, var(--blue) 0%, rgba(184,134,11,0.1) 100%);
}
.tl-item { position: relative; margin-bottom: 40px; }
.tl-item:last-child { margin-bottom: 0; }
.tl-dot {
  position: absolute; left: -35px; top: 4px;
  width: 22px; height: 22px; border-radius: 50%;
  background: var(--white); border: 3px solid var(--blue);
  display: flex; align-items: center; justify-content: center;
}
.tl-dot-inner { width: 8px; height: 8px; border-radius: 50%; background: var(--blue); }
.tl-year { font-size: 11px; font-weight: 700; color: var(--blue); letter-spacing: 1px; margin-bottom: 4px; }
.tl-title { font-family: 'Playfair Display', serif; font-size: 17px; color: var(--navy); margin-bottom: 6px; }
.tl-desc { font-size: 13px; color: var(--ink-60); line-height: 1.7; }

/* ─── VALUES ─────────────────────────────────────────────────── */
.values-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.value-card {
  background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08);
  border-radius: var(--radius-lg); padding: 32px 24px;
  text-align: center; transition: border-color .25s, background .25s;
}
.value-card:hover { border-color: rgba(184,134,11,0.4); background: rgba(184,134,11,0.06); }
.value-icon {
  width: 60px; height: 60px; border-radius: 50%;
  background: rgba(184,134,11,0.15);
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 20px; font-size: 26px; color: var(--light-blue);
}
.value-name { font-family: 'Playfair Display', serif; font-size: 18px; color: var(--white); margin-bottom: 10px; }
.value-desc { font-size: 13px; color: rgba(255,255,255,0.45); line-height: 1.7; }

/* ─── VERTICALS ──────────────────────────────────────────────── */
.verticals-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.vertical-card {
  background: var(--white); border: 1px solid var(--border);
  border-radius: var(--radius-lg); padding: 28px 20px; text-align: center;
  transition: all .25s;
}
.vertical-card:hover { border-color: var(--blue); transform: translateY(-4px); box-shadow: var(--shadow-lg); }
.vertical-icon { font-size: 36px; margin-bottom: 14px; display: block; }
.vertical-name { font-family: 'Playfair Display', serif; font-size: 17px; color: var(--navy); margin-bottom: 8px; }
.vertical-desc { font-size: 12px; color: var(--ink-60); line-height: 1.6; margin-bottom: 14px; }
.vertical-tag {
  display: inline-block; font-size: 10px; font-weight: 600;
  padding: 4px 12px; border-radius: 20px; background: var(--blue-pale); color: var(--blue);
}

/* ─── TEAM SECTION ───────────────────────────────────────────── */
.team-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.team-card {
  background: var(--white); border: 1px solid var(--border);
  border-radius: var(--radius-lg); overflow: hidden;
  transition: box-shadow .25s, transform .25s;
}
.team-card:hover { box-shadow: var(--shadow-md); transform: translateY(-3px); }
.team-img {
  height: 180px;
  background: linear-gradient(145deg, #1C3557, #2A4A72);
  display: flex; align-items: center; justify-content: center;
  font-size: 48px; color: rgba(255,255,255,0.1);
}
.team-body { padding: 16px; }
.team-name { font-family: 'Playfair Display', serif; font-size: 15px; color: var(--navy); margin-bottom: 3px; }
.team-role { font-size: 11px; color: var(--blue); font-weight: 500; margin-bottom: 8px; }
.team-desc { font-size: 11px; color: var(--ink-60); line-height: 1.6; }

/* ─── MAP + CONTACT ──────────────────────────────────────────── */
.map-contact-grid { display: grid; grid-template-columns: 1fr 420px; gap: 40px; align-items: start; }
.map-wrap { border-radius: var(--radius-lg); overflow: hidden; border: 1px solid var(--border); box-shadow: var(--shadow-md); height: 400px; }
.map-wrap iframe { width: 100%; height: 100%; border: none; display: block; }
.contact-cards { display: flex; flex-direction: column; gap: 14px; }
.contact-card {
  display: flex; align-items: flex-start; gap: 16px;
  background: var(--white); border: 1px solid var(--border);
  border-radius: var(--radius-md); padding: 20px;
  transition: border-color .2s, box-shadow .2s;
}
.contact-card:hover { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(184,134,11,0.06); }
.contact-icon {
  width: 44px; height: 44px; flex-shrink: 0;
  background: var(--blue-pale); border-radius: var(--radius-sm);
  display: flex; align-items: center; justify-content: center; font-size: 20px;
}
.contact-label { font-size: 10px; font-weight: 600; letter-spacing: 0.8px; text-transform: uppercase; color: var(--ink-30); margin-bottom: 5px; }
.contact-value { font-size: 14px; font-weight: 500; color: var(--navy); }
.contact-sub { font-size: 12px; color: var(--ink-60); margin-top: 2px; line-height: 1.5; }
.map-btn {
  display: flex; align-items: center; gap: 8px;
  padding: 11px 20px; background: var(--navy);
  color: var(--white); font-size: 13px; font-weight: 600;
  border: none; border-radius: var(--radius-sm); cursor: pointer;
  transition: background .2s; margin-top: 8px; width: 100%; justify-content: center;
}
.map-btn:hover { background: var(--navy-soft); }

/* ─── CTA STRIP ──────────────────────────────────────────────── */
.page-hero-quote {
  margin-top: 32px;
  padding: 20px 24px;
  border-left: 3px solid var(--blue);
  background: rgba(184,134,11,0.08);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  font-family: 'Playfair Display', serif;
  font-size: 17px; font-style: italic;
  color: rgba(255,255,255,0.85); line-height: 1.7;
  max-width: 580px;
}
.page-hero-quote cite {
  display: block; margin-top: 10px;
  font-size: 12px; font-style: normal;
  color: var(--gold-light); font-family: 'Inter', sans-serif;
  font-weight: 500; letter-spacing: 0.5px;
}
.cta-strip {
  background: linear-gradient(135deg, var(--navy) 0%, var(--navy-soft) 100%);
  padding: 60px 0; position: relative; overflow: hidden;
}
.cta-strip::before {
  content: ''; position: absolute; right: -80px; top: -80px;
  width: 320px; height: 320px;
  background: radial-gradient(circle, rgba(184,134,11,0.15) 0%, transparent 70%);
}
.cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.cta-title { font-family: 'Playfair Display', serif; font-size: 30px; color: var(--white); margin-bottom: 8px; }
.cta-sub { font-size: 14px; color: rgba(255,255,255,0.5); max-width: 460px; }
.cta-actions { display: flex; flex-direction: column; align-items: flex-end; gap: 12px; }
.cta-phone-label { font-size: 10px; letter-spacing: 1px; text-transform: uppercase; color: rgba(255,255,255,0.35); margin-bottom: 4px; text-align: right; }
.cta-phone { font-family: 'Playfair Display', serif; font-size: 28px; color: var(--light-blue); }
.cta-btns { display: flex; gap: 10px; }
.btn-wa {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 11px 20px; background: #25D366; color: var(--white);
  font-size: 13px; font-weight: 600; border: none; border-radius: var(--radius-sm);
  cursor: pointer; transition: background .2s;
}
.btn-wa:hover { background: #1ea855; }
.btn-enquire {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 11px 20px; background: var(--blue); color: var(--white);
  font-size: 13px; font-weight: 600; border: none; border-radius: var(--radius-sm);
  cursor: pointer; transition: background .2s;
}
/*.btn-enquire:hover { background: #9A6F09; }*/

/* Mission Vision Page CSS */

.mv-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:20px}
.mv-card{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}
.mv-card-hdr{padding:32px 32px 24px;display:flex;align-items:flex-start;gap:16px}
.mv-card-hdr.mission{background:var(--navy)}
.mv-card-hdr.vision{background:linear-gradient(135deg,#1C3557,#2A4A72)}
.mv-icon{width:56px;height:56px;border-radius:50%;background:rgba(184,134,11,.2);display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}
.mv-label{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--light-blue);margin-bottom:6px}
.mv-hdr-title{font-family:'Playfair Display',serif;font-size:26px;color:var(--white)}
.mv-card-body{background:var(--white);padding:28px 32px}
.mv-body-text{font-size:14px;color:var(--ink-60);line-height:1.9;margin-bottom:14px}
.mv-points{list-style:none;margin-top:8px}
.mv-points li{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--ink-60);padding:8px 0;border-bottom:1px solid var(--border);line-height:1.6}
.mv-points li:last-child{border-bottom:none}
.mv-points li::before{content:'✦';color:var(--blue);flex-shrink:0;margin-top:1px}
.pillars-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:48px}
.pillar-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px 18px;text-align:center;transition:all .25s}
.pillar-card:hover{border-color:var(--blue);transform:translateY(-3px);box-shadow:var(--shadow-md)}
.pillar-icon{font-size:32px;margin-bottom:12px;display:block}
.pillar-name{font-family:'Playfair Display',serif;font-size:15px;color:var(--navy);margin-bottom:6px}
.pillar-desc{font-size:11px;color:var(--ink-60);line-height:1.6}
@media(max-width:700px){.mv-grid{grid-template-columns:1fr}.pillars-grid{grid-template-columns:1fr 1fr}}

/* Our Management page CSS*/

.mgmt-intro{font-size:15px;color:var(--ink-60);line-height:1.9;max-width:760px;margin:0 auto 60px;text-align:center}
.mgmt-team{display:flex;flex-direction:column;gap:56px}
.mgmt-card{display:grid;grid-template-columns:300px 1fr;gap:48px;align-items:start;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .25s}
.mgmt-card:hover{box-shadow:var(--shadow-lg)}
.mgmt-card.reverse{direction:rtl}
.mgmt-card.reverse>*{direction:ltr}
.mgmt-img{height:360px;background:linear-gradient(145deg,#0E2340,#1C3557);display:flex;align-items:flex-end;position:relative;overflow:hidden}
.mgmt-img img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.mgmt-img-placeholder{font-size:80px;opacity:.07;color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}
.mgmt-badge{position:relative;z-index:2;width:100%;background:linear-gradient(to top,rgba(14,35,64,.95),transparent);padding:20px;text-align:center}
.mgmt-badge-name{font-family:'Playfair Display',serif;font-size:18px;color:var(--white)}
.mgmt-badge-role{font-size:11px;color:var(--light-blue);margin-top:3px}
.mgmt-body{padding:32px 36px 32px 0}
.mgmt-card.reverse .mgmt-body{padding:32px 0 32px 36px}
.mgmt-eyebrow{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--blue);margin-bottom:8px}
.mgmt-name{font-family:'Playfair Display',serif;font-size:28px;color:var(--navy);margin-bottom:4px}
.mgmt-role{font-size:13px;color:var(--ink-60);margin-bottom:20px;font-style:italic}
.mgmt-divider{width:40px;height:2px;background:var(--blue);border-radius:2px;margin-bottom:20px}
.mgmt-bio{font-size:14px;color:var(--ink-60);line-height:1.9;margin-bottom:20px}
.mgmt-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}
.mgmt-tag{font-size:10px;font-weight:500;padding:4px 12px;border-radius:20px;background:var(--stone);color:var(--ink-60);border:1px solid var(--border)}
.mgmt-linkedin{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:#0A66C2;padding:7px 14px;border-radius:var(--radius-sm);border:1px solid #0A66C2;transition:all .2s}
.mgmt-linkedin:hover{background:#0A66C2;color:#fff}
@media(max-width:800px){.mgmt-card,.mgmt-card.reverse{grid-template-columns:1fr;direction:ltr}.mgmt-img{height:240px}.mgmt-body,.mgmt-card.reverse .mgmt-body{padding:24px}}

/* Chairman message page CSS*/

.msg-grid{display:grid;grid-template-columns:360px 1fr;gap:60px;align-items:start}
.msg-portrait{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}
.msg-portrait-img{height:360px;background:linear-gradient(145deg,#0E2340,#1C3557);display:flex;align-items:flex-end;position:relative;overflow:hidden}
.msg-portrait-img img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.msg-portrait-placeholder{font-size:80px;opacity:.07;color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}
.msg-portrait-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(14,35,64,.9),transparent 55%)}
.msg-portrait-info{position:relative;z-index:2;padding:20px;text-align:center}
.msg-portrait-name{font-family:'Playfair Display',serif;font-size:20px;color:var(--white)}
.msg-portrait-title{font-size:11px;color:var(--light-blue);margin-top:4px}
.msg-portrait-sig{padding:20px 24px;text-align:center}
.msg-portrait-sig p{font-size:12px;color:var(--ink-60);line-height:1.6;font-style:italic}
.msg-content{}
.msg-quote-large{font-family:'Playfair Display',serif;font-size:22px;font-style:italic;color:var(--navy);line-height:1.55;margin-bottom:28px;padding:24px 28px;background:var(--blue-pale);border-left:4px solid var(--blue);border-radius:0 var(--radius-md) var(--radius-md) 0;position:relative}
.msg-quote-large::before{content:'"';font-size:80px;color:var(--blue);opacity:.2;position:absolute;top:-10px;left:14px;line-height:1}
.msg-body{font-size:15px;color:var(--ink-60);line-height:1.9;margin-bottom:18px}
.msg-values{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:28px 0}
.msg-value{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--stone);border-radius:var(--radius-md);border:1px solid var(--border)}
.msg-value-icon{font-size:20px;flex-shrink:0}
.msg-value-name{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:3px}
.msg-value-desc{font-size:11px;color:var(--ink-60);line-height:1.5}
.msg-sign{margin-top:28px;padding-top:24px;border-top:1px solid var(--border)}
.msg-sign-name{font-family:'Playfair Display',serif;font-size:20px;color:var(--navy)}
.msg-sign-title{font-size:12px;color:var(--blue);font-weight:500;margin-top:4px}
@media(max-width:800px){.msg-grid{grid-template-columns:1fr}.msg-values{grid-template-columns:1fr}}

/* Quality Policy page CSS*/

.qp-intro{font-size:16px;color:var(--ink-60);line-height:1.9;max-width:720px;margin:0 auto 60px;text-align:center}
.qp-main{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:30px;align-items:start}
.qp-text{}
.qp-body{font-size:15px;color:var(--ink-60);line-height:1.9;margin-bottom:16px}
.qp-body strong{color:var(--navy);font-weight:600}
.qp-pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:60px}
.qp-pillar{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 20px;text-align:center;transition:all .25s}
.qp-pillar:hover{border-color:var(--blue);box-shadow:var(--shadow-md);transform:translateY(-3px)}
.qp-pillar-icon{font-size:36px;margin-bottom:14px;display:block}
.qp-pillar-name{font-family:'Playfair Display',serif;font-size:16px;color:var(--navy);margin-bottom:8px}
.qp-pillar-desc{font-size:12px;color:var(--ink-60);line-height:1.6}
.qp-specs-box{background:var(--navy);border-radius:var(--radius-lg);padding:36px;color:rgba(255,255,255,.8)}
.qp-specs-title{font-family:'Playfair Display',serif;font-size:22px;color:var(--white);margin-bottom:6px}
.qp-specs-sub{font-size:12px;color:rgba(255,255,255,.45);margin-bottom:24px}
.qp-spec-list{list-style:none}
.qp-spec-list li{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:13px;line-height:1.5}
.qp-spec-list li:last-child{border-bottom:none}
.qp-spec-icon{color:var(--light-blue);flex-shrink:0;margin-top:1px}
@media(max-width:800px){.qp-main{grid-template-columns:1fr}.qp-pillars-grid{grid-template-columns:1fr 1fr}}

/* Our Presence page CSS*/
.presence-intro{font-size:16px;color:var(--ink-60);line-height:1.9;max-width:620px;margin:0 auto 60px;text-align:center}
.presence-map-wrap{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-md);margin-bottom:60px}
.presence-map-wrap img{width:100%;display:block}
.city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:60px}
.city-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 20px;text-align:center;transition:all .25s;position:relative;overflow:hidden}
.city-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--blue)}
.city-card:hover{border-color:var(--blue);transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.city-icon{font-size:40px;margin-bottom:12px;display:block}
.city-name{font-family:'Playfair Display',serif;font-size:20px;color:var(--navy);margin-bottom:4px}
.city-state{font-size:11px;color:var(--ink-30);margin-bottom:14px}
.city-badge{display:inline-block;font-size:10px;font-weight:600;padding:4px 12px;border-radius:20px;background:var(--blue-pale);color:var(--blue);margin-bottom:12px}
.city-projects{list-style:none; padding-left: 0.25rem;}
.city-projects li{font-size:11px;color:var(--ink-60);padding:5px 0;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:6px}
.city-projects li:last-child{border-bottom:none}
.city-projects li::before{content:'›';color:var(--blue);font-weight:600}
.stats-row{display:grid;grid-template-columns:repeat(5,1fr);gap:0;background:var(--navy);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:60px}
.stat-item{padding:28px 20px;text-align:center;border-right:1px solid rgba(255,255,255,.08)}
.stat-item:last-child{border-right:none}
.stat-num{font-family:'Playfair Display',serif;font-size:30px;color:var(--light-blue)}
.stat-label{font-size:11px;color:rgba(255,255,255,.45);margin-top:4px}
@media(max-width:900px){.city-grid{grid-template-columns:1fr 1fr}.stats-row{grid-template-columns:1fr 1fr}}
@media(max-width:500px){.city-grid{grid-template-columns:1fr}.stats-row{grid-template-columns:1fr}}

/* Awards & Accolades page CSS*/

.awd-intro{font-size:16px;color:var(--ink-60);line-height:1.9;max-width:620px;margin:0 auto 60px;text-align:center}
.award-featured-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:20px}
.award-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:60px}
.award-card{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);background:var(--white);box-shadow:var(--shadow-sm);transition:all .25s;cursor:pointer}
.award-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--blue)}
.award-img-wrap{height:220px;background:linear-gradient(145deg,#1C3557,#2A4A72);overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}
.award-img-wrap.small{height:160px}
.award-img-wrap img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .35s}
.award-card:hover .award-img-wrap img{transform:scale(1.04)}
.award-img-placeholder{font-size:48px;opacity:.1;color:#fff}
.award-body{padding:16px}
.award-year{font-size:10px;font-weight:600;letter-spacing:1px;color:var(--blue);margin-bottom:4px}
.award-name{font-family:'Playfair Display',serif;font-size:15px;color:var(--navy);margin-bottom:4px;line-height:1.3}
.award-org{font-size:11px;color:var(--ink-30)}
.recognition-strip{background:var(--navy);border-radius:var(--radius-lg);padding:40px;display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:60px;overflow:hidden}
.recog-item{text-align:center;padding:20px;border-right:1px solid rgba(255,255,255,.08)}
.recog-item:last-child{border-right:none}
.recog-num{font-family:'Playfair Display',serif;font-size:36px;color:var(--light-blue)}
.recog-label{font-size:11px;color:rgba(255,255,255,.45);margin-top:4px}
/* lightbox */
.lb-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:9999;align-items:center;justify-content:center}
.lb-overlay.open{display:flex}
.lb-img{max-width:90vw;max-height:85vh;border-radius:var(--radius-md);object-fit:contain}
.lb-close{position:absolute;top:20px;right:24px;font-size:32px;color:rgba(255,255,255,.6);cursor:pointer;background:none;border:none;transition:color .2s}
.lb-close:hover{color:#fff}
@media(max-width:900px){.award-featured-grid{grid-template-columns:1fr 1fr}.award-gallery-grid{grid-template-columns:1fr 1fr}.recognition-strip{grid-template-columns:1fr 1fr}}

.lb-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:9999;align-items:center;justify-content:center}
.lb-overlay.open{display:flex}

/* Residential page CSS */
.hero-sub{font-size:15px;color:rgba(255,255,255,.85);max-width:560px;line-height:1.8}
/* ── filter tabs ── */
.filter-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:40px}
.filter-tabs{display:flex;gap:8px;flex-wrap:wrap}
.ftab{padding:7px 20px;font-size:12px;font-weight:500;border:1px solid var(--border);border-radius:20px;background:var(--white);color:var(--ink-60);cursor:pointer;transition:all .2s}
.ftab:hover{border-color:var(--navy);color:var(--navy)}
.ftab.active{background:var(--navy);color:var(--white);border-color:var(--navy)}
.result-count{font-size:12px;color:var(--ink-30)}
/* ── project card ── */
.proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.proj-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}
.proj-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.proj-img{height:230px;position:relative;overflow:hidden;background:linear-gradient(145deg,#1C3557,#2A4A72);flex-shrink:0}
.proj-img img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .4s}
.proj-card:hover .proj-img img{transform:scale(1.04)}
.proj-img-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:56px;color:rgba(255,255,255,.07)}
.proj-status{position:absolute;bottom:14px;right:14px;font-size:10px;font-weight:700;padding:4px 12px;border-radius:20px;letter-spacing:.3px;z-index:2}
.s-open{background:#E8F5E9;color:#1B5E20}
.s-sold{background:#FFEBEE;color:#B71C1C}
.s-few{background:#FFF8E1;color:#E65100}
.s-done{background:#E3F2FD;color:#1565C0}
.s-coming{background:#F3E5F5;color:#4A148C}
.proj-approvals{position:absolute;bottom:12px;left:12px;display:flex;gap:5px;z-index:2}
.appr-tag{font-size:9px;font-weight:700;padding:3px 8px;border-radius:3px;background:rgba(255,255,255,.92);color:#1565C0}
.proj-body{padding:22px;flex:1;display:flex;flex-direction:column}
.proj-meta{display:flex;align-items:center;gap:6px;margin-bottom:8px;flex-wrap:wrap}
.proj-type{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--light-blue)}
.proj-dot{width:3px;height:3px;border-radius:50%;background:var(--ink-30)}
.proj-loc{font-size:10px;color:var(--ink-30)}
.proj-name{font-family:'Playfair Display',serif;font-size:18px;font-weight:500;color:var(--navy);margin-bottom:6px;line-height:1.3}
.proj-desc{font-size:13px;color:var(--ink-60);line-height:1.65;margin-bottom:18px;flex:1}
.proj-specs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.proj-spec{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--ink-60);background:var(--stone);padding:4px 10px;border-radius:20px}
.proj-actions{display:flex;gap:8px}
.btn-outline{flex:1;padding:9px;font-size:12px;font-weight:500;color:var(--navy);border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;cursor:pointer;text-align:center;transition:all .15s}
.btn-outline:hover{border-color:var(--navy);background:var(--stone)}
.btn-fill{flex:1;padding:9px;font-size:12px;font-weight:600;color:var(--white);background:var(--navy);border:none;border-radius:var(--radius-sm);cursor:pointer;text-align:center;transition:background .15s}
.btn-fill:hover{background:var(--navy-soft)}
/* ── featured card (wide) ── */
.proj-card.featured{grid-column:span 2}
.proj-card.featured .proj-img{height:300px}
/* ── commercial spotlight ── */
.commercial-spotlight{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);margin-bottom:48px}
.cs-img{min-height:420px;background:linear-gradient(145deg,#1C3557,#0E2340);position:relative;overflow:hidden}
.cs-img img{width:100%;height:100%;object-fit:fill;position:absolute;inset:0}
.cs-img-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:80px;color:rgba(255,255,255,.06)}
.cs-body{padding:48px 40px;display:flex;flex-direction:column;justify-content:center}
.cs-eyebrow{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--blue);margin-bottom:12px;display:flex;align-items:center;gap:8px}
.cs-eyebrow::before{content:'';width:20px;height:1px;background:var(--blue)}
.cs-title{font-family:'Playfair Display',serif;font-size:30px;color:var(--navy);margin-bottom:6px;line-height:1.2}
.cs-subtitle{font-size:13px;color:var(--blue);font-weight:500;margin-bottom:20px}
.cs-divider{width:40px;height:2px;background:var(--blue);border-radius:2px;margin-bottom:20px}
.cs-body-text{font-size:14px;color:var(--ink-60);line-height:1.85;margin-bottom:18px}
.cs-features{list-style:none;margin-bottom:28px}
.cs-features li{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--ink-60);padding:7px 0;border-bottom:1px solid var(--border)}
.cs-features li:last-child{border-bottom:none}
.cs-features li::before{content:'✦';color:var(--blue);flex-shrink:0;font-size:10px;margin-top:3px}
.cs-actions{display:flex;gap:10px}
.btn-gold{display:inline-flex;align-items:center;gap:8px;padding:11px 24px;background:var(--blue);color:var(--white);font-size:13px;font-weight:600;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s}
.btn-gold:hover{background:#9A6F09}
.btn-blue{display:inline-flex;align-items:center;gap:8px;padding:11px 24px;background:var(--blue);color:var(--white);font-size:13px;font-weight:600;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s}
.btn-blue:hover{background:var(--light-blue);}
.btn-navy{display:inline-flex;align-items:center;gap:8px;padding:11px 24px;background:var(--navy);color:var(--white);font-size:13px;font-weight:600;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s}
.btn-navy:hover{background:var(--navy-soft)}
/* ── hospitality card (big) ── */
.hosp-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .25s;margin-bottom:32px}
.hosp-card:hover{box-shadow:var(--shadow-lg)}
.hosp-grid{display:grid;grid-template-columns:480px 1fr}
.hosp-grid.reverse{direction:rtl}
.hosp-grid.reverse>*{direction:ltr}
.hosp-img{min-height:380px;background:#fff;position:relative;overflow:hidden}
.hosp-img img{width:100%;height:auto;object-fit:contain;position:absolute;inset:0;transition:transform .4s}
.hosp-card:hover .hosp-img img{transform:scale(1.03)}
.hosp-img-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:80px;color:rgba(255,255,255,.06)}
.hosp-status-banner{position:absolute;top:0;left:0;right:0;padding:8px 16px;background:linear-gradient(to bottom,rgba(0,0,0,.5),transparent);display:flex;align-items:center;gap:8px}
.hosp-status-dot{width:8px;height:8px;border-radius:50%;background:#25D366}
.hosp-status-text{font-size:11px;color:rgba(255,255,255,.9);font-weight:500}
.hosp-body{padding:25px}
.hosp-badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--blue);margin-bottom:12px}
.hosp-name{font-family:'Playfair Display',serif;font-size:24px;color:var(--navy);margin-bottom:6px;line-height:1.2}
.hosp-tagline{font-size:11px;color:var(--ink-60);font-style:italic;margin-bottom:20px}
.hosp-divider{width:40px;height:2px;background:var(--blue);border-radius:2px;margin-bottom:20px}
.hosp-desc{font-size:14px;color:var(--ink-60);line-height:1.85;margin-bottom:22px}
.hosp-amenities{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.hosp-amenity{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:500;color:var(--navy);background:var(--stone);padding:6px 12px;border-radius:20px;border:1px solid var(--border)}
.hosp-actions{display:flex;gap:10px;flex-wrap:wrap}
/* ── completed grid ── */
.completed-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
/* ── stats strip ── */
.stat-strip{background:var(--navy)}
.stat-strip .container{display:grid;grid-template-columns:repeat(4,1fr)}
.sstat{padding:24px 0;text-align:center;border-right:1px solid rgba(255,255,255,.08)}
.sstat:last-child{border-right:none}
.sstat-num{font-family:'Playfair Display',serif;font-size:30px;color:var(--light-blue)}
.sstat-label{font-size:11px;color:rgba(255,255,255,.45);margin-top:4px}
/* ── section ── */
.section-alt{background:var(--stone)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--blue);margin-bottom:12px}
.eyebrow::before{content:'';width:24px;height:1px;background:var(--blue);flex-shrink:0}
.sec-title{font-family:'Playfair Display',serif;font-size:36px;font-weight:500;color:var(--navy);line-height:1.2;margin-bottom:12px}
.gold-divider{width:48px;height:2px;background:var(--blue);border-radius:2px;margin:12px 0 24px}
/* ── cta strip ── */
.cta-strip{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-soft) 100%);padding:60px 0;position:relative;overflow:hidden}
.cta-strip::before{content:'';position:absolute;right:-80px;top:-80px;width:320px;height:320px;background:radial-gradient(circle,rgba(184,134,11,.15) 0%,transparent 70%)}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.cta-title{font-family:'Playfair Display',serif;font-size:30px;color:var(--white);margin-bottom:8px}
.cta-sub{font-size:14px;color:rgba(255,255,255,.5)}
.cta-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.cta-phone-label{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:4px;text-align:right}
.cta-phone{font-family:'Playfair Display',serif;font-size:28px;color:var(--light-blue)}
.cta-btns{display:flex;gap:10px}
.btn-wa{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;background:#25D366;color:var(--white);font-size:13px;font-weight:600;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s}
.btn-wa:hover{background:#1ea855}
.btn-enquire{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;background:var(--blue);color:var(--white);font-size:13px;font-weight:600;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s}
.btn-enquire:hover{background:var(--light-blue);}
/* ── animations ── */
.fade-up{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}
.fade-left{opacity:0;transform:translateX(-24px);transition:opacity .55s ease,transform .55s ease}
.fade-left.visible{opacity:1;transform:translateX(0)}
.fade-right{opacity:0;transform:translateX(24px);transition:opacity .55s ease,transform .55s ease}
.fade-right.visible{opacity:1;transform:translateX(0)}
/* ── responsive ── */
@media(max-width:960px){:root{--pad-x:20px}.proj-grid{grid-template-columns:1fr 1fr}.proj-card.featured{grid-column:span 1}.commercial-spotlight,.hosp-grid,.hosp-grid.reverse{grid-template-columns:1fr;direction:ltr}.cs-img{min-height:260px}.hosp-img{min-height:240px}.footer-grid{grid-template-columns:1fr 1fr}.cta-actions{align-items:center}.stat-strip .container{grid-template-columns:repeat(2,1fr)}.completed-grid{grid-template-columns:1fr 1fr}.topbar{display:none}}
@media(max-width:600px){.proj-grid,.completed-grid{grid-template-columns:1fr}.nav-menu{display:none}.section{padding:48px 0}.hero-title{font-size:32px}}

/* Press Coverage Page CSS */
.hero-title em{color:var(--light-blue);font-style:normal}
.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:36px}
.ftab{padding:6px 18px;font-size:12px;font-weight:500;border:1px solid var(--border);border-radius:20px;background:var(--white);color:var(--ink-60);cursor:pointer;transition:all .2s}
.ftab:hover{border-color:var(--navy);color:var(--navy)}
.ftab.active{background:var(--navy);color:var(--white);border-color:var(--navy)}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.gallery-item{border-radius:var(--radius-md);overflow:hidden;cursor:pointer;position:relative;aspect-ratio:4/3;background:var(--navy)}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s,filter .35s}
.gallery-item:hover img{transform:scale(1.06);filter:brightness(.85)}
.gallery-overlay{position:absolute;inset:0;background:rgba(14,35,64,0);transition:background .3s;display:flex;align-items:center;justify-content:center}
.gallery-item:hover .gallery-overlay{background:rgba(14,35,64,.35)}
.gallery-overlay-icon{font-size:28px;color:#fff;opacity:0;transform:scale(.7);transition:all .3s}
.gallery-item:hover .gallery-overlay-icon{opacity:1;transform:scale(1)}
.gallery-tag{position:absolute;top:8px;left:8px;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:3px 9px;border-radius:20px;background:var(--blue);color:#fff}
.count-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-60);background:var(--stone);padding:5px 14px;border-radius:20px;margin-bottom:24px}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}

/* EVents & ad campaigns page CSS*/

.event-section-hdr{display:flex;align-items:center;gap:16px;margin:0 0 24px;padding-bottom:16px;border-bottom:2px solid var(--blue)}
.event-section-title{font-family:'Playfair Display',serif;font-size:22px;color:var(--navy)}
.event-section-count{font-size:11px;font-weight:600;padding:4px 12px;border-radius:20px;background:var(--blue-pale);color:var(--blue)}
.event-block{margin-bottom:60px}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.gallery-item{border-radius:var(--radius-md);overflow:hidden;cursor:pointer;position:relative;aspect-ratio:4/3;background:var(--navy)}
.gallery-item img{width:100%;height:100%;object-fit:fill;transition:transform .35s,filter .35s; border-radius: 5px;}
.gallery-item:hover img{transform:scale(1.06);filter:brightness(.85)}
.gallery-item-styling {
            box-shadow: 0 3px 10px 0 rgba(51, 51, 51, 0.25) !important;
            border: 1px solid #ccc;
            border-radius: 5px;
            padding: 5px;
            background: #fff;
         }
.gallery-overlay{position:absolute;inset:0;background:rgba(14,35,64,0);transition:background .3s;display:flex;align-items:center;justify-content:center}
.gallery-item:hover .gallery-overlay{background:rgba(14,35,64,.35)}
.gallery-overlay-icon{font-size:28px;color:#fff;opacity:0;transform:scale(.7);transition:all .3s}
.gallery-item:hover .gallery-overlay-icon{opacity:1;transform:scale(1)}
.gallery-grid.featured{grid-template-columns:repeat(3,1fr)}
.gallery-grid.featured .gallery-item:first-child{grid-column:span 2;aspect-ratio:16/9}
@media(max-width:900px){.gallery-grid,.gallery-grid.featured{grid-template-columns:repeat(2,1fr)}.gallery-grid.featured .gallery-item:first-child{grid-column:span 1;aspect-ratio:4/3}}
@media(max-width:500px){.gallery-grid,.gallery-grid.featured{grid-template-columns:1fr}}

/* Video Gallery page CSS */
.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.video-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow .25s,transform .25s}
.video-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}
.video-card.featured{grid-column:span 2}
.video-wrap{position:relative;padding-bottom:56.25%;height:0;background:var(--navy)}
.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:none}
.video-body{padding:18px 20px}
.video-num{font-size:10px;font-weight:700;letter-spacing:1px;color:var(--blue);margin-bottom:5px}
.video-title{font-family:'Playfair Display',serif;font-size:16px;color:var(--navy);margin-bottom:6px;line-height:1.3}
.video-desc{font-size:12px;color:var(--ink-60);line-height:1.6}
.yt-cta{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-size:12px;font-weight:600;color:#FF0000;transition:opacity .2s}
.yt-cta:hover{opacity:.75}
.yt-banner{background:var(--navy);border-radius:var(--radius-lg);padding:36px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:48px;flex-wrap:wrap}
.yt-banner-text h3{font-family:'Playfair Display',serif;font-size:22px;color:var(--white);margin-bottom:6px}
.yt-banner-text p{font-size:13px;color:rgba(255,255,255,.5)}
.btn-yt{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;background:#FF0000;color:var(--white);font-size:13px;font-weight:600;border-radius:var(--radius-sm);transition:background .2s}
.btn-yt:hover{background:#CC0000}
@media(max-width:700px){.video-grid{grid-template-columns:1fr}.video-card.featured{grid-column:span 1}}


/* Enquiry page CSS */

trust-strip{display:flex;gap:28px;margin-top:28px;flex-wrap:wrap}
.trust-item{display:flex;align-items:center;gap:8px;font-size:12px;color:rgba(255,255,255,.55)}
.trust-item svg{color:var(--gold-light);flex-shrink:0}
/* main layout */
.enquire-layout{display:grid;grid-template-columns:1fr 380px;gap:40px;padding:56px 0 80px;align-items:start}
/* form card */
.form-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}
.form-card-hdr{padding:28px 36px;border-bottom:1px solid var(--border)}
.form-card-title{font-family:'Playfair Display',serif;font-size:24px;color:var(--navy);margin-bottom:6px}
.form-card-sub{font-size:13px;color:var(--ink-60)}
.form-body{padding:32px 36px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}
.form-group{margin-bottom:18px}
.form-group label{display:block;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-30);margin-bottom:7px}
.form-group label .req{color:var(--blue)}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:11px 14px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);color:var(--ink);font-family:'Inter',sans-serif;transition:border-color .2s,box-shadow .2s;outline:none}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(14,35,64,.08)}
.form-group textarea{resize:vertical;min-height:100px}
.interest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}
.interest-chip{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s;text-align:center}
.interest-chip:hover{border-color:var(--blue)}
.interest-chip.selected{border-color:var(--blue);background:var(--blue-pale)}
.interest-chip input{display:none}
.interest-icon{font-size:22px}
.interest-label{font-size:11px;font-weight:600;color:var(--navy)}
.budget-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:8px}
.radio-chip{display:flex;align-items:center;gap:8px;padding:11px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;font-size:12px;color:var(--ink-60)}
.radio-chip:hover{border-color:var(--blue)}
.radio-chip input{accent-color:var(--blue)}
.radio-chip.selected{border-color:var(--blue);background:var(--blue-pale);color:var(--navy);font-weight:500}
.consent-row{display:flex;align-items:flex-start;gap:10px;font-size:11px;color:var(--ink-60);margin:20px 0;line-height:1.6}
.consent-row input{margin-top:2px;accent-color:var(--blue);flex-shrink:0}
.btn-submit{width:100%;padding:15px;font-size:14px;font-weight:700;color:var(--white);background:var(--blue);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s;display:flex;align-items:center;justify-content:center;gap:8px}
.btn-submit:hover{background:var(--light-blue);}
.form-alt-actions{display:flex;gap:10px;margin-top:14px}
.btn-alt{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;font-size:12px;font-weight:600;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;border:1px solid var(--border)}
.btn-alt.wa{color:#25D366;border-color:#25D366}
.btn-alt.wa:hover{background:#25D366;color:#fff}
.btn-alt.call{color:var(--navy);border-color:var(--navy)}
.btn-alt.call:hover{background:var(--navy);color:#fff}
/* success state */
.success-box{display:none;padding:60px 36px;text-align:center}
.success-box.show{display:block}
.success-icon{width:64px;height:64px;border-radius:50%;background:#E8F5E9;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:28px}
.success-title{font-family:'Playfair Display',serif;font-size:22px;color:var(--navy);margin-bottom:8px}
.success-sub{font-size:13px;color:var(--ink-60);max-width:360px;margin:0 auto}
/* sidebar */
.side-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);margin-bottom:20px}
.side-card-hdr{padding:16px 20px;background:var(--navy);display:flex;align-items:center;gap:10px}
.side-card-title{font-size:13px;font-weight:600;color:var(--white)}
.contact-list{padding:6px}
.contact-row{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--radius-md);transition:background .15s}
.contact-row:hover{background:var(--stone)}
.contact-row-icon{width:38px;height:38px;background:var(--blue-pale);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0}
.contact-row-label{font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-30);margin-bottom:3px}
.contact-row-val{font-size:13px;font-weight:500;color:var(--navy)}
.contact-row-sub{font-size:11px;color:var(--ink-60);margin-top:2px}
.office-map{border-radius:0;overflow:hidden;height:200px}
.office-map iframe{width:100%;height:100%;border:none;display:block}
.office-body{padding:16px 20px}
.office-addr{font-size:13px;color:var(--navy);font-weight:500;margin-bottom:4px;line-height:1.5; text-align: left;}
.office-hours{font-size:11px;color:var(--ink-60)}
.why-list{list-style:none;padding:16px 20px}
.why-list li{display:flex;align-items:flex-start;gap:10px;font-size:12px;color:var(--ink-60);padding:8px 0;border-bottom:1px solid var(--border);line-height:1.5}
.why-list li:last-child{border-bottom:none}
.why-list li::before{content:'✦';color:var(--blue);flex-shrink:0;font-size:10px;margin-top:2px}
/* cta strip */
.cta-strip{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-soft) 100%);padding:56px 0;position:relative;overflow:hidden}
.cta-strip::before{content:'';position:absolute;right:-80px;top:-80px;width:320px;height:320px;background:radial-gradient(circle,rgba(184,134,11,.15) 0%,transparent 70%)}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.cta-title{font-family:'Playfair Display',serif;font-size:28px;color:var(--white);margin-bottom:6px}
.cta-sub{font-size:13px;color:rgba(255,255,255,.5)}
.cta-phone{font-family:'Playfair Display',serif;font-size:26px;color:var(--light-blue)}

@media(max-width:960px){:root{--pad-x:20px}.enquire-layout{grid-template-columns:1fr}.form-row,.interest-grid,.budget-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.topbar{display:none}}
@media(max-width:600px){.form-row,.interest-grid,.budget-grid{grid-template-columns:1fr}.nav-menu{display:none}.form-body,.form-card-hdr{padding:24px 20px}.hero-title{font-size:28px}}


/* Residential - Ishaan Sanskriti, Tower D page CSS */


/* ─── HERO GALLERY ────────────────────────────────────── */
.hero-gallery{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:340px 240px;gap:6px;position:relative}
.gallery-main{grid-row:span 2;position:relative;overflow:hidden;cursor:pointer;background:var(--navy)}
.gallery-thumb{position:relative;overflow:hidden;cursor:pointer;background:var(--navy-soft)}
.gallery-main img,.gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.gallery-main:hover img,.gallery-thumb:hover img{transform:scale(1.04)}
.gallery-overlay{position:absolute;inset:0;background:rgba(0,0,0,0);transition:background .3s}
.gallery-main:hover .gallery-overlay,.gallery-thumb:hover .gallery-overlay{background:rgba(0,0,0,.15)}
.gallery-count-btn{position:absolute;bottom:16px;right:16px;background:rgba(255,255,255,.92);border:none;border-radius:var(--radius-sm);padding:8px 16px;font-size:12px;font-weight:600;color:var(--navy);cursor:pointer;display:flex;align-items:center;gap:6px;transition:background .2s;z-index:2}
.gallery-count-btn:hover{background:var(--white)}
.hero-badge{position:absolute;top:16px;left:16px;z-index:2;display:flex;gap:8px;flex-wrap:wrap}
.badge{font-size:10px;font-weight:700;padding:5px 12px;border-radius:20px;letter-spacing:.3px}
.badge-open{background:#E8F5E9;color:#1B5E20}
.badge-rera{background:rgba(14,35,64,.85);color:var(--light-blue);backdrop-filter:blur(4px)}
.yt-thumb{background:#000;display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer}
.yt-thumb img{opacity:.7;transition:opacity .3s}
.yt-thumb:hover img{opacity:.5}
.yt-play{position:absolute;width:52px;height:52px;background:#FF0000;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2;transition:transform .2s}
.yt-thumb:hover .yt-play{transform:scale(1.1)}

/* ─── BREADCRUMB ──────────────────────────────────────── */
.breadcrumb-bar{background:var(--stone);border-bottom:1px solid var(--border);padding:10px 0;font-size:12px;color:var(--ink-30)}
.breadcrumb-bar .container{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.breadcrumb-bar a{color:var(--ink-30);transition:color .2s}
.breadcrumb-bar a:hover{color:var(--navy)}
.breadcrumb-bar .current{color:var(--navy);font-weight:500}

/* ─── MAIN LAYOUT ─────────────────────────────────────── */
.project-layout{display:grid;grid-template-columns:1fr 360px;gap:40px;padding:48px 0 80px}
.project-main{}
.project-sidebar{}

/* ─── STICKY SIDEBAR ──────────────────────────────────── */
.sidebar-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);position:sticky;top:88px}
.sidebar-header{background:var(--navy);padding:24px}
.sidebar-price-label{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:4px}
.sidebar-price{font-family:'Playfair Display',serif;font-size:30px;color:var(--light-blue);margin-bottom:2px}
.sidebar-price-sub{font-size:11px;color:rgba(255,255,255,.45)}
.sidebar-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border)}
.sidebar-stat{background:var(--white);padding:14px 16px;text-align:center}
.sidebar-stat-val{font-size:16px;font-weight:600;color:var(--navy)}
.sidebar-stat-label{font-size:10px;color:var(--ink-30);margin-top:2px}
.sidebar-body{padding:20px}
.sidebar-form-title{font-size:14px;font-weight:600;color:var(--navy);margin-bottom:16px}
.form-group{margin-bottom:14px}
.form-group label{display:block;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-30);margin-bottom:6px}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);color:var(--ink);font-family:'Inter',sans-serif;transition:border-color .2s,box-shadow .2s;outline:none}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(14,35,64,.08)}
.form-group textarea{resize:vertical;min-height:80px}
.btn-enquire-full{width:100%;padding:13px;font-size:14px;font-weight:700;color:var(--white);background:var(--blue);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s;margin-bottom:10px}
.btn-enquire-full:hover{background:#9A6F09}
.btn-wa-full{width:100%;padding:12px;font-size:13px;font-weight:600;color:var(--white);background:#25D366;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .2s}
.btn-wa-full:hover{background:#1ea855}
.sidebar-contact{display:flex;align-items:center;gap:10px;padding:14px 20px;border-top:1px solid var(--border);font-size:12px}
.sidebar-contact-icon{font-size:18px}
.sidebar-contact-label{font-size:10px;color:var(--ink-30)}
.sidebar-contact-val{font-size:13px;font-weight:600;color:var(--navy)}

/* ─── TABS ────────────────────────────────────────────── */
.tabs-nav{display:flex;overflow-x:auto;gap:0;border-bottom:2px solid var(--border);margin-bottom:36px;scrollbar-width:none}
.tabs-nav::-webkit-scrollbar{display:none}
.tab-btn{flex-shrink:0;padding:12px 20px;font-size:12px;font-weight:600;color:var(--ink-60);border:none;border-bottom:2px solid transparent;background:transparent;cursor:pointer;margin-bottom:-2px;transition:all .2s;white-space:nowrap;text-transform:uppercase;letter-spacing:.5px}
.tab-btn:hover{color:var(--navy)}
.tab-btn.active{color:var(--navy);border-bottom-color:var(--blue)}
.tab-pane{display:none}
.tab-pane.active{display:block}

/* ─── ABOUT SECTION ──────────────────────────────────── */
.project-title-row{margin-bottom:24px}
.project-eyebrow{font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--blue);margin-bottom:8px;display:flex;align-items:center;gap:8px}
.project-eyebrow::before{content:'';width:20px;height:1px;background:var(--blue)}
.project-name{font-family:'Playfair Display',serif;font-size:34px;color:var(--navy);margin-bottom:8px;line-height:1.2}
.project-sub{font-size:14px;color:var(--ink-60);font-style:italic;margin-bottom:20px}
.gold-divider{width:48px;height:2px;background:var(--blue);border-radius:2px;margin-bottom:24px}
.blue-divider{width:48px;height:2px;background:var(--blue);border-radius:2px;margin-bottom:24px}
.project-body{font-size:15px;color:var(--ink-60);line-height:1.9;margin-bottom:18px}
.project-body strong{color:var(--navy);font-weight:600}
.quick-facts{display:grid;grid-template-columns:repeat(3,1fr);margin:28px 0}
.quick-fact{background:var(--stone);border-radius:var(--radius-md);padding:16px;text-align:center;border:1px solid var(--border)}
.quick-fact-icon{font-size:24px;margin-bottom:6px}
.quick-fact-val{font-size:15px;font-weight:600;color:var(--navy)}
.quick-fact-label{font-size:10px;color:var(--ink-30);margin-top:2px}
.highlight-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.highlight-list li{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--ink-60);padding:10px 14px;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md)}
.highlight-list li::before{content:'✦';color:var(--blue);flex-shrink:0;font-size:11px;margin-top:1px}

/* ─── FLOOR / SITE PLANS ─────────────────────────────── */
.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.plan-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}
.plan-card-hdr{padding:14px 18px;background:var(--navy);display:flex;align-items:center;gap:10px}
.plan-card-title{font-size:13px;font-weight:600;color:var(--white)}
.plan-card-badge{font-size:10px;color:var(--light-blue)}
.plan-img-wrap{padding:16px;cursor:pointer;transition:background .2s}
.plan-img-wrap:hover{background:var(--stone)}
.plan-img-wrap img{width:100%;border-radius:var(--radius-sm)}
.plan-zoom-hint{font-size:10px;color:var(--ink-30);text-align:center;margin-top:8px;display:flex;align-items:center;justify-content:center;gap:4px}
.site-plan-full{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;box-shadow:var(--shadow-sm)}
.site-plan-full .plan-card-hdr{grid-column:span 2}
.site-plan-img{padding:20px}
.site-plan-img img{width:100%;border-radius:var(--radius-sm)}

/* ─── FEATURES ───────────────────────────────────────── */
.features-intro{font-size:14px;color:var(--ink-60);line-height:1.8;margin-bottom:28px}
.amenities-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.amenity-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);padding:18px 14px;text-align:center;transition:all .25s}
.amenity-card:hover{border-color:var(--blue);box-shadow:var(--shadow-md);transform:translateY(-2px)}
.amenity-icon{font-size:28px;margin-bottom:8px}
.amenity-name{font-size:12px;font-weight:600;color:var(--navy)}
.amenity-desc{font-size:10px;color:var(--ink-60);margin-top:3px;line-height:1.4}
.features-img-wrap{margin-top:28px;border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;box-shadow:var(--shadow-md)}
.features-img-wrap img{width:100%;transition:transform .4s}
.features-img-wrap:hover img{transform:scale(1.02)}
.features-img-caption{background:var(--navy);padding:12px 20px;display:flex;align-items:center;justify-content:space-between}
.features-img-caption span{font-size:12px;color:rgba(255,255,255,.6)}
.btn-download{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--light-blue);background:none;border:1px solid rgba(255,255,255,.2);padding:6px 14px;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s}
.btn-download:hover{background:rgba(255,255,255,.1)}

/* ─── CTA STRIP ──────────────────────────────────────── */
.btn-wa-cta{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;background:#25D366;color:var(--white);font-size:13px;font-weight:600;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s}
.btn-wa-cta:hover{background:#1ea855}
.btn-enq-cta{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;background:var(--blue);color:var(--white);font-size:13px;font-weight:600;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s}
.btn-enq-cta:hover{background:#9A6F09}

/* ─── PRICE TABLE ────────────────────────────────────── */
.price-table-wrap{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:28px}
.price-table{width:100%;border-collapse:collapse;font-size:13px}
.price-table th{background:var(--navy);color:var(--white);padding:14px 18px;text-align:left;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}
.price-table td{padding:14px 18px;border-bottom:1px solid var(--border);color:var(--ink-60);vertical-align:top;line-height:1.5}
.price-table tr:last-child td{border-bottom:none}
.price-table tr:nth-child(even) td{background:var(--stone)}
.price-highlight{font-size:18px;font-weight:700;color:var(--navy);white-space:nowrap}
.mandatory-table-wrap{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:28px}
.mandatory-table{width:100%;border-collapse:collapse;font-size:13px}
.mandatory-table th{background:var(--navy-soft);color:var(--white);padding:12px 18px;text-align:left;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}
.mandatory-table td{padding:12px 18px;border-bottom:1px solid var(--border);color:var(--ink-60)}
.mandatory-table tr:last-child td{border-bottom:none}
.payment-plan-box{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:24px}
.payment-plan-hdr{background:var(--navy);padding:16px 20px;display:flex;align-items:center;gap:10px}
.payment-plan-title{font-size:14px;font-weight:600;color:var(--white)}
.payment-plan-body{padding:20px}
.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}
.payment-row{display:contents}
.payment-cell{padding:10px 14px;border-bottom:1px solid var(--border);font-size:12px;color:var(--ink-60);display:flex;align-items:center;gap:8px}
.payment-cell:nth-child(odd){border-right:1px solid var(--border)}
.payment-cell strong{color:var(--navy);font-weight:600;min-width:36px}
.payment-cell:last-child,.payment-cell:nth-last-child(2){border-bottom:none}
.possession-row{background:var(--blue-pale);border-radius:var(--radius-sm);padding:12px 16px;font-size:13px;color:var(--navy);font-weight:500;margin-top:8px;display:flex;align-items:center;gap:8px}
.tnc-box{background:var(--stone);border-radius:var(--radius-lg);padding:20px 24px;margin-top:20px}
.tnc-box h4{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:12px}
.tnc-list{list-style:none}
.tnc-list li{font-size:12px;color:var(--ink-60);padding:5px 0;display:flex;align-items:flex-start;gap:8px;line-height:1.5}
.tnc-list li::before{content:'•';color:var(--blue);flex-shrink:0;font-weight:700}

/* ─── LOCATION ───────────────────────────────────────── */
.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.location-map-wrap{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-md);cursor:pointer}
.location-map-wrap img{width:100%;display:block;transition:transform .4s}
.location-map-wrap:hover img{transform:scale(1.02)}
.location-points{display:flex;flex-direction:column;gap:10px}
.loc-category{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--blue);margin:8px 0 6px;display:flex;align-items:center;gap:8px}
.loc-category::before{content:'';flex:1;height:1px;background:var(--border)}
.loc-point{display:flex;align-items:flex-start;gap:12px;padding:10px 14px;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color .2s}
.loc-point:hover{border-color:var(--blue)}
.loc-icon{font-size:18px;flex-shrink:0}
.loc-name{font-size:13px;font-weight:500;color:var(--navy)}
.loc-dist{font-size:11px;color:var(--blue);font-weight:600;margin-top:1px}
.map-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;background:var(--navy);color:var(--white);font-size:13px;font-weight:600;border:none;border-radius:var(--radius-sm);cursor:pointer;margin-top:12px;width:100%;transition:background .2s}
.map-btn:hover{background:var(--navy-soft)}

/* ─── BROCHURE / SPEC ────────────────────────────────── */
.brochure-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.brochure-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px;display:flex;align-items:flex-start;gap:20px;transition:all .25s}
.brochure-card:hover{border-color:var(--blue);box-shadow:var(--shadow-md)}
.brochure-icon{width:56px;height:56px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0}
.brochure-icon.red{background:#FFEBEE}
.brochure-icon.blue{background:#E3F2FD}
.brochure-content{}
.brochure-title{font-size:15px;font-weight:600;color:var(--navy);margin-bottom:4px}
.brochure-desc{font-size:12px;color:var(--ink-60);line-height:1.6;margin-bottom:14px}
.btn-dl{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;font-size:12px;font-weight:600;color:var(--white);background:var(--navy);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s}
.btn-dl:hover{background:var(--navy-soft)}


/* ─── LIGHTBOX ────────────────────────────────────────── */
#lightbox{display:none;position:fixed;inset:0;background:rgba(0,0,0,.95);z-index:9999;align-items:center;justify-content:center;flex-direction:column;gap:12px}
#lightbox.open{display:flex}
#lb-img{max-width:92vw;max-height:84vh;border-radius:var(--radius-md);object-fit:contain}
#lb-cap{font-size:12px;color:rgba(255,255,255,.4);text-align:center;max-width:600px}
.lb-close{position:absolute;top:20px;right:24px;font-size:36px;color:rgba(255,255,255,.5);background:none;border:none;cursor:pointer;transition:color .2s;line-height:1}
.lb-close:hover{color:#fff}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.1);border:none;color:rgba(255,255,255,.7);font-size:24px;width:44px;height:44px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}
.lb-nav:hover{background:rgba(255,255,255,.2)}
.lb-prev{left:16px}
.lb-next{right:16px}

/* ─── ANIMATIONS ─────────────────────────────────────── */
.fade-up{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}

/* ─── RESPONSIVE ──────────────────────────────────────── */
@media(max-width:1024px){:root{--pad-x:24px}.hero-gallery{grid-template-rows:280px 200px}.project-layout{grid-template-columns:1fr;gap:32px}.project-sidebar{order:-1}.sidebar-card{position:static}.plan-grid{grid-template-columns:1fr}.location-grid{grid-template-columns:1fr}.brochure-grid{grid-template-columns:1fr}.amenities-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){:root{--pad-x:16px}.hero-gallery{grid-template-columns:1fr;grid-template-rows:260px 180px 180px}.gallery-main{grid-row:span 1}.quick-facts{grid-template-columns:1fr 1fr}.highlight-list{grid-template-columns:1fr}.amenities-grid{grid-template-columns:1fr 1fr}.payment-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.cta-actions{align-items:center}.nav-menu{display:none}.topbar{display:none}}

/* FAQ page CSS */

/* search box */
.search-box{max-width:520px;margin:0 auto;position:relative}
.search-box input{width:100%;padding:15px 20px 15px 48px;font-size:14px;border:none;border-radius:var(--radius-md);background:var(--white);color:var(--ink);outline:none;box-shadow:var(--shadow-lg)}
.search-box svg{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:var(--ink-30)}
.search-box input::placeholder{color:var(--ink-30)}

/* layout */
.faq-layout{display:grid;grid-template-columns:240px 1fr;gap:40px;padding:56px 0 80px;align-items:start}
/* category sidebar */
.cat-sidebar{position:sticky;top:88px}
.cat-title{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-30);margin-bottom:14px;padding:0 4px}
.cat-list{display:flex;flex-direction:column;gap:4px}
.cat-btn{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;font-size:13px;font-weight:500;color:var(--ink-60);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;background:transparent;border:none;text-align:left;width:100%}
.cat-btn:hover{background:var(--stone);color:var(--navy)}
.cat-btn.active{background:var(--navy);color:var(--white)}
.cat-count{font-size:10px;padding:2px 7px;border-radius:20px;background:rgba(0,0,0,.06);color:inherit}
.cat-btn.active .cat-count{background:rgba(255,255,255,.15)}
.contact-mini{margin-top:28px;padding:20px;background:var(--blue-pale);border-radius:var(--radius-md);border:1px solid rgba(184,134,11,.2)}
.contact-mini-title{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:6px}
.contact-mini-sub{font-size:11px;color:var(--ink-60);line-height:1.6;margin-bottom:14px}
.contact-mini-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:9px;font-size:12px;font-weight:600;color:var(--white);background:var(--navy);border-radius:var(--radius-sm);cursor:pointer;transition:background .2s}
.contact-mini-btn:hover{background:var(--navy-soft)}
/* faq main */
.faq-group{margin-bottom:36px}
.faq-group-hdr{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.faq-group-icon{width:38px;height:38px;background:var(--blue-pale);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.faq-group-title{font-family:'Playfair Display',serif;font-size:20px;color:var(--navy)}
.faq-item{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:10px;overflow:hidden;transition:border-color .2s}
.faq-item:hover{border-color:rgba(184,134,11,.4)}
.faq-item.open{border-color:var(--blue)}
.faq-q{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;cursor:pointer;user-select:none}
.faq-q-text{font-size:14px;font-weight:600;color:var(--navy);line-height:1.5}
.faq-icon{width:26px;height:26px;border-radius:50%;background:var(--stone);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .25s}
.faq-item.open .faq-icon{background:var(--blue);transform:rotate(180deg)}
.faq-icon svg{color:var(--ink-60);transition:color .25s}
.faq-item.open .faq-icon svg{color:#fff}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-a-inner{padding:0 22px 20px;font-size:13px;color:var(--ink-60);line-height:1.85}
.no-results{display:none;text-align:center;padding:60px 20px}
.no-results.show{display:block}
.no-results-icon{font-size:40px;margin-bottom:14px}
.no-results-title{font-family:'Playfair Display',serif;font-size:18px;color:var(--navy);margin-bottom:6px}
.no-results-sub{font-size:13px;color:var(--ink-60)}








/* Home Slider */

/* ==========================================================
   HERO BOOTSTRAP SLIDER
   ========================================================== */

.hero {
    position: relative;
    overflow: hidden;
    min-height: 650px;
    isolation: isolate;
}


/* --------------------------------
   Bootstrap Carousel
   -------------------------------- */

.hero-carousel {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.hero-carousel .carousel-inner,
.hero-carousel .carousel-item {
    width: 100%;
    height: 100%;
}

.hero-slide-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}


/* --------------------------------
   Dark overlay
   -------------------------------- */

.hero-image-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;

     background:
        linear-gradient(
            90deg,
            rgba(7, 29, 55, 0.72) 0%,
            rgba(7, 29, 55, 0.55) 30%,
            rgba(7, 29, 55, 0.30) 55%,
            rgba(7, 29, 55, 0.18) 75%,
            rgba(7, 29, 55, 0.28) 100%
        );
}

/*
.hero-image-overlay {
    background:
        linear-gradient(
            90deg,
            rgba(7, 29, 55, 0.60) 0%,
            rgba(7, 29, 55, 0.40) 35%,
            rgba(7, 29, 55, 0.18) 60%,
            rgba(7, 29, 55, 0.10) 100%
        );
}*/


/* --------------------------------
   Existing patterns
   -------------------------------- */

.hero-bg-pattern,
.hero-grid-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
}


/* --------------------------------
   Content above image
   -------------------------------- */

.hero-container {
    position: relative;
    z-index: 5;
}


/* --------------------------------
   Hero content
   -------------------------------- */

.hero-content {
    position: relative;
    z-index: 6;
}

.hero-stats {
    position: relative;
    z-index: 6;
}


/* ==========================================================
   HERO SLIDER CONTROLS - FINAL FIX
   ========================================================== */

.hero-carousel {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
}

.hero-slider-control {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;

    width: 52px !important;
    height: 52px !important;

    padding: 0 !important;
    margin: 0 !important;

    border: 1px solid rgba(255, 255, 255, 0.35) !important;
    border-radius: 50% !important;

    background: rgba(7, 29, 55, 0.65) !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    opacity: 0 !important;

    z-index: 100 !important;

    cursor: pointer !important;

    transition:
        background 0.25s ease,
        opacity 0.25s ease,
        transform 0.25s ease !important;
}


/* Previous */

.hero-slider-prev {
    left: 24px !important;
}


/* Next */

.hero-slider-next {
    right: 24px !important;
}


/* Arrow */

.hero-slider-arrow {
    display: block !important;

    color: #ffffff !important;

    font-size: 28px !important;
    line-height: 1 !important;

    font-family: Arial, sans-serif !important;

    pointer-events: none;
}


/* Show controls when mouse is over hero */

.hero:hover .hero-slider-control {
    opacity: 1 !important;
}


/* Hover */

.hero-slider-control:hover {
    background: rgba(7, 29, 55, 0.95) !important;

    transform:
        translateY(-50%)
        scale(1.08) !important;
}


/* Keep controls above overlay */

.hero-image-overlay {
    z-index: 2 !important;
    pointer-events: none !important;
}

.hero-bg-pattern,
.hero-grid-overlay {
    z-index: 3 !important;
    pointer-events: none !important;
}

.hero-container {
    position: relative !important;
    z-index: 10 !important;
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 767.98px) {

    .hero-slider-control {
        width: 42px !important;
        height: 42px !important;

        opacity: 0.85 !important;
    }

    .hero-slider-prev {
        left: 10px !important;
    }

    .hero-slider-next {
        right: 10px !important;
    }

    .hero-slider-arrow {
        font-size: 22px !important;
    }

}


/* Ishaan Shrishti Page CSS */

/* Form controls */
.form-control-custom{width:100%;padding:11px 14px;font-size:13px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--ink);outline:none;transition:border-color .2s,box-shadow .2s}
.form-control-custom:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(14,35,64,.08)}
.form-label-custom{display:block;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-30);margin-bottom:7px}


/* Hero gallery */
.hero-gallery-wrap{background:#0E2340;padding-top:16px}
.gallery-main{position:relative;overflow:hidden;cursor:pointer;background:var(--navy);border-radius:12px 0 0 12px;height:100%;min-height:280px}
.gallery-thumb{position:relative;overflow:hidden;cursor:pointer;background:var(--navy-soft);height:100%;min-height:135px}
.gallery-main img,.gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s;position:absolute;inset:0}
.gallery-main:hover img,.gallery-thumb:hover img{transform:scale(1.04)}
.hero-badge-row{position:absolute;top:12px;left:12px;z-index:2;display:flex;gap:8px;flex-wrap:wrap}
.badge-open{background:#E8F5E9;color:#1B5E20;font-size:10px;font-weight:700;padding:5px 12px;border-radius:20px}
.badge-sold{background:#FFEBEE;color:#B71C1C;font-size:10px;font-weight:700;padding:5px 12px;border-radius:20px}
.gallery-count-btn{position:absolute;bottom:12px;right:12px;background:rgba(255,255,255,.92);border:none;border-radius:6px;padding:7px 14px;font-size:11px;font-weight:600;color:var(--navy);z-index:2;display:flex;align-items:center;gap:6px}
.yt-thumb{background:#000;display:flex;align-items:center;justify-content:center}
.yt-play{position:absolute;width:44px;height:44px;background:#FF0000;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2}

/* Plan card */
.plan-card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden}
.plan-card-hdr{padding:12px 16px;background:var(--navy);display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:#fff}
.plan-img-wrap{padding:14px;cursor:pointer}
.plan-img-wrap:hover{background:var(--stone)}

/* Location */
.loc-point{display:flex;align-items:flex-start;gap:10px;padding:9px 12px;background:#fff;border:1px solid var(--border);border-radius:8px;font-size:12px}
.loc-dist{font-size:10.5px;color:var(--blue);font-weight:600}

/* Video modal */
#video-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.95);z-index:9999;align-items:center;justify-content:center}
#video-modal.open{display:flex}
.video-modal-close{position:absolute;top:16px;right:20px;font-size:34px;color:rgba(255,255,255,.5);background:none;border:none;cursor:pointer}
.video-modal-close:hover{color:#fff}
.video-modal-frame{width:min(840px,92vw);aspect-ratio:16/9}
.video-modal-frame iframe{width:100%;height:100%;border:none;border-radius:8px}

/* Amenity list */
.feature-list-item{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fff;border:1px solid var(--border);border-radius:10px;font-size:12.5px;color:var(--navy);font-weight:500;height:100%}


/* ================================================================
   CONSOLIDATED FROM bootstrap5-responsive.css
   ================================================================ */


/* ================================================================
   BOOTSTRAP 5 GRID CONVERSION LAYER
   Major site layouts now use Bootstrap .row / .col-* classes.
   Existing component styling remains intact.
   ================================================================ */
.proj-grid.row { display:flex !important; flex-wrap:wrap !important; }
.about-grid.row { display:flex !important; flex-wrap:wrap !important; }
.why-grid.row { display:flex !important; flex-wrap:wrap !important; }
.presence-grid.row { display:flex !important; flex-wrap:wrap !important; }
.footer-grid.row { display:flex !important; flex-wrap:wrap !important; }
.team-grid.row { display:flex !important; flex-wrap:wrap !important; }
.values-grid.row { display:flex !important; flex-wrap:wrap !important; }
.verticals-grid.row { display:flex !important; flex-wrap:wrap !important; }
.map-contact-grid.row { display:flex !important; flex-wrap:wrap !important; }
.mv-grid.row { display:flex !important; flex-wrap:wrap !important; }
.pillars-grid.row { display:flex !important; flex-wrap:wrap !important; }
.qp-pillars-grid.row { display:flex !important; flex-wrap:wrap !important; }
.qp-main.row { display:flex !important; flex-wrap:wrap !important; }
.msg-grid.row { display:flex !important; flex-wrap:wrap !important; }
.city-grid.row { display:flex !important; flex-wrap:wrap !important; }
.stats-row.row { display:flex !important; flex-wrap:wrap !important; }
.award-featured-grid.row { display:flex !important; flex-wrap:wrap !important; }
.award-gallery-grid.row { display:flex !important; flex-wrap:wrap !important; }
.recognition-strip.row { display:flex !important; flex-wrap:wrap !important; }
.commercial-spotlight.row { display:flex !important; flex-wrap:wrap !important; }
.hosp-grid.row { display:flex !important; flex-wrap:wrap !important; }
.completed-grid.row { display:flex !important; flex-wrap:wrap !important; }
.gallery-grid.row { display:flex !important; flex-wrap:wrap !important; }
.video-grid.row { display:flex !important; flex-wrap:wrap !important; }
.enquire-layout.row { display:flex !important; flex-wrap:wrap !important; }
.form-row.row { display:flex !important; flex-wrap:wrap !important; }
.interest-grid.row { display:flex !important; flex-wrap:wrap !important; }
.budget-grid.row { display:flex !important; flex-wrap:wrap !important; }
.project-layout.row { display:flex !important; flex-wrap:wrap !important; }
.quick-facts.row { display:flex !important; flex-wrap:wrap !important; }
.highlight-list.row { display:flex !important; flex-wrap:wrap !important; }
.plan-grid.row { display:flex !important; flex-wrap:wrap !important; }
.amenities-grid.row { display:flex !important; flex-wrap:wrap !important; }
.payment-grid.row { display:flex !important; flex-wrap:wrap !important; }
.location-grid.row { display:flex !important; flex-wrap:wrap !important; }
.brochure-grid.row { display:flex !important; flex-wrap:wrap !important; }
.faq-layout.row { display:flex !important; flex-wrap:wrap !important; }

/* Keep Bootstrap columns from being overridden by legacy grid declarations. */
.row > [class*="col-"] { box-sizing:border-box; }

/* Mobile safety for legacy fixed widths inside Bootstrap columns. */
@media (max-width: 991.98px) {
  .hero .container { grid-template-columns:1fr; }
  .hero-stats { width:100%; }
}

@media (max-width: 575.98px) {
  .row { --bs-gutter-x: 1rem; }
  .section { overflow: hidden; }
}


/* ================================================================
   CONSOLIDATED FROM mobile-ui.css
   ================================================================ */

/* ================================================================
   ISHAAN GROUP — FINAL BOOTSTRAP 5 RESPONSIVE / MOBILE FIX
   The original style.css remains the primary visual stylesheet.
   This file only adds responsive behavior and Bootstrap compatibility.
   ================================================================ */

/* ---------- Bootstrap compatibility / global safety ---------- */
html, body {
  max-width: 100%;
  overflow-x: hidden;
}

*, *::before, *::after {
  box-sizing: border-box;
}

img, video, iframe {
  max-width: 100%;
}

/* The site already has its own .container and .navbar system.
   Neutralize Bootstrap's navbar padding so the original desktop
   proportions are preserved. */
.navbar {
  padding: 0 !important;
}

.navbar .container {
  width: 100%;
}

/* ---------- DESKTOP NAVBAR FIX ----------
   Bootstrap's .collapse normally hides .nav-responsive unless
   .show is present. The original website needs it visible on
   desktop, so explicitly restore it at >= 992px. */
@media (min-width: 992px) {
  .nav-responsive.collapse {
    display: flex !important;
    flex-basis: auto !important;
    align-items: center;
    width: auto;
    height: auto !important;
    overflow: visible !important;
  }

  .nav-responsive .nav-menu {
    display: flex;
    align-items: center;
    gap: 4px;
  }

  .nav-responsive .nav-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-left: 14px;
  }

  .navbar-toggler {
    display: none !important;
  }

  .nav-item {
    position: relative;
  }

  .nav-item .dropdown {
    position: absolute;
  }

  /* Restore the original desktop hover dropdown. */
  .nav-item:hover > .dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}

/* ---------- TABLET ---------- */
@media (min-width: 768px) and (max-width: 1199.98px) {
  .container {
    padding-left: 24px;
    padding-right: 24px;
  }

  .nav-link {
    padding-left: 9px;
    padding-right: 9px;
    font-size: 12px;
  }

  .nav-actions {
    gap: 6px;
  }

  .btn-ghost,
  .btn-primary {
    padding-left: 11px;
    padding-right: 11px;
    white-space: nowrap;
  }
}

/* ---------- MOBILE NAVBAR ---------- */
@media (max-width: 991.98px) {
  .navbar .container {
    min-height: 68px;
    height: auto;
    padding-top: 9px;
    padding-bottom: 9px;
    flex-wrap: wrap;
  }

  .navbar-toggler {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border: 0 !important;
    padding: 8px !important;
    margin-left: auto;
    background: transparent !important;
    box-shadow: none !important;
  }

  .navbar-toggler:focus {
    box-shadow: none !important;
  }

  .navbar-toggler-lines {
    display: flex;
    width: 25px;
    height: 19px;
    flex-direction: column;
    justify-content: space-between;
  }

  .navbar-toggler-lines span {
    display: block;
    width: 100%;
    height: 2px;
    background: var(--navy);
    border-radius: 2px;
  }

  /* Bootstrap collapse controls visibility on mobile. */
  .nav-responsive.collapse:not(.show) {
    display: none !important;
  }

  .nav-responsive.collapse.show {
    display: block !important;
    width: 100%;
    flex-basis: 100%;
    background: var(--white);
  }

  .nav-responsive {
    border-top: 1px solid var(--border);
    margin-top: 7px;
    padding-top: 7px;
    padding-bottom: 5px;
  }

  .nav-menu {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 1px;
    width: 100%;
  }

  .nav-item {
    width: 100%;
  }

  .nav-link {
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    font-size: 14px;
    justify-content: space-between;
  }

  .nav-arrow {
    margin-left: auto;
    transition: transform .2s ease;
  }

  /* Mobile dropdowns become expandable sections. */
  .nav-item .dropdown {
    position: static;
    display: none;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 4px 8px 6px;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
    background: var(--stone);
  }

  .nav-item.mobile-open .dropdown {
    display: block;
  }

  .nav-item.mobile-open .nav-arrow {
    transform: rotate(180deg);
  }

  .dropdown a {
    display: flex;
    align-items: center;
    min-height: 40px;
    padding: 9px 12px;
    font-size: 13px;
  }

  .nav-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    width: 100%;
    margin-top: 8px;
  }

  .nav-actions .btn-ghost,
  .nav-actions .btn-primary {
    width: 100%;
    min-height: 42px;
  }
}

/* ---------- PHONE CONTENT ---------- */
@media (max-width: 575.98px) {
  .container,
  .container-fluid {
    --bs-gutter-x: 1rem;
    padding-left: 12px;
    padding-right: 12px;
  }

  .founder-grid {
    grid-template-columns: none;
  }

  .topbar {
    padding: 7px 0;
  }

  .topbar .container {
    justify-content: center;
    padding-left: 10px;
    padding-right: 10px;
  }

  .topbar-contact {
    width: 100%;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
  }

  .topbar-contact span {
    font-size: 10px;
  }

  .logo-icon {
    width: 34px;
    height: 34px;
  }

  .logo-name {
    font-size: 16px;
  }

  .logo-tagline {
    font-size: 8px;
  }

  .hero {
    min-height: auto;
    padding: 54px 0 44px;
  }

  .hero-title {
    font-size: clamp(31px, 9vw, 42px) !important;
    line-height: 1.08;
  }

  .hero-body,
  .hero-sub {
    font-size: 13px;
    line-height: 1.75;
  }

  .hero-btns {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 9px;
    width: 100%;
  }

  .hero-btns > *,
  .btn-hero-primary,
  .btn-hero-secondary {
    width: 100%;
    justify-content: center;
  }

  .hero-stats {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    width: 100%;
  }

  .hero-stat-card {
    min-width: 0;
    padding: 13px 10px;
  }

  .hero-stat-card .stat-num,
  .hero-stat-card .stat-value {
    font-size: 19px;
  }

  .section-title {
    font-size: 27px;
    line-height: 1.25;
  }

  .page-hero {
    padding: 48px 0 42px;
  }

  .page-hero-title {
    font-size: clamp(31px, 9vw, 40px);
    line-height: 1.12;
  }

  .page-hero-sub {
    font-size: 13px;
    line-height: 1.75;
  }

  /* Keep the Bootstrap-converted grids stable on phones.
     Only switch the site-specific grid systems to one/two columns;
     do not alter arbitrary .row elements. */
  .proj-grid.row > .col-lg-4,
  .proj-grid.row > .col-md-6,
  .about-grid.row > .col-lg-6,
  .enquire-layout.row > .col-lg-8,
  .enquire-layout.row > .col-lg-4,
  .project-layout.row > [class*="col-"] {
    width: 100%;
    flex: 0 0 100%;
  }

  .about-grid.row {
    align-items: stretch;
  }

  .proj-card-img {
    height: 190px;
  }

  .proj-card.featured .proj-card-img,
  .proj-card.featured .proj-img {
    height: 220px;
  }

  .about-img-main {
    height: 270px;
  }

  .about-pillars {
    grid-template-columns: 1fr;
  }

  .presence-grid {
    grid-template-columns: 1fr 1fr !important;
  }

  .presence-card {
    padding: 19px 12px;
  }

  .presence-city {
    font-size: 16px;
  }

  .gallery-grid,
  .gallery-grid.featured {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px;
  }

  .video-grid {
    grid-template-columns: 1fr !important;
  }

  .enquire-layout.row,
  .project-layout.row,
  .faq-layout.row {
    row-gap: 24px;
  }

  .form-row.row > [class*="col-"] {
    width: 100%;
    flex: 0 0 100%;
  }

  .form-card-hdr,
  .form-body {
    padding-left: 16px;
    padding-right: 16px;
  }

  .faq-q {
    padding: 15px 16px;
  }

  .faq-a-inner {
    padding-left: 16px;
    padding-right: 16px;
    font-size: 12px;
    line-height: 1.75;
  }

  .footer-grid {
    grid-template-columns: 1fr !important;
  }

  .footer-bottom {
    display: block;
    text-align: center;
  }

  .footer-bottom-links {
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 8px;
  }

  p, h1, h2, h3, h4, h5, h6, a, span, li {
    overflow-wrap: anywhere;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}


/* ================================================================
   ISHAAN GROUP — GRID LAYOUT FIX
   Custom grids are intentionally independent of Bootstrap .row/.col.
   Bootstrap remains available for components and responsive utilities.
   ================================================================ */

/* Desktop: project/card-heavy sections use the site's intended widths. */
@media (min-width: 1200px) {
  .proj-grid,
  .completed-grid,
  .award-featured-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .award-gallery-grid,
  .gallery-grid,
  .team-grid,
  .verticals-grid,
  .city-grid,
  .presence-grid,
  .pillars-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  .values-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .why-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
}

/* Tablet: two comfortable cards per row where appropriate. */
@media (min-width: 601px) and (max-width: 1199.98px) {
  .proj-grid,
  .completed-grid,
  .award-featured-grid,
  .values-grid,
  .qp-pillars-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .award-gallery-grid,
  .gallery-grid,
  .team-grid,
  .verticals-grid,
  .city-grid,
  .presence-grid,
  .pillars-grid,
  .why-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Phone: one card per row for readability. */
@media (max-width: 600px) {
  .proj-grid,
  .completed-grid,
  .award-featured-grid,
  .award-gallery-grid,
  .gallery-grid,
  .team-grid,
  .verticals-grid,
  .city-grid,
  .presence-grid,
  .values-grid,
  .pillars-grid,
  .qp-pillars-grid,
  .video-grid,
  .why-grid {
    grid-template-columns: 1fr !important;
  }

  .gallery-grid.featured {
    grid-template-columns: 1fr !important;
  }
}

/* Keep cards from inheriting Bootstrap column widths if a legacy class
   remains in any page. */
.proj-grid > .proj-card,
.completed-grid > .proj-card,
.award-featured-grid > .award-card,
.award-gallery-grid > .award-card,
.gallery-grid > .gallery-item,
.team-grid > .team-card,
.verticals-grid > .vertical-card,
.city-grid > .city-card,
.presence-grid > .presence-card,
.values-grid > .value-card,
.pillars-grid > .pillar-card,
.qp-pillars-grid > .qp-pillar-card {
  width: auto;
  max-width: none;
  flex: none;
}


/* ================================================================
   FINAL LAYOUT POLISH
   ================================================================ */

/* About Us — story content stays beside the image on desktop/tablet. */
.story-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: clamp(32px, 5vw, 80px);
  align-items: start;
}

/* Enquiry — form + contact sidebar stay side-by-side. */
.enquire-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 380px !important;
  gap: 40px;
  align-items: start;
}

/* The Bootstrap column classes inside the form should not turn the
   custom form rows into an incompatible Bootstrap flex row. */
.enquire-layout .form-row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px;
  margin-bottom: 18px;
}

.enquire-layout .form-row > .form-group {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
}

/* Interest/budget grids use the site's own grid. */
.enquire-layout .interest-grid,
.enquire-layout .budget-grid {
  display: grid !important;
}

/* Actual phone layout. */
@media (max-width: 767.98px) {
  .story-grid {
    grid-template-columns: 1fr !important;
    gap: 36px;
  }

  .enquire-layout {
    grid-template-columns: 1fr !important;
    gap: 28px;
  }

  .enquire-layout .form-row {
    grid-template-columns: 1fr !important;
  }
}

/* Tablet: keep two columns when there is enough CSS viewport width. */
@media (min-width: 768px) and (max-width: 1199.98px) {
  .story-grid {
    gap: 32px;
  }

  .enquire-layout {
    grid-template-columns: minmax(0, 1fr) 320px !important;
    gap: 24px;
  }
}

/* ================================================================
   MEDIA LIGHTBOX — PREVIOUS / NEXT / CLOSE
   Works with News, Events, Awards and other image lightboxes.
   ================================================================ */
.media-lightbox-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 50%;
  background: rgba(255,255,255,.12);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 27px;
  line-height: 1;
  cursor: pointer;
  z-index: 10003;
  transition: background .2s, transform .2s;
}

.media-lightbox-nav:hover {
  background: rgba(255,255,255,.24);
}

.media-lightbox-prev {
  left: 24px;
}

.media-lightbox-next {
  right: 24px;
}

.media-lightbox-close {
  position: absolute !important;
  top: 18px !important;
  right: 24px !important;
  width: 44px;
  height: 44px;
  border: 0 !important;
  border-radius: 50%;
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
  font-size: 31px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10004;
  padding: 0 !important;
}

.media-lightbox-close:hover {
  background: rgba(255,255,255,.24) !important;
}

.media-lightbox-counter {
  font-size: 11px;
  color: rgba(255,255,255,.6);
  letter-spacing: .4px;
}

@media (max-width: 600px) {
  .media-lightbox-nav {
    width: 40px;
    height: 40px;
    font-size: 23px;
  }

  .media-lightbox-prev { left: 10px; }
  .media-lightbox-next { right: 10px; }

  .media-lightbox-close {
    top: 10px !important;
    right: 10px !important;
    width: 40px;
    height: 40px;
    font-size: 28px !important;
  }
}


/* ================================================================
   FINAL FOOTER + LAYOUT FIX
   ================================================================ */
.footer-grid {
  display: grid !important;
  grid-template-columns: 2fr 1fr 1fr 1.2fr !important;
  gap: 48px !important;
  align-items: start !important;
}

.footer-grid > * {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  min-width: 0;
}

/* Keep the contact column on the right until phone width. */
@media (min-width: 768px) {
  .footer-grid {
    grid-template-columns: 2fr 1fr 1fr 1.2fr !important;
  }
}

@media (max-width: 767.98px) {
  .footer-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
}

/* About Us story: image and content stay side-by-side. */
.story-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: clamp(32px, 5vw, 80px) !important;
  align-items: start !important;
}

.story-grid > * {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
}

@media (max-width: 767.98px) {
  .story-grid {
    grid-template-columns: 1fr !important;
  }
}

/* Enquiry: form + contact card remain beside each other. */
.enquire-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 380px !important;
  gap: 40px !important;
  align-items: start !important;
}

.enquire-layout > * {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
}

@media (min-width: 768px) and (max-width: 1100px) {
  .enquire-layout {
    grid-template-columns: minmax(0, 1fr) 320px !important;
    gap: 24px !important;
  }
}

@media (max-width: 767.98px) {
  .enquire-layout {
    grid-template-columns: 1fr !important;
  }
}

/* Contact/map page: map and address cards stay in columns. */
.map-contact-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.5fr) minmax(280px, .8fr) !important;
  gap: 32px !important;
  align-items: start !important;
}

.map-contact-grid > * {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
}

@media (max-width: 767.98px) {
  .map-contact-grid {
    grid-template-columns: 1fr !important;
  }
}


/* ================================================================
   PAGE INLINE STYLES CONSOLIDATED FROM HTML
   ================================================================ */

/* ishaan-integrity.html — inline style block 1 */

.hero-gallery-wrap{background:#0E2340;padding-top:16px}
.gallery-main{position:relative;overflow:hidden;cursor:pointer;background:var(--navy);border-radius:12px 0 0 12px;height:100%;min-height:280px}
.gallery-thumb{position:relative;overflow:hidden;cursor:pointer;background:var(--navy-soft);height:100%;min-height:135px}
.gallery-main img,.gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s;position:absolute;inset:0}
.gallery-main:hover img,.gallery-thumb:hover img{transform:scale(1.04)}
.hero-badge-row{position:absolute;top:12px;left:12px;z-index:2;display:flex;gap:8px;flex-wrap:wrap}
.badge-few{background:#FFF8E1;color:#E65100;font-size:10px;font-weight:700;padding:5px 12px;border-radius:20px}
.gallery-count-btn{position:absolute;bottom:12px;right:12px;background:rgba(255,255,255,.92);border:none;border-radius:6px;padding:7px 14px;font-size:11px;font-weight:600;color:var(--navy);z-index:2;display:flex;align-items:center;gap:6px}
.yt-thumb{background:#000;display:flex;align-items:center;justify-content:center}
.yt-play{position:absolute;width:44px;height:44px;background:#FF0000;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2}

.sidebar-card{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md)}
.sidebar-header{background:var(--navy);padding:22px}
.sidebar-price{font-family:'Playfair Display',serif;font-size:24px;color:var(--light-blue)}
.sidebar-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border)}
.sidebar-stat{background:#fff;padding:12px;text-align:center}
.sidebar-stat-val{font-size:15px;font-weight:600;color:var(--navy)}
.sidebar-stat-label{font-size:9.5px;color:var(--ink-30)}

.tabs-nav{display:flex;overflow-x:auto;gap:0;border-bottom:2px solid var(--border);margin-bottom:28px;scrollbar-width:none}
.tabs-nav::-webkit-scrollbar{display:none}
.tab-btn{flex-shrink:0;padding:11px 16px;font-size:11.5px;font-weight:600;color:var(--ink-60);border:none;border-bottom:2px solid transparent;background:transparent;margin-bottom:-2px;white-space:nowrap;text-transform:uppercase;letter-spacing:.4px}
.tab-btn.active{color:var(--navy);border-bottom-color:var(--blue)}
.tab-pane{display:none}
.tab-pane.active{display:block}

.plan-card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;height:100%}
.plan-card-hdr{padding:12px 16px;background:var(--navy);display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:#fff}
.plan-img-wrap{padding:14px;cursor:pointer}
.plan-img-wrap:hover{background:var(--stone)}

.price-table th{background:var(--navy);color:#fff;font-size:10.5px;font-weight:600;text-transform:uppercase;padding:11px 12px}
.price-table td{padding:11px 12px;border-bottom:1px solid var(--border);font-size:12.5px;color:var(--ink-60)}
.price-highlight{font-size:16px;font-weight:700;color:var(--navy)}
.avail-badge{background:#E8F5E9;color:#1B5E20;font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;display:inline-block}
.sold-badge{background:#FFEBEE;color:#B71C1C;font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;display:inline-block}

.note-box{background:var(--stone);border-radius:14px;padding:18px 20px;margin-top:20px}
.note-list{list-style:none;padding:0;margin:0}
.note-list li{font-size:11.5px;color:var(--ink-60);padding:5px 0;display:flex;gap:8px;line-height:1.6}
.note-list li::before{content:'•';color:var(--blue);font-weight:700;flex-shrink:0}

.spec-table th{background:var(--navy);color:#fff;font-size:9.5px;font-weight:600;text-transform:uppercase;padding:9px 8px}
.spec-table td{padding:9px 8px;border-bottom:1px solid var(--border);font-size:11px;color:var(--ink-60);vertical-align:top}
.spec-room{font-weight:700;color:var(--navy);background:var(--blue-pale)!important;white-space:nowrap}


/* event.html — inline style block 1 */

         #lb.open {
            display: flex !important;
         }
      

/* ishaan-imperial-court.html — inline style block 1 */

.hero-gallery-wrap{background:#0E2340;padding-top:16px}
.gallery-main{position:relative;overflow:hidden;cursor:pointer;background:var(--navy);border-radius:12px 0 0 12px;height:100%;min-height:280px}
.gallery-thumb{position:relative;overflow:hidden;cursor:pointer;background:var(--navy-soft);height:100%;min-height:135px}
.gallery-main img,.gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s;position:absolute;inset:0}
.gallery-main:hover img,.gallery-thumb:hover img{transform:scale(1.04)}
.hero-badge-row{position:absolute;top:12px;left:12px;z-index:2;display:flex;gap:8px;flex-wrap:wrap}
.badge-few{background:#FFF8E1;color:#E65100;font-size:10px;font-weight:700;padding:5px 12px;border-radius:20px}
.gallery-count-btn{position:absolute;bottom:12px;right:12px;background:rgba(255,255,255,.92);border:none;border-radius:6px;padding:7px 14px;font-size:11px;font-weight:600;color:var(--navy);z-index:2;display:flex;align-items:center;gap:6px}
.yt-thumb{background:#000;display:flex;align-items:center;justify-content:center}
.yt-play{position:absolute;width:44px;height:44px;background:#FF0000;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2}

.sidebar-card{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md)}
.sidebar-header{background:var(--navy);padding:22px}
.sidebar-price{font-family:'Playfair Display',serif;font-size:24px;color:var(--light-blue)}
.sidebar-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border)}
.sidebar-stat{background:#fff;padding:12px;text-align:center}
.sidebar-stat-val{font-size:15px;font-weight:600;color:var(--navy)}
.sidebar-stat-label{font-size:9.5px;color:var(--ink-30)}

.tabs-nav{display:flex;overflow-x:auto;gap:0;border-bottom:2px solid var(--border);margin-bottom:28px;scrollbar-width:none}
.tabs-nav::-webkit-scrollbar{display:none}
.tab-btn{flex-shrink:0;padding:11px 16px;font-size:11.5px;font-weight:600;color:var(--ink-60);border:none;border-bottom:2px solid transparent;background:transparent;margin-bottom:-2px;white-space:nowrap;text-transform:uppercase;letter-spacing:.4px}
.tab-btn.active{color:var(--navy);border-bottom-color:var(--blue)}
.tab-pane{display:none}
.tab-pane.active{display:block}

.plan-card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden}
.plan-card-hdr{padding:12px 16px;background:var(--navy);display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:#fff}
.plan-img-wrap{padding:14px;cursor:pointer}
.plan-img-wrap:hover{background:var(--stone)}

.price-table th{background:var(--navy);color:#fff;font-size:10.5px;font-weight:600;text-transform:uppercase;padding:11px 12px}
.price-table td{padding:11px 12px;border-bottom:1px solid var(--border);font-size:12.5px;color:var(--ink-60)}
.price-highlight{font-size:15px;font-weight:700;color:var(--navy)}
.avail-badge{background:#E8F5E9;color:#1B5E20;font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px}
.sold-badge{background:#FFEBEE;color:#B71C1C;font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px}
.payment-cell{padding:9px 12px;border-bottom:1px solid var(--border);font-size:12px;color:var(--ink-60)}
.payment-cell strong{color:var(--navy)}

.spec-table th{background:var(--navy);color:#fff;font-size:10px;font-weight:600;text-transform:uppercase;padding:9px 10px}
.spec-table td{padding:9px 10px;border-bottom:1px solid var(--border);font-size:11.5px;color:var(--ink-60);vertical-align:top}
.spec-room{font-weight:700;color:var(--navy);background:var(--blue-pale)!important}

.feature-list-item{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fff;border:1px solid var(--border);border-radius:10px;font-size:12.5px;color:var(--navy);font-weight:500;height:100%}
.note-box{background:var(--stone);border-radius:14px;padding:18px 20px;margin-top:16px}
.note-list{list-style:none;padding:0;margin:0}
.note-list li{font-size:11.5px;color:var(--ink-60);padding:5px 0;display:flex;gap:8px;line-height:1.6}
.note-list li::before{content:'•';color:var(--blue);font-weight:700;flex-shrink:0}
.map-embed-wrap{border-radius:16px;overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-md);height:380px}
.map-embed-wrap iframe{width:100%;height:100%;border:0}


/* news.html — inline style block 1 */

         #lb.open {
            display: flex !important;
         }
      

/* ishaan-aawas-yojana.html — inline style block 1 */

.hero-gallery-wrap{background:#0E2340;padding-top:16px}
.gallery-main{position:relative;overflow:hidden;cursor:pointer;background:var(--navy);border-radius:12px 0 0 12px;height:100%;min-height:280px}
.gallery-thumb{position:relative;overflow:hidden;cursor:pointer;background:var(--navy-soft);height:100%;min-height:135px}
.gallery-main img,.gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s;position:absolute;inset:0}
.gallery-main:hover img,.gallery-thumb:hover img{transform:scale(1.04)}
.hero-badge-row{position:absolute;top:12px;left:12px;z-index:2;display:flex;gap:8px;flex-wrap:wrap}
.badge-done{background:#E3F2FD;color:#1565C0;font-size:10px;font-weight:700;padding:5px 12px;border-radius:20px}
.gallery-count-btn{position:absolute;bottom:12px;right:12px;background:rgba(255,255,255,.92);border:none;border-radius:6px;padding:7px 14px;font-size:11px;font-weight:600;color:var(--navy);z-index:2;display:flex;align-items:center;gap:6px}
.yt-thumb{background:#000;display:flex;align-items:center;justify-content:center}
.yt-play{position:absolute;width:44px;height:44px;background:#FF0000;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2}

.sidebar-card{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md)}
.sidebar-header{background:var(--navy);padding:22px}
.sidebar-price{font-family:'Playfair Display',serif;font-size:24px;color:var(--light-blue)}
.sidebar-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border)}
.sidebar-stat{background:#fff;padding:12px;text-align:center}
.sidebar-stat-val{font-size:15px;font-weight:600;color:var(--navy)}
.sidebar-stat-label{font-size:9.5px;color:var(--ink-30)}

.tabs-nav{display:flex;overflow-x:auto;gap:0;border-bottom:2px solid var(--border);margin-bottom:28px;scrollbar-width:none}
.tabs-nav::-webkit-scrollbar{display:none}
.tab-btn{flex-shrink:0;padding:11px 16px;font-size:11.5px;font-weight:600;color:var(--ink-60);border:none;border-bottom:2px solid transparent;background:transparent;margin-bottom:-2px;white-space:nowrap;text-transform:uppercase;letter-spacing:.4px}
.tab-btn.active{color:var(--navy);border-bottom-color:var(--blue)}
.tab-pane{display:none}
.tab-pane.active{display:block}

.plan-card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;height:100%}
.plan-card-hdr{padding:11px 14px;background:var(--navy);display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;color:#fff}
.plan-img-wrap{padding:12px;cursor:pointer}
.plan-img-wrap:hover{background:var(--stone)}

.spec-table th{background:var(--navy);color:#fff;font-size:10px;font-weight:600;text-transform:uppercase;padding:9px 10px}
.spec-table td{padding:9px 10px;border-bottom:1px solid var(--border);font-size:11.5px;color:var(--ink-60);vertical-align:top}
.spec-room{font-weight:700;color:var(--navy);background:var(--blue-pale)!important}

.feature-list-item{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fff;border:1px solid var(--border);border-radius:10px;font-size:12.5px;color:var(--navy);font-weight:500;height:100%}

.loc-point{display:flex;align-items:flex-start;gap:10px;padding:9px 12px;background:#fff;border:1px solid var(--border);border-radius:8px;font-size:12px}
.loc-dist{font-size:10.5px;color:var(--blue);font-weight:600}

.construction-badge{display:inline-flex;align-items:center;gap:8px;background:#E8F5E9;color:#1B5E20;font-size:13px;font-weight:700;padding:10px 20px;border-radius:10px;margin-bottom:20px}
.update-img-wrap{border-radius:14px;overflow:hidden;cursor:pointer;border:1px solid var(--border)}
.update-img-wrap img{width:100%;transition:transform .4s}
.update-img-wrap:hover img{transform:scale(1.03)}


/* ishaan-ashok-residences.html — inline style block 1 */

.hero-gallery-wrap{background:#0E2340;padding-top:16px}
.gallery-main{position:relative;overflow:hidden;cursor:pointer;background:var(--navy);border-radius:12px 0 0 12px;height:100%;min-height:280px}
.gallery-thumb{position:relative;overflow:hidden;cursor:pointer;background:var(--navy-soft);height:100%;min-height:135px}
.gallery-main img,.gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s;position:absolute;inset:0}
.gallery-main:hover img,.gallery-thumb:hover img{transform:scale(1.04)}
.hero-badge-row{position:absolute;top:12px;left:12px;z-index:2;display:flex;gap:8px;flex-wrap:wrap}
.badge-sold{background:#FFEBEE;color:#B71C1C;font-size:10px;font-weight:700;padding:5px 12px;border-radius:20px}
.gallery-count-btn{position:absolute;bottom:12px;right:12px;background:rgba(255,255,255,.92);border:none;border-radius:6px;padding:7px 14px;font-size:11px;font-weight:600;color:var(--navy);z-index:2;display:flex;align-items:center;gap:6px}
.yt-thumb{background:#000;display:flex;align-items:center;justify-content:center}
.yt-play{position:absolute;width:44px;height:44px;background:#FF0000;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2}

.sidebar-card{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md)}
.sidebar-header{background:var(--navy);padding:22px}
.sidebar-price{font-family:'Playfair Display',serif;font-size:24px;color:var(--light-blue)}
.sidebar-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border)}
.sidebar-stat{background:#fff;padding:12px;text-align:center}
.sidebar-stat-val{font-size:15px;font-weight:600;color:var(--navy)}
.sidebar-stat-label{font-size:9.5px;color:var(--ink-30)}

.tabs-nav{display:flex;overflow-x:auto;gap:0;border-bottom:2px solid var(--border);margin-bottom:28px;scrollbar-width:none}
.tabs-nav::-webkit-scrollbar{display:none}
.tab-btn{flex-shrink:0;padding:11px 16px;font-size:11.5px;font-weight:600;color:var(--ink-60);border:none;border-bottom:2px solid transparent;background:transparent;margin-bottom:-2px;white-space:nowrap;text-transform:uppercase;letter-spacing:.4px}
.tab-btn.active{color:var(--navy);border-bottom-color:var(--blue)}
.tab-pane{display:none}
.tab-pane.active{display:block}

.plan-card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden}
.plan-card-hdr{padding:12px 16px;background:var(--navy);display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:#fff}
.plan-img-wrap{padding:14px;cursor:pointer}
.plan-img-wrap:hover{background:var(--stone)}

.price-table th{background:var(--navy);color:#fff;font-size:10px;font-weight:600;text-transform:uppercase;padding:11px 12px}
.price-table td{padding:11px 12px;border-bottom:1px solid var(--border);font-size:12px;color:var(--ink-60)}
.sold-badge{background:#FFEBEE;color:#B71C1C;font-size:10.5px;font-weight:700;padding:3px 10px;border-radius:20px}
.mandatory-table th{background:var(--navy-soft);color:#fff;font-size:10.5px;padding:10px 14px}
.mandatory-table td{padding:10px 14px;border-bottom:1px solid var(--border);font-size:12px;color:var(--ink-60)}
.payment-cell{padding:9px 12px;border-bottom:1px solid var(--border);font-size:11.5px;color:var(--ink-60)}
.payment-cell strong{color:var(--navy);min-width:34px;display:inline-block}

.loc-point{display:flex;align-items:flex-start;gap:10px;padding:9px 12px;background:#fff;border:1px solid var(--border);border-radius:8px;font-size:12px}
.loc-dist{font-size:10.5px;color:var(--blue);font-weight:600}

.feature-list-item{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fff;border:1px solid var(--border);border-radius:10px;font-size:12.5px;color:var(--navy);font-weight:500;height:100%}
.tnc-box{background:var(--stone);border-radius:14px;padding:20px 22px;margin-top:20px}
.tnc-list{list-style:none;padding:0;margin:0}
.tnc-list li{font-size:12px;color:var(--ink-60);padding:6px 0;display:flex;gap:8px;line-height:1.6}
.tnc-list li::before{content:'•';color:var(--blue);font-weight:700;flex-shrink:0}


/* faq.html — inline style block 1 */

         *,
         *::before,
         *::after {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
         }
         html {
            scroll-behavior: smooth;
         }
         body {
            font-family: "Inter", sans-serif;
            background: #fafaf8;
            color: #1a1a1a;
            line-height: 1.6;
            overflow-x: hidden;
         }
         a {
            text-decoration: none;
            color: inherit;
         }
         img {
            display: block;
            max-width: 100%;
         }
         
         .container {
            max-width: var(--container);
            margin: 0 auto;
            padding: 0 var(--pad-x);
         }
         .display {
            font-family: "Playfair Display", Georgia, serif;
         }
         /* topbar */
         .topbar {
            background: var(--navy);
            padding: 8px 0;
            font-size: 12px;
            color: rgba(255, 255, 255, 0.5);
         }
        /* .topbar .container {
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: 8px;
         }*/
         .topbar-links {
            display: flex;
            gap: 20px;
         }
         .topbar-links a {
            color: rgba(255, 255, 255, 0.5);
            transition: color 0.2s;
         }
         .topbar-links a:hover {
            color: var(--light-blue);
         }
         .topbar-contact {
            display: flex;
            gap: 20px;
         }
         .topbar-contact span {
            display: flex;
            align-items: center;
            gap: 6px;
         }
         /* navbar */
         .navbar {
            position: sticky;
            top: 0;
            z-index: 100;
            background: var(--white);
            border-bottom: 1px solid var(--border);
            box-shadow: var(--shadow-sm);
         }
         .navbar .container {
            display: flex;
            align-items: center;
            justify-content: space-between;
            height: 100px;
         }
         .logo {
            display: flex;
            align-items: center;
            gap: 10px;
            height: 90px;
         }
         .logo-icon {
            width: 160px;
            display: flex;
            align-items: center;
            justify-content: center;
         }
         .logo-name {
            font-family: "Playfair Display", serif;
            font-size: 17px;
            font-weight: 600;
            color: var(--navy);
         }
         .logo-tagline {
            font-size: 9px;
            letter-spacing: 1.5px;
            color: var(--blue);
            text-transform: uppercase;
         }
         .nav-menu {
            display: flex;
            align-items: center;
            gap: 4px;
         }
         .nav-item {
            position: relative;
         }
         .nav-link {
            display: flex;
            align-items: center;
            gap: 4px;
            padding: 8px 14px;
            font-size: 13px;
            font-weight: 500;
            color: var(--ink-60);
            border-radius: var(--radius-sm);
            transition:
               color 0.2s,
               background 0.2s;
            cursor: pointer;
         }
         .nav-link:hover,
         .nav-link.active {
            color: var(--navy);
            background: var(--stone);
         }
         .dropdown {
            position: absolute;
            top: calc(100% + 8px);
            left: 0;
            min-width: 200px;
            background: var(--white);
            border: 1px solid var(--border);
            border-radius: var(--radius-md);
            box-shadow: var(--shadow-lg);
            padding: 6px;
            opacity: 0;
            visibility: hidden;
            transform: translateY(-6px);
            transition: all 0.2s;
            z-index: 200;
         }
         .nav-item:hover .dropdown {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
         }
         .dropdown a {
            display: block;
            padding: 8px 12px;
            font-size: 13px;
            color: var(--ink-60);
            border-radius: var(--radius-sm);
            transition: all 0.15s;
         }
         .dropdown a:hover {
            background: var(--stone);
            color: var(--navy);
         }
         .nav-actions {
            display: flex;
            align-items: center;
            gap: 10px;
         }
         .btn-ghost {
            padding: 8px 16px;
            font-size: 13px;
            font-weight: 500;
            color: var(--navy);
            border: 1px solid var(--navy);
            border-radius: var(--radius-sm);
            background: transparent;
            cursor: pointer;
            transition: all 0.2s;
         }
         .btn-ghost:hover {
            background: var(--navy);
            color: var(--white);
         }
         .btn-ghost.active {
          background: var(--navy);
          color: var(--white);
         }
         .btn-primary {
            padding: 8px 20px;
            font-size: 13px;
            font-weight: 600;
            color: var(--white);
            background: var(--blue);
            border: none;
            border-radius: var(--radius-sm);
            cursor: pointer;
            transition: background 0.2s;
         }
         .btn-primary:hover {
            background: var(--light-blue);
         }
         /* page hero */
         .page-hero {
            background: var(--navy);
            position: relative;
            overflow: hidden;
            padding: 44px 0;
            height: 322px;
         }
         .page-hero-bg {
            position: absolute;
            inset: 0;
            background-image: radial-gradient(
                  circle at 78% 30%,
                  rgba(184, 134, 11, 0.12) 0%,
                  transparent 55%
               ),
               radial-gradient(
                  circle at 15% 75%,
                  rgba(42, 74, 114, 0.5) 0%,
                  transparent 50%
               );
         }
         .page-hero-grid {
            position: absolute;
            inset: 0;
            background-image: url("../images/ishaan/about.png");
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
            opacity: 0.35;
         }
         .page-hero .container {
            position: relative;
            z-index: 2;
            text-align: left;
         }
         .breadcrumb {
            display: flex;
            align-items: center;
            justify-content: left;
            gap: 8px;
            font-size: 15px;
            color: rgba(255, 255, 255, 0.4);
            margin-bottom: 18px;
         }
         .breadcrumb a {
            color: rgba(255, 255, 255, 0.8);
            transition: color 0.2s;
         }
         .breadcrumb a:hover {
            color: var(--gold-light);
         }
         .breadcrumb-current {
            color: var(--gold-light);
         }
         .hero-eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            background: rgba(255, 255, 255, 0.15);
            border: 1px solid rgba(255, 255, 255, 0.3);
            color: var(--white);
            font-size: 11px;
            font-weight: 500;
            letter-spacing: 1px;
            text-transform: uppercase;
            padding: 5px 14px;
            border-radius: 20px;
            margin-bottom: 16px;
         }
         .hero-title {
            font-family: "Playfair Display", serif;
            font-size: 42px;
            font-weight: 500;
            color: var(--white);
            line-height: 1.2;
            margin-bottom: 14px;
         }
         .hero-title em {
            color: var(--gold-light);
            font-style: normal;
         }
         .hero-sub {
            font-size: 15px;
            color: rgba(255, 255, 255, 0.85);
            max-width: 520px;
            line-height: 1.8;
            margin: 0 0 32px;
         }
         /* search box */
         .search-box {
            max-width: 520px;
            margin: 0 auto;
            position: relative;
         }
         .search-box input {
            width: 100%;
            padding: 15px 20px 15px 48px;
            font-size: 14px;
            border: none;
            border-radius: var(--radius-md);
            background: var(--white);
            color: var(--ink);
            outline: none;
            box-shadow: var(--shadow-lg);
         }
         .search-box svg {
            position: absolute;
            left: 18px;
            top: 50%;
            transform: translateY(-50%);
            color: var(--ink-30);
         }
         .search-box input::placeholder {
            color: var(--ink-30);
         }
         /* layout */
         .faq-layout {
            display: grid;
            grid-template-columns: 240px 1fr;
            gap: 40px;
            padding: 56px 0 80px;
            align-items: start;
         }
         /* category sidebar */
         .cat-sidebar {
            position: sticky;
            top: 88px;
         }
         .cat-title {
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 1.5px;
            text-transform: uppercase;
            color: var(--ink-30);
            margin-bottom: 14px;
            padding: 0 4px;
         }
         .cat-list {
            display: flex;
            flex-direction: column;
            gap: 4px;
         }
         .cat-btn {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 10px 14px;
            font-size: 13px;
            font-weight: 500;
            color: var(--ink-60);
            border-radius: var(--radius-sm);
            cursor: pointer;
            transition: all 0.2s;
            background: transparent;
            border: none;
            text-align: left;
            width: 100%;
         }
         .cat-btn:hover {
            background: var(--stone);
            color: var(--navy);
         }
         .cat-btn.active {
            background: var(--navy);
            color: var(--white);
         }
         .cat-count {
            font-size: 10px;
            padding: 2px 7px;
            border-radius: 20px;
            background: rgba(0, 0, 0, 0.06);
            color: inherit;
         }
         .cat-btn.active .cat-count {
            background: rgba(255, 255, 255, 0.15);
         }
         .contact-mini {
            margin-top: 28px;
            padding: 20px;
            background: var(--blue-pale);
            border-radius: var(--radius-md);
            border: 1px solid rgba(0, 139, 208, 0.2);
         }
         .contact-mini-title {
            font-size: 13px;
            font-weight: 600;
            color: var(--navy);
            margin-bottom: 6px;
         }
         .contact-mini-sub {
            font-size: 11px;
            color: var(--ink-60);
            line-height: 1.6;
            margin-bottom: 14px;
         }
         .contact-mini-btn {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            padding: 9px;
            font-size: 12px;
            font-weight: 600;
            color: var(--white);
            background: var(--navy);
            border-radius: var(--radius-sm);
            cursor: pointer;
            transition: background 0.2s;
         }
         .contact-mini-btn:hover {
            background: var(--navy-soft);
         }
         /* faq main */
         .faq-group {
            margin-bottom: 36px;
         }
         .faq-group-hdr {
            display: flex;
            align-items: center;
            gap: 14px;
            margin-bottom: 18px;
         }
         .faq-group-icon {
            width: 38px;
            height: 38px;
            background: var(--blue-pale);
            border-radius: var(--radius-sm);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 18px;
            flex-shrink: 0;
         }
         .faq-group-title {
            font-family: "Playfair Display", serif;
            font-size: 20px;
            color: var(--navy);
         }
         .faq-item {
            background: var(--white);
            border: 1px solid var(--border);
            border-radius: var(--radius-md);
            margin-bottom: 10px;
            overflow: hidden;
            transition: border-color 0.2s;
         }
         .faq-item:hover {
            border-color: rgba(0, 139, 208, 0.4);
         }
         .faq-item.open {
            border-color: var(--blue);
         }
         .faq-q {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            padding: 18px 22px;
            cursor: pointer;
            user-select: none;
         }
         .faq-q-text {
            font-size: 14px;
            font-weight: 600;
            color: var(--navy);
            line-height: 1.5;
         }
         .faq-icon {
            width: 26px;
            height: 26px;
            border-radius: 50%;
            background: var(--stone);
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
            transition: all 0.25s;
         }
         .faq-item.open .faq-icon {
            background: var(--blue);
            transform: rotate(180deg);
         }
         .faq-icon svg {
            color: var(--ink-60);
            transition: color 0.25s;
         }
         .faq-item.open .faq-icon svg {
            color: #fff;
         }
         .faq-a {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.35s ease;
         }
         .faq-a-inner {
            padding: 0 22px 20px;
            font-size: 13px;
            color: var(--ink-60);
            line-height: 1.85;
         }
         .no-results {
            display: none;
            text-align: center;
            padding: 60px 20px;
         }
         .no-results.show {
            display: block;
         }
         .no-results-icon {
            font-size: 40px;
            margin-bottom: 14px;
         }
         .no-results-title {
            font-family: "Playfair Display", serif;
            font-size: 18px;
            color: var(--navy);
            margin-bottom: 6px;
         }
         .no-results-sub {
            font-size: 13px;
            color: var(--ink-60);
         }
         /* cta strip */
         .cta-strip {
            background: linear-gradient(
               135deg,
               var(--navy) 0%,
               var(--navy-soft) 100%
            );
            padding: 56px 0;
            position: relative;
            overflow: hidden;
         }
         .cta-strip::before {
            content: "";
            position: absolute;
            right: -80px;
            top: -80px;
            width: 320px;
            height: 320px;
            background: radial-gradient(
               circle,
               rgba(184, 134, 11, 0.15) 0%,
               transparent 70%
            );
         }
         .cta-inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 32px;
            flex-wrap: wrap;
         }
         .cta-title {
            font-family: "Playfair Display", serif;
            font-size: 28px;
            color: var(--white);
            margin-bottom: 6px;
         }
         .cta-sub {
            font-size: 13px;
            color: rgba(255, 255, 255, 0.5);
         }
         .cta-actions {
            display: flex;
            flex-direction: column;
            align-items: flex-end;
            gap: 12px;
         }
         .cta-phone-label {
            font-size: 10px;
            letter-spacing: 1px;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.35);
            margin-bottom: 4px;
            text-align: right;
         }
         .cta-phone {
            font-family: "Playfair Display", serif;
            font-size: 26px;
            color: var(--light-blue);
         }
         .cta-btns {
            display: flex;
            gap: 10px;
         }
         .btn-wa-cta {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 11px 20px;
            background: #25d366;
            color: var(--white);
            font-size: 13px;
            font-weight: 600;
            border: none;
            border-radius: var(--radius-sm);
            cursor: pointer;
            transition: background 0.2s;
         }
         .btn-wa-cta:hover {
            background: #1ea855;
         }
         .btn-enq-cta {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 11px 20px;
            background: var(--blue);
            color: var(--white);
            font-size: 13px;
            font-weight: 600;
            border: none;
            border-radius: var(--radius-sm);
            cursor: pointer;
            transition: background 0.2s;
         }
         .btn-enq-cta:hover {
            background: #9a6f09;
         }
         /* footer */
         .footer {
            background: #060f1e;
            padding: 56px 0 0;
         }
         .footer-grid {
            display: grid;
            grid-template-columns: 2fr 1fr 1fr 1.2fr;
            gap: 48px;
            padding-bottom: 44px;
            border-bottom: 1px solid rgba(255, 255, 255, 0.06);
         }
         .footer-brand-name {
            font-family: "Playfair Display", serif;
            font-size: 20px;
            color: var(--white);
            margin-bottom: 8px;
         }
         .footer-tagline {
            font-size: 12px;
            color: rgba(255, 255, 255, 0.35);
            line-height: 1.8;
            margin-bottom: 22px;
            font-style: italic;
         }
         .footer-socials {
            display: flex;
            gap: 8px;
         }
         .social-btn {
            width: 34px;
            height: 34px;
            border-radius: 50%;
            background: rgba(255, 255, 255, 0.06);
            border: 1px solid rgba(255, 255, 255, 0.1);
            display: flex;
            align-items: center;
            justify-content: center;
            color: rgba(255, 255, 255, 0.4);
            cursor: pointer;
            transition: all 0.2s;
            text-decoration: none;
         }
         .social-btn:hover {
            background: var(--blue);
            border-color: var(--blue);
            color: var(--white);
         }
         .footer-col h4 {
            font-size: 10px;
            font-weight: 700;
            letter-spacing: 1.5px;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.5);
            margin-bottom: 14px;
         }
         .footer-col a {
            display: block;
            font-size: 12px;
            color: rgba(255, 255, 255, 0.35);
            margin-bottom: 9px;
            transition: color 0.15s;
         }
         .footer-col a:hover {
            color: var(--light-blue);
         }
         .footer-contact-item {
            display: flex;
            align-items: flex-start;
            gap: 10px;
            font-size: 12px;
            color: rgba(255, 255, 255, 0.35);
            margin-bottom: 11px;
            line-height: 1.5;
         }
         .footer-bottom {
            padding: 16px 0;
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-size: 11px;
            color: rgba(255, 255, 255, 0.2);
            flex-wrap: wrap;
            gap: 12px;
         }
         .footer-bottom-links {
            display: flex;
            gap: 16px;
         }
         .footer-bottom-links a {
            color: rgba(255, 255, 255, 0.2);
            transition: color 0.15s;
         }
         .footer-bottom-links a:hover {
            color: rgba(255, 255, 255, 0.5);
         }
         .disclaimer-bar {
            background: var(--stone);
            border-top: 1px solid var(--border);
            padding: 14px 0;
         }
         .disclaimer-text {
            font-size: 10px;
            color: var(--ink-30);
            line-height: 1.6;
            text-align: left;
         }
         /* floating */
         .floating-cta {
            position: fixed;
            left: 24px;
            bottom: 24px;
            z-index: 999;
            display: flex;
            flex-direction: column;
            gap: 10px;
            align-items: flex-start;
         }
         .float-btn {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 11px 18px;
            border-radius: 28px;
            font-size: 13px;
            font-weight: 600;
            border: none;
            cursor: pointer;
            box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
            transition:
               transform 0.2s,
               box-shadow 0.2s;
         }
         .float-btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
         }
         .float-wa {
            background: #25d366;
            color: var(--white);
         }
         .float-enq {
            background: var(--navy);
            color: var(--white);
         }
         .back-top {
            position: fixed;
            right: 24px;
            bottom: 50px;
            z-index: 998;
            width: 40px;
            height: 40px;
            background: var(--white);
            border: 1px solid var(--border);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            box-shadow: var(--shadow-md);
            color: var(--navy);
            transition: all 0.2s;
         }
         .back-top:hover {
            background: var(--navy);
            color: var(--white);
         }
         .fade-up {
            opacity: 0;
            transform: translateY(16px);
            transition:
               opacity 0.45s ease,
               transform 0.45s ease;
         }
         .fade-up.visible {
            opacity: 1;
            transform: translateY(0);
         }

         @media (max-width: 900px) {
            :root {
               --pad-x: 20px;
            }
            .faq-layout {
               grid-template-columns: 1fr;
            }
            .cat-sidebar {
               position: static;
            }
            .cat-list {
               flex-direction: row;
               flex-wrap: wrap;
            }
            .cat-btn {
               width: auto;
            }
            .contact-mini {
               display: none;
            }
            .topbar {
               display: none;
            }
         }
         @media (max-width: 600px) {
            .nav-menu {
               display: none;
            }
            .hero-title {
               font-size: 28px;
            }
            .faq-q-text {
               font-size: 13px;
            }
            .cta-actions {
               align-items: center;
            }
         }
      

/* video.html — inline style block 1 */

         #lb.open {
            display: flex !important;
         }
      



/* HERO CSS updated */

        /* ============================================================
   ISHAAN GROUP
   HERO — 35% TEXT / 65% IMAGE
   ============================================================ */

.hero-split {
    position: relative;
    width: 100%;
    height: 556px;
    min-height: 556px;
    overflow: hidden;
    background: var(--cream);
}


/* ============================================================
   MAIN ROW
   ============================================================ */

.hero-split-row {
    display: flex;
    width: 100%;
    height: 100%;
}


/* ============================================================
   LEFT — TEXT 35%
   ============================================================ */

.hero-text-col {
    flex: 0 0 35%;
    width: 35%;

    display: flex;
    align-items: center;

    background: var(--cream);

    position: relative;
    z-index: 5;
}


.hero-text-inner {

    width: 100%;

    max-width: 570px;

    padding: 25px 45px 55px 7vw;

}


/* ============================================================
   EYEBROW
   ============================================================ */

.hero-text-inner .hero-eyebrow {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    margin-bottom: 20px;

    padding: 0;

    background: transparent;

    border: none;

    border-radius: 0;

    color: var(--blue);

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 1.5px;

    text-transform: uppercase;

}


.hero-eyebrow-dot {

    width: 7px;
    height: 7px;

    flex-shrink: 0;

    background: var(--light-blue);

    border-radius: 50%;

}


.hero-eyebrow-separator {

    color: #aaa;

}


/* ============================================================
   TITLE
   ============================================================ */

.hero-text-inner .hero-title {

    margin: 0;

    color: var(--navy);

    font-family: 'Playfair Display', Georgia, serif;

    font-size: clamp(40px, 4vw, 40px);
    text-align: left;

    font-weight: 500;

    line-height: 1.08;

}


.hero-text-inner .hero-title em {

    color: var(--blue);

    font-style: normal;

}


/* ============================================================
   BLUE DIVIDER
   ============================================================ */

.hero-blue-divider {

    width: 55px;

    height: 2px;

    margin: 24px 0;

    background: var(--blue);

}


/* ============================================================
   BODY
   ============================================================ */

.hero-text-inner .hero-body {

    max-width: 480px;

    margin: 0 0 28px;

    color: var(--ink-60);

    font-size: 14px;

    line-height: 1.8;

    text-align: justify;

}


/* ============================================================
   BUTTONS
   ============================================================ */

.hero-text-inner .hero-btns {

    display: flex;

    align-items: center;

    gap: 10px;

    flex-wrap: wrap;

    margin-bottom: 30px;

}


.hero-text-inner .btn-hero-primary,
.hero-text-inner .btn-hero-secondary {

    min-height: 44px;

}


/* ============================================================
   LOCATIONS
   ============================================================ */

.hero-text-inner .hero-locations {

    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 6px;

    padding-top: 18px;

    border-top: 1px solid var(--border);

}


.hero-text-inner .hero-locations-label {

    color: var(--ink-30);

}


/* ============================================================
   RIGHT — IMAGE 65%
   ============================================================ */

.hero-image-col {

    flex: 0 0 65%;

    width: 65%;

    position: relative;

    min-width: 0;

    overflow: hidden;

}


/* ============================================================
   BOOTSTRAP CAROUSEL
   ============================================================ */

.hero-image-col .hero-carousel {

    position: absolute;

    inset: 0;

    width: 100%;

    height: 100%;

}


.hero-image-col .carousel-inner,
.hero-image-col .carousel-item {

    width: 100%;

    height: 100%;

}


.hero-image-col .hero-slide-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}


/* ============================================================
   IMAGE — SUBTLE OVERLAY
   ============================================================ */

.hero-image-col::after {

    content: "";

    position: absolute;

    inset: 0;

    z-index: 2;

    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            rgba(14, 35, 64, 0.12),
            rgba(14, 35, 64, 0)
        );

}


/* ============================================================
   CAROUSEL CONTROLS
   ============================================================ */

.hero-image-col .hero-slider-control {

    z-index: 10;

    width: 48px;

    height: 48px;

    top: auto;

    bottom: 35px;

    margin: 0;

    opacity: 0.85;

    border: 1px solid rgba(255,255,255,0.7);

    border-radius: 50%;

    background: rgba(14,35,64,0.55);

    transition: all .25s ease;

}


.hero-image-col .hero-slider-control:hover {

    opacity: 1;

    background: var(--navy);

}


.hero-image-col .carousel-control-prev {

    left: 25px;
    right: 95px;

}


.hero-image-col .carousel-control-next {

    right: 35px;

}


.hero-image-col .hero-slider-arrow {

    color: #fff;

    font-size: 22px;

    line-height: 1;

}


/* ============================================================
   CAROUSEL INDICATORS
   ============================================================ */

.hero-image-col .carousel-indicators {

    z-index: 10;

    bottom: 65px;

    width: auto;

    margin: 0 auto;

}


.hero-image-col .carousel-indicators button {

    width: 24px;

    height: 2px;

    margin: 0 3px;

    border: 0;

    opacity: .55;

}


.hero-image-col .carousel-indicators button.active {

    opacity: 1;

}

/* for mobile CSS */

/* ============================================================
   TABLET / MOBILE
   ============================================================ */

@media (max-width: 991.98px) {

    .hero-split {

        height: auto;

        min-height: auto;

        overflow: visible;
        padding: 0;

    }


    .hero-split-row {

        display: flex;

        flex-direction: column;

        height: auto;

    }


    /* IMAGE FIRST */

    .hero-image-col {

        order: 1;

        flex: 0 0 100%;

        width: 100%;

        height: 500px;

    }


    /* TEXT SECOND */

    .hero-text-col {

        order: 2;

        flex: 0 0 100%;

        width: 100%;

    }


    .hero-text-inner {

        max-width: 720px;

        margin: 0 auto;

        padding: 55px 30px;

    }


    .hero-text-inner .hero-title {

        font-size: clamp(38px, 7vw, 35px);

    }


    .hero-image-col .hero-slider-control {

        opacity: .9;

    }

}

/* Keep the homepage carousel explicitly visible on touch/mobile.
   This is intentionally limited to the homepage hero so other sliders
   and galleries are not affected. */
@media (max-width: 991.98px) {
    .hero-image-col {
        display: block !important;
        min-height: 250px;
    }

    .hero-image-col .hero-carousel {
        display: block !important;
        visibility: visible !important;
        height: 100% !important;
    }

    .hero-image-col .carousel-inner,
    .hero-image-col .carousel-item {
        height: 100% !important;
        min-height: 100%;
    }

    .hero-image-col .hero-slide-img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

/* small Phone */

@media (max-width: 575.98px) {

    .hero-image-col {

        height: 250px;

    }


    .hero-text-inner {

        padding: 42px 22px 45px;

    }


    .hero-text-inner .hero-title {

        font-size: 36px;

        line-height: 1.1;

    }


    .hero-text-inner .hero-body {

        font-size: 13px;

        line-height: 1.75;

    }


    .hero-text-inner .hero-btns {

        display: grid !important;

        grid-template-columns: 1fr;

        width: 100%;

    }


    .hero-text-inner .hero-btns > * {

        width: 100%;

        justify-content: center;

    }


    .hero-image-col .carousel-control-prev {

        right: 70px;

    }


    .hero-image-col .carousel-control-next {

        right: 15px;

    }


    .hero-image-col .carousel-indicators {

        right: 15px;
        bottom: 15px;

    }

}

/* Cosntruction Updates Page CSS */

.status-badge{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;padding:8px 18px;border-radius:20px;margin-bottom:20px}
.status-done{background:#E3F2FD;color:#1565C0}
.status-progress{background:#FFF8E1;color:#E65100}
.status-started{background:#F3E5F5;color:#4A148C}
.update-img-wrap{border-radius:5px;overflow:hidden;cursor:pointer;border:1px solid var(--border);aspect-ratio:4/3;background:var(--white)}
.update-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .4s; border-radius: 10px; padding: 5px;}
.update-img-wrap:hover img{transform:scale(1.05)}
.update-section{margin-bottom:25px; border-bottom: solid 1px #ccc; padding: 0px 0 40px;}
.update-section-hdr{display:flex;align-items:center;gap:14px;margin-bottom:6px;flex-wrap:wrap}
.update-project-name{font-family:'Playfair Display',serif;font-size:clamp(19px,3vw,24px);color:var(--navy)}

/* Sticky pill nav — positioned dynamically via JS to sit right below navbar */
.tabs-nav-sticky{position:sticky;z-index:90;background:#fff;border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);top:0}
.tabs-nav-sticky-inner{position:relative}
/*.tabs-nav-sticky .cat-pills{padding:12px 4px;scroll-behavior:smooth;scroll-snap-type:x proximity}*/
.tabs-nav-sticky .cat-pills {
    padding: 0;
    scroll-behavior: smooth;
    scroll-snap-type: x proximity;
    overflow-x: auto;
    overflow-y: hidden;
    flex-wrap: nowrap;
}
.tabs-nav-sticky .cat-pill{scroll-snap-align:start;font-size:12px; padding: 10px 20px;}
/* fade edges to hint the row scrolls */
.tabs-nav-sticky-inner::before,.tabs-nav-sticky-inner::after{content:'';position:absolute;top:0;bottom:0;width:28px;z-index:2;pointer-events:none}

.tabs-nav-sticky-inner::before{left:0;}
/*.tabs-nav-sticky-inner::after{right:0;background:linear-gradient(to left,#fff,rgba(255,255,255,0))}
.tabs-nav-sticky-inner::before{left:0;background:linear-gradient(to right,#fff,rgba(255,255,255,0))}
*/
.tabs-nav-sticky-inner::after{right:0;}
@media(max-width:600px){.tabs-nav-sticky .cat-pill{font-size:11px;padding:7px 13px}}


/* Disclaimer Page CSS */
.disclaimer-card{background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-md);overflow:hidden}
.disclaimer-card-hdr{background:var(--navy);padding:22px 28px;display:flex;align-items:center;gap:14px}
.disclaimer-icon{width:44px;height:44px;background:rgba(184,134,11,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.disclaimer-list{list-style:none;padding:0;margin:0}
.disclaimer-item{display:flex;gap:16px;padding:10px 28px 22px;border-bottom:1px solid var(--border)}
.disclaimer-item:last-child{border-bottom:none}
.disclaimer-num{width:32px;height:32px;border-radius:50%;background:var(--blue-pale);color:var(--blue);font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.disclaimer-text{font-size:13.5px;color:var(--ink-60);line-height:1.8;padding-top:3px}
.note-strip{background:var(--gold-pale);border-radius:12px;padding:16px 20px;margin-top:24px;display:flex;gap:12px;align-items:flex-start}

/* Ishaan Greens Page CSS */
table#ishaan-green-spec tr td{
  color:var(--ink-60);
  font-size: 13px;
}
/* ================================================================
   FINAL MOBILE NAV VISIBILITY FIX
   Some older page-specific mobile rules hide .nav-menu at max-width
   600px. Keep the existing Bootstrap/mobile navigation and simply
   restore the menu when #mainNav is open. No desktop changes.
   ================================================================ */
@media (max-width: 991.98px) {
  .nav-responsive.show .nav-menu {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
  }

  .nav-responsive.show .nav-item > .nav-link {
    display: flex !important;
    align-items: center;
  }

  .nav-responsive.show .nav-item .dropdown {
    width: 100%;
  }
}






/* =========================================================
   CONSTRUCTION UPDATES - MOBILE RESPONSIVE FIX
   ========================================================= */

/* Project tabs */
.tabs-nav-sticky {
    width: 100%;
    overflow: hidden;
}

.tabs-nav-sticky-inner {
    width: 100%;
    overflow: hidden;
}

.tabs-nav-sticky .cat-pills {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: stretch;

    width: 100%;
    max-width: 100%;

    overflow-x: auto;
    overflow-y: hidden;

    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    scroll-behavior: smooth;

    padding: 0;
}

.tabs-nav-sticky .cat-pills::-webkit-scrollbar {
    display: none;
}

.tabs-nav-sticky .cat-pill {
    flex: 0 0 auto;
    white-space: nowrap;
}

/* =========================================================
   MOBILE PROJECT HEADER
   ========================================================= */

@media (max-width: 767.98px) {

    .update-section-hdr {
        display: grid;
        grid-template-columns: auto 1fr;
        align-items: center;
        gap: 8px 10px;
        margin-bottom: 10px;
    }

    .update-section-hdr > span:first-child {
        font-size: 22px !important;
        line-height: 1;
    }

    .update-project-name {
        font-size: 21px;
        line-height: 1.25;
        margin: 0;
    }

    .update-section-hdr .btn {
        grid-column: 1 / -1;
        justify-self: start;
        width: auto !important;
        padding: 7px 14px !important;
        font-size: 11px !important;
    }

    /* Status badge */
    .status-badge {
        font-size: 11px;
        line-height: 1.4;
        padding: 7px 12px;
        margin-bottom: 16px;
        max-width: 100%;
    }

    /* Construction image spacing */
    .update-img-wrap {
        width: 100%;
        aspect-ratio: 4 / 3;
    }

    .update-img-wrap img {
        padding: 3px;
        border-radius: 7px;
    }

    /* Section spacing */
    .update-section {
        margin-bottom: 22px;
        padding-bottom: 28px;
    }

    /* CTA buttons */
    .btn-wa,
    .btn-enquire {
        max-width: 100%;
        white-space: nowrap;
    }

    /* Footer */
    .footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .footer-bottom-links {
        flex-wrap: wrap;
        gap: 10px 16px;
    }

}


/* =========================================================
   SMALL PHONES - 375px AND BELOW
   ========================================================= */

@media (max-width: 375px) {

    :root {
        --pad-x: 14px;
    }

    .page-hero {
        padding: 40px 0 35px;
    }

    .page-hero-title {
        font-size: 30px;
        line-height: 1.12;
    }

    .page-hero-sub {
        font-size: 12.5px;
        line-height: 1.7;
    }

    .tabs-nav-sticky .cat-pill {
        font-size: 11px;
        padding: 10px 14px;
        min-height: 44px;
    }

    .update-project-name {
        font-size: 19px;
    }

    .status-badge {
        font-size: 10.5px;
    }

    .update-section {
        padding-bottom: 24px;
    }

}