/* Réinitialisation des styles par défaut du navigateur */
* {
	margin: 0 0;
	padding: 0;
	box-sizing: border-box;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "Roboto Condensed", "Arial Narrow", Arial, Helvetica, sans-serif;
	letter-spacing: 1px;
	font-weight: 800;
}

/* Style de base pour le corps de la page */
body {
	/* font-family: Arial, sans-serif; */
	background-color: white;
	margin: 0;
	padding: 0;
}

/* Conteneur principal utilisant Flexbox */
.container {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 20px;
	background-color: white;
	/* Remplacez par la couleur de fond que vous souhaitez */
	color: #333;
	/* Couleur du texte */
}

/* Styles pour le logo */
.logo {
	width: 35%;
	height: auto;
	/* text-align: center; */
	margin: 0 auto;
	/* Centre le logo horizontalement */
}

/* Styles pour le logo */
.logo img {
	height: 200px;
}



/* Styles pour le texte MENU à droite du hamburger */
.menu-text {
	font-size: 28px;
	font-weight: bold;
	margin-left: 10px;
	/* Espacement à gauche du texte MENU */
}


#menu_cache {
	display: none;
}


.ligne_centree {
	width: 80%;
	margin: 0 auto;
}

/* Styles pour la navbar */
.navbar {
	text-align: center;
	background-color: white;
	/* Couleur de fond de la navbar */
	padding: 10px 0;
	/* Espacement intérieur en haut et en bas */
}

.navbar a {
	text-decoration: none;
	color: #6b7b8c;
	/* Couleur du texte */
	font-size: 20px;
	margin: 0 50px;
	/* Espacement horizontal entre les éléments */
}

/* Style au survol des liens */
.navbar a:hover {
	text-decoration: underline;
	/* Souligner le texte au survol */
}



/* Fil d'Ariane (breadcrumbs) */
.breadcrumb {
	font-size: 20px;
	width: 80%;
	margin: 30px auto;
}

.breadcrumb a {
	text-decoration: none;
	color: #6b7b8c;
}

.breadcrumb p {
	text-decoration: none;
	color: #6b7b8c;
}

.breadcrumb a:hover {
	text-decoration: underline;
}

.breadcrumb a::after {
	content: ">";
	margin: 0 5px;
	color: #6b7b8c;
}

.breadcrumb a:last-child::after {
	content: none;
	/* Ne pas afficher le symbole ">" après le dernier lien */
}


/* Styles pour l'arborescence */
.dropdown {
	position: relative;
	display: inline-block;
}

.dropdown-menu {
	display: none;
	position: absolute;
	background-color: #fff;
	/* Couleur de fond de la liste déroulante */
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
	/* Ombre */
	white-space: nowrap;
	/* Éviter les sauts de ligne */
	flex-direction: column;
	/* Afficher les éléments en colonne */
}

.dropdown-menu a {
	font-size: 18px;
	white-space: nowrap;
	display: block;
	width: 100%;
	text-align: left;
	padding: 8px 10px;
	/* Ajouter un peu de marge à gauche pour un aspect décalé */
	/* margin-bottom: 50px; */
	/* Ajouter de l'espace en bas des sous-pages */
}

/* Ajouter de l'espace au-dessus de la première sous-page */
.dropdown-menu a:first-child {
	margin-top: 17px;
}

/* Ajouter de l'espace en-dessous de la dernière sous-page */
.dropdown-menu a:last-child {
	margin-bottom: 17px;
}

.dropdown:hover .dropdown-menu {
	display: flex;
	/* Utiliser flexbox pour afficher les éléments en colonne */
}



.container_page {
	display: flex;
	flex-direction: column;
	align-items: center;
}


  


.texte_explicatif {
	background-color: #737373; /* Ajoutez la couleur de fond selon vos besoins */
	border-radius: 10px; /* Ajoutez les bords arrondis selon vos besoins */
	border: 2px solid #6e6e5c; /* Couleur de la bordure (plus foncée) */
	color: #fffff0; /* Ajoutez la couleur de texte selon vos besoins */
	width: 90%;
	margin: 15px;
	padding: 10px;
	/* Espace intérieur */
	color: #fffff0;
	/* Blanc ivoire pour la couleur du texte */
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2); /* Ombre légère */
}




.texte_explicatif h1 {
	text-align: center;
	font-size: 30px;
	margin: 30px 15px;
	line-height: 1.5;
	/* Add spacing between elements */
}





.texte_explicatif h2 {
	text-align: justify;
	text-decoration: underline;
	font-size: 20px;
	margin: 10px 7%;
	margin-bottom: 20px;
	font-family: "Libre Franklin", Arial, Helvetica, sans-serif;
	line-height: 1.5;
	display: block;
	/* Add spacing between elements */
}



.texte_explicatif p {
	text-align: justify;
	font-size: 16px;
	margin: 0 30px;
	/* margin-bottom: 20px; */
	font-family: "Libre Franklin", Arial, Helvetica, sans-serif;
	line-height: 1.9;
	display: block;
	/* Add spacing between elements */
}


.texte_explicatif a {
	color: #a4d0e4;
}


.texte_explicatif a:hover {
	color: #26292c;
}



/* Styles for the flex container */
.flex-container {
	width:90%;
	border-radius: 10px; /* Ajoutez les bords arrondis selon vos besoins */
	border: 2px solid #6e6e5c; /* Couleur de la bordure (plus foncée) */
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2); /* Ombre légère */
	color: #fffff0; /* Ajoutez la couleur de texte selon vos besoins */
	display: flex;
	align-items: top;
	margin: 20px 0;
	/* Center vertically within the container */
}




/* Styles for the left and right parts */
.left {
	flex: 45%;
	padding: 20px;
	background-color: #dadbd2;
	/* Add padding for spacing */
}

.right {
	flex: 55%;
	padding: 20px 55px;
	background-color: #737373; /* Ajoutez la couleur de fond selon vos besoins */
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	text-align: justify;
}





.right h1 {
	/* si on ne met pas cette option  de width ce n'est pas centré..... */
	width: 100%;
	text-align: center;
	font-size: 30px;
	margin: 10px 0;
	line-height: 1.5;
	/* Add spacing between elements */
}


.right p {
	/* text-align: center; */
	font-size: 16px;
	margin: 10px 0;
	font-family: "Libre Franklin", Arial, Helvetica, sans-serif;
	line-height: 1.9;
	display: block;
	/* Add spacing between elements */
}


.right a {
	color: #a4d0e4;
}


.right a:hover {
	color: #26292c;
}

/* Additional styling for the image */
.left img {
	max-width: 100%;
	/* Ensure the image doesn't exceed its container's width */
	height: auto;
	/* Maintain the image's aspect ratio */
}




.titre_page {
	margin: 50px 5%;
}

.titre_page h1 {
	color: #6e7985;
	text-align: center;
	font-size: 30px;
	margin: 0px 0px;
	line-height: 1.5; 

	
}

.titre_page h1:after {
	content: ' ';
	display: block;
	border: 2px solid #6b7b8c;
	/* border-width: 4px; */
	border-style: solid;
	border-radius: 10px;
	box-shadow: inset 0 2px 2px rgb(11, 11, 11);
	margin-top: 10px;
	margin-left: 30%;
	margin-bottom: 70px;
	;
	width: 40%;


}




/* Radio Button */
.cadre-radio {
	border: 2px solid #3498db;
	/* Couleur de la bordure */
	/* border-image: linear-gradient(90deg, rgb(0, 174, 211) 0%, rgb(93, 195, 255) 25.808322%, rgb(18, 159, 255) 53.658527%, rgb(63, 166, 255) 71.47442099999999%, rgb(0, 193, 242) 100%); */
	/* Gradient pour la bordure */
	/* border-image-slice: 1; */
	/* Couvrir toute la bordure */
	padding: 10px;
	display: inline-block;
	border-radius: 20px;
	/* Pour arrondir les coins de la bordure */


}

.legende-radio {
	font-weight: bold;
	color: blue;
	margin: 0 auto;
	/* Utilisation de marges pour centrer la légende */
	display: table;
	/* Pour que les marges fonctionnent */
}

label {
	margin-right: 50px;
	/* Espacement horizontal entre les choix */
}



.mybutton {
	margin-bottom: 10px;
	border: 0;
	line-height: 2.5;
	padding: 0 20px;
	font-size: 1rem;
	text-align: center;
	color: #fffff0;
	text-shadow: 1px 1px 1px #000;
	border-radius: 10px;

	/* background-image: linear-gradient(90deg, rgb(0, 102, 255) 0%, rgb(19, 111, 255) 19.014986%, rgb(0, 93, 234) 41.176462%, rgb(19, 115, 255) 64.705873%, rgb(0, 85, 212) 88.235277%, rgb(0, 102, 255) 100%); */
	background-color: #2b2424;
	box-shadow:
		inset 2px 2px 3px rgba(255, 255, 255, 0.6),
		inset -2px -2px 3px rgba(0, 0, 0, 0.6);
}

.mybutton:hover {
	background-color: #656d75;
}

.mybutton:active {
	box-shadow:
		inset -2px -2px 3px rgba(255, 255, 255, 0.6),
		inset 2px 2px 3px rgba(0, 0, 0, 0.6);
}


/* styles pour masquer/afficher dans du SVG  */
.elementCache {
	opacity: 0;
}


/* Affichage des "idées" */
.idee-container {
	color: black;
	border-radius: 15px;
	border: 2px solid #808080;
	margin-top: 10px;
	padding: 20px;
	position: relative;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
	/* Ombre avec opacité */
	background-image: linear-gradient(90deg, rgb(237, 237, 10) 0%, rgb(252, 252, 148) 20.955981%, rgb(244, 244, 94) 52.374553999999996%, rgb(244, 244, 18) 80.50661099999999%, rgb(243, 243, 142) 100%);
}



.idee-container a {
	color: #1c7895;
}



/* Style identique au <p> où se situe la liste chainée */
.liste-explicatif {
	list-style-type: '- ';
	text-align: justify;
	font-size: 16px;
	margin-left: 30px;
	margin-top: 10px;
	margin-bottom: 10px;
	font-family: "Libre Franklin", Arial, Helvetica, sans-serif;
	line-height: 1.9;
}

.liste-explicatif li {
	margin-left: 40px;
}

/* Style identique au <p> où se situe la liste chainée */
.liste-right {
	list-style-type: '- ';
	font-size: 16px;
	margin: 10px 0;
	font-family: "Libre Franklin", Arial, Helvetica, sans-serif;
	line-height: 1.9;
}


.liste-right li {
	margin-left: 60px;
}



/* styles pour la page Our Team */


.team-container {
    display: flex;
    justify-content: space-around;
    margin: 30px 0;
}

.team-member {
    display: flex;
    flex-direction: column;
    max-width: 400px;
    margin: 0 50px;
}


.team-member-image-container {
    overflow: hidden; /* Ajout de la propriété pour masquer les parties rognées */
	position: relative;
}


.team-member-image {
    width: 100%;
    max-width: 400px;
    transition: transform 0.3s; 
}

.team-member:hover .team-member-image-container::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 10px solid #3498db;
    box-sizing: border-box;
    pointer-events: none;
    transition: opacity 0.3s; /* Ajout d'une transition pour un effet en douceur */
    opacity: 1;
}

.team-member:hover .team-member-image {
    transform: scale(1.1); /* Zoom de 10% lors du survol */
}


.member-info {
    padding: 10px;
	text-align: justify;
}

.team-member-name {
    margin-top: 10px;
	text-transform: uppercase;
}

.team-member-role {
	margin: 5px 0;
	font-weight: bold;
}

.team-member-description {
    margin-bottom: 10px;
	font-size: 16px;
}