/* Top bar */
.top-bar {
  background-color: #292983;
  color: #fff;
  font-size: 14px;
  padding: 11px 0;
}
.top-bar a {
  color: #fff;
  text-decoration: none;
}
.top-bar a:hover {
  text-decoration: underline;
}

/* Contact items inline */
.contact-item {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 0;
}

/* Responsive Topbar */
@media (max-width: 768px) {
  .top-bar .container {
    flex-direction: column !important;
    text-align: center;
  }

  .contact-items {
    flex-direction: column; /* stack items vertically */
    align-items: center;
    margin-bottom: 10px;
  }

  .contact-item {
    margin-bottom: 6px; /* spacing between lines */
  }

  .social-icons {
    justify-content: center !important;
  }
}


    /* Navbar */
    .navbar {
      padding: 10px 0;
    }
    .navbar-nav .nav-link {
      color: #000;
      margin-right: 12px;
      position: relative;
    }
    .navbar-nav .nav-link:hover {
      color: #292983;
    }
    .navbar-nav .nav-link.active {
      color: #292983;
      font-weight: 600;
    }
    .navbar-nav .nav-link.active::after {
      content: "";
      display: block;
      width: 100%;
      height: 2px;
      background: #292983;
      position: absolute;
      bottom: -5px;
      left: 0;
    }

    /* Button */
    .btn-learn {
      background-color: #292983;
      color: #fff;
      border-radius: 6px;
      padding: 12px 18px;
      transition: 0.3s;
      font-size: 16px;
    }
    .btn-learn:hover {
      background-color: #1f1f5c;
      color: #fff;
    }

    /* Logo */
    .navbar-brand img {
      max-height: 45px;
      width: auto;
    }

    /* Brand name responsive */
    .brand-text {
      font-weight: bold;
      margin: 0;
      font-size: 1.4rem;
      white-space: nowrap;
    }
    @media (max-width: 992px) {
      .brand-text { font-size: 1.2rem; }
    }
    @media (max-width: 768px) {
      .brand-text { font-size: 1rem; }
      .brand-text small { display: none; }
    }
    @media (max-width: 576px) {
      .brand-text { font-size: 0.9rem; }
    } 
    /* 🔹 Mobile Navbar Adjustments */
@media (max-width: 768px) {
  /* Reduce logo size */
  .navbar-brand img {
    max-height: 35px;   /* smaller height */
    width: auto;
  }

  /* Adjust brand text */
  .brand-text {
    font-size: 0.95rem;
  }

  /* Reduce toggle button size */
  .navbar-toggler {
    padding: 3px 6px;     /* smaller clickable area */
    font-size: 0.8rem;    /* smaller icon size */
  }

  /* Reduce the default Bootstrap toggler icon size */
  .navbar-toggler-icon {
    width: 20px;
    height: 20px;
  }
}

/* 🔹 Extra small devices (below 576px) */
@media (max-width: 576px) {
  .navbar-brand img {
    max-height: 30px; /* even smaller logo */
  }

  .brand-text {
    font-size: 0.85rem;
  }

  .navbar-toggler-icon {
    width: 18px;
    height: 18px;
  }
}

    /*navbar end*/
     /* Carousel start */
.about-banner {
  background-image: url('images/contact.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: #fff;
  padding: 20px 0;   /* reduced from 80px */
  position: relative;
  overflow: hidden;

  min-height: 280px; /* reduced height */
}

/* Dark overlay for better text visibility */
.about-banner::after {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  z-index: 1;
}


/* Text stays above overlay */
.about-text {
  position: relative;
  z-index: 2;
}

.about-text h2 {
  font-weight: 700;
  font-size: 28px; 
  line-height: 1.3;
}
.about-text p {
  font-size: 16px;
  margin-top: 10px;
  color: #ddd;
}

    .breadcrumb {
      background: transparent;
      padding: 0;
      margin: 0;
    }

    .breadcrumb-item a {
      color: #d5d5e8;
      text-decoration: none;
      font-weight: 600;
    }

    .breadcrumb-item.active {
      color: #fff;
      font-weight: 700;
    }

    /* Right-side rotating image */
    .about-image {
      position: absolute;
      text-align: center;
    }

   .rotating-img {
  position: absolute;
  left: 120%;          /* push it to right */
  top: 160%;           /* vertically center */
  transform: translateY(-50%); 
  max-width: 220px;   /* desktop size */
  z-index: 2;         /* above overlay */
  animation: rotateImg 20s linear infinite;
  opacity: 0.9;
}
 /* Rotation animation */
@keyframes rotateImg {
  from { transform: translateY(-50%) rotate(0deg); }
  to   { transform: translateY(-50%) rotate(360deg); }
}

/* Large screen view */
@media (min-width: 992px) {
  .about-banner {
    min-height: 400px;   /* taller background on desktop */
    padding: 120px 0;
  }




  .about-text h2 {
    font-size: 48px;
  }
}
@media (max-width: 768px) {
  .about-text {
    padding-top:15% ;
    text-align: left;  /* force left alignment */
  }

  .about-text h2 {
    font-size: 28px;   /* smaller heading for mobile */
    text-align: left;  /* ensure left aligned */
  }
}

/* Mobile view */
@media (max-width: 768px) {
  .about-banner {
    min-height: 250px; /* ensure enough space */
    position: relative;
  }


}

@media (max-width: 768px) {
  .rotating-img {
    position: absolute;
    bottom: 20px;
    right: 20px;
    top: 40px !important;
    left: auto !important;
    max-width: 140px;
    z-index: 9999 !important;
    display: block !important;

    animation: rotateImg 20s linear infinite; /* 🔥 keep animation */
  }
}

    /* Carousel end */
           /*contact section start*/
      .contact-container {
      background: #fff;
      border-radius: 12px;
      box-shadow: 0 4px 15px rgba(0,0,0,0.1);
      overflow: hidden;
      margin: 40px auto;
      max-width: 1200px;
    }
    .contact-left {
      background: #f8fbff;
      padding: 40px 30px;
    }
    .contact-left h4 {
      font-weight: 600;
      margin-bottom: 15px;
    }
    .contact-left p {
      font-size: 14px;
      color: #555;
      margin-bottom: 25px;
    }
    .ccontact-item {
      display: flex;
      align-items: center;
      margin-bottom: 20px;
    }
    .ccontact-item i {
      font-size: 20px;
      color: #292983;
      margin-right: 15px;
    }
    .ccontact-item div h6 {
      margin: 0;
      font-weight: 600;
      font-size: 15px;
    }
    .ccontact-item div p {
      margin: 0;
      font-size: 14px;
      color: #555;
    }
    .social-icons a {
      font-size: 18px;
      margin-right: 12px;
      color: #292983;
      transition: 0.3s;
    }
    .social-icons a:hover {
      color: #292983;
    }
    .contact-right {
      padding: 40px 30px;
    }
    .contact-right h4 {
      font-weight: 600;
      margin-bottom: 20px;
    }
    .form-control {
      border-radius: 8px;
      margin-bottom: 15px;
    }
    .btn-custom {
      width: 100%;
      background: #292983;
      color: #fff;
      border-radius: 25px;
      padding: 10px;
      font-weight: 500;
      transition: 0.3s;
    }
    .btn-custom:hover {
      background: #292983;
    }
    /*contact section end*/
            /*footer start*/
    .estimate-box {
  overflow: visible; /* let image go outside the green box */
  background-color: #2ecc71;
  padding: 2px;
  border-radius: 5px;
}

.estimate-box img {
  max-height: 300px;   /* control size */
  margin-top: -60px;   /* lift head/shoulders above the green box */
}

    .estimate-box h3 {
      font-weight: 700;
      margin-bottom: 10px;
    }
    .estimate-box p {
      font-size: 15px;
      margin-bottom: 20px;
    }
    .estimate-box .btn {
      border-radius: 6px;
      font-weight: 600;
    }
    .estimate-phone {
      font-weight: 700;
      font-size: 20px;
      color: #fff;
      border: 2px solid #fff;
      border-radius: 6px;
      padding: 10px 20px;
      margin-right: 15px;
      display: inline-block;
    }
  
     .about-subtitle {
      color: #292983;
      font-size: 14px;
      font-weight: 800;
      text-transform: uppercase;
      border-bottom: 2px solid #292983;
      display: inline-block;
      margin-bottom: 15px;
    }

    /* ===== Footer Section ===== */
    /* Footer */
    footer {
      background: #111310;
      color: #bbb;
      padding: 140px 0 0;
      position: relative;
      z-index: 1;
    }
    footer h5 {
      color: #fff;
      font-size: 18px;
      margin-bottom: 20px;
      position: relative;
    }
    footer h5::after {
      content: "";
      width: 40px;
      height: 2px;
      background: #292983;
      position: absolute;
      left: 0;
      bottom: -8px;
    }
    footer ul {
      list-style: none;
      padding: 0;
    }
    footer ul li {
      margin-bottom: 10px;
    }
    footer ul li a {
      text-decoration: none;
      color: #bbb;
      transition: 0.3s;
    }
    footer ul li a:hover {
      color: #292983;
      padding-left: 5px;
    }
    .footer-social a {
      display: inline-block;
      color: #bbb;
      margin-right: 12px;
      font-size: 18px;
      transition: 0.3s;
    }
    .footer-social a:hover {
      color: #292983;
    }
    .footer-bottom {
      border-top: 1px solid rgba(255,255,255,0.1);
      margin-top: 40px;
      padding: 20px 0;
      font-size: 14px;
      text-align: center;
    }
    .footer-bottom a {
      color: #bbb;
      margin: 0 8px;
      text-decoration: none;
    }
    .footer-bottom a:hover {
      color: #752ecc;
    }

    /* Scroll to top */
    .scroll-top {
      position: fixed;
      bottom: 30px;
      right: 30px;
      width: 45px;
      height: 45px;
      border-radius: 50%;
      background-color: #292983;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 20px;
      cursor: pointer;
      box-shadow: 0 4px 10px rgba(0,0,0,0.2);
      z-index: 999;
      transition: all 0.3s ease;
    }
    .scroll-top:hover {
      background-color: #1f1f5c;
    }

    /* 🔹 Mobile Fixes */
    @media (max-width: 768px) {
      .estimate-box {
        flex-direction: column;
        text-align: center;
        margin-bottom: 0;             /* remove footer gap */
        padding: 40px 20px 0;         /* more top padding */
        border-radius: 8px 8px 0 0;   /* rounded only at top */
      }
      .estimate-box .content {
        margin-bottom: 15px;          /* less space above image */
      }
      .estimate-box img {
        margin: 0 auto;
        max-height: 300px;
        display: block;
      }
      .estimate-box .btn {
        margin-bottom: 10px;          /* reduce space under button */
      }
      footer {
        padding: 40px 0 0;            /* connect footer with blue box */
      }
    }
/*scroll*/



    /* Scroll to Top */
.scroll-top {
  position: fixed;
  bottom: 90px; /* leave space above WhatsApp */
  right: 20px;
  background-color:#292983;
  color: white;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  cursor: pointer;
  box-shadow: 0 2px 5px rgba(0,0,0,0.3);
  z-index: 1000;
}

.scroll-top:hover {
  background-color: #555;
}

/* WhatsApp Button */
.whatsapp-btn {
  position: fixed;
  bottom: 20px; /* below scroll-top */
  right: 20px;
  background-color: #25D366;
  color: white;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  cursor: pointer;
  box-shadow: 0 2px 5px rgba(0,0,0,0.3);
  z-index: 1000;
}

.whatsapp-btn:hover {
  background-color: #1ebe57;
}
