@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');


*{
   margin:0;
   padding:0;
}

body{
    font-family: "Inter", serif;
}

.slider{
     width:100%;
     height:80vh;
     aspect-ratio:16/9;
     background: #000;
     position:relative;
}

.slider-background{
    width:100%;
    height:100%;
    object-fit: cover;
    filter:brightness(50%);
}



.slider-content{
   z-index: 1;
   position:absolute;
   top:50%;
   left:50%;
   transform:translate(-50%, -50%);
   text-align:center;
}

h1{
   color: #fff;
   font-size:5rem;
}

h2{
    font-size:2rem;
    margin-bottom: 20px;
}

h3{
    margin-bottom: 20px;
}

h4{
  color: #5f5a5a;
  font-size:1.2rem;
}

.wht{
  color: #ffffff;
}
p{
   font-size:1.2rem;
   line-height:1.2em;

}


.slider-content P{
    color:#fff;
    font-size:2rem;
    font-weight:300;
}
 
.section{
   padding-top: 20px;
   margin-top: 20px;
   margin-bottom: 20px;
   padding-bottom: 20px;
}

.boxed{
  max-width:1280px;
  margin-inline:auto;
}

.flex{
    display:flex;
}

.dark{
      background:#000;
      color:#fff;

}

.white{
  background:#ffffff;
  color:#000000;

}

.w40{
    margin-left: 20px;
    width:30%;
    height:auto;
}

.w60{
    margin-right: 30px;
    width:70%;
    text-align: justify;
}

.text-center{
text-align:center;
}

.w25 {
    width:25%;
    margin-left: auto;
    margin-right: auto;
}

.w32{
     width:32%;

}

.space-between{
     justify-content: space-between;
}

.gap20{
    gap:20px;
}

.gap30{
    gap:30px;
}

.wrap{
    flex-wrap: wrap;

}


.skill{
    background:#fff;
    border-radius:15px;
    padding:20px;
    box-sizing:border-box

}

.skill img{
    width:100px;
    height:100px;
    aspect-ratio:1/1;
    object-fit: contain;
}

.skill h3{
    color:#000;
    margin-top:10px;
}

.realisation{
    height:auto;
    aspect-ratio:1/1;
    position:relative;
    margin-bottom: 100px;
}

.realisation h3{
     position:absolute;
     top:50%;
     left:50%;
     transform:translate(-50%, -50%);
     font-size:1.5rem;
     width:max-content;
     opacity:0;
     transition:.4s ease;
}

.realisation a{
     display:block;
     width:100%;
     height:100%;
     text-decoration:none;
     color:#fff;

}

.realisation img{
      width:80%;
      height:120%;
      object-fit: cover;
      filter:brightness(60%);
      transition:.4s ease;

}

.realisation:hover img{
    filter:brightness(80%)
}


.realisation:hover h3{
    opacity:1;
}

.icon{
    display:block;
    font-size:1.5rem;
}

.label{
    display:block;
    font-weight:700;
    text-transform: uppercase;
    margin:10px 0;
    font-size:1.5rem;
}

.value{
    display:block;
    font-size:1.5rem;
}

.contact{
    border:2px dashed #fff;
    border: radius 15px;
    padding:20px;
    box-sizing: border-box;
}

  :root {
    --QC: #236013;
    --SQ: #22c908;
    --QS: #c8ec14;
    --VQ: #ff4d00;
    --ZV: #be0404;
  }
  
  .progressbar-wrapperU {
    background-color: #dfe6e9;
    color: white;
    border-radius: 15px;
    width: 60%;
  }

  .progressbar-wrapperD {
    background-color: #dfe6e9;
    color: white;
    border-radius: 15px;
    width: 50%;
  }

  .progressbar-wrapperT {
    background-color: #dfe6e9;
    color: white;
    border-radius: 15px;
    width: 10%;
  }
  
  .progressbar {
    background-color: var(--progress);
    color: white;
    padding: 1rem;
    text-align: right;
    font-size: 10px;
    border-radius: 15px;
  }
  
  .progressbar[title="QC"] {
     background-color: var(--QC);
  }
  
  .progressbar[title="SQ"] {
     background-color: var(--SQ);
  }

  .progressbar[title="QS"] {
    background-color: var(--QS);
 }
 
 .progressbar[title="VQ"] {
    background-color: var(--VQ);
 }
 .progressbar[title="ZV"] {
  background-color: var(--ZV);
}
    
  .mp4 {
    width: 90%;
  }
    
.aligncenter{
    align-items: center;
}

  header{
        position: fixed;
        top:0;
        left:0;
        width:100%;
        background:#130562;
        z-index: 2;
        padding-block: 3px;
        box-shadow: 1px 1px 25px rgba(0,0,0,07)
  }

  .header-logo{
    display: block;
  }

  .header-logo img{
    width:60px;
  }

  .header-menu{
    display: flex;
    align-items: center;
    list-style: none;
  }

  .header-menu li a{
    text-decoration: none;
    color:#ffffff;
    padding:10px 20px;
    display: block;
    box-sizing: border-box;
    transition:1s ease;
  }

  .header-menu li a:hover{
    background: #16054f;
  }

  .select{
   margin-left: 450px;
  }

.cv-link {
    display: inline-block;
    margin-top: 10px;
    text-align: center;
}

.cv-icon {
    width: 50px; 
    height: 50px; 
    border-radius: 50%;
    background-color: #100538; 
    padding: 0; 
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s ease;
    object-fit: cover; 
    display: block; 
}

.cv-icon:hover {
    transform: scale(1.1); 
}

/* Media query pour les écrans de téléphone */
@media (max-width: 768px) {
    body {
        font-size: 14px; 
        padding: 10px; 
    }

    header {
        flex-direction: column;
        padding: 10px;
    }

    .header-menu {
        flex-direction: column; 
        align-items: center;
    }

    .header-menu li a {
        padding: 10px 0; 
    }

    .slider {
        height: 50vh; 
    }

    .slider-content h1 {
        font-size: 2rem; 
    }

    .flex {
        flex-direction: column; 
    }

    .w40, .w60 {
        width: 100%;
        margin: 0;
    }

    .w25, .w32 {
        width: 100%; 
        margin-bottom: 20px; 
    }

    .realisation {
        margin-bottom: 20px; 
    }

    .realisation img {
        width: 100%; 
        height: auto; 
    }

    .realisation h3 {
        font-size: 1.2rem; 
    }

    .contact {
        width: 100%; 
        margin-bottom: 20px;
    }

    .cv-link {
        margin-top: 20px; 
    }

    .cv-icon {
        width: 50px; 
    }

    .section {
        padding: 10px; 
    }

    h1, h2, h3 {
        text-align: center; 
    }

    img {
        width: 100%;
        height: auto; 
    }

    p {
        font-size: 16px;
        margin: 10px 0; 
    }
}