/***** bloc contact *****/
.checkbox input[type="checkbox"]	{ -webkit-appearance: checkbox; -ms-appearance: checkbox; appearance: checkbox; -moz-appearance: checkbox; -o-appearance: checkbox; border-radius: 0;}
.cont_checkbox                      { position:relative; display:grid; grid-gap:0px; grid-template-columns:1fr 1fr; margin:10px 0 0 0; }
.cont_select                        { position:relative; display:grid; grid-gap:20px; grid-template-columns:1fr 1fr; }
.checkbox input[type=checkbox]      { width: 20px; height: 20px; margin: 0; float: left; margin-right: 10px; }
.checkbox                           { line-height: 20px; margin-bottom: 15px; }

@media (max-width:1200px) {
.cont_checkbox                      { grid-gap:0px; grid-template-columns:1fr; }
.cont_select                        { grid-gap:0px; grid-template-columns:1fr; }
.banner .content                    { position: relative; top: 0px; left: 0; width: 100%; margin: 80px 0 0 0; padding: 0; }
}

.bloc_contact  		 				{ position:relative; display:grid; grid-gap:80px; grid-template-columns:380px 1fr; }
.bloc_devis  		 				{ position:relative; display:grid; grid-gap:0px; grid-template-columns:1fr; }
.bloc_contact .left 				{ padding:0; color:#fff;}
.bloc_contact .left img				{ width:100%; height:auto; display:block; border-top-left-radius: 10px; border-top-right-radius: 10px; }
.bloc_contact .left .content		{ padding:50px 40px 40px 40px; position:relative; background: #08233d; border-radius: 10px;}
.bloc_contact .left .logo_contact   { font: 400 20px/30px "Barlow"; letter-spacing: 0.2px; color: #fff; height: auto; display: block; margin: 0 0 20px 0;}
.bloc_contact .left .logo { font: 400 25px/30px "Barlow"; text-transform: uppercase; color: #fff; height: auto; display: block; margin: 0 0 20px 0; }
.bloc_contact .left .logo span { font: 400 15px/30px "Barlow"; }
.bloc_contact .left .content p		{ letter-spacing: 0.5px;  text-align:left; margin-bottom:10px;} 
.bloc_contact .left .sous_titre 	{ letter-spacing: 0.2px; color: #f57f20; height: auto; display: block; margin: 40px 0 0 0;    font: 500 18px/30px "Barlow";}
.bloc_contact .left a 		        { color: #fff !important; border:none; }
.bloc_contact .left .btn_phone      { padding: 0 0 0 30px; display: block; background: url(../images/phone.svg) 0px 50% no-repeat; height: 30px; line-height: 30px; margin-bottom: 20px; }
.bloc_contact .left .btn_telfix     { padding: 0 0 0 30px; display: block; background: url(../images/telfix.svg) 0px 50% no-repeat; height: 30px; line-height: 30px; margin-bottom: 20px; }
.bloc_contact .left .btn_enveloppe  { padding: 0 0 0 30px; display: block; background: url(../images/enveloppe.svg) 0px 50% no-repeat; height: 30px; line-height: 30px; margin-bottom: 20px; }

.bloc_contact .right span		    { color:red; }
.bloc_contact .grid					{ display:grid; grid-template-columns:1fr 1fr; align-items:end; grid-gap:20px;}
.bloc_contact .gridrue				{ grid-template-columns:1fr 30%; }
.bloc_contact .gridville			{ grid-template-columns:30% 1fr; }
.bloc_texte:last-child              { margin-top: 80px;}

@media (min-width:1201px) {
.bloc_contact .left a:hover 		{ color: #f57f20!important; border:none; }
.bloc_contact .left .mailcontact:hover    { color: #f57f20; border:none; }
.bloc_contact .left .tel:hover		{ background-position: 0 0;  color: #f57f20;}
}
@media (max-width:1200px) {
.bloc_contact  		 				{ grid-gap:60px; grid-template-columns:340px 1fr;}
.bloc_devis  		 				{ grid-gap:0px; grid-template-columns:1fr; }
}
@media (max-width:1000px) {
.bloc_contact>div 					{ width:100%; padding:0;} 
.wrapper                            { max-width:1000px }
.bloc_contact .right 				{ background:none;}
.bloc_contact .grid					{ grid-template-columns:1fr; grid-gap:0;}
.bloc_contact  		 				{ padding-bottom:0; display:block; margin-bottom:60px; margin-top:0px;}
.bloc_contact .left 				{ width:auto; margin:0 -7.5vw 40px;}
.bloc_contact .left .content		{ padding:30px 7.5vw 20px 7.5vw; border-radius: 0px;}
.bloc_contact .left img				{ display:none;}
.top_page                           { margin-bottom:0px; }
.bloc_texte:last-child              { margin-top: 0px;}
.bloc_devis                         { padding-top: 70px;}
.cont_img                           { display: none; }
    .banner .content                    { margin-top:40px; }
.banner                             { margin-bottom: 0px; }
}

/***** formulaire de contact *****/ 
.contact_form  						{ width:100%; margin:0 auto; letter-spacing:0.2px;}
.contact_form .link					{ cursor:pointer; margin-top: 20px; border:0px; }
.contact_form label					{ margin:20px 0 5px 0; display: block;}
.requis_txt							{ font-size:14px; line-height:35px; letter-spacing:0.4px; color:red;}
.contact_form input[type="text"], 
.contact_form input[type="email"],
.contact_form textarea				{ width:100%; border:1px solid #eeeeee; background: #eeeeee; padding:0 20px; height:60px; padding-bottom:2px; font:400 16px/30px "Barlow"; border-radius:5px;}
.contact_form select                { width:100%; border:1px solid #eeeeee; background: url("../images/arrow_select.svg") calc(100% - 25px) 50% no-repeat #eeeeee; padding:0 20px; height:60px; padding-bottom:2px; font:400 16px/30px "Barlow"; border-radius:5px; appearance: none;}
.contact_form textarea				{ height:auto; min-height:160px; padding:20px;}



/* formulaire : joindre un fichier ss*/
.js .input_file_container 			{ display:inline-block; position:relative;}  
.js .input_file 					{ width:100%; height:100%; position:absolute; top:0; left:0; opacity:0; cursor:pointer;}  
.js .input_file_trigger 			{ width:100%; cursor:pointer; margin:0; padding:0 20px; color:#555; border:1px solid #555; font-size:14px; line-height:58px; background:#fff; }
.js .input_file:hover + .input_file_trigger,  
.js .input_file:focus + .input_file_trigger,  
.js .input_file_trigger:hover,  
.js .input_file_trigger:focus 		{ background-color:#ddd; color: #222;}  
.file_return 						{ margin:0;}  
.file_return:not(:empty) 			{ margin:10px 0 20px 0;}  
.js .file_return 					{ font:400 16px/20px "Barlow";}  
.js .file_return:not(:empty):before { content:"Fichier sélectionné : "; font-style:normal; font-weight:normal; font-family:"Barlow";}  
.input_file_trigger.error 			{ background:red;}




/***** confirmation formulaire *****/
.confirmation_form			 		{ padding:40px; background:#eeeeee; border:1px solid #eeeeee; border-radius:5px; text-align:center;}
.confirmation_form p			 	{ margin:5px 0 20px 0;}

@media (max-width:1000px) {
.contact_form .link					{ height: 60px; padding: 0 30px 0 30px; font: 400 16px/58px "Barlow"; text-transform: none; color: #fff; text-align: center; background: #f57f20; display: block; border-radius: 5px; width: 100%; }
}

@media (max-width:600px) {
.confirmation_form			 		{ padding:30px 20px;}
}


/***** RGPD *****/
#rgpdForm 							{ padding:0px; font: normal 14px/24px "Barlow"; letter-spacing:0.4px; margin:20px 0; border-radius:5px;}
#rgpdForm input[type=checkbox]		{ width:18px; height:18px; display:block; float:left; padding:0; margin:5px 0 0 0; -webkit-appearance:checkbox; -ms-appearance:checkbox; appearance:checkbox; -moz-appearance:checkbox; -o-appearance:checkbox;}
#rgpdForm label						{ display:block; margin:0; padding: 0 0 0 40px; float:none; font:500 12px/24px "Barlow"; letter-spacing:0px;}
#rgpdForm a							{ position:relative; color:#f57f20;}
#rgpdFormAcceptError				{ padding:5px 0 0 30px; color:red;}