:root{
  --green-dark:#0b3d2e;
  --green:#1f7a5c;
  --white:#ffffff;
  --black:#111111;
}

body{
  font-family:'Poppins',sans-serif;
}
/*=====================
TOP-AR-CSS
======================
*/
/* NAVBAR */
.main-nav {
    background: #0b3d2e;
    padding: 10px 0;
}

.logo-img {
    height: 60px;
    margin-right: 10px;
}

.brand-text {
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    line-height: 1;
}

.brand-text small {
    display: block;
    font-size: 12px;
    font-weight: 500;
    color: #9be5c2;
}

.navbar-nav .nav-link {
    color: #fff;
    font-weight: 500;
    margin-left: 12px;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active {
    color: #9be5c2;
}

/* LOGIN BUTTON */
.btn-green {
    background: #9be5c2;
    color: #0b3d2e;
    font-weight: 600;
    padding: 6px 16px;
    border-radius: 20px;
}

.btn-green:hover {
    background: #fff;
}

/* TOP BAR */
.top-bar {
    background: #083227;
    color: #fff;
    font-size: 14px;
    padding: 6px 0;
}

.top-bar a {
    color: #fff;
    margin-right: 10px;
    text-decoration: none;
}

.top-bar a:hover {
    color: #9be5c2;
}


@media (max-width: 768px) {
    .top-bar {
        text-align: center;
    }
    .top-bar .container {
        flex-direction: column;
        gap: 5px;
    }
}
.main-header{
  position:sticky;
  top:0;
  z-index:999;
  transition:all 0.35s ease;
}

.main-header .main-nav{
  background:#0b3d2e; /* green */
  transition:all 0.35s ease;
}

.main-header .nav-link,
.main-header .brand-text{
  color:#ffffff;
}
/*header scrollrar csss*/
.main-header{
  position:sticky;
  top:0;
  z-index:999;
  transition:all 0.35s ease;
}

.main-header .main-nav{
  background:#0b3d2e; /* green */
  transition:all 0.35s ease;
}

.main-header .nav-link,
.main-header .brand-text{
  color:#ffffff;
}
.main-header.scrolled .main-nav{
  background:#ffffff;
  box-shadow:0 4px 20px rgba(0,0,0,0.08);
}

.main-header.scrolled .nav-link,
.main-header.scrolled .brand-text{
  color:#0b3d2e;
}

.main-header.scrolled .nav-link:hover{
  color:#1f7a5c;
}

/* Login button adjust */
.main-header.scrolled .btn-green{
  background:#1f7a5c;
  color:#ffffff;
}

/* Default (green header) */
.navbar-toggler{
  border-color:rgba(255,255,255,0.6);
}

.navbar-toggler-icon{
  filter:brightness(0) invert(1); /* white icon */
}

/* On scroll – white header */
.main-header.scrolled .navbar-toggler{
  border-color:rgba(0,0,0,0.3);
}

.main-header.scrolled .navbar-toggler-icon{
  filter:none;                 /* 🔑 dark icon */
}

.main-nav{
  background:var(--green-dark);
}

.navbar-brand span{
  color:#6fe0b5;
}

.btn-green{
  background:var(--green);
  color:#fff;
  border-radius:30px;
  padding:8px 22px;
}

/* ===========================
   SLIDER – FINAL STABLE FIX
=========================== */

/*#homeSlider .carousel-item{
  width:100%;
  height:500px;
  background:#000;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}*/

#homeSlider .carousel-item img{
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
}


/* Desktop */
@media(min-width:769px){
  #homeSlider .carousel-item img{
    width:100%;
    height:100%;
    object-fit:cover;
  }
}

/* Mobile */
@media(max-width:768px){
  #homeSlider .carousel-item img{
    width:100%;
    height:100%;
    object-fit:contain;
  }
}



/*about-box page*/

/*=====================
 PAGE HERO STYLE
 ======================*/
.page-hero{
  min-height:380px;
  background:
    linear-gradient(
      rgba(11,61,46,.55),
      rgba(11,61,46,.55)
    ),
    url("../images/page-hero.png");
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  padding:90px 0;
  text-align:center;
  color:#fff;
}


/* Hero text animation */
.page-hero h1,
.page-hero p{
  opacity:0;
  transform:translateY(20px);
  animation:heroFadeUp .9s ease forwards;
}

.page-hero p{
  animation-delay:.15s;
}

@keyframes heroFadeUp{
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* Desktop */
.page-hero{
  min-height:380px;
}

/* Mobile */
@media(max-width:768px){
  .page-hero{
    min-height:260px;
    padding:60px 0;
  }

  .page-hero h1{
    font-size:30px;
  }

  .page-hero p{
    font-size:14px;
  }
}
.breadcrumb-wrap{
  margin-top:10px;
  font-size:13px;
  color:#d8f3e8;
}

.breadcrumb-wrap a{
  color:#9be5c2;
  text-decoration:none;
}

.breadcrumb-wrap span{
  margin:0 4px;
}


/*=====================
 END PAGE HERO STYLE
 ======================*/

.about-box{
  background:#fff;
  padding:30px;
  border-radius:15px;
  box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.about-box h4{
  color:var(--green-dark);
  margin-bottom:10px;
}

.choose-card{
  background:#fff;
  padding:20px;
  text-align:center;
  border-radius:12px;
  font-weight:600;
  box-shadow:0 8px 20px rgba(0,0,0,.07);
}


/*Saction pages style*/
.section-light{
  background:#f0faf6;
  padding:80px 0;
}

section{
  padding:80px 0;
}

.section-title{
  text-align:center;
  margin-bottom:50px;
}

.section-title h2{
  color:var(--green-dark);
  font-weight:700;
}

.service-card,
.project-card,
.team-card,
.blog-card{
  background:#fff;
  border-radius:15px;
  padding:20px;
  text-align:center;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.service-card img,
.project-card img,
.team-card img,
.blog-card img{
  width:100%;
  border-radius:12px;
  margin-bottom:15px;
}

.project-card{
  position:relative;
  overflow:hidden;
}

.project-card .overlay{
  position:absolute;
  inset:0;
  background:rgba(11,61,46,.8);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  transition:.3s;
}

.project-card:hover .overlay{
  opacity:1;
}

.team-card span{
  color:var(--green);
  font-size:14px;
}

/*footer css*/
.main-footer{
  background:#0b3d2e;
  color:#ffffff;
  padding:60px 0 30px;
}

.footer-title{
  font-weight:600;
  margin-bottom:20px;
  color:#e6fff6;
}

.footer-text{
  font-size:14px;
  line-height:24px;
  color:#d8f3e8;
}

.footer-links{
  list-style:none;
  padding:0;
}

.footer-links li{
  margin-bottom:10px;
}

.footer-links a{
  color:#d8f3e8;
  text-decoration:none;
  font-size:14px;
}

.footer-links a:hover{
  color:#6fe0b5;
}

.footer-line{
  border-color:rgba(255,255,255,0.15);
}

.footer-bottom{
  font-size:13px;
  color:#cceee1;
}


.team-link{
  text-decoration:none;
}

.team-card-pro{
  background:#ffffff;
  border-radius:18px;
  overflow:hidden;
  transition:all .35s ease;
  box-shadow:0 12px 30px rgba(0,0,0,.08);
  height:100%;
}

.team-card-pro:hover{
  transform:translateY(-8px);
  box-shadow:0 18px 45px rgba(0,0,0,.15);
}

.team-img-box{
  position:relative;
  overflow:hidden;
}

.team-img-box img{
  width:100%;
  height:280px;
  object-fit:cover;
  transition:transform .5s ease;
}

.team-card-pro:hover img{
  transform:scale(1.08);
}

.team-info{
  padding:20px;
  text-align:center;
}

.team-info h6{
  margin-bottom:6px;
  font-weight:600;
  color:#0b3d2e;
}

.team-info span{
  font-size:14px;
  color:#1f7a5c;
  font-weight:500;
}

/* SERVICES */
.service-link{
  text-decoration:none;
  color:inherit;
}

.service-card-pro{
  background:#fff;
  padding:30px 25px;
  border-radius:18px;
  height:100%;
  text-align:center;
  transition:.35s;
  box-shadow:0 12px 35px rgba(0,0,0,.08);
}

.service-card-pro:hover{
  transform:translateY(-8px);
  box-shadow:0 18px 45px rgba(0,0,0,.15);
}

.service-icon{
  width:70px;
  height:70px;
  background:#e9f5f0;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 15px;
}

.service-icon i{
  font-size:30px;
  color:#1f7a5c;
}

.read-more{
  display:inline-block;
  margin-top:10px;
  color:#1f7a5c;
  font-weight:500;
}

.read-more:hover{
  text-decoration: underline;
}


/* SERVICE DETAIL */
.service-detail-icon{
  font-size:40px;
  color:#1f7a5c;
}

.service-sidebar{
  background:#fff;
  padding:25px;
  border-radius:15px;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.service-sidebar ul{
  list-style:none;
  padding:0;
}

.service-sidebar ul li{
  margin-bottom:10px;
}

.service-sidebar ul li a{
  text-decoration:none;
  color:#0b3d2e;
  font-weight:500;
}

/* =========================
   PROJECT LISTING PAGE
========================= */

/* Project Card Wrapper */
.project-card{
  background:#ffffff;
  border-radius:20px;
  overflow:hidden;
  height:100%;
  transition:all .35s ease;
  box-shadow:0 12px 35px rgba(0,0,0,.08);
}

.project-card:hover{
  transform:translateY(-10px);
  box-shadow:0 20px 50px rgba(0,0,0,.15);
}

/* Project Image */
.project-card img{
  width:100%;
  height:240px;
  object-fit:cover;
  transition:transform .6s ease;
}

.project-card:hover img{
  transform:scale(1.08);
}

/* Project Content */
.project-content{
  padding:25px;
  text-align:left;
}

.project-content h5{
  font-size:20px;
  font-weight:600;
  color:#0b3d2e;
  margin-bottom:10px;
}

.project-content p{
  font-size:14.5px;
  color:#555;
  line-height:1.7;
  margin-bottom:15px;
}

/* View Button */
.project-link{
  font-size:14px;
  font-weight:600;
  color:#1f7a5c;
  text-decoration:none;
}

.project-link:hover{
  text-decoration:underline;
}

/* =========================
   PROJECT GRID SPACING
========================= */
.projects-section{
  background:#f0faf6;
  padding:80px 0;
}


/* =========================
   BLOG LISTING PAGE
========================= */

.blogs-section{
  background:#f0faf6;
  padding:80px 0;
}

/* Blog Card */
.blog-card{
  background:#ffffff;
  border-radius:20px;
  overflow:hidden;
  height:100%;
  transition:all .35s ease;
  box-shadow:0 12px 35px rgba(0,0,0,.08);
}

.blog-card:hover{
  transform:translateY(-10px);
  box-shadow:0 20px 50px rgba(0,0,0,.15);
}

/* Image */
.blog-image{
  overflow:hidden;
}

.blog-image img{
  width:100%;
  height:240px;
  object-fit:cover;
  transition:transform .6s ease;
}

.blog-card:hover img{
  transform:scale(1.08);
}

/* Content */
.blog-content{
  padding:25px;
}

.blog-content h5{
  font-size:20px;
  font-weight:600;
  color:#0b3d2e;
  margin-bottom:10px;
}

.blog-content p{
  font-size:14.5px;
  color:#555;
  line-height:1.7;
  margin-bottom:15px;
}

/* Read More */
.blog-link{
  font-size:14px;
  font-weight:600;
  color:#1f7a5c;
}

.blog-link:hover{
  text-decoration:underline;
}

/* =========================
   RESPONSIVE
========================= */
@media(max-width:768px){
  .blog-image img{
    height:200px;
  }

  .blog-content h5{
    font-size:18px;
  }
}


/* =========================
   BLOG DETAIL PAGE
========================= */

.blog-detail{
  max-width: 1200px;
}

/* Main blog card */
.blog-main-card{
  background:#fff;
  padding:35px;
  border-radius:20px;
  box-shadow:0 15px 40px rgba(0,0,0,.1);
}

.blog-main-card img{
  width:100%;
  max-height:420px;
  object-fit:cover;
  border-radius:16px;
}

.blog-main-card h2{
  font-size:28px;
  font-weight:700;
  color:#0b3d2e;
  margin-bottom:15px;
}

.blog-text{
  font-size:15.5px;
  color:#444;
  line-height:1.9;
}

/* Sidebar */
.blog-sidebar{
  background:#fff;
  padding:25px;
  border-radius:18px;
  box-shadow:0 12px 35px rgba(0,0,0,.08);
}

.blog-sidebar h5{
  font-weight:700;
  margin-bottom:20px;
  color:#0b3d2e;
}

/* Other blog item */
.other-blog-item{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 0;
  text-decoration:none;
  border-bottom:1px solid #eee;
}

.other-blog-item:last-child{
  border-bottom:none;
}

.other-blog-item img{
  width:70px;
  height:60px;
  object-fit:cover;
  border-radius:10px;
}

.other-blog-item h6{
  margin:0;
  font-size:14.5px;
  font-weight:600;
  color:#0b3d2e;
}

.other-blog-item span{
  font-size:12px;
  color:#1f7a5c;
}

.other-blog-item:hover h6{
  text-decoration:underline;
}

/* Responsive */
@media(max-width:991px){
  .blog-main-card{
    padding:25px;
  }
}

/* =========================
   CONTACT PAGE
========================= */

.contact-page{
  padding:60px 0;
}


/* ADDRESS CARD */
.contact-info-card{
  background:#fff;
  border-radius:12px;
  padding:25px;
  box-shadow:0 10px 25px rgba(0,0,0,0.08);
}

.contact-info-card h5{
  color:#1f7a5c;
  font-weight:600;
}

/* FORM CARD */
.contact-card{
  background:#fff;
  padding:30px;
  border-radius:12px;
  box-shadow:0 10px 25px rgba(0,0,0,0.08);
}

.contact-card h3{
  margin-bottom:20px;
  color:#0b3d2e;
}

/* MAP */
.map-card{
  height:100%;
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 10px 25px rgba(0,0,0,0.08);
}

.map-card iframe{
  width:100%;
  height:100%;
  min-height:420px;
  border:0;
}

/* FORM INPUTS */
.form-control{
  height:46px;
  border-radius:8px;
}

textarea.form-control{
  height:auto;
}






/* =========================
   RESPONSIVE
========================= */
@media(max-width:768px){
  .project-card img{
    height:200px;
  }

  .project-content h5{
    font-size:18px;
  }
}


/* =========================
   PROJECT DETAIL PAGE
========================= */
.project-detail{
  max-width: 1200px;
}

/* Main content */
.project-main-card{
  background: #fff;
  padding: 35px;
  border-radius: 20px;
  box-shadow: 0 15px 40px rgba(0,0,0,.1);
}

.project-main-card img{
  width: 100%;
  max-height: 420px;
  object-fit: cover;
  border-radius: 16px;
}

.project-main-card h2{
  font-size: 28px;
  font-weight: 700;
  color: #0b3d2e;
  margin-bottom: 15px;
}

.project-description{
  font-size: 15.5px;
  color: #444;
  line-height: 1.9;
}

/* Sidebar */
.project-sidebar{
  background: #fff;
  padding: 25px;
  border-radius: 18px;
  box-shadow: 0 12px 35px rgba(0,0,0,.08);
}

.project-sidebar h5{
  font-weight: 700;
  margin-bottom: 20px;
  color: #0b3d2e;
}

/* Other project item */
.other-project-item{
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  padding: 10px 0;
  border-bottom: 1px solid #eee;
}

.other-project-item:last-child{
  border-bottom: none;
}

.other-project-item img{
  width: 70px;
  height: 60px;
  object-fit: cover;
  border-radius: 10px;
}

.other-project-item h6{
  margin: 0;
  font-size: 14.5px;
  font-weight: 600;
  color: #0b3d2e;
}

.other-project-item span{
  font-size: 12px;
  color: #1f7a5c;
}

/* Hover */
.other-project-item:hover h6{
  text-decoration: underline;
}

/* Responsive */
@media(max-width: 991px){
  .project-main-card{
    padding: 25px;
  }
}



/* =========================
   RESPONSIVE
========================= */
@media(max-width:768px){
  .page-hero h1{
    font-size: 32px;
  }

  .service-card-pro img{
    height: 200px;
  }
}

@media(max-width:768px){
  body{
    font-size:15px;
  }

  .page-hero h1{
    font-size:30px;
  }

  h2{
    font-size:22px;
  }

  h5{
    font-size:18px;
  }
}


/* footer-left BAR */

.footer-left {
    color: #fff;
    font-size: 14px;
    padding: 6px 0;
}

.footer-left a {
    color: #fff;
    text-decoration: none;
}

.footer-left a:hover {
    color: #9be5c2;
}



  .footer-social a{
  color:#d8f3e8;
  margin-right:8px;
  font-size:16px;
}

.footer-social a:hover{
  color:#6fe0b5;
}

/* Mobile alignment */
@media(max-width:768px){
  .footer-title{
    font-size:15px;
  }

  .footer-text{
    font-size:13.5px;
  }
}





