  :root{
    /* ===== GODREJ CROWN RESIDENCES — DARK LUXURY (GOLD on CHARCOAL) ===== */
    /* Refined warm gold (#D4AF37) over a deep charcoal base */
    --gold:#d4af37; --gold-light:#e8c765; --gold-deep:#b0892b;
    --brand-gold:#d4af37; --brand-gold-light:#e8c765; --brand-gold-deep:#b0892b; --brand-gold-soft:#2a2616;
    /* --ink is the PRIMARY (light) text colour on the dark base */
    --ink:#f3eee2; --ink-soft:#dad4c6; --charcoal:#0b0d11;
    /* page + surface backgrounds (all dark) */
    --cream:#0f1115; --paper:#15181f; --sand:#0c0e13;
    --muted:#9b958a; --line:rgba(212,175,55,.22);
    /* dark text used on gold elements + dark surface for chips/buttons */
    --ink-on-gold:#15140d; --surface-dark:#14171d; --surface-2:#1b1f27;
    --shadow-lg:0 30px 80px -30px rgba(0,0,0,.7);
    --shadow-md:0 14px 40px -18px rgba(0,0,0,.55);
    --radius:14px; --maxw:1240px; --header-h:78px;
    /* Full-width hero image — real aerial of Godrej Golf Links township */
    --hero-img:url('../../images/godrej-township-aerial.jpg');
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth;overflow-x:hidden}
  body{font-family:'Montserrat',sans-serif;color:var(--ink);background:var(--cream);
    line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
  h1,h2,h3,h4{line-height:1.12;font-weight:800;letter-spacing:-.02em}
  img{max-width:100%;display:block}
  a{text-decoration:none;color:inherit}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
  .serif{font-family:'Montserrat',sans-serif}

  /* buttons */
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;
    font-family:'Montserrat',sans-serif;font-weight:700;font-size:14px;letter-spacing:.04em;
    text-transform:uppercase;cursor:pointer;border:none;padding:15px 28px;border-radius:50px;
    transition:.3s cubic-bezier(.2,.8,.2,1);white-space:nowrap}
  .btn-gold{background:linear-gradient(135deg,var(--gold-light),var(--gold) 55%,var(--gold-deep));
    color:var(--ink);box-shadow:0 12px 30px -10px rgba(191,155,67,.7)}
  .btn-gold:hover{transform:translateY(-3px);box-shadow:0 20px 40px -12px rgba(191,155,67,.85)}
  .btn-ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55)}
  .btn-ghost:hover{background:rgba(255,255,255,.12);border-color:#fff}
  .btn-dark{background:var(--ink);color:#fff}
  .btn-dark:hover{background:var(--charcoal);transform:translateY(-3px)}
  .btn-outline-dark{background:transparent;border:1.5px solid var(--ink);color:var(--ink)}
  .btn-outline-dark:hover{background:var(--ink);color:#fff;transform:translateY(-3px)}
  .btn-sm{padding:11px 20px;font-size:12.5px}
  .btn-block{width:100%}

  /* header */
  header{position:fixed;top:0;left:0;right:0;z-index:200;height:var(--header-h);display:flex;align-items:center;
    transition:background .35s,box-shadow .35s,backdrop-filter .35s}
  header.scrolled{background:rgba(15,20,25,.92);backdrop-filter:blur(10px);box-shadow:0 8px 30px -12px rgba(0,0,0,.5)}
  .header-inner{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}
  .logo{display:flex;align-items:center;gap:12px}
  .logo img{height:48px;width:auto}
  .logo-fallback{display:flex;flex-direction:column;line-height:1.05;color:#fff}
  .logo-fallback .brandline{font-weight:800;font-size:11px;letter-spacing:.34em;color:var(--gold-light);text-transform:uppercase}
  .logo-fallback .mark{font-weight:900;font-size:18px;letter-spacing:.06em;color:var(--brand-gold-light);margin-top:3px;text-transform:uppercase}
  .logo-fallback .mark span{color:var(--brand-gold-light)}
  .logo-fallback .sub{font-size:9px;letter-spacing:.42em;color:var(--brand-gold-light);text-transform:uppercase;margin-top:3px}
  .nav-links{display:flex;gap:26px;margin-left:auto;margin-right:8px}
  .nav-links a{color:rgba(255,255,255,.82);font-size:13px;font-weight:600;letter-spacing:.03em;transition:.25s}
  .nav-links a:hover{color:var(--gold-light)}
  .header-actions{display:flex;align-items:center;gap:14px}
  .call-now{display:flex;align-items:center;gap:9px;color:#fff;font-weight:700;font-size:14px}
  .call-now .ico{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;
    background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:var(--ink)}
  .call-now small{display:block;font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-light)}

  /* ===== HERO — TWO-COLUMN LAYOUT REFACTOR ===== */
.hero {
  position: relative;
  min-height: 92vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: calc(var(--header-h) + 56px) 0 64px;
  overflow: hidden;
  background: #0f1419;
}
.hero-bg {
  position: absolute;
  inset: -2%;
  z-index: 0;
  opacity: .8;
  background: var(--hero-img) center/cover no-repeat, linear-gradient(135deg, #1a2530, #0f1419 70%);
  background-size: cover;
  animation: kenburns 18s ease-out forwards;
  will-change: transform;
}
.hero-veil {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(15,20,25,.30) 0%, rgba(15,20,25,.52) 55%, rgba(15,20,25,.86) 100%);
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: radial-gradient(110% 80% at 20% 10%, rgba(15,20,25,.45), transparent 55%);
}
.hero-inner {
  position: relative;
  z-index: 3;
  width: 100%;
  max-width: var(--maxw, 1200px);
  margin: 0 auto;
  padding: 0 28px;
}

/* Two Column Grid Setup */
.hero-grid-2col {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 48px;
  align-items: center;
}

@media (max-width: 991px) {
  .hero-grid-2col {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

/* COLUMN 1: Details Formatting */
.hero-copy-col {
  display: flex;
  flex-direction: column;
}
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--gold-light);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .34em;
  text-transform: uppercase;
  margin-bottom: 16px;
  opacity: 0;
  animation: rise .8s .1s forwards;
}
.hero h1 {
  color: #fff;
  font-size: clamp(2.1rem, 4vw, 3.4rem);
  margin-bottom: 12px;
  line-height: 1.2;
  opacity: 0;
  animation: rise .8s .22s forwards;
}
.hero h1 .accent {
  color: var(--gold-light);
}
.hero-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
  opacity: 0;
  animation: rise .8s .48s forwards;
}
.hero-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.22);
  color: #fff;
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: .02em;
  padding: 8px 15px;
  border-radius: 50px;
  backdrop-filter: blur(6px);
}
.hero-pill svg {
  width: 15px;
  height: 15px;
  color: var(--gold-light);
}

.hero-pill-hot {
  position: relative;
  gap: 9px;
  padding: 8px 8px 8px 15px;
  background: linear-gradient(135deg, var(--gold-light), var(--gold) 55%, var(--gold-deep));
  border: 1px solid rgba(255,236,190,.7);
  color: var(--ink);
  font-weight: 700;
  box-shadow: 0 10px 28px -8px rgba(191,155,67,.65), inset 0 1px 0 rgba(255,255,255,.4);
  overflow: hidden;
  animation: hot-pulse 2.6s ease-in-out infinite;
}
.hero-pill-hot svg { color: var(--ink); }
.hero-pill-hot .hp-label { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; opacity: .85; }
.hero-pill-hot .hp-price { display: inline-flex; align-items: baseline; gap: 1px; background: var(--ink); color: var(--gold-light); font-weight: 800; font-size: 14px; letter-spacing: .01em; padding: 5px 11px; border-radius: 50px; line-height: 1; }
.hero-pill-hot .hp-unit { font-size: 10px; font-weight: 600; color: rgba(255,255,255,.7); margin-left: 1px; }
.hero-pill-hot::after { content: ""; position: absolute; top: 0; left: -130%; width: 55%; height: 100%; background: linear-gradient(115deg, transparent, rgba(255,255,255,.6), transparent); transform: skewX(-18deg); animation: hot-shine 3.4s ease-in-out infinite; pointer-events: none; }

@keyframes hot-pulse {
  0%, 100% { box-shadow: 0 10px 28px -8px rgba(191,155,67,.55), inset 0 1px 0 rgba(255,255,255,.4), 0 0 0 0 rgba(191,155,67,.5); }
  50% { box-shadow: 0 10px 28px -8px rgba(191,155,67,.75), inset 0 1px 0 rgba(255,255,255,.4), 0 0 0 8px rgba(191,155,67,0); }
}
@keyframes hot-shine { 0% { left: -130% } 55%, 100% { left: 130% } }

.price-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 32px;
  max-width: 520px;
  opacity: 0;
  animation: rise .8s .6s forwards;
}
.pc {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(191,155,67,.16), rgba(191,155,67,.05));
  border: 1px solid rgba(191,155,67,.4);
  backdrop-filter: blur(6px);
  box-shadow: 0 14px 38px -22px rgba(0,0,0,.5);
}
.pc-ic { width: 46px; height: 46px; border-radius: 12px; flex-shrink: 0; display: grid; place-items: center; background: rgba(191,155,67,.9); border: 1px solid rgba(217,184,96,.6); }
.pc-ic svg { width: 24px; height: 24px; color: var(--ink); }
.pc-info { min-width: 0; }
.pc-tag { font-size: 10.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--gold-light); }
.pc-amt { font-size: 1.45rem; font-weight: 800; letter-spacing: -.01em; line-height: 1.1; margin-top: 3px; color: #fff; white-space: nowrap; }
.pc-amt small { font-size: .72rem; font-weight: 600; color: rgba(255,255,255,.7); text-transform: uppercase; letter-spacing: .04em; }
.pc-amt .star { color: var(--gold-light); }

/* COLUMN 2: Form Vertical Refactor */
.hero-form-col {
  display: flex;
  justify-content: center;
}
.search-bar {
  position: relative;
  background: rgba(255, 255, 255, 0.97);
  border-radius: 20px;
  padding: 28px;
  box-shadow: var(--shadow-lg, 0 20px 40px rgba(0,0,0,0.3));
  border: 1px solid rgba(255, 255, 255, 0.6);
  opacity: 0;
  animation: rise .9s .5s forwards;
  width: 100%;
  max-width: 440px;
}
.search-bar .sb-head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 20px;
}
.search-bar .sb-title { font-size: 1.4rem; font-weight: 800; color: var(--ink); letter-spacing: -.01em; }
.search-bar .sb-title span { color: var(--gold-deep); }
.search-bar .sb-tag { display: inline-flex; align-items: center; gap: 7px; font-size: 11px; font-weight: 700; letter-spacing: .04em; color: var(--gold-deep); background: rgba(191,155,67,.14); border: 1px solid var(--line, #ece5d8); padding: 5px 12px; border-radius: 50px; }
.search-bar .sb-tag svg { width: 13px; height: 13px; }

/* Refactored into a vertical form stack */
.sb-grid {
  display: flex;
  flex-direction: column;
  gap: 12px;
  background: transparent;
  border: none;
  border-radius: 0;
  overflow: visible;
}
.sb-cell {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 10px 14px;
  border: 1.5px solid #ece5d8;
  border-radius: 10px;
  background: var(--cream, #fbfaf7);
  transition: all 0.2s ease;
}
.sb-cell label { font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--muted, #666); }
.sb-cell input, .sb-cell select { border: none; background: transparent; font-family: 'Montserrat', sans-serif; font-size: 14px; font-weight: 600; color: var(--ink); padding: 4px 0; width: 100%; outline: none; }
.sb-cell input::placeholder { color: #9aa3ab; font-weight: 500; }
.sb-cell.focused { background: #fff; border-color: var(--gold, #bf9b43); box-shadow: 0 0 0 3px rgba(191,155,67,.15); }
.sb-cell.invalid { background: #fdf3f2; border-color: rgba(192,57,43,.6); }

.sb-submit { margin-top: 6px; }
.sb-submit button { width: 100%; height: 50px; border: none; border-radius: 10px; cursor: pointer; padding: 0 24px; background: linear-gradient(135deg, var(--gold-light), var(--gold) 55%, var(--gold-deep)); color: var(--ink); font-family: 'Montserrat', sans-serif; font-weight: 800; font-size: 14px; letter-spacing: .05em; text-transform: uppercase; display: inline-flex; align-items: center; justify-content: center; gap: 9px; transition: .3s; }
.sb-submit button:hover { filter: brightness(1.06); transform: translateY(-1px); }
.sb-submit button svg { width: 18px; height: 18px; }

.sb-foot { display: flex; flex-direction: column; gap: 12px; margin-top: 16px; }
.sb-consent { display: flex; align-items: flex-start; gap: 8px; font-size: 11px; color: var(--muted, #666); line-height: 1.4; cursor: pointer; }
.sb-consent input { accent-color: var(--gold-deep); width: 15px; height: 15px; margin-top: 1px; flex-shrink: 0; }
.sb-secure { font-size: 11px; color: var(--muted, #666); display: inline-flex; align-items: center; gap: 6px; }
.sb-secure b { color: var(--gold-deep); font-weight: 700; }

/* Fallbacks & Animations if missing */
@keyframes rise {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

  /* ===== SCHEME + COUNTDOWN BAND (one row, below hero, theme-styled) ===== */
  .scheme-band{position:relative;background:linear-gradient(115deg,var(--ink) 0%,var(--ink-soft) 55%,var(--charcoal) 100%);
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}
  .scheme-band::before{content:"";position:absolute;top:-60%;right:-10%;width:520px;height:520px;
    background:radial-gradient(circle,rgba(191,155,67,.16),transparent 65%);pointer-events:none}
  .scheme-band-inner{max-width:var(--maxw);margin:0 auto;padding:30px 28px;
    display:grid;grid-template-columns:1.05fr 1fr;gap:34px;align-items:center}

  /* SPECIAL SCHEME — themed (gold/charcoal, no raw black/purple) */
  .scheme-badge{position:relative;background:linear-gradient(150deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
    border:1px solid var(--line);border-radius:18px;padding:22px 24px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06),var(--shadow-md)}
  .scheme-badge .ss-row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:4px}
  .scheme-badge .ss{font-family:'Montserrat',sans-serif;font-weight:700;font-size:clamp(1.5rem,2.6vw,2rem);
    letter-spacing:.02em;line-height:1;
    background:linear-gradient(120deg,var(--gold-light),var(--gold) 55%,#fff);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
  .scheme-badge .lp{color:rgba(255,255,255,.7);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}
  .scheme-badge .till{color:#fff;font-size:13px;font-weight:700;letter-spacing:.04em;margin-bottom:16px;display:block}
  .scheme-badge .till b{color:var(--gold-light)}
  .scheme-prices{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:0;
    background:linear-gradient(135deg,rgba(191,155,67,.16),rgba(191,155,67,.05));
    border:1px solid var(--line);border-radius:12px;padding:16px 12px}
  .scheme-prices .divider{width:1px;height:54px;background:var(--line);margin:0 18px}
  .sp{text-align:center;padding:0 4px}
  .sp .val{font-weight:800;font-size:clamp(1.7rem,3.4vw,2.4rem);line-height:1;letter-spacing:-.02em}
  .sp.new .val{background:linear-gradient(120deg,var(--gold-light),var(--gold-deep));
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
  .sp.old .val{color:rgba(255,255,255,.55);position:relative;display:inline-block}
  .sp.old .val::after{content:"";position:absolute;left:-4%;top:50%;width:108%;height:2.5px;background:#e06a5a;
    transform:rotate(-12deg);border-radius:2px}
  .sp .unit{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
    color:rgba(255,255,255,.65);margin-top:8px}
  .sp.new .unit{color:var(--gold-light)}
  .sp .pill{display:inline-block;margin-top:8px;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
    padding:3px 9px;border-radius:50px}
  .sp.new .pill{background:rgba(191,155,67,.9);color:var(--ink)}
  .sp.old .pill{background:rgba(255,255,255,.08);color:rgba(255,255,255,.5)}

  /* COUNTDOWN — same row, themed */
  .countdown-col{display:flex;flex-direction:column;gap:14px}
  .countdown-col .cd-label{color:var(--gold-light);font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700}
  .countdown-col .cd-label b{display:block;color:#fff;font-size:14px;letter-spacing:.04em;margin-top:3px;text-transform:none}
  .cd-flex{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
  .countdown{display:flex;gap:10px}
  .cd-box{background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:10px;padding:10px 14px;text-align:center;min-width:62px}
  .cd-box .num{color:#fff;font-size:1.7rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}
  .cd-box .unit{color:var(--gold-light);font-size:9px;letter-spacing:.14em;text-transform:uppercase;margin-top:5px}

  /* lead card */
  .lead-card{position:relative;background:var(--paper);border-radius:20px;padding:34px 30px 30px;box-shadow:var(--shadow-lg);
    opacity:0;animation:rise .9s .5s forwards;border:1px solid rgba(191,155,67,.25)}
  .lead-card::before{content:"";position:absolute;inset:0;border-radius:20px;padding:1px;
    background:linear-gradient(135deg,var(--gold-light),transparent 40%);
    -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
  .lead-card .ribbon{position:absolute;top:-14px;left:50%;transform:translateX(-50%);
    background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:var(--ink);font-size:11px;font-weight:800;
    letter-spacing:.14em;text-transform:uppercase;padding:7px 20px;border-radius:50px;white-space:nowrap;box-shadow:var(--shadow-md)}
  .lead-card h3{font-size:1.5rem;text-align:center;margin:8px 0 4px;color:var(--ink)}
  .lead-card .sub{text-align:center;color:var(--muted);font-size:13px;margin-bottom:22px}
  .field{margin-bottom:14px}
  .field label{display:block;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
  .field input,.field select{width:100%;padding:13px 15px;border:1.5px solid #e5e0d6;border-radius:10px;
    font-family:'Montserrat',sans-serif;font-size:14.5px;color:var(--ink);background:var(--cream);transition:.25s}
  .field input:focus,.field select:focus{outline:none;border-color:var(--gold);background:#fff;box-shadow:0 0 0 4px rgba(191,155,67,.15)}
  .field .err{color:#c0392b;font-size:11px;margin-top:4px;display:none}
  .field.invalid input,.field.invalid select{border-color:#c0392b;background:#fdf3f2}
  .field.invalid .err{display:block}
  .consent{display:flex;gap:8px;align-items:flex-start;font-size:11px;color:var(--muted);margin:6px 0 16px;line-height:1.5}
  .consent input{margin-top:3px;accent-color:var(--gold-deep)}
  .form-note{text-align:center;font-size:11px;color:var(--muted);margin-top:12px}
  .form-note span{color:var(--gold-deep);font-weight:600}

  /* trust bar */
  .trust{background:var(--ink);color:#fff;padding:26px 0}
  .trust-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px}
  .trust-item{display:flex;flex-direction:column;gap:2px;flex:1;min-width:140px}
  .trust-item .n{font-size:1.8rem;font-weight:800;color:var(--gold-light)}
  .trust-item .t{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.7)}

  /* sections (light) */
  section.block{padding:90px 0}
  .sec-head{text-align:center;max-width:720px;margin:0 auto 56px}
  .sec-head .kick{color:var(--gold-deep);font-size:12px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;margin-bottom:14px;display:block}
  .sec-head h2{font-size:clamp(1.9rem,3.4vw,2.7rem);color:var(--ink)}
  .sec-head h2 .serif{font-weight:800;color:var(--gold-deep)}
  .sec-head .lead-txt{color:var(--muted);margin-top:14px;font-size:1.05rem}

  /* AD BANNER (image-only promo strip) */
  .ad-banner{display:block;background:var(--paper);padding:0;line-height:0}
  .ad-banner img{width:100%;height:auto;display:block}
  .ad-banner .ad-desktop{display:block}
  .ad-banner .ad-mobile{display:none}

  /* SECTION IMAGE (full-width image strip above a section) */
  .section-img{display:block;line-height:0;background:var(--paper)}
  .section-img img{width:100%;height:auto;display:block}

  /* ABOUT (Mobile-First & Fully Responsive) */
.about {
  background: var(--paper);
  padding: 40px 0; /* Added standard vertical section spacing */
}

/* Base grid layout for mobile: single column */
.about-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px; /* Tighter gaps for compact mobile screens */
  align-items: center;
}

.about-copy p {
  color: var(--muted);
  font-size: 1rem;
  margin-bottom: 16px;
}

.about-copy .lead-line {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 1.25rem; /* Slightly smaller base size for mobile */
  color: var(--ink);
  margin-bottom: 20px;
  line-height: 1.35;
}

/* Stats grid: stays 2x2 but uses flexible sizing */
.about-stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 24px;
}

.about-stats .s {
  background: var(--cream);
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 14px 16px; /* Adjusted padding for narrower screens */
}

.about-stats .s .n {
  font-size: 1.35rem; /* Fluid sizing to prevent text overflow */
  font-weight: 800;
  color: var(--gold-deep);
  word-wrap: break-word;
}

/* Handles long string values safely */
.about-stats .s .n.n-sm {
  font-size: 1.1rem;
  white-space: normal; /* Changed from nowrap to prevent screen clipping */
}

.about-stats .s .t {
  font-size: 11px;
  color: var(--muted);
  letter-spacing: .05em;
  text-transform: uppercase;
  margin-top: 4px;
}

/* Visual Block: Scaled down height for mobile */
.about-visual {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  min-height: 320px; /* Reduced from 550px for small screens */
  box-shadow: var(--shadow-lg);
  background: linear-gradient(160deg, rgba(42,55,68,.25), rgba(15,20,25,.35)), url('../../images/sca-nightview.jpg') center/cover;
}

.about-visual .badge-float {
  position: absolute;
  left: 16px;
  bottom: 16px;
  right: 16px; /* Spans full width on tight screens with padding */
  background: rgba(255, 255, 255, 0.95);
  border-radius: 14px;
  padding: 14px 16px;
  backdrop-filter: blur(4px);
  box-shadow: var(--shadow-md);
}

.about-visual .badge-float .n {
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--ink);
}

.about-visual .badge-float .t {
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--muted);
}


/* --- DESKTOP ENHANCEMENTS (770px and up) --- */
@media (min-width: 770px) {
  .about {
    padding: 60px 0;
  }
  
  .about-grid {
    grid-template-columns: 1fr 1fr; /* Side-by-side layout restored */
    gap: 56px;
  }
  
  .about-copy .lead-line {
    font-size: 1.35rem;
  }
  
  .about-stats {
    gap: 16px;
  }
  
  .about-stats .s {
    padding: 18px 20px;
  }
  
  .about-stats .s .n {
    font-size: 1.6rem;
  }
  
  .about-stats .s .n.n-sm {
    font-size: 1.25rem;
    white-space: nowrap;
  }
  
  .about-stats .s .t {
    font-size: 12px;
  }
  
  .about-visual {
    min-height: 550px; /* Full desktop height restored */
  }
  
  .about-visual .badge-float {
    left: 22px;
    bottom: 22px;
    right: auto; /* Return to absolute floating badge */
    padding: 16px 20px;
  }
  
  .about-visual .badge-float .n {
    font-size: 1.4rem;
  }
}

  /* HIGHLIGHTS */
  .highlights{background:linear-gradient(180deg,var(--cream),var(--sand))}
  .hl-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
  .hl{background:#fff;border:1px solid #ece6da;border-radius:16px;padding:28px 26px;transition:.35s;position:relative;overflow:hidden}
  .hl:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:var(--line)}
  .hl .num{font-family:'Montserrat',sans-serif;font-weight:800;font-size:2.2rem;color:rgba(191,155,67,.55);line-height:1;letter-spacing:-.02em}
  .hl h4{font-size:1.1rem;margin:8px 0 6px;color:var(--ink)}
  .hl p{font-size:13.5px;color:var(--muted);line-height:1.6}
  /* spec-style highlight cards */
  .hl-spec{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:30px 26px}
  .hl-spec .hl-ic{width:52px;height:52px;border-radius:13px;display:grid;place-items:center;margin-bottom:8px;
    background:linear-gradient(135deg,rgba(191,155,67,.18),rgba(191,155,67,.06));border:1px solid var(--line);color:var(--gold-deep)}
  .hl-spec .hl-ic svg{width:26px;height:26px}
  .hl-spec .hl-val{font-family:'Montserrat',sans-serif;font-weight:800;font-size:1.5rem;color:var(--ink);letter-spacing:-.01em;line-height:1.1}
  .hl-spec .hl-val span{color:var(--gold-deep);font-weight:700}
  .hl-spec .hl-lbl{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}

  /* AMENITIES (image cards) */
  .amenities{background:var(--paper)}
  .amen-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
  .amen{position:relative;border-radius:16px;overflow:hidden;min-height:240px;box-shadow:var(--shadow-md);
    display:flex;align-items:flex-end;transition:.4s;cursor:default}
  .amen:hover{transform:translateY(-6px) scale(1.012);box-shadow:var(--shadow-lg)}
  .amen .photo{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .6s ease}
  .amen:hover .photo{transform:scale(1.08)}
  .amen .scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,20,25,.05) 30%,rgba(15,20,25,.85))}
  .amen .meta{position:relative;z-index:2;padding:22px 20px;color:#fff;width:100%}
  .amen .ic{width:44px;height:44px;border-radius:11px;display:grid;place-items:center;margin-bottom:12px;
    background:rgba(191,155,67,.22);border:1px solid rgba(191,155,67,.5);color:var(--gold-light);backdrop-filter:blur(4px)}
  .amen .ic svg{width:24px;height:24px}
  .amen h4{font-size:1.08rem;margin-bottom:4px}
  .amen p{font-size:12.5px;color:rgba(255,255,255,.82);line-height:1.45}
  /* amenity photos — real images (loads in browser). Swap any URL for a local images/*.jpg to override. */
  .ph-pool{background:url('https://images.unsplash.com/photo-1572331165267-854da2b10ccc?auto=format&amp;fit=crop&amp;w=800&amp;q=80') center/cover no-repeat,linear-gradient(160deg,#bf9b43,#3a362c)}
  .ph-club{background:url('https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?auto=format&amp;fit=crop&amp;w=800&amp;q=80') center/cover no-repeat,linear-gradient(160deg,#bf9b43,#3a362c)}
  .ph-gym{background:url('https://images.unsplash.com/photo-1534438327276-14e5300c3a48?auto=format&amp;fit=crop&amp;w=800&amp;q=80') center/cover no-repeat,linear-gradient(160deg,#bf9b43,#3a362c)}
  .ph-sec{background:url('https://images.unsplash.com/photo-1558002038-1055907df827?auto=format&amp;fit=crop&amp;w=800&amp;q=80') center/cover no-repeat,linear-gradient(160deg,#bf9b43,#3a362c)}
  .ph-lounge{background:url('https://images.unsplash.com/photo-1586023492125-27b2c045efd7?auto=format&amp;fit=crop&amp;w=800&amp;q=80') center/cover no-repeat,linear-gradient(160deg,#bf9b43,#3a362c)}
  .ph-sports{background:url('https://images.unsplash.com/photo-1554068865-24cecd4e34b8?auto=format&amp;fit=crop&amp;w=800&amp;q=80') center/cover no-repeat,linear-gradient(160deg,#bf9b43,#3a362c)}
  
  /* Updated amenity photos with active, curated Unsplash imagery */
  .ph-garden{background:url('https://images.unsplash.com/photo-1585320806297-9794b3e4eeae?auto=format&amp;fit=crop&amp;w=800&amp;q=80') center/cover no-repeat,linear-gradient(160deg,#bf9b43,#3a362c)}
  .ph-kids{background:url('https://images.unsplash.com/photo-1596464716127-f2a82984de30?auto=format&amp;fit=crop&amp;w=800&amp;q=80') center/cover no-repeat,linear-gradient(160deg,#bf9b43,#3a362c)}

  /* RESIDENCES (config cards, no floor-plan sketch) */
  .residences{background:linear-gradient(180deg,var(--sand),var(--cream))}
  .res-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;max-width:980px;margin:0 auto}
  .res-card{position:relative;background:#fff;border:1px solid #e7e0d3;border-radius:20px;overflow:hidden;
    transition:.35s;box-shadow:var(--shadow-md)}
  .res-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
  .res-photo{position:relative;height:200px;background-size:cover;background-position:center}
  .res-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.35))}
  .res-photo .tag{position:absolute;top:16px;left:18px;z-index:2;margin:0}
  .res-card .res-top{position:relative;padding:26px 28px 0}
  .res-card .tag{display:inline-block;background:var(--ink);color:#fff;font-size:11px;font-weight:700;
    letter-spacing:.14em;text-transform:uppercase;padding:6px 14px;border-radius:50px;margin-bottom:14px}
  .res-card .res-body{padding:0 28px 26px}
  .res-card .type{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-deep);font-weight:700}
  .res-card h3{font-size:1.9rem;margin:8px 0 2px;color:var(--ink)}
  .res-card .area{color:var(--muted);font-size:14px}
  .res-card ul{list-style:none;margin:16px 0 18px;padding:0}
  .res-card li{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:14px;color:var(--muted);border-bottom:1px solid #f0ebe0}
  .res-card li svg{width:16px;height:16px;color:var(--gold-deep);flex-shrink:0}
  .res-card .price{font-size:1.8rem;font-weight:800;color:var(--ink);margin:0 0 18px}
  .res-card .price small{font-size:.95rem;color:var(--gold-deep);font-weight:600}
  .res-card .actions{display:flex;gap:10px;flex-wrap:wrap}

  /* FLOOR PLANS (blurred image + center button, themed) */
  .floorplans{background:var(--paper)}
  .fp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
  .fp-card{position:relative;border:1px solid #e7e0d3;border-radius:18px;overflow:hidden;
    background:var(--cream);box-shadow:var(--shadow-md);transition:.35s;min-height:340px}
  .fp-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
  .fp-img{position:absolute;inset:0;background-size:cover;background-position:center;
    filter:blur(5px) saturate(1.02);transform:scale(1.06)}
  .fp-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,253,248,.42),rgba(255,253,248,.6))}
  .fp-tag{position:absolute;top:-1px;left:50%;transform:translateX(-50%);z-index:3;
    background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:var(--ink);
    font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
    padding:8px 22px;border-radius:0 0 12px 12px;box-shadow:var(--shadow-md)}
  .fp-center{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px}
  .fp-lock{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;
    background:rgba(15,20,25,.06);border:1px solid var(--line);color:var(--gold-deep)}
  .fp-lock svg{width:22px;height:22px}
  .fp-center .fp-hint{font-size:12px;color:var(--muted);letter-spacing:.04em;text-align:center}
  .fp-foot{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:16px 18px;text-align:center;
    background:linear-gradient(180deg,transparent,rgba(248,245,239,.9) 40%)}
  .fp-foot .fp-name{font-size:15px;font-weight:700;color:var(--ink)}
  .fp-foot .fp-sub{font-size:12px;color:var(--muted);margin-top:2px}

  /* LOCATION */
  .location{background:var(--paper)}
  .loc-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
  .loc-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .loc-item{display:flex;gap:12px;align-items:flex-start;background:var(--cream);border:1px solid #ece6da;border-radius:12px;padding:14px 16px}
  .loc-item .pin{width:34px;height:34px;border-radius:9px;flex-shrink:0;display:grid;place-items:center;
    background:linear-gradient(135deg,rgba(191,155,67,.2),rgba(191,155,67,.07));color:var(--gold-deep)}
  .loc-item .pin svg{width:18px;height:18px}
  .loc-item .txt strong{display:block;font-size:14px;color:var(--ink)}
  .loc-item .txt span{font-size:12px;color:var(--muted)}
  .loc-map{position:relative;border-radius:20px;overflow:hidden;min-height:380px;box-shadow:var(--shadow-lg);
    background:url('../../images/location-map.jpg') center/cover no-repeat,linear-gradient(160deg,var(--charcoal),#1a1510)}
  .loc-map .map-inner{position:absolute;inset:0;display:grid;place-items:center;text-align:center;color:#fff;padding:30px}
  .loc-map .map-inner .pinbig{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin:0 auto 14px;
    background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:var(--ink)}
  .loc-map .grid-lines{position:absolute;inset:0;opacity:.12;
    background-image:linear-gradient(rgba(255,255,255,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.5) 1px,transparent 1px);
    background-size:38px 38px}

  /* DEVELOPER */
  .developer{background:linear-gradient(180deg,var(--cream),var(--sand))}
  .dev-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:center}
  .dev-img{border-radius:20px;overflow:hidden;box-shadow:var(--shadow-lg);line-height:0}
  .dev-img img{width:100%;height:100%;min-height:340px;object-fit:cover;display:block}
  .dev-logo{background:var(--ink);border-radius:20px;padding:46px 30px;text-align:center;box-shadow:var(--shadow-lg)}
  .dev-logo .mark{font-family:'Montserrat',sans-serif;font-weight:700;font-size:2.4rem;color:#fff;letter-spacing:.04em}
  .dev-logo .mark span{color:var(--gold-light)}
  .dev-logo .est{color:var(--gold-light);font-size:11px;letter-spacing:.3em;text-transform:uppercase;margin-top:8px}
  .dev-logo .iso{margin-top:18px;display:inline-block;border:1px solid var(--line);border-radius:50px;
    color:rgba(255,255,255,.8);font-size:11px;letter-spacing:.1em;padding:7px 16px}
  .dev-copy p{color:var(--muted);font-size:1.02rem;margin-bottom:16px}
  .dev-copy h3{font-size:1.6rem;color:var(--ink);margin-bottom:14px}
  .dev-copy .pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
  .dev-copy .pillar{text-align:center;background:#fff;border:1px solid #ece6da;border-radius:12px;padding:16px 10px}
  .dev-copy .pillar .n{font-size:1.4rem;font-weight:800;color:var(--gold-deep)}
  .dev-copy .pillar .t{font-size:11px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-top:4px}

  /* CTA strip */
  .cta-strip {
    background: linear-gradient(105deg, rgba(11,13,17,.92), rgba(11,13,17,.55)),
                url('../../images/godrej-crown-sunset.jpg') center/cover fixed,
                linear-gradient(135deg, #1a2530, #0f1419);
    color: #fff;
    padding: 80px 0;
  }
  
  /* 2-Column Grid Setup */
  .cta-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
  }

  /* Column 1: Left aligned typography */
  .cta-content {
    text-align: left;
  }
  .cta-strip h2 {
    font-size: clamp(1.9rem, 3.5vw, 2.8rem);
    margin-bottom: 14px;
    line-height: 1.2;
  }
  .cta-strip p {
    color: rgba(255,255,255,.78);
    margin: 0 0 24px 0;
    font-size: 1.05rem;
    line-height: 1.5;
  }
  .cta-strip .actions {
    display: flex;
    justify-content: flex-start;
  }

  /* Column 2: Form Container */
  .cta-form {
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
  }
  .cta-form .cta-field {
    width: 100%;
  }
  .cta-form input {
    width: 100%;
    padding: 15px 18px;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 50px;
    background: rgba(255,255,255,.1);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    backdrop-filter: blur(6px);
    transition: .25s;
    box-sizing: border-box;
  }
  .cta-form input::placeholder {
    color: rgba(255,255,255,.6);
  }
  .cta-form input:focus {
    outline: none;
    border-color: var(--gold-light);
    background: rgba(255,255,255,.16);
    box-shadow: 0 0 0 4px rgba(191,155,67,.18);
  }
  .cta-form .cta-field.invalid input {
    border-color: #e06a5a;
    background: rgba(224,106,90,.12);
  }
  .cta-form .btn {
    width: 100%;
    padding: 15px 18px;
    border-radius: 50px;
  }

  /* Responsive Mobile Breakpoint */
  @media (max-width: 768px) {
    .cta-grid {
      grid-template-columns: 1fr;
      gap: 35px;
      text-align: center;
    }
    .cta-content {
      text-align: center;
    }
    .cta-strip .actions {
      justify-content: center;
    }
    .cta-form {
      max-width: 100%;
    }
  }

  /* footer */
footer {
  background: #0a0e12;
  color: rgba(255,255,255,.6);
  padding: 54px 0 30px;
}

/* CHANGED: Switched to a single column centered layout */
.foot-grid {
  display: grid;
  grid-template-columns: 1fr; 
  text-align: center;
  max-width: 800px; /* Limits width so long text remains readable */
  margin: 0 auto 36px; /* Centers the container itself */
  gap: 20px;
}

.foot-grid h5 {
  color: #fff;
  font-size: 13px;
  letter-spacing: .16em;
  text-transform: uppercase;
  margin-bottom: 16px;
}

/* CHANGED: Added display inline-block to links so they stay side-by-side */
.foot-grid p {
  font-size: 14px;
  line-height: 1.9;
  color: rgba(255,255,255,.6);
  margin-bottom: 15px;
}

.foot-grid a {
  font-size: 14px;
  line-height: 1.9;
  display: inline-block; 
  color: rgba(255,255,255,.6);
}

.foot-grid a:hover {
  color: var(--gold-light);
}

.foot-logo img {
  height: 48px;
  width: auto;
}

.foot-logo .mark {
  font-weight: 900;
  font-size: 20px;
  letter-spacing: .02em;
  color: #fff;
  font-family: 'Montserrat', sans-serif;
}

.foot-logo .mark span {
  color: var(--gold-light);
}

.foot-logo .sub {
  font-size: 9px;
  letter-spacing: .42em;
  color: var(--gold-light);
  text-transform: uppercase;
  margin-top: 3px;
  display: block;
}

/* CHANGED: Added justify-content: center to keep the bottom strip aligned */
.foot-bottom {
  border-top: 1px solid rgba(255,255,255,.1);
  padding-top: 22px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center; 
  text-align: center;
  gap: 14px;
  font-size: 12px;
}

.rera {
  font-size: 11px;
  color: rgba(255,255,255,.4);
  margin-top: 8px;
  line-height: 1.6;
  width: 100%; /* Ensures it breaks to a new line nicely if needed */
}

  /* modal */
  .modal-overlay{position:fixed;inset:0;z-index:500;background:rgba(15,20,25,.78);backdrop-filter:blur(6px);
    display:none;align-items:center;justify-content:center;padding:20px}
  .modal-overlay.open{display:flex;animation:fade .3s ease}
  .modal{background:#fff;border-radius:20px;max-width:440px;width:100%;padding:38px 34px;position:relative;
    box-shadow:var(--shadow-lg);animation:pop .4s cubic-bezier(.2,.9,.3,1.2);max-height:92vh;overflow-y:auto}
  .modal .close{position:absolute;top:16px;right:16px;width:34px;height:34px;border-radius:50%;border:none;
    background:var(--cream);color:var(--ink);cursor:pointer;font-size:18px;display:grid;place-items:center;transition:.25s}
  .modal .close:hover{background:var(--ink);color:#fff;transform:rotate(90deg)}
  .modal .m-ic{width:62px;height:62px;border-radius:16px;margin:0 auto 16px;display:grid;place-items:center;
    background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:var(--ink)}
  .modal h3{text-align:center;font-size:1.5rem;margin-bottom:6px}
  .modal .m-sub{text-align:center;color:var(--muted);font-size:13.5px;margin-bottom:24px}
  .success-state{text-align:center;display:none}
  .success-state.show{display:block;animation:fade .4s}
  .success-state .check{width:78px;height:78px;border-radius:50%;margin:0 auto 18px;background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));display:grid;place-items:center}
  .success-state .check svg{width:40px;height:40px;color:#fff}
  .success-state h3{font-size:1.6rem;margin-bottom:8px}
  .success-state p{color:var(--muted);font-size:14px;margin-bottom:8px}
  .success-state .dl-link{margin-top:18px}

  .toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(120%);background:var(--ink);color:#fff;
    padding:15px 26px;border-radius:50px;z-index:600;box-shadow:var(--shadow-lg);font-size:14px;font-weight:600;
    display:flex;align-items:center;gap:10px;transition:transform .45s cubic-bezier(.2,.9,.3,1.2)}
  .toast.show{transform:translateX(-50%) translateY(0)}
  .toast svg{width:20px;height:20px;color:var(--gold-light)}
  .float-call{position:fixed;bottom:86px;right:20px;z-index:150;display:none;width:58px;height:58px;border-radius:50%;
    background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:var(--ink);place-items:center;box-shadow:var(--shadow-lg);animation:pulse 2s infinite}

  /* WhatsApp float button (visible on all screens) */
  .float-wa{position:fixed;right:20px;bottom:20px;z-index:151;width:58px;height:58px;border-radius:50%;
    display:grid;place-items:center;background:#25D366;color:#fff;box-shadow:var(--shadow-lg);
    transition:transform .3s cubic-bezier(.2,.9,.3,1.2);animation:wa-pulse 2.4s infinite}
  .float-wa:hover{transform:translateY(-3px) scale(1.06)}
  .float-wa svg{width:30px;height:30px}
  @keyframes wa-pulse{0%,100%{box-shadow:0 10px 28px -8px rgba(37,211,102,.6),0 0 0 0 rgba(37,211,102,.5)}
    50%{box-shadow:0 10px 28px -8px rgba(37,211,102,.7),0 0 0 12px rgba(37,211,102,0)}}

  @keyframes rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
  @keyframes fade{from{opacity:0}to{opacity:1}}
  @keyframes pop{from{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}
  @keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(191,155,67,.5)}50%{box-shadow:0 0 0 14px rgba(191,155,67,0)}}
  .reveal{opacity:0;transform:translateY(30px);transition:.8s cubic-bezier(.2,.8,.2,1)}
  .reveal.in{opacity:1;transform:none}

  /* ========================================================================
     GOD-LEVEL ANIMATION LAYER
     ======================================================================== */
  /* directional + scale reveals */
  .rv{opacity:0;transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}
  .rv.in{opacity:1;transform:none}
  .rv-up{transform:translateY(46px)}
  .rv-left{transform:translateX(-52px)}
  .rv-right{transform:translateX(52px)}
  .rv-scale{transform:scale(.9)}
  .rv-blur{filter:blur(14px)}
  .rv-blur.in{filter:blur(0)}
  /* stagger children when parent gets .in */
  .stagger>*{opacity:0;transform:translateY(34px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
  .stagger.in>*{opacity:1;transform:none}
  .stagger.in>*:nth-child(1){transition-delay:.05s}
  .stagger.in>*:nth-child(2){transition-delay:.13s}
  .stagger.in>*:nth-child(3){transition-delay:.21s}
  .stagger.in>*:nth-child(4){transition-delay:.29s}
  .stagger.in>*:nth-child(5){transition-delay:.37s}
  .stagger.in>*:nth-child(6){transition-delay:.45s}
  .stagger.in>*:nth-child(7){transition-delay:.53s}
  .stagger.in>*:nth-child(8){transition-delay:.61s}

  /* word-by-word headline reveal */
  .reveal-words .w{display:inline-block;opacity:0;transform:translateY(110%) rotate(4deg);
    transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
  .reveal-words .w-wrap{display:inline-block;overflow:hidden;vertical-align:top}
  .reveal-words.in .w{opacity:1;transform:none}

  /* animated gold shimmer for accent text */
  @keyframes shimmer{0%{background-position:-200% center}100%{background-position:200% center}}
  .shimmer{background:linear-gradient(100deg,var(--gold-deep) 20%,#f4e2a8 45%,var(--gold-light) 50%,var(--gold-deep) 80%);
    background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
    animation:shimmer 4.5s linear infinite}

  /* floating ambient motion */
  @keyframes float-y{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
  @keyframes float-y2{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}
  .floaty{animation:float-y 6s ease-in-out infinite}
  .floaty2{animation:float-y2 7s ease-in-out infinite}

  /* slow zoom (Ken Burns) for hero bg */
  @keyframes kenburns{0%{transform:scale(1)}100%{transform:scale(1.12)}}

  /* sheen sweep across cards/buttons on hover */
  .sheen{position:relative;overflow:hidden}
  .sheen::after{content:"";position:absolute;top:0;left:-130%;width:60%;height:100%;
    background:linear-gradient(115deg,transparent,rgba(255,255,255,.45),transparent);
    transform:skewX(-18deg);transition:left .75s cubic-bezier(.2,.8,.2,1);pointer-events:none}
  .sheen:hover::after{left:130%}

  /* gold underline grow on nav */
  .nav-links a{position:relative}
  .nav-links a::after{content:"";position:absolute;left:0;bottom:-5px;height:2px;width:0;
    background:linear-gradient(90deg,var(--gold-light),var(--gold));transition:width .35s cubic-bezier(.2,.8,.2,1)}
  .nav-links a:hover::after{width:100%}

  /* button lift + glow */
  .btn-gold{transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,filter .3s}
  .btn-gold:hover{transform:translateY(-3px) scale(1.015);filter:brightness(1.05);
    box-shadow:0 18px 40px -12px rgba(191,155,67,.7)}
  .btn-gold:active{transform:translateY(-1px) scale(.99)}

  /* price card hover */
  .pc{transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s,border-color .4s,background .4s}
  .pc:hover{transform:translateY(-5px);border-color:rgba(191,155,67,.7);
    background:linear-gradient(135deg,rgba(191,155,67,.26),rgba(191,155,67,.08));
    box-shadow:0 22px 50px -22px rgba(0,0,0,.6)}
  .pc:hover .pc-ic{transform:rotate(-6deg) scale(1.06)}
  .pc-ic{transition:transform .4s cubic-bezier(.2,.9,.3,1.2)}

  /* hero pill hover */
  .hero-pill{transition:transform .3s cubic-bezier(.2,.8,.2,1),background .3s,border-color .3s}
  .hero-pill:not(.hero-pill-hot):hover{transform:translateY(-2px);background:rgba(191,155,67,.22);border-color:rgba(191,155,67,.6)}

  /* highlight card: accent bar + lift + icon */
  .hl{transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s,border-color .4s}
  .hl .num{transition:transform .4s cubic-bezier(.2,.9,.3,1.2),color .4s}
  .hl:hover .num{transform:scale(1.12) translateX(2px)}

  /* amenity tile zoom + meta lift */
  .amen .meta{transition:transform .45s cubic-bezier(.2,.8,.2,1)}
  .amen:hover .meta{transform:translateY(-6px)}
  .amen .ic{transition:transform .45s cubic-bezier(.2,.9,.3,1.2),background .3s}
  .amen:hover .ic{transform:rotate(-6deg) scale(1.08)}

  /* residence card image zoom */
  .res-photo{transition:transform .6s cubic-bezier(.2,.8,.2,1)}
  .res-card:hover .res-photo{transform:scale(1.06)}

  /* form input focus pop */
  .sb-cell{transition:background .3s,box-shadow .3s,transform .3s}
  .sb-cell.focused{transform:translateY(-1px)}

  /* count-up wrapper hidden flicker fix */
  .counting{font-variant-numeric:tabular-nums}

  /* scroll progress bar */
  #scrollProgress{position:fixed;top:0;left:0;height:3px;width:0;z-index:300;
    background:linear-gradient(90deg,var(--gold-deep),var(--gold-light),var(--gold));
    box-shadow:0 0 12px rgba(191,155,67,.6);transition:width .1s linear}

  /* back-to-top fab */
  #toTop{position:fixed;bottom:88px;right:20px;z-index:150;width:46px;height:46px;border-radius:50%;
    border:none;cursor:pointer;display:grid;place-items:center;opacity:0;transform:translateY(16px) scale(.8);
    background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:var(--ink);
    box-shadow:var(--shadow-md);transition:opacity .35s,transform .35s}
  #toTop.show{opacity:1;transform:none}
  #toTop:hover{transform:translateY(-3px) scale(1.06)}
  #toTop svg{width:20px;height:20px}

  /* gentle entrance for sticky header logo */
  .logo{transition:transform .3s cubic-bezier(.2,.9,.3,1.2)}
  .logo:hover{transform:scale(1.03)}

  /* respect reduced motion */
  @media(prefers-reduced-motion:reduce){
    *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;
      transition-duration:.001ms!important;scroll-behavior:auto!important}
    .rv,.stagger>*,.reveal-words .w{opacity:1!important;transform:none!important;filter:none!important}
    .shimmer{animation:none}
  }

  /* responsive */
  @media(max-width:1080px){.nav-links{display:none}}

  /* ===== MOBILE MENU ===== */
  .menu-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;
    border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.06);border-radius:11px;cursor:pointer;
    padding:0 9px;transition:.25s;flex-shrink:0}
  .menu-toggle span{display:block;height:2px;width:100%;background:var(--gold-light);border-radius:2px;
    transition:transform .3s,opacity .25s}
  .menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .menu-toggle.open span:nth-child(2){opacity:0}
  .menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .mobile-nav{position:fixed;inset:0;z-index:400;background:linear-gradient(160deg,var(--ink),#0f1419);
    display:flex;flex-direction:column;padding:90px 28px 36px;gap:6px;
    transform:translateX(100%);transition:transform .42s cubic-bezier(.5,0,.2,1);visibility:hidden}
  .mobile-nav.open{transform:translateX(0);visibility:visible}
  .mobile-nav a{color:#fff;font-size:20px;font-weight:700;letter-spacing:.01em;padding:15px 4px;
    border-bottom:1px solid rgba(255,255,255,.08);opacity:0;transform:translateX(24px);
    transition:opacity .4s,transform .4s,color .2s}
  .mobile-nav.open a{opacity:1;transform:none}
  .mobile-nav.open a:nth-child(1){transition-delay:.08s}
  .mobile-nav.open a:nth-child(2){transition-delay:.14s}
  .mobile-nav.open a:nth-child(3){transition-delay:.20s}
  .mobile-nav.open a:nth-child(4){transition-delay:.26s}
  .mobile-nav.open a:nth-child(5){transition-delay:.32s}
  .mobile-nav.open a:nth-child(6){transition-delay:.38s}
  .mobile-nav a:hover,.mobile-nav a:active{color:var(--gold-light)}
  .mobile-nav .mn-cta{margin-top:auto;display:flex;flex-direction:column;gap:12px;border:none;padding-top:8px}
  .mobile-nav .mn-cta a{border:none;padding:0;opacity:1;transform:none}
  .mn-close{position:absolute;top:22px;right:24px;width:42px;height:42px;border-radius:50%;border:none;
    background:rgba(255,255,255,.08);color:#fff;cursor:pointer;font-size:22px;display:grid;place-items:center}
  body.menu-open{overflow:hidden}
  @media(max-width:1080px){.menu-toggle{display:flex}}
  @media(min-width:1081px){.mobile-nav{display:none}}
  @media(max-width:980px){
    .sb-grid{grid-template-columns:1fr 1fr}
    .sb-cell{border-right:1px solid #ece5d8;border-bottom:1px solid #ece5d8}
    .sb-cell:nth-child(2){border-right:none}
    .sb-submit{grid-column:1 / -1}
    .sb-submit button{width:100%;justify-content:center;padding:16px}
    .amen-grid{grid-template-columns:repeat(2,1fr)}
    .hl-grid{grid-template-columns:1fr 1fr}
    .res-grid,.about-grid,.loc-grid,.dev-grid{grid-template-columns:1fr;gap:34px}
    .fp-grid{grid-template-columns:1fr 1fr;gap:20px}
    .scheme-band-inner{grid-template-columns:1fr;gap:26px}
    .foot-grid{grid-template-columns:1fr 1fr}
    .dev-grid{gap:30px}
  }
  @media(max-width:680px){
    .wrap,.header-inner,.hero-inner,.scheme-band-inner{padding-left:20px;padding-right:20px}
    .call-now small,.call-now .txt{display:none}.call-now{gap:0}
    header .btn{display:none}
    .hero{padding-top:calc(var(--header-h) + 28px);min-height:auto}
    .hero h1{font-size:2rem}
    .hero-copy{margin-bottom:24px}
    .price-cards{grid-template-columns:1fr;max-width:100%}
    .search-bar{padding:18px 16px 16px}
    .sb-grid{grid-template-columns:1fr}
    .sb-cell,.sb-cell:nth-child(2){border-right:none;border-bottom:1px solid #ece5d8}
    .sb-foot{flex-direction:column;align-items:flex-start;gap:8px}
    .scheme-band-inner{grid-template-columns:1fr;gap:22px;padding:24px 20px}
    .cd-box{min-width:54px;padding:8px 10px}
    .amen-grid{grid-template-columns:1fr 1fr;gap:14px}
    .fp-grid{grid-template-columns:1fr}
    .hl-grid{grid-template-columns:1fr}
    .loc-list{grid-template-columns:1fr}
    .about-stats{grid-template-columns:1fr 1fr}
    .foot-grid{grid-template-columns:1fr}
    .float-call{display:grid}
    #toTop{bottom:152px}
    section.block{padding:60px 0}
    .trust-inner{gap:18px}.trust-item{min-width:calc(50% - 12px)}
    .dev-copy .pillars{grid-template-columns:1fr}
    /* overflow safety: horizontal reveals -> vertical on phones (no sideways scroll) */
    .rv-left,.rv-right{transform:translateY(40px)}
    .hero-bg{inset:0}
    .amen-grid{grid-template-columns:1fr;gap:16px}
    .amen{min-height:200px}
    .ad-banner .ad-desktop{display:none}
    .ad-banner .ad-mobile{display:block}
  }
  @media(max-width:400px){.amen-grid{grid-template-columns:1fr}}
  
  /* Grid Layout (Avoiding Card Styles) */
  .construction-gallery {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
    margin-top: 40px;
  }

  @media (min-width: 576px) {
    .construction-gallery {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  @media (min-width: 992px) {
    .construction-gallery {
      grid-template-columns: repeat(4, 1fr);
    }
  }

  * Clean Layout Grid */
  .construction-gallery {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 24px;
    margin-top: 40px;
  }

  @media (min-width: 576px) {
    .construction-gallery {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  @media (min-width: 992px) {
    .construction-gallery {
      grid-template-columns: repeat(4, 1fr);
    }
  }

  /* Vertical Aspect Ratio Frame (No card style) */
  .gallery-item-vertical {
    position: relative;
    overflow: hidden;
    width: 100%;
    /* 3:4 aspect ratio forces a clean vertical presentation */
    aspect-ratio: 3 / 4; 
    border-radius: 4px; /* Optional: slight rounding for modern feel, remove if you want raw edges */
  }

  .gallery-item-vertical img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.7s cubic-bezier(0.25, 1, 0.5, 1);
  }

  /* Smooth Zoom Hover Animation */
  .gallery-item-vertical:hover img {
    transform: scale(1.06);
  }

  /* Section Fade-In Animation */
  .animated-fade-in {
    animation: fadeInUp 1.2s cubic-bezier(0.25, 1, 0.5, 1) forwards;
  }

  @keyframes fadeInUp {
    from {
      opacity: 0;
      transform: translateY(40px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  
  
/* PROJECT DELIVERED SECTION styles */
  .projects-delivered { background: var(--sand); padding: 90px 0; }
  .proj-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; margin-top: 40px; }
  .proj-card { 
    background: #fff; 
    border: 1px solid #ece6da; 
    border-radius: 16px; 
    overflow: hidden; 
    box-shadow: var(--shadow-md); 
    transition: .35s; 
    display: flex; 
    flex-direction: column; 
    text-align: center; 
  }
  .proj-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-lg); border-color: var(--line); }
  
  /* Fixed image wrapper for 1080x1080 square images */
  .proj-img-wrap { 
    width: 100%; 
    aspect-ratio: 1 / 1; /* Forces the container to stay perfectly square */
    overflow: hidden; 
    background: #f7f5f0; 
    position: relative; 
  }
  .proj-img-wrap img { 
    width: 100%; 
    height: 100%; 
    object-fit: contain; /* Ensures the whole building is visible without clipping */
    background-color: #f7f5f0; /* Blends any potential edge-gaps cleanly */
    transition: transform .5s ease; 
  }
  .proj-card:hover .proj-img-wrap img { transform: scale(1.03); }
  
  .proj-body { padding: 20px; }
  .proj-title { font-size: 1.2rem; font-weight: 800; color: var(--ink); line-height: 1.3; }
  .proj-subtitle { font-size: 13.5px; color: var(--muted); font-weight: 600; letter-spacing: .02em; }
  
  @media (max-width: 991px) {
    .proj-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
  }
  @media (max-width: 575px) {
    .proj-grid { grid-template-columns: 1fr; }
  }

/* ========================================================================
   DARK LUXURY THEME LAYER — Godrej Crown Residences
   Overrides for elements that assumed a light background or used --ink as
   a dark surface (since --ink is now the light primary text colour).
   ======================================================================== */

/* --- Elements sitting ON gold: force dark ink for contrast --- */
.btn-gold,
.call-now .ico,
.hero-pill-hot,
.hero-pill-hot svg,
.pc-ic svg,
.sb-submit button,
.sp.new .pill,
.lead-card .ribbon,
.fp-tag,
.loc-map .map-inner .pinbig,
.modal .m-ic,
.success-state .check svg,
.float-call,
.toast svg{ color:var(--ink-on-gold); }
.hero-pill-hot .hp-price{ background:var(--ink-on-gold); color:var(--gold-light); }

/* --- Dark surfaces that previously used var(--ink) as a fill --- */
.btn-dark{ background:var(--surface-dark); color:#fff; }
.btn-dark:hover{ background:var(--surface-2); }
.res-card .tag,
.res-photo .tag{ background:var(--surface-dark); color:#fff; }
.dev-logo{ background:var(--surface-dark); border:1px solid var(--line); }
.toast{ background:var(--surface-dark); color:var(--ink); }
.modal .close:hover{ background:var(--gold); color:var(--ink-on-gold); }

/* --- Outline-dark buttons become light outlines on the dark base --- */
.btn-outline-dark{ border-color:rgba(243,238,226,.45); color:var(--ink); }
.btn-outline-dark:hover{ background:var(--gold); border-color:var(--gold); color:var(--ink-on-gold); }

/* --- Card surfaces that were hard-coded #fff --- */
.hl{ background:var(--paper); border-color:rgba(212,175,55,.16); }
.res-card{ background:var(--paper); border-color:rgba(212,175,55,.18); }
.res-card li{ border-bottom-color:rgba(255,255,255,.08); }
.dev-copy .pillar{ background:var(--paper); border-color:rgba(212,175,55,.16); }
.proj-card{ background:var(--paper); border-color:rgba(212,175,55,.16); }
.proj-img-wrap,.proj-img-wrap img{ background:#0c0e13; }
.about-stats .s{ background:var(--surface-dark); border-color:var(--line); }
.loc-item{ background:var(--surface-dark); border-color:var(--line); }
.fp-card{ border-color:rgba(212,175,55,.18); }
/* floor-plan preview tiles read better lighter than the dark page */
.fp-veil{ background:linear-gradient(180deg,rgba(15,17,21,.30),rgba(15,17,21,.55)); }
.fp-center .fp-hint{ color:var(--ink-soft); }
.fp-lock{ background:rgba(212,175,55,.10); }

/* --- Forms: dark glass cards with readable fields --- */
.search-bar{ background:rgba(18,21,27,.82); border:1px solid rgba(212,175,55,.24); backdrop-filter:blur(14px); }
.search-bar .sb-title{ color:var(--ink); }
.search-bar .sb-title span,
.search-bar .sb-tag{ color:var(--gold-light); }
.search-bar .sb-tag{ background:rgba(212,175,55,.14); border-color:var(--line); }
.sb-cell{ background:rgba(255,255,255,.04); border-color:rgba(255,255,255,.14); }
.sb-cell.focused{ background:rgba(255,255,255,.08); border-color:var(--gold); box-shadow:0 0 0 3px rgba(212,175,55,.18); }
.sb-cell input,.sb-cell select{ color:var(--ink); }
.sb-cell select option{ color:#15140d; }

.lead-card{ background:var(--paper); border-color:rgba(212,175,55,.25); }
.field input,.field select{ background:rgba(255,255,255,.04); border-color:rgba(255,255,255,.14); color:var(--ink); }
.field input:focus,.field select:focus{ background:rgba(255,255,255,.08); border-color:var(--gold); box-shadow:0 0 0 4px rgba(212,175,55,.16); }
.field input::placeholder{ color:#8b857b; }
.field select option{ color:#15140d; }

/* --- Modal: dark surface --- */
.modal{ background:var(--surface-2); color:var(--ink); border:1px solid var(--line); }
.modal .m-sub,.success-state p{ color:var(--ink-soft); }

/* --- Section backgrounds / gradients tuned for dark --- */
.highlights{ background:linear-gradient(180deg,var(--cream),var(--sand)); }
.residences{ background:linear-gradient(180deg,var(--sand),var(--cream)); }
.developer{ background:linear-gradient(180deg,var(--cream),var(--sand)); }
.gallery-item-vertical{ background:#0c0e13; }

/* --- Header: subtle gold hairline once scrolled --- */
header.scrolled{ background:rgba(11,13,17,.92); border-bottom:1px solid var(--line); }

/* 3 residence configuration cards — responsive auto-fit */
.res-grid{ grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); max-width:1100px; }

/* Real Godrej Golf Links imagery */
.about-visual{ background:linear-gradient(160deg,rgba(15,17,21,.25),rgba(15,17,21,.45)),url('../../images/godrej-golf-greens.jpg') center/cover; }
.loc-map{ background:linear-gradient(160deg,rgba(11,13,17,.45),rgba(11,13,17,.30)),url('../../images/godrej-township-aerial.jpg') center/cover; }

/* ===== FILM / STORY SECTION (The Little Golfer) ===== */
.film{ background:linear-gradient(180deg,var(--sand),var(--cream)); }
.film-wrap{ max-width:920px; margin:0 auto; }
.video-frame{ position:relative; width:100%; aspect-ratio:16/9; border-radius:18px; overflow:hidden;
  box-shadow:var(--shadow-lg); border:1px solid var(--line); background:#000; }
.video-frame iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.film-note{ margin-top:22px; text-align:center; color:var(--ink-soft); font-size:1rem; line-height:1.7; }

/* Emoji icons inside spec cards (3 BHK / 4 BHK pages) */
.hl-ic{ font-size:26px; line-height:1; }

/* Project walkthrough videos (self-hosted, vertical reels) */
.video-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:24px; max-width:760px; margin:0 auto; justify-items:center; }
.video-frame video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; background:#000; }
.video-grid .video-frame{ aspect-ratio:9/16; width:100%; max-width:340px; }
@media (max-width:768px){ .video-grid{ grid-template-columns:1fr; max-width:340px; } }

/* ===== FIX: elements that used --ink/--ink-soft as a BACKGROUND ===== */
/* (--ink is now the light text colour, so these went light by mistake) */
.scheme-band{ background:linear-gradient(115deg,var(--charcoal) 0%,var(--surface-2) 55%,var(--charcoal) 100%); }
.mobile-nav{ background:linear-gradient(160deg,var(--surface-dark),var(--charcoal)); }
.about-visual .badge-float{ background:rgba(18,21,27,.86); border:1px solid var(--line); backdrop-filter:blur(6px); }
.about-visual .badge-float .n{ color:var(--ink); }
.about-visual .badge-float .n span{ color:var(--ink-soft) !important; }
.about-visual .badge-float .t{ color:var(--ink-soft); }

/* ===== LEGAL / POLICY PAGES ===== */
.legal-wrap{ max-width:880px; margin:0 auto; padding:calc(var(--header-h) + 64px) 28px 80px; }
.legal-head{ border-bottom:1px solid var(--line); padding-bottom:22px; margin-bottom:30px; }
.legal-head .kick{ color:var(--gold-deep); font-size:12px; font-weight:700; letter-spacing:.3em; text-transform:uppercase; }
.legal-head h1{ font-size:clamp(1.9rem,4vw,2.7rem); color:var(--ink); margin-top:10px; }
.legal-head .sub{ color:var(--muted); margin-top:8px; font-size:.95rem }
.legal-body{ color:var(--ink-soft); font-size:15px; line-height:1.85 }
.legal-body h2{ color:var(--gold-light); font-size:1.22rem; margin:34px 0 12px; padding-left:14px; border-left:3px solid var(--gold) }
.legal-body p{ margin:0 0 16px }
.legal-body ul{ margin:0 0 18px; padding-left:22px }
.legal-body li{ margin-bottom:8px }
.legal-body a{ color:var(--gold-light); text-decoration:underline }
.legal-body .intro{ font-weight:600; color:var(--ink); font-size:1.05rem }
.legal-body .updated{ color:var(--muted); font-size:13px; margin-bottom:24px }
.legal-back{ margin-top:42px }
