﻿    @font-face {
      font-family: "Apoc Trial 2";
      src: url("../fonts/Apoc-Normal-Trial-Regular-2.otf") format("opentype");
      font-display: swap;
    }
    @font-face {
      font-family: "Snell Roundhand";
      src: url("../fonts/SnellRoundhand-BoldScript.otf") format("opentype");
      font-weight: 700;
      font-display: swap;
    }
    :root {
      --ink: #32352f;
      --cream: #f1ebe2;
      --sand: #d6cbbc;
      --paper: #f7f4ef;
    }
    body {
      margin: 0;
      font-family: "Open Sans", Georgia, sans-serif;
      color: var(--ink);
      background: #fff;
      overflow-x: clip;
    }
    .display-script {
      font-family: "Apoc Trial 2", Georgia, serif;
      font-weight: 400;
      line-height: 1.15;
    }
    .script {
      font-family: "Snell Roundhand", Georgia, serif;
    }
    html { scroll-behavior: smooth; }
    section[id] { scroll-margin-top: 5.5rem; }
    .nav-luxury {
      background: linear-gradient(180deg, rgba(0,0,0,.55), rgba(56,56,56,.15));
      backdrop-filter: blur(2px);
      transition: background .45s ease, box-shadow .45s ease;
    }
    .nav-luxury.is-scrolled {
      background: rgba(50, 53, 47, .94);
      box-shadow: 0 8px 24px rgba(0, 0, 0, .18);
    }
    .nav-luxury .navbar-brand img { width: 8.5rem; height: auto; }
    .btn-pill {
      border-radius: 50rem;
      padding: .7rem 1.6rem;
      letter-spacing: .02em;
    }
    .btn-light-pill {
      background: #fff;
      color: var(--ink);
      border: 0;
    }
    .btn-ghost {
      background: transparent;
      color: #fff;
      border: 1px solid #fff;
    }
    .hero-carousel,
    .hero-carousel .carousel-item,
    .hero-carousel .carousel-item img {
      height: 100vh;
      min-height: 32rem;
    }
    .hero-carousel .carousel-item { overflow: hidden; }
    .hero-carousel .carousel-item img {
      object-fit: cover;
      width: 100%;
    }
    .hero-mark {
      position: absolute;
      left: 50%;
      bottom: 8%;
      transform: translateX(-50%);
      width: min(28rem, 78vw);
      z-index: 2;
      pointer-events: none;
    }
    .stat-value {
      font-family: "Apoc Trial 2", Georgia, serif;
      font-size: clamp(1.6rem, 2.4vw, 2.5rem);
      line-height: 1.1;
    }
    .feature-panel { background: var(--sand); }
    .feature-icons { background: var(--cream); }
    .feature-icons img { width: 2.5rem; height: 2.5rem; }
    .video-frame {
      position: relative;
      border-radius: 1rem;
      overflow: hidden;
      background: #111;
      min-height: 22rem;
    }
    .video-frame video {
      width: 100%;
      height: 28rem;
      object-fit: cover;
      display: block;
    }
    .video-frame .btn { position: absolute; left: 1.25rem; bottom: 1.25rem; }
    .amenity-slide {
      height: 28rem;
      background-size: cover;
      background-position: center;
      border-radius: 1rem;
      display: flex;
      align-items: flex-end;
      justify-content: center;
      padding-bottom: 1.5rem;
    }
    .amenity-slide span {
      color: #efefef;
      border: 1px solid rgba(255,255,255,.3);
      padding: .45rem 1.2rem;
      min-width: 50%;
      text-align: center;
    }
    .floor-stage { width: 100%; }
    .floor-stage .floor-img {
      width: 100%;
      height: auto;
      object-fit: contain;
      background: #fff;
      border-radius: .5rem;
      display: block;
    }
    #planTabs {
      --bs-nav-link-color: rgba(50, 53, 47, .45);
      --bs-nav-link-hover-color: #32352f;
      --bs-nav-pills-link-active-color: #32352f;
      --bs-nav-pills-link-active-bg: transparent;
    }
    #planTabs .nav-link {
      color: rgba(50, 53, 47, .45);
      background: transparent;
      border: 0;
      border-bottom: 1px solid rgba(50, 53, 47, .28);
      border-radius: 0;
      padding: 1.15rem 1.25rem;
      font-size: 1.35rem;
      line-height: 1.2;
      text-align: left;
      box-shadow: none;
    }
    #planTabs .nav-link:hover {
      color: rgba(50, 53, 47, .85);
      border-bottom-color: rgba(50, 53, 47, .7);
    }
    #planTabs.nav-pills .nav-link.active,
    #planTabs .nav-link.active,
    #planTabs .nav-link.active:hover,
    #planTabs .nav-link.active:focus {
      color: #32352f;
      background: #fff;
      border-bottom: 3px solid #32352f;
      font-weight: 600;
    }
    .loc-panel {
      background: #32352f;
      border-radius: 5px;
      padding: 1.25rem;
      height: 100%;
    }
    .loc-toggle {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
      background: transparent;
      color: #fff;
      border: 1px solid #fff;
      border-top: 0;
      padding: 1.35rem 1rem;
      font-family: "Apoc Trial 2", Georgia, serif;
      font-size: 1.35rem;
      line-height: 1.2;
      text-align: left;
    }
    .loc-panel > .loc-toggle:first-child { border-top: 1px solid #fff; }
    .loc-toggle::after {
      content: "";
      width: .65rem;
      height: .65rem;
      border-right: 2px solid #fff;
      border-bottom: 2px solid #fff;
      transform: rotate(45deg);
      transition: transform .2s ease;
      flex: none;
    }
    .loc-toggle[aria-expanded="true"]::after { transform: rotate(-135deg); }
    .loc-body {
      border: 1px solid #fff;
      border-top: 0;
      padding: 1rem 1.15rem 1.25rem;
      font-family: "Apoc Trial 2", Georgia, serif;
      line-height: 1.7;
    }
    @media (min-width: 992px) {
      .floor-stage { position: relative; min-height: 22rem; }
      .floor-stage .tab-content,
      .floor-stage .tab-pane.show { height: 100%; }
      .floor-stage .tab-pane.show { position: relative; }
      .floor-stage .floor-img {
        position: absolute;
        inset: 0;
        height: 100%;
      }
    }
    .gallery-slider {
      position: relative;
      max-width: 100%;
    }
    .gallery-viewport {
      overflow: hidden;
      width: 100%;
      max-width: 100%;
      container-type: inline-size;
    }
    .gallery-track {
      display: flex;
      flex-wrap: nowrap;
      gap: 1rem;
      width: max-content;
      transition: transform .5s ease;
      will-change: transform;
    }
    .gallery-slide {
      flex: 0 0 calc(50cqw - .5rem);
      width: calc(50cqw - .5rem);
      min-width: 0;
    }
    .gallery-slide img,
    .floor-stage .floor-img {
      cursor: zoom-in;
    }
    .gallery-slide img {
      width: 100%;
      height: 52vh;
      min-height: 22rem;
      object-fit: cover;
      border-radius: 5px;
      display: block;
    }
    .gallery-arrow {
      position: absolute;
      top: 50%;
      z-index: 2;
      transform: translateY(-50%);
      width: 2.75rem;
      height: 2.75rem;
      padding: 0;
      border: 0;
      background: transparent;
    }
    .gallery-arrow img { width: 2.5rem; height: auto; }
    .gallery-prev { left: .25rem; }
    .gallery-next { right: .25rem; }
    .form-card { background: var(--ink); color: #fff; border-radius: 1rem; }
    .form-card .form-control {
      background: transparent;
      border: 0;
      border-bottom: 1px solid rgba(255,255,255,.45);
      border-radius: 0;
      color: #fff;
      padding-left: 0;
    }
    .form-card .form-control::placeholder { color: rgba(255,255,255,.75); }
    .form-card .form-control:focus {
      background: transparent;
      color: #fff;
      box-shadow: none;
      border-color: #fff;
    }
    .contact-photo {
      width: 100%;
      height: 100%;
      min-height: 22rem;
      object-fit: cover;
      border-radius: 1rem;
    }
    .map-shot { width: 100%; border-radius: .5rem; }
    .site-footer { background: var(--ink); color: rgba(255,255,255,.82); }
    .site-footer a { color: #fff; text-decoration: none; }
    .reveal,
    .reveal-stagger > * {
      opacity: 0;
      transform: translateY(22px);
      transition: opacity .75s ease, transform .75s ease;
    }
    .reveal.is-in,
    .reveal-stagger.is-in > * {
      opacity: 1;
      transform: none;
    }
    .reveal-stagger.is-in > *:nth-child(2) { transition-delay: .08s; }
    .reveal-stagger.is-in > *:nth-child(3) { transition-delay: .16s; }
    .reveal-stagger.is-in > *:nth-child(4) { transition-delay: .24s; }
    .reveal-stagger.is-in > *:nth-child(5) { transition-delay: .32s; }
    .reveal-stagger.is-in > *:nth-child(6) { transition-delay: .4s; }
    .reveal-stagger.is-in > *:nth-child(7) { transition-delay: .48s; }
    .reveal-stagger.is-in > *:nth-child(8) { transition-delay: .56s; }
    .cta-dock {
      position: fixed;
      right: 16px;
      bottom: 16px;
      z-index: 1030;
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      gap: 10px;
    }
    .cta-project {
      margin: 0;
      padding: 6px 12px;
      border-radius: 999px;
      background: #fff;
      color: #32352f;
      font-size: 0.78rem;
      font-weight: 600;
      box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16);
    }
    .cta-dock a {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      min-height: 48px;
      padding: 0 16px 0 14px;
      border-radius: 999px;
      color: #fff;
      text-decoration: none;
      font-weight: 600;
      font-size: 0.95rem;
      line-height: 1;
      box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
    }
    .cta-dock svg { width: 20px; height: 20px; flex: none; }
    .cta-call { background: #32352f; }
    .cta-call:hover { background: #1f211d; color: #fff; }
    .cta-wa { background: #25d366; }
    .cta-wa:hover { background: #1ebe5d; color: #fff; }
    .scroll-top {
      position: fixed;
      left: 16px;
      right: auto;
      bottom: 0;
      z-index: 1040;
      width: 52px;
      height: 52px;
      border: 0;
      border-radius: 50%;
      background: #32352f;
      color: #fff;
      opacity: 0;
      visibility: hidden;
      transition: opacity .5s ease, bottom .5s ease, visibility .5s ease;
    }
    .scroll-top.is-active {
      opacity: 1;
      visibility: visible;
      bottom: 22px;
    }
    .scroll-top svg { width: 1.15rem; height: 1.15rem; }
    @keyframes heroKenBurns {
      0% { transform: scale(1) translate(0, 0); }
      100% { transform: scale(1.1) translate(-2%, -2%); }
    }
    @keyframes heroMarkIn {
      from { opacity: 0; transform: translateX(-50%) translateY(18px); }
      to { opacity: 1; transform: translateX(-50%) translateY(0); }
    }
    @keyframes pulseInk {
      0% { box-shadow: 0 0 0 0 rgba(50, 53, 47, .35); }
      70% { box-shadow: 0 0 0 16px rgba(50, 53, 47, 0); }
      100% { box-shadow: 0 0 0 0 rgba(50, 53, 47, 0); }
    }
    @keyframes pulseWhite {
      0% { box-shadow: 0 0 0 0 rgba(255, 255, 255, .45); }
      70% { box-shadow: 0 0 0 16px rgba(255, 255, 255, 0); }
      100% { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); }
    }
    .btn-pill:hover { animation: pulseInk 1s ease-in-out; }
    .btn-light.btn-pill:hover,
    .btn-outline-light.btn-pill:hover { animation-name: pulseWhite; }
    @media (prefers-reduced-motion: no-preference) and (min-width: 992px) {
      .hero-carousel .carousel-item img {
        animation: heroKenBurns 28s ease-in-out infinite alternate;
      }
      .hero-mark { animation: heroMarkIn 1.1s ease both; }
    }
    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior: auto; }
      .reveal,
      .reveal-stagger > *,
      .hero-mark,
      .hero-carousel .carousel-item img {
        opacity: 1;
        transform: none;
        animation: none;
        transition: none;
      }
      .hero-mark { transform: translateX(-50%); }
    }
    @media (max-width: 767.98px) {
      .hero-carousel,
      .hero-carousel .carousel-item,
      .hero-carousel .carousel-item img { height: 100svh; }
      .video-frame video { height: 16rem; }
      .amenity-slide { height: 18rem; }
      .gallery-slide { flex-basis: 100cqw; width: 100cqw; }
      .gallery-slide img { height: 24rem; min-height: 0; }
    }
    .about-dev {
      background: #d6cbbc;
      padding: 90px 0;
      color: #555855;
    }
    .about-dev .about-dev-kicker {
      max-width: none;
      font-family: "Apoc Trial 2", Georgia, serif;
      font-size: 15px;
      line-height: 18px;
      font-weight: 600;
      letter-spacing: .03em;
      text-transform: uppercase;
      color: #222;
      margin-bottom: 15px;
    }
    .about-dev h2,
    .about-dev h3 {
      font-family: "Apoc Trial 2", Georgia, serif;
      font-weight: 400;
      color: #000;
      letter-spacing: -.02em;
    }
    .about-dev h2 {
      font-size: 35px;
      line-height: 45px;
      max-width: 16em;
      margin: 0 0 15px;
    }
    .about-dev h3 {
      font-size: 26px;
      line-height: 36px;
      margin: 18px 0 10px;
    }
    .about-dev p {
      max-width: 460px;
      font-size: 18px;
      line-height: 30px;
      color: #555855;
      margin-bottom: 0;
    }
    .about-dev-portrait,
    .about-dev-side {
      width: 100%;
      display: block;
      object-fit: cover;
    }
    .about-dev-lower { margin-top: 30px; }
    .about-dev-stats {
      background: #32352f;
      color: #fff;
      border-radius: 10px;
      padding: 35px 28px;
      height: 100%;
      display: grid;
      grid-template-columns: repeat(5, minmax(0, 1fr));
      gap: 16px;
      align-items: start;
    }
    .about-dev-stat strong {
      display: block;
      font-family: "Open Sans", Georgia, sans-serif;
      font-size: 50px;
      line-height: 1.1;
      font-weight: 400;
      color: #fff;
    }
    .about-dev-stat span {
      display: block;
      margin-top: 8px;
      font-family: "Apoc Trial 2", Georgia, serif;
      font-size: 16px;
      line-height: 1.3;
      color: #fff;
    }
    @media (min-width: 992px) {
      .about-dev-photo { position: relative; }
      .about-dev-side {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: calc(100% + 200px);
        margin: 0;
        object-fit: cover;
      }
    }
    @media (max-width: 991.98px) {
      .about-dev { padding: 75px 0; }
      .about-dev p,
      .about-dev h2 { max-width: none; }
      .about-dev-portrait { height: 420px; }
      .about-dev-side { height: 330px; object-position: top center; }
      .about-dev-stats { grid-template-columns: 1fr 1fr; }
    }
    .talk-home {
      position: relative;
      background: #32352f;
      padding: 0 0 5rem;
    }
    .talk-home::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 45%;
      background: #d6cbbc;
    }
    .talk-home-card {
      position: relative;
      z-index: 1;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 2rem;
      background: #1e1e1e;
      border-radius: 20px;
      padding: 70px 55px;
    }
    .talk-home h2 {
      margin: 0;
      color: #fff;
      font-family: "Apoc Trial 2", Georgia, serif;
      font-size: 45px;
      line-height: 1.15;
      font-weight: 400;
    }
    .talk-home h2 span {
      color: #ff9648;
      font-style: italic;
    }
    .talk-home-phone {
      display: inline-flex;
      align-items: center;
      gap: .7rem;
      color: #fff;
      font-family: "Open Sans", Georgia, sans-serif;
      font-size: 30px;
      line-height: 1.2;
      text-decoration: none;
      white-space: nowrap;
    }
    .talk-home-phone svg { width: 1.6rem; height: 1.6rem; flex: none; }
    .loc-body {
   
    color: white;
}
    @media (max-width: 991.98px) {
      .talk-home-card {
        flex-direction: column;
        text-align: center;
        padding: 48px 20px;
      }
      .talk-home h2 { font-size: 32px; }
      .talk-home-phone { font-size: 22px; white-space: normal; }
    }

.section-ink { background: #32352f; }
.section-cream { background: #f1ebe2; }
.section-sand { background: #d6cbbc; }
.nav-luxury .navbar-toggler-icon { filter: invert(1); }
.footer-logo { width: 9rem; }
.amenity-slide.amenity-basketball { background-image: url("../images/13.webp"); }
.amenity-slide.amenity-club { background-image: url("../images/Club-House.webp"); }
.amenity-slide.amenity-play { background-image: url("../images/11.webp"); }
.amenity-slide.amenity-pool { background-image: url("../images/15.webp"); }
.amenity-slide.amenity-aerobics { background-image: url("../images/AerobicsZumba-Room.webp"); }
.amenity-slide.amenity-badminton { background-image: url("../images/Badminton.webp"); }
.amenity-slide.amenity-cricket { background-image: url("../images/Cricket-Nets.webp"); }
.amenity-slide.amenity-gym { background-image: url("../images/Gym.webp"); }
.amenity-slide.amenity-pickleball { background-image: url("../images/PickleBall-Court.webp"); }
.amenity-slide.amenity-banquet { background-image: url("../images/Banquet-Hall.webp"); }
.amenity-slide.amenity-guest { background-image: url("../images/Guest-Rooms.webp"); }
.amenity-slide.amenity-indoor { background-image: url("../images/Indoor-Games.webp"); }
.amenity-slide.amenity-sauna { background-image: url("../images/Sauna.webp"); }
.amenity-slide.amenity-snooker { background-image: url("../images/Snooker-Table.webp"); }
.form-card .invalid-feedback,
.brochure-modal .invalid-feedback { color: #ffd7b0; }
.brochure-modal {
  background: #32352f;
  color: #fff;
  border: 0;
  border-radius: 1rem;
}
.brochure-modal .modal-header,
.brochure-modal .modal-footer { border: 0; }
.brochure-modal .form-control {
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(255,255,255,.45);
  border-radius: 0;
  color: #fff;
  padding-left: 0;
}
.brochure-modal .form-control::placeholder { color: rgba(255,255,255,.75); }
.brochure-modal .form-control:focus {
  background: transparent;
  color: #fff;
  box-shadow: none;
  border-color: #fff;
}
.nav-solid { background: #32352f; }
.legal-wrap { max-width: 860px; }
.legal-page { background: #f7f4ef; color: #32352f; padding: 7rem 0 4rem; }
.legal-page h1 { font-family: "Apoc Trial 2", Georgia, serif; font-size: clamp(2.2rem, 4vw, 3.4rem); margin-bottom: 1rem; }
.legal-page h2 { font-family: "Apoc Trial 2", Georgia, serif; font-size: 1.45rem; margin: 1.6rem 0 .6rem; }
.legal-page p, .legal-page li { font-size: 1.02rem; line-height: 1.75; color: #555855; }
.legal-page a { color: #32352f; }
.viewer {
  position: fixed;
  inset: 0;
  z-index: 1080;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 4.5rem 4.5rem 3.5rem;
  background: rgba(18, 18, 16, .9);
}
.viewer.is-open { display: flex; }
.viewer figure { margin: 0; max-width: 100%; }
.viewer img {
  max-width: 100%;
  max-height: calc(100vh - 8rem);
  object-fit: contain;
  border-radius: .35rem;
  background: #fff;
}
.viewer figcaption {
  margin-top: .75rem;
  text-align: center;
  color: #f7f4ef;
  font-size: .95rem;
}
.viewer-close,
.viewer-nav {
  position: absolute;
  border: 0;
  background: transparent;
  color: #fff;
  line-height: 1;
}
.viewer-close {
  top: 1rem;
  right: 1rem;
  font-size: 2.4rem;
  width: 3rem;
  height: 3rem;
}
.viewer-nav {
  top: 50%;
  transform: translateY(-50%);
  width: 3rem;
  height: 3rem;
  font-size: 2.6rem;
}
.viewer-prev { left: .6rem; }
.viewer-next { right: .6rem; }
@media (max-width: 767.98px) {
  .viewer { padding: 4rem 2.6rem 3rem; }
}
