
:root {
    --primary-color: #c22938;
    --dark-color: #2d4577;
  
  }
  
  
  
  body{ margin: 0; padding: 0; }
  
  img{ max-width: 100%; }
  ul,li{ list-style: none; margin: 0; padding: 0; }
  a{ text-decoration: none !important; }
  
  h1, h2, h3, h4, h5, h6 {
      font-family: 'Jost', sans-serif;
      margin: 0px;
      font-weight: 600;
  }
  
  .fa, .fas {
       -webkit-font-smoothing: antialiased;
      font-family: Font Awesome\ 5 Free;
      font-weight: 900;
  }
  
  .container {
      max-width: 1300px;
  }
  
  iframe{ width: 100%; }
  
  /* Scroll to top icon */
    
  
  .go-top-area {position: relative;z-index: 9999;}
  .go-top {
      position: fixed;
      cursor: pointer;
      top: 0;right: 24px;
      color: #ffffff; background-color: var(--primary-color); box-shadow: 0 5px 10px rgba(0,0,0,0.5);
      z-index: 9999;
      width: 40px; 
      text-align: center;
      height: 42px;
      line-height: 42px;
      opacity: 0;
      visibility: hidden;
      -webkit-transition: all .9s ease-out 0s;
      transition: all .9s ease-out 0s;
      border-right: 0;
      border-radius: 10px;
  }
  .go-top i {
      position: absolute;
      top: 50%;
      left: 0;
      right: 0;
      margin: 0 auto;
      font-size: 20px;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      -webkit-transition: all .5s ease-out 0s;
      transition: all .5s ease-out 0s;
  }
  
  .go-top::before {
      /*content: '';*/
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      background-color: #4869f3;
      opacity: 0;
      visibility: hidden;
      -webkit-transition: all .5s ease-out 0s;
      transition: all .5s ease-out 0s;border-radius: 100%;
  }
  .go-top:focus,.go-top:hover {color: #fff;}
  .go-top:focus::before, .go-top:hover::before {opacity: 1;visibility: visible;}
  .go-top:focus i:first-child, .go-top:hover i:first-child {opacity: 0;top: 0;visibility: hidden;}
  .go-top:focus i:last-child, .go-top:hover i:last-child {opacity: 1;visibility: visible;top: 50%}
  .go-top.active {
      top: 98%;
      -webkit-transform: translateY(-98%);
      transform: translateY(-98%);
      opacity: 1;
      visibility: visible;
      right: 20px;
  }
  
  
  .go-top-wrap { position: relative;}
  
  
  /* Header Section Design Start */
  
  .my_navbar{ 
    background-color: #fff; position: relative; 
    border-bottom: 1px solid #e7e7e7; box-shadow: 0px 0px 9px 0px rgb(6 22 58 / 7%);
    z-index: 99; 
  }
  .my_navbar nav{ 
      position: relative; top:0; width: 100%; z-index: 9; padding: 0 16px;
      background-color: #fff; box-shadow: 0px 0px 9px 0px rgb(6 22 58 / 20%);
  }
  
  .my_navbar .navbar-brand {
      max-width: 200px; padding: 5px;
  }
  
  .my_navbar .navbar-brand img{ max-height: 80px; }
  
  /*.my_navbar.sticky{ position: fixed; width: 100%; top: 0; z-index: 99; }*/
  .my_navbar.sticky nav {
      background-color: #fff;
      top: 0;position: fixed;
  }
  .my_navbar.sticky .top_header{ display: none; }
  
  
  
  .my_navbar .navbar-nav li > a{
      font-family: 'Poppins', sans-serif;
      font-weight: 600;
      font-size: 15px;
      padding: 30px 20px !important; border-left:2px dashed #ddd;
  }
  
  .my_navbar .navbar-nav li:last-child a{border-right:2px dashed #ddd;}
  
  
  .my_navbar .navbar-nav li.active > a{ 
      color: var(--primary-color) !important; 
  }
  
  .search_icon {
      padding: 0 20px !important;
      margin: 0 !important;
      font-size: 22px;
      color: #232323 !important;
  }
  
  .my_btn {
      padding: 10px 15px;
      border: none;
      cursor: pointer;
      position: relative;
      display: inline-block;
      text-align: center;
      text-transform: uppercase; 
      letter-spacing: 0.05em;
      background: var(--primary-color);
      font-size: 16px;
      color: #fff !important;
      border-radius: 8px;
  }
  
  
  .banner_txt .my_btn{ color: #fff !important; background: var(--primary-color); }
  
  .top_navbar {
      background-color: var(--dark-color);
      width: 100%;
      z-index: 9;
  }
  .top_navbar> div {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
  }
  
  .top_right_link li{ padding: 8px 12px; }
  
  .social_icon_list li, .top_right_link li {display: inline-block; border-left: 1px solid rgba(255, 255, 255, 0.2);}
  .social_icon_list li:last-child,.top_right_link li:last-child {border-right: 1px solid rgba(255, 255, 255, 0.2);}
  
  .social_icon_list li a {
      padding: 15px 20px; color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: all 0.5s ease-in-out;
  }
  .top_right_link ul { display: flex;
      color: #fff;
  }
  
  .top_navbar a {
      color: #fff;
      font-size: 14px;
  }
  
  .top_right_link .my_btn{ font-weight: bold; font-size: 12px; padding: 5px 15px; }
  
  
  /* Product Page Design Start */
  
  .sub_header {
      padding: 120px 0 80px;
      position: relative;
      
      display: flex; flex-direction: column;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      background: url(../images/sub_header_bg.jpg) no-repeat center center;
      background-size: cover;
      
  }
  
  .sub_header:before {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0; opacity: 0.8;
      background-color: var(--dark-color) !important;
  }
  .sub_header h2 {
      margin: 0;
      color: #fff;
      font-weight: 700;
      letter-spacing: 2px;
      position: absolute;
      font-size: 60px; text-align: center; line-height: 50px;
      opacity: 0.2;
      top: 50%;
      transform: translateY(-50%);
  }
  .sub_header .breadcrumb {
      background: none;
      display: flex;
      flex-wrap: wrap;
      margin: 0;
      padding: 0 20px;
      position: absolute;
      z-index: 1;
      bottom: -20px;
      background-color: #fff;
      border-radius: 20px;
      box-shadow: 0 0 10px rgb(0 0 0 / 40%);
  }
  .sub_header .breadcrumb li a{ color: #333; }
  .sub_header .breadcrumb li{ color: #333; padding: 8px 0; font-weight: 600; }
  .sub_header .breadcrumb li.active{ color: var(--primary-color); }
  
  .pro_list ul{ flex-direction: column; border:none; }
  .pro_list ul li a{ 
      display: block; padding: 18px 20px; margin-bottom: 10px; position: relative;
      background-color: #fff; box-shadow: 0 3px 15px 0 #dbdfe4;  
      color: var(--dark-color); font-weight: 700;
  }
  
  .pro_list ul li a.active{ background-color: var(--dark-color); color: #fff;  }
  .pro_list ul li a.active:before{
      content: "";
      position: absolute; left: -10px; top: 18px;
      width: 0px;
    height: 0px;
      /*background-color: var(--primary-color);*/
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 10px solid var(--primary-color);
  }
  
  .pro_list ul li a.active:after{
    content: "";
    width:5px; height: 100%;
    position: absolute; left: 0; top: 0;
    background-color: var(--primary-color);
  }
  
  
  
  .product_section .card {
      background: #fff;
      border-radius: 10px;
      margin-bottom: 20px;
      border: 1px solid #e5e7f2;
  }
  
  .product_section .card-header {
      position: relative;
      background: var(--dark-color);
      border-bottom: 1px solid #eee;
      padding: 12px 20px;
      border-radius: 10px 10px 0 0;
  }
  
  .product_section .card-body{ padding: 15px; }
  
  .product_section .card-body > img{ width: 100%; }
  
  .product_section .card-link {
      text-align: left;
      font-size: 18px;
      font-weight: bold;
      color: #fff;
      font-family: 'Nunito', sans-serif;
  }
  
  .pro_txt{ padding: 15px; }
  .pro_txt h3 {
      font-size: 24px;
      line-height: 30px;
      font-weight: 700; color: var(--dark-color); margin-bottom: 12px;
  }
  
  @media (min-width: 992px) {
    .product_section .tab-content .card-header {
      display: none;
    }
    .product_section .tab-content .collapse:not(.show) {
      display: block;
    }
  }
  @media (max-width: 991.98px) {
    .product_section .tab-content .tab-pane {
      display: flex; overflow: hidden; margin-bottom: 10px;
    }
  
    .product_section .tab-content .fade:not(.show){ opacity: 1;}
    .product_section .blog_sidebar{ display: none;}
  
    .product_section .card-header{ padding:8px 12px;}
  
    .product_section .card-link{ display: block; font-size: 16px;}
    .product_section .card-link:before {
      float: right !important;
      font-family: Font Awesome\ 5 Free;
      content:"\f068";
      padding-right: 0;
      font-size: 14px; line-height: 24px;
    }
    .product_section .card-link.collapsed:before {
        float: right !important;
        content:"\f067";
    }
  
   
    
  }
  
  /* About Section Start */
  
  .about_box h1{ color: var(--dark-color);font-size: 32px;line-height: 40px; }
  .about_box h4 {
      margin-top: 20px; font-size: 20px;
      font-weight: 600;
      padding: 5px 0 5px 28px;
      margin-bottom: 30px;
      border-left: 4px solid var(--primary-color);
  }
  
  .about_box p span{ color: var(--dark-color); font-weight: bold; }
  
  .about_box ul,.pro_txt ul {
      margin-top: 15px; margin-bottom: 40px; display: flex;flex-wrap: wrap;
  }
  .about_box ul li, .pro_txt ul li {
      font-size: 16px;
      font-weight: 500;
      margin-top: 10px;
      padding-left: 25px; width: 33.33%;
      display: block; position: relative;
  }
  .about_box ul li::before, .pro_txt ul li::before {
      position: absolute;
      top: 0;
      left: 0;
      content: "\f058";
      font-family: Font Awesome\ 5 Free;
      font-weight: 700;
      color: var(--dark-color);
  }
  
  .pro_txt ul li{ width: 48%; }
  
  .contact_section .address h5{ color: var(--dark-color); font-weight: 600;  }
  .contact_section .address span, .contact_section .address a{ color: #333; }
  
  .file_upload {
      margin: 0 15px;
  }
  
  .contact_section span.error {
      font-weight: bold;
  }
  
  /* Services Section Design Start */
  
  section{ padding: 80px 0; }
  
  .sec-title{ text-align: center; margin-bottom: 45px; overflow: hidden; display: flex; justify-content: center; flex-wrap: wrap; }
  .sec-title h2 {
      font-size: 32px;
      color: #202a30;
      font-weight: 600;
      margin: 0; position: relative;
      margin-bottom: 15px;
  }
  .sec-title h2 span { color: var(--primary-color); margin-left: 10px; }
  
  .sec-title h2:after, .sec-title h2:before {
      content: " ";
      display: block; position: absolute; left: -70px; top: 50%;
      border-bottom: 2px dashed #999;
      border-top: 2px dashed #999;
      height: 8px; width: 50px;
      background-color: #f8f8f8;
  }
  
  .sec-title h2:after{ right: -70px; left: auto; }
  
  .sec-title p {
      font-size: 16px;
      color: #747474;
      margin: 0;
      margin-bottom: 20px;
  }
  .sec-title span.decor {
      width: 16px;
      height: 16px;
      border-radius: 50%;
      border: 2px solid #a2a1a1;
      background: #fff;
      display: inline-block;
      position: relative;
      z-index: 1;
  }
  .sec-title span.inner {
      width: 6px;
      height: 6px;
      background: #f64b3c;
      border-radius: 50%;
      display: block;
      margin: auto;
      margin-top: 3px;
  }
  .sec-title span.decor::before, .sec-title span.decor::after {
      content: '';
      position: absolute;
      top: 5px;
      width: 50px;
      height: 2px;
      background: #cecece;
      z-index: -1;
  }
  .sec-title span.decor::before {
      left: 14px;
  }
  .sec-title span.decor::after {
      right: 14px;
  }
  
  
  .service_list ul {
      display: flex;
      flex-wrap: wrap;
  }
  .service_list > ul > li {
      width: 31.3%;
      margin: 1%;
  }
  
  .service_thum {
      box-shadow: 0 5px 15px 0 #d7dbe0;
      height: 100%; 
  }
  
  .service_thum p{
      text-align: justify;
      overflow: hidden; min-height: 96px; margin-bottom: 5px;
      display: -webkit-box;
      -webkit-line-clamp: 4;
      -webkit-box-orient: vertical;
  }
  
  .service-img {
      position: relative; display: inline-block;
      overflow: hidden;
      background-color: var(--dark-color);
  }
  .service-img a {
      display: block;
  }
  
  .service-img img{ transition: all 0.5s ease-in-out; }
  
  
  .service_thum:hover .service-img img{ transform: scale(1.1); opacity: 0.5; }
  
  .service_thum .blog-img img {
      height: 320px;
  }
  .blog-text {
      background: #fff;
      padding: 20px;
  }
  .service_thum h4 a {
      font-size: 22px;
      line-height: 25px;
      /*text-transform: uppercase;*/
      font-weight: 600;
      margin: 0 0 20px; color: var(--dark-color);
  }
  
  .read-more{ color: var(--primary-color) !important; font-weight: bold; display: flex; align-items: center;  }
  .read-more i{ margin-left: 10px; margin-top: 5px; color: var(--dark-color); transition: all 0.2s ease-in-out;}
  .read-more:hover i{ transform: translateX(10px); }
  
  /* Banner Slider Start */
  
  .slide { position: relative; transition:1s;}
  .slide .slide_img {width: 100%;height: auto;overflow: hidden;}
  
  
  /*.slider_1, .slide { height: calc(100vh - 112px) !important; overflow: hidden; min-height: 500px; }*/
  
  .slide .slide_img img {
    /*max-width: unset;*/
    height: auto;
    opacity: 1 !important;
    -webkit-animation-duration: 3s;
            animation-duration: 3s;
    transition: all 1s ease;
  }
  
  .slide .slide_img {position: relative;
      top: 0;
      left: 0;
      transform: none;
  }
  
  /*.slide .container{ height: 100%; }*/
  
  .slide .slide_content {
    position: absolute;
      top: 0;
      width: 100%;
      left: 0;
      z-index: 99;
      display: flex;
      align-items: center;
      justify-content: space-between;
      height: 100%;
  }
  
  .slide .banner_txt {
    color: #FFF;
  }
  .slide .banner_txt h2 {
    font-size: 4.5rem;
    margin: 10px 0;
  }
  .slide .banner_txt .animated {
    transition: all 0.5s ease;
  }
  .slide .banner_txt .top-title {
    font-family: "Playball", cursive;
    font-size: 2.5rem;
  }
  .slide .banner_txt .title {
    font-size: 3.5rem;
  }
  .slide .banner_txt .button-custom {
    text-decoration: none;
    color: #333;
    padding: 1.2rem 2.5rem;
    font-size: 1.5rem;
  }
  
  .slider_1 [data-animation-in] {
    opacity: 0;
    -webkit-animation-duration: 1.5s;
            animation-duration: 1.5s;
    transition: opacity 0.5s ease 0.3s;
    transition: 1s;
  }
  
  
  
  .zoomOutImage {
    -webkit-animation-name: zoomOutImage;
            animation-name: zoomOutImage;
    transition: 1s;
  }
  
  
  .slick-nav {
    --active: var(--dark-color);
    --border: rgba(255, 255, 255, .12);
    width: 44px;
    height: 44px;
    position: absolute;
    cursor: pointer;
    top: calc(50% - 44px);
  }
  .slick-nav.prev-arrow {
    left: 0;
    transform: scaleX(-1);
    z-index: 9;
  }
  .slick-nav.next-arrow {
    left: auto;
    right: 0;
  }
  .slick-nav i {
    display: block;
    position: absolute;
    margin: -10px 0 0 -10px;
    width: 20px;
    height: 20px;
    left: 50%;
    top: 50%;
  }
  .slick-nav i:before, .slick-nav i:after {
    content: "";
    width: 10px;
    height: 2px;
    border-radius: 1px;
    position: absolute;
    left: 50%;
    top: 50%;
    background: var(--active);
    margin: -1px 0 0 -5px;
    display: block;
    transform-origin: 9px 50%;
  }
  .slick-nav i:before {
    transform: rotate(-40deg);
  }
  .slick-nav i:after {
    transform: rotate(40deg);
  }
  
  .slick-nav svg {display: none;}
  
  
  .banner__slider{/*background: url("../images/banner_img_01.jpg") no-repeat center center;*/ background-color: var(--dark-color); padding: 0;}
  .banner__slider .slick-slide{ margin: 0; }
  
  
  .slide .banner_txt .animated {
      transition: all 0.5s ease;
  }
  .slide .slide_img:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    /*background: rgba(255,255,255,0.5);*/
    /*background-image: linear-gradient(to right, rgba(255,255,255,1) ,rgba(255,255,255,0.9),rgba(255,255,255,0.9) ,rgba(255,255,255,0.6) , rgba(255,255,255,0.2));
    */
    background-image: linear-gradient(to right, rgba(5,25,81,1),rgba(5,25,81,1), rgba(5,25,81,0.2));
    
    opacity: 0.8;
    z-index: 1;
  }
  
  .slide .banner_txt h1{ color: var(--primary-color); }
  
  .slide p,.slide h3{display: block;
      font-size: 24px;
      line-height: 1.5em;
      color: #ffffff;
      font-weight: 400;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      margin-bottom: 20px;}
  
  .banner_txt{ max-width: 60%; }
  .banner_box {
      display: flex;
      align-items: center;
      /*justify-content: center;*/
      overflow: hidden;
  }
  
  .slide h1 {
    display: block;
    font-size: 50px;
    line-height: 55px;
    color: var(--dark-color);
    font-weight: 600;
    letter-spacing: 0;
    margin: 10px 0 30px;
    transform: translateY(80px);
    
  }
  
  .slide h1 span{color: #fff;}
  
  .slide h3 {
      font-size: 20px;
      color: #fff; margin-bottom: 10px;
  }
  
  .slick-nav.prev-arrow, .slick-nav.next-arrow{
      position: absolute;
      width: 50px;
      height: 50px;
      background: #fff !important; border:2px solid #fff;
      padding: 0;
      margin: 0;
      line-height: 50px;
      text-align: center;
      opacity: 1;
      border-radius: 0;
      transition: all 500ms ease;
  }
  
  .slick-nav.prev-arrow{ margin-right: 60px; }
  .slick-nav.next-arrow{ margin-bottom: -60px; }
  
  .slick-nav.prev-arrow:hover, .slick-nav.next-arrow:hover { opacity: 1; }
  
  
  /* ========  Slider / Banner Section End ========  */
  
  
  
  
  /* Counter Section Start */
  
  .counter_section {
      background: url(../images/counter_bg.jpg) center center no-repeat;
      background-size: cover;
      position: relative;
      z-index: 2; color: #fff;
      padding: 60px 0;
  }
  .counter_section:after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: var(--dark-color);
      opacity: 0.95;
      z-index: -1;
  }
  
  .counter_section .mini_address li{ border-right: 2px dashed #6b7b96; }
  
  /* Testimonial Section Start */
  
  .slick-track{ display: flex; }
  
  .single-testimonial {
      background: #fff;
      padding: 20px; position: relative; padding-bottom: 30px; height: auto;
      box-shadow: 0 5px 15px 0 #dae3f0;
      margin: 20px 10px 30px; border-radius: 10px;
      position: relative;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex !important;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -ms-flex-line-pack: center;
      align-content: center;
      -webkit-box-align: flex-start;
      -ms-flex-align: flex-start;
      align-items: flex-start;
  }
  
  .single-testimonial:before {
      top: 15px;
      content: "\f10d ";
      font-family: Font Awesome\ 5 Free;
      font-size: 35px; font-weight: 600;
      position: absolute;
      left: 30px;
      color: var(--primary-color);
      opacity: 0.3;
  }
  
  .testimonial-text {
      flex: 1;
      text-align: left;
      padding-top: 50px
  }
  
  .testimonial-text h4 {
      color: #111;
      font-weight: 500; position: absolute; bottom: 10px;
      font-size: 20px;
      /*margin-top: 10px;*/
      -webkit-transition: all 0.4s ease 0s;
      transition: all 0.4s ease 0s;
  }
  
  .testimonial-img {
      width: 100px; display: none;
      height: 100px; margin-left: 15px;
  }
  
  .testimonial-img img {
      width: 100% !important;
      border-radius: 50%;
  }
  
  
  
  .light_bg{ background-color: #f2f3f8; }
  
  .mini_address{ display: flex; flex-wrap: wrap; }
  .mini_address li {display: flex; justify-content: center; flex: 1;margin: 12px 0; padding: 15px; border-right: 1px solid #d8d8d8;}
  .mini_address li:last-child{ border:none; }
  .mini_address li .icon {
      width: 60px;
      height: 60px;
      line-height: 60px; padding: 10px; background-color: #fff; border-radius: 100%;
      color: var(--primary-color);
      font-size: 30px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-right: 15px; margin-top: 10px;
  }
  
  .mini_address li .info{ min-width: 80px; }
  
  .mini_address p{ margin: 0; }
  .mini_address p a{ color: #212529; }
  
  .about_box .mini_address{ flex-direction: column; align-items: flex-start; }
  .about_box .mini_address li{ display: flex; padding: 0; border: none; width: 100%; justify-content: flex-start; }
  .about_box .mini_address li:before{ display: none; }
  .about_box > h5{
      margin-top: 20px;
      font-size: 16px;
      font-weight: 600;
      padding: 5px 10px;
      margin-bottom: 20px;
      border-left: 3px solid var(--primary-color);
  }
  
  
  .about_box .mini_address li .icon{ width: 50px; height: 30px; padding: 0; margin-top: 5px; background-color: transparent; }
  
  
  .client_thum{ box-shadow: 0 0 15px 0 #d7dbe0; background-color: #fff; padding: 10px; margin: 15px; text-align: center; }
  
  .infra_thum{ box-shadow: 0 0 15px 0 #d7dbe0; background-color: #fff; padding: 10px; margin:0 0 15px; min-height: calc(100% - 15px); }
  .infra_thum h5{ border-bottom: 2px dashed #999; padding-bottom: 5px; }
  .infra_thum ul{ margin: 0; }
  .infra_thum ul li{ width: 100%; text-align: left; line-height: 20px; display: flex; justify-content: space-between; align-items: flex-start; }
  .infra_thum span.badge{ background-color: var(--primary-color); color: #fff; padding: 5px 10px; }
  
  /* Contact Us Page Start */
  
  .contact_info{ margin-top: 15px; }
  .contact_info li{ margin-bottom: 10px; }
  .contact_info li>span{ display: flex; align-items: flex-start; }
  .contact_info li i {
      line-height: 2;
      color: var(--primary-color);
      font-size: 20px;
  }
  
  .contact_info li span>span {
      margin-left: 15px; margin-top: 5px;
      flex: 1;
  }
  
  .contact_info li span a {
      display: inline-block;
      width: 100%;
      color: #212529;
  }
  
  
  .all_clients .client_thum{ margin: 15px 0; }
  .all_certificate .row{ justify-content: center; }
  .all_certificate .box{ box-shadow: 0 0 10px #ccc; }
  .all_certificate h5{ text-align: center; }
  
  
  video{ width: 100%; }
  
  /* Photo Gallery */
  
  
  .box{background: var(--dark-color);position: relative;overflow: hidden; margin-bottom: 20px;}
  .box:before,
  .box:after,
  .box .box-content:before,
  .box .box-content:after{
      content: "";
      background: #fff;
      width: calc(100% - 30px);
      height: 4px;
      transform: scaleX(0);
      position: absolute;
      top: 15px;
      left: 15px;
      z-index: 1;
      transition: all 600ms ease;
  }
  .box:after{ top: auto;bottom: 15px;left: auto;right: 15px;}
  .box .box-content:before,
  .box .box-content:after{
      width: 4px;
      height: calc(100% - 30px);
      transform: scaleY(0);
  }
  .box .box-content:after{
      left: auto;
      right: 15px;
      top: auto;
      bottom: 15px;
  }
  .box:hover:before,
  .box:hover:after,
  .box:hover .box-content:before,
  .box:hover .box-content:after{
      transform: scale(1);
  }
  .box img{
      width: 100%;
      height: 250px;
      transform: scale3d(1, 1, 1);
      transition: all 0.25s linear;
  }
  .box:hover img{
      opacity: 0.28;
      transform: scale(1.25);
  }
  .box .inner-content{
      color: #fff;
      text-align: center;
      width: 70%;
      opacity: 0;
      transform: translateX(-50%) translateY(-50%);
      position: absolute;
      top: 70%;
      left: 50%;
      transition: all 600ms ease;
  }
  .box:hover .inner-content{
      opacity: 1;
      top: 50%;
  }
  
  .box .icon{ display: flex; justify-content: center; }
  .box .icon a{
      color: #fff;
      font-size: 18px;
      line-height: 32px;
      height: 35px;
      width: 35px;
      border: 2px solid #fff;
      border-radius: 10px;
      display: block;
      transition: all 0.3s;
  }
  .box .icon a:hover{
      color: #333;
      background: #fff;
      border-radius: 100%;
  }
  
  /* Footer Section Start */
  
  footer { position: relative; background-color: var(--dark-color);}
  
  footer .f-items{padding: 55px 0 50px; position: relative; z-index: 1; }
  
  footer:after{
    content: "";
    width: 100%; height: 100%; position: absolute; top: 0;
    background: url(../images/footer_bg.png) no-repeat center center;
    background-size: cover;
    z-index: 0; opacity: 0.3;
  }
  
  footer .widget-title {
      display: inline-block;
      position: relative;
      z-index: 1;
      color: #fff;
      margin-bottom: 30px;
      font-weight: 500;
      font-size: 22px;
  }
  footer .link li {margin-bottom: 15px;}
  footer .link li a {color: #96aac1;position: relative;}
  footer .link li.active a,footer .link li:hover a {color: #fff;}
  footer .link li a:before{
    content: "\f101";
    font-family: Font Awesome\ 5 Free;
    font-size: 14px; font-weight: 600;
    transition: all 0.2s ease-in-out;
    z-index: 1; margin-right: 8px;
  }
  
  footer .link li.active a:before,footer .link li:hover a:before {color: var(--primary-color);}
  
  
  
  .footer_logo a{
    max-width: 200px;
    display: inline-block;
    margin-bottom: 20px;
    border-radius: 10px;
    padding: 10px;
    background-color: #fff;
    overflow: hidden;
  }
  
  .address li {
      display: flex;
      margin: 0 0 25px;  
  }
  .address li .icon{
      width: 36px;
      height: 36px;
      line-height: 36px;
      background-color: var(--primary-color); color: #fff;
      border-radius: 5px;
      font-size: 16px;
      display: flex;align-items: center; justify-content: center; margin-right: 15px;
  }
  .address li .info{ flex: 1; }
  
  .address li .icon+div { flex: 1;}
  
  .address li i {
      display: inline-block;
  }
  .address h5 {
      text-transform: capitalize;
      font-weight: 500;
      font-size: 18px;
      margin-bottom: 0;
  }
  .address span, .address a {
      color: #96aac1; word-break: break-word;
  }
  
  footer .social-icons ul li a{ background-color: var(--primary-color); color: #fff;  }
  
  
  .footer-bottom {
      padding: 0px; background-color: #1c366b; z-index: 1; position: relative;
      
  }
  
  .footer-bottom .container{display: flex; justify-content: space-between; align-items: center; padding: 0 70px;}
  
  .footer-logo img{ max-height: 80px; }
  .footer-logo a {
      position: absolute;
      width: 260px;
      background-color: #fff;
      height: 95px;
      display: flex; align-items: center; justify-content: center;
      top: -60px;
      z-index: 22;
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
  }
  .footer-logo a::before {
      position: absolute;
      width: 0;
      height: 0;
      border-bottom: 26px solid rgba(219,34,35,0.8);
      border-left: 26px solid transparent;
      content: "";
      right: 100%;
      top: 0;
      z-index: -1;
  }
  .footer-logo a::after {
      position: absolute;
      width: 0;
      height: 0;
      border-bottom: 26px solid rgba(219,34,35,0.8);
      border-right: 26px solid transparent;
      content: "";
      left: 100%;
      top: 0;
      z-index: -1;
  }
  
  .copyright-info p,.copyright-info a{ margin: 0; color: #fff; font-size: 14px; }
  .scroll-up-btn a {
      display: inline-block;
      padding: 16px 20px;
      border-radius: 10px;
      line-height: 1;
      background-color: var(--dark-color); color: #fff;
  }
  
  .whatsapp_icon a {
      background-color: #3AB54A !important;
      position: fixed;
      left: 10px;
      bottom: 10px;
      display: inline-block;
      font-size: 20px;
      width: 50px;
      height: 50px;
      line-height: 50px;
      text-align: center;
      color: #fff;
      background: #3B5998;
      border-radius: 50%;
      z-index: 9;
  }
  
  
  
  
  /* infrastructure and facilities css start */
.tab_btn{ 
    display: flex; 
    flex-wrap: wrap; 
    justify-content: center;
     margin-bottom: 20px; 
    } 
    .nav{ 
        padding-left: 0; 
        list-style: none; 
        margin-bottom: 30px;
    } 
    .tab_btn.nav-pills .nav-link.active, .tab_btn.nav-pills .show>.nav-link{ 
        background-color:var(--primary-color); 
        color: #fff; 
    } 
    .nav-pills .nav-link{ 
        border-radius: 0.25rem; 
    } 
    .nav-link{ 
        display: block; padding: 0.5rem 1rem; 
    } 
    .tab_btn.nav-pills .nav-link{ 
        background-color: #ddd; color: #333; margin: 5px; 
    } 
    .tab-content>.active{ 
        display: block; 
    }

.project_list ul{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-bottom: 25px;
}

.project_section.product_detail_section .project_list li{
    padding: 10px;
    margin-bottom: 20px;
    text-align: left
}

.project_list li{
    border: 1px solid #ddd;
    background-color: #fff;
    padding: 20px;
    border-radius: 10px;
    display: flex;
    align-items: flex-start;
    width: 100%;
    margin-bottom: 30px;
}

    /* .project_section.product_detail_section .project_img{
        width: 50%;
        margin-right: 20px;
    } */

.project_img{
    /* border-radius: 0 20px; */
    overflow: hidden;
    width: 36%;
    margin-right: 30px;
}

.project_img img{
    object-fit: cover;
    height: 280px;
    width: 400px;
}

.project_txt{
    padding: 15px 0 0;
    flex: 1;
}

.project_txt h5{
    margin-bottom: 15px;
    font-weight: 200;
}
.project_txt span{
    font-weight: 500;
}

.text_infra{
    color:rgba(0,0,0,.5);
}

.project_txt h3{
    font-size: 22px;
    line-height: 30px;
    font-weight: 700;
    color:var(--dark-color);
    margin-bottom: 12px;
}

.project_txt p{
    line-height: 28.8px;
    margin-bottom: 10px;
}
/* infrastructure and facilities css start */


  
  /* All Media Query */
  
  @media screen and (max-width: 1400px) {
  .banner_box{ padding: 0 50px; }
  
  }
  
  @media screen and (max-width: 991.98px) {
  
    body{ padding-top: 115px; }
  
      .my_navbar{ position: fixed; width: 100%; top: 0; z-index: 99; }
      .header_info_box{ display: none; }
      .my_navbar nav{ margin: 0; padding: 0; }
      .my_navbar.sticky .top_header{ display: block; }
      .navbar-collapse{ 
          /*position: absolute;*/
          top: 0px;
          background-color: #fff; box-shadow: 0px 0px 9px 0px rgb(6 22 58 / 20%);
          width: 100%;
          left: 0px; 
      }
      .navbar-toggler{position: absolute;top: 15px;right: 15px;z-index: 999;}
  
    .navbar-nav .dropdown-menu{ background-color: #2d4577; width: 90%; margin: 0 auto; padding: 0; }
    .dropdown-item{ color: #fff; }
  
      .my_navbar .navbar-nav li a{ padding: 10px 20px !important; border-bottom: 1px solid #ddd !important; }
  /*	.my_navbar li .my_btn{ margin: 10px 20px; }*/
  
  
      .about_box{ /*margin-top: 30px;*/ }
      .about_box h1{ font-size: 35px; }
  
  
    .banner_txt{ max-width: 90%; }
  
  
      .footer-logo{ display: none; }
      footer .f-items{ padding: 55px 0; }
      footer .address li:last-child{ margin-bottom: 0; }
      footer .f-items .col-lg-5{ border-bottom: 2px dashed #315a9a; padding-bottom: 15px; margin-bottom: 20px; }
      footer .f-items .col-lg-4{ border-top: 2px dashed #315a9a; padding-top: 15px; margin-top: 20px;}
  
  }
  
  
  @media screen and (min-width: 768px) and (max-width: 991.98px) {
  
      .mini_address li{ flex-direction: column; align-items: center; text-align: center; justify-content: flex-start; }
      .mini_address li .icon{ width: 70px; height: 70px; font-size: 40px; }
  
  }
  
  @media screen and (max-width: 767px) {
  
      .social_icon_list{ display: none; }
    .top_right_link{ width: 100%; }
    .top_right_link ul{ justify-content: flex-end; }
  
  
      .service_list > ul > li{ width: 100%; margin: 2% 0; }
  
    .service_list .service_thum{ display: flex; }
    .service_list .service_thum .service-img{ width: 38%; }
    .service_list .service_thum .service-img img{ min-height: 100%; }
    .service_list .service_thum .blog-text{ flex: 1; padding: 15px; }
  
  
    .slide h1{ font-size: 30px; line-height: 32px; margin-bottom: 20px; }
    .slide h3{ font-size: 16px; }
    .banner_txt .my_btn{ padding: 8px 10px; font-size: 14px; }
  
    .banner_txt{ max-width: 100%; }
    .slide .slide_img img{ min-height: 320px; }
    .slick-nav.prev-arrow, .slick-nav.next-arrow{ width: 30px; height: 40px; }
  
    .about_box ul li, .pro_txt ul li{ width: 100%; }
  
      
      .counter_section .mini_address li{ 
          flex-direction: column; align-items: center; 
          border: 2px dashed #6b7b96; text-align: center;  
          width: 100%; flex-basis: 46%; margin: 2%;
      }
      .counter_section .mini_address li .icon{ margin: 0 0 10px; }
  
      .light_bg .mini_address li{
      border: 1px solid #d8d8d8; margin: 0 0 12px; padding: 15px; width: 100%; 
      justify-content: center;
      flex-direction: column; align-items: center;
    }
  
    .mini_address .info{ text-align: center; }
  
      footer .f-items .col-lg-2{ border-bottom: 2px dashed #315a9a; padding-bottom: 15px; margin-bottom: 20px; }
  
  
  
  }
  
  @media screen and (max-width: 500px) {
  
    .top_right_link li:nth-child(1),.top_right_link li:nth-child(2){ display: none; }
  
    .counter_section .mini_address{ flex-direction: column; }
    .counter_section .mini_address li{ margin: 2% 0; }
  
    .service_list .service_thum{ display: block; }
    .service_list .service_thum .service-img{ width: 100%; }
    .service_list .service_thum .service-img img{ width: 100%; }
  
    .sec-title h2{ max-width: 210px; }
    .about_box h1{ font-size: 26px; }
    .about_box h4{ padding-left: 15px; }
    .single-testimonial{ flex-direction: column; }
    .testimonial-text{ text-align: center; margin-bottom: 20px; }
  
    .sub_header .breadcrumb li a{ font-size: 13px; }
    .sub_header h2{ font-size: 45px; }
    .pro_txt ul{ margin: 0 0 10px; }
    .pro_txt h3{ font-size: 21px; line-height: 20px; }
  }
  
  
  /* contact new section */
  .box1 {
    
    height: 200px;
    box-shadow:0 5px 15px 0 #dae3f0;
    display: flex;
    padding: 15px;
    align-items: center;
}
  
.img_logo {
    width: 30%;
}
  .text h5{
    color: var(--dark-color);    
 }

 .text {
    flex: 1;
    margin-left: 30px;
}
  