html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  background-color: white;
  overflow: hidden;
  font-family: Helvetica, Arial, sans-serif;
}

/* Grille générale */
.container {
  display: grid;
  grid-template-columns: 0.8fr auto 0.5fr; /* réduit les marges extrêmes */
  width: 100vw;
  height: 100vh;
  gap: 40px; /* espace équilibré entre les colonnes */
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 30px 60px; /* ✅ évite que le contenu colle aux bords */
}

/* Texte en bas à gauche */
.texte {
  color: blue;
  text-align: left;
  font-size: 1rem;
  line-height: 1.4;
  align-self: end;
  justify-self: start;
  max-width: 350px;
  padding-bottom: 40px;
}

/* Image principale centrée */
.image-centre {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

.image-centre img {
  width: 90vw; /* ✅ plus grande que la colonne centrale */
  max-width: 1000px;
  height: auto;
  max-height: 90vh;
  object-fit: contain;
}

/* Petites images : base */
.images-droite img {
  width: 100px;
  height: auto;
  cursor: pointer;
  transition: transform 0.3s ease, opacity 0.3s ease;
  position: relative;
  z-index: 1;
}

/* ✅ Effet au survol sans casser la mise en page */
.images-droite img:hover {
  transform: scale(1.1);
  z-index: 10;
  opacity: 0.9;
}

/* ✅ Effet plein écran propre */
.images-droite img:active {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1);
  width: auto;
  height: 90vh;
  object-fit: contain;
  z-index: 999;
  background: white;
  box-shadow: 0 0 20px rgba(0,0,0,0.2);
}

/* Bouton "projets" */
.bouton-projets {
  position: fixed;
  bottom: 20px;
  right: 20px;
  color: blue;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 16px;
  text-decoration: none;
  background: none;
  border: none;
  padding: 8px 12px;
  cursor: pointer;
  transition: color 0.2s ease, transform 0.2s ease;
  z-index: 2000;
}

.bouton-projets:hover {
  color: #0056b3;
  transform: translateY(-2px);
}

/* Bouton "EN" */
#langBtn {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 2000;
  background: white;
  border: 1px solid blue;
  color: blue;
  padding: 8px 16px;
  border-radius: 8px;
  cursor: pointer;
  font-weight: bold;
}

#langBtn:hover {
  background: blue;
  color: white;
}

