/* Font */
@font-face { font-family: Futura Bold; src: url('../../font/Futura.otf'); }
@font-face { font-family: Muskegon; src: url('../../font/MuskegonCF.otf'); }
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;1,100;1,300&display=swap');

:root{
  --blue:#0188DF;
  --black:#354046;
  --grey: #eee;
  --sdt: #63839D;
}

*{
  font-family: 'Roboto', sans-serif;
  margin:0; padding:0;
  box-sizing: border-box;
  outline: none !important;
  text-decoration: none !important;
  font-weight: 400;
  transition: all .2s linear;
}

*::selection{
  background:var(--black);
  color:#fff;
}

html{
  font-size: 62.5%;
  overflow-x: hidden;
}

body{
  overflow-x: hidden;
  font-size: 1.75rem;
}

section{
  overflow: hidden;
}

.button{
  height:3.5rem;
  width: 20rem;
  background:var(--sdt);
  color:#fff;
  font-size: 1.7rem;
  border-radius: .5rem;
  cursor: pointer;
  position: relative;
  z-index: 0;
  overflow: hidden;
  margin:1rem 0;
}

.button::before{
  content: '';
  position: absolute;index_
  top: -100%; left: 0;
  height:100%;
  width: 100%;
  background-color: var(--black);
  z-index: -1;
  transition: .2s linear;
}

.button:hover:before{
  top: 0%;
}

.button:hover{
  box-shadow: .1rem .5rem var(--sdt),
              0 .3rem .5rem rgba(0,0,0,.1);
}

/* Header */

.heading{
  text-align: center;
  font-size: 4rem;
  padding:1rem;
  padding-top: 8rem;
  color:var(--black);
}

.heading span{
  color:var(--sdt);
}

header{
  width:100%;
  position: fixed;
  top:0; left: 0;
  padding:2rem 1rem;
  z-index: 1000;
}

.header-active{
  background:#fff;
  box-shadow: 0 .1rem .3rem rgba(0,0,0,.3);
  padding: .5rem 1rem;
}

header .container{
  display: flex;
  align-items: center;
  justify-content: space-between;
}

header a{
  color:var(--black);
}

header a:hover{
  color:var(--sdt);
}

header .container .logo{
  font-size: 3rem;
}

header .container .logo span{
  color:var(--sdt);
}

header .nav ul{
  margin:0; padding: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  list-style: none;
}

header .nav ul li{
  margin: 0 1rem;
}

header .nav ul li a{
  font-size: 2rem;
}

/* Put nav centered by spacing via container: keep nav centered visually */
header .container { justify-content: space-between; }

header .fa-bars{
  font-size: 3.5rem;
  color:var(--sdt);
  cursor: pointer;
  display: none;
}

/* Language selector (flags) */
/* Language selector (flags) now inside nav */
header .nav ul li.lang-item{
  display:flex;
  gap:.6rem;
  align-items:center;
}
header .nav ul li.lang-item img{
  width:2.4rem;
  height:auto;
  display:block;
  border-radius:.3rem;
  box-shadow: 0 .1rem .2rem rgba(0,0,0,.15);
}

header .nav ul li.lang-item a.lang-active{
  outline: .2rem solid var(--sdt);
  border-radius: .3rem;
}
header .nav ul li.lang-item a.lang-inactive{
  opacity: .8;
}


/* Footer */

.footer{
  background:var(--black);
}

.footer p{
  font-size: 1.5rem;
  color:#eee;
  padding:1rem 0;
}

.footer .col-md-4{
  padding:1.3rem
}

.footer .col-md-4:nth-child(1) h3{
  font-size: 3rem;
  color:#fff;
}

.footer .col-md-3:nth-child(1) h3 span{
  color:var(--sdt);
}

.footer a{
  font-size: 2rem;
  color:#ccc;
  display: block;
}

.footer h3{
  color:#fff;
  font-size: 3rem;
}

.footer a:hover{
  color:var(--sdt);
}

.footer .credit{
  color:#fff;
  width:80%;
  margin:0;
  padding:2rem 0;
  padding-bottom: 4rem;
  border-top: .1rem solid #ccc !important;
}

.footer .credit span{
  color:var(--sdt);
}

header .fa-times{
  transform: rotate(180deg);
}

/* media queries  */

@media (max-width:768px){

  html{
    font-size: 55%;
  }

  header .fa-bars{
    display: block;
  }

  header .nav{
    position: fixed;
    top:-100rem; left:50%;
    transform: translate(-50%, -50%);
    box-shadow: 0 0 0 100vh rgba(0,0,0,.3);
    border-radius: .5rem;
    border:.3rem solid var(--sdt) !important;
    background:#fff;
    width: 95%;
    opacity: 0;
  }

  header .nav ul{
    width: 100%;
    flex-flow: column;
    padding:2rem 0;
  }

  header .nav ul li{
    width: 100%;
    text-align: center;
    margin:1rem 0;
  }

  header .nav ul li a{
    font-size: 3rem;
    display: block;
  }

  /* Hide flag icons on small screens to save space */
  header .nav ul li.lang-item{ display:none; }

  header .nav-toggle{
    top:50%;
    opacity: 1;
  }

  .contact form .inputBox input, select{
    width: 100%;
  }

  .contact form input[type="submit"]{
    width:100%;
  }

}

/* Centered text */
.absolute {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Home page text */
.home_text_1 {
  color: #FFF;
  font-family: "Futura Bold", sans-serif;
  font-size: 6em;
}
.home_text_2 {
  color: #888;
  font-family: "Muskegon", sans-serif;
  font-size: 2.5em;
}

.header_text {
  color: #888;
  font-family: "Muskegon", sans-serif;
  font-size: 2.5em;
}

.badge span {
    background-color: #fffbec;
    width: 60px;
    height: 25px;
    padding-bottom: 3px;
    border-radius: 5px;
    display: flex;
    color: #fed85d;
    justify-content: center;
    align-items: center
}

/* Home Section */
.home .content h1{
  font-size: 5rem;
  color:var(--black);
}

.home .content h1 span{
  color:var(--sdt);
}

.home .content h3{
  font-size: 4rem;
  color:var(--black);
}

/* AboutUS Section */
.aboutus .content h1{
  font-size: 5rem;
  color:var(--black);
}

.aboutus .content h1 span{
  color:var(--sdt);
}

.aboutus .content h3{
  font-size: 4rem;
  color:var(--black);
}

/* News Section */
.news {
  background-color: #f4f4f4;
  background-image: none;
}

.news_h1 {
  font-size: 6rem;
  color: var(--black);  
  line-height: 1.2;
  color: black;
}

.container .news_h1 span{
  color:var(--sdt);
}

.container .news_h1 i{
  padding: 0 1rem;
  color:var(--sdt);
}

.news_p {
  font-size: 1.75rem;
  color: #141414;
}

.news_btn {
  font-size: 1.8rem;
}

/* Last Release Section */
.release{
  min-height: 70vh;
}

.release .box-container{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding-bottom: 3rem;
}

.release .box-container .box{
  height:20rem;
  width:30rem;
  margin:.3rem;
  overflow: hidden;
}

.release .box-container .box img{
  height:100%;
  width:100%;
  object-fit: cover;
}

.release .box-container .box:hover img{
  transform: scale(1.3);
}

/* Projet Section */
.index_project {
    min-height: 70vh;
}
.index_project .box-container{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.index_project .box-container .box{
  width:30rem;
  margin:2rem 1rem;
  overflow: hidden;
  border-radius: .5rem;
  box-shadow: 0 .3rem .5rem rgba(0,0,0,.3);
}

.index_project .box-container .box img{
  height:20rem;
  width: 100%;
  object-fit: cover;
}

.index_project .box-container .box .content{
  padding:0 1.5rem;
}

.index_project .box-container .box .content span{
  color:#666;
  font-size: 1.5rem;
  display: block;
  padding:1rem 0;
}

.index_project .box-container .box .content h3{
  font-size: 2rem;
  color:var(--black);
}

.index_project .box-container .box .content:hover h3{
  color:var(--sdt);
}

.index_project .box-container .box .content p{
  font-size: 1.3rem;
  color:var(--black);
}

/* Counter Section */
.index_counter {
    background-image: linear-gradient(rgba(200, 200, 200, 0.5), rgba(200, 200, 200, 0.5)), url("../img/background_2.jpg");
    background-position: center; /* Centre l'image verticalement et horizontalement */
    background-size: cover; /* Ajuste la taille de l'image pour couvrir tout l'élément */
}


.index_counter .box-container{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding:2rem 0;
}

.index_counter .box-container .box{
  margin:2rem 5rem;
  text-align: center;
}

.index_counter .box-container .box i{
  color:var(--black);
  font-size: 5rem;
}

.index_counter .box-container .box span{
  font-size: 3rem;
  display: block;
  padding:1rem 0;
}

/* Simulator_Header Section */
.simulator_header .box-container{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding:2rem 0;
}

.simulator_header .box-container .box{
  margin:2rem 5rem;
  text-align: center;
}

.simulator_header .box-container .box i{
  color:var(--sdt);
  font-size: 5rem;
}

.simulator_header .box-container .box span{
  color:var(--black);
  font-size: 3rem;
  display: block;
  padding:1rem 0;
}

.simulator_header .box-container .box h3{
  color:#666;
}

/* Simulator_Body Section */
.simulator_body{
  min-height: 45vh;
}

.simulator_body .box-container{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding-bottom: 3rem;
}

.simulator_body .box-container .box{
  height:20rem;
  width:30rem;
  margin:.3rem;
  overflow: hidden;
}

.simulator_body .box-container .box img{
  height:100%;
  width:100%;
  object-fit: cover;
}

.simulator_body .box-container .box:hover img{
  transform: scale(1.3);
}

.form-control {
  font-size: 2rem;
}
.form-select{
  font-size: 2rem;
}

.btn-sdt {
    color: #fff;
    background-color:var(--sdt);
    border-color:var(--sdt);
}