


html, body {
	height: 100%;
}

body {
	margin: 0px;
	padding: 0px;
	font-family: 'Raleway', sans-serif;
	font-size: 11pt;
	font-weight: 400;
	color: #363636;
}


h1, h2, h3 {
	margin: 0;
	padding: 0;
	font-family: "avenir-95";
}

p, ol, ul {
	margin-top: 0px;
}

p {
	line-height: 190%;
	font-family: "avenir-35";
}

strong {
}

a {
	color: #171717;
}

a:hover {
	text-decoration: none;
}

a img {
	border: none;
}

	.image
	{
		display: inline-block;
	}
	
		.image img
		{
			display: block;
			width: 100%;
		}

	.image-full
	{
		display: block;
		width: 100%;
		margin: 0 0 2em 0;
	}
	
	.image-left
	{
		float: left;
		margin: 0 2em 2em 0;
	}
	
	.image-centered
	{
		display: block;
		margin: 0 0 2em 0;
	}

		.image-centered img
		{
			margin: 0 auto;
			width: auto;
		}

hr {
	display: none;
}


/*********************************************************************************/
/* List Styles                                                                   */
/*********************************************************************************/

	ul.style1
	{
		margin: 0;
		padding: 0;
		list-style: none;
	}
	
	ul.style1 li
	{
		border-top: solid 0px #E5E5E5;
		padding: 0.80em 0;
	}
	
	ul.style1 li:first-child
	{
		border-top: 0;
		padding-top: 0;
	}

	ul.style2
	{
		margin: 0;
		padding: 0;
		list-style: none;
	}
	
	ul.style2 li
	{
		border-top: solid 1px #E5E5E5;
		padding: 0.80em 0;
	}
	
	ul.style2 li:first-child
	{
		border-top: 0;
		padding-top: 0;
	}

/*********************************************************************************/
/* Social Icon Styles                                                            */
/*********************************************************************************/

	ul.contact
	{
		margin: 0;
		padding: 1.5em 0em 2.5em 0em;
		list-style: none;
	}
	
	ul.contact li
	{
		display: inline-block;
		padding: 0em 0.30em;
		font-size: 1em;
	}
	
	ul.contact li span
	{
		display: none;
		margin: 0;
		padding: 0;
	}
	
	ul.contact li a
	{
		color: #FFF;
	}
	
	ul.contact li a:before
	{
		display: inline-block;
		background: #3f3f3f;
		width: 40px;
		height: 40px;
		line-height: 40px;
		text-align: center;
		color: #FFFFFF;
	}
	
	ul.contact li a.icon-twitter:before { background: #2DAAE4; }
	ul.contact li a.icon-facebook:before { background: #39599F; }
	ul.contact li a.icon-dribbble:before { background: #C4376B;	}
	ul.contact li a.icon-tumblr:before { background: #31516A; }
	ul.contact li a.icon-rss:before { background: #F2600B; }


/*********************************************************************************/
/* Heading Titles                                                                */
/*********************************************************************************/


	.title
	{
		margin-bottom: 2em;
		text-transform: uppercase;
	}

.title h1
	{
		font-weight: 400;
		font-size: 3em;
		color: black;
		font-weight: bold;
		text-align: center;
		
	}

	.title h2
	{
		font-weight: 400;
		font-size: 2em;
		color: #fa7a4b;
		font-weight: bold;
		text-align: center;
		
	}

.title h4
	{
		font-weight: 400;
		font-size: 2em;
		color: #fa7a4b;
		font-weight: bold;
		text-align: center;
		
	}
	
	.title .byline
	{
		letter-spacing: 0.15em;
		text-transform: uppercase;
		font-weight: 400;
		font-size: 0.90em;
		color: #6F6F6F;
	}

/** WRAPPER */

#wrapper 
{
	background: #FFFFFF url(images/bg01.png) repeat;
}

#footer-wrapper
{
	background: #0F0F0F;
}

.container {
	width: 70%;
	margin: 0px auto;
}

.clearfix {
	clear: both;
}


/*********************************************************************************/
/* Wrappers                                                                      */
/*********************************************************************************/

#header-wrapper
{
    overflow: hidden;
    background: url(images/bg01.png) repeat;
    background-size: 100%;
    background-color: rgba(190,233,223,1.00);
	display: flex;
  justify-content: center; /* centre horizontalement */
  align-items: center;     /* aligne verticalement */
  gap: 0em;                /* espace entre logo et texte */
  flex-wrap: wrap;         /* pour que ça s’adapte en mobile */
	padding: 0px 0px;
	
}



.logo {
  max-width: 1200px;
  height: auto;
}



.slogan {
  font-family: 'Gretaros', sans-serif;
  font-size: 5em;
  margin-top: 0.5em;
  color: 2c2e35;
  line-height: 1.4em;
	 text-align: left;
}

.slogan .vert {
  color: #62af89; /* vert */
}

.slogan .orange {
  color: #ff4d0d; /* orange */
}

#sitetemporaire {
    overflow: hidden;
    background-color: #fa7a4b;
    display: flex;
    justify-content: center; /* centre horizontalement */
    align-items: center;     /* aligne verticalement */
    gap: 1em;                /* espace entre logo et texte */
    flex-wrap: wrap;         /* pour que a sadapte en mobile */
    line-height: 3em;        /* ajuster pour la version desktop */
    color: black;
    font-family: "avenir-35";
	font-weight: bold;
}

/* Responsive pour mobile */
@media screen and (max-width: 768px) {
    #sitetemporaire {
        line-height: 2em;  /* Rduit la hauteur de ligne sur mobile */
        padding: 10px;      /* Ajoute un peu d'espace autour du texte */
    }
}

.image-fond {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  height: auto; /* ← c’est ça qui empêche la déformation */
  margin-top: 0em; 
}
/*********************************************************************************/
/* Header                                                                        */
/*********************************************************************************/

	#header 
	{
		position: relative;
		overflow: hidden;
		text-align: center;
	}

/*********************************************************************************/
/* Logo                                                                          */
/*********************************************************************************/

	#logo 
	{
		width: 500px;
		height: 100px;
		margin: 0 auto;
		padding: 0em 0em;
		text-transform: uppercase;
	}
	
	#logo h1
	{
		letter-spacing: 0.10em;
		font-size: 3em;
	}
	
	#logo p 
	{
		letter-spacing: 0.10em;
		color: #FFF;
	}
	
	#logo a 
	{
    text-decoration: none;
    color: #FFF;
    -webkit-box-shadow: 0px 0px rgba(0,0,0,1.00);
    box-shadow: 0px 0px rgba(0,0,0,1.00);
    /* [disabled]background-image: -webkit-linear-gradient(270deg,rgba(0,0,0,1.00) 0%,rgba(100,100,100,1.00) 100%); */
    /* [disabled]background-image: -moz-linear-gradient(270deg,rgba(0,0,0,1.00) 0%,rgba(100,100,100,1.00) 100%); */
    /* [disabled]background-image: -o-linear-gradient(270deg,rgba(0,0,0,1.00) 0%,rgba(100,100,100,1.00) 100%); */
    /* [disabled]background-image: linear-gradient(180deg,rgba(0,0,0,1.00) 0%,rgba(100,100,100,1.00) 100%); */
	}

/*********************************************************************************/
/* Banner                                                                        */
/*********************************************************************************/

	#banner 
	{
    overflow: hidden;
    height: 820px;
    background: url(images/pic01.jpg) no-repeat center;
    background-size: cover;
    max-width: 100%; /* ou la largeur de ton image */
    margin: 0 auto;    /* centre le bloc horizontalement */
    padding: 0px 20px;   /* optionnel : espace intérieur */
	}
	
	#banner .image
	{
		display: block;
  width: 100%;       /* ou width: auto; si tu veux garder la taille réelle */
  height: auto;
	}
	

/** MENU **/

#menu-wrapper {
	background: #16a085;
	width: 100%;
	max-width: 1200px; /* largeur max du contenu sur grand cran */
	margin: 0 auto;
	padding: 0 0px; /* marges internes, pour crer l'effet de "bandes blanches" */
	box-sizing: border-box;
}

@media screen and (max-width: 768px) {
	#menu-wrapper {
		padding: 0 5px; /* rduit les bandes blanches */
	}
}

#menu {
	overflow: visible;
	min-height: 50px;
	width: 100%;
}

#menu ul {
	display: flex;
	flex-wrap: nowrap; /* ne passe jamais  la ligne */
	justify-content: center;
	margin: 0;
	padding: 0;
	list-style: none;
	overflow-x: auto; /* permet de scroller si lespace est trop petit */
}

#menu li {
	display: block;
	white-space: nowrap; /* empche les textes longs de sauter  la ligne */
}

#menu a {
	position: relative;
	display: block;
	letter-spacing: 1px;
	padding: 10px 25px; /* rduit un peu lespace horizontal */
	text-decoration: none;
	text-align: center;
	text-transform: uppercase;
	font-size: 0.95em; /* lgrement rduit pour tenir sur une ligne */
	font-weight: bold;
	line-height: 1.5em;
	border: none;
	color: #FFF;
	transition: color 0.3s ease;
}

#menu a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0%;
	height: 2px;
	background-color: black;
	transition: width 0.3s ease, background-color 0.3s ease;
}

#menu a:hover {
	color: black;
	font-weight: bold;
}

#menu a:hover::after {
	width: 50%;
	background-color: black;
}

#menu .current_page_item a {
	color: black;
	font-weight: bold;
}

/* Responsive pour mobile */
@media screen and (max-width: 768px) {
	#menu ul {
		flex-direction: column;
		align-items: center;
	}

	#menu a {
		padding: 15px 20px;
		font-size: 1em;
		line-height: normal;
	}
}
/** PAGE **/

/* Conteneur global */
#page {
  position: relative;
  overflow: hidden;
  padding: 3em 0 0 0;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 0;
  align-items: stretch;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

/* Barre verticale centre entre les colonnes  seulement sur la page d'accueil */
#page.accueil::before {
  content: "";
  position: absolute;
  top: 200px;
  bottom: 80px;
  left: 50%;
  transform: translateX(-0.5px);
  width: 1px;
  background-color: #ccc;
  pointer-events: none;
  z-index: 10;
}

/* Blocs gauche et droite */
#content, #sidebar {
  flex: 1;
  position: relative;
  text-align: justify;
}

/* Padding gal pour lintrieur des deux blocs */
#content .inner,
#sidebar .inner {
  padding: 0 40px;
}

/* Bloc gauche contenu */
#content {
  padding: 20px 40px 20px 20px;
  float: none;
  width: auto;
  box-sizing: border-box;
}

#content p,
#content ul, 
#content li {
  font-size: 1.2em;
}

/* Bloc droite contenu */
#sidebar {
  padding: 20px 40px;
  float: none;
  width: auto;
  box-sizing: border-box;
}

#sidebar .title h2 {
  font-weight: bold;
  font-size: 2em;
  color: #fa7a4b;
  text-align: center;
}

#sidebar .box2 p {
  font-size: 1.2em;
}

/* Texte centr "corps" (avis de recherche) */
#corps {
  width: 100%;
  max-width: 800px;
  margin: 4em auto;
  padding: 0 40px;
  text-align: center;
	text-align:justify;
  box-sizing: border-box;
}

#corps h2 {
  color: #fa7a4b;
}

#corps p {
  font-size: 1.2em;
}

/* Barre horizontale centre */
.barrehorizontale {
  height: 1px;
  width: 50%;    /* barre qui fait 50% de la largeur du parent */
  max-width: 400px; /* max largeur pour pas que a soit trop grand */
  background-color: #ccc;
  margin: 3em auto;
}

/* Sections pleine largeur sous #corps */
.fullwidth-section {
  width: 100%;
  margin: 2em 0;
}

/* Responsive : passage en colonne sur petits crans */
@media screen and (max-width: 768px) {
  #page {
    flex-direction: column;
  }

  /* Barre verticale disparait en mobile */
  #page::before {
    display: none;
  }

  #content {
    border-bottom: 1px solid #ccc;
    padding: 20px;
  }

  #sidebar {
    border-left: none;
    padding: 20px;
  }

  /* Garde un peu despace dans le corps en mobile */
  #corps {
    padding: 0 20px;
  }

  .barrehorizontale {
    width: 80%; /* plus large en mobile */
  }
}
/*********************************************************************************/
/* Copyright                                                                     */
/*********************************************************************************/

	#copyright
	{
		overflow: hidden;
		padding: 2em 0em;
		text-align: center;
		text-color: black;
		background: #fa7a4b;
		max-width: 100%;
	}
	
	#copyright p
	{
		letter-spacing: 0.20em;
		text-align: center;
		text-transform: uppercase;
		font-size: 0.80em;
		color: black;
		max-width: 100%;
	}
	
	#copyright a
	{
		text-decoration: none;
		color: rgba(255,255,255,.7);
	}

.container-copyright
{
		background: #fa7a4b;
		height: 10px;
		max-width: 100%;
	}

/*********************************************************************************/
/* Welcome                                                                       */
/*********************************************************************************/

	#welcome
	{
		overflow: hidden;
		padding: 5em 0em;
		border-bottom: 1px solid #E5E5E5;
		text-align: center;
	}
	
	#welcome h2
	{
		letter-spacing: 0.20em;
		text-transform: uppercase;
		font-size: 2.6em;
	}
	
	#welcome p
	{
		font-size: 1.3em;
	}

	#welcome .byline
	{
		display: block;
		padding: 0em 0em 1.5em 0em;
		letter-spacing: 0.15em;
		text-transform: uppercase;
		font-weight: 400;
		font-size: 1.2em;
		color: #6F6F6F;
	}

/*********************************************************************************/
/* Portfolio                                                                     */
/*********************************************************************************/

	#portfolio-wrapper
	{
		background: rgba(0,0,0,.04);
		padding: 6em 0em;
		color: rgba(255,255,255,.7);
	}
	
	#portfolio
	{
		overflow: hidden;
	}
	
	#portfolio .title h2
	{
		font-size: 1.2em;
		color: #FFF;
	}

	#portfolio .byline
	{
		font-size: 1em;
		color: #EEA7C1;
	}
	
	#column1,
	#column2,
	#column3,
	#column4
	{
		width: 282px;
	}
	
	#column1,
	#column2
	{
		float: left;
		margin-right: 24px;
	}
	
	#column3
	{
		float: left;
	}
	
	#column4
	{
		float: right;
	}
	
/*********************************************************************************/
/* Button Style                                                                  */
/*********************************************************************************/

	.buttonNL
	{
		display: inline-block;
		margin-top: 1.5em;
		padding: 1.50em 3em 1.50em 3em;
		background: #16a085;
		text-decoration: none;
		text-transform: uppercase;
		font-weight: 400;
		font-size: 0.90em;
		color: #FFF;
		text-align: center;
	}

.buttonFB
	{
		display: inline-block;
		margin-top: 1.5em;
		padding: 1.50em 3em 1.50em 3em;
		background: #39599F;
		text-decoration: none;
		text-transform: uppercase;
		font-weight: 400;
		font-size: 0.90em;
		color: #FFF;
		text-align: center;
	}
	
		.button:before
		{
			display: inline-block;
			width: 40px;
			height: 40px;
			line-height: 40px;
			border-radius: 20px;
			text-align: center;
			color: #FFF;
		}

.buttonSERVICE-container {
  text-align: center;
  margin: 20px 0;
}

.buttonSERVICE {
  display: inline-block;
  margin: 10px;
  padding: 10px 20px;
  background-color: #16a085;
  color: white;
  text-decoration: none;
  border-radius: 5px;
  transition: background 0.3s ease;
}

.buttonSERVICE:hover {
  background-color: #fa7a4b ;
}

/*********************************************************************************/
/* Footer                                                                        */
/*********************************************************************************/
	
/* Footer wrapper */
#footer-wrapper {
  background-color: #BEE4DC;
  width: 100%;
  max-width: 1200px; /* Limite visuelle sur grand cran */
  margin: 0 auto;
  padding: 0 0px; /* cre des bandes sur les cts */
  box-sizing: border-box;
}

@media (max-width: 768px) {
  #footer-wrapper {
    padding: 0 10px; /* rduit les bandes */
  }
}

/* Footer en Flexbox */
#footer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 30px;
  width: 100%; /* prend toute la largeur du wrapper */
  padding: 40px 0;
  box-sizing: border-box;
}

/* Colonnes du footer */
#footer > div {
  flex: 1 1 0;
  min-width: 0;
  max-width: 32%;
  box-sizing: border-box;
  text-align: center;
}

/* Titres */
#footer .title h2 {
  font-weight: bold;
  font-size: 1.2em;
  color: black;
}

/* Bordures (si utilises quelque part) */
#footer .title,
#footer .style1 li {
  border-color: #2D2926 !important;
}

/* Liens */
#footer .style1 a {
  font-size: 1em;
  color: #B1B1B1;
}

/* Responsive : empile les colonnes sur mobile */
@media (max-width: 900px) {
  #footer {
    flex-direction: column;
    align-items: center;
  }

  #footer > div {
    max-width: 100%;
  }
}

.image-centree {
  display: block;
  margin-left: auto;
  margin-right: auto;
}





/** EVENEMENTS **/

.evenement-container {
  display: flex;
  background: white; /* s'assurer que tout est blanc */
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  max-width: 1000px;
  margin: 40px auto;
}

.evenement-image {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center; /* 🔥 centre verticalement l’image */
  background: white;  /* s'assurer qu'il n'y a pas de gris */
  padding: 20px;
}

.evenement-image img {
  max-width: 100%;
  height: auto;
  max-height: 100%; /* empêche l’image de dépasser */
  border-radius: 8px;
}

.evenement-texte {
  flex: 1;
  padding: 30px;
  background: white;
}

.evenement-texte h2 {
  font-size: 2em;
  margin-bottom: 15px;
}



@media (max-width: 768px) {
  .evenement-container {
    flex-direction: column;
  }

  .evenement-image, .evenement-texte {
    width: 100%;
  }

  .evenement-image {
    padding: 10px;
  }
}


/** CARROUSEL EN JAVA **/


.carousel-container {
  position: relative;
  width: 100%;
  max-width: 1000px;
  margin: 40px auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.slider-wrapper {
  overflow: hidden;
  flex: 1;
}

.slider-container {
  display: flex;
  transition: transform 0.5s ease;
  scroll-behavior: smooth;
}

.slide {
  flex: 0 0 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 30px;
  box-sizing: border-box;
}

.slide-image {
  flex: 1;
  padding-right: 20px;
}

.slide-image img {
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.slide-text {
  flex: 1;
  text-align: justify;
}

.slide-text h2 {
  font-size: 2em;
  margin-bottom: 10px;
}

.arrow {
  font-size: 2rem;
  background: #62af89; /* Couleur demande */
  color: white;
  border: none;
  cursor: pointer;
  padding: 10px 15px;
  transition: background 0.3s ease;
  z-index: 2;
}

.arrow:hover {
  background: #ff4d0d; /* Couleur au survol */
}

.dots-container {
  text-align: center;
  margin-top: 20px;
}

.dot {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 6px;
  background-color: #62af89;
  border-radius: 50%;
  transition: background-color 0.3s;
  cursor: pointer;
}

.dot.active {
  background-color: #fa7a4b;
}

@media (max-width: 768px) {
  .slide {
    flex-direction: column;
  }

  .slide-image,
  .slide-text {
    flex: 1 1 100%;
    padding: 10px 0;
  }

  .arrow {
    font-size: 1.5rem;
    padding: 8px 12px;
  }
}

/** CONTACT FORMULAIRE **/

.contact-form {
  max-width: 600px;
  margin: 50px auto;
  padding: 30px;
  background-color: #f4f4f4;
  border-radius: 10px;
  font-family: Arial, sans-serif;
}

.contact-form label {
  display: block;
  margin-top: 15px;
  font-weight: bold;
  color: #333;
}

.contact-form input,
.contact-form textarea {
  width: 100%;
  padding: 10px;
  margin-top: 5px;
  border-radius: 5px;
  border: 1px solid #ccc;
  box-sizing: border-box;
}

.contact-form button {
  margin-top: 20px;
  background-color: #fa7a4b;
  color: white;
  border: none;
  padding: 12px 20px;
  font-size: 16px;
  border-radius: 5px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.contact-form button:hover {
  background-color: #e3612f;
}

/**
#16a085  vert foncé
#CE702D  marron
background-color: rgba(190,233,223,1.00)   vert clair
#62af89  vert
#ff4d0d  orange
#fa7a4b  orange clair

**/








	
