:root{
  --blue:#2b6cff;
  --pink:#ff4fa3;
  --gray:#6c757d;
  --dark:#1f2937;
}

body{
  font-family:'Poppins',sans-serif;
  color:#333;
}

.section-padding{padding:80px 0;}
.section-title{
  font-family:'Playfair Display',serif;
  font-weight:700;
  color:var(--dark);
}

/* Top Bar */
.top-bar{background:linear-gradient(90deg,var(--blue),var(--pink));}
.social-icons a{color:#fff;margin-left:10px;}

/* Navbar */
.custom-navbar{background:#fff;box-shadow:0 4px 20px rgba(0,0,0,.08);}
.brand-main{color:var(--blue);font-weight:700;}
.brand-sub{color:var(--pink);font-weight:600;font-size:14px;display:block;}

/* Hero */
.carousel-item{
  /* height:90vh; */
  background-size:cover;
  background-position:center;
  position:relative;
}
.overlay{
  position:absolute;inset:0;
  background:rgba(0,0,0,.45);
}
.carousel-caption{bottom:35%;}

/* Buttons */
.btn-primary{background:var(--blue);border:none;}
.btn-pink{background:var(--pink);color:#fff;border:none;}

/* Services */
.service-card{
  background:#fff;
  padding:30px;
  text-align:center;
  border-radius:20px;
  transition:.3s;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
      background: linear-gradient(90deg, var(--blue), var(--pink));
	  min-height:567px;
}
.service-card i{
  font-size:40px;
  color:var(--pink);
  margin-bottom:15px;
}
.service-card:hover{transform:translateY(-10px);}

/* Why Choose */
.why-card{text-align:center;}
.why-card i{font-size:36px;color:var(--blue);}

/* Achievements */
.achievements-section{
  background:linear-gradient(120deg,var(--blue),var(--pink));
  color:#fff;
  padding:70px 0;
}
.achievements-section h3{font-size:48px;font-weight:700;}

/* Gallery */
.gallery-item img{
  border-radius:15px;
  transition:.3s;
}
.gallery-item img:hover{transform:scale(1.05);}

/* Testimonials */
.testimonial-text{
  font-size:18px;
  font-style:italic;
}

/* Book Service */
.book-service-section{
  background:linear-gradient(120deg,var(--pink),var(--blue));
  color:#fff;
  padding:80px 0;
}

/* Enquiry */
.enquiry-card{
  background:#fff;
  padding:40px;
  border-radius:25px;
  box-shadow:0 15px 40px rgba(0,0,0,.1);
}

/* Footer */
.footer{
 background: linear-gradient(120deg, var(--pink), var(--blue));
  color:#bbb;
  padding:60px 0 20px;
}
.footer a{color:#fff;text-decoration:none;}
.footer h5{color:#fff;background: blue;
    border-top-right-radius: 20px;
    padding: 4px;}
.footer ul li{
	color:#fff;
	border-bottom: 1px dashed;
}
/* Floating Buttons */
.floating-btn{
  position:fixed;
  right:20px;
  width:55px;
  height:55px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:24px;
  z-index:999;
  box-shadow:0 0 20px rgba(0,0,0,.3);
  animation:pulse 1.5s infinite;
}
.call-btn{bottom:90px;background:var(--blue);}
.whatsapp-btn{bottom:20px;background:#25d366;}

@keyframes pulse{
  0%{box-shadow:0 0 0 0 rgba(255,255,255,.7);}
  70%{box-shadow:0 0 0 15px rgba(255,255,255,0);}
  100%{box-shadow:0 0 0 0 rgba(255,255,255,0);}
}
#cal-icon img {
    width: 50px !important;
}
#cal-icon {
    position: fixed;
    right: 8px;
    bottom: 220px;
    width: 70px;
    height: 70px;
    cursor: pointer;
    z-index: 99990;
}
@media(max-width:768px){
  .carousel-item{height:70vh;}
}
/* Modern Contact Section */
.contact-modern{
  background:#f8f9fb;
}

.contact-info-card,
.contact-form-card{
  background:#fff;
  padding:40px;
  border-radius:25px;
  box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.contact-info-card h4{
  color:var(--dark);
  font-weight:700;
}

.contact-item{
  display:flex;
  gap:15px;
  margin-bottom:18px;
  color:#555;
}

.contact-item i{
  font-size:20px;
  color:var(--pink);
  margin-top:4px;
}

.contact-social a{
  display:inline-flex;
  width:42px;
  height:42px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:linear-gradient(135deg,var(--blue),var(--pink));
  color:#fff;
  margin-right:10px;
  transition:.3s;
}

.contact-social a:hover{
  transform:translateY(-5px);
}

.map-box{
  border-radius:25px;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,.1);
}
/* Why Choose Us – Modern */
.why-modern{
  background:linear-gradient(180deg,#ffffff,#f7f9ff);
}

.why-modern-card{
  background:#fff;
  padding:40px 30px;
  border-radius:25px;
  text-align:center;
  height:100%;
  box-shadow:0 12px 35px rgba(0,0,0,.08);
  transition:.4s;
  position:relative;
  overflow:hidden;
}

.why-modern-card::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,var(--blue),var(--pink));
  opacity:0;
  transition:.4s;
  z-index:0;
}

.why-modern-card:hover::after{
  opacity:.08;
}

.why-modern-card:hover{
  transform:translateY(-12px);
}

.why-modern-card h5{
  font-weight:600;
  color:var(--dark);
  margin-bottom:10px;
  position:relative;
  z-index:1;
}

.why-modern-card p{
  color:#666;
  font-size:15px;
  position:relative;
  z-index:1;
}

.icon-box{
  width:70px;
  height:70px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--pink),var(--blue));
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 20px;
  color:#fff;
  font-size:28px;
  box-shadow:0 10px 25px rgba(0,0,0,.15);
  position:relative;
  z-index:1;
}
/* About Us – Modern */
.about-modern{
  background:#fff;
}

.about-badge{
  display:inline-block;
  padding:6px 16px;
  background:linear-gradient(135deg,var(--blue),var(--pink));
  color:#fff;
  border-radius:50px;
  font-size:14px;
  font-weight:500;
}

.about-feature{
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:500;
  color:#444;
}

.about-feature i{
  width:38px;
  height:38px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--pink),var(--blue));
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:16px;
}

.about-image-wrapper{
  position:relative;
  border-radius:30px;
  overflow:hidden;
  box-shadow:0 20px 50px rgba(0,0,0,.15);
}

.about-image-wrapper img{
  width:100%;
  border-radius:30px;
}

.experience-badge{
  position:absolute;
  bottom:25px;
  left:25px;
  background:linear-gradient(135deg,var(--blue),var(--pink));
  color:#fff;
  padding:18px 22px;
  border-radius:20px;
  text-align:center;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}

.experience-badge h3{
  margin:0;
  font-size:32px;
  font-weight:700;
}

.experience-badge span{
  font-size:14px;
}

@media(max-width:768px){
  .experience-badge{
    bottom:15px;
    left:15px;
    padding:14px 18px;
  }
}
/* Testimonials – Modern */
.testimonial-modern{
  background:linear-gradient(180deg,#f8f9ff,#ffffff);
}

.testimonial-card{
  background:#fff;
  padding:45px 40px;
  border-radius:30px;
  max-width:700px;
  box-shadow:0 20px 50px rgba(0,0,0,.12);
  position:relative;
}

.quote-icon{
  width:60px;
  height:60px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--blue),var(--pink));
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
  margin:0 auto 20px;
}

.testimonial-card p{
  font-size:17px;
  line-height:1.7;
  color:#555;
  margin-bottom:25px;
  font-style:italic;
}

.client-info h6{
  font-weight:600;
  color:var(--dark);
  margin-bottom:2px;
}

.client-info span{
  font-size:14px;
  color:var(--gray);
}

.carousel-control-prev-icon,
.carousel-control-next-icon{
  filter:invert(1);
}

@media(max-width:768px){
  .testimonial-card{
    padding:35px 25px;
  }
}
/* FAQ Section */
.faq-modern{
  background:#ffffff;
}

.faq-accordion .accordion-item{
  border:none;
  margin-bottom:16px;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 12px 30px rgba(0,0,0,.08);
}

.faq-accordion .accordion-button{
  background:#fff;
  font-weight:500;
  padding:20px 25px;
  color:var(--dark);
}

.faq-accordion .accordion-button:not(.collapsed){
  background:linear-gradient(135deg,var(--blue),var(--pink));
  color:#fff;
}

.faq-accordion .accordion-button:focus{
  box-shadow:none;
}

.faq-accordion .accordion-body{
  padding:20px 25px;
  line-height:1.7;
  color:#555;
}

/* Know More CTA */
.know-more-section{
  background:linear-gradient(135deg,var(--blue),var(--pink));
  padding:70px 0;
  color:#fff;
}

.know-more-section h2{
  font-family:'Playfair Display',serif;
  font-weight:700;
  margin-bottom:10px;
}

.know-more-section p{
  font-size:17px;
  opacity:.95;
}

.know-more-section .btn-outline-light:hover{
  background:#fff;
  color:var(--dark);
}
.service-card h5{
	font-weight:600;
	font-size:22px;
}
@media(max-width:768px){
  .know-more-section{
    text-align:center;
  }
}
.cu-lgo-wdth{
	width:260px;
}
.cu-ft-sz{
	font-size:12px;
}
.sr-img{
	width:100%;
	margin-bottom:15px;
	border-radius:10px;
	border: 1px dashed #fff;
}
.cu-glry img{
	width:100%;
	border-radius;10px;
}
.cu-glry {
	margin-bottom:30px;
}

@media(max-width:768px)
{
	
	.cu-fnt-12{
		font-size:12px;
	}
}
@media(max-width:767px)
{
	.cu-mb-dss{
		display:none
	}
}
@media(max-width:700px)
{
	.cu-sld-btn-st{
		font-size:12px;
	}
	.cu-fnt-12{
		font-size:12px;
	}
	.mb-s-ds-nn{
		display:none
	}
}

@media(max-width:375px)
{
	
	.cu-fnt-12{
		font-size:10px;
	}
	.cu-lgo-wdth {
    width: 224px;
}
}