/*------------------------------------------------------------------
* Project:        EVdriveX - Electric Vehicle & Charging Station HTML Templates
* Author:         HtmlDesignTemplates
* URL:            https://themeforest.net/user/htmldesigntemplates
* Created:        04/04/2025
-------------------------------------------------------------------*/

/* Custom Logo Constraints */
.navbar-logo {
  max-width: 100%;
}
.navbar-logo a {
  display: inline-block;
  max-width: 100%;
}
.navbar-logo img {
  max-height: 75px !important;
  max-width: 100% !important;
  height: auto !important;
  display: block;
  object-fit: contain;
}
.footer-logo img {
  max-height: 120px !important;
  width: auto !important;
  object-fit: contain;
}

/* Header CSS */
.header-top {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  background-color: #052730 !important;
}

.header-top-left ul {
  display: flex;
  align-items: center;
  margin-bottom: 0;
}

.header-top-right ul {
  margin-bottom: 0;
}

.header-top-left ul li:first-child::after{
  content: '';
  height: 100%;
  left: auto;
  position: relative;
  right: -10px;
  width: auto;
  border-left: 1px solid #F7F7F757;
}

.header-socials a{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  height: 28px;
  width: 28px;
} 

.header-socials a:hover{
  background-color: #87C332;
  color: #fff;
  border-color: #87C332 !important;
}



.navbar-nav .nav-link{
  padding: 13px 20px;
  color: #fff;
}

.navbar-nav .nav-item.no-after::after {
  display: none;
}

.dropdown-menu>li>a {
  font-size: 16px;
  padding: 13px 36px !important;
}


.navbar-nav .nav-link:hover, .navbar-nav .nav-link.show{
  color: #87C332;
}

.dropdown-menu>li>a:hover{
  background-color: #69A316;
  color: #ffffff;
}

@media (min-width: 1180px) {
  .navbar-nav .dropdown-menu{
    position: absolute;
    top: auto;
  }

  .dropdown-menu{
    display: block;
    opacity: 0;
    visibility:hidden;
  }

  .dropdown:hover>.dropdown-menu {
    opacity: 1 ;
    visibility: visible;
    transition:all .3s ease-in-out;
  }
  
  .dropdown>.dropdown-toggle:active {
    /*Without this, clicking will make it sticky*/
    pointer-events: none;
  }

  ul.dropdown-menu {
    max-height: 630px !important; 
    overflow-y: auto !important;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
  }

  .navbar-nav .nav-link.active{
    color: #87C332;
  }

  .dropdown-item.active{
    background-color: #69A316;
  }
}

@media (min-width: 1181px) and (max-width: 1380px){
  .navbar-logo img {
    width: 70% !important;
  }
}

@media (max-width: 1180px){
  div#slicknav-mobile {
    display: block;
  }

  .header-top, .navbar-button, .navbar-sticky-in, #responsive-menu {
    display: none;
  }

  .slicknav_menu {
    display: block;
    background: transparent !important;
    padding: 0 !important;
  }

  .header-nav-menu {
    background-color: #052730 !important;
    position: relative;
    z-index: 999;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  }

  .header-nav-menu-inner {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    position: relative;
  }

  .navbar-logo img {
    max-height: 50px !important;
    width: auto !important;
  }

  .nav-link{
    padding: 12px 36px !important;
    margin: 0 !important;
  }

  .slicknav_btn{
    position: absolute !important;
    right: 20px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    background-color: transparent !important;
  }

  .slicknav_btn.slicknav_open:before, .slicknav_btn.slicknav_collapsed:before {
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    padding: 0 !important;
    font-size: 24px !important;
    color: #ffffff !important;
  }

  .dropdown-menu {
    border-radius: 0 !important;
  }

  .slicknav_btn.slicknav_open:before{
    color: #87C332 !important;
  }

  .slicknav_nav {
    top: 100% !important;
    left: 0 !important;
    width: 100% !important;
    background-color: #052730 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
    position: absolute;
    height: 280px;
    overflow: auto;
    box-shadow: 0px 4px 15px 0px rgba(0, 0, 0, 0.15) !important;
    z-index: 1000 !important;
  } 

  .slicknav_nav a:hover, li.nav-item.dropdown.slicknav_parent.slicknav_open > a > a {
    background-color: #87C332 !important;
    color: #fff !important;
  }

  .slicknav_nav a, .dropdown-menu>li>a{
    font-size: 16px;
    background-color: #052730 !important;
    color: #ffffff !important;
    text-transform: capitalize !important;
    border: none !important;
    font-weight: 400 !important;
  }

  .dropdown-menu>li>a{
    padding-left: 42px !important;
  }
  
  .dropdown-toggle::after{
    display: none;
  }

  .slicknav_nav .active, .fa-angle-up:before{
    background-color: #87C332 !important;
    color: #fff !important;
  }

  .banner-1, .banner {
    margin-top: 0 !important;
    padding-top: 40px !important;
  }
  .banner-1-inner, .banner-1-inner.pt-11 {
    padding-top: 0 !important;
  }
}

@media (max-width: 1100px) {
  .slicknav_nav .slicknav_item a {
      pointer-events: none;
  }
}

/* Popup hidden by default */
#search1 {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

#search1 input{
width: 400px;
}

#search1.open {
  display: flex;
}

#search1 .close {
  position: absolute;
  top: 20px;
  right: 30px;
  font-size: 2rem;
  color: #fff;
  background: none;
  border: none;
  cursor: pointer;
}

.banner {
  /* min-height: 800px; */
  background-image: url(../images/ev-vehicle.jpg);
  background-position: center right;
  background-repeat: no-repeat;
  background-size: cover;
  margin-top: -140px;
}

.banner .overlay{
  background-image: linear-gradient(180deg, #052730 0%, #052730 100%);
  opacity: .7;
}

@media (max-width: 1400px) {
  .banner-inner {
    padding-top: 80px !important;
  }
}

@media (max-width: 1180px) {
  .banner {
    margin-top: -135px;
  }
}

@media (max-width: 768px){
  .banner{
    margin-top: -21%;
  }
  
  .spin-container{
    margin: 0 100px;
  }

  .banner-btn li a, .download-btn li a{
    width: 75%;
  }
}

/* Spin Animation  */
.spin {
  display: inline-block;
  animation: spin 2s ease-in-out forwards;
}

@keyframes spin {
  0% {
    transform: rotateY(0deg);
  }
  40% {
    transform: rotateY(360deg);
  }
  100% {
    transform: rotateY(360deg);
  }
}


/* Feature CSS */
.feature-inner{
  margin-top: -150px;
}

@media (max-width: 992px){
  .feature-box2 {
   border-right: none !important;
   padding-right: 0 !important;
  }

  .feature-box3 {
    border-top: 1px solid #5F5F5F21 ;
    padding-top: 40px;
    padding-left: 0 !important;
   }
}

@media (max-width: 768px){
  .feature-box2{
    border: none !important;
    border-top: 1px solid #5F5F5F21 !important;
    padding-top: 40px;
    padding-left: 0 !important;
  }

  .feature-box1{
    padding-right: 0 !important;
  }
}


/* About CSS */
.about {
  background-image: linear-gradient(90deg, #F5FAEE  20%, #F5FAEE00 100%);
  margin-top: -140px;
}

.about-service-box{
  border-top-right-radius: 0 ;
  border-bottom-left-radius: 0 ;
}

@media (max-width: 1200px){
  .about .section-title h2, .more-about .section-title h2, .review .section-title h2, .mobile-app .section-title h2, .career-faq .section-title h2, .faq .section-title h2, .about1 .section-title h2{
    border: none !important;
    padding: 0 !important
  };
}

@media (max-width: 768px){
  .about-service-box{
    border-top-right-radius: 20px ;
    border-bottom-left-radius: 20px ;
  }
}

/* Why US CSS */
.why-us .overlay{
  background-image: linear-gradient(90deg, #F5FAEE 50%, #FFFFFF00 0%);
  opacity: .9;
}

.ev-logo img {
  height: 80px;
  width: 80px;
}

.ev-logo{
  top: 5%;
  right: 40%;
}


.service-image img{
  margin-bottom: -35px;
}


@media (min-width: 768px ) and (max-width:1200px){
  .service-image img{
    width: 50% !important;
  }

  .ev-logo{
    top: 2%;
  }
}

@media (max-width: 768px){
  .why-us .section-title-left h2{
    border: none !important;
    padding: 0 !important
  };
}

/* Work CSS */
.work-image img{
  width: 150px;
  height: 150px;
}

.work-box-number{
  top: -20px;
  left: 40%;
}

.work-box-number h4{
  height: 50px;
  width: 50px;
  line-height: 50px;
}

.work{
  margin-right: 5%;
  background-image: url(../images/electric-car-charging-connected-to-the-grid-2023-02-07-21-01-15-utc.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

.work .overlay{
  background-image: linear-gradient(90deg, #052730 0%, #69A316 100%);
  opacity: 0.9;
}


@media (min-width: 768px ) and (max-width:1200px){
  .work-box{
    margin: 0 !important;
    margin-top: 20px !important;
  }

  .work{
    padding-bottom: 100px !important;
  }
}

@media (max-width:768px){
  .work, .work .overlay{
    margin: 0;
    border-radius: 0;
  }
}

/* Mission */
@media (max-width: 992px){
  .partner-slider, .mission h2, .partner h3 {
    border: none !important;
    padding: 0 !important;
  }
}

/* More About CSS */
.more-about {
  margin: 0 5% ;
  background-color: #052730;
  background-image: url(../images/img15_circle.png);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 50% auto;
}


.percentage-wrapper::after{
  position: absolute;
  content: "";
  bottom: -7px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 3px;
  height: 8px;
  background-color: #87C332;
}

.percentage-wrapper {
  top: -50px;
  left: 100%; /* Move it along the width of progress */
  transform: translateX(-50%);
  font-size: 13px;
  transition: left 3s ease-in-out;
}

.percentage-wrapper::after {
  position: absolute;
  content: "";
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
  width: 3px;
  height: 8px;
  background-color: #87C332;
}

.progress-bar {
  animation: progressBar 3s ease-in-out forwards;
}


.about-video-play {
  height: 50px;
  width: 50px;
  line-height: 50px;
  z-index: 999;
  cursor: pointer;
}

@keyframes waves {
  0% {
    -webkit-transform: scale(0.2, 0.2);
    transform: scale(0.2, 0.2);
    opacity: 0;
  }
  50% {
    opacity: 0.9;
  }
  100% {
    -webkit-transform: scale(0.9, 0.9);
    transform: scale(0.9, 0.9);
    opacity: 0;
  }
}


.waves {
  width: 150px;
  height: 150px;
  background: #87C33230;
  opacity: 0;
  right: -50px;
  bottom: -50px;
  -webkit-animation: waves 3s ease-in-out infinite;
  animation: waves 3s ease-in-out infinite;
}
        
.wave-1 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.wave-2 {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

.wave-3 {
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}



@keyframes progressBar {
  0% { width: 0; }
  100% { width: width; }
}

@media (min-width: 1200px) {
  .more-about-quote{
    width: 75%;
    margin:0 0 -40% -20%;
  }

  .more-about-inner {
    padding: 0 !important;
  }

  .more-about {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }

  .more-about-inner .section-left{
    margin-bottom: -100px;
  }
}

/* Review CSS */
.reviewer-bio img{
  height: 70px;
  width: 70px;
}

.review .overlay {
  background-image: url(../images/shape-ev.png);
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0.8;
}

.qoute-icon{
  top: 20px;
  right: 30px;
}

@media (max-width: 1200px) {
  .review-inner {
    padding: 0px !important;
  }
}

/* Moblie App CSS */
.download-btn i{
  font-size: 21px;
}

.mobile-app {
  background-image: url(../images/electric-car-plugged-in-outside-house-2022-05-01-23-53-51-utc.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

.mobile-app .overlay {
  background-image: linear-gradient(90deg, #69A316 0%, #052730 100%);
  opacity: .9;
}

.mobile-app .section-left {
  margin-bottom: -200px;
}

@media (max-width: 768px) {
  .mobile-app .section-left {
    margin-bottom: -100px;
  }
}


/* Blog CSS */
.blog {
  background-image: linear-gradient(180deg, #F5FAEE 50%, #F2295B00 100%);
  margin-top: -50px;
}

.blog-image a::after {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, .35), transparent 75%);
  background-repeat: no-repeat;
  bottom: 0;
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  opacity: 1;
  transition: all .3s ease-in-out;
}

.blog-box:hover .blog-image a::after{
  opacity: 0;
  transition: all .3s ease-in-out;
}

/* Footer CSS */
footer {
  background-image: linear-gradient(180deg, #052730 0%, #1B1A1A 100%);
}

.footer-socials a{
  font-size: 16px;
  height: 40px;
  width: 40px;
  line-height: 40px;
  transition: all .3s ease-in-out;
}

.footer-socials a:hover{
  background-color: #69A316;
  color: #fff;
  transition: all .3s ease-in-out;
}

@media (min-width: 768px ) and (max-width:1200px){
  .footer-logo img{
    width: 40% !important;
  }
}

.newsletter{
  margin-bottom: -100px
}

@media (max-width: 768px ){
  .search-bar a {
    margin: 10px 0 !important;
    width: 100%;
  }
}

.copyright .overlay{
  opacity: .15;
}


/* ========================================= */
/*          About US page CSS                */
/* ========================================= */
.team-member-image img{
  height: 130px;
  width: 130px;
}

.team {
  background-image: linear-gradient(180deg, #F5FAEE 20%, #F5FAEE00 100%);
}

.team-socials a{
  height: 40px;
  width: 40px;
  line-height: 40px;
  transition: all ease-in-out .3s;
}

.team-socials a:hover {
  background-color: #87C332;
  color: #fff;
  transition: all ease-in-out .3s;
}

@media (max-width: 1200px ){
  .breadcrumb .banner-inner{
    padding-top: 20px !important;
  }
  
}

/* ========================================= */
/*          Our Team page CSS                */
/* ========================================= */
.our-team, .team-detail, .price, .project-list, .about1 {
  background-image: linear-gradient(180deg, #F5FAEE00 40%, #F5FAEE 100%);
}

/* ========================================= */
/*           Career page CSS                 */
/* ========================================= */
.career-box img, .perk-box img {
  height: 36px;
  width: 36px;
}

.perk-icon{
  height: 80px;
  min-width: 80px;
}

.career-inner {
  margin-bottom: -100px;
}

.faq .accordion-button, .career-faq .accordion-button{
  background-color: #F5FAEE;
  color: #676767;
  font-size: 15px;
}

.faq .accordion-button:not(.collapsed), .career-faq .accordion-button:not(.collapsed){
  color: #87C332 ;
}

.career-detail .nav-link:hover{
  background-color: #ffffff !important;
}

.accordion-button:focus, .accordion-button:hover {
  z-index: 0;
}

.cv-icon i{
  height: 100px;
  width: 100px;
  line-height: 100px;
}

.cv-box{
  background-image: linear-gradient(180deg, #69A316 0%, #052730  100%);
}

.cv-sperator span::before, .cv-sperator span::after {
  content: '';
  border-top: 1px solid #fff;
  display: block;
  flex-grow: 1;
  margin-top: 10px;
}

.cv-box .overlay{
  background-image: url(../images/electric-car-plugged-in-outside-house-2022-05-01-23-53-51-utc.jpg);
  opacity: 0.15;
}

.career-detail-tabs .nav-tabs .nav-link{
  color: #1B1A1A;
  font-size: 15px;
}

.career-detail-tabs .nav-tabs .nav-link.active{
  color: #87C332 !important;
}

/* ========================================= */
/*           Gallery page CSS                */
/* ========================================= */

.gallery-container {
  display: grid;
  grid-template-columns: repeat(6, 1fr); /* 6 equal columns to allow for half-width items */
  gap: 10px; /* Space between images */
  max-width: 1200px;
  margin: 0 auto;
}

.gallery-item {
  overflow: hidden;
  transition: transform 0.3s ease;
}

.gallery-item img {
  width: 100%;
  height: 250px !important; 
  object-fit: cover; 
  display: block;
}

.gallery-item.wide {
  grid-column: span 3;
}

.gallery-item.mid {
  grid-column: span 2;
}

.gallery-item.small {
  grid-column: span 1;
}

.gallery-item .overlay{
  background-color: #87C332;
  background-blend-mode: hue;
  mix-blend-mode: hue;
  opacity: 0;
  transition: all ease-in-out .3s;
}

.gallery-item:hover .overlay {
  opacity: .7;
  transition: all ease-in-out .3s;
}

@media (max-width: 768px) {
  .gallery-container {
      grid-template-columns: repeat(4, 1fr);
  }

  .gallery-item.wide {
      grid-column: span 2;
  }

  .gallery-item.small {
      grid-column: span 1;
  }
}

@media (max-width: 480px) {
  .gallery-container {
      grid-template-columns: 1fr;
  }

  .gallery-item.wide,
  .gallery-item.small {
      grid-column: span 1; 
  }
}

/* ========================================= */
/*         Testimonial page CSS              */
/* ========================================= */
.reviewer-image img, .author-image img, .blog-qoute img{
  height: 100px;
  width: 100px;
}

/* ========================================= */
/*               Faq page CSS                */
/* ========================================= */
.faq {
  background-image: linear-gradient(180deg, #F5FAEE00 0%, #F5FAEE 100%);
}

.faq-qoute{
  margin-top: -50px;
}

.faq .section-right {
  margin-bottom: -50px;
}

/* ========================================= */
/*              Error page CSS               */
/* ========================================= */
.error h1{
  font-size: 70px;
  -webkit-text-stroke: 1px #69A316;
}

.error .search-bar a:hover, .search-again .search-bar a:hover {
  background-color: #87C332;
}

@media (max-width: 768px){
  .error .search-bar, .search-again .search-bar {
    background-color: transparent;
  }
}


/* ========================================= */
/*          Search Result page CSS           */
/* ========================================= */
.search-result{
  background-image: linear-gradient(180deg, #F5FAEE00 0%, #F5FAEE 100%);
}

/* ========================================= */
/*            Contact US page CSS            */
/* ========================================= */
.contact-icon i, .summary-icon i{
  height: 60px;
  width: 60px;
  font-size: 30px;
  line-height: 60px;
}

.branch-icon i{
  height: 80px;
  width: 80px;
  font-size: 40px;
  line-height: 80px;
}


.contact{
  background-image: linear-gradient(180deg, #87C33200 50%, #F5FAEE 100%);
}

.contact .overlay {
  background-image: url(../images/shape-ev.png);
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0.5;
}

.branch-inner{
  margin-top: -50px;
}

@media (max-width: 992px){
  .contact .section-title h2{
    border: none !important;
    padding: 0 !important
  };
}

/* ========================================= */
/*              Product page CSS             */
/* ========================================= */

.range-slider {
  position: relative;
  width: 100%;
  height: 4px;
  margin: 20px 0;
  background-color: #676767;
}

.range-selected {
  position: absolute;
  top: 50%;
  height: 4px;
  background-color: #87C332;
  transform: translateY(-50%);
}

.range-slider input[type="range"] {
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
  margin: 0;
  pointer-events: none;
  -webkit-appearance: none;
  background: none;
}

.range-slider input[type="range"]::-webkit-slider-thumb {
  pointer-events: all;
  width: 20px;
  height: 20px;
  background-color: #87C332;
  border-radius: 50%;
  cursor: pointer;
  -webkit-appearance: none;
}

.add-to-cart-btn {
  opacity: 0;
  bottom: 10%;
  left: 27%;
  transition: all ease-in-out .3s;
}

.related-product .add-to-cart-btn {
  left: 20%;
}

.product-image:hover .add-to-cart-btn {
  opacity: 1;
  transition: all ease-in-out .3s;
}

.product-box .product-image:hover img {
  filter: blur(2px);
  transition: all ease-in-out .3s;
}

.media-link a::before{
  content: '';
  position: absolute;
  height: 100%;
  top: 0;
  left: 0;
  width: 100%;
  background-image: linear-gradient(90deg, rgba(0, 0, 0, .12), transparent);
  z-index: 0;
}

.product-img-nav img{
  height: 115px;
  width: 115px;
  transition: all ease-in-out .2s;
  cursor: pointer;
}

.product-img-nav img:hover, .slider-nav .slick-current img{
  opacity: 1 !important;
  transition: all ease-in-out .2s;
}

.slick-list{
  padding: 0 !important;
}

.product-tabs .nav-link{
  border-radius: 20px;
}

.product-tabs .nav-link:hover{
  color: #676767;
}

.nav-tabs .nav-link.active:hover{
  color: #052730;
}

/* Product Review Stars */
.star-rating-inner {
  transform: rotateY(180deg);
}

.star-rating input{
  display: none;
}

.star-rating label{
  width: 15px;
  aspect-ratio: 1;
  cursor: pointer;
}

.star-rating label .star-stroke{
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  background: #294145;
  clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
}

.star-rating label .star-stroke .star-fill{
  width: 50%;
  aspect-ratio: 1;
  background: transparent;
  clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
}

.star-rating input:hover ~ label .star-stroke,.star-rating input:checked ~ label .star-stroke{
  background: #6EA343;
  transition: all .2s ease-in-out;
}

.star-rating input:checked ~ label .star-stroke .star-fill{
  background: #6EA343;
  transition: all .2s ease-in-out;
}

.quantity{
  width: 100px !important;
}

.cart img{
  height: 100px;
  width: 100px;
}

/* ========================================= */
/*            Comming-Soon page CSS          */
/* ========================================= */
.coming-soon .overlay {
  background-color: transparent;
  background-image: url(../images/map-evcharge.png);
  background-repeat: no-repeat;
  background-size: cover;
  opacity: .2;
}

.divider-pattern {
  background: repeating-linear-gradient(-55deg, #fff, #fff 1px, transparent 1px, transparent 6px);
}

.coming-soon .footer-socials i:hover{
  border-radius: 50%;
}

.countdown span{
  font-size: 80px;
}

@media (max-width: 992px){
  .coming-soon span {
    font-size: 54px;
  }
  .coming-soon p{
    font-size: 14px;
  }
}

@media (min-width: 800px) and (max-width:996px){
  .coming-soon{
    height: 170vh !important;
  }
}

@media (max-width: 576px){
  .coming-soon span {
    font-size: 42px;
  }
}

.popular-tag{
  top: 25px;
  left: -40px;
  transform: rotate(-45deg);
}

/* ========================================= */
/*            Homepage 2 page CSS          */
/* ========================================= */

/* Banner Section */
.banner-1{
  background-image: linear-gradient(180deg, #052730 100%, #F5FAEE 100%);
  margin-top: -140px;
}

.banner-1 .slick-list.draggable {
  overflow: visible;
  overflow-x: clip;
}

.banner-1 .slick-dots{
  bottom: 25%;
  left: 66%;
  position: absolute;
}

.banner-1  .text {
  letter-spacing: 1.7px;
  text-transform: uppercase;
  fill: #fff;
  font-size: 21px;
}

.banner-1  #rotatingText {
  animation-name: rotate-circle;
  animation-duration: 20s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}


@keyframes rotate-circle {
  to {
    transform: rotate(1turn);
  }
}

.banner-1 .spin-demo-main {
  display: grid;
  align-items: center;
  justify-items: center;
}

.banner-1 .spin-demo-main img {
  position: absolute;
  left: 40%
}

.banner-1 .section-title-right img{
  height: 75px;
  width: 75px;
}

.banner-1 .section-title-right span{
  left: 70% !important;
}

.banner-1 .btn1:hover{
  background-color: #fff !important;
}

.banner-1 .slick-dots li button::after{
  background: #fff;
}

.banner-1 .slick-dots li.slick-active button::after {
  background: #69A316 !important;
}


.banner-1 .overlay{
  background-image: url(../images/map-evcharge.png);
  background-position: left;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: .05;
}

.banner-1-image-inner {
  margin-bottom: -120px;
}


@media (min-width: 1400px){
  .banner-1 h1{
    font-size: 60px;
  }

}

@media (max-width: 1200px) and (min-width: 992px){
  .banner-1 .spin-demo-main img{
    left: 37%;
  }
}

@media (max-width: 1200px){
  .banner-1-inner{
    padding-top: 50px !important;
    padding-bottom: 50px;
  }

  .banner-1-image-inner {
    margin-bottom: 0px;
  }

  .banner-1 .slick-dots{
    left: 48%;
    bottom: 0%;
  }

  .banner-1 .feature-list {
    margin-bottom: 30px !important;
  }
}

@media (max-width: 992px) {
 .banner-1 .section-title h1, .index-2 .about-us .section-title h2, .service .section-title h2, .index-2 .pricing .section-title h2, .project .section-title h2, .blog-title-left h2, .mobile-app1-title h2,.contact-us-title h2{
  border: none !important;
  padding-left: 0 !important;
 }

 .banner-1 .section-title{
  margin-bottom: 60px !important;
 }


 .banner-1{
  padding: 75px 0 0 0!important;
 }

  .banner-1-image img {
    margin-top: 20px !important;
  }

  .banner-1 .overlay::after{
    width: 100%;
    left: 0;
  }

  .banner-1 .spin-demo-main img{
    left: 45%;
  }
}

@media (max-width: 768px){
  .banner-1 li{
    margin: 0 10px !important;
  }

  .banner-1 .spin-demo-main img{
    left: 40%;
  }

} 

/* About Us Section */
.index-2 .about-us, .index-2 .pricing, .index-2 .blog{
    background-image: linear-gradient(180deg, #F5FAEE00 20%, #F5FAEE 100%);
}

.about-counter-box img{
  height: 50px;
  width: 50px;
}

.about-counter-box{
  top: 20px;
  right: -30px;
}

.about-us{
  margin-top: -50px;
}

@media (max-width: 1200px){
 .about-us-inner {
  padding-top: 50px !important;
 }
}

@media (max-width: 992px){
  .about-counter-box {
    position :static !important;
  }
}

/* Service Section */
.index-2 .service, .project, .contact-mobile{
  background-image: linear-gradient(180deg, #F5FAEE 60%, #F5FAEE00 100%);
}

.index-2 .service-box {
  background-image: url(../images/img15_circle.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  
}

.index-2 .service-box:hover {
  /* border-color: #69A316 !important; */
  transition: all .3s ease-in-out;
  background-color: #052730 !important;
}

.index-2 .service-box:hover h4 a, .index-2 .service-box:hover p{
  color: #fff;
  transition: all .3s ease-in-out;
}

.index-2 .service-box:hover a {
  border: none !important;
  transition: all .3s ease-in-out;
}

/* Who we are section */
.index-2 .more-about .section-right{
  margin-bottom: -50px;
}

@media (max-width: 1200px){
  .index-2 .more-about .section-left {
    padding-bottom: 0 !important;
  }
}

@media (max-width: 786px) {
  .index-2 .more-about .counter-box {
    border-bottom: 1px solid #F7F7F757 ;
  }  
}

/* How we work CSS*/
.how-work .section-body::after{
  content: '';
  height: 80%;
  width: 100%;
  position: absolute;
  border-right: 2px dashed #67676750;
  top: 10%;
  left: -50%;
}

.index-2 .work-info{
  background-color: #e6f1d7;
}

.timeline .work-info:after {
  content: "";
  position: absolute;
  top: 42%;
  height: 20px;
  width: 20px;
  z-index: -1;
  background: #87C332;
  right: -10px;
  border-bottom: 0;
  border-left: 0;
  transform: rotate(-135deg);
}

.timeline-row:nth-child(even) .work-info:after{
  left: -10px;
}


@media (max-width: 768px){
  .how-work .section-body::after, .timeline .work-info:after{
    display: none;
  }

  .how-work .work-info {
    margin: 0 !important;
  }

  .how-work .work-box-number {
    position: static !important;
    transform: none !important;
  }
}


/* Project CSS */
.index-2 .project-info{
  bottom: -40px;
  left: 0;
  transition: all .5s ease-in-out;
}

.index-2 .project-image{
  cursor: pointer;
}

.index-2 .project h5 a:hover{
  color: #6EA343;
}

.index-2 .project-image:hover img{
  filter: blur(1px);
  transition: all .3s ease-in-out;
}

.index-2 .project-image:hover .project-info{
  bottom: 0;
  transition: all .5s ease-in-out;
}

.index-2 .project-info .overlay{
  opacity: .88;
}


/* Testimonial CSS */
.testimonial-1 {
  margin-right: 5%;
  background-image: url(../images/electric-vehicle-fuels-up-with-clean-energy-charging-station-enveloped-blue-power-aura-natural-background.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}
 
.testimonial-1 .overlay {
  background-image: linear-gradient(90deg, #052730 40%, #676767CC 100%);
  opacity: .9;
}


.testimonial-1 .slick-dots{
  bottom: 100px;
  right: 100px;
  left: auto;
  position: absolute;
}

.testimonial-1 .qoute-icon{
  top: 0;
}

.testimonial-1 .about-video{
  top: -80% !important;
  left: 48% !important;
}


@media (max-width: 992px){
  .testimonial-1{
    margin: 0;
    border-radius: 0;
  }

  .testimonial-1 .section-right-inner{
    margin-top: 50px !important;
  }
  
  .about-video{
    display: none;
  }
}

@media (max-width: 768px){
  .testimonial-1 .slick-dots{
    bottom: 30px;
    left: 35%;
    right: auto;
  }
}

/* Blog CSS */
.blog .slick-dots {
  left: 0;
  bottom: 30px;
  position: absolute;
}

.index-2 .blog-image a::after{
  border-radius: 10px;
}

@media (max-width: 1200px){
  .blog .slick-dots {
    left: 40%;
    bottom: 20px;
  }
}

/* Custom Styles for Solutions and Interactive Elements */

.bg-dark-teal {
  background-color: #052730 !important;
}

.text-green {
  color: #87C332 !important;
}

.bg-green-light {
  background-color: #f0f7e6 !important;
}

/* Custom ROI Calculator */
.roi-calculator {
  background-color: #052730;
  color: #ffffff;
  border-radius: 20px;
  padding: 40px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

.roi-card {
  background: #09333e;
  border: 1px solid #134653;
  border-radius: 15px;
  padding: 24px;
  height: 100%;
  transition: all 0.3s ease;
}

.roi-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
}

.roi-input-group {
  margin-bottom: 20px;
}

.roi-input-group label {
  font-weight: 500;
  margin-bottom: 8px;
  display: block;
  color: #e0e5e7;
}

.roi-input-group .form-control {
  background: #09333e;
  border: 1px solid #134653;
  color: #fff;
  font-size: 1.1rem;
  padding: 10px 15px;
  border-radius: 8px;
}

.roi-input-group .form-control:focus {
  border-color: #87C332;
  box-shadow: 0 0 0 0.25rem rgba(135, 195, 50, 0.25);
}

.charger-mix-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 15px;
  background: #0c3e4c;
  border-radius: 10px;
  margin-bottom: 12px;
}

.charger-info {
  flex-grow: 1;
}

.charger-name {
  font-weight: 600;
  font-size: 0.95rem;
  color: #ffffff;
}

.charger-desc {
  font-size: 0.8rem;
  color: #a0b0b5;
}

.charger-controls {
  display: flex;
  align-items: center;
  gap: 10px;
}

.btn-ctrl {
  background: #134653;
  color: #fff;
  border: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  font-size: 1.2rem;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
}

.btn-ctrl:hover {
  background: #87C332;
}

.charger-count {
  font-weight: 700;
  font-size: 1.1rem;
  width: 25px;
  text-align: center;
}

.roi-results {
  background: #09333e;
  border: 2px solid #87C332;
  border-radius: 15px;
  padding: 24px;
}

.roi-result-item {
  margin-bottom: 20px;
  padding-bottom: 15px;
  border-bottom: 1px dashed rgba(255, 255, 255, 0.1);
}

.roi-result-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.roi-result-label {
  font-size: 0.9rem;
  color: #a0b0b5;
  margin-bottom: 5px;
}

.roi-result-value {
  font-size: 1.8rem;
  font-weight: 800;
  color: #87C332;
}

.roi-period-badge {
  background: #87C332;
  color: #052730;
  padding: 5px 12px;
  border-radius: 20px;
  font-weight: 700;
  font-size: 0.85rem;
  display: inline-block;
  margin-top: 8px;
}

/* Steps Timeline */
.timeline-steps {
  position: relative;
  padding: 20px 0;
}

.timeline-steps::before {
  content: '';
  position: absolute;
  top: 50px;
  bottom: 50px;
  left: 31px;
  width: 2px;
  border-left: 2px dashed #87C332;
}

.timeline-step-item {
  position: relative;
  padding-left: 70px;
  margin-bottom: 40px;
}

.timeline-step-item:last-child {
  margin-bottom: 0;
}

.timeline-step-number {
  position: absolute;
  left: 0;
  top: 0;
  width: 60px;
  height: 60px;
  background: #87C332;
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  font-weight: 800;
  border: 4px solid #fff;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  z-index: 2;
}

.timeline-step-content {
  background: #ffffff;
  border: 1px solid #e1ebed;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
}

.timeline-step-content:hover {
  transform: translateX(5px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
  border-color: #87C332;
}

/* Partner Models COCO/FOCO */
.model-card {
  border: 1px solid #e1ebed;
  background: #ffffff;
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
  height: 100%;
}

.model-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  border-color: #87C332;
}

.model-header {
  background: #052730;
  color: #fff;
  padding: 24px;
  text-align: center;
  border-bottom: 4px solid #87C332;
}

.model-body {
  padding: 30px 24px;
}

/* Custom FAQ Accordion */
.faq-accord {
  max-width: 850px;
  margin: 0 auto;
}

.faq-item {
  background: #ffffff;
  border: 1px solid #e1ebed;
  border-radius: 10px !important;
  margin-bottom: 15px;
  overflow: hidden;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.03);
}

.faq-header-btn {
  width: 100%;
  padding: 20px 24px;
  background: none;
  border: none;
  text-align: left;
  font-weight: 600;
  font-size: 1.05rem;
  color: #052730;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: all 0.3s ease;
  cursor: pointer;
}

.faq-header-btn:hover {
  background-color: #f7fafc;
  color: #87C332;
}

.faq-header-btn .icon {
  font-size: 1.2rem;
  color: #87C332;
  transition: transform 0.3s ease;
}

.faq-body-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s cubic-bezier(0, 1, 0, 1);
  padding: 0 24px;
  background-color: #fafbfc;
}

.faq-item.active .faq-body-content {
  max-height: 500px;
  transition: max-height 0.3s cubic-bezier(1, 0, 1, 0);
  padding: 20px 24px;
}

.faq-item.active .faq-header-btn {
  background-color: #f5f9e8;
  color: #87C332;
}

.faq-item.active .faq-header-btn .icon {
  transform: rotate(45deg);
}

/* NFC section styles */
.nfc-card-step {
  background: #ffffff;
  border-left: 4px solid #87C332;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
  border-radius: 0 10px 10px 0;
}

.nfc-step-num {
  font-size: 2.5rem;
  font-weight: 800;
  color: #87C332;
  opacity: 0.8;
  line-height: 1;
}

/* Map mockup */
.map-mockup {
  position: relative;
  border-radius: 15px;
  overflow: hidden;
  border: 1px solid #e1ebed;
  box-shadow: 0 10px 30px rgba(0,0,0,0.05);
  background-color: #f0f4f5;
  height: 400px;
}

.map-search-panel {
  position: absolute;
  top: 20px;
  left: 20px;
  background: #ffffff;
  padding: 15px;
  border-radius: 10px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  z-index: 5;
  width: calc(100% - 40px);
  max-width: 320px;
}

.map-bg-image {
  background-image: url('../images/map-evcharge.png');
  background-size: cover;
  background-position: center;
  height: 100%;
  width: 100%;
}

/* Fix header z-index to prevent page elements like timeline numbers from overlapping it */
header, header.z-2, header.position-relative {
  z-index: 99999 !important;
}

/* Make navbar fully responsive to fit more top-level menu items without wrapping */
.navbar-nav .nav-link,
.navbar-nav .btn,
.navbar-button .btn {
  white-space: nowrap !important;
}

@media (min-width: 1181px) {
  .navbar-button {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
  }

  .navbar-button .btn {
    order: 1 !important;
    margin-right: 16px !important;
  }

  .navbar-button .mt_search {
    order: 2 !important;
  }

  .navbar-button .mt_search i {
    margin-right: 0 !important;
  }
}

@media (min-width: 1181px) {
  .navbar-nav .nav-link {
    padding-left: 8px !important;
    padding-right: 8px !important;
    font-size: 13px !important;
  }
  .header-nav-menu-inner .col-xl-2 {
    width: 12% !important;
  }
  .header-nav-menu-inner .col-lg-7 {
    width: 70% !important;
  }
  .header-nav-menu-inner .col-lg-3 {
    width: 18% !important;
  }
}
@media (min-width: 1350px) {
  .navbar-nav .nav-link {
    padding-left: 12px !important;
    padding-right: 12px !important;
    font-size: 14px !important;
  }
  .header-nav-menu-inner .col-xl-2 {
    width: 12% !important;
  }
  .header-nav-menu-inner .col-lg-7 {
    width: 73% !important;
  }
  .header-nav-menu-inner .col-lg-3 {
    width: 15% !important;
  }
}
@media (min-width: 1500px) {
  .navbar-nav .nav-link {
    padding-left: 15px !important;
    padding-right: 15px !important;
    font-size: 15px !important;
  }
}

/* Specifications Table Styling */
.specification-table {
  border: 1px solid #e0e0e0 !important;
  border-radius: 6px;
  overflow: hidden;
  margin-top: 10px;
}
.specification-table td {
  border-color: #e0e0e0 !important;
  font-size: 15px;
  color: #052730;
  padding: 12px 20px !important;
}
.specification-table tr:nth-child(even) {
  background-color: #fcfcfc;
}
.specification-table td.bg-lightgrey {
  background-color: #f7f9fa !important;
  font-weight: 600;
  color: #052730;
}

/* Key Features Section styling */
.key-features {
  background-color: #f8fafc;
}
.feature-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border: 1px solid #e2e8f0;
}
.feature-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.05) !important;
}
.border-green {
  border-color: #87C332 !important;
}
.feature-icon i {
  color: #87C332;
}
.gap-3 {
  gap: 1rem !important;
}

/* ========================================= */
/*          SEO Breadcrumbs Styling          */
/* ========================================= */
.yoast-breadcrumbs, 
.rank-math-breadcrumb,
.dng-breadcrumbs-container {
  color: #ffffff;
  font-size: 0.95rem;
  margin-top: 10px;
  font-family: 'Poppins', sans-serif;
}

.yoast-breadcrumbs a, 
.rank-math-breadcrumb a {
  color: #ffffff;
  text-decoration: none;
  font-weight: 500;
  transition: color 0.3s ease;
}

.yoast-breadcrumbs a:hover, 
.rank-math-breadcrumb a:hover {
  color: #87C332; /* DNG Green */
}

.yoast-breadcrumbs .breadcrumb_last,
.rank-math-breadcrumb .last {
  color: #87C332;
  font-weight: 600;
}

/* Mobile Header Top Styling */
.header-mobile-top {
  background-color: #052730 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  font-family: 'Poppins', sans-serif;
}
.header-mobile-top a {
  color: #ffffff !important;
  text-decoration: none;
  font-weight: 500;
  font-size: 0.8rem;
  transition: color 0.3s ease;
  display: inline-flex;
  align-items: center;
}
.header-mobile-top a:hover {
  color: #87C332 !important;
}

/* App Store Dark Button Styling Overrides */
.btn.btn-dark {
  background-color: #052730 !important;
  color: #ffffff !important;
  border: 1px solid #052730 !important;
  text-transform: capitalize !important;
  padding: 12px 24px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 6px !important;
}
.btn.btn-dark:hover {
  background-color: #87C332 !important;
  color: #ffffff !important;
  border-color: #87C332 !important;
}

/* Got a Question / Quote Form Styling Overrides */
#quote-form-section .quote-form-box {
  background-color: #ffffff;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
  border: 1px solid #eaeaea;
  padding: 40px !important;
}

#quote-form-section .form-label {
  font-family: 'Poppins', sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #33373d !important;
  margin-bottom: 8px;
}

#quote-form-section .form-control,
#quote-form-section .form-select,
#quote-form-section .input-group-text {
  font-family: 'Poppins', sans-serif;
  font-size: 15px;
  height: 48px;
  border: 1px solid #ccd6e0 !important;
  border-radius: 8px !important;
  color: #33373d !important;
  background-color: #ffffff !important;
  box-shadow: none !important;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

#quote-form-section .input-group-text {
  border-right: none !important;
  border-radius: 8px 0 0 8px !important;
  font-weight: 500;
  color: #6c757d !important;
  background-color: #f8fafc !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
}

#quote-form-section .input-group .form-control {
  border-left: none !important;
  border-radius: 0 8px 8px 0 !important;
}

#quote-form-section .form-control:focus,
#quote-form-section .form-select:focus {
  border-color: #87C332 !important;
  box-shadow: 0 0 0 3px rgba(135, 195, 50, 0.15) !important;
}

#quote-form-section .btn {
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 600;
  border-radius: 8px !important;
}/* Adjust header position when WordPress admin bar is present */
body.admin-bar .header-nav-menu.navbar-sticky-in {
  top: 32px !important;
}
@media screen and (max-width: 782px) {
  body.admin-bar .header-nav-menu.navbar-sticky-in {
    top: 46px !important;
  }
}
