@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap');
body {
    background-color: rgb(255, 255, 255);
    font-family: 'Open Sans', sans-serif;
    padding: 0px;
    margin: 0px;
}
ul, li{ margin: 0px; padding: 0px;}
a{ text-decoration: none;}
.green-gradient{background: linear-gradient(to bottom, rgba(59, 215, 59, 0.9) 0%, rgba(29, 173, 29, 0.9) 59%, rgba(26, 226, 69, 0.9) 100%), url(../img/pattern-1.png);}
.blue-gradient{background: linear-gradient(to bottom, rgba(23, 26, 90, 0.9) 0%, rgba(25, 26, 90, 0.9) 59%, rgba(20, 21, 80, 0.9) 100%), url(../img/pattern-1.png);}

.btn-gradient{
        background: linear-gradient(135deg, #3bd73b, #1a891a);
}
.text-justify{ text-align: justify;}
.text-green{color: #3bd73b;}
.text-blue{color:   #191a5a;}
.btn-green{    background: linear-gradient(135deg, #3bd73b, #1a891a);}
.btn-blue{  color: #f2f2f2;   background: linear-gradient(135deg, #191a5a, #121346); border: none;}
.btn-black{  color: #f2f2f2;   background: linear-gradient(135deg, #0c0c0c, #0c0c0c); border: none;}
header {
    border-bottom: 1px solid #ccc;
}
#mainNav {
  transition: background-color 0.3s ease, padding 0.3s ease;
  background-color: #fff;
  padding: 15px 0;
}

#mainNav.scrolled {
  background-color: #ffffff;      /* change to any color */
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  padding: 5px 0;
}
.navbar-expand-lg .navbar-nav .nav-link {
    font-size: 14px;
    font-weight: 600;
    color: #0e0e0e;
   
    margin: 10px 6px;
    
}
.navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .show>.nav-link{
    color: #1a891a!important;
    border-bottom: 2px solid #1a891a;
}
h2{
    font-size: 36px;
    font-weight: 700;
      font-family: "Oswald", sans-serif;
}
h2, h3, h4, h5, h6{
  
      font-family: "Oswald", sans-serif;
}
ul li{ list-style: none; }
.btn-site{  border-radius: 0px; color: #fff; border: none;
    background-color: #4aab3d;
    color: #ffffff;
    border-radius: 6px;
    overflow: hidden;
    

}
.btn-site:hover{ background-color: rgb(35, 0, 235); color: #ffffff;}
p{
    line-height: 32px; 
}
.list ul{
    margin: 10px;
    padding: 0px;
}
.list  li{
    position: relative;
    padding-left: 20px;
    margin-bottom: 12px;
}
.list ul li::before {
        content: '';
    width: 10px;
    height: 10px;
    border: 1px solid  #191a5a;;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 7px;

}
.navbar-brand img{
    max-width: 120px;
}
.section-head {    margin-bottom: 3rem;}
.section-head h2 {

    text-transform: uppercase;
    letter-spacing: 2px;

}
footer{
    background-color: rgb(25, 26, 90);
       color: #f8f8f8;
    background:  linear-gradient(to bottom, rgba(25, 26, 90, .9) 0%, rgba(25, 26, 90, .9) 59%, rgba(25, 26, 90, 0.85) 100%),
   url('../img/footer_bg.png') no-repeat;
}
footer img{
    max-width: 90%;
      display: block;
     filter: brightness(0) invert(1);
}

footer .fab{
    color: #fff;
}
footer h5{
    color: #f8f8f8;
}
footer p{
color: #f8f8f8;
    font-size: 14px;
    font-weight: 400;
}
footer ul li{
    margin-bottom: 10px;

}


footer ul li a {
    cursor: pointer;
    color: #f8f8f8;
    font-size: 14px;
    border-bottom: 1px solid transparent;
    text-decoration: none;
    transition: all 0.3s ease;
    display: inline-flex;       /* Use flexbox for alignment */
    align-items: center;        /* Vertically center icon & text */
    gap: 8px;                   /* Space between icon and text */
    padding-left: 0;            /* Remove padding-left since flex handles spacing */
    position: relative;         /* Keep relative if you need position for ::before */
}

footer ul li a::before {
    content: "\f0da"; /* Font Awesome icon */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    color: #fffcf8;
    /* Remove absolute positioning so it flows naturally with text */
    position: static;           
    transform: none;
    transition: color 0.3s ease;
}

footer ul li a:hover::before {
    color: #fff;
}

footer ul li a:hover {
    color: #1a891a;
    margin-left: 4px;
    
    
}


.footer-btm{
    margin-top: 20px;
    border-top: 1px solid #343568;
    text-align: center;
    padding: 10px;
}
.footer-btm ul{
    text-align: start;
}

.social-container {
   /* same dark BG as your image */
  padding: 20px;

}
.social-container a{
    transition: all 0.3s ease;
}
.social-container a:hover {
    color: #1a891a;
}
.why .card {
    box-shadow: 2px 5px 10px #ccc;
    margin-top: 10px;                 /* Adds margin top */
    transition: all 0.3s ease;   
    cursor: pointer;
}

.why .card:hover {
    background-color: #dbf1db;
    box-shadow: 4px 8px 15px #bbb;    /* Example: animate shadow too */
    transform: translateY(-5px);      /* Optional: slight lift on hover */
}

.why h5{
    color: #191a5a;
}
.gradient-icon {
  margin-bottom: 10px;
  background: linear-gradient(45deg, #28a745, #20c997);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.social-icon {
  width: 60px;
  height: 60px;
  border: 1px solid rgba(255,255,255,0.3); /* thin outline */
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 22px;
  text-decoration: none;
  position: relative;
  transition: 0.3s ease;
}

/* Hover (optional) */
.social-icon:hover {
  border-color: #ec7c00;
  color: #ec7c00;
}

/* Small orange dot icon (like in your image) */
.small-dot {
  width: 40px;
  height: 40px;
  border: 1px solid #ec7c00;
}

.small-dot::before {
  content: "";
  width: 8px;
  height: 8px;
  background: #ec7c00;
  border-radius: 50%;
  position: absolute;
  bottom: -4px;
  left: 50%;
  transform: translateX(-50%);
}
 .carousel-item > .row {
      display: flex;
      justify-content: center;
      align-items: center;
    }
    .carousel-item img {
      max-height: 100vh;

      
     
    }
.badge-primary{
    background-color: #191a5a;
    color: #f2f7fb;
    padding:.4rem;
}

.services img::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(0,0,0,0.5), rgba(0,0,0,0)); /* Black gradient from top */
}
.threeRow  .card p{
    min-height: 90px;
    max-height:90px;
}

.testimonials{
    background-color: #191a5a;
    padding: 90px 0px 120px;
     
}

.bg-blue{
    background: linear-gradient(rgba(25, 26, 90, 0.8), rgba(25, 26, 90, 0.96)), url(../img/pattern-bg.png);
    background-repeat: no-repeat;
}
.why{
    padding: 90px 0px ; 
}



.services{
    background-color:#f2f7fb;
    padding: 90px 0px ;
}
.industries {
    background-color: #dbf1db;
    padding: 90px 0px ;
}
.industries  a{
    color: #fff;
}
.industries .card-hover {
    border: none;
    border-radius: 30px;
    overflow: hidden;
    position: relative;
    height: 70vh;
    cursor: pointer;
      box-shadow: 0 6px 20px rgba(0,0,0,0.25);   /* ★ BOX SHADOW */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.industries  .card-hover .bg-img {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transition: transform 0.5s ease;
    z-index: 1;
}

.industries  .card-hover:hover .bg-img {
    transform: scale(1.1);   /* ZOOM EFFECT */
}

.industries  .card-hover::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0,0,0,0.2), rgba(0,0,0,0.8));
    z-index: 2;
}

.industries  .card-hover .content {
    position: absolute;
    bottom: 20px;
    left: 20px;
    right: 20px;
    z-index: 3;
    color: #fff;
}


.hover-smoke {
    position: relative;
    cursor: pointer;
    overflow: hidden;
}

.hover-smoke::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url("../img/smoke.png") center/cover no-repeat;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 0;
}

.hover-smoke:hover::before {
    opacity: 0.25; /* adjust opacity */
}

/* keep content above smoke */
.hover-smoke .card-body {
    position: relative;
    z-index: 1;
}


.back-to-top .fa{color:#fff;}
.back-to-top{
    
  cursor: pointer;
    position: fixed;
    bottom: 20px;
    right: 20px;
    display: none;
    background: #000;
    border: 0px;
	border:1px solid #fff;
}
.back-to-top:hover{
  cursor: pointer;
    position: fixed;
    bottom: 20px;
    right: 20px;
    display: none;
    background: #000;
    border: 0px;
	border:1px solid #fff;
    z-index: 999;
}
.about .card{
    border: none;
}
.value-icon {
      width: 50px;
      height: 50px;
      background: linear-gradient(45deg, #28a745, #20c997);
      color: #fff;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 24px;
      flex-shrink: 0;
    }
.g-map{

}
.light-green{
    background-color: #1a891a;
}
.location ul li{
    color: #f2f2f2;
    border: 1px solid #2cad2c;
    margin: 10px;
    padding: 5px;
}
.location ul li:hover{
    background-color: rgb(25, 26, 90);
    cursor: pointer;
    color: #ffffff;
}
.form-container {   
    margin: 60px auto;
}
label.error {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 5px;
}
.contact-section{
    
    background:  linear-gradient(to bottom, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.9) 59%, rgba(255, 255, 255, 0.9) 100%), url(../img/pattern-1.png) ;
}
.white-section{
    
    background:  linear-gradient(to bottom, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.9) 59%, rgba(255, 255, 255, 0.9) 100%), url(../img/pattern-1.png) ;

}
 
    .testimonial-section {
      padding: 60px 0;
      text-align: center;
      background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.5) 59%, rgba(255, 256, 256, 0.9) 100%), url(../img/testimonial_bg.png);
    }
    .testimonial-img {
      width: 80px;
      height: 80px;
      border-radius: 50%;
      object-fit: cover;
      margin-bottom: 20px;
    }
    .testimonial-text {
      max-width: 700px;
      margin: 0 auto 20px;
      
    }
    .testimonial-name {
      font-weight: 600;
      
    }
    .testimonial-role {
      font-size: 14px;
      
    }
  .border-radius-btm{border-bottom-right-radius: 40px; border-bottom-left-radius: 40px;}

  .custom-hero {
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

.custom-hero img {
    width: 100%;
    display: block;
    transition: transform 0.5s ease;
}

/* Zoom image on hover */
.custom-hero img {
    transform: scale(1.1);
}

/* Overlay background */
.custom-hero::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.2);
    transition: background-color 0.5s ease;
    z-index: 1;
}

/* Darker overlay on hover */
.custom-hero::before {
    background-color: rgba(0, 0, 0, 0.5);
}

/* Overlay text */
.custom-hero .overlay-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    text-align: center;
    opacity: 0;
    z-index: 2;
    transition: opacity 0.5s ease;
}

/* Show text on hover */
.custom-hero .overlay-text {
    opacity: 1;
}

.custom-hero .overlay-text h2 {
    font-size: 2rem;
    margin-bottom: 0.5rem;
    font-weight: 600;
}

.custom-hero .overlay-text p {
    font-size: 1.2rem;
    margin: 0;
}

 .navbar .dropdown-menu {
  margin-top: 0;
}
@media (min-width: 992px) {

  .navbar .dropdown-menu {
    display: block;
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: all 0.3s ease;
  }

  .navbar .dropdown:hover > .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}

/* ======================
   MOBILE (Click only)
====================== */
@media (max-width: 991px) {

  /* IMPORTANT: let Bootstrap control dropdown */
  .navbar .dropdown-menu {
    display: none;
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: none;
  }

  .navbar .dropdown-menu.show {
    display: block;
  }

  /* Prevent fixed navbar issue */
  #mainNav {
    position: static;
  }
}
@media (max-width: 480px) {
    .navbar-nav .dropdown-menu{
            position: absolute;
    }
}