@font-face {
	font-family: icomoon;
	src: url('../fonts/icomoon.eot');
	src: url('../fonts/icomoond41d.eot?#iefix') format('embedded-opentype'),
		 url('../fonts/icomoon.woff') format('woff'),
		 url('../fonts/icomoon.ttf') format('truetype'),
		 url('../fonts/icomoon.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* ------------------------------------------------------------
		BALISE PRINCIPALE
------------------------------------------------------------ */
/** { }*/

/*
HACK CSS, en attendant de trouver mieux,
ceci bloque l'erreur qui se trouve plus haut dans la cascade.
*/



* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

html,
body {
	width: 100%;
	overflow-x: hidden;
}

body {
	font: 300 15px/1.75 'Heebo', sans-serif;
	color: #003300;

	background: #f6f6f6;

	-webkit-font-smoothing: antialiased;
	-webkit-tap-highlight-color: transparent!important;
}

h1 {
	margin: 0 0 1em 0;
	position: relative;

	font: 900 28px/36px 'Heebo', sans-serif;
	color: #006600;
	text-transform: uppercase;
	text-align: center;
}

h1 span {
	position: relative;
	display: block;
	margin: 0 auto;
	width: 100%;
	max-width: 480px;
	margin-top: 16px;

	font: 400 18px/28px 'Exo 2', sans-serif;
	color: #0061a1;
	text-transform: none;
}

h1 span:before {
	content: '';
	position: absolute;
	top: -8px;
	left: 50%;

	height: 2px;
	background: #aaaaaa;
	width: 100px;
	margin-left: -50px;
}

h2,
.h2 {
	margin: 1.75em 0 1em 0;

	font: 700 21px/32px 'Exo 2', sans-serif;
	color: #0560a7;
	text-transform: uppercase;
}

h3,
.h3 {
	margin: 1.75em 0 1em 0;

	font: 300 21px/1.2 'Exo 2', sans-serif;
	color: #0560a7;
}


p {
	margin: 0;
}

a,
strong a,
b a {
	color: #0061a1;
	text-decoration: none;
}

h2 a {
	color: inherit;
	text-decoration: underline;
}

a:hover,
strong a:hover,
b a:hover {
	text-decoration: underline;
}

hr {
	display: block;
	width: 100%;
	height: 1px;
	border: 0;
	margin: 48px 0 48px 0;
	background-color: #E2E2E2;
	clear: both;
}

dl {
	overflow: hidden;
}

dl dt {
	font-weight: 700;
	margin: 15px 0 0;
}

dl dd {
	padding-left: 15px;
}

dl p {
	margin: 0 0 3px;
}

dl.list-icons dd,
dl.list-icons dt {
	padding-left: 48px;
}

dl.list-icons dt {
	position: relative;
	font-size: 1.1em;
	line-height: 1.5em;
}

dl.list-icons i {
	position: absolute;
	line-height: inherit;
	font-size: 28px;
	color: #0560a7;
	text-align: center;
	top: 0;
	left: 0;
	width: 32px;
}

ul,
ol {
	padding: 0;
	margin: 0;
	list-style: none;
}

.list-counter {
	counter-reset: CounterList;
	padding-left: 3em !important;
}

.list-counter > li {
	position: relative;
	list-style-type: none;
	counter-increment: CounterList;
	min-height: 2.4em;
}

.list-counter > li:before {
	content: counter(CounterList);

	position: absolute;
	top: -0.25em;
	left: -3em;
	border-radius: 50%;
	text-align: center;
	width: 2em;
	height: 2em;

	line-height: 2em;
	font-size: inherit;
	font-weight: 700;
	color: #ffffff;

	background: #0560a7;
}


.rte {
	font-size: 16px;
	line-height: 1.618;
}

.rte ul {
	margin-top: 8px;
	margin-bottom: 12px;
	padding-left: 0;
}

.rte ol {
	padding-left: 36px;
	list-style: decimal;
}

.rte ul li,
ol li {
	position: relative;
	margin-bottom: 6px;
}

.rte ul li {
	padding-left: 36px;
}

.rte ul li:before {
	position: absolute;
	top: 0;
	left: 0;
	content: '\e905';
	font-family: 'icomoon';
	color: #0d79cd;
	display: inline-block;
	vertical-align: top;
	font-size: 1.5em;
	margin-right: 0.4em;
	line-height: 1;
}

.rte strong {
	font-weight: 700;
}

.rte em {
	font-style: italic;
}

.rte p {
	margin-bottom: 1em;
}

.container {
	max-width: 1164px;
	padding-left: 24px;
	padding-right: 24px;
}

.container-sm {
	max-width: 788px;
	padding-left: 24px;
	padding-right: 24px;
	margin: 0 auto;
}

.btn-container {
	text-align: center;
	margin: 30px 0 60px;
}

/* ---- BOUTONS ----------------------------*/

.btn {
	display: inline-block;
	padding: 7px 16px;
	font-size: 15px;
	line-height: 24px;
	font-family: 'Heebo', sans-serif;
	font-weight: 700;
}

.btn:hover {
	text-decoration: none;
}

.btn:focus,
.btn:active {
	outline: none;
}

.btn-container .btn {
	vertical-align: top;
	margin: 0 8px;
}

.btn-lg {
	padding: 16px 32px;
	font-size: 16px;
	text-transform: uppercase;
	letter-spacing: 1px;
	line-height: 24px;
	position: relative;
}

.btn-default {
	color: #ffffff;
	background: #006600;

	-webkit-transition: background .2s ease-out;
	-moz-transition: background .2s ease-out;
	-ms-transition: background .2s ease-out;
	-o-transition: background .2s ease-out;
	transition: background .2s ease-out;
}

.btn-default:hover {
	background: #003300;
}

.btn-default:active {
	background: #003300;
}

.btn-info {
	background: #0560a7;
	color: #ffffff;
}

.btn-info:hover {
	background: #055594;
}

.btn-info:active {
	background: #055594;
}

.btn-primary {
	position: relative;
	overflow: hidden;

	color: #ffeed7;
	background: #df2727;

	-webkit-transition: color .2s ease-in-out, background-color .2s ease-in-out, background-position .2s ease-in-out;
	-moz-transition: color .2s ease-in-out, background-color .2s ease-in-out, background-position .2s ease-in-out;
	-ms-transition: color .2s ease-in-out, background-color .2s ease-in-out, background-position .2s ease-in-out;
	-o-transition: color .2s ease-in-out, background-color .2s ease-in-out, background-position .2s ease-in-out;
	transition: color .2s ease-in-out, background-color .2s ease-in-out, background-position .2s ease-in-out;
}

.btn-primary:hover {
	background: #b31e1e;
}

.btn-success {
	background: #afd600;
	text-shadow: none;
	border-radius: 5px;
	font-weight: 700;
	color: #ffffff;
}

.btn-success:hover {
	background: #d65528;
}

.btn-success:active {
	background: #c7471a;
}


.btn .zmdi {
	vertical-align: top;
	font-size: 1.4em;
	line-height: 24px;
}

.right {
	margin-left: 15px;
}

.left {
	margin-right: 15px;
}


/* ------------------------------------------------------------
		TOOLBAR
------------------------------------------------------------ */

#tools {
	position: static;
	overflow: hidden;
	width: 100%;

	background: #999999;
}

#toolbar {
	padding: 8px 20px;
	overflow: hidden;
	position: static;
}

#toolbar a#menu-icon {
	display: none;
	margin-right: 15px;
	padding: 24px 15px;
	float: right;

	color: white;
	font-size: 18px;
	line-height: 24px;
	text-decoration: none;
	font-weight: 700;
	text-transform: uppercase;
}

#toolbar a#menu-icon .zmdi {
	font-size: 1.2em;
	vertical-align: top;
	line-height: 24px;
}

#toolbar_logo {
	display: none;
}

#toolbar .toolbar-phone-mobile {
	display: none;
}


/* ------------------------------------------------------------
		LANGUES
------------------------------------------------------------ */

.langages {
	float: right;
	margin-right: 16px;
}

.secondary_menu ul,
.langages ul {
	display: block;
	list-style: none;
	padding: 0;
	font-size: 0;
	margin: 0;
}

.secondary_menu ul li,
.langages ul li {
	margin: 0;
	vertical-align: top;
	display: inline-block;
}

.secondary_menu ul li a,
.langages ul li a {
	position: relative;
	display: block;
	color: #ffeed7;
	font-size: 14px;
	padding: 12px 12px;
	letter-spacing: 2px;
	line-height: 24px;
	font-family: 'Heebo', sans-serif;
	font-weight: 900;
}

.secondary_menu ul li a:hover,
.langages ul li a:hover {
	text-decoration: none;
	opacity: 0.8;
}

.secondary_menu ul li.selected a:after,
.langages ul li.selected a:after {
	content: '';
	display: block;
	position: absolute;
	background: #ffeed7;
	left: 12px;
	right: 12px;
	bottom: 8px;
	height: 2px;
}

/* ------------------------------------------------------------
		TOOLBAR
------------------------------------------------------------ */

.secondary_menu {
	float: left;
}

.secondary_menu ul li a {
	text-transform: uppercase;
}


#sidebar .langages,
#sidebar .secondary_menu {
	display: none;
}

/* ------------------------------------------------------------
		BREADCRUMB
------------------------------------------------------------ */

#breadcrumb-container {
	width: 100%;
	margin: 0;
	font-weight: 400;

	background: #003300;
	padding: 8px 32px;
}

#breadcrumb-container .container-fluid {
	overflow: hidden;
}

#breadcrumb-container a#home-button {
	display: block;

	overflow: hidden;
	float: left;
	width: 18px;
	height: 18px;
	margin: 3px 0 0 0;
	text-decoration: none;
}

#breadcrumb-container a#home-button:before {
	display: block;
	width: 18px;
	height: 18px;
	content: '';



	background: url('../img/_construct/favicon.png') no-repeat center center;
	background-size: 100% 100%;
}

#breadcrumbs {
	font: 300 14px/24px 'Heebo', sans-serif;
	color: #a0b0b7;
}

#breadcrumbs a {
	text-decoration: none;
	color: #ffffff;
	display: inline-block;
}

#breadcrumbs a.first {
	display: none;
}

#breadcrumbs a:hover {
	color: #1f86c9;
}

#breadcrumbs .separator {
	width: 24px;
	color: #59686f;
	text-align: center;
	display: inline-block;
}

#breadcrumbs .separator .zmdi {
	font-size: 16px;
	line-height: 24px;
	vertical-align: top;
}


/* ------------------------------------------------------------
		MAIN MENU
------------------------------------------------------------ */

#main-menu {
	margin: 24px 0;
	font-family: 'Heebo', sans-serif;
}

#main-menu-mobile {
	display: none;
}

#main-menu ul {
	padding: 0;
	position: relative;

	list-style: none;
}

#main-menu ul li {
	display: block;
	margin: 0;
}

#main-menu ul li a {
	margin: 0;
	padding: 8px 72px 8px 104px;
	position: relative;
	z-index: 1;
	min-height: 64px;

	text-decoration: none;
	text-transform: uppercase;
	font-size: 16px;
	line-height: 24px;
	font-weight: 700;
	color: #ffffff;
	display: block;
}

#main-menu ul li a:before {
	position: absolute;
	left: 40px;
	top: 8px;
	font-family: 'icomoon';
	border-radius: 48px;
	background: #0560a7;
	width: 48px;
	height: 48px;
	font-weight: normal;
	text-align: center;
	color: #ffeed7;
	line-height: 48px;
	font-size: 40px;
}

#main-menu ul li.main_menu_accueil a,
#main-menu ul li.main_menu_contact a {
	line-height: 48px;
}

#main-menu ul li.main_menu_accueil a:before {
	content: '\e905';
	font-family: 'icomoon';
}

#main-menu ul li.main_menu_construction a:before {
	content: '\e907';
	font-family: 'icomoon';
}

#main-menu ul li.main_menu_renovation a:before {
	content: '\e903';
	font-family: 'icomoon';
}

#main-menu ul li.main_menu_interieur a:before {
	content: '\e901';
	font-family: 'icomoon';
}

#main-menu ul li.main_menu_exterieur a:before {
	content: '\e906';
	font-family: 'icomoon';
}

#main-menu ul li.main_menu_contact a:before {
	font-size: 28px;
	font-family: 'Material-Design-Iconic-Font';
	content: '\f15a';
}

#main-menu ul li a:after {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	z-index: -1;

	background: rgb(22, 50, 68);
	background: -moz-linear-gradient(left, rgba(22, 50, 68, 1) 0%, rgba(28, 59, 78, 1) 100%);
	background: -webkit-linear-gradient(left, rgba(22, 50, 68, 1) 0%, rgba(28, 59, 78, 1) 100%);
	background: linear-gradient(to right, rgba(22, 50, 68, 1) 0%, rgba(28, 59, 78, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#003300', endColorstr='#006600', GradientType=1);

	opacity: 0;

	-webkit-transition: left 0.4s ease-out, opacity 0.4s ease-out;
	-moz-transition: left 0.4s ease-out, opacity 0.4s ease-out;
	-ms-transition: left 0.4s ease-out, opacity 0.4s ease-out;
	-o-transition: left 0.4s ease-out, opacity 0.4s ease-out;
	transition: left 0.4s ease-out, opacity 0.4s ease-out;
}

#main-menu ul li.selected a:after,
#main-menu ul li a:hover:after {
	left: 0;
	opacity: 1;
}

/* ------------------------------------------------------------
		HEADER
------------------------------------------------------------ */

#header {
	height: 360px;
	height: 40vh;
	min-height: 0px;
	max-height: 560px;
	position: relative;
}

#index #header {
	height: 480px;
	height: 60vh;
}

#contactpage #header {
	height: 0;
	min-height: 0 !important;
}

/* ---- HEADER SLIDER ---- */

#header_slider {
	position: absolute;
	width: 100%;
	left: 0;
	top: 0;
	bottom: 0;

	background: #1c3b4e;
}

#index #header_slider:after {
	content: '';

	position: absolute;
	width: 100%;
	left: 0;
	bottom: 0;
	height: 184px;
	z-index: 30;

	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(246, 246, 246, 1) 100%);
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(246, 246, 246, 1) 100%);
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(246, 246, 246, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#f6f6f6', GradientType=0);
}

#header_slider > div,
#header_slider > div > div,
#header_slider > div > div > div,
#header_slider .slider-container,
#header_slider .slider-pro,
#header_slider .sp-slides-container,
#header_slider .sp-mask,
#header_slider .sp-slides,
#header_slider .sp-image-container,
#header_slider .sp-slide {
	height: 100% !important;
}

#header_slider .sp-layer {
	width: 100% !important;
}

#header_slider .sp-image {
	max-width: 100%!important;
	height: auto !important;
}

#header_slider .sp-layer .btn {
	margin: 0 15px;
	vertical-align: top;
}

p.sp-layer {
	color: #fff;
	padding: 10px;
	width: 100%;
	font-size: 14px;
}

#header_slider .sp-slides {
	opacity: 0.5;
}

#header_slider div.sp-slide {
	background-position: 50% center !important;
}

/* ---- HEADER CONTENT ---- */

#header_content {
	text-align: center;
	position: absolute;
	width: 100%;
	left: 0;
	top: 50%;
	margin-top: -100px;
	z-index: 300;
}

#index #header_content {
	top: 40%;
}

#header_content_title {
	font-family: 'Heebo', sans-serif;
	color: #ffffff;
	font-weight: 700;
	font-size: 48px;
	line-height: 1;
	margin: 0;
}

#header_content_desc {
	margin: 0;

	color: #ffeed7;
	line-height: 1.2;
	font-size: 28px;
	font-weight: 400;
	font-family: 'Exo 2', sans-serif;

}

@media(max-width:1440px) {
	#header_content_desc {
		font-size: 24px;
	}
}

@media(max-width:1199px) {
	#header_content_desc {
		font-size: 18px;
	}
}

#header_content .btn-container {
	margin-top: 40px;
	margin-bottom: 0;
}

#header_content .btn {
	margin: 0 15px 15px;
}

/******* FIX ********/

#content .slider-container {
	height: 0;
	padding-bottom: 56.25%;
	margin-bottom: 120px;
	position: relative; }

#content .slider-pro {
	position: absolute;
	top: 0;
	bottom: 0; }

#content .sp-slides-container,
#content .sp-image-container,
#content .sp-mask,
#content .sp-slides,
#content .sp-slide,
.galery_full .slider-pro,
.galery_full .sp-slides-container,
.galery_full .sp-image-container,
.galery_full .sp-mask,
.galery_full .sp-slides,
.galery_full .sp-slide {
	height: 100% !important;
	width: 95%;
}

#content .sp-slide img {
	margin-top: 0 !important;
}


.galery_full {
	display: block;
	clear: both;
}

#content .galery_full {
	height: 450px;
	margin: 40px 0;
}

#content .galery_full > div {
	position: absolute;
	left: 0;
	right: 0;
	width: 100%;
}

.galery_full .slider-container {
	height: 450px !important;
	padding-bottom: 0 !important;
	margin-bottom: 24px;
}

.sp-buttons {
	bottom: 0;
	position: absolute !important;
	z-index: 10;
}

.sp-button {
	width: 14px !important;
	height: 14px !important;
	border-color: white !important;
}

.sp-selected-button {
	background: white !important;
}

/* ---- PHONE MOBILE ---- */

aside.mobile {
	width: 100%;
	padding: 0 30px;
	text-align: center;
	display: none;
}


/* ------------------------------------------------------------
		CONTENT
------------------------------------------------------------ */

#site-content {
	position: relative;
	/* J'uilise un border au lieu d'un padding pour
	   contourner un bug au scroll dans Safari sur tablette. */
	border-left: 360px solid #006600;
}

main#content {
	display: block;
	position: relative;
	background: none;
	padding-bottom: 96px;
	padding-top: 72px;
}

#index main#content {
	position: relative;
	padding-top: 0;
	top: -100px;
	margin-bottom: -100px;
}


#home_links {
	position: relative;
	z-index: 100;
	font-size: 0;
	padding: 0 12px;
	margin-bottom: 72px;
}

#home_links > div {
	margin-left: -6px;
	margin-right: -6px;
}

#home_links article {
	width: 25%;
	padding: 0 6px;
	vertical-align: top;
	display: inline-block;
}

#home_links article .type_5 {
	float: none;
	width: auto;
	min-height: initial;
	margin: 0;
}

#home_links article .type_5 .cc_title h3 a {
	min-height: 60px;
	padding: 6px 56px;
}

/* ---- SIDEBAR ---- */

#sidebar {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	height: 100%;
	width: 360px;
	padding-bottom: 15px;
	overflow-y: auto;
	background: #006600;

	box-shadow: 0 0 29px rgba(0, 0, 0, 0.2);
}


#sidebar .sidebar-phone {
	display: block;
	padding: 4px 8px 4px 4px;
	margin: 36px;
	overflow: hidden;
	font-family: 'Heebo';
	text-decoration: none;
	background: #afd600;
	border-radius: 36px;
}

#sidebar .sidebar-phone .zmdi {
	float: left;
	font-size: 32px;
	border-radius: 50%;
	background: #fff;
	color: #afd600;
	line-height: 60px;
	width: 60px;
	text-align: center;
}

#sidebar .sidebar-phone span {
	display: block;
	color: #0560a7;
	margin-top: 4px;
	font-weight:700;
	font-size: 28px;
	line-height: 32px;
	letter-spacing: -1px;
}

#sidebar .sidebar-phone small {
	display: block;
	color: #006600;
	font-weight: 300;
	line-height: 1;
	font-size: 24px;
}


#sidebar .sidebar-phone-mobile {
	display: none;
}

#sidebar .btn-container {
	margin-bottom: 0;
	padding: 0 24px;
}

#sidebar .btn-container .btn {
	margin: 0;
}

/* ---- LOGO ---- */

#logo {
	display: block;
	padding: 20px 24px;
	background: #003300;
}

#logo img {
	width: 100%;
	max-width: 220px;
	margin: 0 auto;
}

/* ---- ACTU ---- */

#actus {
	padding-bottom: 72px;
}

#actus .h2 {
	color: #006600;
	font-size: 21px;
	line-height: 1.33;
	margin: 0 0 8px;
	text-transform: uppercase;
}

#actus .type_8 {
	margin: 0;
	min-height: 0;
}

#actus .type_8 .cc_title h3 {
	letter-spacing: 0;
}

#actus .type_8 .cc_excerpt {
	min-height: 72px;
}

#actus .type_8 .cc_read_more {
	display: block;
	text-align: right;
	padding: 12px 24px 0;
}

#actus .type_8 .cc_read_more a {
	font-size: 13px;
	margin-left: 8px;
}

#actu_facebook > div {
	display: block;
	background: white;
	padding: 12px;
	text-align: center;
}

@media(max-width:991px) {
	#actu_facebook {
		margin-top: 30px;
		text-align: center;
	}
	#actu_facebook > div {
		width: 364px;
		display: inline-block;
	}
	#actu_facebook .fb_iframe_widget_fluid span,
	#actu_facebook .fb_iframe_widget iframe {
		width: 100% !important;
	}
}

#form .pull-right .img-responsive {
	margin: 56px auto 0;
}


/* ------------------------------------------------------------
		COMMENTAIRES
------------------------------------------------------------ */

#comments_box {
	padding-bottom: 96px;
}

#comments_box .h2 {
	color: #006600;
	font-size: 24px;
}

/* ------------------------------------------------------------
		FOOTER
------------------------------------------------------------ */

#footer {
	width: 100%;
	padding-bottom: 72px;
	font-size: 12px;
	line-height: 1.5;
	color: #86959e;
	text-align: center;
	background: #eeeeee;
}

#footer_credits {
	margin: 0;
}

#footer_credits p {
	line-height: 24px;
}

#footer_credits strong {
	color: #006600;
	font-weight: 700;
}

#footer_credits a {
	color: #0560a7;
	text-decoration: underline;
}

#footer_credits a:hover {
	text-decoration: none;
}

#footer_buttons {
	margin: 0;
	padding-bottom: 36px;
	font-size: 0;
}

#footer_buttons .btn {
	display: inline-block;
	font-family: 'Exo 2', sans-serif;
	width: 49.3548%;
	padding: 20px;
	font-size: 20px;
	text-transform: uppercase;
}

@media(max-width:991px) {
	#footer_buttons .btn {
		padding: 20px 10px;
		font-size: 16px;
	}
}

#footer_buttons .btn-info {
	margin-right: 1.2904%;
}

#footer_buttons .btn .zmdi {
	font-size: 1.25em;
}



.footer_menu {
	overflow: hidden;
	padding-bottom: 36px;
	text-align: left;
	font-size: 0;
}

.footer_menu .col-xs-6 {
	float: none;
	display: inline-block;
	vertical-align: top;
	text-align: left;
}

.footer_menu .h2 {
	margin: 0;
	font: 700 17px/24px 'Exo 2', sans-serif;
	color: #0560a7;
	text-transform: uppercase;
}

.footer_menu .h2 > a {
	margin: 0 0 8px 0;
	display: block;
	color: inherit;
}

.footer_menu .h2 > a:hover {
	color: #006600;
	text-decoration: none;
}

@media(max-width:991px) {
	.footer_menu .h2,
	#adresse-footer h2 {
		font-size: 13px !important;
		line-height: 18px;
	}
}

.footer_menu ul.level_1 {
	padding: 0;
	margin: 0;
	list-style: none;
}

@media(max-width:991px) {
	.footer_menu ul.level_1 {
		padding-bottom: 8px;
	}
}

.footer_menu ul.level_1 li {
	padding-bottom: 6px;
	margin: 0;
	text-transform: none;
	font-size: 14px;
	line-height: 15px;
	font-family: 'Heebo', sans-serif;
	font-weight: 300;
}

.footer_menu ul.level_1 li a {
	color: #003300;
}

.footer_menu ul.level_1 li a:hover {
	text-decoration: none;
	opacity: 0.75;
}

#footer_main_menu {
	padding: 36px 0;
	margin-bottom: 48px;
	background: #999999;
}

#footer_main_menu article {
	display: inline-block;
	vertical-align: top;
	padding: 0 6px;
	margin: 0;
	width: 25%;

	text-transform: none;
	font-size: 14px;
	line-height: 15px;
	font-family: 'Heebo', sans-serif;
	font-weight: 300;
}

#footer_main_menu .type_3 > .cc_title h3 {
	font-size: 17px;
	line-height: 24px;
}

#footer_main_menu .type_3 > .cc_title h3 a {
	padding-left: 32px;
}

#footer_main_menu .type_3 > .cc_title h3 a,
#footer_main_menu .type_6 .cc_title h3 a {
	color: white;
	display: block;
}

#footer_main_menu .type_6 .cc_title h3 {
	font-size: 13px;
	line-height: 15px;
	font-family: 'Heebo', sans-serif;
	font-weight: 300;
	padding: 0 0 5px;
}

#footer_main_menu .type_3 .cc_title h3 a:hover,
#footer_main_menu .type_6 .cc_title h3 a:hover {
	text-decoration: none;
	opacity: 0.75;
}

#footer_main_menu .type_3 > .cc_title h3 a {
	display: block;
	position: relative;
}

#footer_main_menu .type_3 > .cc_title h3 a:before {
	/*			content: '\e905';*/
	width: 32px;
	position: absolute;
	top: 0;
	left: 0;
	display: block;

	text-align: center;
	font-family: 'icomoon';
	line-height: inherit;
	font-size: 1.2em;
}

.cc_title article:first-child a:after {
	content: '\e907';
}

.cc_title .main_menu_renovation a:after {
	content: '\e903';
}

.cc_title .main_menu_interieur a:after {
	content: '\e901';
}

.cc_title .main_menu_exterieur a:after {
	content: '\e906';
}

#footer_main_menu .type_3 > .cc_excerpt ul {
	padding-left: 32px;
}

#footer_main_menu .cc_read_more {
	display: none;
}

#adresse-footer h2 {
	color: #0061a1;
	font-size: 17px;
	margin: 0 0 0 0;
}

#adresse-footer p {
	color: #003300;
	font-size: 14px;
	font-family: 'Heebo', sans-serif;
	font-weight: 300;
}



/* -------------------- MISCELLANEOUS ---------------------- */

/* ------------------------------------------------------------
		CATEGORY
------------------------------------------------------------ */

.cc_read_more .separator {
	display: none;
}

/* ------------------------------------------------------------
		FORM
------------------------------------------------------------ */

form {
	max-width: 364px;
	margin: 24px auto 0;
}

form textarea,
form input[type="text"],
form input[type="email"],
form input[type="number"],
form input[type="date"],
form input[type="tel"],
form input[type="file"],
form select {
	display: block;
	width: 100%;
	border: none;
	border-radius: 0;
	min-height: 40px;
	padding: 4px 10px;
	box-shadow: initial;
	background: #ffffff;

	color: #003300;
	font-family: 'Heebo', sans-serif;
	font-size: 100%;

	-webkit-appearance: none;
}

form input[type="file"] {
	cursor: pointer;
	line-height: 24px;
	padding-top: 8px;
	padding-bottom: 8px;
	font-size: 14px;
}

form input[type="file"]::-webkit-file-upload-button {
	cursor: pointer;
	background: #eeeeee;
	border: none;
	padding: 0 12px;
	font-family: 'Heebo', sans-serif;
	-webkit-appearance: none;
	border-radius: 0;
	font-size: 13px;
	line-height: 24px;
	color: #006600;
}


form textarea {
	resize: vertical;
	max-height: 280px;
}

form textarea:focus,
form input:focus,
form select:focus {
	outline: none;
	border-color: #0061a1;
}

form textarea:focus,
form input[type="text"]:focus,
form input[type="email"]:focus,
form input[type="number"]:focus,
form input[type="date"]:focus,
form input[type="tel"]:focus,
form input[type="file"]:focus,
form select:focus {
	box-shadow: 0 0 7px rgba(5, 96, 167, 0.33);
}

form table,
form tr {
	width: 100%;
}

form tr td {
	display: block;
}


form label {
	width: 100%;
	display: block;
	padding: 4px 20px 4px 0;
	vertical-align: middle;
	font-weight: 300;

	font-family: 'Heebo', sans-serif;
	line-height: 24px;
}

form p.notice_data_information,
form .input,
form .the_textarea {
	padding-bottom: 10px;
}

form .help {
	display: none;
}

form select::-ms-expand {
	display: none;
}


form select {
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	-o-appearance: none;
	appearance: none;
	background: white;
}

form .type_civilite .input,
form .type_select .input {
	position: relative;
}

form .type_civilite .input:after,
form .type_select .input:after {
	content: '\f2f9';
	display: block;
	position: absolute;
	right: 12px;
	top: 0;
	font-family: 'Material-Design-Iconic-Font';
	font-size: 20px;
	line-height: 40px;
	pointer-events: none;
}

form .type_civilite .input:after {
	line-height: 32px;
}

form .label { padding-top: 8px; }

form input[type="radio"] {
	display: none;
}

form input[type="radio"] + label {
	padding-left: 36px;
	display: inline-block;
	position: relative;
	cursor: pointer;

	line-height: 32px;
}

form input[type="radio"] + label:before {
	content: '';
	display: block;
	cursor: pointer;
	height: 18px;
	width: 18px;
	border: 2px solid #a12641;
	position: absolute;
	top: 6px;
	left: 6px;

	border-radius: 50%;
}

form input[type="radio"] + label:after {
	content: '';
	display: block;
	height: 12px;
	width: 12px;
	position: absolute;
	top: 11px;
	left: 11px;

	cursor: pointer;
	background: #a12641;
	border-radius: 50%;

	-webkit-transform: scale(0);
	-moz-transform: scale(0);
	-ms-transform: scale(0);
	-o-transform: scale(0);
	transform: scale(0);
	-webkit-transition: all .2s ease-out;
	-moz-transition: all .2s ease-out;
	-ms-transition: all .2s ease-out;
	-o-transition: all .2s ease-out;
	transition: all .2s ease-out;
}

form input[type="radio"]:checked + label:after {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
}

.input img {
	margin: 5px 0 0 0;
	border: 1px solid #ccc;
}

.the_info {
	font-size: 11px;
	color: #006600;
	opacity: 0.75;
	line-height: 12px;
	padding-bottom: 8px;
}

.obligatoire {
	color: #e8311e;
	margin-right: -12px;
}


.asterisque {
	width: 100%;
	margin: 10px 0 0 0;
	font-size: 12px;
	color: #e8311e;
}

.submit {
	text-align: center;
}

input[type="submit"],
.submit input {
	border: none;
	width: 100%;
	margin: 10px 0 0;
	padding: 8px 0;
	border-radius: 0;

	color: #ffeed7;
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
	text-align: center;
	font-family: 'Exo 2', sans-serif;
	text-transform: uppercase;

	background: #df2727;
	cursor: pointer;
	-webkit-appearance: none;

	-webkit-transition: color .3s ease-out, background .3s ease-out;
	-moz-transition: color .3s ease-out, background .3s ease-out;
	-ms-transition: color .3s ease-out, background .3s ease-out;
	-o-transition: color .3s ease-out, background .3s ease-out;
	transition: color .3s ease-out, background .3s ease-out;
}

input[type="submit"]:active,
input[type="submit"]:hover,
.submit input:active,
.submit input:hover {
	background: #b31e1e;
}

/* ------------------------------------------------------------
		ERROR MESSAGE
------------------------------------------------------------ */

#applicationMessage #errors {
	color: #fff;
	padding: 0 0 0 0;
}

#applicationMessage #errors li {
	list-style: none;
	padding: 5px 0 5px 40px;
	margin: 0 0 0 0;
	background: none;
	font-weight: bold;
	background: #d62822 url(../img/_construct/error.png) no-repeat;
	margin-bottom: 2px;
}

#applicationMessage #messages {
	background-color: #61bb5f;
	border: 1px solid #489a46;
	border-radius: 4px;
	padding-left: 15px;
	color: #fff;
}

#applicationMessage #messages li {
	list-style: none;
	padding: 5px 10px;
	margin: 0 0 0 0;
	background: none;
	font-weight: bold;
}

#applicationMessage #messages h2 {
	margin: 0;
	font-size: 24px;
	color: #fff;
}

#applicationMessage #messages p {
	margin: 0;
	opacity: .78;
}


/* ------------------------------------------------------------
		CLIENT TESTIMONIAL
------------------------------------------------------------ */

#block_article {
	overflow: hidden;
	width: 100%;
}

/* ------------------------------------------------------------
		PAGINATION
------------------------------------------------------------ */

.pages {
	width: 100%;
	font-size: 0;
	text-align: center;
	margin: 30px 0 0;
}

.pages span {
	margin: 0 3px 0 3px;
	line-height: 24px;
	height: 24px;
	width: 24px;
	font-size: 15px;
	font-weight: 400;
	vertical-align: top;
	display: inline-block;
	vertical-align: top;
}


.pages span.page_suivante a:before,
.pages span.page_precedente a:before {
	content: '\f2fb';
	font: normal normal normal 24px/24px 'Material-Design-Iconic-Font';
	color: #333333;
	width: 20px;
	display: block;
	vertical-align: middle;
}

.pages span.page_precedente a:before {
	content: '\f2fa';
}

.pages span.page_precedente a,
.pages span.page_suivante a {
	overflow: hidden;
	width: 20px;
	height: 24px;
	line-height: 24px;
	display: block;
	text-decoration: none;
}

.pages span.page a {
	display: block;
	width: 24px;
	text-decoration: none;
	background: white;
}

.pages span.page_back a {
	margin: 0 340px;
}

.pages span.selected_page {
	color: #ffeed7;
	background: #0560a7;
}

.pages span.page a:hover {
	color: #ffeed7;
	background: #0560a7;
}

/* ------------------------------------------------------------
		TOOLS
------------------------------------------------------------ */

/* ------------------ social feed ------------------ */

#sharethis {
	overflow: hidden;
	float: right;
	padding: 8px 0;
	text-align: center;
	font-size: 0;
}

#sharethis a.stbar {
	display: inline-block;
	vertical-align: top;
	height: 32px;
	margin: 0 0 0 8px;
	width: 32px;
	overflow: hidden;
	border: 2px solid #ffeed7;
	border-radius: 32px;

	color: #ffeed7;
	text-decoration: none;

	-webkit-transition: all 0.25s ease-out;
	-moz-transition: all 0.25s ease-out;
	-ms-transition: all 0.25s ease-out;
	-o-transition: all 0.25s ease-out;
	transition: all 0.25s ease-out;
}

#sharethis a.stbar:hover {
	background: #ffeed7;
	color: #0560a7;
}

#sharethis a.stbar:before {
	display: block;
	content: '';
	width: 100%;

	font: normal normal normal 18px/28px 'Material-Design-Iconic-Font';
	color: inherit;
	text-align: center;
}

#sharethis a.stbar img {
	visibility: hidden;
	display: none;
}

#sharethis a.email:before {
	content: '\f15a';
}

#sharethis a.facebook:before {
	content: '\f343';
}

#sharethis a.twitter:before {
	content: '\f360';
}

#sharethis a.sharethis:before {
	content: '\f35b';
}

/* ------------------ SCROLL TO TOP ------------------ */

#a_scrolltotop {
	height: 48px;
	width: 48px;
	bottom: 8px;
	right: 8px;

	color: #ffffff;
	text-decoration: none;

	background: #0560a7;
	z-index: 2000;

	-webkit-transition: all .2s ease-out;
	-omz-transition: all .2s ease-out;
	-ms-transition: all .2s ease-out;
	-o-transition: all .2s ease-out;
	transition: all .2s ease-out;
}

#a_scrolltotop:before {
	display: block;
	content: '\f303';
	width: 48px;

	font: normal normal normal 28px/48px 'Material-Design-Iconic-Font';
	color: inherit;
	text-align: center;
}

#a_scrolltotop:hover {
	background: #055594;
}

#a_scrolltotop span {
	display: none !important;
}

/* ------------------------------------------------------------
		MISC
------------------------------------------------------------ */

.gm-style div {
	-webkit-box-sizing: initial;
	-moz-box-sizing: initial;
	box-sizing: initial;
}

.gm-style p {
	margin: 0;
}

.clear {
	clear: both;
}

.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

.clearfix {
	display: block;
}

/* close commented backslash hack */

/* ---- GOOGLEMAP ---- */

#googlemap {
	margin: 0;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;

	overflow: hidden;
}

#googlemap > div {
	height: 100%;
}

#googlemap > div > div {
	width: 100% !important;
	height: 100% !important;
}

/* ---- FACEBOOK ---- */

.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget span iframe[style] {}

/* ---- Reponsive Iframe ---- */

.iframe-container {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 0;
	width: 100%;
	height: 0;
	overflow: hidden;
	margin-bottom: 15px;
}

.iframe-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ---- ICONE CRAYON dans le DATEPICKER ----*/

.Zebra_DatePicker .dp_header .dp_caption:before {
	content: '';
	display: inline-block;
	height: 18px;
	width: 18px;
	vertical-align: middle;
	margin-right: 8px;

	background: url(../img/_construct/icon-edit.html) no-repeat center center;
}

/* ------------------------------------------------------------
		MODIFS PROPRE À CE TEMPLATE
------------------------------------------------------------ */

.img-full-screen {
	padding-bottom: 42.3%;
}

.img-full-screen img {
	position: absolute;
	left: 0;
	width: 100%;
	height: auto;
}

/* ---- Formulaire FIXED ----*/

#mini-form {
	display: block;
	position: fixed;
	width: 352px;
	height: 463px;

	bottom: 72px;
	right: -352px;
	background: #ffffff;

	z-index: 300;

	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	transition: all .3s ease-out;
}

#mini-form.open {
	right: 0;
	box-shadow: 0 0 29px rgba(0, 0, 0, 0.2);
}

#mini-form #container-form-mini-form {
	padding: 20px;
}

#mini-form #container-form-mini-form p {
	margin-top: 0;
	line-height: 18px;
	font-size: 14px;
}

#mini-form #container-form-mini-form p.notice_data_information {
	font-size: 10px;
	float: right;
	width: 60%;
	line-height: 1.2;
}


#mini-form form textarea,
#mini-form form input[type="text"],
#mini-form form input[type="email"],
#mini-form form input[type="number"],
#mini-form form input[type="date"],
#mini-form form input[type="tel"],
#mini-form form select {
	min-height: 32px;
	background: #f6f6f6;
	color: #003300;
}

#mini-form .submit input,
#mini-form .asterisque,
#mini-form form .input,
#mini-form form .the_textarea,
#mini-form form label {
	width: 60%;
	float: left;
	font-size: 14px;
}

#mini-form form .type_select .input:after {
	line-height: 32px;
	top: 0;
}

#mini-form .asterisque {
	font-size: 10px;
	float: right;
	margin-top: 4px;
}

#mini-form form textarea {
	height: 80px;
	resize: none;
}

#mini-form form label {
	width: 40%;
	padding-top: 7px;
	padding-bottom: 7px;
	text-align: left;
	line-height: 18px;
}

#mini-form .submit input {
	float: right;
	color: #ffeed7;
	background: #df2727;
}

#mini-form .type_telephone_prefix {
	position: relative;
	padding-bottom: 16px;
	display: block;
	overflow: hidden;
}

#mini-form .type_telephone_prefix .label {
	position: static;
}

#mini-form .type_telephone_prefix .the_info {
	position: absolute;
	bottom: 8px;
	width: 100%;
}

#btn-deplie {
	position: absolute;
	left: -56px;
	top: 463px;
	width: 463px;
	display: block;
	padding: 8px 15px;

	line-height: 40px;
	font-size: 20px;
	font-weight: 700;
	font-family: 'Exo 2', sans-serif;
	text-transform: uppercase;
	text-align: center;
	color: #ffeed7;
	text-decoration: none;
	background: #df2727;

	-webkit-transform: 	rotate3d(0,0,1,-90deg);
	-moz-transform: 	rotate3d(0,0,1,-90deg);
	-ms-transform: 		rotate3d(0,0,1,-90deg);
	-o-transform: 		rotate3d(0,0,1,-90deg);
	transform: 			rotate3d(0,0,1,-90deg);

	-webkit-transform-origin: 	0 0;
	-moz-transform-origin: 		0 0;
	-ms-transform-origin: 		0 0;
	-o-transform-origin: 		0 0;
	transform-origin: 			0 0;
}

#btn-deplie:before {
	content: '\e902';
	width: 40px;
	font-size: 28px;
	font-weight: 700;
	font-family: 'icomoon', sans-serif;
	border-radius: 50%;
	display: inline-block;
	vertical-align: top;
	background: #ffffff;
	color: #df2727;
}

#btn-deplie:before {
	margin-right: 12px;
}

#btn-deplie:after {
	content: '\f2fc';
	font-family: 'Material-Design-Iconic-Font';
	font-size: 24px;
	display: inline-block;
	vertical-align: top;
	color: #ffeed7;
	margin-left: 20px;
}

#mini-form.open #btn-deplie:after {
	content: '\f2f9';
}

/* ------------------------------------------------------------
		ICÔNES PERSO
------------------------------------------------------------ */

[class^="icon-"],
[class*=" icon-"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'icomoon' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.icon-belgium:before {
	content: "\e900";
}

.icon-drill:before {
	content: "\e901";
}

.icon-euro:before {
	content: "\e902";
}

.icon-house:before {
	content: "\e903";
}

.icon-medal:before {
	content: "\e904";
}

.icon-okdo:before {
	content: "\e905";
}

.icon-tree:before {
	content: "\e906";
}

.icon-wall:before {
	content: "\e907";
}

.icon-worker:before {
	content: "\e908";
}



/***** TABLEAUX ******/

.table {
	background: #ffffff;
	margin: 12px 0 24px;
}

.table tr th,
.table tr td {
	font-size: 0.85em;
	padding: 8px 16px;
	border: 1px solid #eee;
}

.table tr th,
.table.first-col tr td:first-child {
	background: #fff;
	color: #003300;
	font-weight: 700;
	font-size: 0.85em;
}


/***** STEPS ********/

#steps {
	overflow: hidden;
	font-size: 0;
	text-align: center;
	padding-left: 0;
	margin-left: -12px;
	margin-right: -12px;
}

#steps li {
	display: inline-block;
	width: 33.33333%;
	padding: 0 12px;

	list-style: none;
	font-size: 1rem;
	vertical-align: top;
	font-size: 15px;
	line-height: 20px;
}

#steps li img {
	margin-bottom: 12px;
}


.ui-widget-content {
	z-index: 3000 !important;
}

.ui-widget-content li a {
	font-size: 14px;
}

.banners .bannerImage img {
	height: auto !important;
	max-width: 100% !important;
}

.no-mobile {
	display: block;
}

.display-mobile {
	display: none;
}


#banner-inner {
	margin-bottom: 56px;
	padding-left: 50%;
	overflow: hidden;
	background: #006600;
	position: relative;
	border-radius: 8px; }
	#banner-inner > a {
		display: block;
		position: absolute;
		z-index: 1;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		text-decoration: none; }
	#banner-inner .banner-inner-content {
		position: relative;
		background: #006600;
		padding: 24px;
		z-index: 1; }
		#banner-inner .banner-inner-content:before {
			content: '';
			position: absolute;
			right: 100%;
			top: 0;
			z-index: -1;
			width: 72px;
			height: 100%;

			background: url('../img/_construct/banner-inner-arrow-left.png') no-repeat center left;
			background-size: 100% 100%; }
		#banner-inner .banner-inner-content p {
			margin: 0; }
		#banner-inner .banner-inner-content .banner-inner-title {
			padding: 0 0 16px;
			position: relative;

			font-weight: 700;
			font-size: 26px;
			line-height: 28px;
			color: white;
			font-family: 'Exo 2', sans-serif; }
			#banner-inner .banner-inner-content .banner-inner-title:after {
				content: '';
				height: 3px;
				background: #0c79cc;
				width: 72px;
				position: absolute;
				bottom: 8px;
				left: 0; }
		#banner-inner .banner-inner-content img {
			position: absolute;
			right: 100%;
			z-index: -2;
			top: 0;
			max-width: 100%;
			width: auto;
			height: auto; }
		#banner-inner .banner-inner-content ol {
			color: white;
			list-style: none;
			padding: 12px 0 12px 12px; }
			#banner-inner .banner-inner-content ol li {
				padding-left: 32px;
				position: relative;
				font-size: 19px;
				line-height: 23px; }
				#banner-inner .banner-inner-content ol li:after {
					content: '\e905';
					font-family: 'icomoon';
					color: #0c79cc;
					font-size: 24px;
					line-height: 20px;
					width: 20px;
					text-align: center;
					position: absolute;
					top: 0px;
					left: 0; }

	#banner-inner .banner-inner-macaron {
		background: #afd600;
		color: white;
		margin: 0;
		position: absolute;
		top: -28px;
		left: -108px;
		width: 300px;
		line-height: 18px;
		padding: 56px 0 8px;
		text-align: center;
		z-index: 1;
		transform: rotate(-35deg); }

	#banner-inner .btn-container {
		margin: 0;
		text-align: left; }
		#banner-inner .btn-container .btn {
			margin: 0;
			padding: 6px 48px 6px 28px;
			border-radius: 6px;
			line-height: 20px;
			text-transform: none;
			position: relative;
			text-align: center;
			font-size: 16px; }
			#banner-inner .btn-container .btn span {
				color: white;
				display: block;
				font-size: 1.25em;
				text-transform: uppercase; }
			#banner-inner .btn-container .btn .zmdi {
				color: white;
				display: block;
				text-transform: uppercase;
				position: absolute;
				margin: -12px 0 0;
				top: 50%;
				right: 16px; }

.visible-sm {
	display: none;
}

#cookie_bottom_bar {
	border-top: none !important;
}