/*--------------------------------------------------------------------- File Name: style.css ---------------------------------------------------------------------*/


/*--------------------------------------------------------------------- import Fonts ---------------------------------------------------------------------*/

@import url('https://fonts.googleapis.com/css?family=Rajdhani:300,400,500,600,700');
@import url('https://fonts.googleapis.com/css?family=Poppins:100,100i,200,200i,300,300i,400,400i,500,500i,600,600i,700,700i,800,800i,900,900i');

/*****---------------------------------------- 1) font-family: 'Rajdhani', sans-serif;
 2) font-family: 'Poppins', sans-serif;
 ----------------------------------------*****/


/*--------------------------------------------------------------------- import Files ---------------------------------------------------------------------*/

@import url(animate.min.css);
@import url(normalize.css);
@import url(icomoon.css);
@import url(css/font-awesome.min.css);
@import url(meanmenu.css);
@import url(owl.carousel.min.css);
@import url(swiper.min.css);
@import url(slick.css);
@import url(jquery.fancybox.min.css);
@import url(jquery-ui.css);
@import url(nice-select.css);

/*--------------------------------------------------------------------- skeleton ---------------------------------------------------------------------*/

* {
     box-sizing: border-box !important;
     transition: ease all 0.5s;
}

html {
     scroll-behavior: smooth;
     overflow-x: hidden !important;
}

body {
     color: #666666;
     font-size: 14px;
     font-family: Poppins;
     line-height: 1.80857;
     font-weight: normal;
     overflow-x: hidden !important;
}

a {
     color: #1f1f1f;
     text-decoration: none !important;
     outline: none !important;
     -webkit-transition: all .3s ease-in-out;
     -moz-transition: all .3s ease-in-out;
     -ms-transition: all .3s ease-in-out;
     -o-transition: all .3s ease-in-out;
     transition: all .3s ease-in-out;
}

h1,
h2,
h3,
h4,
h5,
h6 {
     letter-spacing: 0;
     font-weight: normal;
     position: relative;
     padding: 0 0 10px 0;
     font-weight: normal;
     line-height: normal;
     color: #111111;
     margin: 0
}

h1 {
     font-size: 24px
}

h2 {
     font-size: 22px
}

h3 {
     font-size: 18px
}

h4 {
     font-size: 16px
}

h5 {
     font-size: 14px
}

h6 {
     font-size: 13px
}

*,
*::after,
*::before {
     -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
     box-sizing: border-box;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
     color: #212121;
     text-decoration: none!important;
     opacity: 1
}

button:focus {
     outline: none;
}

ul,
li,
ol {
     margin: 0px;
     padding: 0px;
     list-style: none;
}

p {
     margin: 20px;
     font-weight: 300;
     font-size: 15px;
     line-height: 24px;
}

a {
     color: #222222;
     text-decoration: none;
     outline: none !important;
}

a,
.btn {
     text-decoration: none !important;
     outline: none !important;
     -webkit-transition: all .3s ease-in-out;
     -moz-transition: all .3s ease-in-out;
     -ms-transition: all .3s ease-in-out;
     -o-transition: all .3s ease-in-out;
     transition: all .3s ease-in-out;
}

img {
     max-width: 100%;
     height: auto;
}

 :focus {
     outline: 0;
}

.paddind_bottom_0 {
     padding-bottom: 0 !important;
}

.btn-custom {
     margin-top: 20px;
     background-color: transparent !important;
     border: 2px solid #ddd;
     padding: 12px 40px;
     font-size: 16px;
}

.lead {
     font-size: 18px;
     line-height: 30px;
     color: #767676;
     margin: 0;
     padding: 0;
}

.form-control:focus {
     border-color: #ffffff !important;
     box-shadow: 0 0 0 .2rem rgba(255, 255, 255, .25);
}

.navbar-form input {
     border: none !important;
}

.badge {
     font-weight: 500;
}

blockquote {
     margin: 20px 0 20px;
     padding: 30px;
}

button {
     border: 0;
     margin: 0;
     padding: 0;
     cursor: pointer;
}
.full {
     float: left;
     width: 100%;
}

.layout_padding {
     padding-top: 90px;
     padding-bottom: 0px;
}
.padding_0{
    padding: 0px;
}
.padding_left_0{
    padding-left: 100px;
}
.header_section {
    width: 100%;
    float: left;
}
.header_bg{
  width: 100%;
  float: left;
  background-color: #f8f9fa!important;
}
.fullwidth-nav { width:100%; position:relative; z-index:50; }
.hero_wrapper { width:100%; display:flex; flex-wrap:wrap; }
.hero_wrapper .banner_main { padding: 80px 6% 40px; }
.hero_wrapper .banner_main .banner_taital { font-size: 58px; line-height: 1.05; }
@media (max-width: 991.98px){
    .hero_wrapper .banner_main { padding: 60px 25px 30px; }
    .hero_wrapper .banner_main .banner_taital { font-size: 44px; }
    .hero_wrapper .hero_image_container { order: -1; }
}
@media (min-width: 992px){
    .hero_wrapper .banner_main, .hero_wrapper .hero_image_container { flex: 0 0 50%; max-width:50%; }
    .hero_wrapper .hero_image_container { position:relative; }
    .hero_wrapper .hero_image_container img { width:100%; height:100%; object-fit:cover; }
}
.banner_main.flex-fill { min-width:300px; }
.hero_image_container { display:flex; align-items:center; justify-content:center; }
.hero_image_container .banner_img { object-fit:cover; height:100%; max-height:640px; }
.banner_img{
    width: 100%;
    float: left; 
}

.logo {
    width: 25%;
    float: left;
}

.bg-light {
    background-color: transparent!important;
}
.navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 13px;
    padding-left: 13px;
    font-size: 18px;
    color: #2e2d2e;
    text-transform: uppercase;
}
.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {
    color: #f61919;
}
.banner_main{
    width: 100%;
    float: left;
    padding-left: 100px;
}
.banner_taital {
    width: 100%;
    float: left;
    font-size: 60px;
    color: #2e2d2e;
    padding-top: 80px;
    text-transform: uppercase;
    font-weight: bold;
}

.banner_text {
    width: 90%;
    float: left;
    font-size: 16px;
    color: #2e2d2e;
    margin-left: 0px;
}
.btn_main {
    width: 100%;
    float: left;
    padding-top: 75px;
}
.more_bt {
    width: 170px;
    float: left;
}

.more_bt a {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #000;
    border: 2px solid #ff5a58;
    text-align: center;
    padding: 10px 0px;
    border-radius: 40px;
    text-transform: uppercase;
    font-weight: bold;
}
.more_bt a:hover {
    color: #000;
    border: 2px solid #ff5a58;
}
.contact_bt {
    width: 170px;
    float: left;
    margin-left: 15px;
}
.contact_bt a {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #181818;
    border: 2px solid #4aafff;
    text-align: center;
    padding: 10px 0px;
    border-radius: 40px;
    text-transform: uppercase;
    font-weight: bold;
}
.contact_bt a:hover {
    color: #181818;
    border: 2px solid #ff5a58;
}
.services_section {
    width: 100%;
    float: left;
    background-image: url(../images/services-bg.png);
    height: auto;
    margin-top: 75px;
    padding-bottom: 60px;
    background-size: 100%;
}

.services_taital {
    width: 100%;
    float: left;
    font-size: 34px;
    color: #282c47;
    padding-top: 10px;
    text-transform: uppercase;
    font-weight: bold;
}
.services_taital::after {
    content: '';
    background-color: #f61919;
    position: absolute;
    width: 60px;
    text-align: center;
    right: initial;
    top: 0px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    height: 7px;
    left: 0;
    border-radius: 100px;
}
.services_text {
    width: 90%;
    float: left;
    font-size: 16px;
    color: #060606;
    margin-left: 0px;
}
.moremore_bt {
    width: 170px;
    float: left;
    margin-top: 30px;
    position: relative;
    z-index: 2;
}

.moremore_bt a {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #4aafff;
    border: 2px solid #88c6f8;
    text-align: center;
    padding: 10px 0px;
    border-radius: 40px;
}
.moremore_bt a:hover {
    color: #181818;
    border: 2px solid #ff5a58;
}
.image_1{
    width: 100%;
    float: left;
}

.what_we_do_section{
    width: 100%;
    float: left;
}
.what_taital {
    width: 100%;
    float: left;
    font-size: 34px;
    color: #060606;
    padding-top: 10px;
    text-transform: uppercase;
    font-weight: bold;
    text-align: center;
}
.what_taital::after {
    content: '';
    background-color: #f61919;
    position: absolute;
    width: 60px;
    text-align: center;
    right: 0;
    top: 0px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    height: 7px;
    left: 0;
    border-radius: 100px;
}

.what_text {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #060606;
    margin-left: 0px;
    text-align: center;
    margin-top: 0px;
}
.what_we_do_section_2{
    width: 100%;
    float: left;
    margin-top: 40px;
}
.box_main {
    width: 100%;
    float: left;
    background-color: #f61919;
    border-radius: 10px;
    padding: 30px 0px;
    margin-bottom: 10px;
}
.box_main:hover{
    background-color: #f61919;
}
.box_main.active {
    background-color: #f61919;
}
.icon_1 {
    width: 100%;
    float: left;
    text-align: center;
    min-height: 70px;
}
.accounting_text{
    width: 100%;
    float: left;
    font-size: 20px;
    color: #ffffff;
    text-align: center;
    text-transform: uppercase;
}
.lorem_text{
    width: 100%;
    float: left;
    font-size: 16px;
    color: #ffffff;
    text-align: center;
    margin-left: 0px;
}
.moremore_bt_1 {
    width: 170px;
    margin: 0 auto;
    text-align: center;
    margin-top: 30px;
}

.moremore_bt_1 a {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #ffffff;
    border: 2px solid #ffffff;
    text-align: center;
    padding: 10px 0px;
    border-radius: 40px;
}
.moremore_bt_1 a:hover {
    color: #ffffff;
    border: 2px solid #ffffff;
}
.project_section{
    width: 100%;
    float: left;
    padding-bottom: 90px;
}
.project_main{
    width: 100%;
    float: left;
    padding-top: 200px;
}
.image_6 {
    width: 100%;
    float: left;
    position: relative;
    left: -100px;
    top: -50px;
}
.images_main{
    width: 100%;
    float: left;
}
.images_left{
    width: 50%;
    float: left;
}
.images_right {
    width: 47%;
    float: left;
    margin-top: 70px;
    margin-left: 12px;
}

.image {
  opacity: 1;
  display: block;
  width: 100%;
  height: auto;
  transition: .5s ease;
  backface-visibility: hidden;
}

.middle {
  transition: .5s ease;
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  text-align: center;
}

/* .container_1:hover .image {
  opacity: 0.3;
  background-color: rgb(71.0.5.9.5)!important;

} */

/* .container_1:hover .middle {
  opacity: 1;
  z-index: 2;
} */

.text {
  color: white;
  font-size: 16px;
  padding: 16px 32px;
}

.hm-gradient {
    background-image: linear-gradient(to top, #f3e7e9 0%, #e3eeff 99%, #e3eeff 100%);
}
.darken-grey-text {
    color: #2E2E2E;
}

.container_1 {
    position: relative;
    margin-top: 12px;
}
.container_1::after{
    display: none;
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    background-color: rgba(225 ,225 ,225 ,0.8);
    width: 100%;
    height: 100%;
}

/* .container_1:hover::after{
    display: block;
} */
.fact_text{
    width: 100%;
    float: left;
    font-size: 15px;
    color: #060606;
    text-align: center;
}

.project_section_2 {
    width: 100%;
    float: left;
    background-color: #f61919;
    height: auto;
    padding: 50px 0px 40px 0px;
}
.accounting_text_1{
    width: 100%;
    float: left;
    font-size: 40px;
    text-align: center;
    font-weight: bold;
    color: #ffffff;
}
.yers_text {
    width: 100%;
    float: left;
    font-size: 20px;
    text-align: center;
    font-weight: 600;
    color: #ffffff;
    margin-left: 0px;
    margin-top: 0px;
}
.team_section{
    width: 100%;
    float: left;
}
.what_text_1 {
    width: 50%;
    margin: 0 auto;
    font-size: 16px;
    color: #060606;
    text-align: center;
}
.team_section_2{
    width: 100%;
    float: left;
}
.image_7{
    width: 100%;
    float: left;
    text-align: center;
}
.readable_text{
    width: 100%;
    float: left;
    font-size: 18px;
    text-align: center;
    color: #060606;
    margin-left: 0px;
    font-weight: 450;
}
.readable_text_1{
    width: 100%;
    float: left;
    font-size: 18px;
    text-align: center;
    color: #ff5a58;
    margin: 0px;
    font-weight: 450;
}
.social_icon{
    width: 100%;
    margin: 0 auto;
    text-align: center;
}
.social_icon ul{
    margin: 0px;
    padding: 0px;
    display: inline-block;
}
.social_icon li{
    float: left;
    padding: 20px 3px 0px 3px;
}
.client_section {
    width: 100%;
    float: left;
    padding-bottom: 140px;
}
.client_section_2{
    width: 100%;
    margin: 0 auto;
    text-align: center;
}
.client_section_2 ul{
    margin: 0px;
    padding: 0px;
    display: inline-block;
}
.client_section_2 li {
    float: left;
    padding: 50px 15px 0px 15px;
}
.round_1{
    padding-top: 50px;
}
.round_2{
    padding-top: 30px;
}
.dummy_text{
    width: 79%;
    margin: 0 auto;
    font-size: 16px;
    color: #000;
    text-align: center;
    padding-top: 30px;
}
.carousel-indicators .active {
    background-color: #1b5a8d;
}
.carousel-indicators li {
    width: 60px;
    height: 15px;
    background-color: #ff5a58;
    border-radius: 4px;
    bottom: -80px;
}

.contact_section {
    width: 100%;
    float: left;
}

.amet_text {
    width: 100%;
    float: left;
    color: #1e1e1e;
    font-size: 16px;
    text-align: center;
    margin-left: 0px;
}
.contact_section2 {
    width: 100%;
    float: left;
    padding-top: 80px;
}
.mail_section {
    width: 90%;
    float: left;
    padding-left: 50px;
}
.mail_text_1 {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #666666;
    background-color: transparent !important;
    border-bottom: 1px solid #050000 !important;
    padding-right: 20px;
    border: 0px;
    padding-top: 20px;
}
.massage_text {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #666666;
    background-color: transparent !important;
    border-bottom: 1px solid #050000 !important;
    padding-right: 20px;
    border: 0px;
    height: 70px;
    padding-top: 30px;
}
.send_bt {
    width: 200px;
    float: left;
    margin-top: 40px;
    margin-bottom: 40px;
}
.send_bt button {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #ffffff;
    text-align: center;
    background: linear-gradient(135deg, #f61919, #e60000);
    padding: 15px 30px;
    text-transform: uppercase;
    border-radius: 50px;
    border: none;
    cursor: pointer;
    font-weight: 600;
    letter-spacing: 1px;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(246, 25, 25, 0.3);
    font-family: 'Poppins', sans-serif;
}

.send_bt button:before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
    transition: left 0.5s;
}

.send_bt button:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(246, 25, 25, 0.4);
    background: linear-gradient(135deg, #e60000, #cc0000);
}

.send_bt button:hover:before {
    left: 100%;
}

.send_bt button:active {
    transform: translateY(0);
    box-shadow: 0 4px 15px rgba(246, 25, 25, 0.3);
}

.send_bt button:disabled {
    background: #cccccc;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.send_bt button:disabled:hover {
    transform: none;
    box-shadow: none;
}

/* Animation de chargement */
.send_bt button.loading {
    position: relative;
    color: transparent;
}

.send_bt button.loading:after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    top: 50%;
    left: 50%;
    margin-left: -10px;
    margin-top: -10px;
    border: 2px solid #ffffff;
    border-radius: 50%;
    border-top-color: transparent;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

/* Style pour les anciens liens (rétrocompatibilité) */
.send_bt a {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #ffffff;
    text-align: center;
    background: linear-gradient(135deg, #f61919, #e60000);
    padding: 15px 30px;
    text-transform: uppercase;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 600;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(246, 25, 25, 0.3);
    display: block;
}

.send_bt a:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(246, 25, 25, 0.4);
    background: linear-gradient(135deg, #e60000, #cc0000);
    text-decoration: none;
    color: #ffffff;
}

.footer_section{
    width: 100%;
    float: left;
    background-color: #121212;
    height: auto;
}
.about_text{
    width: 100%;
    float: left;
    font-size: 24px;
    color: #fffcf4;
}
.location_text {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #fffcf4;
    padding-top: 18px;
}
.padding_left_15 {
    padding-left: 15px;
}
.dolor_text{
    width: 100%;
    float: left;
    font-size: 18px;
    color: #fffcf4;
    padding-top: 10px;
    margin: 0px;
    line-height: 40px;
}
.mail_text {
    width: 100%;
    float: left;
    font-size: 18px;
    color: #d1d2d3;
    background-color: #ffffff;
    height: auto;
    padding: 5px 15px;
    margin-top: 18px;
}
.subscribe_bt{
    width: 100%;
    float: left;
}
.subscribe_bt a{
    width: 170px;
    float: left;
    font-size: 18px;
    color: #ffffff;
    background-color: #f61919;
    height: auto;
    padding: 5px 0px;
    text-align: center;
    text-transform: uppercase;
    margin-top: 22px;
}
.footer_social_icon{
    width: 100%;
    float: left;
}
.footer_social_icon ul{
    margin: 0px;
    padding: 0px;
}
.footer_social_icon li {
    float: left;
    padding: 35px 15px 0px 0px;
}
.footer_images{
    width: 100%;
    float: left;
}
.footer_images_left {
    width: 32%;
    float: left;
}
.footer_images_right{
    width: 50%;
    float: left;
}
.image_12 {
    width: 88%;
    float: left;
    margin-top: 15px;
}

.copyright_section {
    width: 60%;
    margin: 0 auto;
    border-top: 1px solid #fff;
    margin-top: 55px;
    text-align: center;
}
.copyright_text {
    width: 100%;
    float: left;
    color: #ffffff;
    text-align: center;
    font-size: 16px;
    margin-left: 0px;
    padding: 10px 0px;
}
.copyright_text a{
    color: #ffffff
}
.copyright_text a:hover{
    color: #ff5a58;
}
.margin_top_90{
  margin-top: 90px;
}
.section.mission-vision {
    background-color: #f2f2f2; 
    padding: 50px 0; 
}

.mission-box, .vision-box {
    background-color: #ffffff;
    border-radius: 10px; 
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); 
    transition: transform 0.3s ease; 
}

.mission-box:hover, .vision-box:hover {
    transform: translateY(-5px); 
}

.mission-title, .vision-title {
    margin-bottom: 15px; 
}

.mission-title {
    color: #007bff; 
}

.vision-title {
    color: #28a745;
}

.succursales {
    background-color: #f8f9fa;
    padding: 50px 0;
  }
  
  .succursale-box {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    text-align: center;
    padding: 20px;
    margin-bottom: 20px;
  }
  
  .succursale-box h4 {
    color: #078dee;
    font-weight: bold;
  }
  
  .succursale-box p {
    margin: 5px 0;
    font-size: 16px;
  }
.succursales_section {
  background-color: #f8f9fa;
  padding: 50px 0;
}

.succursales-list {
  list-style: none;
  padding: 0;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  color: #333;
}

.succursales-list li {
  display: inline-block;
  background: #078dee;
  color: white;
  padding: 10px 15px;
  margin: 5px;
  border-radius: 5px;
}


    /* Conteneur principal */
    .marquee-container {
        width: 100%;
        overflow: hidden;
        position: relative;
        background: #f8f9fa;
        padding: 20px 0;
        white-space: nowrap;
      }
      
      /* Contenu qui défile */
      .marquee-content {
        display: flex;
        gap: 20px;
        animation: marqueeAnimation 20s linear infinite;
      }
      
      /* Boîtes des succursales */
      .succursale-box {
        flex: 0 0 auto;
        min-width: 250px;
        background: white;
        padding: 15px;
        border-radius: 10px;
        box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
        text-align: center;
        transition: transform 0.3s;
      }
      .succursale-box h4 {
        color: #f61919;
      }
      /* Animation du défilement */
      @keyframes marqueeAnimation {
        from {
          transform: translateX(0);
        }
        to {
          transform: translateX(-50%);
        }
      }
      
      /* Pause au survol */
      .marquee-container:hover .marquee-content {
        animation-play-state: paused;
      }
/* Language Selector Styles */
.language-selector .dropdown-toggle {
    color: #ffffff;
    background-color: #f61919;
    border-radius: 16px;
    padding: 4px 10px; /* reduced height & width */
    font-size: 12px; /* smaller text */
    font-weight: 500;
    border: none;
    line-height: 1.2;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.language-selector .dropdown-toggle:hover,
.language-selector .dropdown-toggle:focus {
    color: #ffffff;
    background-color: #d60000;
    box-shadow: 0 2px 10px rgba(0,0,0,0.15);
}

.language-selector .dropdown-menu {
    min-width: 100px;
    border-radius: 10px;
    border: none;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    padding: 5px 0;
}

.language-selector .dropdown-item {
    font-weight: 500;
    padding: 8px 15px;
    transition: all 0.2s ease;
    font-size: 14px;
}

.language-selector .dropdown-item:hover {
    background-color: #f5f5f5;
    color: #f61919;
}

.language-selector .dropdown-item.active {
    background-color: #f61919;
    color: #ffffff;
}

/* ================= Responsive Enhancements ================= */
/* Scale large hero title smoothly */
.banner_taital { font-size: clamp(2.2rem, 5vw, 3.6rem); }
.services_taital, .what_taital { font-size: clamp(1.9rem, 3.6vw, 2.3rem); }

@media (max-width: 1199.98px){
    .project_main { padding-top: 120px; }
    .image_6 { left: 0; top: 0; }
}

@media (max-width: 991.98px){
    .project_main { padding-top: 60px; }
    .hero_wrapper .hero_image_container img { max-height: 380px; }
    .project_section { padding-bottom: 40px; }
    .what_we_do_section { padding-top: 40px; }
    .project_section_2 { padding: 40px 0 25px; }
    .project_section_2 .col-lg-3 { flex: 0 0 50%; max-width:50%; margin-bottom:24px; }
    .services_section { margin-top: 40px; padding-bottom: 30px; background-size: cover; }
    .footer_section .col-lg-3 { margin-bottom: 35px; }
}

@media (max-width: 575.98px){
    .project_section_2 .col-lg-3 { flex: 0 0 100%; max-width:100%; }
    .hero_wrapper .banner_main .banner_taital { font-size: 2.4rem; }
    .hero_wrapper .banner_text { font-size: 15px; }
    .btn_main { padding-top: 40px; }
    .more_bt a, .contact_bt a, .moremore_bt a, .moremore_bt_1 a { font-size: 14px; padding: 9px 0; }
}

/* Ensure flex wrapping in stats section when Bootstrap grid collapses */
.project_section_2 .row { display: flex; flex-wrap: wrap; }

/* Make team cards breathe on small screens */
@media (max-width: 767.98px){
    .team_section .col-sm-3 { flex: 0 0 50%; max-width:50%; margin-bottom: 30px; }
}
@media (max-width: 480px){
    .team_section .col-sm-3 { flex: 0 0 100%; max-width:100%; }
}

/* Contact form spacing adjustments */
@media (max-width: 767.98px){
    .contact_section2 { padding-top: 40px; }
    .mail_section { padding-left: 0; width: 100%; }
}

/* Footer improvements on very narrow screens */
@media (max-width: 420px){
    .footer_section .about_text { font-size: 20px; }
    .footer_section .dolor_text { line-height: 30px; }
}

/* Accessible focus outline */
a:focus-visible, button:focus-visible { outline: 2px solid #f61919; outline-offset: 2px; }

/* ================= Improved Navigation Menu (Attractive Enhancements) ================= */
.header_section .navbar {
    padding: 10px 28px;
    border-radius: 0; /* removed rounded corners */
    background: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border: none;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    position: relative;
    transition: background .35s ease, box-shadow .35s ease;
    width: 100%;
    margin: 0;
}

/* Full-width container adjustment on large screens */
@media (min-width: 992px) {
  .header_section .navbar .navbar-nav { align-items: center; }
}

/* Scroll State */
.header_section .navbar.scrolled {
    background: #ffffff !important;
    box-shadow: 0 4px 18px -6px rgba(0,0,0,0.18);
}

/* Nav Links – base */
.header_section .navbar-nav .nav-link {
    position: relative;
    font-weight: 600;
    letter-spacing: .5px;
    padding: 14px 18px;
    color: #222 !important;
    display: inline-flex;
    align-items: center;
}

/* Underline animation */
.header_section .navbar-nav .nav-link:after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 6px;
    width: 0;
    height: 3px;
    background: linear-gradient(90deg,#f61919,#ff914d);
    border-radius: 3px;
    transition: all .35s ease;
    transform: translateX(-50%);
    opacity: 0;
}

.header_section .navbar-nav .nav-link:hover:after,
.header_section .navbar-nav .nav-link:focus:after,
.header_section .navbar-nav .nav-link.active:after {
    width: 60%;
    opacity: 1;
}

/* Active link color reinforcement */
.header_section .navbar-nav .nav-link.active {
    color: #f61919 !important;
}

/* Force visible hamburger on mobile */
.navbar-light .navbar-toggler {
    border-color: rgba(0,0,0,0.15);
    padding: 4px 8px;
}
.navbar-light .navbar-toggler-icon {
    /* Solid black hamburger for visibility on white background */
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='%23000000' stroke-width='2.2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h22M4 15h22M4 22h22'/%3E%3C/svg%3E") !important;
}
/* Ensure collapse anim smooth and visible */
.navbar-collapse { transition: height .35s ease, visibility .35s ease; }
/* Remove forced display so mobile menu starts closed; Bootstrap handles animation */
/* Collapsing state inherits same panel styling */
@media (max-width: 991.98px){
    .header_section .navbar .collapsing,
    .header_section .navbar .navbar-collapse {
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background: #ffffff;
        padding: 10px 18px 14px;
        box-shadow: 0 6px 18px -4px rgba(0,0,0,0.15);
        border-bottom: 2px solid #f61919;
    }
}
/* Mobile slide-down animated menu */
@media (max-width: 991.98px){
    .header_section .navbar { position: relative; }
    .header_section .navbar-nav .nav-item { margin: 4px 0; }
    .header_section .navbar-nav .nav-link { padding: 10px 5px; }
    .header_section .language-selector { margin-top: 8px; }
    .header_section .language-selector .dropdown-menu { position: static; box-shadow:none; border:1px solid #eee; }
}
@media (prefers-color-scheme: dark){
    .navbar-light .navbar-toggler-icon { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255,0.85)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); }
}

/* Subtle hover lift */
.header_section .navbar-nav .nav-link:hover { color: #f61919 !important; }

/* Language selector integration inside glass nav */
.header_section .language-selector .dropdown-toggle {
    background: linear-gradient(135deg,#f61919,#ff6a3c);
    box-shadow: 0 3px 10px -4px rgba(246,25,25,0.35);
    padding: 4px 10px; /* keep compact inside enhanced navbar */
    font-size: 12px;
}
.header_section .language-selector .dropdown-toggle:hover {
    background: linear-gradient(135deg,#d80000,#ff6a3c);
}

/* Dropdown menu styling refinement */
.header_section .language-selector .dropdown-menu {
    background: #ffffff;
    border: 1px solid #f0f0f0;
    overflow: hidden;
}
.header_section .language-selector .dropdown-item {
    font-weight: 500;
}
.header_section .language-selector .dropdown-item.active {
    background: linear-gradient(90deg,#f61919,#ff6a3c);
}

/* Mobile adjustments */
@media (max-width: 991.98px) {
  .header_section .navbar { border-radius: 25px; padding: 10px 18px; }
  .header_section .navbar-nav .nav-link { padding: 10px 12px; }
  .header_section .navbar-nav .nav-link:after { bottom: 3px; }
}

/* Decorative glow on hover */
.header_section .navbar-nav .nav-link:hover {
    text-shadow: 0 2px 6px rgba(246,25,25,0.25);
}

/* Smooth dropdown fade */
.header_section .language-selector.show .dropdown-menu,
.language-selector .dropdown-menu.show {
    animation: dropdownFade .35s ease;
}
@keyframes dropdownFade {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity:1; transform: translateY(0); }
}

/* Optional subtle separator line under nav (desktop) */
@media (min-width: 992px) {
    .header_section .navbar:before { display:none; }
}

/* Make header sticky */
.fullwidth-nav { position: sticky; top:0; z-index: 1000; backdrop-filter: blur(6px); }
body { --navbar-height: 74px; }

/* Ensure logo stays vertically centered */
.header_section .logo img { max-height: 70px; height: auto; transition: max-height .35s ease; }
.header_section .navbar.scrolled .logo img { max-height: 58px; }

/* ==============================
     Floating WhatsApp Chat Button
     ============================== */
.whatsapp-float {
    position: fixed;
    bottom: 20px;
    right: 20px;
    background: #25D366;
    color: #fff;
    border-radius: 50px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 18px;
    text-decoration: none;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
    z-index: 1200;
    transition: transform .2s ease, box-shadow .2s ease;
}
.whatsapp-float:hover, .whatsapp-float:focus {
    transform: scale(1.08);
    box-shadow: 0 6px 16px rgba(0,0,0,0.4);
    color: #fff;
}
.whatsapp-float:active { transform: scale(.95); }
.whatsapp-float svg { width: 24px; height: 24px; fill: #fff; display:block; flex-shrink:0; }
.whatsapp-label { font-size:14px; font-weight:600; white-space:nowrap; }
@media (max-width: 575.98px){
    .whatsapp-float { bottom: 15px; right: 15px; padding:10px 14px; }
    .whatsapp-label { display:none; }
    .whatsapp-float svg { width:26px; height:26px; }
}
