/***** champs formulaire *****/ 
label								{ display: block; margin-bottom: 5px;}
label span							{ color: #ba0000;}
select,
input[type="text"],
input[type="email"],
input[type="date"],
input[type="number"],
textarea 							{ width:100%; border:1px solid #efeae5; padding:0 0 0 15px; height:60px; font: 400 14px/30px "Roboto"; border-radius:8px; color:#7a7a7a; margin-bottom: 10px; letter-spacing: 0.4px; display:block; background: #ffffff; }
textarea							{ min-height: 160px; padding:20px 0 0 15px; display: block; border-radius: 8px;}
/*input[type=checkbox] 				{ -webkit-appearance: checkbox; -ms-appearance: checkbox; appearance: checkbox; -moz-appearance: checkbox; -o-appearance: checkbox; width: 20px; height: 20px; display: block; float: left; padding: 0; margin: 0;}*/
/*input[type=submit]                  { border:1px solid #000000; background: #ffffff; padding: 20px 20px; font-size: 13px; font-weight: 600; letter-spacing: 3px; text-transform: uppercase; color: #000000; cursor: pointer; transition: all 400ms ease-in-out;} */


input::placeholder      { color:#00000040; }

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus 		{ border: 1px solid #010101; -webkit-text-fill-color: #00000040; box-shadow: 0 0 0px 1000px #ffffff inset; transition: background-color 5000s ease-in-out 0s;}

@media (min-width:1201px) {
    /*input[type=submit]:hover     { color: #ffffff; background: #000000; transition: all 400ms ease-in-out;}*/
}


[type="radio"]:checked,
[type="radio"]:not(:checked)                 { position: absolute; left: -9999px;}
[type="radio"]:checked + label, 
[type="radio"]:not(:checked) + label         { position: relative; padding-left: 28px; cursor: pointer; line-height: 20px; display: inline-block;}
[type="radio"]:checked + label:before,
[type="radio"]:not(:checked) + label:before  { content: ''; position: absolute; left: 0; top: 0; width: 18px; height: 18px; border: 1px solid #ddd; border-radius: 100%; background: #fff;}
[type="radio"]:checked + label:after,
[type="radio"]:not(:checked) + label:after   { content: ''; width: 12px; height: 12px; background: #7a7a7a; position: absolute; top: 3px; left: 3px;  border-radius: 100%;    -webkit-transition: all 0.2s ease; transition: all 0.2s ease;}
[type="radio"]:not(:checked) + label:after   { opacity: 0; -webkit-transform: scale(0); transform: scale(0);}
[type="radio"]:checked + label:after         { opacity: 1; -webkit-transform: scale(1); transform: scale(1);}


/* custom select */
.select2                                                                            { width: 100%!important; margin-bottom: 10px;}
.select2-container--default .select2-selection--single 								{ border: 1px solid #dfdfdf; border-radius: 8px; height: 53px; background: url("../images/arrow-select.svg") right+20px center no-repeat #fff;}
.select2-container .select2-selection--single .select2-selection__rendered 			{ line-height: 25px; padding: 14px 25px;}
.select2-container--default .select2-selection--single .select2-selection__arrow 	{ display: none;}
.select2-dropdown 																	{ border-color: #dfdfdf; border-radius: 8px; overflow: hidden;}
.select2-dropdown b, .select2-dropdown strong 										{ font-size: 14px;}
.select2-container--default .select2-results__option      					        { background: #ffffff; color: #000000; transition: all 400ms ease-in-out;}
.select2-container--default .select2-results__option:hover    					    { background: #f4f3f1; color: #7a7a7a; transition: all 400ms ease-in-out;}
.select2-container--default .select2-results__option--selected    					{ background: #f4f3f1; color: #7a7a7a;}
.select2-container--default .select2-search--dropdown .select2-search__field 		{ border-color: #f4f3f1;}
.select2-search                                                                     { display: none;}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable { background-color: #f4f3f1; color: #7a7a7a;}

@media (max-width:700px) {
.select2-container--default .select2-selection--single 								{ border-radius: 5px; height: 48px;}
.select2-container .select2-selection--single .select2-selection__rendered 			{ line-height: 20px; padding: 14px 20px;}
.select2-dropdown 																	{ border-radius: 5px;}
}



/***** confirmation formulaire *****/
.anchor 							{ position: absolute; left: 0; top: -140px;}
.confirmation_form			 		{ text-align: center; border: 1px solid #efeae5; padding: 40px; background: #efeae5; color: #000000; border-radius: 10px; margin: 80px auto;}
.confirmation_form p			 	{ font-size: 16px; text-transform: uppercase; margin-bottom: 0;}

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


/***** RGPD *****/
#rgpdForm 							{ font: 400 12px/24px "Poppins"; border: none; letter-spacing: 0.6px; margin-bottom: 30px;}
#rgpdForm input[type=checkbox]		{ width: 18px; height: 18px; display: block; float: left; padding: 0; margin: 2px 0 0 0; -webkit-appearance: checkbox; -ms-appearance: checkbox; appearance: checkbox; -moz-appearance: checkbox; -o-appearance: checkbox;}
#rgpdForm label						{ display: block; margin: 0; padding-left: 30px; font: 400 12px/24px var(--fontBody); letter-spacing: 0.6px;}
#rgpdForm a							{ position: relative; color: #000000; border-bottom: 1px solid #00000060; padding-bottom: 1px;}
#rgpdFormAcceptError				{ padding: 5px 0 0 30px; color: #ba0000;}

@media (min-width:1201px) {
    #rgpdForm a:hover 					{ border-color: #ba0000; color: #ba0000;}
}


/***** page contact *****/
.bloc_contact        { width: 90vw; max-width: 900px; margin: 0 auto; position: relative;}

.page p a.contact-map, .page p a.contact-phone, .page p a.contact-mail { position: relative; padding-left: 30px; padding-bottom: 0; border-bottom: none;}

a.contact-map:before { content: ''; background: url("../images/map.svg") left 50% no-repeat; width: 14px; height: 17px; position: absolute; left: 0; top: 50%; transform: translateY(-50%);}
a.contact-phone:before { content: ''; background: url("../images/tel.svg") left 50% no-repeat; width: 19px; height: 19px; position: absolute; left: 0; top: 50%; transform: translateY(-50%);}
a.contact-mail:before { content: ''; background: url("../images/mail.svg") left 50% no-repeat; width: 20px; height: 20px; position: absolute; left: 0; top: 50%; transform: translateY(-50%);}

.bloc_contact h6                { margin-bottom: 0;}

.contact_form                   { background: #ffffff40; padding: 80px; border-radius: 0; position: relative; border-top-right-radius: 80px; border-bottom-left-radius: 80px;}

.grid              			    { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 30px; margin-bottom: 30px;  }
.grid .item                     { position: relative;}
.grid .item.margin-top          { margin-top: 40px;}
.grid .item_full				{ grid-column: span 2; position: relative;}

@media (max-width:1200px) {
    .grid-contact         { grid-gap: 0 40px;}
    .contact_form         { border-top-right-radius: 60px; border-bottom-left-radius: 60px; padding: 60px;}
}

@media (max-width:1000px) {
    .grid-contact         { grid-gap: 0 20px;}
    .contact_form         { border-top-right-radius: 40px; border-bottom-left-radius: 40px; padding: 40px;}
}

@media (max-width:800px) {
    .grid-contact         { grid-template-columns: 1fr; grid-gap: 40px 0;}
}

@media (max-width:500px) {
    .contact_form         { padding: 40px 20px;}
}

.submitBtn:disabled { background: unset; background-color: #aaa; color: #111111; cursor: not-allowed;} 