html, body {
	font-family: 'JetBrains Mono', monospace;
	margin: 0;
	padding: 0;
	overflow-x: hidden;
	max-width: 100%;
}

* {
	border: none;
	box-sizing: border-box;
}

img {
	max-width: 100%;
	height: auto;
}

/* Bloc horizontal : image + slogans */

#presentation-container {
	max-width: 900px;
	margin: 40px auto;
	padding: 0 20px;
}

.pattern {
	position: relative; /* pour que ::before et ::after restent relatifs à ce conteneur */
	min-height: 500px;	/* hauteur de ton pattern */
	overflow: visible;	/* permet au pattern de dépasser sans couper le contenu */
}

.pattern > * {
	position: relative;
	z-index: 1;
}

.pattern::before {
	content: "";
	position: absolute;
	left: -10%;	 /* garde ta position initiale */
	top: 0;
	width: 30em;
	height: 100%;
	background-image: 
		url('../medias/FemmeZUMBA_KDD.png'),
		url('../medias/KDD_F2.png'),
		url('../medias/yogahomme.jpg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: 0% 0%, 20% 50%, 20% 100%;
	opacity: 0.1;
	z-index: 0;
	pointer-events: none; /* pour ne pas bloquer les clics sur le contenu */
}

.pattern::after {
	content: "";
	position: absolute;
	right: -10%;
	top: 0;
	width: 30em;
	height: 100%;
	background-image: 
		url('../medias/KLUB_H6.png'),
		url('../medias/HommeZUMBA_KDD.png');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: 40% 15%, 0% 75%;
	opacity: 0.1;
	z-index: 0;
	pointer-events: none;
}

.slogan {
		font-size: 2rem;
		font-weight: bold;
		text-align: center;
}

.sloganTexte
{
		text-align: center;
}

.presentationEquipe-container {
	display: flex;
	align-items: center;
	gap: 20px;
	flex-wrap: nowrap;
	justify-content: flex-start;
	margin-bottom: 30px;
}

.equipe-img {
	width: 50%;
	height: auto;
	display: block;
}

.sousTitres {
		font-size: 2rem;
		margin: 0 auto;
}

.texteEquipe-container {
	flex: 1;
}

/* Bloc description seul en dessous */
.descriptionEquipe-columns {
	display: flex;
	gap: 40px;
	max-width: 900px;
	margin: 0 auto;
	padding: 0 20px;
}

.descriptionEquipe {
	flex: 1;
	font-size: 1rem;
	line-height: 1.6;
}

.descriptionEquipe p {
	margin-bottom: 15px;
	line-height: 1.6;
}


.atelier {
	display: inline-block;
	text-align: center;
	color: black !important;
	background: none;
	font-size: 1.2em;
	font-weight: bold;
	text-decoration: none;
	margin: 20px auto;
	padding: 10px 20px;
	border-radius: 5px;
	cursor: pointer;
	display: block;
}

.atelier:hover {
		color: black !important;		/* reste noir au survol */
		text-decoration: underline;	 /* optionnel : souligné au survol si tu veux */
}

/* Conteneur global de la galerie */
#galerie-container {
	max-width: 1200px;
	margin: 1rem auto;
	padding: 2rem 1rem;
}

/* Grille principale */
.galerie-grid {
	margin-top: 2rem;
	margin-bottom: 2rem;
	display: grid;
	grid-template-columns: 1fr 1fr; /* 2 colonnes égales */
	gap: 1rem;						/* espace horizontal entre les colonnes */
}

/* Colonnes : les images sont empilées */
.colonne {
	display: flex;
	flex-direction: column;
	gap: 1rem; /* espace vertical régulier entre les images */
}

/* Les images s’adaptent à la largeur de leur colonne */
.local-img {
	width: 100%;
	height: auto;
	object-fit: cover;
	box-shadow: 0 2px 6px rgba(0,0,0,0.15);
}

/* Responsive : 1 seule colonne sur mobile */
@media (max-width: 768px) {
	.locaux-grid {
		grid-template-columns: 1fr;
		grid-template-rows: auto;
	}
	.local-img {
		height: auto;
	}
}

/* Responsive pour petits écrans */
@media (max-width: 768px) {

	.presentationEquipe-container {
		flex-direction: column-reverse;
		align-items: center;
		gap: 20px;
		padding: 0; /* S'assure qu'il n'y a pas de padding en responsive */
		margin: 0; /* S'assure qu'il n'y a pas de marge en responsive */
	}

	.equipe-img {
		width: 100%;
		height: auto;
		margin: 0;
		padding: 0;
	}

.sousTitres {
	color: rgb(0, 0, 0);
	margin: 20px 20px 10px 20px;
}

	.texteEquipe-container {
		width: 100%;
		text-align: center;
		padding: 0 0;
	}
	
	#presentation-container {
		max-width: 900px;
		margin: 40px auto -5% auto;
		padding: 0;
	}

	.pattern {
		display: h;
	}

	.pattern::before,
	.pattern::after {
		display: none;
	}
}

/* --- Responsive galerie --- */
@media (max-width: 768px) {
  .galerie-grid {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1em; /* espace entre les blocs */
  }

  .colonne {
    width: 100%;
  }

  .local-img {
    width: 100%;
    height: auto;
    margin-bottom: 1em;
  }
}