:root{
  --lux-bg:#071913;
  --lux-surface:rgba(12,32,24,.68);
  --lux-surface-2:rgba(255,255,255,.06);
  --lux-stroke:rgba(247,241,227,.14);
  --lux-text:#f7f1e3;
  --lux-muted:rgba(247,241,227,.72);
  --lux-gold:#b08d57;
  --lux-gold-2:#d6b97a;
  --lux-shadow:0 18px 50px rgba(2,9,6,.58);
  --lux-shadow-soft:0 14px 40px rgba(2,12,8,.40);
  --lux-radius:18px;
  --lux-radius-lg:26px;
  --lux-font:"Manrope",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  --lux-serif:"Playfair Display",Georgia,serif;
}

html{scroll-behavior:smooth}
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%; overflow-x:hidden}
body.theme-lux{
  font-family:var(--lux-font);
  background:radial-gradient(1200px 700px at 80% -10%, rgba(176,141,87,.20), transparent 60%),
             radial-gradient(1000px 600px at 10% 10%, rgba(72,156,128,.22), transparent 62%),
             radial-gradient(900px 520px at 50% 120%, rgba(18,66,48,.30), transparent 64%),
             var(--lux-bg);
  color:var(--lux-text);
  overflow-x:hidden;
}

a{color:inherit}
.link-gold{color:var(--lux-gold); text-decoration:none}
.link-gold:hover{color:var(--lux-gold-2)}

.btn-gold{
  --bs-btn-color:#0b0b0f;
  --bs-btn-bg:linear-gradient(135deg,var(--lux-gold),var(--lux-gold-2));
  --bs-btn-border-color:transparent;
  --bs-btn-hover-color:#0b0b0f;
  --bs-btn-hover-bg:linear-gradient(135deg,var(--lux-gold-2),var(--lux-gold));
  --bs-btn-hover-border-color:transparent;
  --bs-btn-active-bg:linear-gradient(135deg,var(--lux-gold-2),var(--lux-gold));
  box-shadow:0 16px 40px rgba(176,141,87,.20);
}
.btn.btn-gold{
  background-image:linear-gradient(135deg,var(--lux-gold),var(--lux-gold-2));
  background-color:var(--lux-gold);
  border-color:transparent;
  color:#0b0b0f;
}
.btn.btn-gold:hover{
  background-image:linear-gradient(135deg,var(--lux-gold-2),var(--lux-gold));
  background-color:var(--lux-gold-2);
  border-color:transparent;
  color:#0b0b0f;
}
.btn.btn-gold:focus-visible{
  box-shadow:0 0 0 .25rem rgba(176,141,87,.22), 0 16px 40px rgba(176,141,87,.20);
}
.btn.btn-gold:disabled,
.btn.btn-gold.disabled{
  opacity:1;
  background-image:none;
  background-color:rgba(255,255,255,.16);
  border-color:rgba(255,255,255,.16);
  color:rgba(255,255,255,.65);
}
.btn-outline-gold{
  --bs-btn-color:var(--lux-gold);
  --bs-btn-border-color:rgba(176,141,87,.55);
  --bs-btn-hover-color:#0b0b0f;
  --bs-btn-hover-bg:linear-gradient(135deg,var(--lux-gold),var(--lux-gold-2));
  --bs-btn-hover-border-color:transparent;
}

.section-pad{padding:84px 0}
@media (max-width: 991.98px){.section-pad{padding:64px 0}}

.section-light{
  background:#ffffff;
  color:#0b0b0f;
  position:relative;
}
.section-light::before{
  content:"";
  position:absolute;
  inset:-1px 0 auto 0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(0,0,0,.12), transparent);
}
.section-light::after{
  content:"";
  position:absolute;
  inset:auto 0 -1px 0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(0,0,0,.10), transparent);
}
.section-light .section-kicker{color:rgba(10,12,18,.62)}
.section-light .section-title{color:#0b0b0f}
.section-light .section-sub{color:rgba(10,12,18,.68)}
.section-light .badge.text-bg-dark{background:#0b0b0f !important}

.about-clean__title{
  font-family:var(--lux-serif);
  font-weight:600;
  letter-spacing:.01em;
  line-height:1.06;
  font-size:clamp(2rem, 3.4vw, 3rem);
  margin:0;
}
.about-clean__loc{
  display:flex;
  align-items:center;
  gap:12px;
  color:#2b6cb0;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
  font-size:.78rem;
  margin-top:.9rem;
}
.about-clean__loc::after{
  content:"";
  height:2px;
  width:120px;
  background:#2b6cb0;
  opacity:.55;
}
.about-clean__desc{
  color:rgba(10,12,18,.72);
  max-width:68ch;
  margin-top:1.1rem;
}
.about-clean__imgwrap{
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.10);
  box-shadow:0 24px 60px rgba(0,0,0,.20);
  background:#f5f6fb;
}
.about-clean__imgwrap img{
  width:100%;
  height:auto;
  display:block;
}
.about-clean__meta{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  margin-top:1.25rem;
}
.about-clean__chip{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  padding:.55rem .85rem;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.12);
  background:rgba(255,255,255,.75);
  color:rgba(10,12,18,.82);
  font-weight:750;
}
.about-clean__chip i{color:#2b6cb0}

.highlights-section{
  background:
    radial-gradient(900px 520px at 25% 20%, rgba(72,156,128,.20), transparent 62%),
    radial-gradient(860px 520px at 75% 40%, rgba(176,141,87,.14), transparent 60%),
    linear-gradient(180deg, rgba(7,25,19,0), rgba(7,25,19,.35));
}
.highlights-panel{
  position:relative;
  background:#ffffff;
  border-radius:28px;
  border:1px solid rgba(0,0,0,.10);
  box-shadow:0 26px 70px rgba(0,0,0,.30);
  padding:60px 34px 34px;
  overflow:hidden;
}
@media (max-width: 575.98px){.highlights-panel{padding:56px 18px 20px}}
.highlights-panel--full{
  width:100%;
  border-radius:0;
  border-left:0;
  border-right:0;
  padding-left:clamp(16px, 4vw, 68px);
  padding-right:clamp(16px, 4vw, 68px);
  padding-top:72px;
  padding-bottom:44px;
}
.highlights-inner{
  max-width:1180px;
  margin:0 auto;
}
.highlights-panel--full .highlights-grid{gap:22px 60px; margin-top:34px}
.highlights-panel--full .hl-ico{width:56px; height:56px}
.highlights-panel--full .hl-text{font-size:.86rem}
.highlights-panel::before{
  content:"";
  position:absolute;
  inset:-220px -120px auto auto;
  width:520px;
  height:520px;
  background:radial-gradient(circle at 30% 30%, rgba(43,108,176,.22), rgba(43,108,176,0) 62%);
  transform:rotate(18deg);
}
.highlights-pill{
  position:absolute;
  top:16px;
  left:50%;
  transform:translateX(-50%);
  background:#0b1b33;
  color:#ffffff;
  padding:.55rem 1.15rem;
  border-radius:999px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-size:.75rem;
}
.highlights-head{
  position:relative;
  text-align:center;
  color:#0b1b33;
}
.highlights-head__title{
  font-family:var(--lux-serif);
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:1.15rem;
  margin:0;
}
.highlights-head__sub{
  font-family:var(--lux-serif);
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  font-size:1.05rem;
  margin-top:.35rem;
}
.highlights-grid{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px 44px;
  margin-top:28px;
}
@media (max-width: 991.98px){.highlights-grid{grid-template-columns:1fr}}
.hl-item{
  display:flex;
  gap:14px;
  align-items:flex-start;
}
.hl-ico{
  width:52px;
  height:52px;
  border-radius:16px;
  border:1px solid rgba(11,27,51,.16);
  background:linear-gradient(180deg, rgba(11,27,51,.04), rgba(11,27,51,.01));
  display:grid;
  place-items:center;
  color:#0b1b33;
  flex:0 0 auto;
}
.hl-ico i{font-size:1.25rem}
.hl-text{
  color:#0b1b33;
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
  font-size:.82rem;
  line-height:1.25;
  margin-top:.2rem;
}

.amenities-showcase{
  background:
    radial-gradient(1000px 560px at 25% 20%, rgba(72,156,128,.18), transparent 62%),
    radial-gradient(980px 560px at 75% 45%, rgba(176,141,87,.16), transparent 60%),
    linear-gradient(180deg, rgba(7,25,19,.10), rgba(7,25,19,.45));
}
.amenities-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}
@media (min-width: 992px){
  .amenities-grid{
    grid-template-columns:1fr 1fr 1fr;
    grid-template-rows:repeat(3, 190px);
    gap:14px;
  }
}
.amenities-photo{
  border-radius:22px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  box-shadow:0 18px 46px rgba(0,0,0,.38);
  position:relative;
}
.amenities-photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.02);
  transition:transform .35s ease;
}
.amenities-photo::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0), rgba(0,0,0,.35));
  opacity:.75;
}
.amenities-photo:hover img{transform:scale(1.07)}

.amenities-card{
  border-radius:22px;
  border:1px solid rgba(176,141,87,.45);
  background:linear-gradient(180deg, rgba(214,185,122,.98), rgba(176,141,87,.92));
  box-shadow:0 22px 60px rgba(176,141,87,.18);
  color:#0b0b0f;
  padding:20px 18px;
  position:relative;
  overflow:hidden;
}
@media (min-width: 992px){
  .amenities-card{
    grid-column:2;
    grid-row:2 / span 2;
    padding:22px 22px;
  }
}
.amenities-card::before{
  content:"";
  position:absolute;
  inset:-80px -80px auto auto;
  width:240px;
  height:240px;
  background:radial-gradient(circle at 30% 30%, rgba(255,255,255,.55), rgba(255,255,255,0) 62%);
  transform:rotate(20deg);
}
.amenities-card__inner{position:relative}
.amenities-card__title{
  font-family:var(--lux-serif);
  font-weight:800;
  text-align:center;
  margin:0;
  font-size:1.55rem;
}
.amenities-card__crown{
  display:flex;
  align-items:center;
  justify-content:center;
  margin:.25rem 0 .65rem;
  color:rgba(11,11,15,.82);
}
.amenities-card__list{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:.45rem;
}
.amenities-card__list li{
  display:flex;
  gap:.55rem;
  align-items:flex-start;
  font-weight:800;
  color:rgba(11,11,15,.86);
}
.amenities-card__list i{
  margin-top:.2rem;
  color:rgba(11,11,15,.70);
}

.page-hero{
  padding-top:128px;
  padding-bottom:44px;
}
.page-hero .crumb{
  color:var(--lux-muted);
}
.page-hero .crumb a{
  color:rgba(255,255,255,.78);
  text-decoration:none;
}
.page-hero .crumb a:hover{color:var(--lux-gold-2)}

.section-kicker{
  color:var(--lux-gold);
  letter-spacing:.22em;
  text-transform:uppercase;
  font-size:.78rem;
  margin-bottom:.5rem;
}
.section-title{
  font-family:var(--lux-serif);
  font-weight:600;
  letter-spacing:.01em;
  line-height:1.14;
  margin:0 0 1rem 0;
}
.section-sub{
  color:var(--lux-muted);
  max-width:62ch;
}

.glass{
  background:var(--lux-surface);
  border:1px solid var(--lux-stroke);
  border-radius:var(--lux-radius);
  box-shadow:var(--lux-shadow-soft);
  backdrop-filter: blur(14px);
}
.glass:hover{
  border-color:rgba(176,141,87,.35);
}

.site-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:1030;
  transition:background .25s ease, transform .25s ease, border-color .25s ease;
  background:transparent;
}
.site-header.is-sticky{
  background:rgba(7,25,19,.82);
  border-bottom:1px solid rgba(255,255,255,.10);
  backdrop-filter: blur(14px);
}
.site-header--light{
  background:rgba(255,255,255,.96);
  border-bottom:1px solid rgba(0,0,0,.08);
  backdrop-filter: blur(12px);
}
.site-header--light.is-sticky{
  background:rgba(255,255,255,.98);
  border-bottom:1px solid rgba(0,0,0,.10);
  box-shadow:0 18px 44px rgba(0,0,0,.22);
}
.site-header--light .navbar-brand .brand-name{color:rgba(10,12,18,.98)}
.site-header--light .navbar-brand .brand-sub{color:rgba(16,18,24,.58)}
.site-header--light .navbar-nav .nav-link{
  color:rgba(10,12,18,.78);
  font-weight:700;
  letter-spacing:.02em;
}
.site-header--light .navbar-nav .nav-link:hover{color:rgba(10,12,18,.96)}
.site-header--light .navbar-nav .nav-link.active{
  color:rgba(10,12,18,.98);
  position:relative;
}
.site-header--light .navbar-nav .nav-link.active::after{
  content:"";
  position:absolute;
  left:.5rem;
  right:.5rem;
  bottom:.3rem;
  height:2px;
  border-radius:2px;
  background:linear-gradient(90deg,var(--lux-gold),var(--lux-gold-2));
}
.site-header--light .offcanvas.text-bg-dark .nav-link{
  color:rgba(255,255,255,.82);
}
.site-header--light .offcanvas.text-bg-dark .nav-link:hover{color:#fff}
.site-header--light .offcanvas.text-bg-dark .nav-link.active{
  color:#fff;
}
.site-header--light .offcanvas .header-phone{color:rgba(255,255,255,.92)}
.site-header--light .offcanvas .header-phone i{color:rgba(255,255,255,.70)}
.header-phone{
  display:flex;
  align-items:center;
  gap:.55rem;
  color:rgba(10,12,18,.88);
  text-decoration:none;
  font-weight:800;
}
.header-phone i{color:rgba(10,12,18,.62)}
.site-header--light .navbar-toggler{
  border:1px solid rgba(0,0,0,.14);
  border-radius:12px;
  padding:.45rem .55rem;
  background:rgba(255,255,255,.92);
}
.site-header--light .navbar-toggler:focus{box-shadow:0 0 0 .2rem rgba(176,141,87,.22)}
.site-header--light .navbar-toggler-icon{
  width:1.35em;
  height:1.35em;
  background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(10,12,18,0.85)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2.3' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-brand{
  display:inline-flex;
  align-items:center;
  max-width:min(260px, calc(100% - 72px));
}
.navbar-brand .brand-logo{
  display:block;
  width:auto;
  max-width:100%;
  height:52px;
  object-fit:contain;
}
@media (max-width: 767.98px){
  .navbar-brand{
    max-width:min(220px, calc(100% - 72px));
  }
  .navbar-brand .brand-logo{
    height:42px;
  }
}
.offcanvas.text-bg-dark{background:#071913}
.offcanvas.offcanvas-end{--bs-offcanvas-width:min(92vw, 420px)}
.site-header--light .offcanvas .offcanvas-body{
  padding-top:12px;
  overflow-y:auto;
}
.site-header--light .offcanvas .navbar-nav{
  display:flex !important;
  flex-direction:column;
  gap:4px;
}
.site-header--light .offcanvas .navbar-nav .nav-link{
  display:block;
  padding:.85rem .25rem;
  border-bottom:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.90) !important;
  font-weight:800;
  letter-spacing:.02em;
}
.site-header--light .offcanvas .navbar-nav .nav-link.active::after{display:none}

.header-actions .btn{border-radius:999px}

.scroll-progress{
  position:fixed;
  top:0;
  left:0;
  right:0;
  height:2px;
  z-index:2000;
  background:rgba(255,255,255,.08);
}
.scroll-progress__bar{
  display:block;
  height:100%;
  width:0%;
  background:linear-gradient(90deg, rgba(176,141,87,.85), rgba(72,156,128,.85));
  box-shadow:0 0 24px rgba(176,141,87,.35);
}

.particles{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.55;
}

main{position:relative; z-index:1}

.hero{
  min-height:100svh;
  position:relative;
  display:flex;
  align-items:stretch;
  justify-content:center;
  padding-top:92px;
  padding-bottom:36px;
  --heroImgShift: 42px;
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(900px 500px at 15% 20%, rgba(176,141,87,.10), transparent 62%),
    linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.02) 42%, rgba(0,0,0,.12));
  z-index:1;
}
.hero__bg{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(7,25,19,.18), rgba(7,25,19,.92));
  background-color:#071913;
  z-index:0;
  overflow:hidden;
  isolation:isolate;
}
.hero__bg::before{
  content:"";
  position:absolute;
  inset:-26px;
  background-image:var(--hero-cover, none);
  background-size:cover;
  background-position:center;
  filter:blur(8px) saturate(1.02) contrast(1.02);
  transform:scale(1.10);
  opacity:.18;
  z-index:0;
}
.hero__bgImg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center calc(50% + var(--heroImgShift, 42px));
  display:block;
  transform:translateZ(0);
  z-index:1;
}
.hero--showcase::before{
  background:
    radial-gradient(900px 520px at 18% 18%, rgba(72,156,128,.12), transparent 62%),
    radial-gradient(780px 440px at 74% 32%, rgba(176,141,87,.10), transparent 60%),
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.02) 48%, rgba(0,0,0,.10));
}
.hero--showcase .hero__bg{
  background:
    linear-gradient(90deg, rgba(7,25,19,.86), rgba(7,25,19,.50) 46%, rgba(7,25,19,.16)),
    radial-gradient(1000px 560px at 70% 40%, rgba(72,156,128,.30), rgba(7,25,19,0) 60%);
  background-color:#071913;
}
.hero--showcase{
  --hero-cover:url("../images/samyak108.jpg");
}
.hero--showcase .hero__bgImg{
  filter:saturate(1.04) contrast(1.06);
}

.hero .js-hero-kicker,
.hero .js-hero-title,
.hero .js-hero-lead,
.hero .js-hero-cta,
.hero .js-hero-side{
  opacity:1 !important;
}

.hero [data-aos]{
  opacity:1 !important;
  transform:none !important;
  transition:none !important;
}

@media (max-width: 767.98px){
  .hero{
    --heroImgShift: 0px;
    min-height:auto;
    flex-direction:column;
    align-items:stretch;
    padding-top:78px;
    padding-bottom:22px;
  }
  .hero .row{--bs-gutter-y:.75rem}
  .hero .container{padding-top:8px; padding-bottom:0}
  .hero .col-lg-7{
    background:transparent;
    border:0;
    border-radius:0;
    padding:0;
    backdrop-filter:none;
  }
  .hero .hero-side{min-height:auto}
  .hero .hero-featurebox{margin-top:14px !important}
  .hero::before{display:none}
  .hero__bg{
    position:relative;
    inset:auto;
    height:auto;
    margin:0;
    border-radius:0;
    background:transparent;
  }
  .hero__bg::before{display:none}
  .hero__bgImg{
    position:relative;
    inset:auto;
    width:100%;
    height:auto;
    object-fit:unset;
    object-position:center;
    display:block;
  }
  .hero--showcase::before{
    background:
      radial-gradient(900px 520px at 18% 18%, rgba(72,156,128,.08), transparent 62%),
      radial-gradient(780px 440px at 74% 32%, rgba(176,141,87,.06), transparent 60%),
      linear-gradient(180deg, rgba(0,0,0,.06), rgba(0,0,0,.01) 50%, rgba(0,0,0,.08));
  }
}

@media (max-width: 767.98px){
  #about.section-pad{padding:48px 0}
  #about .row{--bs-gutter-y:1rem}
  .about-clean__loc{margin-top:.55rem}
  .about-clean__desc{margin-top:.85rem}
  .about-clean__meta{margin-top:.95rem; gap:10px}
}
.hero-tagline{
  font-weight:800;
  font-size:clamp(1.05rem, 1.35vw, 1.3rem);
  color:rgba(255,255,255,.90);
}
.price-strip{
  display:inline-flex;
  align-items:center;
  gap:10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.22);
  overflow:hidden;
}
.price-strip__label{
  padding:.55rem .8rem;
  font-weight:800;
  color:rgba(255,255,255,.82);
}
.price-strip__value{
  padding:.55rem .9rem;
  background:linear-gradient(135deg, rgba(176,141,87,.92), rgba(255,255,255,.10));
  color:#0b0b0f;
  font-weight:900;
  letter-spacing:.01em;
}
.hero-featurebox{
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.18);
}
.hero-featurebox li{
  display:flex;
  gap:.6rem;
  align-items:flex-start;
  color:rgba(255,255,255,.82);
  font-weight:650;
}
.hero-featurebox i{color:rgba(255,255,255,.76); margin-top:.2rem}
.hero-side{
  border-radius:22px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.18);
  min-height:320px;
  position:relative;
  overflow:hidden;
}
.hero-side::before{
  content:"";
  position:absolute;
  inset:-40px;
  background:
    radial-gradient(380px 260px at 20% 20%, rgba(255,255,255,.10), transparent 65%),
    radial-gradient(420px 300px at 80% 35%, rgba(72,156,128,.18), transparent 60%);
  transform:rotate(10deg);
}
.hero-side__inner{position:relative}
.hero-side__pill{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.45rem .8rem;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.25);
  color:rgba(255,255,255,.86);
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-size:.75rem;
}
.hero-side__title{
  font-family:var(--lux-serif);
  font-weight:700;
  letter-spacing:.02em;
}
.text-gold{color:var(--lux-gold-2)}
.hero .container{position:relative; z-index:2}
.hero h1{
  font-family:var(--lux-serif);
  font-weight:700;
  letter-spacing:.01em;
  font-size:clamp(2rem, 4.2vw, 3.65rem);
  line-height:1.05;
}
.hero p.lead{color:rgba(255,255,255,.78); max-width:56ch}
.hero-badges{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin:1.4rem 0 1.65rem;
}
.badge-card{
  padding:.85rem .95rem;
  border-radius:16px;
  min-width:172px;
}
.badge-card .k{color:rgba(255,255,255,.65); font-size:.75rem; letter-spacing:.12em; text-transform:uppercase}
.badge-card .v{font-weight:700}

.hero-cta .btn{border-radius:999px; padding:.9rem 1.15rem}

@media (max-width: 767.98px){
  .hero h1{font-size:clamp(1.75rem, 7vw, 2.35rem); line-height:1.12}
  .hero-tagline{font-size:1rem; margin-top:.6rem !important}
  .hero .hero-cta{margin-top:.65rem !important}
  .hero .hero-cta .btn.btn-lg{padding:.75rem 1rem}
  .hero .price-strip__label{padding:.45rem .7rem}
  .hero .price-strip__value{padding:.45rem .75rem}
  .hero .hero-featurebox{padding:14px !important; margin-top:12px !important}
  .hero .hero-side{padding:14px !important}
  .hero .hero-side hr{margin:1rem 0 !important}
  .hero .hero-side__title{font-size:1.4rem}
}

.hero-form{
  position:relative;
  border-radius:var(--lux-radius-lg);
  padding:1.15rem;
}
.hero-form .form-control,
.hero-form .form-select{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  color:var(--lux-text);
}
.hero-form .form-control:focus,
.hero-form .form-select:focus{
  border-color:rgba(176,141,87,.55);
  box-shadow:0 0 0 .25rem rgba(176,141,87,.14);
}
.hero-form label{color:rgba(255,255,255,.70); font-size:.86rem}

.split-collage{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:14px;
}
.split-collage img{
  width:100%;
  border-radius:var(--lux-radius);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:var(--lux-shadow-soft);
}
.split-collage img:nth-child(2){transform:translateY(18px)}

.counter{
  padding:18px;
  border-radius:18px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.10);
}
.counter .num{
  font-family:var(--lux-serif);
  font-size:2rem;
  color:var(--lux-gold-2);
}
.counter .lbl{color:var(--lux-muted); font-size:.95rem}

.card-premium{
  border-radius:var(--lux-radius);
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:var(--lux-shadow-soft);
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease;
  height:100%;
}
.card-premium:hover{
  transform:translateY(-6px);
  border-color:rgba(176,141,87,.35);
  box-shadow:0 26px 60px rgba(0,0,0,.55);
}
.card-premium .icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:linear-gradient(135deg, rgba(176,141,87,.25), rgba(255,255,255,.06));
  border:1px solid rgba(176,141,87,.25);
  color:var(--lux-gold-2);
}

.amenity-tile{
  position:relative;
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  min-height:160px;
  box-shadow:var(--lux-shadow-soft);
  transition:transform .25s ease, border-color .25s ease;
}
.amenity-tile::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(400px 240px at 30% 30%, rgba(176,141,87,.16), transparent 60%);
  opacity:0;
  transition:opacity .25s ease;
}
.amenity-tile:hover{transform:translateY(-6px); border-color:rgba(176,141,87,.35)}
.amenity-tile:hover::before{opacity:1}
.amenity-tile .amenity-body{position:relative; padding:18px}
.amenity-tile .amenity-ico{color:var(--lux-gold-2); font-size:1.2rem}
.amenity-tile .amenity-name{font-weight:700; margin-top:.55rem}
.amenity-tile .amenity-sub{color:var(--lux-muted); font-size:.95rem}

.plan-card img{width:100%; border-radius:18px; border:1px solid rgba(255,255,255,.10)}
.plan-meta{color:var(--lux-muted); font-size:.95rem}

.floor-clean{
  background:#eaf2f4;
}
.floor-clean__kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.72rem;
  color:#2b6cb0;
}
.floor-clean__line{
  width:64px;
  height:2px;
  background:rgba(43,108,176,.55);
  border-radius:999px;
}
.floor-clean__title{
  font-family:var(--lux-serif);
  font-weight:700;
  letter-spacing:.01em;
  font-size:clamp(2.1rem, 4vw, 3rem);
  margin:.55rem 0 0;
  color:#0b0b0f;
}
.floor-clean__sub{
  max-width:860px;
  margin:.7rem auto 0;
  color:rgba(10,12,18,.66);
  font-size:1.02rem;
  line-height:1.65;
}
.floor-card{
  position:relative;
  background:#ffffff;
  border:1px solid rgba(10,12,18,.08);
  border-radius:14px;
  box-shadow:0 18px 44px rgba(0,0,0,.10);
  padding:14px 14px 16px;
  height:100%;
  overflow:hidden;
}
.floor-card__tag{
  position:absolute;
  top:12px;
  left:12px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:.65rem;
  color:rgba(10,12,18,.45);
}
.floor-card__media{
  border-radius:10px;
  border:1px solid rgba(10,12,18,.08);
  background:linear-gradient(180deg, rgba(234,242,244,1), rgba(255,255,255,1));
  padding:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:170px;
}
.floor-card__media img{
  max-width:100%;
  max-height:170px;
  width:auto;
  height:auto;
  display:block;
}
.floor-card__title{
  margin:14px 0 0;
  font-family:var(--lux-serif);
  font-weight:700;
  color:#0b0b0f;
  font-size:1.15rem;
  text-align:center;
}
.floor-card__meta{
  margin:.35rem 0 0;
  color:rgba(10,12,18,.70);
  font-weight:600;
  font-size:.92rem;
  text-align:center;
}
.floor-card__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:fit-content;
  margin:12px auto 0;
  padding:.6rem .95rem;
  border-radius:999px;
  background:#0b4a7a;
  color:#ffffff;
  font-weight:800;
  font-size:.86rem;
  text-decoration:none;
  box-shadow:0 12px 28px rgba(11,74,122,.22);
  transition:transform .25s ease, background-color .25s ease, box-shadow .25s ease;
}
.floor-card__btn:hover{
  background:#083b62;
  transform:translateY(-2px);
  color:#ffffff;
  box-shadow:0 16px 34px rgba(11,74,122,.26);
}
.floor-card:hover{border-color:rgba(43,108,176,.22)}

.price-card{
  border-radius:24px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  box-shadow:var(--lux-shadow-soft);
  overflow:hidden;
  height:100%;
}
.price-card .badge-offer{
  position:absolute;
  top:14px;
  right:14px;
  background:linear-gradient(135deg, rgba(176,141,87,.95), rgba(255,255,255,.10));
  color:#0b0b0f;
  padding:.35rem .6rem;
  border-radius:999px;
  font-weight:700;
  font-size:.75rem;
}

.gallery-item{
  position:relative;
  border-radius:22px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  box-shadow:var(--lux-shadow-soft);
  cursor:pointer;
}
.gallery-masonry{
  column-gap:16px;
  column-count:3;
}
@media (max-width: 991.98px){.gallery-masonry{column-count:2}}
@media (max-width: 575.98px){.gallery-masonry{column-count:1}}
.gallery-masonry .gallery-item{
  break-inside:avoid;
  margin:0 0 16px;
}
.gallery-item img{width:100%; height:100%; object-fit:cover; transition:transform .35s ease; display:block}
.gallery-item:hover img{transform:scale(1.06)}
.gallery-item .overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent, rgba(0,0,0,.72));
  opacity:.75;
}
.gallery-item .label{
  position:absolute;
  left:16px;
  bottom:14px;
  font-weight:700;
}

.gallery-clean{
  background:#eaf2f4;
}
.gallery-clean__title{
  font-family:var(--lux-serif);
  font-weight:700;
  letter-spacing:.01em;
  font-size:clamp(2.2rem, 4.2vw, 3.2rem);
  margin:0;
  color:#0b0b0f;
}
.gallery-clean__sub{
  margin:.8rem 0 0;
  max-width:980px;
  color:rgba(10,12,18,.66);
  font-size:1.02rem;
  line-height:1.65;
}
.gallery-clean-item{
  width:100%;
  border:0;
  padding:0;
  background:transparent;
  text-align:left;
  cursor:pointer;
}
.gallery-clean-item .ratio{
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 18px 44px rgba(0,0,0,.18);
  background:#ffffff;
}
.gallery-clean-item img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.01);
  transition:transform .35s ease, filter .35s ease;
}
.gallery-clean-item:hover img{
  transform:scale(1.06);
  filter:saturate(1.06) contrast(1.02);
}
.gallery-clean-item:focus-visible{
  outline:none;
}
.gallery-clean-item:focus-visible .ratio{
  box-shadow:0 0 0 .28rem rgba(43,108,176,.25), 0 18px 44px rgba(0,0,0,.18);
}

.location-card{
  border-radius:22px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  box-shadow:var(--lux-shadow-soft);
  height:100%;
}
.location-map{
  display:block;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.35);
  box-shadow:0 18px 46px rgba(0,0,0,.40);
}
.location-map img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
}
.timeline{
  display:grid;
  gap:10px;
}
.timeline .t-item{
  display:flex;
  gap:10px;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.03);
}
.timeline .dot{
  width:12px;
  height:12px;
  margin-top:6px;
  border-radius:50%;
  background:var(--lux-gold);
  box-shadow:0 0 22px rgba(176,141,87,.38);
}
.timeline .t-item strong{display:block}
.timeline .t-item span{color:var(--lux-muted); font-size:.95rem}

.testimonial-card{
  border-radius:24px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  box-shadow:var(--lux-shadow-soft);
  padding:22px;
  height:100%;
}
.stars{color:var(--lux-gold-2)}
.avatar{
  width:52px;
  height:52px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(135deg, rgba(176,141,87,.25), rgba(72,156,128,.18));
  display:grid;
  place-items:center;
  font-weight:800;
}

.form-section .form-control,
.form-section .form-select,
.modal-glass .form-control,
.modal-glass .form-select,
.modal-glass textarea{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  color:var(--lux-text);
}
.form-section .form-control:focus,
.form-section .form-select:focus,
.modal-glass .form-control:focus,
.modal-glass .form-select:focus,
.modal-glass textarea:focus{
  border-color:rgba(176,141,87,.55);
  box-shadow:0 0 0 .25rem rgba(176,141,87,.14);
}
.form-section label{color:rgba(255,255,255,.70)}

.modal-glass{
  background:rgba(9,10,18,.72);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(16px);
  color:var(--lux-text);
  border-radius:22px;
}
.enquiry-modal__media{
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  box-shadow:0 20px 52px rgba(0,0,0,.35);
  min-height:100%;
}
.enquiry-modal__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.enquiry-modal__media .enquiry-modal__caption{
  position:absolute;
  left:14px;
  right:14px;
  bottom:12px;
  padding:.55rem .75rem;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.32);
  color:rgba(255,255,255,.90);
  font-weight:900;
}

.footer-compliance{
  border-radius:26px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
  box-shadow:0 24px 66px rgba(0,0,0,.45);
}
.footer-compliance__media{
  height:100%;
  min-height:260px;
}
.footer-compliance__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.footer-compliance__body{
  padding:22px 20px;
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(0,0,0,.12));
  height:100%;
}
@media (min-width: 992px){.footer-compliance__body{padding:28px 28px}}
.footer-compliance__title{
  font-weight:900;
  color:#ffffff;
  margin:0 0 .75rem;
}
.footer-compliance__text{
  color:rgba(255,255,255,.72);
  font-size:.94rem;
  line-height:1.7;
  margin:0;
}
.footer-compliance__meta{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.10);
  color:rgba(255,255,255,.74);
  font-size:.92rem;
  display:grid;
  gap:.45rem;
}
.footer-compliance__meta strong{color:rgba(255,255,255,.92)}
.footer-compliance__qr{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.10);
  display:flex;
  gap:14px;
  align-items:center;
}
.footer-qr{
  width:76px;
  height:76px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04);
  display:grid;
  place-items:center;
  flex:0 0 auto;
}
.footer-qr i{font-size:2rem; color:var(--lux-gold-2)}
.footer-compliance__qr a{
  color:rgba(255,255,255,.86);
  text-decoration:none;
  word-break:break-word;
}
.footer-compliance__qr a:hover{color:var(--lux-gold-2)}
.footer-mini-links{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}
.footer-mini-links a{
  color:rgba(255,255,255,.72);
  text-decoration:none;
}
.footer-mini-links a:hover{color:var(--lux-gold-2)}

.site-footer{
  background:linear-gradient(180deg, rgba(255,255,255,0), rgba(0,0,0,.75));
  border-top:1px solid rgba(255,255,255,.10);
}
.footer-title{
  color:#fff;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:.78rem;
  margin-bottom:.85rem;
}
.footer-links{list-style:none; padding:0; margin:0; display:grid; gap:.55rem}
.footer-links a{text-decoration:none; color:rgba(255,255,255,.70)}
.footer-links a:hover{color:var(--lux-gold-2)}
.footer-contact{list-style:none; padding:0; margin:0; display:grid; gap:.75rem}
.footer-contact li{display:flex; gap:.65rem; color:rgba(255,255,255,.72)}
.footer-contact i{color:var(--lux-gold-2); margin-top:.2rem}
.footer-contact a{text-decoration:none; color:rgba(255,255,255,.76)}
.footer-divider{border-color:rgba(255,255,255,.10)}
.social{
  width:40px; height:40px;
  display:grid; place-items:center;
  border-radius:14px;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
  transition:transform .2s ease, border-color .2s ease;
}
.social:hover{transform:translateY(-4px); border-color:rgba(176,141,87,.35)}

.float-whatsapp{
  position:fixed;
  right:18px;
  bottom:96px;
  width:54px;
  height:54px;
  border-radius:18px;
  background:linear-gradient(135deg, #25D366, #128C7E);
  color:#08110b;
  display:grid;
  place-items:center;
  box-shadow:0 18px 44px rgba(0,0,0,.55);
  z-index:1040;
  text-decoration:none;
}
.float-whatsapp i{font-size:1.45rem; color:#05110b}

.float-enquire{
  position:fixed;
  right:18px;
  bottom:28px;
  z-index:1040;
  border:none;
  display:flex;
  align-items:center;
  gap:.55rem;
  padding:.82rem 1rem;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(176,141,87,.95), rgba(255,255,255,.10));
  color:#0b0b0f;
  box-shadow:0 20px 52px rgba(176,141,87,.20);
  font-weight:800;
}
.float-enquire i{font-size:1rem}

.mobile-cta{
  position:fixed;
  left:12px;
  right:12px;
  bottom:12px;
  z-index:1040;
  background:rgba(7,25,19,.78);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(14px);
  border-radius:22px;
  padding:10px;
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:10px;
}
.mobile-cta__btn{
  border-radius:18px;
  padding:10px 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  color:rgba(255,255,255,.92);
  text-decoration:none;
}
.mobile-cta__btn i{color:var(--lux-gold-2)}
.mobile-cta__btn span{font-weight:800; font-size:.92rem}

.object-fit-contain{object-fit:contain}
