body {
    margin: 0;
    font-family: 'Space Grotesk';
    overflow: hidden;
  }
  
  header {
    position: fixed;
    width: 100%;
    top: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 10;
    color: rgb(0, 0, 0);
    font-size: 2rem;
  }
  
  #site-name{
padding: 5px;
background: rgb(255, 255, 255);
-webkit-box-shadow: 2px 2px 5px 0px rgba(0,0,0,0.4); 
box-shadow: 2px 2px 5px 0px rgba(0,0,0,0.4);
width: 100%;

  }

  #nom{
    color: black;
    text-decoration:none;

  }

    #nom:hover{
    color: rgb(0, 4, 255);
    text-decoration:none;
  }

  #toggle-desc {
    cursor: pointer;
    user-select: none;
    padding: 5px;
background: rgb(255, 255, 255);
-webkit-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.4); 
box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.4);


  }
  
  #toggle-desc:hover {

  color: rgb(0, 4, 255);

  }

  #description {
    display: none;
    position: fixed;
    top: 0px;
    width: 100%;
    height: 100%;
    padding: 0.5rem;
    background-color: white;
    z-index: 9;
    -webkit-box-shadow: 2px 2px 5px 0px rgba(0,0,0,0.4); 
box-shadow: 2px 2px 5px 0px rgba(0,0,0,0.4);
  }
  
  #text1{

  }

p{
    margin-top: 0;

}

#first{
    text-indent: 0;
}

#top-links {
    display: flex;
    justify-content: space-between;
    gap: 2rem; /* espace entre les deux liens */
    position: relative;
    bottom: 0;
  }
  
  #top-links a {
    text-decoration: none;
    color: black;
    transition: color 0.3s ease;
        background-color:rgb(230, 230, 230) ;
  }
  
  #top-links a:hover {
    color: #0400ff; /* couleur au survol (modifiable à ton goût) */
  }
  
#mail, #cv{
    background-color: white;
    padding: 5px;
}

  main#carousel {
    height: 100vh;
    overflow-y: scroll;
    scroll-snap-type: y mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none; /* Firefox */
  }
  
  main#carousel::-webkit-scrollbar {
    display: none; /* Chrome, Safari */
  }
  
  .carousel-images {
    display: none;
    flex-direction: column;
    height: 100%;
  }
  
  .carousel-images img {
    width: 100vw;
    height: 100vh;
    object-fit: cover;
    scroll-snap-align: start;
    flex-shrink: 0;
    display: block;
  }
  /* mouvement suggere */
  #scroll-hint {
    position: fixed;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 2rem;
    color: rgb(255, 255, 255);
    mix-blend-mode: difference;
    animation: hintBounce 1.5s infinite;
    z-index: 10;
    pointer-events: none;
    opacity: 1;
    transition: opacity 0.3s ease;
    padding: 10px;
  }
  
  @keyframes hintBounce {
    0%, 100% {
      transform: translateX(-50%) translateY(0);
    }
    50% {
      transform: translateX(-50%) translateY(20px);
    }
  }
  
  #scroll-hint.hidden {
    opacity: 0;
  }
  
  
  
 /* fleche revenir au debut */
  #scroll-top-btn {
    position: fixed;
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
    padding: 10px;
    font-size: 2rem;
    font-family: 'Archivo';
    background-color: rgb(255, 255, 255);
    color: rgb(0, 0, 0);
    border: none;
    cursor: pointer;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    z-index: 20;
    -webkit-box-shadow: 0px -2px 5px 2px rgba(0,0,0,0.4); 
    box-shadow: 0px -2px 5px 2px rgba(0,0,0,0.4);
  }
  
  #scroll-top-btn.show {
    opacity: 1;
    pointer-events: auto;
  }

  /* Affichage Desktop */
  @media (min-width: 768px) {
    #site-name {
      text-align: left;
    }

    #description{
        width: 570px;
    }

    #toggle-desc {
      }
  
      #text1{
        width: 570px;
        font-size: 1.2rem;
      }
    .carousel-images.desktop {
      display: flex;
    }

    #scroll-hint {
        font-size: 4rem;
    }
  }
  
  /* Affichage Mobile */
  @media (max-width: 767px) {
    header {
      justify-content: left;
      font-size: 1.7rem;
    }
  
    #toggle-desc {
      position: absolute;
      right: 0;
    }
    #text1{
        width: 85%;
        height: 100%;
        font-size: 0.9rem;
        overflow:scroll;
      }
    #site-name {
      text-align: left;
    }
  
    .carousel-images.mobile {
      display: flex;
    }
  }
  