 * {
      box-sizing: border-box;
    }

   body {
      margin: 0;
      padding: 0;
      font-family: 'Inter', sans-serif;
    }

		 
    .project-wrapper {
      display: flex;
      gap: 2rem;
  padding: 2rem var(--side-margin) 0rem var(--side-margin); /* haut, droite, bas, gauche */		 }

    .project-sidebar {
      position: sticky;
      top: 4rem;
      flex: 0 0 45%;
      max-width: 45%;
      height: fit-content;
    }

    .sidebar-card {
      background: white;
      padding: 2rem;
      border-radius: 20px;
      box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    }
		 
		 .sidebar-card p {
           font-size: 1.3rem;
    }

    .project-content {
      flex: 1;
    }

    .project-content p {
      font-size: 1.3rem;
      line-height: 1.4;
      margin-bottom: 1.5rem;
    }

    .project-content img {
      width: 100%;
      margin-bottom: 2rem;
      border-radius: 6px;
    }

    .carousel {
     position: relative;
  overflow: hidden; /* empêcher les flèches de sortir */
  display: flex;
  align-items: center;
  margin-top: 0rem;
    }

    .carousel-track {
     display: flex;
  gap: 1rem;
  overflow-x: auto;     /* ⬅️ nécessaire pour scroll */
  scroll-behavior: smooth;
  scrollbar-width: none; /* (optionnel) cache la scrollbar sur Firefox */
  -ms-overflow-style: none; /* IE 10+ */
}
.carousel-track::-webkit-scrollbar {
  display: none; /* Chrome */
	
    }

.carousel-small .work {
  width: 400px;
}
    .work {
  flex: 0 0 auto;
		width: 400px;
		  margin: 0;          /* ⬅️ Supprime les marges éventuelles */
  padding: 0;         /* ⬅️ Supprime les espacements internes */
    }


    .work img {
      width: 100%;
      border-radius: 6px;
		  margin: 0; /* ⬅️ empêche toute marge autour de l’image */
    }

    .work h3, .work p {
      margin: 0.3rem 0;
      text-align: left;
    }
		 
		.arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
  z-index: 10;
  color: var(--accent);
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.arrow svg {
  width: 3rem;
  height: 3rem;
  stroke: var(--accent);
}

.arrow:hover {
  transform: translateY(-50%) scale(1.2);
  opacity: 0.6;
}

.arrow.left {
  left: 0.5rem;
}

.arrow.right {
  right: 0.5rem;
}

.carousel {
  position: relative;
}

.carousel-title {
  margin-bottom: 1rem; /* ajuste la valeur selon l'espace souhaité */
}

.carousel-title img {
  max-width: 300px; /* adapte selon ton image */
  height: auto;
  display: block;
}


    @media (max-width: 768px) {
      .project-wrapper {
        flex-direction: column;
        padding: 2rem 1rem;
      }

      .project-sidebar {
        position: relative;
        top: auto;
        max-width: 100%;
        width: 100%;
      }

      .project-content {
        width: 100%;
      }
    }
.sidebar-card img {
  max-width: 100%;
  height: auto;
  display: block;
}

.three-columns-text {
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  padding: 0 1rem;
  flex-wrap: wrap;
}

.three-columns-text .column:nth-child(1) {
  flex: 1.2;
}

.three-columns-text .column:nth-child(2) {
  flex: 0.9;
  margin-left: 2rem; /* ajuste ou supprime si nécessaire */
}

.three-columns-text .column:nth-child(3) {
  flex: 1.5;
}

.three-columns-text p {
  font-size: 1.3rem;
  line-height: 1.3;
}

@media (max-width: 768px) {
  .three-columns-text {
    flex-direction: column;
  }

  .three-columns-text .column {
    flex: 1 0 100%;
  }
}



/* Force l’image à occuper 100% de la colonne */
.full-sidebar-image {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0;
}

@media (max-width: 768px) {
  .carousel-small .work,
  .carousel-large .work,
	
  .work {
    flex: 0 0 100%; /* 1 image par ligne */
    max-width: 100%;
  }
}
.works-columns {
  display: flex;
  gap: 20px; /* espace entre les colonnes */
}

.works-column {
  flex: 1;
  padding: 10px;
  box-sizing: border-box;
	  font-size: 1.2rem; /* ou 16px, ou une autre valeur */
  line-height: 1.4; /* optionnel, pour une meilleure lisibilité */
}

@media (max-width: 768px) {
  .works-columns {
    flex-direction: column;
	      padding: 0 1rem; /* marge intérieure gauche/droite */
    gap: 2rem;
  }

  .works-column {
    flex: 1 0 100%;
    padding: 0;
  }
}

@media (max-width: 768px) {
  .carousel-track {
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
    gap: 0 !important; /* ← essentiel */
  }

  .carousel-track > .work {
    scroll-snap-align: center;
    scroll-snap-stop: always;
    flex: 0 0 100%;
    max-width: 100%;
    min-width: 100%;
  }
}

