/*********************************************************************************************************/
/*  FIRST SCREEN   */
/*********************************************************************************************************/
.homeVisuelWrapper {
	overflow: hidden;
	z-index: 1;
	position: relative;
	top: 140px;
	width: 100%;
	height: calc(100vh - 142px);
	margin: 0 auto;
	box-shadow: 1px 1px 10px rgba(0,0,0,.3);
}

.homeVisuelWrapper .visuals{
	width: 100%;
	height: 100%;
	background: url("../images/main-visuel.jpg") no-repeat center;
	background-size: cover;
	background-position: center 50%;
	transform-origin: center;
	transform: scale(1.5);
}

.homeVisuelWrapper h1{
	z-index: 2;
	position: absolute;
	top: 22%;
	width: 100%;
	margin: 0;
	padding: 0 20px;
	color: #fff;
	font-family: 'Playfair', serif;
	font-size: 70px;
	text-align: center;
	letter-spacing: 0.02em;
}

.homeVisuelWrapper h1 br{
	display: none;
}

.homeVisuelWrapper h1 span{
	display: block;
	margin-top: 10px;
	font-size: 20px;
	text-transform: uppercase;
	line-height: 30px;
}

.homeVisuelWrapper .animBorder{
	position: absolute;
	bottom: 24%;
	left: calc(50% - 75px);
	width: 150px;
	height: 65px;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	color: #fff;
	transition: all 0.5s;
}

.homeVisuelWrapper .headerLink{
	position: absolute;
	bottom: 24%;
	left: calc(50% - 250px);
	width: 500px;
	height: 65px;
	line-height: 65px;
	color: #fff;
	font-family: 'Great Vibes', cursive;
	font-size: 35px;
	text-align: center;
}

.homeVisuelWrapper .headerLink:hover,
.homeVisuelWrapper .headerLink:focus{
	text-decoration: none;
	background: rgba(0,0,0,.2);
	transition: all 0.5s;
}

/*
.homeVisuelWrapper .headerLinkContent:hover .animBorder{
	left: calc(50% - 250px);
	width: 500px;
	transition: all 0.5s;
	border: 1px solid #fff;
}*/




/*********************************************************************************************************/
/*  COUPS DE COEUR   */
/*********************************************************************************************************/
.ccContainerMain{
	overflow: auto;
	padding: 280px 50px 0 50px;
	background: url('../images/palmiers.png') no-repeat center;
	background-position: -4% 177px;
	background-size: 500px;
}

.ccContainerMain .intro{
	width: 650px;
	margin: 0 auto 45px auto;
}

.ccContainerMain .intro span{
	display: block;
	margin: 0 0 30px 0;
	font-family: 'Playfair', serif;
	font-size: 70px;
	color: #000;
	text-align: center;
	line-height: 55px;
}

.ccContainerMain .intro h2{
	display: block;
	margin-bottom: 80px;
	color: #1c7a4b;
	font-size: 20px;
	font-weight: 300;
	text-transform: uppercase;
	text-align: center;
}

.ccContainerMain .intro p{
	font-family: 'Playfair', serif;
	font-size: 25px;
	font-style: italic;
	color: #1a1a1a;
	text-align: right;
	line-height: 35px;
	letter-spacing: -1px;
}

.ccContainer {
	position: relative;
	float: left;
	width: calc(50% - 100px);
	margin: 1% 50px 50px 50px;
}

.ccContainer .bdo-custom,
.ccContainer .bdo-custom-vendu{
	overflow: hidden;
	position: absolute;
	top: -29px;
	left: 0px;
	width: 100%;
	height: 29px;
	padding: 5px 20px 1px 20px;
	background: #1c7a4b;
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.ccContainer a{
	text-decoration: none;
	color: #1a1a1a;
}

.ccContainer .chargement{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 500px;
	margin: 0;
	background: #f4f3f2 url('../images/logo-chargement.png') no-repeat center;
}

.ccContainer.first{
	float: left;
}

.ccContainer.last{
	float: right;
}

.ccContainer .visuel {
	overflow: hidden;
	width: 0%;
	height: 500px;
	margin: 0;
}

.ccContainer .visuel1{
	float: left;
}

.ccContainer .visuel2{
	float: right;
}

.ccContainer .visuel img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transform: scale(1);
	transition: all 0.3s;
}

.ccContainer a .visuel img:hover,
.ccContainer a .visuel img:focus{
	transform: scale(1.05);
	transition: all 0.5s;
}

.ccContainer .infosContainer{
	text-align: center;
}

.ccContainer .infosContainer .h2cc{
	min-height: 60px;
	margin: 25px 0 15px 0;
	color: #000;
	font-family: 'Playfair', serif;
	font-size: 30px;
	text-transform: initial;
	letter-spacing: -1px;
	line-height: 30px;
}

.ccContainer .infosContainer .ref{
	display: block;
	margin: 0 0 15px 0;
	color: #777;
	font-size: 16px;
	font-family: 'Playfair', serif;
	text-transform: uppercase;
}

.ccContainer .infosContainer .desc{
	width: 75%;
	margin: auto;
	text-align: center;
}

/*
.ctaListing{
	display: block;
	width: 500px;
	margin: 40px auto 0 auto;
	padding: 10px 10px 7px 10px;
	color: #1c7a4b;
	font-size: 13px;
	border: 2px solid #1c7a4b;
	text-transform: uppercase;
	text-align: center;
	letter-spacing: 2px;
}

.ctaListing:hover,
.ctaListing:focus{
	color: #fff;
	background: #1c7a4b;
	text-decoration: none;
}
*/



/*********************************************************************************************************/
/*  AGENCE   */
/*********************************************************************************************************/
.agenceContainerGlobal{
	position: relative;
	left: 15%;
	width: 85%;
	padding: 100px 0 130px 0;
}


.agenceContainerGlobal .agenceFondContainer{
	position: relative;
	left: 12%;
	width: 88%;
	height: 350px;
}

.agenceContainerGlobal .agenceFondContainer .agenceFond{
	float: right;
	width: 100%;
	height: 350px;
	background: #f4f3f2 url('../images/palmiers.png') no-repeat center;
	background-position: 95% 105%;
	background-size: 400px;
}

.agenceContainerGlobal .agenceFondContainer .agenceFond{
	width: 0%;
}

.agenceContainerGlobal .agPhotoContainer{
	position: absolute;
	top: 400px;
	width: 25%;
	height: 773px;
}

.agenceContainerGlobal .agPhotoContainer .agPhoto{
	width: 0%;
	height: 100%;
}

.agenceContainerGlobal .agPhotoContainer .agPhoto img{
	width: 100%;
	height: 100%;
	margin-right: 50px;
	object-fit: cover;
	object-position: center;
}

.agContainerMain{
	overflow: hidden;
	position: relative;
	top: -19px;
	width: 100%;
	margin: 0 auto;
	padding-top: 9px;
}

.agContainerMain span{
	display: block;
	width: 300px;
	margin: 0 auto 30px auto;
	font-family: 'Playfair', serif;
	font-size: 70px;
	color: #000;
	text-align: center;
	text-transform: uppercase;
}

.agContainerMain h2{
	width: 300px;
	margin: 0 auto 80px auto;
	color: #1c7a4b;
	font-size: 20px;
	font-weight: 300;
	text-align: left;
	text-transform: uppercase;
}

.agContainerMain .txtGlobal{
	width: 550px;
	margin: 0 0 0 30%;
}

.agContainerMain .txtGlobal h3{
	margin: 0 0 30px 0;
	font-family: 'Playfair', serif;
	font-size: 25px;
	font-style: italic;
	color: #1a1a1a;
	text-align: right;
	line-height: 35px;
}

.agContainerMain .txtGlobal p{
	margin: 0 0 20px 0;
	text-align: justify;
}

.ctaAg{
	display: block;
	float: right;
	width: 146px;
	margin-top: 50px;
	padding: 0 0 5px 0;
	border-bottom: 3px solid #1c7a4b;
	color: #1a1a1a;
	font-family: 'Work Sans', sans-serif;
	font-size: 16px;
	text-transform: uppercase;
	text-align: center;
	transition: all 0.5s;
}

.ctaAg:hover,
.ctaAg:focus{
	width: 100%;
	color: #1a1a1a;
	text-decoration: none;
	transition: all 0.5s;
}






/*********************************************************************************************************/
/*  TITRES CONTACT   */
/*********************************************************************************************************/
.contactDetailGlobal{
	position: relative;
	width: 100%;
	height: 670px;
	background: url('../images/main-visuel-contact.jpg') no-repeat center;
	background-size: cover;
}

.contactDetailMain{
	overflow: auto;
	padding: 70px;
}

.contactDetailMain .partContact{
	float: left;
}

.contactDetailMain .partContactTitre{
	width: 60%;
}

.contactDetailMain .partContactForm{
	width: 40%;
}

.contactDetailMain .partContact .titre{
	position: absolute;
	bottom: 70px;
	width: 40%;
}

.contactDetailMain .partContact .logoImg{
	width: 130px;
}

.contactDetailMain .partContact .logoImg img{
	width: 100%;
}

.contactDetailMain .partContact h2{
	color: #fff;
	font-family: 'Playfair', serif;
	font-size: 56px;
	line-height: 60px;
}

.contactDetailMain .partContact h3{
	color: #fff;
	font-size: 18px;
	font-weight: 300;
	text-transform: uppercase;
	line-height: 30px;
}




/*********************************************************************************************************/
/*  FORM CONTACT   */
/*********************************************************************************************************/
.contactDetailMain .partContact .formDetail{
	padding: 0;
}

.contactDetailMain .partContact .formDetail fieldset{
	overflow: auto;
}

.contactDetailMain .partContact .formDetail label{
	display: none;
}

.contactDetailMain .partContact .formDetail .field{
	display: block;
	float: left;
	width: 48%;
	margin: 10px 0 10px 2%;
	padding: 7px 15px;
	background: transparent;
	border: none;
	outline: none;
	border: 1px solid #fff;
	color: #fff ;
	font-size: 15px;
	font-weight: 300;
}

.contactDetailMain .partContact .formDetail .field.fieldLeft{
	margin: 10px 2% 10px 0;
}

.contactDetailMain .partContact .formDetail .field::-webkit-input-placeholder { /* WebKit browsers */ color:#fff !important;}
.contactDetailMain .partContact .formDetail .field:-moz-placeholder { /* Mozilla Firefox 4 to 18 */  color:#fff !important;}
.contactDetailMain .partContact .formDetail .field::-moz-placeholder { /* Mozilla Firefox 19+ */  color:#fff !important; /* Firefox */}
.contactDetailMain .partContact .formDetail .field:-ms-input-placeholder { /* Internet Explorer 10+ */  color:#fff !important; /* Firefox */}
.contactDetailMain .partContact .formDetail .field::placeholder { /* Recent browsers */  color:#fff !important; /* Firefox */}

.contactDetailMain .partContact .formDetail .fieldSelect{
	width: 96%;
	margin: 10px 0;
	padding: 0 0 5px 0;
}

.contactDetailMain .partContact .formDetail .fieldSelect option{
	font-weight: 300;
}

.contactDetailMain .partContact .formDetail .fieldArea{
	width: 100%;
	margin: 10px 0;
}

.contactDetailMain .partContact .formDetail .recaptchaContainer{
	margin: 20px 0;
}

.contactDetailMain .partContact .formDetail #rgpdHome{
	float: left;
	margin: 0 5px 0 0;
	background: transparent;
	border: 1px solid #fff;
}

.contactDetailMain .partContact .formDetail .rgpd{
	float: left;
	width: calc(100% - 20px);
	margin-bottom: 0;
	color: #fff;
	font-size: 13px;
	font-weight: 300;
	line-height: 18px;
}

.contactDetailMain .partContact .formDetail .rgpd a{
	color: #fff;
	font-weight: 400;
	text-decoration: underline;
}

.contactDetailMain .partContact .formDetail .rgpd a:hover,
.contactDetailMain .partContact .formDetail .rgpd a:focus{
	color: #1c7a4b;
}

.contactDetailMain .partContact .formDetail .g-recaptcha{
	margin: 20px auto 0px auto;
	width: 235px;
}

.g-recaptcha {
	transform: scale(0.75);
	-webkit-transform: scale(0.75);
	-moz-transform: scale(0.75);
	-ms-transform: scale(0.75);
	-o-transform: scale(0.75);
	transform-origin: 0%;
	-webkit-transform-origin: 0%;
	-moz-transform-origin: 0%;
	-ms-transform-origin: 0%;
	-o-transform-origin: 0%;
}

.contactDetailMain .partContact .formDetail .submitField{
	display: block;
	width: 235px;
	margin: 20px auto 0 auto;
	padding: 8px 20px;
	outline: none;
	border: none;
	background: #fff;
	color: #000;
	font-family: 'Playfair', serif;
	font-size: 22px;
	text-align: center;
	text-decoration: none;
}

.contactDetailMain .partContact .formDetail .submitField:hover,
.contactDetailMain .partContact .formDetail .submitField:focus{
	color: #fff;
	background: #000;
	transition: all 0.5s;
}








/*********************************************************************************************************/
/*  AVIS SLIDER  */
/*********************************************************************************************************/
.avisGlobal{
	z-index: 1;
	position: relative;
	width: 100%;
	padding: 70px 0;
	background: url('../images/avis.jpg') no-repeat center;
	background-size: cover;
	box-shadow: 0px -4px 10px rgba(0,0,0,.3);
}

.avisMain{
	width: 900px;
	margin: auto;
	text-align: center;
}

.avisMain h2{
	margin: 0 0 30px 0;
	color: #fff;
	font-family: 'Playfair', serif;
	font-size: 50px;
	font-weight: 500;
	text-align: center;
}

/*
.avisMain img{
	width: 150px;
	margin: 0 auto 20px auto;
}
*/

.genContainer{
	overflow: auto;
	width: 300px;
	margin: 0 auto 30px auto;
}

.noteGen{
	float: left;
	padding: 15px 0;
	color: #1c7a4b;
	font-family: 'times', sans-serif;
	font-size: 40px;
	font-weight: 500;
}

.pourcentGen{
	float: right;
	padding: 15px 0;
	color: #1c7a4b;
	font-family: 'times', sans-serif;
	font-size: 40px;
	font-weight: 500;
}

.avisItem{
	margin-bottom: 30px;
}

.stars{
	display: inline-block;
	margin: 15px 0;
}

.stars i {
	padding-right: 5px;
	color: yellow;
	font-size: 18px;
}

.note{
	color: #fff;
	font-size: 18px;
	font-weight: 500;
}

.avisItem .name{
	color: #fff;
	font-size: 18px;
	font-weight: 400;
	text-align: left;
	text-transform: uppercase;
	line-height: 27px;
	text-align: center;
}

.avisItem .comment{
	margin-bottom: 30px;
	color: #fff;
	font-size: 20px;
	font-weight: 200;
	line-height: 30px;
	text-align: left;
}

.slick-slider{
	padding: 0 50px !important;
}

.slick-prev{
	cursor: pointer;
	z-index: 3;
	display: block;
	position: absolute;
	top: 20%;
	left: -40px;
	height: 40px;
	width: 40px;
	font-size: 0;
	line-height: 0;
	border: none;
	outline: none;
	background: #0000;
}

.slick-next{
	cursor: pointer;
	z-index: 3;
	display: block;
	position: absolute;
	top: 20%;
	right: -40px;
	height: 40px;
	width: 40px;
	font-size: 0;
	line-height: 0;
	border: none;
	outline: none;
	background: #0000;
}

.slick-prev:before, .slick-next:before{ opacity: 1!important; }

.slick-prev:hover::before { content: '';background: url('../images/prev.svg') no-repeat center;width: 40px;height: 40px; }
.slick-next:hover::before{ content: '';background: url('../images/next.svg') no-repeat center;width: 40px;height: 40px; }

.slick-next:before{ display: block;content: '';background: url('../images/next.svg') no-repeat center;width: 40px;height: 40px;}
.slick-prev:before{ display: block;content: '';background: url('../images/prev.svg') no-repeat center;width: 40px;height: 40px;}

.avisMain a {
	display: block;
	width: 231px;
	margin: 30px auto 0 auto;
	padding: 10px 0 0px 0;
	border-top: 3px solid #fff;
	color: #fff;
	font-family: 'Work Sans', sans-serif;
	font-size: 16px;
	text-transform: uppercase;
	text-align: center;
	transition: all 0.5s;
}

.avisMain a:hover,
.avisMain a:focus {
	width: 50%;
	text-decoration: none;
	color: #fff;
	transition: all 0.5s;
}





/*********************************************************************************************************/
/*  MEDIA   */
/*********************************************************************************************************/
@media (max-width: 1400px){
	/* CC */
	.ccContainer .chargement{
		height: 400px;
	}

	.ccContainer .visuel {
		height: 400px;
	}
}

@media (max-width: 1199px){
	/* CC */
	.ccContainerMain {
		padding: 250px 50px 0 50px;
	}

	.ccContainerMain .intro h2 {
		margin-bottom: 60px;
	}

	.ccContainer {
		position: relative;
		float: none;
		width: 600px;
		margin: 1% auto 80px auto;
	}

	.ccContainer .chargement{
		height: 400px;
	}

	.ccContainer .visuel {
		height: 400px;
	}

	/* AGENCE */
	.agenceContainerGlobal {
		position: relative;
		left: 0%;
		width: 100%;
		padding: 0px 0 100px 0;
	}

	.agContainerMain h2 {
		margin: 0 auto 60px auto;
	}

	/* FORM */
	.contactDetailMain .partContactTitre {
		width: 50%;
	}

	.contactDetailMain .partContactForm {
		width: 50%;
	}

	.contactDetailMain .partContact h2 {
		font-size: 45px;
		line-height: 45px;
	}

	.contactDetailMain .partContact h3 {
		font-size: 15px;
		line-height: 24px;
	}

	/*AVIS*/
	.avisMain {
		width: 80%;
	}
}


@media (max-width: 991px) {
	/* HEADER */
	.homeVisuelWrapper{
		top: 120px;
		height: calc(100vh - 120px);
    }

	/* AGENCE */
	.agenceContainerGlobal {
		padding: 0px 0 50px 0;
	}

	.agenceContainerGlobal .agPhotoContainer{
		display: none;
	}

	.agenceContainerGlobal .agenceFondContainer {
		position: relative;
		left: 0%;
		width: 100%;
		height: 300px;
	}

	.agContainerMain .txtGlobal {
		width: 70%;
		margin: 0 auto;
	}

	.agContainerMain .txtGlobal h3 br{
		display: none;
	}

	/* FORM */
	.contactDetailGlobal {
		height: 100%;
	}

	.contactDetailMain .partContactTitre {
		float: none;
		width: 100%;
	}

	.contactDetailMain .partContact .logoImg {
		width: 100px;
	}

	.contactDetailMain .partContact .titre {
		position: static;
		width: 100%;
	}

	.contactDetailMain .partContact h2{
		margin-bottom: 50px;
	}

	.contactDetailMain .partContact h3 {
		display: none;
	}

	.contactDetailMain .partContactForm {
		float: none;
		width: 100%;
	}
}


@media (max-width: 767px) {
	/* HEADER */
	.homeVisuelWrapper h1{
		font-size: 55px;
	}

	.homeVisuelWrapper h1 span {
		font-size: 18px;
		line-height: 22px;
	}

	/* CC */
	.ccContainerMain {
		padding: 230px 50px 0 50px;
	}

	.ccContainerMain .intro {
		width: 100%;
	}

	.ccContainer {
		width: 100%;
		margin: 1% auto 50px auto;
	}

	/* FORM */
	.contactDetailMain {
		padding: 50px 30px;
	}

	/*AVIS*/
	.slick-slider {
		padding: 0 20px !important;
	}

}


@media (max-width: 580px) {
	/* HEADER */
	.homeVisuelWrapper h1{
		line-height: 45px;
	}

	.homeVisuelWrapper h1 br{
		display: block;
	}

	.homeVisuelWrapper .animBorder{
		position: absolute;
		bottom: 7%;
	}

	.homeVisuelWrapper .headerLink{
		left: calc(50% - 140px);
		bottom: 7%;
		width: 280px;
		font-size: 28px;
	}

	/* CC */
	.ccContainerMain {
		overflow: hidden;
		padding: 200px 30px 0 30px;
	}

	.ccContainerMain .intro h2 {
		margin-bottom: 50px;
	}

	.ccContainer .visuel {
		height: 300px;
	}

	.ccContainer .chargement {
		height: 300px;
	}

	.ccContainer .infosContainer .desc {
		width: 90%;
	}

	/* AGENCE */
	.agContainerMain h2 {
		margin: 0 auto 50px auto;
	}

	.agContainerMain span{
		margin: 0 0 20px 0;
		font-size: 55px;
	}

	.agContainerMain .txtGlobal p{
		text-align: left;
	}

	/* FORM */
	.contactDetailMain .partContact .formDetail .field,
	.contactDetailMain .partContact .formDetail .field.fieldLeft,
	.contactDetailMain .partContact .formDetail .field.fieldRight{
		float: none;
		width: 100%;
		margin: 10px 0;
	}

	/*AVIS*/
	.genContainer {
		width: 200px;
	}

	.slick-next,
	.slick-prev{
		display: none !important;
	}
}


@media (max-width: 450px) {
	/* CC */
	.ccContainer .visuel {
		height: 250px;
	}

	.ccContainer .chargement {
		height: 230px;
	}
}




