@charset "UTF-8";
/* CSS Document */

*{
	margin: 0;
	padding: 0;
	box-sizing:border-box;
}

body{
	padding-top: 128px;
	font-family: 'Roboto', sans-serif;
	font-size:16px;
}

a img{border:none;}

input, textarea{-webkit-appearance:none;}

.hideme, .fadein, .fadein2{opacity:0;}
.fadein{transition:opacity .8s;}
.fadein2{transition:opacity .8s .3s;}

.cb{clear: both;}

*:focus{outline:none;}

.menu-ico{display: none;}

.wrap{
	width: 1280px;
	max-width: 100%;
	margin: 0 auto;
	padding:0 10px;
	position:relative;
}

header{
	position:fixed;
	z-index:999;
	top:0;
	left:0;
	width: 100%;
	height: 128px;
	background: #000;
	color:#fff;
	font-family: 'Roboto Slab', serif;
}

header, header *{transition:all .4s;}

header.sm{
	height: 80px;
	background: rgba(0,0,0,.9);
}

header h1{
	float:left;
	padding: 26px 0;
}

header.sm h1{
	padding: 8.5px 0;
}

header h1 img{width: 355px;}
header.sm h1 img{width: 300px;}

header nav{
	float:right;
	margin-top: 45px;
}

header.sm nav{
	margin-top: 18px;
}

header ul li{
	display: inline;
}

header ul br{display: none;}

header li a{
	display: inline-block;
	color: #fff;
	text-decoration: none;
	font-weight: 300;
	font-size:18px;
	padding: 10px 8px;
	transition:all .5s;
}

header li a:hover{
	-webkit-transform:translateY(-5px);
	-ms-transform:translateY(-5px);
	transform:translateY(-5px);
	opacity:.7;
}

header.sm li a{font-size:16px;}

header a[href^=tel]{
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
	margin-left: 30px;
}

header li:nth-child(8) a, header li:nth-child(9) a{
	padding: 10px 0px;
}

header li img{
	vertical-align: bottom;
}

.grey-bg{
	background: #bac4c7; /* Old browsers */
	background: -moz-radial-gradient(center, ellipse cover, #bac4c7 27%, #a5afb3 100%); /* FF3.6-15 */
	background: -webkit-radial-gradient(center, ellipse cover, #bac4c7 27%,#a5afb3 100%); /* Chrome10-25,Safari5.1-6 */
	background: radial-gradient(ellipse at center, #bac4c7 27%,#a5afb3 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	color:#fff;
	padding: 35px 0;
}

h2{
	text-transform: uppercase;
	font-size:22px;
	font-weight:400;
}

p{
	padding-top: 15px;
}

.grey-bg img{
	position:absolute;
	right:0;
	bottom:-35px;
	width: 25%;
}

.grey-bg.services img{
	position:relative;
	float:right;
	border:5px solid #fff;
	margin-left: 10px;
	right:auto;
	bottom: auto;
	
}

.grey-bg.tall-img .wrap{padding-bottom: 180px;}

.grey-bg p, .grey-bg h2{
	max-width: 75%;
}

.gift-card{
	padding: 15px 0;
}

.gift-card h2{
	padding-top: 35px;
}

.gift-card img{
	width: 33%;
	float:left;
	margin-right: 35px;
}

.gift-card form{
	float:right;
	text-align: right;
	margin-top: 15px;
}

.gift-card select{
	border: 1px solid #000;
    font-size: 14px;
    color: #fff;
    background: #444;
    padding: 5px;
	display: block;
    height: 32px;
    line-height: 32px;
}

.gift-card input[type=submit]{
	background: #000;
	border-radius:0;
	color:#fff;
	text-transform: uppercase;
	border:1px solid #000;
	padding: 15px 20px;
	font-size:16px;
	display: inline-block;
	margin-top: 10px;
	transition:all .4s;
}

.gift-card input[type=submit]:hover{
	background: transparent;
	color:#000;
	cursor:pointer;
}

.reviews{
	clear: both;
	background: #000;
	color: #FFF;
	padding: 45px 0;
}

.reviews h2+p{margin-bottom: 20px;}

.review{
	background: #FFF;
	padding: 30px 40px;
	color: #000;
	width: 48%;
	float:left;
	margin-top: 25px;
	height:175px;
}

.review:nth-of-type(even){margin-left: 4%;}

.review h3{
	font-size:20px;
	font-weight: 500;
}

.review h3 span{float:right;}

.review p{
	font-style:italic;
}

h2.bandeau{
	width: 100%;
	text-align: center;
	font-size:26px;
	font-style:italic;
	color: #FFF;
	background: #8e9090;
	font-weight: 500;
	padding: 22px;
}

h2.bandeau a{
	text-decoration: none;
	color: #FFF;
	padding-top: 10px;
	display: block;
}

footer{
	background: #000;
	color:#fff;
	text-align: center;
	padding-bottom: 30px;
}

footer nav a{
	font-family: 'Roboto Slab', serif;
	color: #FFF;
	text-decoration: none;
	font-weight: 300;
	font-size:18px;
	display: inline-block;
	padding: 10px;
	transition:all .4s;
}

footer a:hover{opacity: .7;}

footer nav li{display: inline;}

footer nav ul{
	padding: 20px 0 30px;
}

footer p, footer > a{
	display: inline-block;
	margin-top: 0;
	padding:0 35px;
	text-decoration: none;
	color: #FFF;
	transition:opacity .4s;
}

footer > a img{
	vertical-align:middle;
	display: inline-block;
	margin-left: 10px;
}

.bx-pager-item{
	display: inline;
}

.bx-pager-item a{
	color:transparent;
	display: inline-block;
	width: 12px;
	height: 12px;
	border-radius:50%;
	background: #cccccc;
	margin: 0 3px;
	transition:all .4s;
}

.bx-pager-item a:hover, .bx-pager-item a.active{
	background: #aaa;
}

.bx-pager{
	text-align: center;
	width: 100%;
	position:absolute;
	bottom:10px;
	z-index:99;
}

.slider{position:relative;}

.slider a.btn{
	color: #FFF;
	background: #000;
	font-size:24px;
	border-radius:5px;
	padding: 20px 35px;
	display: block;
	position:absolute;
	z-index:99;
	bottom:40px;
	right: 150px;
	text-decoration: none;
	border:1px solid #000;
	transition:all .4s;
}

.slider a.btn:hover{
	background:transparent;
	color:#000;
}

.white-bg{
	padding: 35px 0;
}

.white-bg img{
	width: 25%;
	float:right;
	margin-left: 25px;
	border:5px solid #000;
}

.white-bg p+h2, .white-bg ul+h2{
	margin-top: 20px;
	margin-bottom: 15px;
}

.white-bg ul{
	padding-left: 25px;
}

.black-bg{
	background: #000;
	color:#fff;
	padding: 35px 0;
}

.black-bg.contact{margin-top: -5px;}

.black-bg .wrap>div{
	background: #FFF;
	padding: 30px 40px;
	color:#000;
	margin-top: 25px;
}

.black-bg img{
	width: 25%;
	float:left;
	border:5px solid #000;
	margin-right: 25px;
}

.grey-nograd-bg{
	color: #FFF;
	background: #a5afb3;
	padding: 35px 0;
}

.grey-nograd-bg h2{margin-bottom: 25px;}

.grey-nograd-bg ul{padding-left: 25px;}

.grey-nograd-bg li{padding-bottom: 5px;}

.map{
	width: 50%;
	display: inline-block;
	border-right:2px solid #000;
	height: 380px;
	border-top: 5px solid #000;
}

.map+.map{
	border-right:0px solid #000;
	border-left:2px solid #000;
}

.contact .wrap div, .grey-bg .wrap form div{
	width: 32%;
	float:left;
	font-size:15px;
}

.contact .wrap div{min-height: 186px;}

.contact strong, .map strong{font-weight: 500;}

.contact .wrap div:nth-of-type(3n-1), .grey-bg .wrap form div:nth-of-type(3n-1){
	margin-right: 2%;
	margin-left: 2%;
}

.contact a, .map .gm-style-iw a{
	display: block;
	color:#000;
	text-decoration: none;
}

.grey-bg .wrap div:first-child input{
	width:100%;
	border: 1px solid #fff;
	border-radius: 5px;
    font-size: 14px;
    color: #444;
    background: #eee;
    padding: 5px;
	display: block;
    height: 32px;
    line-height: 32px;
	margin-bottom: 10px;
}

.grey-bg select{
	width:100%;
	border: 1px solid #fff;
	border-radius: 5px;
    font-size: 14px;
    color: #444;
    background: #eee;
    padding: 5px;
	display: block;
    height: 32px;
    line-height: 32px;
	margin-bottom: 10px;
}

.grey-bg form h2{
	margin-bottom: 20px;
}

.grey-bg form h3{
	text-transform: uppercase;
	font-weight: 400;
	margin-bottom: 10px;
	margin-top: 15px;
}

.grey-bg form div:not(:first-child){padding-top: 45px;}

.grey-bg form input[type=checkbox]{display: none;}

.grey-bg form label:before{
	content:'';
	border: 1px solid #fff;
	border-radius: 5px;
	background: #eee;
	height: 14px;
	width: 14px;
	display: block;
	float:left;
	margin-right: 10px;
}

.grey-bg form input:checked + label:before{
	background: #444444; /* Old browsers */
	background: -moz-radial-gradient(center, ellipse cover, #444444 0%, #444444 30%, #eeeeee 31%, #eeeeee 100%); /* FF3.6-15 */
	background: -webkit-radial-gradient(center, ellipse cover, #444444 0%,#444444 30%,#eeeeee 31%,#eeeeee 100%); /* Chrome10-25,Safari5.1-6 */
	background: radial-gradient(ellipse at center, #444444 0%,#444444 30%,#eeeeee 31%,#eeeeee 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#444444', endColorstr='#eeeeee',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}

.grey-bg form label{
	display: block;
	margin-bottom: 7px;
	margin-left: 15px;
}

.grey-bg form textarea{
	width:100%;
	border: 1px solid #fff;
	border-radius: 5px;
    font-size: 14px;
    color: #444;
    background: #eee;
    padding: 5px;
	display: block;
	height: 135px;
	resize:vertical;
}

.grey-bg form input[type=submit]{
	background: #000;
    border-radius: 0;
    color: #fff;
    text-transform: uppercase;
    border: 1px solid #000;
    padding: 15px 20px;
    font-size: 16px;
    display: inline-block;
    margin-top: 10px;
	float:right;
	transition:all .4s;
}

.grey-bg form input[type=submit]:hover{
	background: transparent;
	color:#000;
	cursor:pointer;
}

#page_navigation{
	text-align: center;
	margin-top: 30px;
	margin-bottom: 10px;
}

#page_navigation a{
	display: inline-block;
	background: #fff;
	color: #000;
	font-size:16px;
	padding: 5px 7px;
	margin: 0 3px;
	text-decoration: none;
	border:1px solid #fff;
	transition: all .4s;
}

#page_navigation a.active_page{
	background: #000;
	color: #fff;
}

.news-item img:not(.news-img){display: none !important;}

.news-item a.btn, .news-single a.btn{
	color: #FFF;
    background: #000;
    font-size: 24px;
    border-radius: 5px;
    padding: 20px 35px;
	display: inline-block;
	float: right;
	margin-top: 20px;
    text-decoration: none;
    border: 1px solid #000;
    transition: all .4s;
}

.news-item a.btn:hover, .news-single a.btn:hover{
	background: transparent;
    color: #000;
}

.news-item h3, .news-item h2, .news-item h4{
	font-size:16px;
	text-transform: none;
	font-weight: 700;
}

.news-single h3, .news-single h2, .news-single h4{
	margin-bottom: 20px;
}

.news-item h3.news-title{
	text-transform: uppercase;
    font-size: 22px;
    font-weight: 400;
}

.news-item p.date{
	font-size:14px;
	padding-top: 0;
}

.black-bg .news-single img{
	clear: left;
	margin-bottom: 30px;
}

.black-bg .news-single p{
	padding-top: 0;
	margin-bottom: 15px;
}

footer a.tel{
	color: #fff;
	text-decoration: none;

}

@media screen and (max-width: 1200px) {
	.wrap{padding: 0 20px;}
	
	header nav{
		margin-top: 25px;	
	}
	
	header ul{
		text-align:right;
	}
	header ul br{
		display: block;
	}
	
	header.sm li:nth-child(7), header.sm li:nth-child(8), header.sm li:nth-child(9){display: none;}
	
	header li:nth-child(9) a{padding-right: 7px;}
	
	header a[href^=tel]{font-size:29px;}
	
	.slider a.btn {
		font-size: 20px;
		padding: 10px 15px;
		bottom: 20px;
		right: 50px;
	}
	
	.news-item a.btn, .news-single a.btn{
		font-size: 20px;
		padding: 10px 15px;
	}
	
	.grey-bg p, .grey-bg h2{max-width: 66%;}
	.grey-bg img{width: 34%;}
	
	.gift-card h2{padding-top: 15px;}
	
	.review{height: 210px;}
	
	.white-bg img{display: none;}
	
	.black-bg img{width: 30%;}
	
	.grey-bg form h2{max-width: none;}
	
	.contact .wrap div{height: 185px;}
	
	.grey-bg.tall-img .wrap{padding-bottom: 220px;}
	.grey-bg.tall-img img{width: 30%;}
	.grey-bg.tall-img p, .grey-bg.tall-img h2{max-width: 70%;}
}

@media screen and (max-width: 900px) {
	.menu-ico{
		display: block;
		padding: 5px;
		border:1px solid transparent;
		transition:all .4s;
	}
	
	.menu-ico.x{margin-top: 10px;}
	
	.menu-ico:hover{
		cursor:pointer;
		opacity:.6;
	}
	
	.menu-ico span{
		width: 35px;
		height: 4px;
		background: #fff;
		display: block;
		transform:all .4s;
	}
	
	.menu-ico span:nth-child(2){
		margin: 5px 0;
	}
	
	.menu-ico.x span:nth-child(2){opacity: 0;margin: 0;height: 0;}
	
	.menu-ico.x span{
		-webkit-transform:rotate(45deg);
		-ms-transform:rotate(45deg);
		transform:rotate(45deg);
		
	}
	
	.menu-ico.x span:last-child{
		-webkit-transform:rotate(-45deg);
		-ms-transform:rotate(-45deg);
		transform:rotate(-45deg);
		margin-top: -4px;
	}
	
	footer nav{display: none;}
	
	nav ul{
		-webkit-transform:translateX(100%);
		-ms-transform:translateX(100%);
		transform:translateX(100%);
		opacity:0;
		width: 50%;
		background: rgba(0,0,0,.8);
		position:absolute;
		top:80px;
		right: 0;
		text-align:center;
		padding: 20px 0;
		overflow: hidden;
		transition:all .4s;
	}
	
	nav ul.open{
		opacity: 1;
		-webkit-transform:translateX(0%);
		-ms-transform:translateX(0%);
		transform:translateX(0%);
	}
	
	header ul li{
		display: block;
		text-align:center;
	}
	
	header ul li a{width: 100%;}
	
	header.sm li:nth-child(7){
		display: block;
	}
	
	header.sm li:nth-child(8), header.sm li:nth-child(9), header li:nth-child(8), header li:nth-child(9){display: inline-block;}
	
	header.sm li a{font-size:18px;}
	
	header li:nth-child(7) a, header li:nth-child(8) a{width: auto;}
	
	header a[href^=tel], header.sm a[href^=tel]{margin-left: 0;font-size:24px;}
	
	header{
		height: 80px;
		background: rgba(0,0,0,.9);
	}
	
	header h1{
		padding: 8.5px 0;
	}
	
	header h1 img{width: 300px;}

	header nav{
		margin-top: 18px;
	}
	
	body{padding-top: 80px;}

	.slider img{width: 120% !important;}
	.slider a.btn {
		font-size: 18px;
		bottom: 5px;
		right: 5px;
	}
	
	.news-item a.btn, .news-single a.btn{font-size:18px;}
	
	footer{padding: 15px;}
	
	footer > a{
		display: block;
		margin-top: 10px;
	}
	
	.grey-bg img{display: none;}
	.grey-bg.tall-img img{
		width: 80%;
		position:relative;
		bottom:-40px;
		left:20%;
		display: block;
	}
	
	.grey-bg.tall-img .wrap{padding-bottom: 0;}
	
	.grey-bg p, .grey-bg h2, .grey-bg.tall-img p, .grey-bg.tall-img h2{max-width: none;}
	
	.review{
		float: none;
		height: auto;
		width: 100%;
	}
	
	.gift-card img{display: none;}
	
	.review:nth-of-type(even){margin-left: 0;}
	
	.grey-bg .wrap form div{
		width: 49%;	
	}
	
	.grey-bg .wrap form div:nth-child(2){
		margin-left: 2%;
		margin-right: 0;
	}
	
	.grey-bg form div:last-child{
		width: 100%;
		clear: both;
		padding-top: 20px;
	}
	
	.contact .wrap div{
		width: 49%;
	}
	
	.contact .wrap div:nth-of-type(3n-1){
		margin-right: 0;
		margin-left: 0;
	}
	
	.contact .wrap div:nth-of-type(2n){
		margin-right: 0;
		margin-left: 2%;
	}
	
	.black-bg .news-item img.news-img, .black-bg .news-single img {
		width: 100%;
		float: none;
		margin-bottom: 20px;
		max-width:400px;
	}
}

@media screen and (max-width: 600px) {
	.map{width: 100%;border-right:none !important;border-left: none !important;}
	.slider a.btn{display: none;}
	
	header h1 img, header.sm h1 img{
		width: 200px;
	}
	
	header, header.sm{height: 60px;}
	
	header nav, header.sm nav{margin-top: 12px;}
	
	body{padding-top: 60px;}
	nav ul{
		top: 60px;
		width: 100%;
	}
	
	header ul li:nth-child(-n+4){
		width: 50%;
		float:left;
	}
	
	header ul br{clear: both;}
	header li:nth-child(8) a, header li:nth-child(9) a{padding: 0;}
	header a[href^=tel], header.sm a[href^=tel]{padding-bottom: 0;}
	.bx-pager{bottom: 0;}
	
	.gift-card img{
		display: block;
		float:none;
		width: 100%;
	}
	
	.review h3 span{
		width: 150px;
		float: none;
		margin: 15px auto 0;
		display: block;
	}
	
	h2.bandeau{
		font-size:17px;
	}
	
	footer{font-size:14px;padding: 15px 0;}
	
	.contact .wrap div{
		width:100%;
		height: auto;
		float: none;
	}
	
	.contact .wrap div:nth-of-type(2n){margin-left: 0;}
	
}

@media screen and (max-width: 400px) {
	.grey-bg .wrap form div{
		width: 100%;
		float: none;
	}
	.grey-bg .wrap form div:nth-child(2){margin-left: 0;padding-top: 20px;}
	
	.black-bg img{
		width: 100%;
		float: none;
		margin-bottom: 20px;
	}
	
	h2.bandeau{
		font-size:15px;
		padding: 22px 0;
	}
	
	footer p, footer > a{padding: 0;}
	
	.map{
		height: 250px;
	}
}
