/*==================================
/*==================================
=            Reset CSS            =
==================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.is-semantic { background: none!important; text-indent: -9999px!important; margin: 0!important; padding: 0!important; height: 0!important; line-height: 0!important; font-size: 0!important; }
.l-clear { clear: both!important; float: none!important; min-height: 0!important; margin: 0!important; border: none!important; padding: 0!important; height: 0; font-size: 0; width: 0; }
/*-----  End of Reset CSS  ------*/




/*=============================
=            Fonts            =
=============================*/
@font-face {
	font-family: 'Lato Regular';
	src: url('/fonts/lato-reg-webfont.eot');
	src: url('/fonts/lato-reg-webfont.eot?#iefix') format('embedded-opentype'),
		 url('/fonts/lato-reg-webfont.woff') format('woff'),
		 url('/fonts/lato-reg-webfont.ttf') format('truetype'),
		 url('/fonts/lato-reg-webfont.svg#LatoRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
	font-family: 'Lato Light';
	src: url('/fonts/lato-lig-webfont.eot');
	src: url('/fonts/lato-lig-webfont.eot?#iefix') format('embedded-opentype'),
		 url('/fonts/lato-lig-webfont.woff') format('woff'),
		 url('/fonts/lato-lig-webfont.ttf') format('truetype'),
		 url('/fonts/lato-lig-webfont.svg#LatoLight') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
	font-family: 'Lato Bold';
	src: url('/fonts/lato-bol-webfont.eot');
	src: url('/fonts/lato-bol-webfont.eot?#iefix') format('embedded-opentype'),
		 url('/fonts/lato-bol-webfont.woff') format('woff'),
		 url('/fonts/lato-bol-webfont.ttf') format('truetype'),
		 url('/fonts/lato-bol-webfont.svg#LatoBold') format('svg');
    font-weight: normal;
    font-style: normal;
}
/*-----  End of Fonts  ------*/




/*==============================
=            Styles            =
==============================*/
/*==========  Global  ==========*/
body { background: #d9dadb url(/img/bg.jpg) center 118px no-repeat; }
body.home { background-color: #ffffff; }
/* -- Buttons -- */
.btn { display: inline-block; text-decoration: none; background: #ffffff; border: 1px solid #ffffff; text-align: center; font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; padding: 17px 0; width: 300px; line-height: 20px; -webkit-transition: background 200ms ease, color 200ms ease; -moz-transition: background 200ms ease, color 200ms ease; -o-transition: background 200ms ease, color 200ms ease; transition: background 200ms ease, color 200ms ease; }
.btn.btn-hover:hover { background: #1e3969; color: #ffffff; }
.btn strong { font-weight: normal; font-family: 'Lato Bold'; }
.btn-small { height: 43px; line-height: 9px; }
.btn-blue { border-color: #1e3969; background: #1e3969; color: #ffffff; text-align: left; padding-left: 20px; }
.btn-blue.btn-hover:hover { background: #ffffff; color: #1e3969; }

/*==========  Header  ==========*/
header { width: 100%; background: #ffffff; height: 118px; }
header .inner { position: relative; width: 940px; margin: 0 auto; height: 118px; }
header .logo { position: absolute; top: 0; left: 0; display: block; width: 327px; height: 118px; background: url(/img/layout.png) 0 0 no-repeat; }
header .nav { position: absolute; top: 50%; margin-top: -20px; right: 0; width: 600px; height: 40px; text-align: right; }
header .nav a { display: inline-block; margin-right: 5px; height: 40px; padding: 0 10px; line-height: 40px; font-family: 'Lato Regular'; font-style: oblique; font-size: 17px; color: #1e3969; text-decoration: none; -webkit-transition: color 200ms ease; -moz-transition: color 200ms ease; -ms-transition: color 200ms ease; -o-transition: color 200ms ease; transition: color 200ms ease; }
header .nav a:last-child { margin: 0; }
header .nav a.active, header .nav a:hover { color: #ffffff; background: #dc2f34; }

/*==========  Footer  ==========*/
footer { max-width: 100%; margin: 0 auto; background: #87888a; height: 250px; }
footer .inner { width: 940px; margin: 0 auto; height: 250px; }
footer .inner ul { list-style-type: none; padding: 0; margin: 20px 0 0; width: 300px; float: left; }
footer .inner ul li a { line-height: 22px; text-decoration: none; font-family: "Lato Regular"; font-size: 13px; color: #ffffff; font-style: normal; -webkit-transition: color 200ms ease; -moz-transition: color 200ms ease; -o-transition: color 200ms ease; transition: color 200ms ease; }
footer .inner ul li a:hover { color: #1E3969; }

/*==========  BigBox  ==========*/
.bigbox { max-width: 1440px; margin: 0 auto; }
.bigbox.blue { background: #1e3969; }
.bigbox.red { background: #dc2f34; }
.bigbox.grey { background: #d9dadb; }
.bigbox.white { background: #ffffff; }
.bigbox-inner { position: relative; width: 940px; margin: 0 auto; padding: 40px 0;}
.bigbox-white-title { margin-bottom: 25px; font-family: "Lato Bold"; font-size: 16px; color: #1E3969; font-weight: bold; text-align: center; text-transform: uppercase; padding-bottom: 25px; border-bottom: 1px solid #1E3969; }

.bigbox-inner.bubble-top:before { position: absolute; top: -30px; right: 0; content: ''; width: 0; height: 0; border-style: solid; border-width: 0 40px 30px 20px; }
.bigbox-inner.bubble-bottom:after { position: absolute; bottom: -30px; left: 0; content: ''; width: 0; height: 0; border-style: solid; border-width: 30px 20px 0 40px; }
.bigbox-inner.bubble-bottom-right:after { position: absolute; bottom: -30px; right: 0; content: ''; width: 0; height: 0; border-style: solid; border-width: 30px 40px 0 20px; }

.bigbox.blue .bigbox-inner.bubble-top:before { border-color: transparent transparent #1e3a69 transparent; }
.bigbox.blue .bigbox-inner.bubble-bottom:after { border-color: #1e3a69 transparent transparent transparent; }
.bigbox.blue .bigbox-inner.bubble-bottom-right:after { border-color: #1e3a69 transparent transparent transparent; }

.bigbox.red .bigbox-inner.bubble-top:before { border-color: transparent transparent #dc2f34 transparent; }
.bigbox.red .bigbox-inner.bubble-bottom:after { border-color: #dc2f34 transparent transparent transparent; }
.bigbox.red .bigbox-inner.bubble-bottom-right:after { border-color: #dc2f34 transparent transparent transparent; }

.bigbox.grey .bigbox-inner.bubble-top:before { border-color: transparent transparent #d9dadb transparent; }
.bigbox.grey .bigbox-inner.bubble-bottom:after { border-color: #d9dadb transparent transparent transparent; }
.bigbox.grey .bigbox-inner.bubble-bottom-right:after { border-color: #d9dadb transparent transparent transparent; }

.bigbox.white .bigbox-inner.bubble-top:before { border-color: transparent transparent #ffffff transparent; }
.bigbox.white .bigbox-inner.bubble-bottom:after { border-color: #ffffff transparent transparent transparent; }
.bigbox.white .bigbox-inner.bubble-bottom-right:after { border-color: #ffffff transparent transparent transparent; }



/*==========  ColGrid  ==========*/
.col.mid { margin-left: 20px; margin-right: 20px; }
.col.logos { width: 150px; margin-right: 5px;}
.col.px150 { width: 150px; margin-right: 20px;}
.col.px300 { width: 300px; }
.col.px460 { width: 460px; }
.col.px540 { width: 540px; }
.col.px620 { width: 620px; }
.col.left { float: left; }
.col.right { float: right; }

/*==========  Homepage  ==========*/
/* -- Subheader -- */
.presentation { width: 940px; margin: 0 auto; height: 322px; line-height: 322px; }
.presentation span.vertical { display: inline-block; vertical-align: middle; font-family: "Lato Light"; font-size: 53px; color: #ffffff; font-style: oblique; line-height: 63px; }
.presentation span.vertical strong { font-weight: normal; font-family: 'Lato Bold'; }
/* -- In Bluebox -- */
.home-blue-col-left-text { font-family: "Lato Bold"; font-size: 16px; color: #ffffff; margin-bottom: 30px; line-height: 26px; }
.home-blue-col-right-text { font-family: "Lato Regular"; font-size: 16px; color: #ffffff; line-height: 26px; }
.home-blue-col-right-text strong { font-weight: normal; font-family: "Lato Bold"; }
/* -- In Redbox -- */
.home-red-toptext { font-family: "Lato Regular"; font-size: 18px; line-height: 26px; color: #ffffff; padding-bottom: 15px; border-bottom: 1px solid #ffffff; }
.home-red-toptext span { width: 16px; height: 16px; position: relative; top: -2px; display: inline-block; margin-right: 9px; vertical-align: middle; background: url(/img/layout.png) 0 -118px no-repeat; }
.home-red-btns .btn { display: block; height: 71px; line-height: 71px; float: left; margin-top: 20px; padding: 0; }
.home-red-btns .btn.mid { margin-left: 20px; margin-right: 20px; }
.home-red-btns .btn span { display: inline-block; vertical-align: middle; line-height: 20px; }
/* -- In Quotebox -- */
.bigbox.quote .bigbox-inner { padding: 70px 0 30px; }
.homeonly-wrapper { position: relative; width: 540px; float: right; }
.homeonly-quote-wrapper { position: relative; width: 540px; float: right; }
.home-quote-wrapper { position: relative; width: 860px; float: right; }
.homeonly-quote-wrapper:before { content: ''; display: block; width: 41px; height: 40px; position: absolute; top: 0; left: -59px; background: url(/img/layout.png) -16px -118px no-repeat; }
.home-quote-wrapper:before { content: ''; display: block; width: 41px; height: 40px; position: absolute; top: 0; left: -59px; background: url(/img/layout.png) -16px -118px no-repeat; }
.home-quote-text { font-family: "Lato Bold"; font-size: 16px; color: #1e3969; font-style: oblique; line-height: 28px; }
.home-quote-text p { margin-bottom: 5px; }
.home-quote-author { font-family: "Lato Regular"; font-size: 18px; color: #1e3969; font-style: oblique; }
.home-news-text { font-family: "Lato Bold"; font-size: 14px; color: #1e3969; line-height: 24px; }
/* -- In Contactbox -- */
.bigbox.contact { max-width: 100%; }
.home-contact-toptext { font-family: "Lato Regular"; font-size: 18px; color: #ffffff; margin-bottom: 15px; }
.home-contact-toptext span { width: 16px; height: 16px; position: relative; top: -2px; display: inline-block; margin-right: 9px; vertical-align: middle; background: url(/img/layout.png) 0 -118px no-repeat; }
.home-contact-input { margin-top: 3px; padding: 0 20px; width: 300px; height: 71px; border: 0; font-family: "Lato Regular"; font-size: 18px; color: #000000; }
.home-contact-input::-webkit-input-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.home-contact-input:-moz-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.home-contact-input::-moz-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.home-contact-input:-ms-input-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }

.home-contact-textarea { padding: 20px; width: 300px; height: 145px; border: 0; max-width: 300px; max-height: 145px; font-family: "Lato Regular"; font-size: 18px; color: #000000; }
.home-contact-textarea::-webkit-input-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.home-contact-textarea:-moz-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.home-contact-textarea::-moz-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.home-contact-textarea:-ms-input-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.home-contact-submit { border: 1px solid #1e3969; background: #1e3969; font-family: "Lato Regular"; font-size: 16px; color: #ffffff; text-transform: uppercase; width: 300px; height: 45px; text-align: left; padding-left: 20px; margin-top: 1px; cursor: pointer; -webkit-transition: background 200ms ease, color 200ms ease; -moz-transition: background 200ms ease, color 200ms ease; -o-transition: background 200ms ease, color 200ms ease; transition: background 200ms ease, color 200ms ease; }
.home-contact-submit:hover { background: #ffffff; color: #1e3969; }

.home-contact-map, .home-contact-coords { display: block; width: 300px; height: 145px; background: #ffffff; }
.home-contact-map { background: url(/img/layout.png) -327px 0px no-repeat; }
.home-contact-coords { margin-top: 4px; padding: 28px 20px; font-family: "Lato Regular"; font-size: 16px; color: #1e3969; line-height: 24px; }
.home-contact-coords span { color: #dc2f34; text-transform: uppercase; }

/*==========  Contact  ==========*/
.contact-red-toptext { font-family: "Lato Regular"; font-size: 18px; line-height: 26px; color: #ffffff; padding-bottom: 15px; border-bottom: 1px solid #ffffff; }
.contact-red-toptext span { width: 16px; height: 36px; position: relative; top: 0px; display: inline-block; margin-right: 9px; margin-bottom: 25px; vertical-align: top; background: url(/img/layout.png) 0 -118px no-repeat; float: left; }
.contact-contact-input { background: #d9dadb; margin-top: 3px; padding: 0 20px; width: 300px; height: 71px; border: 0; font-family: "Lato Regular"; font-size: 18px; color: #000000; }
.contact-contact-input::-webkit-input-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.contact-contact-input:-moz-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.contact-contact-input::-moz-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.contact-contact-input:-ms-input-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }

.contact-contact-textarea { background: #d9dadb; padding: 20px; width: 300px; height: 145px; border: 0; max-width: 300px; max-height: 145px; font-family: "Lato Regular"; font-size: 18px; color: #000000; }
.contact-contact-textarea::-webkit-input-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.contact-contact-textarea:-moz-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.contact-contact-textarea::-moz-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.contact-contact-textarea:-ms-input-placeholder { font-family: "Lato Regular"; font-size: 16px; color: #1e3969; text-transform: uppercase; }
.contact-contact-submit { border: 1px solid #1e3969; background: #1e3969; font-family: "Lato Regular"; font-size: 16px; color: #ffffff; text-transform: uppercase; width: 300px; height: 45px; text-align: left; padding-left: 20px; margin-top: 1px; cursor: pointer; -webkit-transition: background 200ms ease, color 200ms ease; -moz-transition: background 200ms ease, color 200ms ease; -o-transition: background 200ms ease, color 200ms ease; transition: background 200ms ease, color 200ms ease; }
.contact-contact-submit:hover { background: #ffffff; color: #1e3969; }
.contact-contact-msg { margin-top: 20px; text-align: center; font-family: "Lato Regular"; font-size: 16px; }
.contact-contact-msg.success { color: #1E3969; }
.contact-contact-msg.error { color: #DC2F34; }

.contact-contact-map, .contact-contact-coords { display: block; width: 300px; height: 145px; background: #d9dadb; }
.contact-contact-map { background: url(/img/layout.png) -327px 0px no-repeat; }
.contact-contact-coords { margin-top: 4px; padding: 28px 20px; font-family: "Lato Regular"; font-size: 16px; color: #1e3969; line-height: 24px; }
.contact-contact-coords span { color: #dc2f34; text-transform: uppercase; }

.hide { display: none; }

/*==========  Formation  ==========*/
.formation-col-left-text { font-family: "Lato Regular"; font-size: 16px; color: #1a171b; line-height: 24px; }
.formation-col-left-text p { margin-bottom: 5px; }
.formation-col-left-text a { font-family: "Lato Regular"; font-size: 16px; color: #1E3969; line-height: 24px; }
.formation-col-right-text { font-family: "Lato Regular"; font-size: 16px; color: #1E3969; line-height: 24px; }
.formation-col-right-text ul { padding: 0; margin: 10px 20px -5px; }

/*==========  Qui suis-je ?  ==========*/
.who-red-col-text { font-family: "Lato Regular"; font-size: 16px; color: #ffffff; line-height: 26px; }
.who-picbox { padding: 20px; position: relative; width: 300px; height: 309px; float: right; margin-right: 40px; margin-top: 40px; background: #ffffff; box-shadow: 0px 0px 7px 4px rgba(0, 0, 0, 0.15); -moz-box-shadow: 0px 0px 7px 4px rgba(0, 0, 0, 0.15); -webkit-box-shadow: 0px 0px 7px 4px rgba(0, 0, 0, 0.15); }
.who-picbox span { display: block; position: absolute; bottom: 0; left: 0; width: 300px; height: 60px; background: url(/img/layout.png) 0 -158px no-repeat; }
.who-white-col-text { margin-top: 80px; font-family: "Lato Regular"; font-size: 16px; color: #1a171b; line-height: 24px; }
.who-white-col-text strong { font-family: "Lato Bold"; font-size: 16px; font-weight: normal; }
.who-white-col-text p { margin-bottom: 10px; }

/*==========  Photo galery  ==========*/
.photo-item { margin-top: 20px; position: relative; overflow: hidden; }
.photo-item img { -webkit-transition: all 200ms ease; -moz-transition: all 200ms ease; -o-transition: all 200ms ease; transition: all 200ms ease; }
.photo-item a { width: 460px; height: 288px; cursor: pointer; position: absolute; top: 0; left: 0; }
.photo-item div.overlay { width: 460px; height: 288px; position: absolute; top: 0; left: 0; background: #DC2F34; opacity: 0; visibility: hidden; -webkit-transition: opacity 200ms ease; -moz-transition: opacity 200ms ease; -o-transition: opacity 200ms ease; transition: opacity 200ms ease; }
.photo-item:hover img { transform: scale(1, 1.25); -webkit-transform: scale(1.25, 1.25); -moz-transform: scale(1.25, 1.25); -o-transform: scale(1.25, 1.25); -ms-transform: scale(1.25, 1.25); }
.photo-item:hover div.overlay { opacity: 0.3; visibility: visible; }

/*-----  End of Styles  ------*/
