body{
    margin: 0;
	color: black;
	font-family: 'Nunito', sans-serif!important;
}
label{
	margin-bottom: 5px;
	font-weight: 600;
}
textarea{
	height: 13vh;
}
/* BTN CTA */
.cta-button{
	display: block;
	position: relative;
	text-decoration: none;
	font-weight: 600;
    border-radius: 18px;
    box-shadow: 2px 4px 12px #00000014;
    padding: 0.5rem 1rem;
	background: transparent;
	overflow: hidden;
}
.cta-button span{
	z-index: 1;
	position: relative;
	transition: color 350ms ease;
}
.cta-button:hover span{
	color: white;
}
.cta-button::after, .cta-button::before{
	content: " ";
	display: block;
	position: absolute;
	width: 100%;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: -1;
}
.cta-button::before{
	transform: translateX(-100%);
	z-index: 1;
}
.cta-button:hover:before{
	transform: translateX(0);
	transition: transform 350ms ease;
}
.cta-button::after {
	z-index: 0;
	transform: translateX(100%);
	transition: none;
	transition: transform 350ms ease;
}
.cta-button:hover:after{
	opacity: 1;
	transform: translateX(0);
	transition: transform 350ms 360ms ease;
}
/* CTA DEVIS */
#btn_rdv{
	border: 2px solid #079992;
}
#btn_rdv::after, #btn_rdv::before{
	background: #079992;
}
.fa-hand-point-right{
	margin-right: 15px;
}
/* FORMULAIRE */
#formulaire_home{
	margin-top: 3rem;
}
#formulaire_home h1{
	font-size: 3rem;
	color: #079992;
	text-align: center;
	margin-top: 25px;
}
#row_formulaire_home{
	display: flex;
	justify-content: center;
	width: 70vw;
	margin: 3rem auto;
}
#row_formulaire_home div{
	margin-bottom: 7px;
}
.form_div{
	display: flex;
}
#form_nom, #form_tel{
	width: 50%;
	padding-right: 15px;
}
#form_prenom, #form_email{
	width: 50%;
	padding-left: 15px;
}
#form_adresse{
	position: relative;
	width: 65%;
	padding-right: 15px;
}
#form_compteur{
	width: 35%;
	padding-left: 15px;
}
#form_fichier{
	margin-top: 15px;
}
#form_msg, #form_save{
	margin-top: 30px;
}
#form_save{
	text-align: center;
}
#Champs_obligatoires{
	color: #fa983a;
}
/* Style des champs */
#formulaire_home input[type="text"],
#formulaire_home input[type="email"],
#formulaire_home input[type="tel"],
#formulaire_home textarea{
    width: 100%;
    padding: 0.5rem;
    border: 2px solid #079992;
    border-radius: 18px;
    outline: none;
    font-size: 16px;
    transition: 0.3s;
}
/* Placeholder stylisé */
#formulaire_home input::placeholder,
#formulaire_home textarea::placeholder{
    color: #079992;
}
/* Effet au focus */
#formulaire_home input:focus,
#formulaire_home textarea:focus{
    background: #dbfde9;
}
/* Style du bouton */
#formulaire_home button{
    font-weight: 600;
    border: 2px solid #079992;
    border-radius: 18px;
    box-shadow: 2px 4px 12px #00000014;
    padding: 0.5rem 1rem;
    transition: all .3s cubic-bezier(0,0,.5,1);
}
#formulaire_home button:hover{
    background: #079992;
}
/* LISTE ADRESSE */
#suggestions{
	position: absolute;
	z-index: 999;
	width: 95%;
}
#autocomplete-list{
	list-style: none;
	padding: 15px 2px;
	margin-bottom: 0;
	background-color: white;
	border: 2px solid #079992;
	border-radius: 18px;
}
#autocomplete-list li{
	cursor: pointer;
	padding: 2px 15px;
}
#autocomplete-list li:hover{
	background-color: #079992;
}
/* ALERTE */
#alert_devis{
	width: 25vw;
	margin: auto;
	font-family: 'Nunito', sans-serif;
	padding: 20px;
	background-color: #079992;
	color: white;
	margin-bottom: 15px;
	border-radius: 5px;
	text-align: center;
	display: none;
}
.closebtn{
	margin-left: 15px;
	color: white;
	font-weight: bold;
	float: right;
	font-size: 22px;
	line-height: 20px;
	cursor: pointer;
	transition: 0.3s;
}
.closebtn:hover{
	color: black;
}
#asterisque_black{
	color: black;
}
/* RAPPEL */
select{
	border: 2px solid #079992;
    padding: 8px;
    margin: 11px;
    border-radius: 18px;
}
#callbackErrors{
	height: 3vh;
	text-align: center;
	color: #cf3d50;
	font-weight: 600;
}
#callbackErrors ul{
	list-style: none;
}
#form_rappel{
	justify-content: space-evenly;
	text-align: center;
}
#callback_request_rappel_debut, #callback_request_rappel_fin{
	display: flex;
	justify-content: center;
	align-items: center;
}
/* RESPONSIVE */
@media only screen and (min-device-width : 1080px) and (max-device-width : 1400px) {
	#formulaire_home{
		margin-bottom: 0;
	}
	#formulaire_home h1{
		padding-bottom: 0;
	}
	#alert_devis{
		width: 50vw;
	}
	#row_formulaire_home{
		width: 50vw;
		padding-top: 0;
		border: 0;
	}
}
@media screen and (max-width: 1080px){
	#formulaire_home{
		width: 70vw;
		margin: auto;
	}
	#formulaire_home h1{
		font-size: 2rem;
	}
	#row_formulaire_home div{
		margin-bottom: 1rem;
	}
	.form_div{
		display: block;
	}
	#form_nom, #form_tel, #form_prenom, #form_email, #form_adresse, #form_compteur{
		width: 100%;
		padding: 0;
	}
	#suggestions{
		width: 100%;
	}
	/* CALLBACK */
	#callbackErrors{
		height: 1vh;
		text-align: start;
		font-size: 0.7rem;
	}
	#callbackErrors ul{
		padding-left: 0px;
	}
}