@import url(fonts/source_sans_pro.css);

/** Au format iPad / ordi, on ne fait pas apparaître la sidebar **/
.sidebar-media {
	display: none;
}

/** Au format iPad / ordi, on ne fait pas apparaître les 2 boutons responsive de la page d'accueil **/
.accueil-responsive-buttons {
	display: none;
}

/** Au format iPad / ordi, on ne fait pas apparaître le gros bouton "précédent" de la pagination **/
.pagination-responsive {
	display: none;
}

body {	
	background: #e0e0e0;
	background-image: url('../images/font.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	margin:0;
	padding:0;
	font-family: 'Source Sans Pro', 'sans-serif';
	font-size: 1.2em;
	color: #777;
}

/* Bouton pour remonter en haut de la page (wizard4.php) */
#backToTop {
	display: none; /* Hidden by default */
	position: fixed; /* Fixed/sticky position */
	bottom: 20px; /* Place the button at the bottom of the page */
	right: 30px; /* Place the button 30px from the right */
	z-index: 99; /* Make sure it does not overlap */
	border: none; /* Remove borders */
	outline: none; /* Remove outline */
	background-color: #00A6EB; /* Set a background color */
	color: white; /* Text color */
	cursor: pointer; /* Add a mouse pointer on hover */
	padding: 15px; /* Some padding */
	border-radius: 10px; /* Rounded corners */
	font-size: 18px; /* Increase font size */
  }
  
  #myBtn:hover {
	background-color: #555; /* Add a dark-grey background on hover */
  }

* {
	margin:0;
	padding:0;
}

/** PARAMETRES DE LA NAV : FLEX + ALIGNEMENT DES DIVS **/
.nav-conteneur {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/** Fonts pour Bootstrap Input-Group **/
.blue__addon {
  color: #ffffff !important;
  background-color: #00A6EB !important;
}

/* Paramètres de la background video **/
#backgroundVideo {
	position: fixed;
	right: 0;
	bottom: 0;
	min-width: 100%; 
	min-height: 100%;
	z-index: -1;
  }

/** On force la suppression des puces dans les listes (pour la page index.php) **/
.nolist {
	list-style: none;
}

/** on force la mise en minuscules du champ email pour éviter un format incorrect **/
form input[name="email"] {
    text-transform: lowercase;
}

/** Bulle notif rouge style Apple pour messagerie **/
.notification {
  background-color: #00A6EB;
  color: white;
  text-decoration: none;
  padding: 15px -26px;
  position: relative;
  display: inline-block;
  border-radius: 0px;
}
.notification .badge {
  position: absolute;
  top: 10px;
  right: 5px;
  padding: 5px 10px;
  border-radius: 50%;
  background: red;
  color: white;
}

/** Bandeau de consentement Cookies **/
#bandeauCookies {
	position: fixed;
	bottom: 0;
	width: 100%;
	background-color: #00A6EB;
	color: white;
	text-align: left;
	font-size: 0.8em;
	height: 80px;
	border-radius: 10px;
	z-index: 9999;

	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
}
.bandeauCookiesMessage
{
    flex: 3;
	text-align: left;
	padding: 10px;
}
.bandeauCookiesButtons
{
    flex: 1;
	text-align: center;
	padding: 10px;
}

/* Affichage des tabulations des triangulaires en fonction du support utilisé (ordinateur, tablette...) - wizard4.php */
.wizard-tabs-default {
	display: inline-block;
}
.wizard-tabs-responsive {
	display: none;
}

/** Bouton coulissant style apple pour remplacer les checkboxes **/
.form-switch {
  display: inline-block;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.form-switch i {
  position: relative;
  display: inline-block;
 margin-right: .5rem;
  width: 46px;
  height: 26px;
  background-color: #e6e6e6;
  border-radius: 23px;
  vertical-align: text-bottom;
  transition: all 0.3s linear;
}
.form-switch i::before {
  content: "";
  position: absolute;
  left: 0;
  width: 42px;
  height: 22px;
  background-color: #fff;
  border-radius: 11px;
  transform: translate3d(2px, 2px, 0) scale3d(1, 1, 1);
  transition: all 0.25s linear;
}
.form-switch i::after {
  content: "";
  position: absolute;
  left: 0;
  width: 22px;
  height: 22px;
  background-color: #fff;
  border-radius: 11px;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.24);
  transform: translate3d(2px, 2px, 0);
  transition: all 0.2s ease-in-out;
}
.form-switch:active i::after {
  width: 28px;
  transform: translate3d(2px, 2px, 0);
}
.form-switch:active input:checked + i::after { transform: translate3d(16px, 2px, 0); }
.form-switch input { display: none; }
.form-switch input:checked + i { background-color: #4BD763; }
.form-switch input:checked + i::before { transform: translate3d(18px, 2px, 0) scale3d(0, 0, 0); }
.form-switch input:checked + i::after { transform: translate3d(22px, 2px, 0); }

/** Element defaults **/
table {
	width: 100%;
	text-align: left;
	font-size: 0.8em;
	border-spacing: 0px;
}

tr:nth-child(even) {
  background-color: #f2f2f2
}

/** Tableau pour la page mon compte **/
tr.white, td.white {
	background-color: white;
	border-collapse: collapse;
	padding: 0px 0px !important;
}
/** Block news pour la page d'accueil **/
table.news {
	width: 100%;
	text-align: left;
	font-size: 0.8em;
}
tr.news, td.news {
	color: #059;
	background-color: #BEF;
}
/** Pour mettre un texte en gras (balise span class) **/
.bold {
	font-weight: bold;
}
/** Couleur gris pour hover + pointeur souris **/
tr.messagerie:hover td.messagerie {
	background-color:#ccc
}
tr.messagerie {
	cursor:pointer;
}

th, td {
	padding: 10px 10px;
}
th {
	color: #FFFFFF;
	background: #00A6EB none repeat-x scroll left top;
}
td {
	border-bottom: 1px solid #ccc;
}
p {
	line-height: 1.7em;
	margin-bottom: 25px;
}
a {
	color: #00A6EB;
	text-decoration: none;
}
a:hover {
	color: #333;
}
a:focus {
	outline: none;
}

/** bouton bleu pour pagination (petit) **/
span.button
{
	background: none repeat scroll 0% 0% #00A6EB;
	color: #FFF;
	display: inline-block;
	padding: 5px 10px;
	font-size: 0.6em;
	letter-spacing: 0.25px;
	line-height: 1em;
	border-radius: 5px;	
	text-decoration: none;
	border:none;
	text-transform: uppercase;
	font-weight: bold;
}

/** bouton gris pour pagination (petit) **/
span.button_no_link_gris
{ 
	background: none repeat scroll 0% 0% #666;
	color: #FFF;
	display: inline-block;
	padding: 5px 10px;
	font-size: 0.6em;
	letter-spacing: 0.25px;
	line-height: 1em;
	border-radius: 5px;	
	text-decoration: none;
	border:none;
	text-transform: uppercase;
	font-weight: bold;
}

/** bouton idem bouton bleu sans lien (gros) **/
span.button_no_link
{
	background: none repeat scroll 0% 0% #00A6EB;
	color: #FFF;
	display: inline-block;
	padding: 8px 22px;
	font-size: 0.75em;
	letter-spacing: 0.25px;
	border-radius: 5px;	
	text-decoration: none;
	border:none;
	text-transform: uppercase;
	font-weight: bold;
}

/** bouton idem bouton bleu mais en gris et sans lien (gros) **/
span.button_no_link_gris_gros
{
	background: none repeat scroll 0% 0% #ddd;
	color: #666;
	display: inline-block;
	padding: 8px 22px;
	font-size: 0.75em;
	letter-spacing: 0.25px;
	border-radius: 5px;	
	text-decoration: none;
	border:none;
	text-transform: uppercase;
	font-weight: bold;
}

a.button {
	background: none repeat scroll 0% 0% #00A6EB;
	color: #FFF;
	display: inline-block;
	padding: 8px 22px;
	font-size: 0.75em;
	letter-spacing: 0.25px;
	border-radius: 5px;	
	text-decoration: none;
	border:none;
	text-transform: uppercase;
	font-weight: bold;
}

a.button:hover {
	background:#0092D1;
}

a.button-reversed { 
	background-color: #ddd;
	color: #666;
}

a.button-reversed:hover {
	background: #ccc;
}

a.buttondel {
	background: none repeat scroll 0% 0% #FF0000;
	color: #FFF;
	display: inline-block;
	padding: 8px 22px;
	font-size: 0.75em;
	letter-spacing: 0.25px;
	border-radius: 5px;	
	text-decoration: none;
	border:none;
	text-transform: uppercase;
	font-weight: bold;
}

.pagination {
	color:#FFFFFF;
}

/* FIELDSET DANS LES FORMULAIRES */
fieldset {
	display: block;
	border: none;
	border-top: 1px solid #ccc;
}

fieldset legend {
	font-weight: bold;
	font-size: 0.9em;
	padding-right: 10px;
	color: #333;
}

fieldset form {
	padding-top: 15px;
}

fieldset p label {
	float: left;
	width: 150px;
}

form input, form select, form textarea {
	padding: 5px;
	color: #333333;
	border: 1px solid #ddd;
	border-right:1px solid #ccc;
	border-bottom:1px solid #ccc;
	background-color:#fff;
	font-family: 'Source Sans Pro', 'sans-serif';
	font-size: 0.9em;
}

form input.formbutton {
	background: none repeat scroll 0% 0% #00A6EB;
	color: #FFF;
	display: inline-block;
    padding: 8px 22px;
    font-size: 0.75em;
    letter-spacing: 0.25px;
	line-height: 1.3em;
	border-radius: 5px;	
	text-decoration: none;
	border:none;
	text-transform: uppercase;
	font-weight: bold;
	width: auto;
	overflow: visible;
}

form input.formbuttondel {
	background: none repeat scroll 0% 0% #FF0000;
	color: #FFF;
	display: inline-block;
    padding: 8px 22px;
    font-size: 0.75em;
    letter-spacing: 0.25px;
	line-height: 1.3em;
	border-radius: 5px;	
	text-decoration: none;
	border:none;
	text-transform: uppercase;
	font-weight: bold;
	width: auto;
	overflow: visible;
}

form input.formbuttongrey {
	background: none repeat scroll 0% 0% #ddd;
	color: #666;
	display: inline-block;
	padding: 8px 22px;
	font-size: 0.75em;
	letter-spacing: 0.25px;
	line-height: 1.3em;
	border-radius: 5px;	
	text-decoration: none;
	border:none;
	text-transform: uppercase;
	font-weight: bold;
	width: auto;
	overflow: visible;
	}

form.searchform input {
  font-size: 0.9em;
    padding: 6px;
}

form.searchform p {
	margin: 5px 0;
}

/* Cible n'importe quel élément <input> en lecture seule */
input:-moz-read-only {
	background-color: #DCDCDC;
}
input:read-only {
	background-color: #DCDCDC;
}


span.required {
	color: #ff0000;
}

/* TITRES */
h1 {
	color: #000;
	font-size: 2.7em;
	margin-bottom: 10px;
}
h2 {
	color: #666;
	font-size: 2.4em;
	letter-spacing: -2.5px;
	padding: 0 0 10px;
	font-weight: bold;
	margin: 0;
}
h3 {
	color: #52CBEE;
	font-size: 1.9em;
	font-weight: 600;
	margin-bottom: 10px;
	letter-spacing: -1px;
}
h4 {
    color: #9EE2FF;
    font-size: 1.2em;
    text-transform: uppercase;
    padding-bottom: 10px;
	font-weight: bold;
}
h5 {
	padding-bottom: 10px;
	font-size: 1.1em;
	color: #999;
}
h6 {
	font-size: 0.8em;
	font-style: italic;
}

ul, ol {
	margin: 0 0 35px 35px;
	padding: 0;
	list-style: disc;
}

li {
	padding-bottom: 10px;
}

li ol, li ul {
	font-size: 1.0em;
	margin-bottom: 0;
	padding-top: 5px;
}

.width {
	max-width: 1100px !important;
	margin: 0 auto;
}
#body {max-width: 1070px; }


#container {
	width: auto;
	margin: 0 auto;
}

.fixed-header header {
	position: fixed;
	width: 100%;
}

header {
	padding: 0px 10px 0;
	margin: 0 auto;
	text-align: left;
	background-color: #00A6EB;
}

header h1 {
	margin: 0;
	float: left;
}

header h1 a, header h1 a:hover {
    color: #99E1F5;
    padding: 10px 5px 10px;
   font-size: 0.8em;
    letter-spacing: -5px;
    border-bottom: none;
    text-transform: uppercase;
    display: block;
    font-weight: 600;

}

header h1 a strong {
	color: #fff;
}

/**nav {
	float: right;
}**/

nav ul {
	list-style: none;
	padding: 0;
	margin: 0;
	text-align: left;
}

nav ul ul { 
	margin: 0;
	padding: 0;
}

nav ul li {
	display: block;
	float: left;
	padding: 0px;
}

nav ul li li {
	padding: 0;
}


nav ul li a
{
	display: block;
	float: left;
	padding: 25px 20px;
    color: #fff;
    font-size: 0.75em;
	margin: 0;
     border-bottom: none;
	letter-spacing: 0px;
}

nav ul li a i { padding-right: 5px; }

nav ul li a:hover {
	color: #fff;
	text-decoration: none;
}

nav ul li.selected a {
	color: #fff;
	font-weight: bold;
}

nav ul li.selected a:hover
{
	background:#0092D1;
}

nav ul li a:hover, nav ul li.sfHover a {
	color: #fff;
}


nav ul li a.sf-with-ul:hover, nav ul li.sfHover a {
	color: #fff;
}


 nav ul li.sfHover ul a, nav ul ul {
	background: #00A6EB;
	color: #fff;
}

nav ul li.sf-with-ul.selected ul a, nav ul li.selected ul, nav ul li.selected.sfHover a  {
	background-color: #00A6EB;
	color: #fff;
}
nav ul li.sf-with-ul.selected ul li a, nav ul li.selected.sfHover li a,  nav ul li.sfHover a a, nav ul li.selected li a  {
	color: #fff;
	font-weight: normal;
}

nav ul li.sf-with-ul.selected ul li a:hover, nav ul li.selected.sfHover ul li a:hover {
	color: #fff;
}

nav ul li li a:hover, nav ul li.sfHover li a:hover {
	color: #fff;
	background-color: #0092D1;
}

/* intro */
div#intro {
	background-position: left;
	background-repeat: no-repeat;
}

div#intro .intro-content {
	padding: 65px 40px;
	text-align: center;
}

div#intro div.intro-content-short {
	padding: 30px 0 20px 20px;
	text-align: left;
}


div#intro h2 {
	text-shadow: 1px 1px 0 #000;
	font-size: 3em;
	text-shadow: 1px 2px 3px black;
	text-shadow: offset-x offset-y blur-radius color;
}

div#intro h2, div#intro p {
	color: #fff;
	font-weight: bold;
}

div#intro span {
	font-size: 1.3em;
	color: #ddd;
	line-height: 1.3em;
}

div#intro p {
	font-size: 1.3em;
	color: #ddd;
	line-height: 1.3em;
	text-shadow: 1px 2px 3px black;
	text-shadow: offset-x offset-y blur-radius color;
}

a.button-slider {
	padding: 18px 25px;
	font-size: 0.8em;
	text-align: center;
	border-color: #B27CC5;
	margin: 0px 10px 0px 0;
}

a.button-slider.button-reversed {
	border-color: #fff;
}

a.button-slider i { padding-right: 5px; }

img {
	max-width: 100%;
	height: auto;
}

/** ID "BODY-INDEX" spécialement crée pour la page Index en mode mobile, car un padding spécifique a été mis en place sur #body pour rabaisser toute les pages du site en mode mobile pour compenser la fixed navbar, mais il y a conflit sur la page Index car il y a toute la partie Intro au dessus qui décale tout **/
#body, #body-index {
	background: #fff;
	margin: 0 auto;
 	padding: 15px 15px 0;
	clear: both;
}

#content {
    float: left;
}

article {
    padding: 10px 10px 20px 5px;
 }

article .article-info {
    color: #c0c0c0;
    font-size: 0.9em;
    letter-spacing: -0.5px;
    padding: 0 0 10px 0;
}

article .article-info a { 
	color: #c0c0c0;
	border-bottom-color: #c0c0c0;
}

.clear {
	clear: both;
}

footer {
	margin:0px auto 0;
	background: #222;
	border-top: 10px solid #000;
}

footer p {
	text-align: left;
	color: #ccc;
	font-size: 0.9em;
	margin: 0;
	padding: 0;
}

footer p a {
	color: #ccc;
	font-weight: bold;
}

.footer-content {
	padding: 20px 25px 30px;
}

footer .footer-content ul {
	width: 25%;
	list-style: none;
	margin: 0;
	padding: 0;
	float: left;
}

footer .footer-content li {
	padding: 5px 5px;
}

footer .footer-content li a {
 color: #505050;
	border-bottom-color:#505050;
    
}

footer .footer-content li {
 color: #505050;
	line-height: 1.5em;
font-size: 0.95em;
}

footer .footer-content li a:hover { 
	color: #909090;

	border-bottom-color:#909090;
}

footer .footer-content h4 {
   color: #999;
    font-size: 1.5em;
    padding-bottom: 10px;
	font-weight: bold;
	letter-spacing: -1px;
}

footer .footer-bottom {
	padding: 10px;
	text-align: center;
	background-color: #000;
}

footer .footer-bottom p {
	text-align: center;
}

footer .footer-bottom p, footer .footer-bottom p a {
	color: #666;
	border-bottom-color: #666;
}

/** on impose la largeur des formulaires **/
.input-group { width: 70%; }


@media screen and (max-width: 800px) {

	body { font-size: 0.8em; }	
	
	header { text-align: center; }

	header h1 { float: none; text-align: center;  }

	header h1 a, header h1 a:hover { float: none; padding: 5px; }

	nav ul li a { padding: 20px 10px; }

	nav ul li li a { padding: 7px 0 7px 7px; }

	.sf-menu li:hover ul, .sf-menu li.sfHover ul { top: 23px; }

	div#container { width: auto; }

	footer .footer-content ul { margin-bottom: 15px; }

	footer .footer-content ul.endfooter { margin-bottom: 0px; }

	.width { width:auto; padding-left: 10px; padding-right: 10px; }
	
	#content, aside.sidebar { float: none; width: auto; }

	#content { padding: 10px; }

	footer .footer-content ul { width: auto; float: none; }

	/** on impose la largeur des formulaires **/
	.input-group { width: 100%; }

	/** on désactive l'affichage video sur mobile/tablette **/
	#backgroundVideo { display: none; }

}


@media screen and (max-width: 540px) {

	body { font-size: 0.8em; }

	header { text-align: center; padding: 10px 0 5px; }

	/** ON PASSE LA NAVBAR EN FIXED POUR QU'ELLE CORRELE AVEC LA SIDEBAR SINON LA SIDEBAR NE BOUGE PAS ET LA NAVBAR OUI ET ON AJOUTE Z-INDEX:1 AFIN QU'IL COULISSE AU DESSUS DE TOUT LE RESTE **/
	.nav-position { position: fixed; top: 0; width: 95%; z-index: 9999; }

	/** ID "BODY-INDEX" spécialement crée pour la page Index en mode mobile, car un padding spécifique a été mis en place sur #body pour rabaisser toute les pages du site en mode mobile pour compenser la fixed navbar, mais il y a conflit sur la page Index car il y a toute la partie Intro au dessus qui décale tout **/
	#body-index { margin-top: 15px; }

	nav ul { margin: 0; }

	div#intro .intro-content { padding: 5px 5px; padding-top: 100px; }
	
	div#intro div.intro-content-short { padding: 20px 5px 10px; }

	/** ON AUGMENTE LA HAUTEUR FORCEE DU DIV BODY POUR NE PAS QU'IL SOIT MANGE PAR LA NAVBAR **/
	div#body { padding-top: 85px; margin-top: 10px; }

	/** On fait apparaître les 2 boutons de la page d'accueil **/
	.accueil-responsive-buttons { display: block; text-align: center; }

	/** On fait disparaître les 2 gros boutons format iPad / ordi **/
	.accueil-main-buttons { display: none; }

	/** On impose une taille plus élevée pour bouton de la sidebar (fas fa-bars) **/
	.sidebar-toggle-media { font-size: 20px; }

	/** En taille réduite (tablette, téléphone) on fait apparaître la sidebar **/
	.sidebar-media { display: block; }

	/** En taille réduite (tablette, téléphone) on fait disparaître certains boutons de la Navbar car ils se retrouvent dans la sidebar (doublon) **/
	.navbar-media { display: none;}

	/** on impose la largeur des formulaires **/
	.input-group { width: 100%; }

	/** on désactive l'affichage video sur mobile/tablette **/
	#backgroundVideo { display: none; }

	/** on réduit la largeur du bouton bleu (pour les boutons en haut des pages annonce, details_annonce...) **/
	a.button { padding: 8px 8px; }

	/** on réduit la largeur du petit bouton bleu de la pagination pour que tout tienne sur une ligne **/
	span.button { padding: 5px 8px; }

	/** on réduit la largeur du petit bouton gris de la pagination pour que tout tienne sur une ligne **/
	span.button_no_link_gris { padding: 5px 8px; }

	/** on modifie la largeur à 100% du menu déroulant "tri métier" de la page annonces **/
	select[name="tri_metier"] { width: 100%; }

	/** on fait disparaitre les boutons "précédent" et "suivant de la pagination classique **/
	.pagination-main { display: none; }

	/** on fait apparaitre les boutons "précédent" et "suivant" de la pagination avec des chevrons uniquement **/
	.pagination-responsive { display: inline-block; }

	/* Affichage des tabulations des triangulaires en fonction du support utilisé (ordinateur, tablette...) - wizard4.php*/
	.wizard-tabs-default {
		display: none;
	}
	.wizard-tabs-responsive {
		display: inline-block;
	}

}