.container-projets {
  margin: auto;
  max-width: 1400px;
  display: grid;
  grid-template-columns: 2fr 1fr;
  width: 100%;
  gap: 20px;
}

.projects-nav {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 4px;
  align-items: center;
}
.projects-nav-responsive {
  display: none;
  flex-direction: row;
  justify-content: space-between;
  gap: 4px;
  align-items: center;
  margin-top: 100px;
}

.projects-nav-responsive-sm-size {
  display: none;
  flex-direction: column;
  align-items: center;
  margin-top: 100px;
}

.projects-nav-responsive-sm-size-arrows {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
  margin-top: 8px;
}

.projects-back,
.projects-next {
  font-size: 18px;
  line-height: normal;
  text-transform: uppercase;
  display: flex;
  padding: 8px 24px 8px 24px;
  justify-content: center;
  align-items: center;
  border-radius: 4px;
  background: #e7e7e7;
  transition: ease 200ms;
}
.projects-back:hover,
.projects-next:hover {
  background: #dad8d8;
  transition: ease 200ms;
}

.projects-nav p {
  color: #717171;
  font-family: "Google Sans Code";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.project-name-top {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: end;
}

.project-name-top p {
  margin-bottom: 4px;
}

.project-name-bot p {
  color: #fff;
}

.project-name-bot {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  padding: 8px 0px 8px 0px;
  width: fit-content;
  text-decoration: none;
  transition: ease 300ms;
  color: #fff;
}

.project-name-bot:hover {
  text-decoration: underline;
  transition: ease 300ms;
}

.db-link-sahadevia {
  display: flex;
  flex-direction: column;
}
.project-name-bot img {
  margin-top: 2px;
}

.project-explain p {
  opacity: 0.7;
  max-width: 430px;
}

.project-wrapper-r {
  margin-top: 125px;
  position: relative;
  display: block;
}

.project-wrapper-l {
  margin-top: 20%;
  margin-bottom: 55%;
}

.etape {
  width: 100%;
  padding-top: 60px;
}

.projects-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: auto; /* chaque ligne prend la hauteur de son contenu */
  align-items: start; /* évite l'étirement des éléments */
  width: 100%;
  gap: 20px;
}

html.no-100vh,
body.no-100vh {
  height: auto;
  overflow: auto;
}

/* Masquer la scrollbar sur WebKit (Chrome, Safari, Edge Chromium) */
html.no-100vh::-webkit-scrollbar,
body.no-100vh::-webkit-scrollbar {
  width: 0px;
  height: 0px;
}

/* Masquer la scrollbar sur Firefox */
html.no-100vh,
body.no-100vh {
  scrollbar-width: none;
}

.project-fixed {
  display: flex;
  flex-direction: column;
  gap: 15px;
  position: fixed;
  padding-right: 32px;
  box-sizing: border-box;
}

.nav-fixed {
  position: fixed;
  width: 100%;
  left: 0;
  padding: 0 32px;
  box-sizing: border-box;
  z-index: 10;
}

.etape-head {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}

.etape-head-title {
  display: flex;
  flex-direction: row;
  font-family: "Google Sans Code";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  color: black;
  gap: 8px;
}

.etape-number {
  color: #717171;
}

.etape-underline {
  height: 1px;
  max-width: 445px;
  background-color: #717171;
  margin-top: 14px;
}

.project-text-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
  opacity: 0;
  transform: translateY(10px);
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
  position: absolute;
}

.project-text-content.active {
  opacity: 1;
  transform: translateY(0);
  position: relative;
}

.project-explain {
  position: relative;
}

.project-name,
.project-explain {
  display: flex;
  padding: 14px 15px 17px 15px;
  flex-direction: column;
  border-radius: 4px;
  background: #2e2a72;
  color: #fff;
  gap: 16px;
}

.grid-composant {
  height: auto;
  object-fit: contain;
  border-radius: 4px;
  overflow: hidden;
}

.project-progress {
  height: 1px;
  width: 100%;
  opacity: 0.7;
  margin-top: 8px;
  margin-bottom: 20px;
  background-color: #a7a5a5;
  transform-origin: left;
  transform: scaleX(0);
  transition: transform 0.3s ease-out;
  position: relative;
}

.project-progress::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  transform-origin: left;
}

video {
  width: 100%;
}

.grid-composant img {
  width: 100%;
}

.project-text-mobile {
  display: none;
  max-width: 35em;
  margin-top: 12px;
  margin-bottom: 30px;
  opacity: 65%;
}

/* Meepl */

.meepl {
  background-color: #5b43f6;
}

/* Meepl */

.spire {
  background-color: #566345;
}

/* Carambol */

.carambol {
  background-color: #202020;
}

/* Sahadevia */

.sahadevia {
  background-color: #17174f;
}

/* Archives */

/* Responsive */

@media (max-width: 1255px) {
  .project-wrapper-r {
    display: none;
  }
  .project-text-mobile {
    display: block;
  }
  .projects-nav-responsive {
    display: flex;
  }
}
@media (max-width: 768px) {
  .container-projets {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 425px) {
  .projects-grid {
    display: flex;
    flex-direction: column;
  }
}
@media (max-width: 375px) {
  .projects-nav-responsive-sm-size {
    display: flex;
  }
  .projects-nav-responsive {
    display: none;
  }
}

