body{
    background: rgb(237, 237, 237);
    margin: 0;
    padding: 0;
    font-family: 'Times New Roman', Times, serif;
    box-sizing: border-box;
    padding: 0rem;
}

@media screen and (max-width: 768px) {
    body {
      padding: 0.5rem; /* Réduction des marges pour les mobiles */
    }
  }

  html {
    scroll-behavior: smooth;
  }
  

  .slider{
    width: 100%;
    min-height: 90vh;
    aspect-ratio: 16/9;
  }
  
  .slider-background{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    object-fit: cover;
    filter: brightness(30%);
  }
  
  .slider-overlay{
    position: absolute;
    bottom: 0;
    right: 0;
    width: 43%;
    height: auto;
    z-index: 2;
    opacity: 0.9;
    object-fit: contain;
    filter: brightness(90%);
    filter: contrast(95%);
  }
  
  .slider-content{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    text-align: center;
  }
  /* Animation pour l'effet de frappe */
@keyframes typing {
    0% {
      width: 0;
    }
    100% {
      width: 100%;
    }
  }
  
 
  
  /* Masquer les éléments au départ */
  .slider-content h1, .slider-content p {
    visibility: hidden; /* Masquer les éléments dès le début */
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
  }
  
  /* Appliquer l'animation au titre (h1) */
  .slider-content h1 {
    font-size: 3.5rem;
    font-weight: 500;
    color: #FFF;
    font-family: 'Inter', sans-serif;
    text-shadow: -2px -2px 0 black, 2px -2px 0 black, -2px 2px 0 black, 2px 2px 0 black;
    margin-bottom: 0.5rem;
    animation: typing 1.7s steps(30) 1s forwards, blink 0.75s step-end infinite; /* Démarre après 1 seconde */
    width: 0; /* Commence avec une largeur de 0 pour l'effet de frappe */
  }
  
  /* Appliquer l'animation au paragraphe (p) */
  .slider-content p {
    font-size: 1.5rem;
    font-weight: 300;
    color: #FFF;
    text-shadow: -1px -1px 0 black, 1px -1px 0 black, -1px 1px 0 black, 1px 1px 0 black;
    font-family: 'Inter', sans-serif;
    margin-top: 0;
    animation: typing 3.5s steps(30) 3s forwards, blink 0.75s step-end infinite; /* Le p commence après 4 secondes */
    visibility: hidden; /* Masqué initialement */
    width: 0; /* Comme pour h1, commence avec une largeur de 0 pour l'effet de frappe */
  }
  

  /* Affichage progressif des éléments */
  .slider-content h1, .slider-content p {
    visibility: visible; /* Une fois l'animation lancée, ils deviennent visibles */
  }


  /* Style global de la navbar */
.navbar {
    background-color: rgb(237, 237, 237); /* Fond transparent pour une superposition élégante */
    position: fixed; /* Fixer la navbar en haut de la page */
    width: 100%; /* Prendre toute la largeur de la fenêtre */
    top: 0; /* En haut de la page */
    left: 0;
    z-index: 1000; /* Assurer que la navbar soit toujours au-dessus des autres éléments */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Légère ombre sous la navbar */
    padding: 0px 0; /* Espacement vertical */
    transition: background-color 0.3s ease; /* Transition douce pour le changement de fond */
  }
  
  /* Conteneur de la navbar (logo et liens) */
  .navbar-container {
    max-width: 1200px; /* Largeur maximale pour centrer la navbar */
    margin: 0 auto; /* Centrer horizontalement */
    padding: 0 20px; /* Espacement à gauche et à droite */
    display: flex;
    justify-content: space-between; /* Espacement entre le logo et les liens */
    align-items: center; /* Centrer verticalement */
  }
  
  /* Style du logo */
  .logo {
    font-size: 1.4rem;
    color: rgb(74, 74, 74);
    text-decoration: none; /* Enlever la décoration de lien */
    font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
    font-weight: bold;
    letter-spacing: 1px;
  }
  
  /* Liste des liens de navigation */
  .navbar-links {
    list-style: none; /* Supprimer les puces de la liste */
    display: flex; /* Afficher les liens horizontalement */
    gap: px; /* Espacement entre chaque lien */
  }
  
  /* Style des liens de navigation */
  .navbar-links a {
    color: black;
    text-decoration: none; /* Enlever la décoration de lien */
    font-size: 0.9rem;
    font-weight: 100;
    font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
    position: relative; /* Pour ajouter un effet de survol avec un underline */
    padding-bottom: 2px; /* Espacement pour l'underline */
    transition: color 0.5s ease;
    gap: 300px;
    letter-spacing: 3px;
    background: rgb(237, 237, 237);
    padding: 16px;
  }
  
  /* Effet de survol des liens (changement de couleur et underline) */
  .navbar-links a:hover {
    background-color: #000; /* Fond noir au survol */
    color: #fff; /* Texte blanc au survol */
    transition: 0.5s;
  }
  
  /* Ajouter un effet de soulignement au survol */
  .navbar-links a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background-color: grey;
    transform: scaleX(0); /* Commence avec une échelle de 0 */
    transform-origin: bottom right;
    transition: transform 0.5s ease;
  }
  
  /* Animation du soulignement au survol */
  .navbar-links a:hover::after {
    transform: scaleX(1); /* L'effet s'étend sur toute la largeur */
    transform-origin: bottom left;
  }
  
  /* Effet lorsque l'utilisateur fait défiler la page */
  .navbar.scrolled {
    background-color: rgba(0, 0, 0, 0.7); /* Le fond devient légèrement opaque lorsque la page est défilée */
  }
  
  
  .module-title {
    position: relative;
    margin-bottom: 50px;
    font-weight: 300;
    color: #5b5963;
}

h2 {
  font-size: 35px;
  margin: 0px 0 30px;
  position: absolute;
  text-align: center;
  letter-spacing: 3px;
}

.module-title span {
  font-size: 120px;
  position: absolute;
  left: 0;
  right: 0;
  text-align: center;
  top: -60px;
  z-index: 0;
  opacity: 0.07;
  font-weight: 700;
}

.module-line {
  background: #666;
  width: 55px;
  height: 1px;
  margin: 30px auto;
}

.paragraphe{
  font-size: 1.3rem;
  line-height: 1.5em;
  margin: 110px;
  font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  font-weight: 200;
  letter-spacing: 1px;
  text-align: center;
  color: #000;
}

.party {
  padding: 100px 0;
  width: 100%; /* S'assure que la section occupe toute la largeur de l'écran */
  margin: 0; /* Supprime toute marge qui pourrait limiter la largeur */
}


.light{
  background: #ffffff;
  color: #716e6e;
}

section {
  scroll-margin-top: 120px; /* Ajuste la valeur selon la hauteur de ta navbar */
}

/* Style de base */
.projet-container {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.projet {
  position: relative;
  width: auto; /* Taille initiale */
  height: 150px;
  cursor: pointer;
  overflow: hidden;
  margin: 95px;
  border-radius: 10%;
  border: 2px solid black;
}

.projet img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.projet:hover img {
  transform: scale(1.1); /* Zoom au survol */
}

/* Description au survol */
.hover-description {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(0, 0, 0, 0.7);
  color: white;
  font-size: 16px;
  opacity: 0;
  transition: opacity 0.3s ease;
  text-align: center;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.projet:hover .hover-description {
  opacity: 1;
}

.video-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none; /* Masquer par défaut */
  background: rgba(0, 0, 0, 0.8); /* Fond sombre pour l'effet de superposition */
  z-index: 10;
}

.video-container video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Lorsque le projet est actif (vidéo agrandie) */
.projet.active .video-container {
  display: block; /* Affiche la vidéo quand le projet est actif */
}

.projet.active {
  position: fixed;
  top: 10%;
  left: 10%;
  width: 60%;
  height: 60%;
  z-index: 100;
  border: none;
  border-radius: 0%;
}


.projet.active img,
.projet.active .hover-description {
  display: none;
}

.projet.active .video-container {
  display: block;
}


.competences-liste {
  list-style-type: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
  margin: 140px;
  margin-top: 120px;
}

.competence {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: 120px;
}

.competence:hover{
  transform: scale(1.2);
}

.competence img {
  width: 50px;
  height: 50px;
}


.nom {
  margin-top: 10px;
  font-weight: bold;
}

.barre-niveau {
  position: relative;
  width: 100%;
  height: 10px;
  background-color: #b3b2b2;
  border-radius: 5px;
  margin-top: 5px;
  overflow: hidden;
  border: 1px solid rgb(108, 108, 108);
}

.barre-niveau .pourcentage {
  position: absolute;
  top: -4px;  /* Aligne le texte avec le bord supérieur de la barre */
  right: 5px;  /* Place le texte à l'extrémité droite */
  font-size: 0.8rem;
  font-weight: bold;
  color: #eb0101;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  opacity: 0; /* Caché par défaut */
  transition: opacity 0.3s ease; /* Transition douce pour l'apparition */
}

.competence:hover .pourcentage {
  opacity: 1;
}

.barre-niveau .niveau {
  height: 100%;
  background-color: white;
  border-radius: 5px;
}

.my-button {
  background-color: #b3b2b2; /* Couleur de fond du bouton */
  color: white;              /* Couleur du texte */
  font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
  letter-spacing: 2px;
  text-decoration: none;      /* Supprime le soulignement */
  border: 2px solid #000000;              /* Supprime la bordure par défaut */
  border-radius: 5px;       /* Arrondit les coins du bouton */
  cursor: pointer;           /* Change le curseur pour indiquer que c'est cliquable */
  font-size: 16px;           /* Taille de la police */
  transition: background-color 0.5s; /* Transition pour l'effet au survol */
  font-weight: bold;
  display: flex;
  display: inline-block;      /* Adapte la taille à son contenu */
  padding: 10px 70px;         /* Rembourrage autour du texte */
  text-align: center;         /* Centre le texte à l'intérieur du bouton */
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.6);
}

.button-container {
  display: flex;              /* Active le modèle flexbox */
  justify-content: center;    /* Centre horizontalement */
  align-items: center;        /* Centre verticalement */
}


.my-button:hover {
  background-color: white; /* Change la couleur au survol */
  color: black;
}

.contact-form {
  max-width: 500px;
  margin: auto;
  margin-top: 100px;
  margin-bottom: 70px;
  text-align: center;
}


.contact-form input,
.contact-form textarea {
  width: 100%;
  padding: 10px;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 16px;
  background-color: rgb(252, 252, 252);
}

.contact-form button {
  background-color: #3d3d3d;
  color: white;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  letter-spacing: 1px;
  border: none;
  padding: 10px 40px;
  font-size: 13px;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.contact-form button:hover {
  background-color: #717171;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.logo-contact{
  display: flex;
  justify-content: center; /* Centre horizontalement */
  align-items: center; /* Centre verticalement */
  text-align: center;
  gap: 70px;
  margin-bottom: 50px;
  margin-top: 100px;
}

.logo-contact img{
  width: 40px;
  height: auto;
  transition: transform 0.3s ease;
}

.logo-contact :hover{
  filter: contrast(50%);
}

.lk{
  border-radius: 50%;
  transition: transform 0.2s ease;
}

.lk img{
  width: 55px;
  height: auto;
}

.lk:hover{
  transform: scale(1.3);
  filter: brightness(100%) contrast(100%) !important;
}

.tooltip {
  display: none; /* Cache le texte par défaut */
  position: absolute;
  top: 50px; /* Place le texte en dessous du logo */
  left: 50%;
  transform: translateX(-50%);
  color: rgb(111, 111, 111);
  font-size: 13px;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  white-space: nowrap; /* Empêche le texte de se casser en plusieurs lignes */
  z-index: 1; /* S'assure que le texte est au-dessus du logo */
}

.logo-wrapper:hover .tooltip {
  display: block; /* Affiche le texte lorsqu'on survole le logo */
}

footer {
  background-color: #333333;
  color: white;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  padding: 20px 0px;
  text-align: center;
  position: relative;
  bottom: 0;
  width: 100%;
}


.footer-container {
  max-width: 1200px;
  margin: 0 auto; 
  display: flex; /* Afficher les éléments en ligne */
  justify-content: center; /* Centrer les éléments horizontalement */
  gap: 80px; /* Espacement entre les éléments */
  flex-wrap: wrap; /* Pour gérer l'adaptation sur les petits écrans */
  margin-top: 30px;
}

.footer-container a{
  color: white;
  text-decoration: none;
}

a :hover{
  color: #f0a500;
}


.footer-info {
  margin-top: -40px;
  font-size: 13px;
  color: #d3d3d3;
  text-align: center;
  width: 100%;
 
}








  
  

