/***** champs formulaire *****/ 
label								{ display: block; margin-bottom: 5px; font-size: 14px;}
label span							{ color: #ba0000;} 

select,
input[type="text"],
input[type="email"],
input[type="date"],
input[type="number"],
textarea                            { width:100%; border: none; padding:0 0 0 15px; height:60px; font: var(--fontBody); color: var(--mainColor1); margin-bottom: 10px; display:block; background-color: var(--mainColor4); font-size: 14px; border-radius: 5px;  }
textarea                            { min-height: 160px; padding:20px 0 0 15px; display: block; }
input[type=submit]                  { border: none; cursor: pointer; transition: all 400ms ease-in-out; width: max-content; margin: 0; display: block; } 
input::placeholder                  { color:#878FAB; }

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: none; background-color: var(--mainColor4); -webkit-text-fill-color: var(--mainColor1); transition: background-color 5000s ease-in-out 0s;}


fieldset                            { border: 0; padding: 0; margin: 30px auto; }
legend                              { margin-bottom: 10px; }
select                              { appearance: none; background: url("../images/arrow_select.svg") calc(100% - 20px) 50% no-repeat var(--mainColor4);  }



@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: ; 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: #98c327; 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);}





/***** confirmation formulaire *****/
.confirmation_form			 		{ padding: 30px; background: var(--mainColor1); color: #ffffff; text-align: center; border-radius: 15px;}

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



/***** RGPD *****/
#rgpdForm 							{ font: 400 12px/24px "Nunito"; border: none; letter-spacing: 0.6px; margin-bottom: 30px; padding: 20px; border-radius: 5px; border: 1px solid #cccccc55;}
#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 15px/25px "Nunito"; letter-spacing: 0.6px;}
#rgpdForm a							{ color: var(--mainColor2); border-bottom: 1px solid var(--mainColor2);}
#rgpdFormAcceptError				{ padding: 5px 0 0 30px; color: #ba0000;}

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




.formulaire .grid                   { display: grid; grid-template-columns: 1fr 1fr; gap: 0 10px; }
@media (max-width:600px) {
.formulaire .grid                   { grid-template-columns: 1fr; gap: 0; }

}



/***** page contact *****/
#contact .grid_bloc                 { margin: clamp(30px, 4vw, 100px) auto; }





/* Fade in - champs qui apparaissent au cliq */
#champsProfessionnel {
	opacity: 1;
	max-height: 150px;
	transform: translateY(0);
	overflow: hidden;
	transition:
		opacity 0.3s ease,
		max-height 0.3s ease,
		transform 0.3s ease;
}

#champsProfessionnel.is-hidden {
	opacity: 0;
	max-height: 0;
	transform: translateY(-5px);
	pointer-events: none;
}

.champ-autre {
	opacity: 1;
	max-height: 60px;
	transform: translateY(0);
	transition:
		opacity 0.3s ease,
		max-height 0.3s ease,
		transform 0.3s ease,
		margin 0.3s ease;
}

.champ-autre.is-hidden {
	opacity: 0;
	max-height: 0;
	transform: translateY(-5px);
	margin-top: 0;
	margin-bottom: 0;
	pointer-events: none;
}




/**** uploads ****/
.uploads                     { border: 1px solid #cccccc; border-radius: 0; padding: 20px; margin-top: 40px; margin-bottom: 40px;}
.uploads a                   { color: var(--mainColor1); border-bottom: 1px solid var(--mainColor4);}

.uploads a:hover 			{ color: var(--mainColor2); border-color: var(--mainColor2);}

.custom-file-input                             { color: transparent;display: block; margin-bottom: 0; border: none; padding: 0; height: inherit;}
.custom-file-input::-webkit-file-upload-button { visibility: hidden;}

.custom-file-input::before                { content: "Choisir un fichier"; color: #ffffff; display: inline-block; background: #a61c0e; padding: 10px 22px; outline: none; white-space: nowrap; -webkit-user-select: none; cursor: pointer; font-weight: 300; border-radius: 0; outline: none;  }
.custom-file-input:focus                  {	outline: none !important;}
.custom-file-input:active::before         { transform: scale(.9) translate(0px, 2px); box-shadow:  inset 4px 4px 5px 0px rgba(0, 0, 0, 0.20); }

