html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, main {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline; }
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {display: block;}
body {
	font-family: 'Open Sans', sans-serif;
	font-size:18px;
	font-weight:400;
	line-height: 1;
	margin:0 auto;}

*, *:before, *:after{box-sizing:border-box;}
ol, ul {list-style: none;}
blockquote, q {quotes: none;}

h1,h2,h3,h4,h5,h6, .title{margin:1em 0;font-weight:400;line-height:1.2em;font-family: 'Slabo 13px', serif;letter-spacing:0.04em;}
h1{font-size:2.2em;}
h2{font-size:1.8em;}
h3{font-size:1.5em;}
h4{font-size:1.3em;}
h5{font-size:1.2em;}
h6 {font-size:1.1em;}

img{display:block;height:auto;max-width:100%;}
a{color:inherit;text-decoration:none;}
svg{display:block;}
em, .italic{font-style: italic;font-weight:300;}
strong, .bold{font-weight:600;}
p{line-height:1.2em;margin:1.2em auto;}


.petit{font-size:0.8em;}
h1 .petit, h2 .petit, h3 .petit, h4 .petit, h5 .petit {font-family: 'Open Sans', sans-serif;font-size:16px;}
.upper{text-transform: uppercase;}
.slabo,
#homePage .blc2 .blocTxtWrap .blocTxt a,
#homePage .blc3 .fullWidthTxt a {font-family: 'Slabo 13px', serif;font-weight:400;}


/*******************************************************************************************************************/
/***** COLORS *******************************************************************************************************/
/*******************************************************************************************************************/
body{background:#fff;color:#000;}
svg{fill:#000;fill:currentColor;}

.blueBG, .blocTitle > *::before {background-color:rgba(146, 165, 165, 0.95); color:#fff;}
.darkBlueBG, .alert {background-color: rgba(123, 144, 144,.95);color:#fff;}
.pinkBG, #homePage .blc4 .blocTxt {background-color:rgba(105, 69, 89, 0.90); color:#fff;}
.pink {color:rgba(105, 69, 89, 1);}

/*******************************************************************************************************************/
/***** Widths *****************************************************************************************************/
/*******************************************************************************************************************/
#page {max-width:100%;overflow:hidden;}
.wide {max-width:800px;width:100%;}
.narrow {max-width:500px;width:100%;}
.fullWidth {width:100%;}




/*******************************************************************************************************************/
/***** SYSTEM MESSAGES **********************************************************************************************/
/*******************************************************************************************************************/
#system-message-container{margin:0 10%;padding-top:10%;}
	.alert {padding:40px;}
		.alert .close {display:none;}
		.alert h4 {margin-top:0;}

#system-message-container + article .articleBody .fullWidthIntro {margin-top:0;}

/*******************************************************************************************************************/
/***** LISTES *******************************************************************************************************/
/*******************************************************************************************************************/
article ul {list-style-type: none;line-height:1.2em;margin:1.2em auto 1.2em 1.2em;}
article ul li, .menu > li {position:relative;list-style-type: none;line-height:1.2em;margin:.5em auto;}
	article ul li::before, .menu > li::before {content: '';position:absolute;left:0;top:0;width:.4em;height:0.7em;margin:0 .5em 0 -1.2em;border-bottom:1px solid;}
article ul.boussole li, .menu > li {font-size:1.2em;margin:1em auto;}
	article ul.boussole li::before, article ul li::before, .menu > li::before{content: url('../images/boussole.svg');width:1em;height:1em;margin:.1em .5em 0 -1.2em;border-bottom:none;}
	article ul li::before {content: url('../images/spirale.svg');}
	.menu > li::before{content: url('../images/boussole_pink.svg');}


/*******************************************************************************************************************/
/***** Styling *****************************************************************************************************/
/*******************************************************************************************************************/
.underline::after, #homePage .blc4 h2::after {content:'';display:block;width:150px;border-bottom:1px solid;}
.bouton {font-size:1.2em;margin:1.8em auto;}
.bouton a, button.bouton{position:relative;display:block;width:100%;max-width:500px;padding:20px 50px;text-transform: uppercase;text-align:center;z-index:1;}
	.bouton a::before, button.bouton::before {content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-image:url('../images/button.png');background-size:cover;z-index:-1;opacity:0.9;
		transition:transform .2s, opacity .2s;
		transform-origin:0 50%;}
	.bouton a:hover::before {transform:scale(1.01,1);opacity:1;}
/*******************************************************************************************************************/
/***** TOP MENU ****************************************************************************************************/
/*******************************************************************************************************************/
#menu{position:fixed;top:40px;left:40px;margin-top:1.28em;height:40px;background:#fff;z-index:150;
	display:flex; align-items:center;}

	#menu .logo {position:relative;margin:0.4em 20px 0 0;z-index:5;}

	/*** BURGER btn with animation ******/
	#burger {position:relative;width:25px;font-size:8px;text-align:center;margin:0 20px;z-index:5;}
		#burger div{width:100%;border-top:1px solid;}
		#burger .middle {margin:5px 0;}
		#burger span {display:block;margin:5px 0 -5px;}
		#menu .logo svg{width:250px;height:60px;}

	#menuSlide{position:absolute;left:0;top:0;background:inherit;visibility:hidden;opacity:0;z-index:2;
		padding:50px 20px 20px;background-image:url('../images/menu_bg.png');background-size:auto 100%;background-position:center;background-repeat:no-repeat;
		box-shadow: 5px 5px 30px 0 rgba(0,0,0,.6);
		-webkit-transition: opacity .5s;
						transition: opacity .5s;}
	#menuSlide.visible {visibility: visible;}
	#menuSlide.open {opacity:1;}


	/** Menus **/
	.menu > li {margin-left:1em;}
		.menu > li > a, .menu > li > span {font-family: 'Slabo 13px', serif;font-weight:400;}
		.menu > li > ul {font-size: 0.8em;line-height:1.2em;}
			.menu > li > ul > li {margin:0.25em auto;}
		.menu .item-102 {margin-bottom:0.25em;}
		.menu .item-108 {margin-top:0.25em;}


/*******************************************************************************************************************/
/***** PAGES *******************************************************************************************************/
/*******************************************************************************************************************/
#page {position:relative;}
article p a {position:relative;}
	article p:not(.bouton) a::after{content:'';position:absolute;bottom:0;right:0;width:100%;height:3px;background-color:rgba(105, 69, 89, 0.5);}

/***** PAGE D'ACCUEIL *******************************************************************************************************/
.homeScreen {position:relative;display:flex;flex-direction: column;justify-content: center;height:80vh;overflow:hidden;}
	.homeScreen img {position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1;}
	.homeScreen h2 {margin:0;position:relative;z-index:2;color:#fff;margin-left:50%;margin-bottom:1.1em;line-height:.9em;}
		.homeScreen h2.underline::after {width:60px;border-bottom-width:2px;margin-top:0.3em;opacity:0.8;}
	.homeScreen::after{content:'';height:20vh;}

	#homePage .blocTitle > * {font-size:2.3em;}

	#homePage .blc2 {align-items:stretch;}
		#homePage .blc2 .blocTitle > * {margin-left:45%;width:40%;}
		#homePage .blc2 .blocImg {width:50%;}
		#homePage .blc2 .blocTxtWrap {margin-left:-5%;width:40%;}
			#homePage .blc2 .blocTxtWrap .blocTxt {height:100%;}
				#homePage .blc2 .blocTxtWrap .blocTxt a {font-size:1.3em;}
	#homePage .blc3 {overflow:hidden;}
		#homePage .blc3 .blocTitle > * {text-align:right;}
		#homePage .blc3 .blocTxtWrap .blocTxt {font-size:1.2em;text-align:justify;}
		#homePage .blc3 .blocImg img {position:absolute;}
		#homePage .blc3 .fullWidthTxt {position:relative;margin:40px auto;font-size:1.2em;z-index:5;}

	#homePage .blc4 {align-items:center;}
		#homePage .blc4 .blocImg {width:70%;margin:0;}
		#homePage .blc4 .blocTxtWrap {width:40%;margin-left:-25%;font-size:1.2em;}
			#homePage .blc4 h2 {line-height:0.7em;}
				#homePage .blc4 h2::after{width:50px;margin-top:0.3em;border-bottom-width:2px;opacity:0.8;}


/** All blocks **/
.bloc {margin:80px auto;display:flex;flex-wrap:wrap;align-items: flex-start;clear:both;}
	.blocTitle {position:relative;width:100%;}
		.blocTitle > *{position:relative;margin:0;padding:20px 50px;margin-left:30%;}
			.blocTitle > *::before{content: '';position:absolute;width:100%;left:0;top:-40px;bottom:0;z-index:-1;}
	.blocTxtWrap {position:relative;width:70%;display:flex;align-items: flex-start;z-index:2;}
		.blocTxt {padding:40px 50px;}
		.blocTxt > *:first-child, .blocTxt > ul:first-child > li{margin-top:0;}
	.blocImg {position:relative;width:30%;z-index:1;}
		.blocImg:first-child {margin-top:5em;}
		.blocImg .quote {position:absolute;left:0;top:0;margin:40px 50px;font-size:1.5em;max-width:22em;padding-left:3em;color:#fff;}
			.blocImg .quote::before {content:'"';font-size:5em;position:absolute;left:0;top:0;line-height:0.7em;}
			.blocImg .quoteAuth {display:flex;align-items: center;margin-top:1em;font-style: normal;font-size:0.5em;}
				.blocImg .quoteAuth::before{content:'';flex:1;margin-right:1.5em;border-bottom:1px solid;opacity:0.5;}
	.fullWidthTxt {width:100%;}
		.fullWidthTxt > * {width:100%;max-width:700px;margin:50px auto;}


/** Odd blocks **/
.blocOdd .blocTxtWrap {width:calc(50% + 40px);}
	.blocOdd .blocTxtWrap .blocTxt,
	.blocOdd .blocTitle > * {width:100%;max-width:700px;margin-left:auto;}
.blocOdd .blocImg {position:relative;width:calc(50% - 40px);z-index:1;}
	.blocOdd .blocImg img{max-width:110%;margin-left:-10%;}
.blocOdd .blocTitle {display:flex;justify-content: flex-end;padding-right:calc(50% - 40px);}
.blocOdd .blocTxtWrap {justify-content:flex-end;}


/*** Intro Bloc **/
.introFullText > *:first-child {margin-top:0;}
	/*** default Intro Bloc **/
	.defaultIntro {margin-top:40px;}
		.defaultIntro .blocTxt{display:flex;flex-wrap: wrap;}
			.defaultIntro .introIntroText {width:100%;margin:0;font-size:1.2em;}
				.defaultIntro .introIntroText::after {content:'';display:block;width:150px;border-bottom:1px solid;margin:30px 0;}
			.defaultIntro .introFullText {max-width:70%;}
			.defaultIntro .secondImg {width:30%;padding-left:40px;}
				.defaultIntro .secondImg img {max-width:160%;}

	/*** FullWidth Intro Bloc **/
	.fullWidthIntro {margin:10% auto 4% 35%;flex-direction:column;}
			.fullWidthIntro .blocTitle {padding:0;}
				.fullWidthIntro .blocTitle > *::before{content: none;display:none;}
				.fullWidthIntro .blocTitle > * {padding:0;margin:0;}

		.fullWidthIntro .introIntroText {max-width:750px;font-size:1.6em;margin:0 0 1.2em;}
		.fullWidthIntro .blocTxtWrap {width:auto;max-width:750px;}
		.fullWidthIntro .blocImg {position:absolute;top:0;left:0;width:100%;max-height:700px;z-index:-1;overflow:hidden;}


/***** CONTACT PAGE *******************************************************************************************************/


#contact-form legend {display:none;}
#contact-form .field-spacer .text {display:none;}
#contact-form .star {display:none;}
.form-validate .input,
.form-validate .control-group {display:flex;position:relative;}
	.form-validate .input label,
	.form-validate .control-label {width:150px;line-height:1.8em;padding:0.1em 0;margin: 0.2em 0;}
	.form-validate .controls {flex:1;}
	.form-validate input, .form-validate textarea {flex:1;padding:0 5px;background:transparent;color:inherit;font:inherit;border:1px solid #ccc;line-height:1.8em;padding:0.1em 0.5em;margin: 0.2em 0;
		width: 100%;}
		.form-validate input:focus, .form-validate textarea:focus{border-color:#fff;}
	.has-danger form-validate input,
	.has-danger .form-validate textarea {border-color: rgba(105, 69, 89, 1);}
	.form-validate .control-group .form-control-feedback {position:absolute;right:0;top:0;height:100%;font-size:.8em;color: rgba(105, 69, 89, 1);
		display:flex;align-items:center;pointer-events: none;}
	.form-validate .control-group #jform_contact_message-lbl .form-control-feedback {align-items:flex-start;top: .5em;}
	.form-validate button[type="submit"]{margin:0.5em 0 0.5em 150px;padding:.5em 1em;line-height:1em;max-width:none;width:auto;
		font:inherit;color:#fff;background-color:rgba(105, 69, 89, 0.90);cursor:pointer;border:none;outline:none;box-shadow: none;}

@media screen and (max-width: 490px) {
	.form-validate .control-group {display:block;}
	.form-validate .control-group .form-control-feedback {align-items:flex-start;top:.2em;height: auto;}
	.form-validate .input label,
	.form-validate .control-label {width: 100%;}
	.form-validate button[type="submit"] {margin-left:0;}
}


/*******************************************************************************************************************/
/***** FOOTER *******************************************************************************************************/
/*******************************************************************************************************************/
#footer {display:flex;flex-wrap: wrap;align-items:stretch;justify-content: space-between;max-width:1000px;margin:10% auto 0;clear:both;}
	.footerTitle{position:relative;width:100%;height:35px;display:flex;justify-content:space-between;align-items:center;margin:0 0 2em 0;}
		.footerTitle > svg {width:300px;height:72px;}
		.footerTitle > em {width:50%;font-size:1.2em;}
		.footerTitle::after{content:'';position:absolute;bottom:0;left:0;right:-300%;border-bottom:1px solid;}

	.footerInfo p:first-child{margin-bottom:2em;}
		.footerInfo > *, .footerMenu > li{margin:0.25em 0;}
	.footerInfo {font-size:1.1em;}
	.footerMenu {width:50%;}
		.footerMenu > li {margin-left:1em;}
		.footerMenu > li:nth-child(2){margin-bottom:1em;}

	.footerBottom {width:100%;margin-top:3%;;padding:.5em;text-align:center;}
		.footerBottom > * {display:inline-block;margin:0 0.5em;}








/*******************************************************************************************************************/
/***** END OF FILE ************************************************************************************************/
/*******************************************************************************************************************/
