/* CONTENT */

.content-wrapper {
	/*min-height: 100%;*/
	opacity: 1;
	-webkit-transform: translateY(0);
	-moz-transform: translateY(0);
	transform: translateY(0);
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
.content-wrapper.homepage {
	min-height: 0;
	position: absolute;
	top: 158px; left: 0; bottom: 0; right: 0;
}
.loading .content-wrapper {
	opacity: 0;
	-webkit-transform: translateY(-20px);
	-moz-transform: translateY(-20px);
	transform: translateY(-20px);
}

.the-content {
	font-size: 14px;
	line-height: 18px;
}
.the-content .cta {
	font-size: 16px;
	max-width: auto;
}
.single .the-content .cta {
	max-width: 316px;
}
.wrapper .content-wrapper .backlink {
	font-size: 10px;
	margin-left: -30px;
	padding-top: 40px;
	top: -73px;
	width: 60px;
}


/* HOMEPAGE */

.sidebar {
	padding: 17px 0 16px;
}
.sidebar .identity {
	display: block;
}
.sidebar .logo {
	margin-bottom: 10px;
}
.sidebar .logo img {
	width: 242px;
}
.sidebar .baseline {
	font-size: 12px;
}


.slider-hp {
	top: 168px;
}
.slider-hp .infos {
	margin-top: -115px;
}
.slider-hp .infos .title {
	font-size: 34px;
	margin-bottom: 18px;
}
.slider-hp .infos .baseline {
	font-size: 18px;
	line-height: 24px;
	margin-bottom: 24px;
}
.slider-hp .infos .baseline .desktop {
	display: block;
}
.slider-hp .infos .baseline .mobile {
	display: none;
}
.slider-hp .infos .cta {
	font-size: 18px;
	padding: 10px 16px;
}


/* PRESTATIONS */

.prestations {
	font-size: 0;
	padding-bottom: 20px;
}
.prestations .prestation {
	display: inline-block;
	vertical-align: top;
	width: 50%;
}
.prestations .prestation:before {
	display: none;
}
.prestations .prestation:after {
	background: transparent;
	border: 1px solid #dddddd;
	height: 20px;
	opacity: 1;
	width: 20px;
	z-index: 50;
	-webkit-transition: all 0.5s ease 0.5s;
	-moz-transition: all 0.5s ease 0.5s;
	-o-transition: all 0.5s ease 0.5s;
	transition: all 0.5s ease 0.5s;
}
.loading .prestations .prestation:after {
	opacity: 0;
}
.prestations .prestation:nth-child(even):after {
	border-right: none;
	border-top: none;
	top: auto; bottom: -1px; left: -1px;
}
.prestations .prestation:nth-child(odd):after {
	border-left: none;
	border-bottom: none;
}
.prestations .prestation:nth-child(even):last-child:after {
	display: none;
}
.prestations .prestation .title {
	font-size: 21px;
	height: 50px;
	line-height: 24px;
	overflow: hidden;
}
.prestations .prestation .subtitle {
	font-size: 14px;
}
.prestations .prestation .the-content {
	height: auto;
}
.prestations .prestation .the-content p {
	height: 128px;
	overflow: hidden;
}

/* Single */

.prestations.single,
.references.single {
	border: 12px solid #f7f7f7;
}
.prestations.single .inner-content,
.references.single .inner-content {
	padding: 100px 10% 60px;
}
.prestations.single .prestation,
.references.single .reference {
	width: auto;
}
.prestations.single .prestation .title {
	height: auto;
	overflow: visible;
}
.prestations.single .prestation .the-content {
	height: auto;
}
.prestations.single .prestation .the-content p {
	height: auto;
	overflow: visible;
}

/* PRESENTATION */

.presentation {
	padding: 0;
}
.presentation .content {
	padding: 35px 10%;
}
.presentation .title {
	font-size: 21px;
	line-height: 24px;
	margin-bottom: 18px;
}
.the-content h1 {
	font-size: 18px;
	text-transform: uppercase;
}
.the-content h2 {
	font-size: 16px;
	margin-top: 30px;
	text-transform: uppercase;
}
.the-content h3,
.the-content h4 {
	font-size: 15px;
	margin-bottom: 8px;
	margin-top: 20px;
}
.the-content h5,
.the-content h6 {
	font-size: 14px;
	margin-bottom: 8px;
}


/* REFERENCES */

.references {
	padding: 28px 0 91px;
}
.references .reference {
	max-width: 750px;
	margin: 0 auto;
}
.references .reference:before {
	left: 50%;
	margin-left: -26px;
	width: 51px;
}
.references .reference:after {
	height: 51px;
	left: 50%;
	margin-top: -25px;
	margin-left: -1px;
	width: 1px;
}
.references.listing .reference > a {
	font-size: 0;
	padding: 8px 35px 7px;
	position: relative;
}
.references.listing .reference:first-child > a {
	padding-top: 8px;
}
.references.listing .reference > a:hover {
	background: none;
}
.references.listing .reference > a:before {
	background: #f2f2f2;
	content: '';
	display: block;
	opacity: 0;
	position: absolute;
	top: 0; left: 0; bottom: 0;
	width: 50%;
	z-index: 10;

	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
.references.listing .reference > a:hover:before {
	opacity: 1;
}
.single.references .reference a {
	font-size: inherit;
}
.references .reference .infos,
.references .reference .the-content {
	display: inline-block;
	position: relative;
	vertical-align: middle;
	width: 50%;
	z-index: 50;
}
.references .reference > a .infos {
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
.references .reference > a:hover .infos {
	color: #49952a;
}
.references .reference .the-content {
	padding-left: 7px;
}
.references .reference .title {
	font-size: 21px;
	margin-bottom: 0;
}
.references .reference .cat {
	font-size: 14px;
}

.filters-list {
	background: #f7f7f7;
	border-top: 1px solid #dcdcdc;
	font-size: 0;
	text-transform: uppercase;
	padding: 12px 0;
}
.filters-list .title {
	display: inline-block;
	font-size: 12px;
	font-weight: 600;
	text-align: center;
	width: 47%;
}
.filters-list .title span {
	background: transparent url('../images/title-filtres.png') no-repeat right center;
	padding-right: 15px;
}
.filters-list .filters {
	display: inline-block;
	font-size: 12px;
	width: 53%;
}
.filters-list .filters-inner {
	max-width: 835px;
}
.filters-list .filter {
	font-size: 12px;
	margin: 0 10px;
}

/* CONTACT */

.references .reference .contact-form .title {
	border-bottom: 1px solid #ececec;
	font-size: 30px;
	margin-bottom: 30px;
	padding-bottom: 40px;
}
.references .reference .contact-form .form-el {
	display: inline-block;
	margin: 32px 0 0;
	padding: 0 10px;
	vertical-align: top;
	width: 50%;
}
.references .reference .contact-form .message {
	display: block;
	width: auto;
}
.references .reference .contact-form hr {
	border: 0;
	border-top: 1px solid #ececec;
	margin: 32px 10px 0;
}
.references .reference .contact-form input[type="submit"] {
	background: #ffffff url('../images/send-btn.png') no-repeat -400px 0;
	border: 5px solid #000000;
	display: block;
	height: 55px;
	font-size: 20px;
	font-weight: 700;
	line-height: 42px;
	width: 250px;
	margin: 50px auto 0;
	text-transform: uppercase;
	-webkit-transition: background-position 0.5s ease, color 0.5s ease 0.1s;
	-o-transition: background-position 0.5s ease, color 0.5s ease 0.1s;
	transition: background-position 0.5s ease, color 0.5s ease 0.1s;
}
.references .reference .contact-form input[type="submit"]:hover {
	background-position: 0 0;
	color: #ffffff;
}

.references.contact .reference .infos p {
	display: inline-block;
	vertical-align: top;
	width: 50%;
}
.references.contact .reference .infos p + p {
	padding-left: 10px;
}



.references.single.contact .inner-content {
	padding: 150px 20px 35px;
}


/* ---------- RESPONSIVE > 900px ---------- */

@media screen and (min-width: 900px) {

	/* GLOBAL */
	.global {
		height: auto;
	}
	.wrapper {
		background-color: #f7f7f7;
		height: 100%;
		overflow: hidden;
		position: fixed;
		top: 0; right: 0; bottom: 0; left: 244px;
	}
	.wrapper .bg {
		display: block;
		overflow: hidden;
		position: absolute;
		left: 380px; top: 0; bottom: 0; right: 0;
	}
	.wrapper .bg img {
		display: block;
		height: 100%;
		max-height: 100%;
		min-height: 100%;
		opacity: 1;
		width: auto;
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		transform: translateX(0);
		-webkit-transition: all 1.5s ease 0.5s;
		-moz-transition: all 1.5s ease 0.5s;
		-o-transition: all 1.5s ease 0.5s;
		transition: all 1.5s ease 0.5s;
	}
	.loading .wrapper .bg img {
		opacity: 0;
		-webkit-transform: translateX(-30px);
		-moz-transform: translateX(-30px);
		transform: translateX(-30px);
	}
	.prestations.single,
	.references.single {
		border-width: 20px;
	}
	.content-wrapper {
		overflow: auto;
		position: absolute;
		top: 0; left: 0; bottom: 0;
		max-width: 730px;
		z-index: 10;
	}
	.content {
		min-height: 100%;
		z-index: 10;
	}
	.single .content {
		height: 100%;
	}
	.content-wrapper.homepage {
		height: 100%;
		top: 0;
	}
	.content-wrapper.presentation .content {
		padding: 60px 10%;
	}
	.content-wrapper.single.references {
		max-width: 600px;
	}
	.content-wrapper.single.references.contact {
		max-width: none;
	}
	.home .content-wrapper {
		max-width: none;
	}
	.wrapper .single.content-wrapper .backlink {
		font-size: 10px;
		-webkit-transition: all 0.2s ease;
		-o-transition: all 0.2s ease;
		transition: all 0.2s ease;
	}
	.wrapper .single.content-wrapper .backlink span {
		-webkit-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.wrapper .single.content-wrapper .backlink:hover {
		-webkit-transform: translateY(3px);
		-moz-transform: translateY(3px);
		transform: translateY(3px);
	}
	.wrapper .single.content-wrapper .backlink:hover span {
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.wrapper .single.content-wrapper .backlink:hover span + span {
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	.mCustomScrollBox>.mCSB_scrollTools {
		width: 10px;
		-webkit-transition: all 0.5s ease 0.6s;
		-moz-transition: all 0.5s ease 0.6s;
		-o-transition: all 0.5s ease 0.6s;
		transition: all 0.5s ease 0.6s;
	}
	.loading .mCustomScrollBox>.mCSB_scrollTools {
		width: 0;
	}


	/* SIDEBAR */

	.sidebar,
	.sidebar.home {
		padding-top: 94px;
		position: fixed;
		top: 0; left: 0; bottom: 0;
		width: 244px;
		z-index: 10;
	}
	.sidebar .identity {
		padding: 0 20px;
	}
	.sidebar .logo {
		margin-bottom: 16px;
	}
	.loading .sidebar .logo,
	.loading .sidebar .baseline {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	.loading .home .sidebar .logo,
	.loading .home .sidebar .baseline {
		opacity: 0;
		-webkit-transform: translateY(-20px);
		transform: translateY(-20px);
	}
	.sidebar .logo img {
		height: auto;
		max-width: 100%;
	}
	.sidebar .baseline {
		font-weight: normal;
		font-size: 11px;
		line-height: 18px;
	}

	/* Nav */
	.sidebar .layer {
		background: #ffffff;
		display: block;
		opacity: 1;
		position: relative;

		-moz-transition:all 1s ease 0.5s;
		-webkit-transition:all 1s ease 0.5s;
		-ms-transition:all 1s ease 0.5s;
		-o-transition:all 1s ease 0.5s;
		transition:all 1s ease 0.5s;
	}
	.loading .home .sidebar .layer {
		opacity: 0;
	}
	.sidebar .layer .navigation {
		padding: 100px 0;
		position: relative;
		top: 0; right: 0; bottom: 0; left: 0;
		width: auto;
	}
	.sidebar #menu-sidebar-menu {
		border-top: 1px solid #f1f1f1;
		border-bottom: 1px solid #f1f1f1;
		padding: 25px 0;
	}
	.sidebar .layer li {
		opacity: 1;
		-webkit-transform: none;
		-moz-transform: none;
		transform: none;
	}

	.sidebar .layer a {
		color: #aeaeae;
		font-size: 15px;
		line-height: 70px;
		opacity: 1;
		padding: 0 24px;
		text-align: left;
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		transform: translateX(0);
		-webkit-transition: all 0.5s ease;
		-moz-transition: all 0.5s ease;
		-o-transition: all 0.5s ease;
		transition: all 0.5s ease;
	}
	.sidebar .layer a:hover,
	.sidebar .layer .active a,
	.post-type-archive-prestations .sidebar .layer .menu-item-21 a,
	.single-prestations .sidebar .layer .menu-item-21 a,
	.single-post .sidebar .layer .menu-item-22 a {
		color: #49952a;
		font-weight: bold;
	}
	.sidebar .layer a:hover {
		padding-left: 34px;
	}
	.sidebar .menu .hamburger {
		display: none;
	}
	.sidebar .layer.active .navigation .logo-nav {
		display: none;
	}
	.sidebar .layer.active .navigation li:first-child {
		padding-top: 15px;
	}
	.sidebar .layer .navigation .logo-nav {
		display: none;
	}

	/* HOMEPAGE */

	.content-wrapper.homepage {
		position: relative;
	}
	.slider-hp {
		top: 0;
	}

	/* PRESTATIONS */

	.prestations {
		padding-bottom: 0;
	}

	/* REFERENCES */

	.references {
		padding: 0;
	}
	.references .content {
		padding: 100px 0 50px;
	}
	.references.single .content {
		padding-top: 0;
	}
	.swipe-links {
		display: block;
	}
	.swipe-links .link {
		font-size: 0;
	}
	.references .swipe-links .link a {
		background: transparent url('../images/previous.png') no-repeat top left;
		color: #aeaeae;
		display: block;
		font-size: 10px;
		height: 44px;
		line-height: 44px;
		padding-left: 30px;
		position: absolute;
		left: -34px; top: -79px;
		text-transform: uppercase;
		width: 150px;
		-webkit-transition: padding 0.3s ease;
		-o-transition: padding 0.3s ease;
		transition: padding 0.3s ease;
	}
	.references .swipe-links .link a:hover {
		padding-left: 20px;
	}
	.references .swipe-links .link + .link a {
		background: transparent url('../images/next.png') no-repeat top right;
		left: auto; right: -34px;
		padding-left: 0;
		padding-right: 30px;
		text-align: right;
		-webkit-transition: padding 0.3s ease;
		-o-transition: padding 0.3s ease;
		transition: padding 0.3s ease;
	}
	.references .swipe-links .link + .link a:hover {
		padding-right: 20px;
	}
	.references.single .reference .the-content {
		display: block;
		width: auto;
	}
	.wrapper .slider-ref {
		overflow: hidden;
		padding-right: 20px;
		position: absolute;
		left: 600px; top: 0; bottom: 0; right: 0;
	}
	.slider-ref .slider {
		border: 10px solid #ffffff;
		height: 296px;
		margin: 0 auto;
		max-height: 296px;
		max-width: 494px;
		width: 100%;
	}
	.slider-controls {
		margin: 0 auto;
		max-width: 494px;
		width: 100%;
	}
	.slider-wrapper {
		display: table;
		height: 100%;
		width: 100%;
	}
	.slider-inner {
		display: table-cell;
		vertical-align: middle;
	}

	.filters-list {
		border-top: none;
		border-bottom: 1px solid #dcdcdc;
		bottom: auto; top: 0; left: 244px;
		max-width: 730px;
		z-index: 80;
	}

	/* SINGLE PAGES */

	.prestations.single,
	.references.single {
		padding: 0;
		width: auto;
	}
	.references.single .reference .the-content {
		padding-left: 0;
	}

	.filters-list .title span {
		font-size: 14px;
	}

	.slider-ref.desk {
		display: block;
	}
	.slider-ref.mobile {
		display: none;
	}


	/* ---------- RESPONSIVE HEIGHT < 960px ---------- */

	@media screen and (max-height: 960px) {
		
		.sidebar,
		.sidebar.home {
			padding-top: 30px;
		}
		.sidebar .layer .navigation {
			padding-top: 30px;
		}
		.sidebar #menu-sidebar-menu {
			padding: 20px 0;
		}
		.sidebar .layer a {
			line-height: 50px;
		}

	}

}


/* ---------- RESPONSIVE > 1600px ---------- */

@media screen and (min-width: 1600px) {

	/* GLOBAL */

	.content-wrapper {
		max-width: 1020px;
	}
	.the-content {
		font-size: 16px;
		line-height: 26px;
	}
	.wrapper .single.content-wrapper .backlink {
		font-size: 11px;
		padding-top: 47px;
		top: -100px;
		width: 70px;
	}
	.the-content h2,
	.the-content h3 {
		font-size: 20px;
	}

	.wrapper .bg {
		left: 960px;
	}

	/* HOMEPAGE */
	
	.slider-hp .infos {
		margin-top: -150px;
	}
	.slider-hp .infos .title {
		font-size: 65px;
		margin-bottom: 20px;
	}
	.slider-hp .infos .baseline {
		font-size: 25px;
		line-height: 32px;
		margin-bottom: 30px;
	}
	.slider-hp .infos .cta {
		border-width: 5px;
		font-size: 20px;
		font-weight: 700;
	}

	/* PRESTATIONS */

	.prestations.listing .prestation > a {
		padding: 40px 100px;
	}
	.prestations.listing .prestation:first-child > a,
	.prestations.listing .prestation:first-child + .prestation > a {
		padding-top: 100px;
	}
	.prestations .prestation .title {
		font-size: 25px;
		margin-bottom: 10px;
		line-height: 30px;
		height: 58px;
		padding: 0;
		width: 324px;
	}
	.prestations .prestation .subtitle {
		font-size: 18px;
		margin-bottom: 30px;
	}
	.prestations.listing .prestation .the-content p {
		height: 185px;
	}

	/* Single */

	.prestations.single .inner-content,
	.references.single .inner-content {
		padding: 150px 80px 150px;
	}

	/* PRESENTATION */

	.content-wrapper.presentation .content {
		padding: 100px;
	}
	.presentation .title {
		font-size: 25px;
		line-height: 30px;
		margin-bottom: 10px;
		width: 460px;
	}
	.the-content ul li:before {
		top: 14px;
	} 

	/* REFERENCES */

	.references .reference {
		max-width: none;
	}
	.references.listing .reference .the-content {
		padding-left: 9px;
	}
	.references.listing .reference > a {
		padding: 10px 100px 9px;
	}
	.references .reference .cat {
		font-size: 18px;
	}
	.references .reference .title {
		font-size: 25px;
		line-height: 28px;
	}
	.references .reference > a .infos {
		padding-right: 20px;
	}
	.references .reference:before {
		margin-left: -41px;
		width: 81px;
	}
	.references .reference:after {
		height: 81px;
		margin-top: -41px;
	}

	.filters-list {
		max-width: 1020px;
	}
	.filters-list .filters {
		text-align: left;
		padding-left: 9px;
		width: 50%;
	}
	.filters-list .filters-inner {
		max-width: 1020px;
	}
	.filters-list .title,
	.filters-list .filter {
		font-size: 15px;
	}
	.filters-list .title {
		width: 50%;
	}
	.filters-list .filter {
		color: #8c8c8c;
		margin: 0 43px 0 0;
	}

	/* Single */

	.content-wrapper.single.references {
		max-width: 1020px;
	}
	.references .swipe-links .link a {
		top: -104px;
	}
	.slider-ref.desk {
		display: none;
	}
	.slider-ref.mobile {
		display: block;
		position: static;
	}

}

/* ---------- RESPONSIVE > 1700px ---------- */

@media screen and (min-width: 1700px) {
	
	.slider-ref.desk {
		display: block;
		left: 1020px;
	}
	.slider-ref.mobile {
		display: none;
		position: static;
	}

}

@media screen and (max-width: 1175px) {

	.references.single.contact .inner-content {
		text-align: left;
	}
	.references.single.contact .inner-content .infos {
		height: auto;
		border: none;
		margin-top: 20px;
	}

}





