/* @import url(http://fonts.googleapis.com/css?family=Overlock:400,700,400italic,700italic); */
@import url(http://fonts.googleapis.com/css?family=Open+Sans:400,300,600,700);

/******************* NORMALIZE ******************************/
audio[controls],canvas,video {display: inline-block;*display: inline;*zoom: 1;}
html {overflow-y: scroll; /* 1 */-webkit-tap-highlight-color: rgba(0,0,0,0); /* 2 */-webkit-text-size-adjust: 100%; /* 3 */-ms-text-size-adjust: 100%;}
body {font-size: 100%; /* 1 */line-height: normal; /* 2 */margin: 0; /* 3 */}
body,input,button, textarea,select {font-family: sans-serif;}
img {border: 0; /* 1 */-ms-interpolation-mode: bicubic; /* 2 */}
a:focus {outline: thin dotted;}
a:hover,a:active {outline: 0;}
abbr[title] {border-bottom: 1px dotted;}
b, strong { font-weight: bold; }
blockquote {margin: 1em 40px;}
dfn {font-style: italic;}
mark {background: #ff0;color: #000;}
pre,code,kbd,samp {font-family: monospace, monospace; /* 1 */_font-family: 'courier new', monospace; /* 2 */font-size: 1em;}
pre {white-space: pre;white-space: pre-wrap;word-wrap: break-word;}
q {quotes: none;}
q:before,q:after {content: '';content: none;}
small {font-size: 75%;}
sub,sup {font-size: 75%;line-height: 0;position: relative;vertical-align: baseline;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}
ul,ol {margin: 1em 0; padding: 0 0 0 40px;}
dd { margin: 0 0 0 40px;}
nav ul,nav ol {    list-style: none;}
figure {    margin: 0;}
form {margin: 0;}
fieldset {margin: 0 2px;padding: 0.35em 0.625em 0.75em;}
legend {margin-left: -7px;}
button,input,select,textarea {font-size: 100%; margin: 0; vertical-align: baseline;  vertical-align: middle;}
button,input {    line-height: normal; overflow: visible;}
button,input[type="button"], input[type="reset"], input[type="submit"] {cursor: pointer; /* 1 */-webkit-appearance: button; /* 2 */}
input[type="checkbox"],input[type="radio"] {box-sizing: border-box;}
input[type="search"] {-webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box;}
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none;}
button::-moz-focus-inner,input::-moz-focus-inner {border: 0; padding: 0;}
textarea {overflow: auto; /* 1 */vertical-align: top; /* 2 */}
table {border-collapse: collapse;border-spacing: 0;}
th,td {padding: 0;text-align: left; vertical-align: middle;}
.clear{clear:both;}

/******************* GLOBAL ******************************/
body, input, select, textarea { font-family: 'Open Sans', sans-serif; }

body { background: #DDD;  }

.wrapper { width:960px; margin:auto; position:relative; }

a {color: #48B136;}

/******************* HEADER ******************************/

#header { position: absolute; top:0; left: 0;background: url(../files/design/top_bg.png) center top repeat-x; width: 100%; z-index: 10; padding-top: 12px;}
#header.small { position: fixed; background: url(../files/design/top_bg.png) center top repeat-x; width: 100%; z-index: 10; padding-top: 12px;}
#header #logo_small {display: none;}
#headerContent {width: 700px; float: right;}
#headerTop {height: 129px; text-align: right;}
#headerTop .social {margin-left: 10px;}
#header #navigation {position: relative; text-align: right;}
#header #navigation ul {margin: 15px 0 0 0; padding: 0;}
#header #navigation li {display: inline;}
#header #navigation li a{text-decoration: none; color: #FFF; font-weight:700; font-size: 14px; margin: 0 15px; opacity: 0.5;}
#header #navigation li a.active, #header #navigation li a:hover{opacity: 1;}
#header #navigation #arrow {position: absolute; bottom: -26px; left: 0; color: #48B136;}
#mobileMenu {display: none;}
#menuButton {display: none;}

#header.small {background: url(../files/design/top_bg.png) center bottom repeat-x; padding-top: 4px; height: 50px;}
#header.small #logo {display: none;}
#header.small #logo_small {display: inline;}
#header.small #headerTop {display: none;}
#header.small #navigation ul {margin-top: 10px;}

.slice {position: relative;}
.slice_down, .slice_next {position: absolute; top: 0; left: 0; width: 100%; height: 0px; background: #FFF; border-top: solid 5px #48B136; text-align: center}
.slice_next {top: auto; bottom: 0; background: #48B136; height: auto;}
.slice_next a {text-decoration: none; color: #FFF; text-transform: uppercase;}
.slice_down .arrow {position: absolute; left: 50%; top: -26px;}

/******************* FOOTER ******************************/

#footer {  }
.footer_col {float: left; width: 25%; padding: 20px 0; font-size: 12px; color: #AAA;}
.footer_col ul {list-style: none; margin: 10px 0 0 0; padding: 0;}
.footer_col a {text-decoration: none;}

/******************* CONTENU ******************************/

#content { background: #FFF; margin-top: 195px; padding: 60px 0; }
.content_left, .content_right {float: left; padding: 0 20px; width: 440px; font-size: 13px;}

.content_right, .contact_left {padding-top: 30px;}
.contact_left {width: 625px; padding-left:10px;}
.contact_right {width: 285px; padding-left: 0px;}

#content h1 {font-weight: 300;}

#content .contact_right h3 {margin: 0; font-weight: normal; color: #48B136;}
#content .contact_right p {margin: 0;}

.picture_slider {width: 440px;}

.carousel_slide a {display: block; width: 200px; height: 150px; padding: 20px;}
.carousel_slide img {width: 200px; height: 150px;}

.content2 ul {padding-left: 20px;}
.content2 ul li {list-style: none; background: url(../files/design/atout.png) center left no-repeat; padding-left: 20px;}

/******************* HOMEPAGE ***************************/

#homeBox {width: 100%; margin: 0 auto;}
.homeBg {display: none;}

#servicesContent, #reference_slider, #testimonial_slider, #about_slider, #about_menu, #job_slider, #contactContent, #access {width: 960px; margin: 0 auto;}

.slice {position: relative; background: #FFF;}
.slice .addLink {position: absolute; bottom:0; left: 0; background: #48B136; color: #FFF; padding: 10px;}
.slice .addLink:nth-of-type(2) {left: 200px;}
.slice .addLink:nth-of-type(3) {left: 400px;}
.slice .addLink:nth-of-type(4) {left: 600px;}

h2, h1.main {text-align: center; font-weight: 300; font-size: 45px; padding: 60px 0 30px 0; margin: 0;}
h1.main {padding-top: 40px;}
#servicesContent {background: url(../files/design/services_bg.png) left center no-repeat; min-height: 775px;}
.service {display: block; float: left; width: 320px; height: 130px;  background: url(../files/design/langverte_shadow.png) 111px center no-repeat; border: solid 0px #000; color: #000;}
.service span.icone {position: relative; display: block; float: left; width: 125px; height: 130px; background: url(../files/design/langverte.png) 20px 13px no-repeat; -webkit-transition: all 500ms; transition: all 500ms;}
.service span.icone em {display: block; position: absolute; top: 0; right: 0; width: 14px; height: 130px; background: url(../files/design/langverte_shadow.png) no-repeat;}
.service span.icone img {position: absolute; top:20px; right: 10px; width: 90px; height: 90px; -webkit-transition: all 500ms; transition: all 500ms;}
.service:hover span.icone {background-position: 0 13px;}
.service:hover span.icone img {right: 30px;}
.service span.content {display: block; float: left; width: 170px; padding: 13px 0 0 10px; font-size: 11px; }
.service span.content em {display: block; text-transform: uppercase; font-style: normal; font-size: 15px;}

.reference_slide a, .reference_slide p {position: relative; display: block; padding: 10px; width: 200px; height: 200px; margin: 0 auto; background: #FFF; border-radius: 10px; color: #FFF;}
.reference_slide a img {width: 200px; height: 200px; }
.reference_slide a .cache {display: none; position: absolute; top: 0; left: 0; width: 100%; height: 57%; border-radius: 10px; padding-top: 43%; text-align: center; font-size: 20px; font-weight: 700;}
.reference_slide a:hover .cache {display: block; background: rgba(72,177,54,0.5);}
.reference_slide a.edit {position: absolute; bottom:0px; left: 0px; width: auto; height: auto; z-index: 10; color: #FFF; background: #48B136;}

#about_menu {text-align: center; padding-top: 40px;}
#about_menu a {padding: 0 10px; text-decoration: none;}
#about_menu a:hover {text-decoration: underline;}
#about_slider {height: 100%;}
.about_slide {width: 960px;}
.about_silde h2 {padding-top: 20px;}
.about_slide .slide_content {position: relative; padding: 0 30px;}
.about_slide .col_left, .about_slide .col_right {float: left;}
.about_slide .col_left {width: 300px; text-align: center; padding-top: 20px;}
.about_slide .col_right {width: 600px;}
.about_slide_prev, .about_slide_next {position: absolute; top: 90px; left: 30px; text-decoration: none;}
.about_slide_next {left: auto; right: 30px;}

#testimonial_slider {margin-top: 60px; font-size: 25px; font-style: italic; text-align: center;}

#marquees {position: relative; height: 150px;}
.marquee, .marquee2 {position: absolute; top:20px; left:0; width: 100%; overflow: hidden;}
.marquee2 {top: 80px;}
.marquee span, .marquee2 span {padding: 0 250px; font-size: 30px; font-weight: 300;}

.job_slide .slide_content {padding: 0 10px;}
.job_slide h3 {text-align: center;}
.job_slide h4 {margin: 5px;}
.job_slide p, .job_slide ul {font-size: 13px;}
.job_slide ul {margin-top: 0;}
.apply {text-align: center; padding-top: 20px;}

#contactContent {background: url(../files/design/services_bg.png) center center no-repeat; padding-bottom: 50px; }
#contactContent .col_left, #contactContent .col_right {float: left; width: 500px;}
#contactContent .col_right {width: 460px; text-align: right; font-size: 13px;}
#contactContent label {display: block; width: 100px; float: left;}
#contactContent #captchaDiv label {width: 312px;}
#contactContent .formLine {padding-top: 10px;}
#contactContent input.text, #contactContent textarea {border: solid 1px #000; width: 390px;}
#contactContent textarea {height: 200px;}
.button {background-color: #48B136; color: #FFF; border: 0; border-radius: 5px; padding: 5px; text-decoration: none;}
.button:hover {opacity: 0.5;}
#contactContent .button {margin-left: 420px;}

#contactContent .error { color:red; }
#contactContent .success { color:#48B136; }

.right {text-align: right;}

#access {text-align: right; font-size: 20px;}

/* FICHE TECHNIQUE */

#link_fiche_technique {
	background-color: #48B136;
	text-align: center;
	border-radius: 5px;
	
	-webkit-transition: all 250ms ease-in-out;
    transition: all 250ms ease-in-out;
}

#link_fiche_technique a {
	color: white;
	display: block;
	padding: 20px;
	margin-top: 70px;
	text-decoration: none;
	font-size: 20px;
	border-radius: 5px;
}

#link_fiche_technique:hover {
	background-color: #9AD490;
}


/* TUNNNEL */

#tunnel {background: #FFF;}
#tunnel #header {margin-top: 10%;}
#logoTunnel {margin-left: 365px;}
#tunnel_fr, #tunnel_nl {position: absolute; display: block; top: 123px; color: #FFF; font-size: 45px; text-decoration: none;}
#tunnel_nl {right: 0;}
#tunnel_fr:hover, #tunnel_nl:hover {opacity: 0.5;}


.icone_box {}
.icone_map, .icone_map_hover {float: left; width: 66px; height: 66px; background: #EEE; border-left: solid 3px #48B136; opacity: 1; 
	-webkit-transition-duration: 0.5s;
	-moz-transition-duration: 0.5s;
	-o-transition-duration: 0.5s;
	-ms-transition-duration: 0.5s;
	transition-duration: 0.5s;	
}
.odd .icone_map {background: #F5F5F5;}
.icone_map_hover {display: none; opacity: 0;}
.icone_box span {display: block; float: left; width: 200px; height: 56px; font-size: 30px; padding: 10px 0 0 15px;}
.icone_box:hover .icone_map {display: none; opacity: 0;}
.icone_box:hover .icone_map_hover {display: inline; opacity: 1; background: #48B136;}

.fancybox {position: relative;}
.fancybox .zoom, .fancybox .zoom_hover {position: absolute; bottom: 0; left: 0; background: url(../files/design/fullscreen_stdby.png); width: 37px; height: 37px; opacity: 1;
	-webkit-transition-duration: 0.5s;
	-moz-transition-duration: 0.5s;
	-o-transition-duration: 0.5s;
	-ms-transition-duration: 0.5s;
	transition-duration: 0.5s;	
}
.fancybox .zoom_hover {background: url(../files/design/fullscreen_hover.png); opacity: 0;}
.fancybox:hover .zoom {opacity: 0;}
.fancybox:hover .zoom_hover {opacity: 1;}

.access_maps {width: 440px;}

.access_address {background: #F5F5F5; text-align: center; width: 460px; padding: 15px 0; margin: 10px; float: left;}
.access_address h2 {font-size: 16px; color: #48B136; padding: 0;}
.access_address p {font-size: 16px; padding: 0; margin: 0; line-height: 16px;}

.access_details {margin: 20px 0;}
.access_number {float: left; background: #EEE; width: 60px; height: 55px; color: #FFF; font-size: 35px; font-weight: 600; text-align: center; padding-top: 5px;}
.access_name, .access_links {float: left; width: 500px; padding-left: 10px; font-size: 20px;}
.access_name {padding-bottom: 7px;}
.access_links a {background: #48B136; color: #FFF; text-decoration: none; padding: 3px 10px; font-size: 15px; text-transform: uppercase;}

/* FANCYBOX */
		
		/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp
{
	padding: 0;
	margin: 0;
	border: 0;
	outline: none;
	vertical-align: top;
}

.fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 8020;
}

.fancybox-skin {
	position: relative;
	background: #f9f9f9;
	color: #444;
	text-shadow: none;
	-webkit-border-radius: 4px;
	   -moz-border-radius: 4px;
	        border-radius: 4px;
}

.fancybox-opened {
	z-index: 8030;
}

.fancybox-opened .fancybox-skin {
	-webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	   -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer, .fancybox-inner {
	position: relative;
}

.fancybox-inner {
	overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
	-webkit-overflow-scrolling: touch;
}

.fancybox-error {
	color: #444;
	font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	margin: 0;
	padding: 15px;
	white-space: nowrap;
}

.fancybox-image, .fancybox-iframe {
	display: block;
	width: 100%;
	height: 100%;
}

.fancybox-image {
	max-width: 100%;
	max-height: 100%;
}

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
	background-image: url('../files/design/fancybox/fancybox_sprite.png');
}

#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	margin-top: -22px;
	margin-left: -22px;
	background-position: 0 -108px;
	opacity: 0.8;
	cursor: pointer;
	z-index: 8060;
}

#fancybox-loading div {
	width: 44px;
	height: 44px;
	background: url('../files/design/fancybox/fancybox_loading.gif') center center no-repeat;
}

.fancybox-close {
	position: absolute;
	top: -18px;
	right: -18px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	z-index: 8040;
}

.fancybox-nav {
	position: absolute;
	top: 0;
	width: 40%;
	height: 100%;
	cursor: pointer;
	text-decoration: none;
	background: transparent url('../files/design/fancybox/blank.gif'); /* helps IE */
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	z-index: 8040;
}

.fancybox-prev {
	left: 0;
}

.fancybox-next {
	right: 0;
}

.fancybox-nav span {
	position: absolute;
	top: 50%;
	width: 36px;
	height: 34px;
	margin-top: -18px;
	cursor: pointer;
	z-index: 8040;
	visibility: hidden;
}

.fancybox-prev span {
	left: 10px;
	background-position: 0 -36px;
}

.fancybox-next span {
	right: 10px;
	background-position: 0 -72px;
}

.fancybox-nav:hover span {
	visibility: visible;
}

.fancybox-tmp {
	position: absolute;
	top: -99999px;
	left: -99999px;
	visibility: hidden;
	max-width: 99999px;
	max-height: 99999px;
	overflow: visible !important;
}

/* Overlay helper */

.fancybox-lock {
    overflow: hidden !important;
    width: auto;
}

.fancybox-lock body {
    overflow: hidden !important;
}

.fancybox-lock-test {
    overflow-y: hidden !important;
}

.fancybox-overlay {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	display: none;
	z-index: 8010;
	background: url('../files/design/fancybox/fancybox_overlay.png');
}

.fancybox-overlay-fixed {
	position: fixed;
	bottom: 0;
	right: 0;
}

.fancybox-lock .fancybox-overlay {
	overflow: auto;
	overflow-y: scroll;
}

/* Title helper */

.fancybox-title {
	visibility: hidden;
	font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	position: relative;
	text-shadow: none;
	z-index: 8050;
}

.fancybox-opened .fancybox-title {
	visibility: visible;
}

.fancybox-title-float-wrap {
	position: absolute;
	bottom: 0;
	right: 50%;
	margin-bottom: -35px;
	z-index: 8050;
	text-align: center;
}

.fancybox-title-float-wrap .child {
	display: inline-block;
	margin-right: -100%;
	padding: 2px 20px;
	background: transparent; /* Fallback for web browsers that doesn't support RGBa */
	background: rgba(0, 0, 0, 0.8);
	-webkit-border-radius: 15px;
	   -moz-border-radius: 15px;
	        border-radius: 15px;
	text-shadow: 0 1px 2px #222;
	color: #FFF;
	font-weight: bold;
	line-height: 24px;
	white-space: nowrap;
}

.fancybox-title-outside-wrap {
	position: relative;
	margin-top: 10px;
	color: #fff;
}

.fancybox-title-inside-wrap {
	padding-top: 10px;
}

.fancybox-title-over-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	padding: 10px;
	background: #000;
	background: rgba(0, 0, 0, .8);
}

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
	   only screen and (min--moz-device-pixel-ratio: 1.5),
	   only screen and (min-device-pixel-ratio: 1.5){

	#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
		background-image: url('../files/design/fancybox/fancybox_sprite@2x.png');
		background-size: 44px 152px; /*The size of the normal image, half the size of the hi-res image*/
	}

	#fancybox-loading div {
		background-image: url('../files/design/fancybox/fancybox_loading@2x.gif');
		background-size: 24px 24px; /*The size of the normal image, half the size of the hi-res image*/
	}
}

/***** RESPONSIVE *****/

@media screen and (max-width: 960px) {
	#servicesContent, #reference_slider, #testimonial_slider, #about_slider, #about_menu, #job_slider, #contactContent, #access {width: 100%;}
}

@media screen and (max-width: 720px) {

}

@media screen and (max-width: 640px) {
	.slide_home, .slide_job, .slide_corporate, #testimonial_slider {display: none;}
	
	#header {background: url(../files/design/top_bg.png) center bottom repeat-x; padding-top: 4px; height: 50px;}
	#header #logo {display: none !important;}
	#header #logo_small {display: inline !important;}
	#header #headerTop {display: none !important;}
	#header #navigation ul {margin-top: 10px !important; display: none;}
		
	#menuButton {display: inline;}
	#mobileMenu ul {	margin: 0; padding: 10px 0 0 0; background: #48B136; }
	#mobileMenu li, #mobileMenu a {display: block; list-style: none; width: 100%; margin: 0; padding: 0;}
	#mobileMenu a {background: #48B136; color: #FFF; padding: 5px 10px; text-decoration: none; border-top: solid 1px #FFF;}
	
	#tunnel .wrapper {width: 100%; text-align: center;}
	#tunnel #header {height: 180px; margin: 0;}
	#logoTunnel {margin: 0; width: 100%; text-align: center;}
	#tunnel_fr, #tunnel_nl  {position: relative; color: #48B136; top: 0; margin: 10px 0;}
}

