
        @import url('https://fonts.cdnfonts.com/css/optima');

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
 
}

body{ background:#fff; color:#222; }


h1, h2, h3, h4, h5{
     font-family: 'optima', sans-serif;
}
.btn-fill, .btn-outline{
      font-family: 'optima', sans-serif;
}
p, li, span{
    font-family: 'lato', Sans-Serif;
}

.about-content-glass h2{
     font-family: 'optima', sans-serif;
}

.lux-btn-outline{
     font-family: 'optima', sans-serif;
}
.lux-btn-fill{
     font-family: 'optima', sans-serif;
}



.spec-value.price{
    font-family: 'optima', sans-serif;
}
.abt-btn{
      font-family: 'optima', sans-serif;
}

.stat-item p{
       font-family: 'optima', sans-serif;
}

.container{
  width:90%;
  max-width:1200px;
  margin:auto;
}

/* HEADER */
/* HEADER BASE */
#mainHeader{
  position:fixed;
  top:0;
  left:0;
  right:0;
  background:#fff;
  box-shadow:0 5px 20px rgba(0,0,0,.08);
  z-index:9999;
}

.headerContainer{
  max-width:1200px;
  margin:auto;
  padding:10px 18px;
  display:flex;
  justify-content:space-between;
  align-items:center;
}

/* LOGO */
.logoWrap img{
  height:42px;
}

/* DESKTOP NAV */
.navMenu a{
  margin-left:20px;
  text-decoration:none;
  color:#111;
  font-weight:600;
}

.navMenu a:hover{
  color:#0c8a57;
}

/* HAMBURGER ICON */
#menuToggle{
  width:28px;
  cursor:pointer;
  display:none;
}

#menuToggle span{
  display:block;
  height:3px;
  background:#111;
  margin:5px 0;
  border-radius:20px;
}

/* MOBILE MENU PANEL */
.mobileMenu{
  display:none;
  flex-direction:column;
  background:#ffffff;
  padding:10px 18px 15px;
  box-shadow:0 20px 40px rgba(0,0,0,.15);
}

.mobileMenu a{
  padding:8px 0;
  text-decoration:none;
  color:#111;
  font-weight:600;
}

/* RESPONSIVE BEHAVIOUR */
@media(max-width:850px){

  .navMenu{
    display:none;
  }

  #menuToggle{
    display:block;
  }

  .mobileMenu{
    display:none;
  }

  .mobileMenu.show{
    display:flex;
  }
}

/* add page top spacing under sticky header */
body{
  padding-top:70px;
}

/* HERO SECTION */
.hero{
  height:100vh;
  background:url('../slider1.webp') center/cover no-repeat;
  position:relative;
  display:flex;
  align-items:center;
}

.overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(
    to right,
    rgba(0,0,0,0.75),
    rgba(0,0,0,0.45),
    rgba(0,0,0,0.2)
  );
}

/* HERO CONTAINER */
.hero-container{
  position:relative;
  width:90%;
  max-width:1200px;
  margin:auto;
  display:grid;
  grid-template-columns:1.2fr 0.8fr;
  gap:60px;
  align-items:center;
  z-index:2;
}

/* LEFT CONTENT */
.hero-left{
  color:#fff;
}

.hero-badge{
  display:inline-block;
  margin-bottom:16px;
  padding:6px 14px;
  font-size:12px;
  border-radius:20px;
  background:#c5a042;
}

.hero-left h1{
  font-size:52px;
  line-height:1.2;
  margin-bottom:16px;
}

.hero-left p{
  font-size:18px;
  max-width:520px;
  opacity:0.9;
  margin-bottom:28px;
}

.hero-btns{
  display:flex;
  gap:16px;
}

/* RIGHT FORM */
.hero-form{
  background:rgba(0,0,0,0.65);
  backdrop-filter:blur(14px);
  padding:32px;
  border-radius:18px;
  color:#fff;
}

.hero-form h3{
  font-size:22px;
  margin-bottom:6px;
}

.hero-form p{
  font-size:14px;
  opacity:0.8;
  margin-bottom:18px;
}

.hero-form form{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.hero-form input{
  padding:13px 14px;
  border-radius:8px;
  border:none;
  font-size:14px;
}

.hero-form button{
  margin-top:8px;
  padding:14px;
  border:none;
  border-radius:8px;
  background:#c5a042;
  color:#fff;
  font-size:15px;
  font-weight:500;
  cursor:pointer;
}

/* BUTTONS (REUSE YOUR EXISTING) */
.btn-fill{
  background:#c5a042;
  color:#fff;
  padding:14px 30px;
  border-radius:30px;
  text-decoration:none;
}

.btn-outline{
  border:1px solid #fff;
  color:#fff;
  padding:14px 30px;
  border-radius:30px;
  text-decoration:none;
}

/* RESPONSIVE */
@media(max-width:992px){
  .hero-container{
    grid-template-columns:1fr;
    gap:40px;
    padding: 16px 9px;
  }
  .about-img-glass{
margin-top: 80px;
  }


  .hero-left h1{
    font-size:30px;
  }
  
  .hero-left p{
      font-size: 13px;
  }
}

.stats-pro{
  padding:40px 0;
  background:#ffffff;
}

.stats-pro-wrap{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
}

/* card */
.stat-item{
  text-align:center;
  padding:28px 10px;
  border-radius:18px;

  background:rgba(255,255,255,0.6);
  backdrop-filter:blur(10px);

  border:1px solid rgba(0,0,0,0.06);

  box-shadow:0 20px 60px rgba(0,0,0,0.10);

  transition:0.4s ease;
}

/* hover */
.stat-item:hover{
  transform:translateY(-10px) scale(1.02);
  box-shadow:0 35px 80px rgba(0,0,0,0.18);
}

/* icon */
.icon-wrap{
  width:55px;
  height:55px;
  margin:0 auto 10px;
  background:#e9f4ef;
  color:#1f7a4f;
  font-size:24px;
  display:flex;
  justify-content:center;
  align-items:center;
  border-radius:50%;
}

/* numbers */
.stat-item h2{
  font-size:34px;
  color:#c5a042;
  margin-bottom:4px;
}

/* label */
.stat-item p{
  color:#444;
  font-size:14px;
}

/* responsive */
@media(max-width:900px){
  .stats-pro-wrap{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:560px){
  .stats-pro-wrap{
    grid-template-columns:1fr;
  }
}


:root{
  --green:#1f7a4f;
  --dark:#0e1b14;
}

/* SECTION */
.luxury{
  padding:100px 0;
  background:#0b0f0d;
}

.lux-title{
  text-align:center;
  font-size:42px;
  margin-bottom:70px;
  color:#fff;
  letter-spacing:1px;
}

/* GRID */
.lux-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:35px;
}

/* CARD */
/* CARD */
.lux-card{
  position:relative;
  height:500px;
  border:1px solid white;
  border-radius:22px;
  overflow:hidden;
  background:#000;
  transition:0.6s ease;
}

/* IMAGE AREA (FIXED) */
.lux-image{
  height:45%;
  overflow:hidden;
}

.lux-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:0.8s ease;
}

/* TAG */
.lux-tag{
  position:absolute;
  top:16px;
  left:16px;
  background:#c5a042;
  color:#fff;
  padding:6px 16px;
  font-size:12px;
  border-radius:20px;
  z-index:2;
}
/* GLASS CONTENT – REFINED */
.lux-glass{
  position:absolute;
  bottom:0;
  text-align: center;
  left:0;
  right:0;
  height:62%;
  padding:8px 14px;
  color:#fff;

  backdrop-filter: blur(14px);
  background:linear-gradient(
    to top,
    rgba(0,0,0,0.95),
    rgba(0,0,0,0.65)
  );

  transform:translateY(18%);
  transition:0.6s ease;
}

/* HEADER */
.lux-head h3{
  font-size:24px;
  font-weight:600;
  margin-bottom:6px;
}

.lux-location{
  font-size:14px;
  text-align: center;
  align-items: center;
  justify-content: center;
  opacity:1;
  display:flex;
  gap:8px;
}

#h3h3{
  text-align: center;
}

#ah3h3{
color: white;
text-decoration: none;
}
/* SMALL GREEN DOT (CLASSIC TOUCH) */
.icon-dot{
  width:7px;
  height:7px;
  background:var(--green);
  border-radius:50%;
}

/* DIVIDER */
.lux-divider{
  height:1px;
  background:rgba(255,255,255,0.15);
  margin:14px 0 16px;
}

/* SPECS */
.lux-specs{
 display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 4px;
    margin-bottom: 11px;
}

.spec-item{
  display:flex;
  flex-direction:column;
}

.spec-label{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:0.8px;
  opacity:0.6;
  margin-bottom:2px;
}

.spec-value{
  font-size:14px;
  font-weight:500;
}

.spec-item.highlight{
  grid-column:1 / -1;
}

.spec-value.price{
  font-size:18px;
  font-weight:600;
  color:#c5a042;
}

/* ACTIONS (SAME, JUST SPACING FIX) */
.lux-actions{
  display:flex;
  gap:12px;
}

/* HOVER */
.lux-card:hover .lux-glass{
  transform:translateY(0);
}

.lux-btn-outline{
  flex:1;
  padding:12px;
  border:1.5px solid #fff;
  color:#fff;
  text-align:center;
  border-radius:30px;
  text-decoration:none;
}

.lux-btn-fill{
  flex:1;
  padding:12px;
  background:#c5a042;
  color:#fff;
  text-align:center;
  border-radius:30px;
  text-decoration:none;
}

/* 🔥 HOVER MAGIC */
.lux-card:hover .lux-image img{
  transform:scale(1.12);
}

.lux-card:hover .lux-glass{
  transform:translateY(0);
}

/* RESPONSIVE */
@media(max-width:992px){
  .lux-grid{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:600px){
  .lux-grid{ grid-template-columns:1fr; }
}




#contactSection{
  padding:70px 0;
  background:#f8f9fb;
}

.contactWrap{
  max-width:900px;
  margin:auto;
  text-align:center;
  padding:0 20px;
}

/* heading */
.contactTitle{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  font-size:30px;
  font-weight:800;
}

.contactTitle span{
  width:70px;
  height:2px;
  background:#0c8a57;
}

.contactSub{
  color:#666;
  margin-bottom:18px;
}

/* card */
.contactCard{
  max-width:550px;
  margin: auto;
  padding:22px 22px 26px;
  background:white;
  border-radius:18px;
  box-shadow:0 25px 50px rgba(0,0,0,.12);
  backdrop-filter:blur(10px);
}

/* fields */
.formGroup{
  margin-bottom:12px;
}

.formGroup input,
.formGroup textarea{
  width:100%;
  padding:12px 14px;
  border-radius:10px;
  border:1px solid #ccc;
  outline:none;
  font-size:14px;
}

.formGroup input:focus,
.formGroup textarea:focus{
  border-color:#0c8a57;
}

/* button */
.contactBtn{
  width:100%;
  padding:12px;
  border-radius:30px;
  border:none;
  background:#0c8a57;
  color:white;
  font-weight:600;
  cursor:pointer;
}





#proFooter{
  background:#050807;
  color:#cfcfcf;
  position:relative;
}

/* gradient glow top */
.footerTopGlow{
  width:100%;
  height:3px;
  background:linear-gradient(90deg,#00e689,#00ffa8,#00995e);
}

/* wrapper */
.footerContainer{
  max-width:1200px;
  margin:auto;
  padding:45px 20px 25px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:40px;
}

/* columns */
.footerBox h3{
  color:#fff;
  margin-bottom:12px;
  font-size:18px;
}

.footerBox p{
  font-size:14px;
  line-height:1.6;
  opacity:.8;
}

/* links */
.footerBox ul{
  list-style:none;
  padding:0;
}

.footerBox ul li{
  margin-bottom:6px;
}

.footerBox ul li a{
  color:#dcdcdc;
  text-decoration:none;
  font-size:14px;
  transition:.3s;
}

.footerBox ul li a:hover{
  color:#21e6a0;
  padding-left:3px;
}

/* social icons */
.footerSocial a{
  display:inline-block;
  width:35px;
  height:35px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  text-align:center;
  line-height:35px;
  margin-right:6px;
  color:white;
  backdrop-filter:blur(5px);
  transition:.3s;
}

.footerSocial a:hover{
  background:#0aff9b;
  color:#000;
}

/* contact */
.footContact span{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:6px;
}

.footerEnq{
  display:inline-block;
  margin-top:10px;
  padding:9px 18px;
  border-radius:30px;
  text-decoration:none;
  color:#000;
  background:#0aff9b;
  font-weight:600;
}

/* bottom bar */
.footerBottom{
  text-align:center;
  padding:12px 10px;
  font-size:13px;
  border-top:1px solid rgba(255,255,255,.1);
}

/* responsive */
@media(max-width:900px){
  .footerContainer{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:600px){
  .footerContainer{
    grid-template-columns:1fr;
    text-align:center;
  }

  .footContact span{
    justify-content:center;
  }

  .footerSocial{
    justify-content:center;
  }
}


.about-img-glass{
  padding:50px 0 0px 0px;
  background:#fff;
}

.about-img-wrap{
  display:grid;
  grid-template-columns:1fr 1.1fr;
  gap:45px;
  align-items:center;
}

@media screen and (max-width: 567px){
  .about-img-box img{
    height: 100%;
  }
  #citySectionWhite p{
      font-size: 13px;
  }
  .proj-title-lined{
      font-size: 22px!important;
      margin-bottom: 10px;
  }
  .proj-sub{
      font-size: 12px!important;
  }
}

#citySectionWhite .btnWhite{
    font-family: optima;
}

/* IMAGE CARD */
.about-img-box img{
  width:100%;
  border-radius:12px;
  height: 430px;
  object-fit: cover;
  box-shadow:0 35px 90px rgba(0,0,0,.18);
}

/* GLASS CONTENT BOX */
.about-content-glass{
  padding:28px 32px;
  border-radius:22px;

  background:rgba(255,255,255,0.55);
  backdrop-filter:blur(12px);

  border:1px solid rgba(255,255,255,.6);
  box-shadow:
    0 30px 80px rgba(0,0,0,.12),
    inset 0 0 0 1px rgba(255,255,255,.4);

  transition:.45s ease;
}

/* hover elevation */
.about-content-glass:hover{
  transform:translateY(-6px);
  box-shadow:
    0 45px 120px rgba(0,0,0,.18),
    inset 0 0 0 1px rgba(255,255,255,.55);
}

/* badge */
.abt-badge{
  display:inline-block;
  background:#e9f4ef;
  padding:6px 14px;
  border-radius:30px;
  color:#1f7a4f;
  font-size:12px;
}

/* heading */
.about-content-glass h2{
  font-size:28px;
  line-height:1.35;
  margin:10px 0 12px;
}

.abt-green{ color:#1f7a4f; }
.abt-gold{ color:#c5a042; }

/* text */
.about-content-glass p{
  color:#444;
  margin-bottom:10px;
}

/* button */
.abt-btn{
  display:inline-block;
  margin-top:12px;
  padding:12px 26px;
  background:#c5a042;
  color:#fff;
  text-decoration:none;
  border-radius:30px;
  font-weight:500;
}

.abt-btn:hover{
  background:#145c39;
}

/* RESPONSIVE */
@media(max-width:950px){
  .about-img-wrap{
    grid-template-columns:1fr;
  }
}
.lux-title{
  text-align:center;
  font-size:38px;
  margin-bottom:6px;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
}

.lux-title span{
  flex:1;
  height:3px;
  background:#1f7a4f;
  border-radius:3px;
}

.lux-subheading{
  text-align:center;
  color:#fff;
  margin:0 0 22px;
  font-size:16px;
  padding-bottom: 20px;
}


#citySectionWhite{
  background:#ffffff;
  padding:70px 0 90px;
  font-family:'Poppins', sans-serif;
}

/* CONTAINER */
#citySectionWhite .cityWrapWhite{
  max-width:1200px;
  margin:auto;
  padding:0 20px;
  display:grid;
  grid-template-columns:38% 62%;
  gap:40px;
  color:#111;
}

/* LEFT TEXT */
#citySectionWhite .miniWhite{
  letter-spacing:3px;
  font-size:12px;
  opacity:.7;
}

#citySectionWhite h2{
  font-size:42px;
  line-height:1.2;
  margin:10px 0;
}

#citySectionWhite h2 span{
  color:#00b870;
}

#citySectionWhite p{
  opacity:.7;
  margin-bottom:10px;
}

#citySectionWhite .btnWhite{
  display:inline-block;
  padding:10px 24px;
  border-radius:30px;
  background:#c5a042;
  color:white;
  text-decoration:none;
}

/* RIGHT LAYOUT */
#citySectionWhite .cityRightWhite{display:flex;flex-direction:column;gap:18px;}

#citySectionWhite .rowTopWhite{
  display:grid;
  grid-template-columns:55% 45%;
  gap:16px;
}

#citySectionWhite .stackWhite{display:grid;gap:14px;}

#citySectionWhite .rowBottomWhite{
  display:grid;
  grid-template-columns:33% 33% 33%;
  gap:1%;
}

/* CARD DESIGN */
#citySectionWhite .cardWhite{
  position:relative;
  overflow:hidden;
  border-radius:18px;
  background:#000;
  box-shadow:0 25px 50px rgba(0,0,0,.18);
  transition:.4s;
}

#citySectionWhite .cardWhite img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:.5s;
}

/* Sizes */
#citySectionWhite .tallWhite{height:400px;}
#citySectionWhite .wideWhite{height:100%;}

#citySectionWhite .mediumWhite{height:200px;}

/* GLASS LABEL */
#citySectionWhite .glassWhite{
  position:absolute;
  left:14px;
  bottom:14px;
  padding:6px 10px;
  border-radius:8px;
  backdrop-filter:blur(14px);
  background:rgba(0,0,0,.75);
  border:1px solid rgba(255,255,255,.12);
  color:white;
}

/* PREMIUM HOVER */
#citySectionWhite .cardWhite:hover img{
  transform:scale(1.08);
}

#citySectionWhite .cardWhite:hover{
  box-shadow:0 30px 70px rgba(0,0,0,.25);
}

/* ====== RESPONSIVE ====== */

/* Tablet (<=1024px) */
@media (max-width: 1024px){

  #citySectionWhite .cityWrapWhite{
    grid-template-columns: 100%;
  }

  #citySectionWhite .cityRightWhite{
    margin-top:20px;
  }

  #citySectionWhite .rowTopWhite{
    grid-template-columns: 50% 50%;
  }

  #citySectionWhite .tallWhite{
    height:340px;
  }

  #citySectionWhite .wideWhite{
    height:160px;
  }

  #citySectionWhite .mediumWhite{
    height:170px;
  }
}

/* Mobile (<=768px) */
@media (max-width: 768px){

  #citySectionWhite .cityWrapWhite{
    grid-template-columns: 100%;
    gap:25px;
  }

  #citySectionWhite h2{
    font-size:30px;
  }

  #citySectionWhite .rowTopWhite{
    grid-template-columns: 100%;
  }

  #citySectionWhite .stackWhite{
    grid-template-columns: 100%;
  }

  #citySectionWhite .rowBottomWhite{
    grid-template-columns: 100%;
  }

  /* card sizes */
  #citySectionWhite .tallWhite,
  #citySectionWhite .wideWhite,
  #citySectionWhite .mediumWhite{
    height:230px;
  }
  
  .lux-subheading{
      font-size: 13px;
  }
}

/* Small Mobile (<=480px) */
@media (max-width: 480px){

  #citySectionWhite .glassWhite{
    padding:8px 10px;
  }

  #citySectionWhite h3{
    font-size:14px;
  }

  #citySectionWhite .tallWhite,
  #citySectionWhite .wideWhite,
  #citySectionWhite .mediumWhite{
    height:200px;
  }
}

.cityLeftWhite{
padding-top: 150px;
}

.glassWhite h3{
  font-size: 16px;
  color:#c5a042;
}

.glassWhite span{
  font-size: 11px;
}

.project-container{
  max-width:1200px;
  margin:auto;
  padding:0 20px;
}

/* heading */
.project-filter-head{text-align:center;margin-bottom:25px;}

.proj-title-lined{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  font-size:34px;
  font-weight:800;
}

.proj-title-lined .line{
  width:70px;
  height:2px;
  background:#0c8a57;
}

.proj-sub{
  color:#666;
  font-size:15px;
}

/* filter buttons */
.filter-buttons{margin-top:10px;}

.fbtn{
  padding:8px 18px;
  border-radius:25px;
  border:1px solid #ddd;
  background:#fff;
  cursor:pointer;
}

.fbtn.active{
  background:#c5a042;
  color:#fff;
}

/* grid */
.projects-grid{
  margin-top:20px;
  display:grid;
  gap:18px;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
}


#blogSection{
  padding:60px 0;
}

.blogWrap{
  max-width:1200px;
  margin:auto;
  padding:0 20px;
  text-align:center;
}

/* heading */
.blogTitle{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  font-size:32px;
  font-weight:800;
}

.blogTitle .line{
  width:70px;
  height:2px;
  background:#0c8a57;
}

.blogSub{
  color:#666;
  margin-bottom:25px;
}

/* grid */
.blogGrid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(330px,1fr));
  gap:22px;
}

/* blog card */
.blogCard{
  background:white;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 20px 45px rgba(0,0,0,.12);
  transition:.3s;
}

.blogCard:hover{
  transform:translateY(-6px);
  box-shadow:0 30px 65px rgba(0,0,0,.18);
}

/* image */
.blogImg img{
  width:100%;
  height:220px;
  object-fit:cover;
  transition:.4s;
}

.blogCard:hover img{
  transform:scale(1.06);
}

/* text */
.blogContent{
  padding:18px;
  text-align:left;
}

.blogTag{
  background:#e8fff5;
  padding:6px 12px;
  border-radius:20px;
  color:#0c8a57;
  font-size:12px;
}

.blogContent h3{
  margin:10px 0 6px;
  font-size:18px;
}

.blogContent p{
  color:#666;
  font-size:14px;
}

.blogBtn{
  display:inline-block;
  margin-top:8px;
  text-decoration:none;
  color:#0c8a57;
  font-weight:600;
}


#reviewSection{
  padding:60px 0;
}

.reviewWrap{
  max-width:1100px;
  margin:auto;
  padding:0 20px;
  text-align:center;
}

/* heading */
.reviewTitle{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  font-size:30px;
  font-weight:800;
}

.reviewTitle .line{
  width:70px;
  height:2px;
  background:#0c8a57;
}

.reviewSub{
  color:#666;
  margin-bottom:25px;
}

/* grid */
.reviewGrid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  gap:20px;
}

/* card */
.reviewCard{
  background:white;
  padding:18px;
  border-radius:18px;
  box-shadow:0 20px 45px rgba(0,0,0,.12);
  text-align:left;
  transition:.4s;
}

.reviewCard:hover{
  transform:translateY(-6px);
  box-shadow:0 30px 65px rgba(0,0,0,.18);
}

/* top row */
.reviewTop{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}

.reviewImg{
  width:55px;
  height:55px;
  border-radius:50%;
}

/* stars */
.reviewStars{
  color:#ffb703;
  font-size:18px;
  margin-bottom:6px;
}

.reviewLocation{
  font-size:13px;
  color:#777;
}
#faqPro{
  padding:70px 0;
  background:#fff;
  font-family:'Poppins', sans-serif;
}

/* heading */
.faqPro-title{
  text-align:center;
  font-size:30px;
  font-weight:800;
  display:flex;
  justify-content:center;
  gap:10px;
}
.faqPro-title span{
  width:70px;
  height:2px;
  background:#0c8a57;
}

.faqPro-sub{
  text-align:center;
  color:#666;
  margin-bottom:25px;
}

/* wrapper */
.faqPro-wrapper{
  max-width:1100px;
  margin:auto;
  padding:0 20px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:25px;
}

/* EACH ITEM */
.faqPro-item {
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 15px 45px rgba(0, 0, 0, .12);
    padding: 23px 16px;
    transition: .3s;
    cursor: pointer;
    border: 1px solid #f1f1f1;
    margin-bottom: 10px;
}
.faqPro-item:hover{
  transform:translateY(-4px);
}

/* question bar */
.faqPro-question{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:600;
}

/* toggle icon right */
.faqPro-icon{
  margin-left:auto;
  font-size:20px;
}

/* answers */
.faqPro-answer{
  max-height:0;
  overflow:hidden;
  font-size:14px;
  color:#444;
  transition:.35s ease;
}

/* active state open */
.faqPro-item.active .faqPro-answer{
  max-height:180px;
  margin-top:6px;
}

/* active icon change */
.faqPro-item.active .faqPro-icon{
  content:"−";
}


#whatsappFloat{
  position:fixed;
  right:18px;
  text-decoration: none;
  bottom:118px;
  width:55px;
  height:55px;
  border-radius:50%;
  background:#25D366;
  color:white;
  font-size:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 25px rgba(0,0,0,.25);
  z-index:9999;
  transition:.3s;
}

#whatsappFloat:hover{
  transform:scale(1.08);
}

#scrollTopBtn{
  position:fixed;
  right:25px;
  bottom:60px;
  width:45px;
  height:45px;
  border-radius:50%;
  border:none;
  outline:none;
  background:#0c8a57;
  color:#fff;
  font-size:18px;
  cursor:pointer;
  display:none;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 25px rgba(0,0,0,.25);
  z-index:9999;
  transition:.3s;
}

#scrollTopBtn:hover{
  transform:scale(1.1);
  background:#0faa6a;
}

/* when mobile sticky bar exists move up slightly */
@media(max-width:800px){
  #scrollTopBtn{
    bottom:70px;
    right:23px;
  }
}


.mobile-sticky-bar{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  background:#ffffff;
  border-top:1px solid #e5e5e5;
  display:none;
  z-index:99999;

  box-shadow:0 -10px 25px rgba(0,0,0,.15);
}

.mobile-sticky-bar .ms-item{
  flex:1;
  text-align:center;
  padding:10px 0;
  color:#111;
  text-decoration:none;
  font-size:13px;
  font-weight:600;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:3px;
}

.mobile-sticky-bar .ms-item i{
  font-size:18px;
}

/* Colors */
.mobile-sticky-bar .ms-item:nth-child(1) i{ color:#0a7cff; }
.mobile-sticky-bar .ms-item:nth-child(2) i{ color:#25d366; }
.mobile-sticky-bar .ms-item:nth-child(3) i{ color:#ff5252; }

/* show only on mobile */
@media(max-width:900px){
  .mobile-sticky-bar{
    display:flex;
  }
.faqPro-wrapper{
  grid-template-columns: 1fr;
}
  /* lift scroll to top above */
  #scrollTopBtn{
    bottom:70px;
  }
}


/* overlay */
.popupOverlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.55);
  backdrop-filter:blur(4px);
  z-index:9998;
  display:none;
}

/* popup main box */
.popupForm.twoSide{
  position:fixed;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%) scale(.9);
  width:95%;
  max-width:760px;
  background:#fff;
  border-radius:18px;
  box-shadow:0 30px 80px rgba(0,0,0,.25);
  z-index:9999;
  display:none;
  transition:.35s ease;
  overflow:hidden;
}

/* inner split layout */
.popupInner{
  display:grid;
  grid-template-columns:45% 55%;
}

/* image section */
.popupImg img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* right pane */
.popupBody{
  padding:16px 18px 18px;
}

/* header */
.popupHeader{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:10px;
}

.closePopup{
  font-size:24px;
  cursor:pointer;
}

/* fields */
#enquiryForm input,
#enquiryForm textarea{
  width:100%;
  padding:25px 12px;
  border-radius:10px;
  border:1px solid #ddd;
  margin-bottom:10px;
  font-size:14px;
}

#enquiryForm textarea{
  min-height:80px;
}

/* checkbox */
.chk{
  font-size:13px;
  display:flex;
  align-items:center;
  gap:6px;
  margin-bottom:10px;
}

/* button */
.submitBtn{
  width:100%;
  padding:11px 0;
  background:#0fb96b;
  border:none;
  color:white;
  border-radius:30px;
  font-weight:700;
  cursor:pointer;
}

/* visible */
.showPopup{
  display:block !important;
  transform:translate(-50%,-50%) scale(1) !important;
}

/* responsive mobile */
@media(max-width:768px){
  .popupInner{
    grid-template-columns:1fr;
  }

  .popupImg{
    height:180px;
  }
}
.input_wrap{
  display:block;
}

.input_wrap input,
.input_wrap button{
  width:100%;
}

.text-danger{
  font-size:10px;
  line-height:10px;
}
