  :root {
      --dark: #0c0a07;
      --dark-2: #15110b;
      --dark-3: #1d1810;
      --cream: #f4eee4;
      --cream-2: #efe7d9;
      --gold: #c8962e;
      --gold-light: #e0b659;
      --gold-deep: #a9781e;
      --gold-grad: linear-gradient(135deg, #e6bd5e 0%, #c8962e 50%, #a9781e 100%);
      --text-dark: #1a1712;
      --text-muted: #6b6357;
      --text-cream: #f4eee4;
      --text-cream-muted: rgba(244, 238, 228, .62);
      --serif: 'Playfair Display', Georgia, serif;
      --sans: 'Mulish', -apple-system, sans-serif;
  }

  * {
      box-sizing: border-box
  }

  html {
      scroll-behavior: smooth;
      overflow-x: hidden
  }

  body {
      font-family: var(--sans);
      color: var(--text-dark);
      background: var(--cream);
      margin: 0;
      overflow-x: hidden;
  }

  h1,
  h2,
  h3,
  h4,
  .serif {
      font-family: var(--serif)
  }

  img {
      max-width: 100%;
      display: block
  }

  a {
      text-decoration: none
  }

  .eyebrow {
      font-family: var(--sans);
      font-weight: 700;
      letter-spacing: .32em;
      text-transform: uppercase;
      font-size: .72rem;
      color: var(--gold);
  }

  .text-gold {
      color: var(--gold)
  }

  .gold-line {
      width: 80px;
      height: 2px;
      background: var(--gold-grad);
      border: 0;
      opacity: 1;
      margin: 1.2rem 0
  }

  .gold-line.center {
      margin-left: auto;
      margin-right: auto
  }

  .btn-gold {
      background: var(--gold-grad);
      color: #1a1305;
      font-weight: 700;
      border: 0;
      padding: .95rem 1.8rem;
      border-radius: 10px;
      letter-spacing: .02em;
      transition: transform .25s ease, box-shadow .25s ease;
      box-shadow: 0 10px 30px -8px rgba(200, 150, 46, .55);
  }

  .btn-gold:hover {
      transform: translateY(-2px);
      box-shadow: 0 16px 38px -8px rgba(200, 150, 46, .7);
      color: #1a1305
  }

  .btn-dark-pill {
      background: var(--dark);
      color: var(--text-cream);
      font-weight: 600;
      border: 1px solid rgba(255, 255, 255, .12);
      border-radius: 50px;
      padding: .7rem 1.5rem;
      transition: .25s ease;
  }

  .btn-dark-pill:hover {
      background: var(--dark-3);
      color: var(--gold);
      transform: translateY(-2px)
  }

  .btn-outline-gold {
      background: transparent;
      border: 1px solid var(--gold);
      color: var(--gold);
      border-radius: 50px;
      padding: .55rem 1.4rem;
      font-weight: 600;
      font-size: .85rem;
      letter-spacing: .12em;
      text-transform: uppercase;
      transition: .25s;
  }

  .btn-outline-gold:hover {
      background: var(--gold);
      color: #1a1305
  }

  /* ============ NAVBAR ============ */

  .navbar-custom {
      background: rgba(12, 10, 7, .55);
      backdrop-filter: blur(14px);
      -webkit-backdrop-filter: blur(14px);
      border-bottom: 1px solid rgba(255, 255, 255, .06);
      transition: background .35s ease;
  }

  .navbar-custom.scrolled {
      background: rgba(12, 10, 7, .95)
  }

  .brand-mark {
     width: 56px;
    height: 46px;
      border-radius: 10px;
      background: var(--gold-grad);
      display: flex;
      align-items: center;
      justify-content: center;
      font-family: var(--serif);
      font-weight: 700;
      color: #1a1305;
      font-size: 1.4rem;
      box-shadow: 0 6px 18px -6px rgba(200, 150, 46, .6);
  }

  .brand-name {
      font-family: var(--serif);
      font-size: 15px;
      color: #fff;
      line-height: 1.1;
      font-weight: 600
  }

  .brand-sub {
      font-size: .6rem;
      letter-spacing: .28em;
      color: var(--gold);
      font-weight: 700
  }

  .navbar-custom .nav-link {
      color: rgba(244, 238, 228, .78);
      font-size: .92rem;
      font-weight: 500;
      letter-spacing: .02em;
      padding: .4rem 1rem;
      transition: .2s;
      font-family: var(--serif);
  }

  .navbar-custom .nav-link:hover {
      color: var(--gold)
  }

  .navbar-toggler {
      border-color: rgba(255, 255, 255, .2)
  }

  .navbar-toggler-icon {
      filter: invert(1)
  }

  /* ============ HERO ============ */

  .hero {
      position: relative;
      min-height: 100vh;
      display: flex;
      align-items: center;
      padding: 120px 0 60px;
      background: linear-gradient(115deg, rgba(12, 10, 7, .88) 0%, rgba(12, 10, 7, .68) 50%, rgba(20, 16, 10, .45) 100%), url('images/home2.jpg') center/cover no-repeat;
      overflow: hidden;
  }

  .hero::after {
      content: "";
      position: absolute;
      inset: 0;
      background: radial-gradient(circle at 75% 20%, rgba(200, 150, 46, .18), transparent 40%), repeating-linear-gradient(90deg, rgba(255, 255, 255, .015) 0 2px, transparent 2px 60px);
      pointer-events: none;
  }

  .hero-content {
      position: relative;
      z-index: 2
  }

  .hero-title {
      font-size: 40px;
      font-weight: 700;
      line-height: .95;
      color: #fff;
      margin-bottom: 1.5rem;
      letter-spacing: -.01em;
  }

  .hero-badge {
      display: inline-flex;
      align-items: center;
      gap: .5rem;
      border: 1px solid rgba(200, 150, 46, .5);
      border-radius: 50px;
      padding: .5rem 1.2rem;
      color: var(--gold);
      font-weight: 600;
      letter-spacing: .2em;
      font-size: .72rem;
      text-transform: uppercase;
      margin-bottom: 1.8rem;
  }

  .hero-badge .dot {
      width: 7px;
      height: 7px;
      border-radius: 50%;
      background: var(--gold)
  }

  .hero-tagline {
      font-family: var(--serif);
      font-style: italic;
      font-size: clamp(1.3rem, 3vw, 1.9rem);
      color: rgba(244, 238, 228, .85);
      margin-bottom: 1.5rem;
      font-weight: 400;
  }

  .hero-stat-num {
      color: var(--gold);
      line-height: 1;
       font-size: 2.8rem;
    font-weight: 600;
    color: #c89b3c;
    letter-spacing: 1px;
  }

  .hero-stat-label {
      font-size: .8rem;
      text-transform: uppercase;
      color: rgba(244, 238, 228, .6);
      margin-top: .4rem
    letter-spacing: 4px;
  }

  .price-eyebrow {
      font-size: .72rem;
      letter-spacing: .24em;
      text-transform: uppercase;
      color: rgba(244, 238, 228, .6)
  }

  .price-big {
      font-size:3.0rem;
     font-weight: 500;
    line-height: 1;
    color: #fff;
    letter-spacing: -1px;
  }

  .price-big sup {
      color: var(--gold);
       font-size: 1.8rem;
    top: -1.2em;
    position: relative;
  }

  .rera-line {
      font-size: .75rem;
      color: rgba(244, 238, 228, .4);
      letter-spacing: .04em
  }

  /* lead form card */

  .lead-card {
      background: rgba(15, 12, 8, .82);
      border: 1px solid rgba(200, 150, 46, .28);
      border-radius: 18px;
      overflow: hidden;
      box-shadow: 0 30px 80px -30px rgba(0, 0, 0, .8);
      position: relative;
      z-index: 3;
  }

  .lead-card-ribbon {
      background: var(--gold-grad);
      color: #1a1305;
      text-align: center;
      padding: .75rem 1rem;
  }

  .lead-card-ribbon .lbl {
      font-size: .66rem;
      letter-spacing: .28em;
      font-weight: 800;
      text-transform: uppercase
  }

  .lead-card-ribbon .sub {
      font-family: var(--serif);
      font-weight: 600;
      font-size: 1.05rem
  }

  .lead-card-body {
      padding: 1.6rem
  }

  .lead-card-body .small-lbl {
      font-size: .7rem;
      letter-spacing: .26em;
      text-transform: uppercase;
      color: var(--gold);
      text-align: center
  }

  .lead-card-body h3 {
      color: #fff;
      text-align: center;
      font-size: 1.6rem;
      margin: .3rem 0 .2rem
  }

  .lead-card-body .micro {
      text-align: center;
      color: rgba(244, 238, 228, .55);
      font-size: .85rem;
      margin-bottom: 1.2rem
  }

  .form-label-dark {
      color: rgba(244, 238, 228, .8);
      font-size: .8rem;
      font-weight: 600;
      margin-bottom: .35rem
  }

  .form-control-dark,
  .form-select-dark {
      background: rgba(255, 255, 255, .04);
      border: 1px solid rgba(255, 255, 255, .12);
      color: #fff;
      border-radius: 9px;
      padding: .7rem .9rem;
  }

  .form-control-dark::placeholder {
      color: rgba(244, 238, 228, .35)
  }

  .form-control-dark:focus,
  .form-select-dark:focus {
      background: rgba(255, 255, 255, .06);
      border-color: var(--gold);
      box-shadow: 0 0 0 .2rem rgba(200, 150, 46, .18);
      color: #fff;
  }

  .form-select-dark {
      background-color: rgba(255, 255, 255, .04);
      color: #fff
  }

  .form-select-dark option {
      background: #15110b;
      color: #fff
  }

  .confidential {
      font-size: .74rem;
      color: rgba(244, 238, 228, .45);
      text-align: center;
      margin-top: .8rem
  }

  /* ============ OFFER BAR ============ */

  .offer-bar {
      background: var(--dark);
      border-top: 1px solid rgba(200, 150, 46, .25);
      border-bottom: 1px solid rgba(200, 150, 46, .25);
      padding: 1.4rem 0
  }

  .offer-bar .lbl {
      font-size: .66rem;
      letter-spacing: .28em;
      color: var(--gold);
      font-weight: 800;
      text-transform: uppercase
  }

  .offer-bar .headline {
      font-family: var(--serif);
      color: #fff;
      font-size: clamp(1.3rem, 3vw, 1.9rem);
      margin: 0
  }

  .count-box {
      background: var(--dark-3);
      border: 1px solid rgba(200, 150, 46, .3);
      border-radius: 10px;
      padding: .55rem .2rem;
      min-width: 62px;
      text-align: center
  }

  .count-box .n {
      font-family: var(--serif);
      font-size: 1.6rem;
      color: var(--gold);
      line-height: 1
  }

  .count-box .u {
      font-size: .6rem;
      letter-spacing: .18em;
      color: rgba(244, 238, 228, .55);
      text-transform: uppercase;
      margin-top: .25rem
  }

  /* ============ SECTION BASE ============ */

  section {
      padding: 90px 0
  }

  .bg-cream {
      background: var(--cream)
  }

  .bg-cream-2 {
      background: var(--cream-2)
  }

  .bg-dark-sec {
      background: var(--dark);
      color: var(--text-cream)
  }

  .section-title {
      font-size: 25px;
      font-weight: 700;
      line-height: 1.05;
      margin-bottom: 0
  }

  .section-sub {
      color: var(--text-muted);
      font-size: 1.05rem;
      line-height: 1.8
  }

  .bg-dark-sec .section-sub {
      color: var(--text-cream-muted)
  }

  /* ABOUT */

  .about-img-wrap {
      position: relative;
      border-radius: 16px;
      overflow: hidden;
      box-shadow: 0 30px 70px -30px rgba(0, 0, 0, .4)
  }

  .about-img {
      aspect-ratio: 3/3;
      width: 100%;
      object-fit: cover;
      background: linear-gradient(135deg, #3a2f1f, #1d1810);
  }

  .virtual-tour-btn {
      position: absolute;
      left: 50%;
      bottom: 18px;
      transform: translateX(-50%);
      background: var(--dark);
      color: #fff;
      border-radius: 50px;
      padding: .65rem 1.4rem;
      font-weight: 600;
      font-size: .9rem;
      display: inline-flex;
      align-items: center;
      gap: .5rem;
      border: 1px solid rgba(255, 255, 255, .1);
      transition: .25s;
      white-space: nowrap;
  }

  .virtual-tour-btn:hover {
      background: var(--dark-3);
      color: var(--gold)
  }

  .virtual-tour-btn .dot {
      color: var(--gold)
  }

  .stat-card {
      background: #fff;
      border: 1px solid rgba(0, 0, 0, .05);
      border-radius: 12px;
      padding: 1.4rem 1rem;
      text-align: center;
      box-shadow: 0 14px 36px -22px rgba(0, 0, 0, .25)
  }

  .stat-card .num {
     
      font-size: 1.45rem;
      color: var(--gold);
      line-height: 1
  }

  .stat-card .lbl {
      font-size: .66rem;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: var(--text-muted);
      margin-top: .5rem
  }

  /* PRICE TABLE */

  .price-table {
      background: #fff;
      border-radius: 16px;
      overflow: hidden;
      box-shadow: 0 24px 60px -30px rgba(0, 0, 0, .25)
  }

  .price-table table {
      margin: 0
  }

  .price-table thead th {
      background: var(--dark);
      color: var(--gold);
      font-size: .72rem;
      letter-spacing: .18em;
      text-transform: uppercase;
      font-weight: 700;
      padding: 1.1rem 1.4rem;
      border: 0
  }

  .price-table tbody td {
      padding: 1.15rem 1.4rem;
      vertical-align: middle;
      border-color: rgba(0, 0, 0, .06);
      font-weight: 500
  }

  .price-table tbody tr:hover {
      background: var(--cream-2)
  }

  .config-name {
      font-size: 1.25rem;
      color: var(--text-dark)
  }

  .price-cell {
      font-weight: 700;
      color: var(--gold)
  }

  .price-note {
      font-size: .8rem;
      color: var(--text-muted)
  }

  @media (max-width: 767px) {
      .price-table .table-responsive {
          overflow: visible;
      }
      .price-table table,
      .price-table tbody,
      .price-table tr,
      .price-table td {
          display: block;
          width: 100%;
      }
      .price-table thead {
          display: none;
      }
      .price-table tbody tr {
          border-bottom: 20px solid rgba(0, 0, 0, .08);
          padding: .75rem 0;
      }
      .price-table tbody tr:last-child {
          border-bottom: 0;
      }
      .price-table tbody td {
          display: flex;
          align-items: center;
          justify-content: space-between;
          padding: .45rem 1.2rem;
          border: 0 !important;
      }
      .price-table tbody td::before {
          content: attr(data-label);
          font-size: .65rem;
          letter-spacing: .16em;
          text-transform: uppercase;
          color: var(--gold);
          font-weight: 700;
          flex: 0 0 42%;
      }
      .price-table tbody td.text-end {
          justify-content: space-between;
      }
      .price-table tbody td.text-end a {
          margin-left: auto;
      }
  }

  /* HIGHLIGHTS */

  .highlight-card {
      background: var(--dark-2);
      border: 1px solid rgba(200, 150, 46, .14);
      border-radius: 14px;
      padding: .85rem 1.1rem;
      height: 100%;
      transition: .3s ease;
  }

  .highlight-card:hover {
      border-color: rgba(200, 150, 46, .5);
      transform: translateY(-4px);
      background: var(--dark-3)
  }

  .highlight-text {
      color: rgba(244, 238, 228, .92);
      font-weight: 500;
      font-size: 1.02rem;
      line-height: 1.45;
      margin: 0
  }

  /* GALLERY */

  .gallery-main {
      border-radius: 18px;
      overflow: hidden;
      box-shadow: 0 30px 80px -35px rgba(0, 0, 0, .5)
  }

  .gallery-slide {
      aspect-ratio: 16/8;
      object-fit: cover;
      width: 100%;
      display: block
  }

  .gallery-thumb {
      aspect-ratio: 4/3;
      border-radius: 10px;
      object-fit: cover;
      width: 100%;
      display: block;
      cursor: pointer;
      opacity: .55;
      transition: opacity .25s ease, outline .25s ease;
      outline: 2px solid transparent;
      outline-offset: 2px
  }

  .gallery-thumb:hover {
      opacity: .85
  }

  .gallery-thumb.active {
      opacity: 1;
      outline-color: var(--gold)
  }

  /* FLOOR PLAN */

  .fp-card {
      background: #fff;
      border-radius: 18px;
      padding: 2rem;
      box-shadow: 0 24px 60px -34px rgba(0, 0, 0, .3)
  }

  .fp-img {
      aspect-ratio: 4/3;
      border-radius: 12px;
      border: 1px solid rgba(0, 0, 0, .08);
      width: 100%;
      background: var(--cream-2);
      overflow: hidden;
      display: flex;
      align-items: center;
      justify-content: center;
  }

  .fp-img img {
      width: 100%;
      height: 100%;
      object-fit: contain;
  }

  .fp-area {
      font-size: 1.5rem;
      color: var(--gold)
  }

  .fp-feat {
      display: flex;
      align-items: center;
      gap: .6rem;
      color: var(--text-muted);
      margin: .4rem 0
  }

  .fp-feat .dia {
      color: var(--gold)
  }

  /* AMENITIES */

  .amenity-tile {
      background: var(--dark-2);
      border: 1px solid rgba(200, 150, 46, .12);
      border-radius: 12px;
      padding: 1rem 1.1rem;
      display: flex;
      align-items: center;
      gap: .85rem;
      height: 100%;
      transition: .25s;
  }

  .amenity-tile:hover {
      border-color: rgba(200, 150, 46, .45);
      background: var(--dark-3);
      transform: translateY(-3px)
  }

  .amenity-ico {
      width: 42px;
      height: 42px;
      min-width: 42px;
      border-radius: 9px;
      background: rgba(200, 150, 46, .1);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.2rem;
      border: 1px solid rgba(200, 150, 46, .2);
  }

  .amenity-name {
      color: rgba(244, 238, 228, .9);
      font-size: .92rem;
      font-weight: 500;
      line-height: 1.25
  }

  /* LOCATION */

  .loc-card {
      background: #fff;
      border-radius: 14px;
      padding: 1.6rem;
      height: 100%;
      box-shadow: 0 18px 50px -30px rgba(0, 0, 0, .22)
  }

  .loc-card h4 {
      font-size: .74rem;
      letter-spacing: .2em;
      text-transform: uppercase;
      color: var(--gold);
      font-weight: 700;
      margin-bottom: 1rem
  }

  .loc-row {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: .6rem 0;
      border-bottom: 1px dashed rgba(0, 0, 0, .1)
  }

  .loc-row:last-child {
      border-bottom: 0
  }

  .loc-place {
      font-weight: 500;
      color: var(--text-dark)
  }

  .loc-dist {
      color: var(--gold);
      font-weight: 700;
      font-size: .9rem;
      white-space: nowrap
  }

  /* GROUP STATS */

  .group-stat {
      background: #fff;
      border-radius: 14px;
      padding: 1.3rem 1rem;
      text-align: center;
      box-shadow: 0 16px 44px -28px rgba(0, 0, 0, .25);
      position: relative
  }

  .group-stat::before {
      content: "";
      position: absolute;
      top: 1.1rem;
      left: 50%;
      transform: translateX(-50%);
      width: 40px;
      height: 2px;
      background: var(--gold-grad)
  }

  .group-stat .num {
      font-size: 2rem;
      color: var(--gold);
      line-height: 1;
      margin-top: .5rem
  }

  .group-stat .lbl {
      font-size: .66rem;
      letter-spacing: .2em;
      text-transform: uppercase;
      color: var(--text-muted);
      margin-top: .5rem
  }

  /* SITE VISIT CTA */

  .sitevisit {
      position: relative;
      background: linear-gradient(rgba(12, 10, 7, .92), rgba(12, 10, 7, .86)), linear-gradient(160deg, #2a221a, #0c0a07);
      color: #fff;
      text-align: center;
  }

  .sitevisit h2 {
      font-size: clamp(2rem, 5vw, 3.6rem);
      font-weight: 700
  }

  /* FOOTER */

  footer {
      background: var(--dark);
      color: rgba(244, 238, 228, .7);
      padding: 70px 0 30px
  }

  footer .brand-name {
      color: #fff
  }

  footer a {
      color: rgba(244, 238, 228, .7);
      transition: .2s
  }

  footer a:hover {
      color: var(--gold)
  }

  .footer-disc {
      font-size: .78rem;
      color: rgba(244, 238, 228, .4);
      line-height: 1.7
  }

  .footer-bottom {
      border-top: 1px solid rgba(255, 255, 255, .08);
      margin-top: 2.5rem;
      padding-top: 1.5rem;
      font-size: .8rem;
      color: rgba(244, 238, 228, .4)
  }

  /* MOBILE FIXED BOTTOM CTA BAR */

  .mobile-cta-bar {
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 1050;
      display: flex;
      align-items: stretch;
      background: #111;
      border-top: 1px solid rgba(200, 150, 46, .25);
      box-shadow: 0 -4px 24px rgba(0, 0, 0, .35);
  }

  .mobile-cta-call {
      flex: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 14px 10px;
      color: #fff;
      font-weight: 600;
      font-size: .9rem;
      letter-spacing: .04em;
      text-decoration: none;
      border-right: 1px solid rgba(200, 150, 46, .2);
      transition: background .2s;
  }

  .mobile-cta-call svg {
      stroke: #e05555;
      flex-shrink: 0
  }

  .mobile-cta-call:hover {
      background: #1a1a1a;
      color: #fff
  }

  .mobile-cta-enquire {
      flex: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 14px 10px;
      background: linear-gradient(135deg, #c9a84c, #e8c96a);
      color: #1a1305;
      font-weight: 700;
      font-size: .9rem;
      letter-spacing: .06em;
      text-transform: uppercase;
      text-decoration: none;
      transition: opacity .2s;
  }

  .mobile-cta-enquire:hover {
      opacity: .9;
      color: #1a1305
  }

  /* push page content up so fixed bar doesn't overlap footer on mobile */

  @media (max-width: 991px) {
      body {
          padding-bottom: 50px;
      }
  }

  /* WHATSAPP FLOAT */

  .wa-float {
      position: fixed;
      right: 22px;
      bottom: 22px;
      z-index: 999;
      width: 58px;
      height: 58px;
      border-radius: 50%;
      background: #25d366;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 10px 30px -8px rgba(37, 211, 102, .6);
      transition: .25s;
  }

  @media (max-width: 991px) {
      .wa-float {
          bottom: 74px;
      }
  }

  .wa-float:hover {
      transform: scale(1.08)
  }

  .wa-float svg {
      width: 30px;
      height: 30px;
      fill: #fff
  }

  /* light form (site visit + modal) */

  .form-control-light {
      border: 1px solid rgba(0, 0, 0, .15);
      border-radius: 9px;
      padding: .8rem 1rem
  }

  .form-control-light:focus {
      border-color: var(--gold);
      box-shadow: 0 0 0 .2rem rgba(200, 150, 46, .15)
  }

  /* reveal animation */

  .reveal {
      opacity: 0;
      transform: translateY(28px);
      transition: opacity .7s ease, transform .7s ease
  }

  .reveal.in {
      opacity: 1;
      transform: none
  }

  @media (max-width:991px) {
      section {
          padding: 64px 0
      }
      .hero {
          padding: 80px 0 50px
      }
  }

  @media (max-width:767px) {
      h1 {
          font-size: 20px !important
      }
      h2 {
          font-size: 16px !important
      }
      h3 {
          font-size: 13px !important
      }
      h4 {
          font-size: 13px !important
      }
      h5 {
          font-size: 12px !important
      }
      h6 {
          font-size: 12px !important
      }
      p {
          font-size: 15px !important
      }
      .hero-badge {
          font-size: 10px !important
      }
      .hero {
          padding: 70px 0 15px;
      }
      .hero-title {
          margin-bottom: .7rem;
      }
      .hero-tagline {
          margin-bottom: .8rem;
      }
      /* Offer bar — bigger label, stack neatly */
      .offer-bar .headline {
          font-size: 1.15rem !important;
          white-space: normal;
          font-weight: 700;
      }
      .offer-bar .lbl {
          font-size: .85rem !important;
          letter-spacing: .1em !important;
          background: rgba(200, 150, 46, .18);
          padding: .3rem .9rem;
          border-radius: 4px;
          display: inline-block;
          margin-bottom: .4rem;
      }
      .offer-bar .row {
          flex-direction: column;
          align-items: center !important;
          text-align: center
      }
      .offer-bar .col-lg-3 {
          width: 100%
      }
      .offer-bar .btn-gold {
          display: inline-block;
          width: auto !important;
          padding: .75rem 2rem
      }
      #countdown {
          justify-content: center !important
      }
      .count-box {
          min-width: 54px
      }
      .count-box .n {
          font-size: 1.4rem
      }
      .count-box .u {
          font-size: .55rem
      }
      .btn-gold {
          font-size: 10px !important;
      }
      /* Stat cards — prevent number overflow */
      .stat-card {
          padding: 1rem .5rem;
      }
      .stat-card .num {
          font-size: 1.4rem !important;
      }
      .stat-card .lbl {
          font-size: .6rem !important;
      }
      /* Price table mobile — compact */
      .price-table tbody td {
          padding: .3rem 1rem;
      }
  }

  .faq-watermark{
    position:absolute;
    top:0px;
    left:50%;
    transform:translateX(-50%);
    font-size:140px;
    font-weight:700;
    letter-spacing:12px;
    color:#000;
    opacity:.025;
    pointer-events:none;
}
.luxury-faq-section{
    position:relative;
    background:#f5f0e8;
    padding:120px 0;
    overflow:hidden;
}

/* Decorative Patterns */

.faq-pattern-left{
    position:absolute;
    top:80px;
    left:-80px;
    width:300px;
    height:300px;
    background:url("https://www.transparenttextures.com/patterns/topography.png");
    opacity:.06;
}

.faq-pattern-right{
    position:absolute;
    bottom:-50px;
    right:-50px;
    width:400px;
    height:400px;
    background:url("https://www.transparenttextures.com/patterns/topography.png");
    opacity:.08;
}

/* Header */

.faq-header{
    max-width:800px;
    margin:auto;
    margin-bottom:70px;
}

.faq-subtitle{
    letter-spacing:4px;
    color:#c89b3c;
    font-size:13px;
    font-weight:600;
}

.faq-header h2{
    font-family: "Cormorant Garamond", serif;
    font-size:58px;
    color:#111;
    margin-top:10px;
    margin-bottom:15px;
}

.faq-header p{
    color:#666;
    font-size:18px;
    line-height:1.8;
}

/* FAQ Wrapper */

.faq-wrapper{
    max-width:900px;
    margin:auto;
}

.accordion-item{
    border:none;
    background:white;
    margin-bottom:20px;
    border-radius:20px !important;
    overflow:hidden;
    box-shadow:
        0 15px 40px rgba(0,0,0,.05);
}

.accordion-button{
    background:white;
    color:#111;
    font-size:18px;
    font-weight:600;
    padding:28px 30px;
    box-shadow:none !important;
}
@media (max-width: 767px) {
    .footer-bottom {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 10px;
    }

    .footer-bottom span,
    .footer-bottom a,
    .footer-bottom h2 {
        width: 100%;
    }
}

.accordion-button:not(.collapsed){
    background:white;
    color:#c89b3c;
}

.accordion-button::after{
    filter:sepia(1);
}

.accordion-body{
    padding:0 30px 30px;
    color:#666;
    line-height:1.9;
    font-size:16px;
}

/* Hover Effect */

.accordion-item:hover{
    transform:translateY(-4px);
    transition:.4s;
    box-shadow:
    0 25px 60px rgba(0,0,0,.08);
}