/* Reset CSS
 * --------------------------------------- */
 
* {
	box-sizing: border-box;
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,
form,fieldset,input,textarea,p,blockquote,th,td {
    padding: 0;
    margin: 0;
}
a{
	text-decoration:none;
}
table {
    border-spacing: 0;
}
fieldset,img {
    border: 0;
}
address,caption,cite,code,dfn,em,strong,th,var {
    font-weight: normal;
    font-style: normal;
}
strong{
	font-weight: bold;
}
ol,ul {
    list-style: none;
    margin:0;
    padding:0;
}
caption,th {
    text-align: left;

}
h1,h2,h3,h4,h5,h6 {
    font-weight: normal;
    font-size: 100%;
    margin:0;
    padding:0;
    color:#444;
}
q:before,q:after {
    content:'';
}
abbr,acronym { border: 0;
}

body {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 18px;
	color: #555;
	font-weight: 300;
}

header {
	position: fixed;
	background: #f5f5f5;
	width: 100%;
	height: 90px;
	z-index: 900;
    transition: all .6s ease-in-out;
}

header > div {
	max-width: 1200px;
	margin: auto;
	position: relative;
}

.logo {
	height: 40px;
	margin: 20px 20px;
    transition: all .6s ease-in-out;
}

nav {
    height:100%;
    position:fixed;
    overflow: auto;
    background:#1172b9;
    top:0;
    bottom:0;
    height:100%;
    width:70%;
    left:-70%;
    z-index:9999;
    padding: 50px 10px;
}

nav ul {
    transition: all .6s ease-in-out;
}

nav ul li {
	color: #fff;
	font-size: 14px;
	text-transform: uppercase;
	font-weight: 500;
	margin: 0px 10px;
	line-height: 40px;
	text-align: center;
}

	nav ul li a {
		color: inherit;
		position: relative;
	}

		nav ul li a:before {
			content: "";
			position: absolute;
			width: 100%;
			height: 2px;
			bottom: -10px;
			left: 0;
			background-color: #fff;
			visibility: hidden;
			-webkit-transform: scaleX(0);
			transform: scaleX(0);
			-webkit-transition: all 0.3s ease-in-out 0s;
			transition: all 0.3s ease-in-out 0s;
		}
	
	nav ul li.on a, nav ul li a:hover {
		color: inherit;
	}

			nav ul li a:hover:before {
				visibility: visible;
				-webkit-transform: scaleX(1);
				transform: scaleX(1);
			}

		nav ul li.on a:before {
			content: "";
			position: absolute;
			width: 100%;
			height: 2px;
			bottom: -10px;
			left: 0%;
			background-color: #fff;
			visibility: visible;
			-webkit-transform: scaleX(1);
			transform: scaleX(1);
		}

	/*header small */		

	header.small {
		height: 60px;
		background: #662483;
	}

	header.small .logo {
		height: 30px;
		margin: 10px 20px;
		-webkit-filter: brightness(0) invert(1); /* Safari 6.0 - 9.0 */
    	filter: brightness(0) invert(1);
	}

	header.small nav ul {
		top: 10px;
	}

	header.small nav ul li a:before {
		background-color: #fff;
	}

	header.small nav ul li, header.small nav ul li.on a, header.small nav ul li a:hover {
		color: #fff;
	}

.menuBtnContainer {
	position: absolute;
	top: 25px;
	right: 0px;
	width: calc(100% - 190px);
	height: 40px;
	text-align: center;
    transition: all .6s ease-in-out;
}

	header.small .menuBtnContainer {
		top: 10px;
		width: calc(100% - 168px);
	}

.menuBtn {
	display: inline;
	color: #4e4f52;
	font-size: 14px;
	text-transform: uppercase;
	font-weight: 500;
	margin: 0px 10px;
	line-height: 40px;
	cursor: pointer;
}

	header.small .menuBtn {
		color: #fff;
	}

.close {
	position: absolute;
	padding: 10px;
	color: #fff;
	top: 0px;
	right: 0px;
	width: 100%;
	border-bottom: 1px solid #fff;
	text-align: right;
	cursor: pointer;
}

	.close:hover {
		color: #000;
	}

#section1 {
	padding-top: 300px;
	padding-bottom: 200px;
}

.fondFr {
	background-image: url(../img/graphe-1.png), url(../img/bg-1.jpg);
	background-size: 300px, 450px;
	background-position: center top 170px, bottom right;
	background-repeat: no-repeat;
}

.fondEn {
	background-image: url(../img/graphe-1-en.png), url(../img/bg-1.jpg);
	background-size: 300px, 450px;
	background-position: center top 170px, bottom right;
	background-repeat: no-repeat;
}

	#section1 > div {
		max-width: 1200px;
		margin: auto;
		padding: 25px;
	}
	
	#section1 h1 {
		color: #126cb4;
		font-size: 24px;
		line-height: 30px;
		text-transform: uppercase;
		font-weight: 400;
		margin-left: 25px;
		margin: 0px 0px 20px 25px;
	}
	
	#section1 article {
		display: inline-block;
		margin: 25px;
		vertical-align: top;
	}
	
	#section1 h2 {
		color: #444;
		font-size: 16px;
		line-height: 20px;
		text-transform: uppercase;
		font-weight: 400;
	}
	
	#section1 p {
		text-align: left;
		padding: 25px 0px 0px 0px;
		font-size: 12px;
		line-height: 16px;
		font-weight: 400;
	}
	
	.sepSection1 {
		display: inline-block;
		width: calc(100% - 39px);
		height: 2px;
		background: #126cb4;
		overflow: hidden;
	}
	
	.moreSection1 {
		display: block;
		text-align: right;
		padding-top: 10px;
	}

#section2 {
	min-height: 450px;
	padding-bottom: 220px;
	background: #ededed;
	background-image: url(../img/bg-2.jpg);
	background-size: 300px;
	background-position: center bottom 40px, bottom right;
	background-repeat: no-repeat;
}

	#section2 > div {
		max-width: 100%;
		margin: auto;
		text-align: right;
		padding: 25px;
	}
	
	#section2 article {
		text-align: left;
		display: inline-block;
		vertical-align: top;
	}
	
	#section2 h2 {
		color: #126cb4;
		font-size: 24px;
		line-height: 30px;
		text-transform: uppercase;
		font-weight: 400;
		text-align: left;
		position: relative;
		margin: 20px 0px;
		margin-left: 25px;
	}
	
	#section2 p {
		text-align: left;
		padding: 25px 0px 25px 30px;
		font-size: 12px;
		line-height: 16px;
		font-weight: 400;
	}
	
	.sepSection2 {
		display: inline-block;
		width: calc(100% - 39px);
		height: 2px;
		background: #126cb4;
		overflow: hidden;
		position: relative;
	}
	
	.moreSection2 {
		 display: block;
		 text-align: right;
		 padding-top: 10px;
	}

	#section3 > div {
		max-width: 1200px;
		margin: auto;
		text-align: center;
		padding: 25px 20px;
		position: relative;
	}
	
	#section3 h2 {
		color: #206cb4;
		font-size: 24px;
		line-height: 30px;
		text-transform: uppercase;
		font-weight: 400;
		text-align: right;
	}
	
	#section3 h3 {
		color: #126cb4;
		font-size: 18px;
		line-height: 18px;
		font-weight: 500;
		margin-bottom: 18px;
	}
	
	#section3 p {
		margin-bottom: 18px;
	}
	
	.rootsTitleBlock {
		display: inline-block;
		width: 100%;
		padding: 25px;
		border: 2px solid #236db5;
		background: #fff;
		z-index: 500;
		margin-bottom: 30px;
	}
	
	.rootsSep {
		display: inline-block;
		width: 200px;
		height: 2px;
		background: #126cb4;
		overflow: hidden;
	}
	
	.rootsMore {
		display: block;
		text-align: right;
		padding-top: 10px;
	}
	
	.rootsContainer {
		width: 100%;
		padding: 25px 40px 17px 40px;
		border: 2px solid #bcd3e8;
		display: inline-block;
		text-align: left;
		position: relative;
		margin-right: 2%;
	}
	
#section4 {
	background: #126cb4;
	background-image: url(../img/bg-3.png);
	background-size: 50px;
	background-position: left 20px top 0px, bottom right;
	background-repeat: no-repeat;
}

	#section4 > div {
		max-width: 1200px;
		min-height: 400px;
		margin: auto;
		text-align: center;
		padding: 25px;
	}
	
	#section4 h2 {
		color: #fff;
		font-size: 24px;
		line-height: 24px;
		text-transform: uppercase;
		font-weight: 400;
		margin: 25px;
	}
	
	#section4 p {
		color: #fff;
		font-size: 14px;
		line-height: 18px;
		font-weight: 400;
		margin-bottom: 18px;
		padding: 0px 0px;
		
	}
	
	.offreItem {
		display: inline-block;
		width: 200px;
		height: 200px;
		padding: 15px 0px;
		overflow: hidden;
		border: 2px solid #fff;
		margin: 30px;
		color: #fff;
		font-size: 18px;
		line-height: 26px;
	}
	
		.offreItem strong {
			font-size: 22px;
			text-transform: uppercase;
			font-weight: 400;
		}
	
	.offreCouleur1 {
		background: #126cb4;
	}
	
	.offreCouleur2 {
		background: #258ccb;
	}
	
	.offreCouleur3 {
		background: #3c489b;
	}
	
	.star {
		height: 13px;
		margin: 3px;
	}
	
	.offreMore {
		filter: brightness(20);
		width: 27px;
	}
	
	.offreItem:hover {
		background: #333;
	}
	
#section5 {
	background: #fff;
}

	#section5 > div {
		max-width: 1200px;
		margin: auto;
		text-align: center;
		padding: 25px 25px 0px 25px;
	}
	
	#section5 > div > div > div {
		padding: 15px;
	}
	
	#section5 > div > div > div > img {
		width: 100%;
	}
	
a.more {
	display: inline-block;
	vertical-align: middle;
	font-size: 14px;
	color: #206cb4;
	text-transform: uppercase;
	font-weight: 600;
}

	a.more:after {
		content: url(../img/plus-s.png);
		display: inline-block;
		vertical-align: middle;
		margin-left: 12px;
	}
	
	a.more:hover {
		color: #333;
	}
	
a.moreBig {
	display: inline-block;
	vertical-align: middle;
	font-size: 14px;
	color: #206cb4;
	text-transform: uppercase;
	font-weight: 600;
	background: url(../img/plus-s.png) center right no-repeat;
	padding-right: 37px;
	min-height: 32px;
}
	
	a.moreBig span {
		font-weight: 300;
		text-transform: none;
	}
	
	a.moreBig:hover {
		color: #333;
	}

/* slider
* --------------------------------------- */

.unslider-arrow {
    position: absolute;
    top: 50%;
    margin-top: -13px;
    z-index: 400;
    cursor: pointer;
    text-indent: -10000px;
}

.unslider-arrow.next {
	right: 12px;
    width: 13px;
    height: 13px;
    background: url(../img/arrow-next.png);
    background-size: 100%;
}

.unslider-arrow.prev {
	left: 12px;
    width: 13px;
    height: 13px;
    background: url(../img/arrow-prev.png);
    background-size: 100%;
}

#sectionRub {
	padding-top: 100px;
}

	#sectionRub > div {
		max-width: 1200px;
		margin: auto;
		padding: 25px 20px;
		text-align: center;
	}
	
	#sectionRub > div > p {
		font-size: 18px;
		text-align: center;
		font-weight: 500;
	}
	
	#sectionRub h1 {
		color: #126cb4;
		font-size: 30px;
		line-height: 30px;
		text-transform: uppercase;
		font-weight: 400;
		text-align: center;
	}
	
	#sectionRub h2 {
		color: #126cb4;
		font-size: 18px;
		line-height: 20px;
		text-transform: uppercase;
		font-weight: 400;
		margin-bottom: 18px;
	}

	#sectionRub > div.articleContainer {
		background: #fff;
		max-width: 100%;
	}

	#sectionRub .articleContainer:nth-child(3n) {
		background: #ededed;
	}

	#sectionRub .articleContainer:nth-child(3n+1) {
		background: #126cb4;
		color: #fff;
	}

		#sectionRub .articleContainer:nth-child(3n+1) h2 {
			color: #000;
		}

	#sectionRub article {
		max-width: 1200px;
		margin: auto;
		text-align: left;
		padding: 20px 0px 0px 0px;
	}

	#sectionRub .articleContainer:nth-child(2n+1) article {
		text-align: left;
	}
	
	#sectionRub article > div {
		/*width: 500px;*/
		display: inline-block;
		text-align: left;
	}
	
	#sectionRub article  p, #sectionRub article > div  p {
		margin-bottom: 18px;
	}
	
	#sectionRub article  a {
		margin-bottom: 18px;
		color: inherit;
		text-decoration: underline;
	}
	
	.sepSectionRub {
		display: inline-block;
		width: 200px;
		height: 2px;
		background: #126cb4;
		overflow: hidden;
		margin: 20px;
	}

.fiftyPc {
	width: 100%;
	display: inline-block;
	vertical-align: middle;
}

.fortyPc {
	width: 100%;
	display: inline-block;
	vertical-align: top;
}

.thirtyPc {
	width: 100%;
	display: inline-block;
	vertical-align: top;
}

.intermediate {
	width: 100%;
	margin: auto;
}
	
footer {
	text-align: center;
	padding: 25px;
}
	
footer ul li {
	display: inline;
	margin-left: 5px;
	font-weight: 400;
}

	footer ul li:before {
		content: "| ";
		padding-right: 5px;
	}

	footer ul li:first-child:before {
		content: "";
	}
	
footer ul li a {
	color: #126cb4;
}
	
	footer ul li a:hover {
		color: #333;
	}
	
.spacer {
	clear: both;
	height: 0px;
}

.offres ul {
	text-align: left;
	margin-bottom: 20px;
}

.offres ul ul {
	padding-left: 20px;
	margin: 0px;
}

.offres ul li {
	list-style-type: disc;
}

body {
	overflow: hidden;
}

/* Preloader */
#preloader {
	position: fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-color:#fff; /* change if the mask should have another color then white */
	z-index:99; /* makes sure it stays on top */
}

#status {
	width:200px;
	height:200px;
	position:absolute;
	left:50%; /* centers the loading animation horizontally one the screen */
	top:50%; /* centers the loading animation vertically one the screen */
	background-image:url(../img/loader.gif); /* path to your loading animation */
	background-repeat:no-repeat;
	background-position:center;
	margin:-100px 0 0 -100px; /* is width and height divided by two */
}

#twitter {
	background: #ddd;
	padding: 30px 20px 40px 20px;
}
	
	#twitter h1 {
		color: #126cb4;
    	font-size: 24px;
    	line-height: 24px;
    	text-transform: uppercase;
    	font-weight: 400;
    	margin: 25px;
    	text-align: center;
	}

.mask section .social-feed-container {
	display: flex;
	max-width: 1200px;
	margin: auto;
	flex-wrap: wrap;
}

.mask section .social-feed-element {
	flex-basis: 100%;
	box-shadow: none;
    transition: 0.25s;
    -webkit-backface-visibility: hidden;
    margin: 0;
    margin-top: 0;
    margin-top: 0;
    background-color: #ddd;
    text-align: left;
	font-size: 14px;
	line-height: 18px;
	color: #555;
	font-family: 'Montserrat', sans-serif;
}

.denyUpperCase {
	text-transform: none !important;
}

ul.spip {
	margin-bottom: 20px;
}

ul.spip li {
	list-style-type: disc;
	list-style-position: inside;
}

h3.spip {
	color: #126cb4;
}

p a {
	color: #126cb4;
}

p a:hover {
	color: #000;
}

.editer-groupe .editer {
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px dotted #ccc;
}

.editer-groupe label {
	display: inline-block;
	min-width: 180px;
	vertical-align: middle;
}

.editer-groupe select, .editer-groupe input, .editer-groupe textarea {
	display: inline-block;
	vertical-align: middle;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 18px;
	color: #126cb4;
	font-weight: 300;
}

span.erreur_message {
	display: inline-block;
	vertical-align: middle;
	padding: 0 10px;
	color: #662483;
	font-style: italic;
}

.reponse_formulaire p {
	font-size: 16px;
	font-weight: bold;
	color: #000;
}

.formulaire_formidable input[type=submit] {
    display: inline-block;
    vertical-align: middle;
    font-size: 14px;
    color: #206cb4;
    text-transform: uppercase;
    font-weight: 600;
    border: 1px solid #206cb4;
    padding: 8px 10px;
    cursor: pointer;
}

.formulaire_formidable input[type=submit]:hover {
    color: #fff;
    background: #206cb4;
}

.formulaire_formidable input[type=text], .formulaire_formidable select, .formulaire_formidable textarea {
	max-width: 100%;
	font-size: 12px;
}

.cgu h3.spip {
	margin-bottom: 20px;
	margin-top: 30px;
}

.org {
	 width: 15%;
	 height: auto;
}

.org:hover {
    transform: rotateY( 360deg );
    transition: all .4s ease-in-out;
}

.org img {
	width: 100%;
	height: auto;
	z-index: 100;
}

.carrousel a {
}

.carrousel a span {
	display: none;
}

.carrousel a:hover span {
	display: block;
	position: absolute;
	z-index: 900;
	top: -10px;
	width: 150px;
	left: 50%;
	margin-left: -75px;
	color: #126cb4;
	font-size: 10px;
	font-weight: bold;
	text-transform: uppercase;
	border: 2px solid #126cb4;
	background: #fff;
}