@charset "UTF-8";html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}

html,body{
	margin: 0;
	padding: 0;
    list-style-type: none;
    text-decoration: none;
    font-family: Arial, Helvetica, sans-serif;
}

body{
    background-image: linear-gradient(to top, #6e0289b9,  transparent, #6e0289b9), url('/images/fond-contact.jpg');
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: Arial, Helvetica, sans-serif;
}

form{
    background: white;
    width: 500px; /* ou 100% selon le contexte */
    margin: auto;
    padding: 20px;
    border-radius: 10px;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    border: 5px solid #cc00ff;
}

form input{
    box-sizing: border-box; /* important pour padding */
    width: 100%;
    display: block;
    padding: 15px 10px;
    margin-bottom: 20px;
    border-radius: 5px;
    font-size: 16px;
    border: 1px solid #cc00ff;
}

form label{
    color: #6e0289;
    text-align: left;
    margin-bottom: 10px;
    display: inline-block;
    width: 100%;
    padding: 1px 3px;
}

form ul{
    align-self: start;
    margin-left: 16px;
    margin-bottom: 10px;
    margin-top: 5px;
}

form ul li{
    color: red;
    font-size: 16px;
    list-style-type: circle;
    margin-bottom: 5px;
}

form button{
    background-color: #cc00ff;
    font-weight: 700;
    color: white;
    margin-bottom: 15px;
    padding: 15px 10px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    width: 100%;
    font-size: 16px;
}

form button:hover{
    background-color: #cc00ffb4;
}

form img{
        height: 80px;
    width: 80px;
    background-color: rgba(255, 255, 255, 0.801);
    padding: 5px;
    border-radius: 5px;
    margin: 10px 0;
}

form h2{
    color: #cc00ff;
    font-size: 25px;
    font-weight: 700;
    margin: 10px 0;
}

form p{
    text-align: center;
    color: #6e0289;
    line-height: 20px;
    font-size: 16px;
    margin-bottom: 10px;
}

form a{
    text-decoration: none;
    color: #6f0289;
    font-size: 16px;
    font-weight: 500;
    margin-top: 5px;
    margin-bottom: 8px;
}

form span{
    line-height: 25px;
    text-align: center;
}

form a:hover{
    color: #6e0289cc;
}

@media screen and (max-width: 600px) {
    form{
        width: 80%;
    }
}

@media screen and (max-width: 350px) {
    form{
        padding: 10px;
    }

    form img{
        width: 200px;
        height: 70px;
    }
    
    form h2{
        font-size: 25px;
    }
}


/* Animation de bloc */
/* De haut en bas */
[class*="reveal-"]{
    opacity: 0;
    transform: translateY(-50px);
}

.reveal-visible{
    opacity: 1;
    transform: translateY(0);
    transition: 1s cubic-bezier(.5,0,0,1);
}

.reveal-1{
    transition-delay: .3s;
}

.reveal-2{
    transition-delay: .5s;
}

.reveal-3{
    transition-delay: .7s;
}

/* De gauche à droite */
[class*="gauche-"]{
    opacity: 0;
    transform: translateX(-50px);
} 

.gauche-visible{
    opacity: 1;
    transform: translateX(0);
    transition: 1s cubic-bezier(.5,0,0,1);
}

.gauche-1{
    transition-delay: .3s;
}

.gauche-2{
    transition-delay: .5s;
}

/* De droite à gauche */
[class*="droite-"]{
    opacity: 0;
    transform: translateX(50px);
}  

.droite-visible{
    opacity: 1;
    transform: translateX(0);
    transition: 1s cubic-bezier(.5,0,0,1);
}

.droite-1{
    transition-delay: .3s;
}

.droite-2{
    transition-delay: .5s;
}

/* Partie loading */
.centre-loading{
    height: 100%;
    width: 100%;
    background: #6f0289;
    background: linear-gradient(to left,  white, #6f0289);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover; 
    z-index: 4000;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
}

.centre-loading img{
    border-radius: 50%;
    animation: cache 5s infinite;
    height: 80px;
    width: 80px;
    background-color: white;
    padding: px;
    box-shadow: 1px 1px 30px #6f0289;
}

@keyframes cache{
    0%{
        opacity: 1;
    }
    50%{
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}

.fondu-out{
    display: none;
}