
    *{
      margin:0;
      padding:0;
      box-sizing:border-box;
    }

    body{
      font-family: 'Poppins', sans-serif;
      overflow-x:hidden;
      background-color: #fff!important;
    }
:root{

  --primary-color:#735879;
  --secondary-color:#a56891;
  --light-color:#bca3b6;
  --white:#ffffff;
  --black:#111111;

}

    h1,h2,h3,h4,h5,h6{
      font-family: 'Montserrat', sans-serif;
    }

    .custom-navbar{
      background:#735879;
      padding:14px 0;
      position:relative;
      z-index:999;
    }

    .navbar-brand img{
      width:100px;
      border-radius:16px;
      background:#fff;
      padding:10px;
    }

    .navbar-nav{
      gap:20px;
    }

    .navbar-nav .nav-link{
      color:#fff;
      font-size:15px;
      font-weight:400;
      text-transform:capitalize;
      transition:0.3s;
      position:relative;
      display:flex;
      align-items:center;
      gap:8px;
    }

    .navbar-nav .nav-link i{
      font-size:15px;
    }

    .navbar-nav .nav-link:hover{
      color:#f5e8f1;
    }

    /* Hover Line */
    .navbar-nav .nav-link::after{
      content:'';
      position:absolute;
      left:0;
      bottom:-5px;
      width:0%;
      height:2px;
      background:#fff;
      transition:0.4s;
    }

    .navbar-nav .nav-link:hover::after{
      width:100%;
    }

    /* Mobile Toggle */
    .navbar-toggler{
      border:none;
      box-shadow:none !important;
    }

    .menu-icon{
      color:#fff;
      font-size:30px;
    }

    /* Mobile Menu */
    @media(max-width:991px){

      .navbar-collapse{
        position:fixed;
        top:0;
        left:-100%;
        width:280px;
        height:100vh;
        background:#735879;
        padding:30px 25px;
        transition:0.4s ease;
        z-index:9999;
      }

      .navbar-collapse.show{
        left:0;
      }

      .navbar-nav{
        margin-top:40px;
        gap:10px;
      }

      .navbar-nav .nav-link{
        font-size:15px;
        padding:6px 0;
      }

      .mobile-close{
        color:#fff;
        font-size:30px;
        cursor:pointer;
        text-align:right;
        margin-bottom:20px;
      }

      .navbar-brand img{
        width:85px;
      }
    }
/* =========================
   HERO SECTION CSS
========================= */


.luxury-hero-section{
  position:relative;
  min-height:100vh;
  overflow:hidden;
  display:flex;
  align-items:center;
  background: url('./images/banner.webp');

  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  padding:120px 0 80px;
}

.hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(to top,
  rgba(115,88,121,0.35),
  transparent);
}

.hero-content{
  position:relative;
  z-index:2;
  color:var(--white);
}

.hero-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(188,163,182,0.15);
  border:1px solid rgba(255,255,255,0.2);
  padding:12px 22px;
  border-radius:50px;
  margin-bottom:25px;
  color:var(--white);
  font-size:15px;
  backdrop-filter:blur(10px);
}

.hero-badge i{
  color:var(--light-color);
}

.hero-content h1{
  font-size:72px;
  color: black;
  line-height:1.1;
  font-weight:700;
  margin-bottom:25px;
}

.hero-content h1 span{
  color:#735879;
}

.hero-content p{
  max-width:620px;
  font-size:18px;
  line-height:1.8;
  color:#000;
  margin-bottom:40px;
}

.hero-buttons{ 
  align-items:center;
  gap:20px;
  flex-wrap:wrap;
  margin-bottom:50px;
}

.hero-btn{
  background:var(--secondary-color);
  color:var(--white);
  padding:16px 34px;
  border-radius:60px;
  text-decoration:none;
  font-weight:600;
  transition:0.4s;
  display:inline-flex;
  align-items:center;
  gap:12px;
}

.hero-btn:hover{
  background:var(--white);
  color:var(--primary-color);
  transform:translateY(-3px);
}

.video-play-btn{
  width:65px;
  height:65px;
  border-radius:50%;
  background:rgba(255,255,255,0.12);
  border:1px solid rgba(255,255,255,0.2);
  color:var(--white);
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:18px;
  transition:0.4s;
  backdrop-filter:blur(10px);
}

.video-play-btn:hover{
  background:var(--secondary-color);
  transform:scale(1.08);
}


/* STATS */

.hero-stats{
  display:flex;
  gap:40px;
  flex-wrap:wrap;
}

.stat-box h3{
  font-size:38px;
  color:var(--light-color);
  margin-bottom:5px;
}

.stat-box p{
  margin:0;
  font-size:15px;
  color:#dcdcdc;
}


/* IMAGE */

.hero-image-wrapper{
  position:relative;
  z-index:2;
}

.hero-image-wrapper img{
  width:100%;
  border-radius:30px;
  box-shadow:0 25px 60px rgba(0,0,0,0.35);
}


/* FLOATING CARD */

.property-card{
  position:absolute;
  left:-40px;
  bottom:40px;
  background:var(--white);
  padding:18px 22px;
  border-radius:22px;
  display:flex;
  align-items:center;
  gap:16px;
  box-shadow:0 15px 40px rgba(0,0,0,0.18);
  animation:floating 3s ease-in-out infinite;
}

.property-icon{
  width:60px;
  height:60px;
  background:var(--primary-color);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--white);
  font-size:22px;
}

.property-card h5{
  margin:0;
  font-size:18px;
  color:var(--black);
}

.property-card p{
  margin:0;
  font-size:14px;
  color:#777;
}


/* FLOAT ANIMATION */

@keyframes floating{

  0%{
    transform:translateY(0px);
  }

  50%{
    transform:translateY(-12px);
  }

  100%{
    transform:translateY(0px);
  }

}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .luxury-hero-section{
    text-align:center;
    padding-top:150px;
  }

  .hero-content h1{
    font-size:52px;
  }

  .hero-content p{
    margin:auto auto 40px;
  }

  .hero-buttons{
    justify-content:center;
  }

  .hero-stats{
    justify-content:center;
  }

  .hero-image-wrapper{
    margin-top:60px;
  }

  .property-card{
    left:50%;
    transform:translateX(-50%);
    width:90%;
    bottom:-30px;
  }

}

@media(max-width:576px){

  .hero-content h1{
    font-size:38px;
  }

  .hero-content p{
    font-size:16px;
  }

  .hero-btn{
    width:100%;
    justify-content:center;
  }

  .hero-stats{
    gap:20px;
  }

  .stat-box{
    width:100%;
  }

  .property-card{
    position:relative;
    left:0;
    transform:none;
    width:100%;
    margin-top:20px;
    bottom:0;
  }

}
/* =========================
   SPORTS ZONE SECTION
========================= */

.sports-zone-section{
  padding:40px 0;
  background:#fff;
  position:relative;
  overflow:hidden;
}
.sports-image-wrapper{
    margin: auto;
}
 
@media(max-width:576px){
    .sports-zone-section{
  padding:30px 0;
    }
}
 

/* CONTENT */

.sports-content{
  padding-left:40px;
}

.section-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(115,88,121,0.1);
  color:#735879;
  padding:12px 22px;
  border-radius:50px;
  margin-bottom:25px;
  font-weight:600;
}

.sports-content h2{
  font-size:38px;
  line-height:1.2;
  margin-bottom:20px;
  color:#111;
}

.sports-content h2 span{
  color:#735879;
}

.sports-content h5{
  font-size:20px;
  color:#a56891;
  margin-bottom:10px;
}

.location-text{
  font-size:16px;
  color:#666;
  margin-bottom:25px;
}

.description{
  font-size:16px;
  line-height:1.3;
  color:#555; 
}

 

/* FLOAT */

@keyframes floatSports{

  0%{
    transform:translateY(0px);
  }

  50%{
    transform:translateY(-12px);
  }

  100%{
    transform:translateY(0px);
  }

}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .sports-content{
    padding-left:0;
    margin-top:60px;
    text-align:center;
  }

  .sports-content h2{
    font-size:42px;
  }

  .sports-features{
    grid-template-columns:1fr;
  }
 
  .sports-badge{
    position:relative;
    margin-top:20px;
    right:0;
    bottom:0;
    justify-content:center;
  }

}

@media(max-width:576px){

  .sports-circle{
    width:300px;
    height:300px;
  }
.location-text{
  font-size:14px; 
}

 
  .sports-content h2{
    font-size:24px;
  }

  .sports-content h5{
    font-size:16px;
  }

  .description{
    font-size:14px;
  }

}

/* =========================
   LOCATION SECTION CSS
========================= */

:root{

  --primary-color:#735879;
  --secondary-color:#a56891;
  --light-color:#bca3b6;
  --white:#ffffff;
  --black:#111111;

}

.modern-location-section{
  padding:40px 0;
  background:#fff;
  position:relative;
  overflow:hidden;
}


/* =========================
   HEADING
========================= */

.location-heading{
  max-width:900px;
  margin:auto;
  margin-bottom:70px;
}

.location-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(115,88,121,0.1);
  color:var(--primary-color);
  padding:10px 22px;
  border-radius:50px;
  font-weight:600;
  font-size:14px;
  margin-bottom:22px;
}

.location-tag i{
  font-size:15px;
}

.location-heading h2{
  font-size:38px;
  line-height:1.3;
  font-weight:700;
  margin-bottom:18px;
  color:var(--black);
}

.location-heading h2 span{
  color:var(--primary-color);
}

.location-heading p{
  font-size:16px;
  line-height:1.8;
  max-width:850px;
  margin:auto;
  color:#666;
}


/* =========================
   MAIN LOCATION CARD
========================= */

.main-location-card{
  background:var(--white);
  border-radius:30px;
  padding:35px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:30px;
  box-shadow:0 15px 50px rgba(115,88,121,0.08);
  margin-bottom:50px;
}

.location-left{
  display:flex;
  align-items:center;
  gap:20px;
}

.location-icon{
  width:85px;
  height:85px;
  border-radius:22px;
  background:linear-gradient(135deg,
  var(--primary-color),
  var(--secondary-color));

  color:var(--white);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:32px;
}

.location-left h3{
  font-size:26px;
  margin-bottom:8px;
  color:var(--black);
}

.location-left p{
  margin:0;
  color:#666;
  font-size:16px;
  line-height:1.7;
}
 

/* =========================
   DISTANCE CARDS
========================= */

.distance-card{
  background:var(--white);
  border-radius:24px;
  padding:35px 22px;
  text-align:center;
  height:100%;
  transition:0.4s;
  position:relative;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,0.05);
}

.distance-card::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:5px;
  background:linear-gradient(to right,
  var(--primary-color),
  var(--secondary-color));
}

.distance-card:hover{
  transform:translateY(-8px);
}

.distance-icon{
  width:65px;
  height:65px;
  margin:auto;
  border-radius:50%;
  background:rgba(115,88,121,0.1);
  color:var(--primary-color);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
  margin-bottom:20px;
  transition:0.4s;
}

.distance-card:hover .distance-icon{
  /*background:var(--primary-color);*/
  color:var(--white);
}

.distance-card h5{
  font-size:16px;
  line-height:1.5;
  color:#222;
  margin-bottom:15px;
  font-weight:600;
}

.distance-card span{
  display:inline-block;
  background:var(--primary-color);
  color:var(--white);
  padding:9px 18px;
  border-radius:50px;
  font-weight:600;
  font-size:14px;
}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .modern-location-section{
    padding:80px 0;
  }

  .location-heading h2{
    font-size:38px;
  }

  .location-heading p{
    font-size:16px;
  }

  .main-location-card{
    flex-direction:column;
    text-align:center;
  }

  .location-left{
    flex-direction:column;
  }

}

@media(max-width:576px){

  .modern-location-section{
    padding:30px 0;
  }

  .location-heading{
    margin-bottom:50px;
  }

  .location-heading h2{
    font-size:24px;
  }

  .location-heading p{
    font-size:14px;
    line-height:1.7;
  }

  .main-location-card{
    padding:25px;
    border-radius:24px;
  }

  .location-icon{
    width:70px;
    height:70px;
    font-size:26px;
  }

  .location-left h3{
    font-size:18px;
  }

  .location-left p{
    font-size:14px;
  }
 

  .distance-card{
    padding:25px 15px;
    border-radius:20px;
  }

  .distance-icon{
    width:55px;
    height:55px;
    font-size:20px;
  }

  .distance-card h5{
    font-size:14px;
  }

  .distance-card span{
    font-size:13px;
    padding:8px 16px;
  }

}
/* =========================
   SITE PLAN SECTION CSS
========================= */

.site-plan-section{
  padding:40px 0;
  background:#f9f9f9;
  position:relative;
  overflow:hidden;
}


/* =========================
   HEADING
========================= */

.section-heading{
  max-width:800px;
  margin:auto;
  margin-bottom:60px;
}

.section-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(115,88,121,0.1);
  color:#735879;
  padding:10px 22px;
  border-radius:50px;
  font-size:16px;
  font-weight:600;
  margin-bottom:22px;
}

.section-heading h2{
  font-size:38px;
  line-height:1.2;
  margin-bottom:18px;
  color:#111;
  font-weight:700;
}

.section-heading h2 span{
  color:#735879;
}

.section-heading p{
  font-size:16px;
  line-height:1.8;
  color:#666;
}


/* =========================
   SITE PLAN IMAGE
========================= */

.site-plan-image-wrapper{
  position:relative;
  border-radius:35px;
  overflow:hidden; 
}

.site-plan-image-wrapper img{
  width:100%;
  display:block;
  border-radius:35px;
  transition:0.5s;
}

.site-plan-image-wrapper:hover img{
  transform:scale(1.02);
}


/* OVERLAY */

.site-plan-image-wrapper::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(to top,
  rgba(0,0,0,0.18),
  transparent);
  z-index:1;
}


 


/* =========================
   FLOAT ANIMATION
========================= */

@keyframes floatCard{

  0%{
    transform:translateY(0px);
  }

  50%{
    transform:translateY(-10px);
  }

  100%{
    transform:translateY(0px);
  }

}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .site-plan-section{
    padding:80px 0;
  }

  .section-heading h2{
    font-size:40px;
  }

  .section-heading p{
    font-size:16px;
  }

}

@media(max-width:576px){

  .site-plan-section{
    padding:30px 0;
  }

  .section-heading{
    margin-bottom:45px;
  }

  .section-heading h2{
    font-size:24px;
  }
  

  .section-heading p{
    font-size:14px;
    line-height:1.7;
  }

  .site-plan-image-wrapper{
    border-radius:24px;
  }

  .site-plan-image-wrapper img{
    border-radius:24px;
  }
 
 
 

}

/* =========================
   UNIT PLAN SECTION CSS
========================= */

.unit-plan-section{
  padding:40px 0;
  background:#fff;
  position:relative;
  overflow:hidden;
}


/* =========================
   HEADING
========================= */

.unit-heading{
  max-width:800px;
  margin:auto;
  margin-bottom:70px;
}

.unit-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(115,88,121,0.1);
  color:#735879;
  padding:10px 22px;
  border-radius:50px;
  font-size:16px;
  font-weight:600;
  margin-bottom:22px;
}

.unit-heading h2{
  font-size:38px;
  line-height:1.2;
  margin-bottom:18px;
  color:#111;
  font-weight:700;
}

.unit-heading h2 span{
  color:#735879;
}

.unit-heading p{
  font-size:16px;
  line-height:1.8;
  color:#666;
}


/* =========================
   UNIT CARD
========================= */

.unit-card{
  background:#fff;
  border-radius:30px;
  overflow:hidden;
  transition:0.4s;
  height:100%;
  box-shadow:0 15px 40px rgba(0,0,0,0.08);
}

.unit-card:hover{
  transform:translateY(-8px);
}

.unit-card p{
    font-size:16px;
}
/* IMAGE */

.unit-image{
  position:relative;
  overflow:hidden;
}

.unit-image img{
  width:100%;
  display:block;
  transition:0.5s;
}

.unit-card:hover .unit-image img{
  transform:scale(1.03);
}

.unit-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(to top,
  rgba(0,0,0,0.18),
  transparent);
}

 
 

/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .unit-plan-section{
    padding:80px 0;
  }

  .unit-heading h2{
    font-size:40px;
  }
 
}

@media(max-width:576px){

  .unit-plan-section{
    padding:30px 0;
  }

  .unit-heading{
    margin-bottom:50px;
  }

  .unit-heading h2{
    font-size:24px;
  } 
  .unit-card p {
    font-size: 14px;
}
  .unit-card{
    border-radius:24px;
  }

  .unit-content{
    padding:25px 20px;
  } 
  .unit-content h3{
    font-size:24px;
  }

  .unit-content p{
    font-size:15px;
  }
 

}
/* =========================
   AMENITIES SECTION CSS
========================= */

.amenities-section{
  padding:40px 0;
  background:#f9f9f9;
  position:relative;
  overflow:hidden;
}

.amenities{ 
    justify-content: center;
}
/* =========================
   HEADING
========================= */

.amenities-heading{
  max-width:800px;
  margin:auto;
  margin-bottom:70px;
}

.amenities-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(115,88,121,0.1);
  color:#735879;
  padding:10px 22px;
  border-radius:50px;
  font-size:16px;
  font-weight:600;
  margin-bottom:22px;
}

.amenities-heading h2{
  font-size:38px;
  line-height:1.2;
  margin-bottom:18px;
  color:#111;
  font-weight:700;
}

.amenities-heading h2 span{
  color:#735879;
}
 


/* =========================
   CARD
========================= */

.amenity-card{
  background:#fff;
  border-radius:24px;
  overflow:hidden;
  transition:0.4s;
  height:100%;
  box-shadow:0 10px 30px rgba(0,0,0,0.06);
}

.amenity-card:hover{
  transform:translateY(-8px);
}


/* IMAGE */

.amenity-image{
  overflow:hidden;
}

.amenity-image img{
  width:100%;
  height:auto;
  object-fit:cover;
  transition:0.5s;
}

.amenity-card:hover .amenity-image img{
  transform:scale(1.05);
}


/* CONTENT */

.amenity-content{
  padding:25px 18px;
  text-align:center;
}

.amenity-icon{
  width:65px;
  height:65px;
  margin:auto;
  border-radius:18px;
  background:linear-gradient(135deg,#735879,#a56891);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
  margin-top:-55px;
  margin-bottom:18px;
  position:relative;
  z-index:2;
  box-shadow:0 10px 25px rgba(115,88,121,0.3);
}

.amenity-content h5{
  font-size:16px;
  line-height:1.5;
  margin:0;
  color:#222;
  font-weight:600;
}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .amenities-section{
    padding:30px 0;
  }

  .amenities-heading h2{
    font-size:40px;
  }
 

}

@media(max-width:576px){
.amenities-tag{
    font-size: 14px;
}
  .amenities-section{
    padding:30px 0;
  }

  .amenities-heading{
    margin-bottom:50px;
  }

  .amenities-heading h2{
    font-size:24px;
  }
 

  .amenity-card{
    border-radius:20px;
  }

  .amenity-image img{
    height:150px;
  }

  .amenity-icon{
    width:55px;
    height:55px;
    font-size:20px;
    border-radius:15px;
  }

  .amenity-content h5{
    font-size:14px;
  }

}

/* =========================
   PROJECT PROGRESS SECTION
========================= */

.project-progress-section{
  padding:40px 0;
  background:#fff;
  overflow:hidden;
}


/* =========================
   HEADING
========================= */

.progress-heading{
  max-width:800px;
  margin:auto;
  margin-bottom:60px;
}

.progress-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(115,88,121,0.1);
  color:#735879;
  padding:10px 22px;
  border-radius:50px;
  font-size:14px;
  font-weight:600;
  margin-bottom:22px;
}

.progress-heading h2{
  font-size:50px;
  line-height:1.2;
  margin-bottom:18px;
  color:#111;
  font-weight:700;
}

.progress-heading h2 span{
  color:#735879;
}
 


/* =========================
   SLIDER CARD
========================= */

.progress-card{
  position:relative;
  overflow:hidden;
  border-radius:24px;
}

.progress-card img{
  width:100%;
  height:300px;
  object-fit:cover;
  transition:0.5s;
}

.progress-card:hover img{
  transform:scale(1.05);
}


/* OVERLAY */

.progress-overlay{
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  padding:25px;
  background:linear-gradient(to top,
  rgba(0,0,0,0.7),
  transparent);
}

.progress-overlay h4{
  color:#fff;
  margin:0;
  font-size:24px;
  font-weight:600;
}


/* =========================
   OWL NAVIGATION
========================= */

.progress-slider .owl-nav{
  text-align:center;
  margin-top:35px;
}

.progress-slider .owl-nav button{
  width:55px;
  height:55px;
  border-radius:50% !important;
  background:#735879 !important;
  color:#fff !important;
  font-size:22px !important;
  margin:0 8px;
  transition:0.4s;
}

.progress-slider .owl-nav button:hover{
  background:#a56891 !important;
}


/* DOTS */

.progress-slider .owl-dots{
  text-align:center;
  margin-top:20px;
}

.progress-slider .owl-dot span{
  width:12px;
  height:12px;
  margin:5px;
  background:#cbb8c6 !important;
  display:block;
  border-radius:50%;
}

.progress-slider .owl-dot.active span{
  background:#735879 !important;
}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .project-progress-section{
    padding:80px 0;
  }

  .progress-heading h2{
    font-size:40px;
  }

  .progress-card img{
    height:400px;
  }

}

@media(max-width:576px){

  .project-progress-section{
    padding:70px 0;
  }

  .progress-heading{
    margin-bottom:45px;
  }

  .progress-heading h2{
    font-size:32px;
  }
 

  .progress-card{
    border-radius:18px;
  }

  .progress-card img{
    height:300px;
  }

  .progress-overlay{
    padding:18px;
  }

  .progress-overlay h4{
    font-size:18px;
  }

  .progress-slider .owl-nav button{
    width:45px;
    height:45px;
    font-size:18px !important;
  }

}


/* =========================
   GALLERY GRID
========================= */
/* =========================
   PHOTO GALLERY SECTION
========================= */

.photo-gallery-section{
  padding:40px 0;
  background:#fff;
  overflow:hidden;
}


/* HEADING */

.gallery-heading{
  max-width:800px;
  margin:auto;
  margin-bottom:70px;
}

.gallery-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(115,88,121,0.1);
  color:#735879;
  padding:10px 22px;
  border-radius:50px;
  font-size:14px;
  font-weight:600;
  margin-bottom:22px;
}

.gallery-heading h2{
  font-size:50px;
  line-height:1.2;
  margin-bottom:18px;
  color:#111;
  font-weight:700;
}

.gallery-heading h2 span{
  color:#735879;
}
 

.gallery-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
}

.gallery-item.large{
  grid-column:span 2;
  grid-row:span 2;
}

.gallery-item.wide{
  grid-column:span 2;
}

.gallery-item{
  overflow:hidden;
  border-radius:22px;
  cursor:pointer;
  position:relative;
}

.gallery-item img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:0.5s;
}

.gallery-item:hover img{
  transform:scale(1.08);
}


/* =========================
   POPUP
========================= */

.gallery-popup{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.88);
  z-index:99999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:40px;
}

.gallery-popup img{
  max-width:70%;
  max-height:85vh;
  border-radius:10px;
  animation:zoomIn 0.4s ease;
}


/* CLOSE */

.popup-close{
  position:absolute;
  top:20px;
  right:30px;
  color:#fff;
  font-size:38px;
  cursor:pointer;
  z-index:99;
}


/* ARROWS */

.popup-prev,
.popup-next{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:55px;
  height:55px;
  border:none;
  border-radius:50%;
  background:#fff;
  color:#111;
  font-size:22px;
  cursor:pointer;
  z-index:99;
  transition:0.3s;
}

.popup-prev:hover,
.popup-next:hover{
  background:#735879;
  color:#fff;
}

.popup-prev{
  left:30px;
}

.popup-next{
  right:30px;
}


/* ANIMATION */

@keyframes zoomIn{

  from{
    transform:scale(0.8);
    opacity:0;
  }

  to{
    transform:scale(1);
    opacity:1;
  }

}


/* RESPONSIVE */

@media(max-width:991px){

  .gallery-grid{
    grid-template-columns:repeat(2,1fr);
  }
   .gallery-heading h2{
    font-size:40px;
  }

}

@media(max-width:576px){
     .photo-gallery-section{
    padding:70px 0;
  }

  .gallery-heading{
    margin-bottom:50px;
  }

  .gallery-heading h2{
    font-size:32px;
  } 


  .gallery-grid{
    grid-template-columns:1fr;
  }

  .gallery-item.large,
  .gallery-item.wide{
    grid-column:span 1;
    grid-row:span 1;
  }

  .gallery-item{
    height:260px;
  }

  .gallery-popup{
    padding:20px;
  }

  .gallery-popup img{
    max-width:100%;
  }

  .popup-prev,
  .popup-next{
    width:45px;
    height:45px;
    font-size:18px;
  }

  .popup-prev{
    left:10px;
  }

  .popup-next{
    right:10px;
  }

}
/* =========================
   SPECIFICATIONS SECTION
========================= */

.specifications-section{
  padding:40px 0;
  background:#fff;
  overflow:hidden;
}


/* =========================
   HEADING
========================= */

.specification-heading{
  max-width:850px;
  margin:auto;
  margin-bottom:70px;
}

.specification-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(115,88,121,0.1);
  color:#735879;
  padding:10px 22px;
  border-radius:50px;
  font-size:16px;
  font-weight:600;
  margin-bottom:22px;
}

.specification-heading h2{
  font-size:38px;
  line-height:1.2;
  margin-bottom:18px;
  color:#111;
  font-weight:700;
}

.specification-heading h2 span{
  color:#735879;
} 


/* =========================
   SPECIFICATION GRID
========================= */

.specification-row{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:25px;
}


/* =========================
   CARD
========================= */

.specification-card{
  background:#2d123c;
  border-radius:20px;
  padding:35px 20px;
  text-align:center;
  transition:0.4s;
  cursor:pointer;
  position:relative;
  overflow:hidden;

  min-height:220px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

.specification-card::before{
  content:'';
  position:absolute;
  top:0;
  left:-100%;
  width:100%;
  height:100%;
  background:linear-gradient(to right,
  transparent,
  rgba(255,255,255,0.08),
  transparent);

  transition:0.6s;
}

.specification-card:hover::before{
  left:100%;
}

.specification-card:hover{
  transform:translateY(-8px);
  background:#735879;
}


/* =========================
   ICON
========================= */

.specification-icon{
  width:75px;
  height:75px;
  margin:auto;
  margin-bottom:22px;
  border-radius:18px;
  background:rgba(255,255,255,0.08);

  display:flex;
  align-items:center;
  justify-content:center;

  color:#fff;
  font-size:30px;
  transition:0.4s;
}

.specification-card:hover .specification-icon{
  background:#fff;
  color:#735879;
}


/* =========================
   TITLE
========================= */

.specification-card h5{
  color:#fff;
  font-size:15px;
  line-height:1.5;
  margin:0;
  font-weight:600;
}


/* =========================
   TABLET
========================= */

@media(max-width:991px){

  .specification-row{
    grid-template-columns:repeat(3,1fr);
  }

  .specification-heading h2{
    font-size:40px;
  }

}


/* =========================
   MOBILE
========================= */

@media(max-width:576px){

  .specifications-section{
    padding:30px 0;
  }

  .specification-heading{
    margin-bottom:50px;
  }
.specification-tag{
    font-size: 14px;
}
  .specification-heading h2{
    font-size:24px;
  }
 

  .specification-row{
    grid-template-columns:repeat(2,1fr);
    gap:18px;
  }

  .specification-card{
    padding:28px 15px;
    border-radius:18px;
    min-height:180px;
  }

  .specification-icon{
    width:60px;
    height:60px;
    font-size:24px;
    border-radius:15px;
  }

  .specification-card h5{
    font-size:13px;
  }

}
/* =========================
   MODERN FOOTER
========================= */

.modern-footer{
  background:#735879;
  padding:90px 0 0;
  position:relative;
  overflow:hidden;
}


/* TOP BORDER DESIGN */

.modern-footer::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:6px;
  background:linear-gradient(to right,
  #735879,
  #a56891,
  #bca3b6);
}


/* =========================
   LOGO AREA
========================= */

.footer-logo-box img{
  max-width:180px;
  margin-bottom:25px;
}

.footer-logo-box p{
  color:#f5edf3;
  font-size:16px;
  line-height:1.9;
  margin:0;
}


/* =========================
   HEADING
========================= */

.footer-links h4,
.footer-contact h4{
  color:#fff;
  font-size:24px;
  margin-bottom:28px;
  font-weight:700;
}


/* =========================
   LINKS
========================= */

.footer-links ul{
  list-style:none;
  padding:0;
  margin:0;
}

.footer-links ul li{
  margin-bottom:16px;
}

.footer-links ul li a{
  color:#f3e8f0;
  text-decoration:none;
  font-size:16px;
  transition:0.3s;
  position:relative;
}

.footer-links ul li a::before{
  content:'';
  position:absolute;
  left:0;
  bottom:-4px;
  width:0;
  height:2px;
  background:#fff;
  transition:0.3s;
}

.footer-links ul li a:hover::before{
  width:100%;
}

.footer-links ul li a:hover{
  color:#fff;
}


/* =========================
   CONTACT INFO
========================= */

.footer-contact p,
.footer-contact a{
  color:#f3e8f0;
  font-size:16px;
  line-height:1.9;
  text-decoration:none;
  display:flex;
  gap:14px;
  margin-bottom:16px;
}

.footer-contact i{
  color:#fff;
  margin-top:6px;
  font-size:17px;
}


/* =========================
   FOOTER BOTTOM
========================= */

.footer-bottom{
  margin-top:70px;
  padding:24px 0;
  text-align:center; 
}

.footer-bottom p{
  color:#fff;
  margin:0;
  font-size:15px;
  line-height:1.7;
}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .modern-footer{
    padding:70px 0 0;
  }

}

@media(max-width:576px){
.section-tag{
    font-size: 14px;
}
  .modern-footer{
    padding:60px 0 0;
  }

  .footer-logo-box img{
    max-width:150px;
  }

  .footer-links h4,
  .footer-contact h4{
    font-size:22px;
    margin-bottom:22px;
  }

  .footer-logo-box p,
  .footer-links ul li a,
  .footer-contact p,
  .footer-contact a{
    font-size:15px;
    line-height:1.8;
  }

  .footer-bottom{
    margin-top:50px; 
  }

  .footer-bottom p{
    font-size:14px;
  }

}
/* =========================
   FIXED ENQUIRE BUTTON
========================= */

.buttn{
  background:linear-gradient(135deg,#58026c,#58026c);
  height:200px;
  width:40px;

  position:fixed;
  top:50%;
  right:0;

  transform:translateY(-50%);

  z-index:99999;

  border-radius:18px 0 0 18px;

  display:flex;
  align-items:center;
  justify-content:center;

  box-shadow:0 10px 30px rgba(115,88,121,0.25);

  transition:0.4s;
}

.buttn:hover{
  background:linear-gradient(135deg,#735879,#a56891);
}


/* =========================
   VERTICAL TEXT
========================= */

.vertical-text{

  font-family:'Poppins', sans-serif;

  font-size:18px;
  font-weight:600;
  letter-spacing:1px;

  color:#ffffff;

  transform:rotate(-90deg);

  white-space:nowrap;

  margin:0;

}
.vertical-text a{
  text-decoration: none;
  color: #fff;
  font-size;16px;
}

/* =========================
   MOBILE
========================= */

@media(max-width:767px){

  .buttn{
    display:none;
  }

}
/* =========================
   MOBILE FIXED BUTTONS
========================= */

.mobile-fixed-btns{
  position:fixed;
  left:0;
  bottom:0;

  width:100%;

  display:none;

  z-index:99999;
}


/* BUTTON */

.mobile-fixed-btns a{

  width:50%;

  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;

  text-decoration:none;

  padding:16px 10px;

  font-family:'Poppins', sans-serif;

  font-size:18px;
  font-weight:600;

  color:#fff;

  transition:0.4s;
}


/* ENQUIRE */

.mobile-enquire-btn{
  background:#58026c;
}


/* CALL */

.mobile-call-btn{
  background:#a56891;
}


/* HOVER */

.mobile-fixed-btns a:hover{
  background:#58026c;
  color:#fff;
}


/* =========================
   MOBILE ONLY
========================= */

@media(max-width:767px){

  .mobile-fixed-btns{
    display:flex;
  }

  /* FOOTER COPYRIGHT HIDE NA HO */

  .modern-footer{
    padding-bottom:85px;
  }

}


/* SMALL MOBILE */

@media(max-width:480px){

  .mobile-fixed-btns a{
    font-size:16px;
    padding:15px 8px;
  }

}
 

    :root{
      --primary:#735879;
      --secondary:#a56891;
      --light:#bca3b6;
      --dark:#2d123c;
      --white:#ffffff;
    }

    /* =========================
       HERO SECTION
    ========================= */

    .contact-hero{
      padding:140px 0 100px;
      background:linear-gradient(rgba(45,18,60,0.85), rgba(45,18,60,0.85)),
      url('./images/Banner-Uptown-Phase-II.jpg.jpeg') center/cover;
      position:relative;
      overflow:hidden;
      text-align:center;
    }

    .contact-tag{
      display:inline-flex;
      align-items:center;
      gap:10px;
      background:rgba(255,255,255,0.12);
      color:#fff;
      padding:10px 22px;
      border-radius:50px;
      font-size:14px;
      font-weight:600;
      margin-bottom:25px;
      backdrop-filter:blur(10px);
    }

    .contact-hero h1{
      color:#fff;
      font-size:72px;
      line-height:1.2;
      margin-bottom:20px;
    }

    .contact-hero h1 span{
      color:var(--light);
    }

    .contact-hero p{
      max-width:800px;
      margin:auto;
      color:#f3edf4;
      font-size:18px;
      line-height:1.9;
    }


    /* =========================
       CONTACT SECTION
    ========================= */

    .contact-section{
      padding:40px 0;
      position:relative;
    }

    .contact-box{
      background:#fff;
      border-radius:30px;
      overflow:hidden;
      box-shadow:0 25px 60px rgba(115,88,121,0.08);
    }


    /* LEFT SIDE */

    .contact-info{
      background:linear-gradient(135deg,var(--dark),var(--primary));
      padding:60px 45px;
      height:100%;
      position:relative;
      overflow:hidden;
    }

    .contact-info::before{
      content:'';
      position:absolute;
      width:250px;
      height:250px;
      border-radius:50%;
      background:rgba(255,255,255,0.05);
      bottom:-120px;
      right:-120px;
    }

    .contact-info h2{
      color:#fff;
      font-size:42px;
      margin-bottom:20px;
    }

    .contact-info p{
      color:#ddd0df;
      line-height:1.9;
      font-size:16px;
      margin-bottom:40px;
    }


    /* INFO ITEM */

    .info-item{
      display:flex;
      gap:18px;
      margin-bottom:28px;
      position:relative;
      z-index:2;
    }

    .info-icon{
      min-width:65px;
      height:65px;
      border-radius:18px;
      background:rgba(255,255,255,0.1);
      display:flex;
      align-items:center;
      justify-content:center;
      color:#fff;
      font-size:24px;
    }

    .info-content h5{
      color:#fff;
      font-size:20px;
      margin-bottom:8px;
    }

    .info-content a,
    .info-content span{
      color:#ddd0df;
      text-decoration:none;
      line-height:1.8;
      display:block;
    }


    /* SOCIAL */

    .social-icons{
      display:flex;
      gap:14px;
      margin-top:45px;
      position:relative;
      z-index:2;
    }

    .social-icons a{
      width:50px;
      height:50px;
      border-radius:50%;
      background:rgba(255,255,255,0.1);
      color:#fff;
      display:flex;
      align-items:center;
      justify-content:center;
      text-decoration:none;
      transition:0.4s;
      font-size:18px;
    }

    .social-icons a:hover{
      background:#fff;
      color:var(--primary);
      transform:translateY(-5px);
    }


    /* RIGHT SIDE */

    .contact-form-wrapper{
      padding:60px 50px;
    }

    .form-title{
      margin-bottom:35px;
    }

    .form-title h3{
      font-size:40px;
      color:#111;
      margin-bottom:15px;
    }

    .form-title p{
      color:#666;
      line-height:1.8;
      font-size:16px;
    }


    /* FORM */

    .custom-form .form-control,
    .custom-form textarea{
      height:60px;
      border-radius:16px;
      border:1px solid #e6dfe7;
      padding:15px 20px;
      font-size:15px;
      box-shadow:none;
      transition:0.4s;
      background:#faf7fa;
    }

    .custom-form textarea{
      height:160px;
      resize:none;
      padding-top:18px;
    }

    .custom-form .form-control:focus,
    .custom-form textarea:focus{
      border-color:var(--primary);
      background:#fff;
      box-shadow:0 0 0 4px rgba(115,88,121,0.08);
    }


    /* BUTTON */

    .submit-btn{
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      color:#fff;
      border:none;
      padding:18px 40px;
      border-radius:60px;
      font-size:16px;
      font-weight:600;
      transition:0.4s;
      display:inline-flex;
      align-items:center;
      gap:12px;
      margin-top:10px;
    }

    .submit-btn:hover{
      transform:translateY(-4px);
      box-shadow:0 15px 35px rgba(115,88,121,0.25);
    }


    /* =========================
       MAP SECTION
    ========================= */

    .map-section{
      padding-bottom:100px;
    }

    .map-box{
      border-radius:30px;
      overflow:hidden;
      box-shadow:0 20px 50px rgba(0,0,0,0.08);
    }

    .map-box iframe{
      width:100%;
      height:500px;
      border:none;
      display:block;
    }


    /* =========================
       RESPONSIVE
    ========================= */

    @media(max-width:991px){

      .contact-hero{
        padding:120px 0 90px;
      }

      .contact-hero h1{
        font-size:56px;
      }

      .contact-info,
      .contact-form-wrapper{
        padding:50px 35px;
      }

      .contact-info h2,
      .form-title h3{
        font-size:34px;
      }

    }


    @media(max-width:576px){

      .contact-hero{
        padding:100px 0 70px;
      }

      .contact-hero h1{
        font-size:38px;
      }

      .contact-hero p{
        font-size:15px;
        line-height:1.8;
      }

      .contact-section{
        padding:70px 0;
      }

      .contact-info,
      .contact-form-wrapper{
        padding:40px 25px;
      }

      .contact-info h2,
      .form-title h3{
        font-size:28px;
      }

      .info-item{
        gap:14px;
      }

      .info-icon{
        min-width:55px;
        height:55px;
        font-size:20px;
        border-radius:15px;
      }

      .custom-form .form-control,
      .custom-form textarea{
        border-radius:14px;
      }

      .submit-btn{
        width:100%;
        justify-content:center;
      }

      .map-box iframe{
        height:350px;
      }

    }
    /* =========================
   PRIVACY POLICY SECTION
========================= */

.privacy-policy-section{
  padding:40px 0;
  background:#fff;
  overflow:hidden;
}


/* =========================
   HEADING
========================= */

.privacy-heading{
  max-width:850px;
  margin:auto;
  margin-bottom:70px;
}

.privacy-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;

  background:rgba(115,88,121,0.1);

  color:#735879;

  padding:10px 22px;

  border-radius:50px;

  font-size:14px;
  font-weight:600;

  margin-bottom:22px;
}

.privacy-heading h1{
  font-size:58px;
  line-height:1.2;
  margin-bottom:18px;
  color:#111;
  font-weight:700;
}

.privacy-heading h1 span{
  color:#735879;
}

.privacy-heading p{
  font-size:17px;
  line-height:1.9;
  color:#666;
}


/* =========================
   CONTENT BOX
========================= */

.privacy-content{
  background:#ffffff;
  border-radius:30px;
  padding:60px;
  box-shadow:0 20px 60px rgba(115,88,121,0.08);
}


/* =========================
   ITEM
========================= */

.privacy-item{
  padding-bottom:35px;
  margin-bottom:35px;
  border-bottom:1px solid #ece4ed;
}

.privacy-item:last-child{
  margin-bottom:0;
  padding-bottom:0;
  border-bottom:none;
}

.privacy-item h3{
  font-size:28px;
  color:#2d123c;
  margin-bottom:18px;

  display:flex;
  align-items:center;
  gap:14px;
}

.privacy-item h3 i{
  color:#a56891;
  font-size:22px;
}

.privacy-item p{
  font-size:16px;
  line-height:1.9;
  color:#555;
  margin:0;
}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .privacy-policy-section{
    padding:80px 0;
  }

  .privacy-heading h1{
    font-size:46px;
  }

  .privacy-content{
    padding:45px;
  }

  .privacy-item h3{
    font-size:24px;
  }

}

@media(max-width:576px){

  .privacy-policy-section{
    padding:70px 0;
  }

  .privacy-heading{
    margin-bottom:50px;
  }

  .privacy-heading h1{
    font-size:36px;
  }

  .privacy-heading p{
    font-size:15px;
    line-height:1.8;
  }

  .privacy-content{
    padding:30px 22px;
    border-radius:22px;
  }

  .privacy-item{
    padding-bottom:28px;
    margin-bottom:28px;
  }

  .privacy-item h3{
    font-size:20px;
    line-height:1.5;
    align-items:flex-start;
  }

  .privacy-item p{
    font-size:15px;
    line-height:1.8;
  }

}
/* =========================
   TERMS SECTION
========================= */

.terms-section{
  padding:40px 0;
  background:#fff;
  overflow:hidden;
}


/* =========================
   HEADING
========================= */

.terms-heading{
  max-width:850px;
  margin:auto;
  margin-bottom:70px;
}

.terms-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;

  background:rgba(115,88,121,0.1);

  color:#735879;

  padding:10px 22px;

  border-radius:50px;

  font-size:14px;
  font-weight:600;

  margin-bottom:22px;
}

.terms-heading h1{
  font-size:58px;
  line-height:1.2;
  margin-bottom:18px;
  color:#111;
  font-weight:700;
}

.terms-heading h1 span{
  color:#735879;
}

.terms-heading p{
  font-size:17px;
  line-height:1.9;
  color:#666;
}


/* =========================
   CONTENT BOX
========================= */

.terms-content{
  background:#ffffff;
  border-radius:30px;
  padding:60px;
  box-shadow:0 20px 60px rgba(115,88,121,0.08);
}


/* =========================
   ITEM
========================= */

.terms-item{
  padding-bottom:35px;
  margin-bottom:35px;
  border-bottom:1px solid #ece4ed;
}

.terms-item:last-child{
  margin-bottom:0;
  padding-bottom:0;
  border-bottom:none;
}

.terms-item h3{
  font-size:28px;
  color:#2d123c;
  margin-bottom:18px;

  display:flex;
  align-items:center;
  gap:14px;
}

.terms-item h3 i{
  color:#a56891;
  font-size:22px;
}

.terms-item p{
  font-size:16px;
  line-height:1.9;
  color:#555;
  margin:0;
}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .terms-section{
    padding:80px 0;
  }

  .terms-heading h1{
    font-size:46px;
  }

  .terms-content{
    padding:45px;
  }

  .terms-item h3{
    font-size:24px;
  }

}

@media(max-width:576px){

  .terms-section{
    padding:70px 0;
  }

  .terms-heading{
    margin-bottom:50px;
  }

  .terms-heading h1{
    font-size:36px;
  }

  .terms-heading p{
    font-size:15px;
    line-height:1.8;
  }

  .terms-content{
    padding:30px 22px;
    border-radius:22px;
  }

  .terms-item{
    padding-bottom:28px;
    margin-bottom:28px;
  }

  .terms-item h3{
    font-size:20px;
    line-height:1.5;
    align-items:flex-start;
  }

  .terms-item p{
    font-size:15px;
    line-height:1.8;
  }

}
/* =========================
   REFUND POLICY SECTION
========================= */

.refund-policy-section{
  padding:40px 0;
  background:#fff;
  overflow:hidden;
}


/* =========================
   HEADING
========================= */

.refund-heading{
  max-width:850px;
  margin:auto;
  margin-bottom:70px;
}

.refund-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;

  background:rgba(115,88,121,0.1);

  color:#735879;

  padding:10px 22px;

  border-radius:50px;

  font-size:14px;
  font-weight:600;

  margin-bottom:22px;
}

.refund-heading h1{
  font-size:58px;
  line-height:1.2;
  margin-bottom:18px;
  color:#111;
  font-weight:700;
}

.refund-heading h1 span{
  color:#735879;
}

.refund-heading p{
  font-size:17px;
  line-height:1.9;
  color:#666;
}


/* =========================
   CONTENT BOX
========================= */

.refund-content{
  background:#ffffff;
  border-radius:30px;
  padding:60px;
  box-shadow:0 20px 60px rgba(115,88,121,0.08);
}


/* =========================
   ITEM
========================= */

.refund-item{
  padding-bottom:35px;
  margin-bottom:35px;
  border-bottom:1px solid #ece4ed;
}

.refund-item:last-child{
  margin-bottom:0;
  padding-bottom:0;
  border-bottom:none;
}

.refund-item h3{
  font-size:28px;
  color:#2d123c;
  margin-bottom:18px;

  display:flex;
  align-items:center;
  gap:14px;
}

.refund-item h3 i{
  color:#a56891;
  font-size:22px;
}

.refund-item p{
  font-size:16px;
  line-height:1.9;
  color:#555;
  margin:0;
}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .refund-policy-section{
    padding:80px 0;
  }

  .refund-heading h1{
    font-size:46px;
  }

  .refund-content{
    padding:45px;
  }

  .refund-item h3{
    font-size:24px;
  }

}

@media(max-width:576px){

  .refund-policy-section{
    padding:70px 0;
  }

  .refund-heading{
    margin-bottom:50px;
  }

  .refund-heading h1{
    font-size:36px;
  }

  .refund-heading p{
    font-size:15px;
    line-height:1.8;
  }

  .refund-content{
    padding:30px 22px;
    border-radius:22px;
  }

  .refund-item{
    padding-bottom:28px;
    margin-bottom:28px;
  }

  .refund-item h3{
    font-size:20px;
    line-height:1.5;
    align-items:flex-start;
  }

  .refund-item p{
    font-size:15px;
    line-height:1.8;
  }

}
/* =========================
   REGISTRATION CTA SECTION
========================= */

.registration-cta-section{
  padding:40px 0;
  background:#fff;
  overflow:hidden;
}


/* CTA BOX */

.registration-cta-box{

/*background: linear-gradient(135deg, #735879, #a56891);*/
    /* background-color: #ffffff05; */
    border-radius: 35px;
    padding: 30px 60px;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    position: relative;
    overflow: hidden;
}


/* BG EFFECT */

.registration-cta-box::before{
  content:'';
  position:absolute;

  width:280px;
  height:280px;

  border-radius:50%;

  background:rgba(255,255,255,0.08);

  top:-120px;
  right:-120px;
}


/* CONTENT */

.registration-content{ 
  z-index:2;
  max-width:100%;
}


/* TAG */

.registration-tag{

  display:inline-flex;
  align-items:center;
  gap:10px;

  background:#fff;

  color:#000;

  padding:10px 22px;

  border-radius:50px;

  font-size:16px;
  font-weight:600;

  margin-bottom:24px;
}


/* HEADING */

.registration-content h2{

  font-size:38px;
  line-height:1.2;

  color:#a0668e;

  margin-bottom:18px;

  font-weight:700;
}

.registration-content h2 span{
  color:#9c668d;
}


/* TEXT */

.registration-content p{

  color:#000;

  font-size:16px;
  line-height:1.9; 
}


/* =========================
   PRICE LIST
========================= */

.registration-price-list{

  background:rgba(255,255,255,0.08);

  border:1px solid rgba(255,255,255,0.12);

  padding:28px;

  border-radius:22px;

  margin-bottom:30px;

  backdrop-filter:blur(10px);
}
  .registration-price-list {
    width: 100%;
    overflow: hidden;
  }

  .table-responsive-custom {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .table-responsive-custom table {
    min-width: 550px; /* mobile me scroll ke liye */
    margin-bottom: 0;
    text-align: center;
  }

  .custom-table {
    background: transparent !important;
    color: #fff;
    white-space: nowrap;
  }

  .custom-table th,
  .custom-table td {
    background: transparent !important;
    border-color: #555252;
    color: #000;
    padding: 14px 18px;
  }
.registration-price-list h4{

  color:#000;

  font-size:24px;

  margin-bottom:20px;
}

.registration-price-list ul{
  list-style:none;
  padding:0;
  margin:0;
}

.registration-price-list ul li{

  display:flex;
  justify-content:space-between;

  padding:12px 0;

  border-bottom:1px solid rgba(255,255,255,0.12);

  color:#fff;

  font-size:17px;
}

.registration-price-list ul li:last-child{
  border-bottom:none;
}

.registration-price-list ul li span{
  font-weight:600;
}


/* REFUNDABLE */

.fully-refundable{ 

  display:inline-flex;
  align-items:center;
  gap:10px;

  background:#735879;

  color:#fff;

  padding:12px 20px;

  border-radius:50px;

  font-size:15px;
  font-weight:600;
}


/* =========================
   FLAT PRICE
========================= */

.flat-price-box{
  margin-bottom:30px;
}

.flat-price-box h4{

  color:#fff;

  font-size:24px;

  margin-bottom:20px;
}

.flat-price-grid{

  display:grid;
  grid-template-columns:repeat(3,1fr);

  gap:18px;
}

.flat-price-item{

  background:rgba(255,255,255,0.08);

  border-radius:18px;

  padding:24px;

  text-align:center;
}

.flat-price-item h5{

  color:#fff;

  font-size:20px;

  margin-bottom:10px;
}

.flat-price-item p{

  margin:0;

  color:#fff;

  font-size:24px;

  font-weight:700;
}


/* =========================
   DRAW DATE
========================= */

.draw-date-box{
      background: #58026c;
    display: flex;
    padding: 19px;
    align-items: center;
    border-radius: 50px;
    gap: 12px;
    text-align: center;
    max-width: 339px;
}

.draw-date-box span{

  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;

  color:#ffe739;

  font-size:16px;
  font-weight:600; 
}

.draw-date-box h3{

  margin:0;

  color:#fff;

  font-size:16px;

  font-weight:700;
}


/* =========================
   BUTTON
========================= */
 .div-draw {
  justify-content: space-between;
  display: flex;
 }
 .registration-btn-box{
  align-self:flex-end;
 }
.registration-btn{

  background:#58026c;

  color:#fff;

  text-decoration:none;

  padding:18px 34px;

  border-radius:60px;

  display:inline-flex;
  align-items:center;
  gap:12px;

  font-size:16px;
  font-weight:600;

  transition:0.4s;
}

.registration-btn:hover{

  background:#2d123c;

  color:#fff;

  transform:translateY(-5px);
}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .registration-cta-box{
    flex-direction:column;
    align-items:flex-start;
    padding:50px 35px;
  }

  .registration-content h2{
    font-size:38px;
  }

  .flat-price-grid{
    grid-template-columns:1fr;
  }

}

@media(max-width:576px){

  .registration-cta-section{
    padding:30px 0;
  }

  .registration-cta-box{
    padding:35px 22px;
    border-radius:24px;
  }

  .registration-content h2{
    font-size:20px;
  }

  .registration-content p{
    font-size:15px;
    line-height:1.8;
  }

  .registration-price-list,
  .draw-date-box{
    padding:20px;
    border-radius:50px;
    text-align: center;
  }

  .registration-price-list h4,
  .flat-price-box h4{
    font-size:20px;
  }

  .registration-price-list ul li{
    font-size:15px;
  }

  .flat-price-item p{
    font-size:20px;
  }

  .draw-date-box h3{
    font-size:14px;
  }
.draw-date-box span{
    font-size:14px;
}
  .registration-btn{
    width:100%;
    justify-content:center;
  }
 .div-draw {
  flex-direction: column;
  gap: 12px;
}
.registration-btn-box {
    align-self: auto;
}
.unit-tag{
    font-size: 14px;
}
}

/* =========================
   REGISTRATION FORM
========================= */

.registration-form-section{
  padding:40px 0;
  background:#fff;
}


/* FORM BOX */

.form-box{
  background:#fff;
  padding:45px;
  border-radius:25px;
  margin-bottom:35px;

  box-shadow:0 10px 40px rgba(115,88,121,0.08);
}


/* HEADING */

.form-box h3{
  font-size:30px;
  color:#2d123c; 
}


/* LABEL */

.form-box label{
  font-size:15px;
  font-weight:600;
  color:#444;
  margin-bottom:10px;
  display:block;
}


/* INPUT */

.form-control,
.form-select{

  height:58px;

  border-radius:16px;

  border:1px solid #ddd;

  padding:12px 18px;

  font-size:15px;

  box-shadow:none;

  transition:0.3s;
}

.form-control:focus,
.form-select:focus{

  border-color:#735879;

  box-shadow:0 0 0 4px rgba(115,88,121,0.08);

}


/* BUTTON */

.submit-btn{
  background:linear-gradient(135deg,#735879,#a56891);

  color:#fff;

  border:none;

  padding:18px 38px;

  border-radius:60px;

  font-size:16px;
  font-weight:600;

  display:inline-flex;
  align-items:center;
  gap:12px;

  transition:0.4s;
}

.submit-btn:hover{
  transform:translateY(-5px);
}


/* RESPONSIVE */
.form-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:25px;
    padding-bottom: 15px;
    flex-wrap:wrap;
    border-bottom: 1px solid #ece4ed;

}

.visitor-count{
    display:flex;
    align-items:center;
    gap:8px;
    background: #f2f60561;
    color: #000000;
    padding: 10px 18px;
    border-radius: 50px;
    font-size: 17px;
    font-weight:600;
    border:1px solid rgba(59,79,234,0.15);
}

@media(max-width:576px){

    .form-heading{
        flex-direction:column;
        align-items:flex-start;
    }

}
@media(max-width:576px){
.fully-refundable{
  font-size: 13px;
}
  .registration-form-section{
    padding:70px 0;
  }

  .form-box{
    padding:28px 22px;
    border-radius:20px;
  }

  .form-box h3{
    font-size:24px;
  }

  .submit-btn{
    width:100%;
    justify-content:center;
  }

}
/* =========================
   ELIGIBILITY BOX
========================= */

.eligibility-box{
  border:1px solid #e7dfe8;
  border-radius:18px;
  padding:30px;
  background:#fffdfd;
}


/* HEADING */

.eligibility-box h4{
  font-size:22px;
  color:#2d123c;
  margin-bottom:18px;
}

.eligibility-box p{
  font-size:15px;
  line-height:1.9;
  color:#555;
}


/* =========================
   PROJECT TABLE
========================= */

.project-table{
  margin-top:30px;
  margin-bottom:35px;
}

.table-row{
  display:flex;
  border-bottom:1px solid #ece4ed;
  padding:14px 0;
}

.table-title{
  width:40%;
  font-size:15px;
  font-weight:600;
  color:#2d123c;
}

.table-value{
  width:60%;
  font-size:15px;
  color:#666;
}


/* =========================
   POINTS
========================= */

.eligibility-points{
  padding-left:18px;
  margin-bottom:35px;
}

.eligibility-points li{
  font-size:15px;
  line-height:1.9;
  color:#555;
  margin-bottom:14px;
  list-style: none;
}

 


/* =========================
   AGREEMENT BOX
========================= */

.agreement-box{
  border:1px solid #e7dfe8;
  border-radius:18px;
  padding:28px;
  background:#fffdfd;
}


/* CHECKBOX */

.form-check{
  display:flex;
  align-items:flex-start;
  gap:12px;
}

.form-check-input{
  margin-top:5px;
  border:1px solid #735879;
  box-shadow:none !important;
}

.form-check-input:checked{
  background-color:#735879;
  border-color:#735879;
}

.form-check-label{
  font-size:15px;
  line-height:1.8;
  color:#444;
}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:576px){

  .eligibility-box,
  .agreement-box{
    padding:22px 18px;
    border-radius:16px;
  }

  .eligibility-box h4{
    font-size:20px;
  }

  .table-row{
    flex-direction:column;
    gap:8px;
  }

  .table-title,
  .table-value{
    width:100%;
  }

  .eligibility-box p,
  .eligibility-points li,
  .form-check-label{
    font-size:14px;
    line-height:1.8;
  }

}
/* =========================
   SECTION
========================= */

.gallery-progress-tabs-section{
  padding:40px 0;
  background:#f9f9f9;
  overflow:hidden;
}


/* HEADING */

.gallery-progress-heading{
  margin-bottom:50px;
}

.gallery-progress-tag{

  display:inline-flex;
  align-items:center;
  gap:10px;

  background:rgba(115,88,121,0.1);

  color:#735879;

  padding:10px 22px;

  border-radius:50px;

  font-size:16px;
  font-weight:600;

  margin-bottom:20px;
}

.gallery-progress-heading h2{

  font-size:38px;
  color:#111;
  margin:0;
}

.gallery-progress-heading h2 span{
  color:#735879;
}


/* =========================
   TABS
========================= */

.gallery-progress-tabs{

  display:flex;
  justify-content:center;
  gap:18px;

  margin-bottom:50px;

  flex-wrap:wrap;
}

.tab-btn{

  border:none;

  background:#fff;

  color:#735879;

  padding:16px 30px;

  border-radius:60px;

  font-size:16px;
  font-weight:600;

  display:flex;
  align-items:center;
  gap:12px;

  transition:0.4s;

  box-shadow:0 10px 30px rgba(115,88,121,0.08);
}

.tab-btn.active{

  background:linear-gradient(135deg,#735879,#a56891);

  color:#fff;
}

.tab-btn:hover{
  transform:translateY(-4px);
}


/* =========================
   TAB CONTENT
========================= */

.tab-content{
  display:none;
}

.tab-content.active{
  display:block;
}


/* =========================
   PROJECT CARD
========================= */

.progress-card{
  position:relative;
  overflow:hidden;
  border-radius:25px;
}

.progress-card img{
  width:100%;
  height:420px;
  object-fit:cover;
  transition:0.5s;
}

.progress-card:hover img{
  transform:scale(1.08);
}


/* OVERLAY */

.progress-overlay{

  position:absolute;
  left:0;
  bottom:0;

  width:100%;

  padding:25px;

  background:linear-gradient(to top,
  rgba(45,18,60,0.9),
  transparent);
}

.progress-overlay h4{
  color:#fff;
  margin:0;
  font-size:20px;
}


/* =========================
   GALLERY GRID
========================= */

.gallery-grid{

  display:grid;

  grid-template-columns:repeat(4,1fr);

  gap:22px;
}

.gallery-item{
  overflow:hidden;
  border-radius:22px;
  cursor:pointer;
}

.gallery-item img{

  width:100%;
  height:280px;

  object-fit:cover;

  transition:0.5s;
}

.gallery-item:hover img{
  transform:scale(1.08);
}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:991px){

  .gallery-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .gallery-progress-heading h2{
    font-size:40px;
  }

}

@media(max-width:576px){
.gallery-progress-tag{
 font-size: 14px;   
}
  .gallery-progress-tabs-section{
    padding:30px 0;
  }

  .gallery-progress-heading h2{
    font-size:24px;
  }

  .gallery-grid{
    grid-template-columns:1fr;
  }

  .tab-btn{
    width:100%;
    justify-content:center;
    font-size: 14px;
  }

  .progress-card img{
    height:300px;
  }

  .gallery-item img{
    height:240px;
  }

}

.faq-section{
  padding:40px 20px;
  background:#fff;
  overflow:hidden;
  font-family:'Poppins', sans-serif;
}

.faq-section .container{
  max-width:1150px;
  margin:auto;
}

/* =========================
   HEADING
========================= */

.faq-heading{
  text-align:center;
  margin-bottom:70px;
}

.faq-heading > span{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:#ebe5e9;
  color:#735879;
  padding:14px 30px;
  border-radius:60px;
  font-size:16px;
  font-weight:600;
  font-family:'Montserrat', sans-serif;
  margin-bottom:28px;
}

.faq-heading > span svg{
  width:18px;
  height:18px;
}

.faq-heading h2{
  font-size:38px;
  line-height:1;
  font-weight:800;
  margin:0;
  color:#000;
  font-family:'Montserrat', sans-serif;
  letter-spacing:-2px;
}

.faq-heading h2 span{
  color:#735879;
}

/* =========================
   FAQ BOX
========================= */

.faq-wrapper{
  display:flex;
  flex-direction:column;
  gap:22px;
}

.faq-item{
  background:#f8f5f8;
  border-radius:24px;
  overflow:hidden;
  border:1px solid #eadfe6;
  transition:0.35s ease;
  box-shadow:0 10px 35px rgba(0,0,0,0.04);
}

.faq-item.active{
  border-color:#a56891;
  box-shadow:0 20px 45px rgba(165,104,145,0.12);
}

.faq-question{
  width:100%;
  border:none;
  background:none;
  padding:28px 32px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  cursor:pointer;
  text-align:left;
  color:#1a1a1a;
  font-size:21px;
  font-weight:600;
  font-family:'Montserrat', sans-serif;
}

.faq-question span{
  width:42px;
  height:42px;
  border-radius:50%;
  background:#bca3b6;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:26px;
  font-weight:500;
  transition:0.35s ease;
  flex-shrink:0;
}

.faq-item.active .faq-question span{
  background:#735879;
  transform:rotate(45deg);
}

.faq-answer{
  max-height:0;
  overflow:hidden;
  transition:max-height 0.4s ease;
}

.faq-answer p{
  padding:0 32px 30px;
  margin:0;
  color:#666;
  line-height:1.9;
  font-size:16px;
  font-weight:400;
  font-family:'Poppins', sans-serif;
}

.faq-item.active .faq-answer{
  max-height:300px;
}

/* =========================
   MOBILE RESPONSIVE
========================= */

@media(max-width:768px){

  .faq-section{
    padding:30px 15px;
  }

  .faq-heading{
    margin-bottom:45px;
  }

  .faq-heading > span{
    font-size:14px;
    padding:12px 22px;
  }

  .faq-heading h2{
    font-size:24px;
    line-height:1.1;
    letter-spacing:-1px;
  }

  .faq-question{
    padding:22px 20px;
    font-size:16px;
    line-height:1.5;
  }

  .faq-question span{
    width:36px;
    height:36px;
    font-size:22px;
  }

  .faq-answer p{
    padding:0 20px 24px;
    font-size:14px;
    line-height:1.8;
  }

}

.highlight-section{ 
  background:transparent;
}

.highlight-wrapper{
  max-width:1300px;
  margin:auto;
  background:#f7f3f6;
  border:1px solid #e7dce4;
  border-radius:18px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  overflow:hidden;
}

/* =========================
   BOX
========================= */

.highlight-box{
  display:flex;
  align-items:center;
  gap:16px;
  padding:22px 26px;
  position:relative;
  transition:0.3s ease;
}

.highlight-box:hover{
  background:#fff;
}

.highlight-box:not(:last-child)::after{
  content:"";
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
  width:1px;
  height:45px;
  background:#d8b877;
}

/* =========================
   ICON
========================= */

.highlight-icon{
  width:52px;
  height:52px;
  min-width:52px;
  border-radius:50%;
  background:#8a3f73;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:20px;
}

/* =========================
   CONTENT
========================= */

.highlight-content h4{
  margin:0;
  font-size:18px;
  line-height:1.2;
  font-weight:400;
  color:#222;
  font-family:'Montserrat', sans-serif;
}

.highlight-content p{
  margin:3px 0 0;
  font-size:15px;
  color:#444;
  font-weight:500;
  line-height:1.4;
  font-family:'Poppins', sans-serif;
}

/* =========================
   MOBILE
========================= */

@media(max-width:991px){

  .highlight-wrapper{
    grid-template-columns:repeat(2,1fr);
  }

  .highlight-box:nth-child(2)::after{
    display:none;
  }

}

@media(max-width:576px){

  .highlight-wrapper{
    grid-template-columns:1fr;
  }

  .highlight-box{
    padding:20px;
  }

  .highlight-box::after{
    display:none;
  }

  .highlight-box:not(:last-child){
    border-bottom:1px solid #eadfe6;
  }

  .highlight-content h4{
    font-size:16px;
  }

  .highlight-content p{
    font-size:14px;
  }

}

/* SUB HEADING LINE */

.amenities-heading h2{
  position: relative;
  display: inline-block;
}

.amenities-heading h2::after{
  content: "Designed for Everyday Family Living";
  display: block;
  width: fit-content;
  margin: 12px auto 0;
  font-size: 20px;
  font-weight: 500;
  color: #3d3d3d;
  font-family: 'Poppins', sans-serif;
  position: relative;
  padding: 0 100px;
}

.amenities-heading h2::before{
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 11px;
  width: 100%;
  height: 2px;
  background: linear-gradient(to right,
  transparent 0%,
  #d4b06a 15%,
  transparent 17%,
  transparent 83%,
  #d4b06a 85%,
  transparent 100%);
}

@media(max-width:768px){

  .amenities-heading h2::after{
    font-size: 14px;
    padding: 0 40px;
    line-height: 1.5;
  }

  .amenities-heading h2::before{
    bottom: 10px;
    background: linear-gradient(to right,
  transparent 0%,
  #d4b06a 3%,
  transparent 12%,
  transparent 89%,
  #d4b06a 85%,
  transparent 100%);
  }

}