body{
font-family:'Lato',sans-serif;
font-size:16px;
margin:0;
padding:0;
line-height:24px;
    margin: 0;
    height: 100vh;
    display: flex;
    justify-content: center; /* centre horizontal */
    align-items: center;     /* centre vertical */
}
.video-background {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -2;
}

.video-background video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    animation: slowMove 25s ease-in-out infinite alternate;
}
/* Effet de déplacement lent */
@keyframes slowMove {
    0% { transform: scale(1.1) translateY(0); }
    100% { transform: scale(1.2) translateY(-30px); }
}
a{
text-decoration:none;
color:#000;
}
header,p,nav,section,footer{
margin:0;
padding:0;
}
img{border:none;}

#logo{
	text-align:center;
}
h1{
	text-align:center;
	font-size:22px;
}
h2{
	text-align:center;
	
}
.cadre{
background:rgba(255,255,255,1);
max-width:300px;
padding:5px 50px 50px 50px;
box-shadow: 0 10px 30px rgba(0,0,0,0.1);	
}
.cadre img{
	width:350px;
	height:auto;
}
.cadre h1{
	font-size:35px;
	border:1px solid #cecece;
	padding:25px;
	background:#FFF;
}
.separateur{
	width:20%;
		border-bottom:2px solid #000;
		margin:0 auto;
}
.positionRelative{
	position:relative;
}
.fa-eye{
position:absolute;
right:3px;
top:25px;	
}
h4{
	color:blue;
}
.floatgauche{
	float:left;
	width:40%;
}
.floatdroite{
	float:right;
	width:40%;
}

.inputvide{
	color:#e40505;
}
.erreur{
	color:#e40505;
}

/* comparateur*/ 
#numerotation{
	width:100%;
	display:flex;
	justify-content:center;
	height:50px;
   align-items: center;
   padding:0 !important;

}

#numerotation .trait{
width: 100%;
border-top: solid 5px #77787c;
}
#numerotation .numero{
  display:flex;
  justify-content:center;
  align-items:center;
  position:relative;
  width: 20%;
}
#numerotation .numero:last-child{
width:0;
}
#numerotation .numero p{
  height: 30px;
  width:30px;
  border-radius: 50%;
  background-color:#77787c;
  line-height:30px;
  text-align:center;
  position:absolute;
  left:0;
   color:#FFF;
}
.fini p{
  background: linear-gradient(135deg, #84BD00, #6fa000) !important;
  color: #FFF;
  transition: all 1s linear;
  transform: scale(1.2);
}
.fini .trait{
 border-top: solid 5px #6fa000 !important;
transition: all 2s ease; 
}
.etp1,.etp2,.etp3{
	background:#6fa000;
	width:250px;
	height:35px;
	text-align:center;
	padding-top:15px;
	color:#FFF;
	font-weight:bold;
	float:left;
	transition: all 3s ease;
}

#step2,#step3,#step4{
	display:none;
}

/* *************************************************************************
****************************************************************************
********************************FORMULAIRE STANDARD DU SITE*****************
****************************************************************************
************************************************************************* */
.formulaire{
margin-bottom:25px;
height:auto;
overflow:hidden;
padding:5px;
max-width:400px;
margin: 0 auto;
}
.flex2column{
display:flex;	
justify-content:space-between;
flex:1;
flex-wrap:wrap;
}
.flex2column > div{
width:49%;
}
.formulaire div{
margin-bottom:5px;

}
.formulaire div  label{
	display:block;
  background: white;
  padding: 0 5px;
  color: #000;
  transition: 0.3s;
  	font-weight:bold;
}
.formulaire fieldset{
	border:1px solid rgba(0,0,0,0.2);
	padding-top:25px;
}
.formulaire fieldset legend{
	font-weight:bold;
	background:#a6cb3d;
	padding:10px;
	color:#FFF;
}
.formulaire input,
.formulaire select,
.formulaire textarea {
    box-sizing: border-box;
}
.formulaire input[type="text"],
.formulaire input[type="tel"],
.formulaire input[type="email"],
.formulaire input[type="password"],
.formulaire input[type="number"],
.formulaire input[type="date"],
.formulaire input[type="number"],
.formulaire input[type="date"],
.formulaire select{
    width: 100%; /* responsive */
    height: 65px;
    padding: 10px 12px;
    
    color: #333 !important;
    font-weight: 500;

    border: 1px solid #ddd;
    border-radius: 8px;
    background: #fff;
    outline: none;
    transition: all 0.3s ease;
}
.formulaire input:focus,
.formulaire select:focus{
    border-color: #84BD00;
    box-shadow: 0 0 0 3px rgba(132, 189, 0, 0.2);
}

.formulaire input:hover,
.formulaire select:hover{
    border-color: #aaa;
}
.formulaire input:hover{
    border-color: #aaa;
}
.formulaire input::placeholder{
    color: #999;
    font-weight: normal;
}
.formulaire{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.formulaire input{
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}
.formulaire textarea {
    box-sizing: border-box;
	width: 100%; /* responsive */
    height: 200px;
    padding: 10px 12px;
    
    color: #333 !important;
    font-weight: 500;

    border: 1px solid #ddd;
    border-radius: 8px;
    background: #fff;

    margin-bottom: 15px;

    outline: none;
    transition: all 0.3s ease;
}
.formulaire input[type=submit]{
	background:#6fa000;
	width:250px;
	height:65px;
	text-align:center;
	padding-top:15px;
	color:#FFF;
	font-weight:bold;
	float:left;
	transition: all 3s ease;
	font-size:18px;
	font-weight: bold;
}
.formulaire .bouton{
background:#000;
  color: white;
  padding: 14px 30px;
  border-radius: 10px;
  border: none;
  font-weight: bold;
  transition: 0.3s;
  width:100%;
  height:45px;
  margin-top:35px;
}
.formulaire .bouton:hover{
transform: translateY(-2px);
  box-shadow: 0 8px 10px rgba(0,0,0,0.2);
 background: linear-gradient(135deg, #0b3d2e, #14532d);
}
/* Groupe téléphone */
.phone-group {
display: flex;
    align-items: stretch;
	max-width:100% !important;
	width:100% !important;
	overflow:hidden;
}

/* Champ indicatif */
.phone-group .indicatif {
    width: 80px !important;
    border-radius: 8px 0 0 8px;
    border-right: none !important;
    background: #f3f3f3;
    text-align: center;
    font-weight: 600;
	padding: 10px 12px;
	     height: 42px;
}

/* Champ téléphone */
.phone-group .tel {
    border-radius: 0 8px 8px 0;
    width:255px !important;
}

/* Style commun */
.phone-group input {
    height: 42px;
    padding: 10px 12px;
    border: 1px solid #ddd;
    outline: none;
    box-sizing: border-box;
    transition: all 0.3s ease;
}

.phone-group:focus-within input {
    border-color: #84BD00;
}

.phone-group:focus-within {
    box-shadow: 0 0 0 3px rgba(132, 189, 0, 0.2);
    border-radius: 8px;
}






.suivprec{
   background: linear-gradient(135deg, #9aa0a6, #5f6368);
	text-align:center;
	color:#FFF;
    float:left;
	margin-right:25px;
	 border-radius: 10px;
  border: none;
  font-weight: bold;
   padding: 14px 30px;
   width:250px;
	height:35px;
}
.suivprec:hover{
transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.15);	
}

.erreur{color:red;font-weight:bold;}
.ok{color:green;font-weight:bold;}
.retour a,.retour{color:#FFF;font-weight:bold;padding:10px;}
.dimensionform{
width:50px !important;
}
.nothingfound i{
	font-size:42px;
	color:red;
}
.radio{
	margin-left:25px;
	margin-bottom:50px;
}
#infosponsor{
display:none;	
}

@media only screen and ( max-width: 767px ) {
}