@import url("https://fonts.googleapis.com/css?family=Varela+Round");
@import url(//netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.css);

body {
    background-color: #CCC;
    font-family: "Varela Round", sans-serif;
}
.ml-25 {
    margin-left: 25px;
}
.mt-3 {
    margin-top: 3em!important;
}
.ctr {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 50%;
}
#new-form {
    width: 400px;
    height: 600px;
    background-color: #F3F7FA;
    background-image:url(../img/Apg.svg);
    background-repeat:no-repeat;
    background-size:45%;
    background-position:-25% -25%;
    margin: 30px auto;
    padding: 15px;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
    transition:all .8s ease;
    font-family: "Varela Round", sans-serif;
    box-shadow:0 10px 25px rgba(0,0,0,0.1);
}
#new-form .counter {
    position: absolute;
    color:rgba(0,0,0,0.1);
    font-size:2em;
    left:50%;
    top: 125px;
    font-weight:bolder;
    transform:translateX(-50%);
}
#new-form .counter span {
    font-size:3em;
}
#new-form h3 {
    text-align: center;
    font-weight: 600;
    color: #e3005a;
    text-transform: uppercase;
    font-size: 16px;
}

#new-form h3 span {
    color: #81197f;
}

#new-form p.title {
    color: #81197f;
    font-weight: 400;
    font-size: 14px;
    margin-top: 30px;
    text-align: center;
}

#new-form p.minTx {
    color: lightslategray;
    font-weight: 400;
    font-size: 11px;
    margin-top: 10px;
    display: block;
}

#new-form [type=radio] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

/* IMAGE STYLES */
#new-form [type=radio] + img {
    cursor: pointer;
    opacity: .5;
    width: 100px;
}

/* CHECKED STYLES */
#new-form [type=radio]:checked + img {
    opacity: 1;
}

#new-form .question {
    position: absolute;
    transition: all .4s ease;
    width: 100%;
    margin-left: -15px;
}

#new-form .in-view {
    top: 60%;
    transform: translateY(-50%);
    opacity: 1;
}

#new-form .up {
    top: -100%;
    opacity: 0
}

#new-form .down {
    top: 100%;
    opacity: 0;
}

#new-form button {
    position: absolute;
    bottom: 10px;
    right: 10px;
    transition: all.4s ease;
    background: linear-gradient(to right top, #3043c0, #5f49cc, #8450d7, #a656e1, #c75cea)!important;
    border: none;
    color: #FFF;
    font-weight: bolder;
    padding: 10px;
    border-radius: 5px;
    outline: none;
}

.skip {
    float: left;
    position: absolute;
    bottom: 10px;
    left: 10px;
    background: none!important;
    border: none!important;
    color: black!important;
    text-decoration: underline!important;
    text-transform: capitalize;
    padding: 10px;
}

#new-form .error {
    margin-top: 10px;
    color: crimson;
    display: none;
}

#new-form input {
    width: 100%;
    position: relative;
    text-align: center;
    padding-top: 20px;
    padding-bottom: 20px;
    outline: 0;
    background: rgba(255, 255, 255, 0.4);
    border-radius: 4px;
    font-size: 3em;
    color: lightslategray;
    border: 2px solid #FFF;
    box-shadow: 0 10px 20px rgba(227, 0, 90, 0.5);
    transition: all .3s ease;
}

/* Changement du fond jaune de l'autocomplete dans chrome*/
#new-form input:-webkit-autofill,
#new-form input:-webkit-autofill:hover, 
#new-form input:-webkit-autofill:focus
#new-form textarea:-webkit-autofill,
#new-form textarea:-webkit-autofill:hover
#new-form textarea:-webkit-autofill:focus,
#new-form select:-webkit-autofill,
#new-form select:-webkit-autofill:hover,
#new-form select:-webkit-autofill:focus {
  border: 2px solid #FFF;
  -webkit-text-fill-color: lightslategray;
  -webkit-box-shadow: 0 0 0px 1000px rgba(255, 255, 255, 0.4) inset;
  transition: background-color 5000s ease-in-out 0s;
}

#new-form .gear {
    position: relative;
    width: 45px;
    height: 45px;
    margin: auto;
    background: #25313F;
    border-radius: 50%;
    animation: spin 7s linear 0s 1 forwards;
    margin-bottom: 30px;
    display: inline-block;
    transform: rotate(-15deg);
}

#new-form .gear .center {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 10;
    width: 25px;
    height: 25px;
    background: #F3F7FA;
    border-radius: 50%;
}

#new-form .gear .tooth {
    position: absolute;
    top: -7px;
    left: 18px;
    z-index: 1;
    width: 10px;
    height: 60px;
    background: #25313F;
}

#new-form .gear .tooth:nth-child(2) {
    transform: rotate(45deg);
}

#new-form .gear .tooth:nth-child(3) {
    transform: rotate(90deg);
}

#new-form .gear .tooth:nth-child(4) {
    transform: rotate(135deg);
}

#new-form .gear-reverse {
    position: relative;
    width: 45px;
    height: 45px;
    margin: auto;
    background: #25313F;
    border-radius: 50%;
    margin-bottom: 30px;
    display: inline-block;
    transform: rotate(-15deg);
    animation: spin-reverse 7s linear 0s 1 forwards;
    opacity: .8
}

#new-form .gear-reverse .center {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 10;
    width: 25px;
    height: 25px;
    background: #F3F7FA;
    border-radius: 50%;
}

#new-form .gear-reverse .tooth {
    position: absolute;
    top: -7px;
    left: 18px;
    z-index: 1;
    width: 10px;
    height: 60px;
    background: #25313F;
    transform: rotate(65deg);
}

#new-form .gear-reverse .tooth:nth-child(2) {
    transform: rotate(115deg);
}

#new-form .gear-reverse .tooth:nth-child(3) {
    transform: rotate(155deg);
}

#new-form .gear-reverse .tooth:nth-child(4) {
    transform: rotate(200deg);
}

ul {
    color: #81197f;
    font-weight: 400;
    font-size: 14px;
    margin-top: 30px;
    list-style-type: disc;
    padding-left: 35px;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(720deg);
    }
}

@keyframes spin-reverse {
    from {
        transform: rotate(720deg);
    }

    to {
        transform: rotate(0deg);
    }
}

#new-form .load-space {
    width: 350px;
    text-align: center;
    display: none;
    width: 100%;
}

#new-form .load-space p {
    color: #25313F;
}

#new-form .load-space .load-bar {
    width: 80%;
    margin-left: 33px;
    height: 25px;
    background: rgba(227, 0, 90, 0.5);
    overflow: hidden;
    border-radius: 15px;
    position: relative;
    border: 1px solid #FFF;
}

#new-form .load-space .load-juice {
    background: linear-gradient(to top, #571F4E, #ED217C);
    position: absolute;
    height: 100%;
    width: 0;
    transition: all .2s ease;
    animation: load 7s ease 0.5s 1 forwards;
}

#new-form .load-space .load-juice:after {
    content: "";
    position: absolute;
    height: 100%;
    background: linear-gradient(to bottom, #000, transparent);
    width: 100%;
    top: 1px;
    left: 0;
    opacity: .2;

}

@keyframes load {
    0% {
        width: 0;
    }

    15% {
        width: 10%;
    }

    30% {
        width: 25%
    }

    40% {
        width: 30%
    }

    60% {
        width: 55%
    }

    80% {
        width: 57%;
    }

    100% {
        width: 100%
    }
}

#new-form .load-space button {
    padding: 15px;
    margin-top: 40px;
    border-radius: 50px;
    border: 0;
    outline: 0;
    background: #571F4E;
    color: #FFF;
    text-transform: uppercase;
    font-weight: bolder;
    font-family: 'Varela Round', sans-serif;
    transition: all .3s ease;
    opacity: 0;
    animation: button 7.5s ease 0.5s 1 forwards;
    position: relative;
}

@keyframes button {
    0% {
        opacity: 0;
    }

    90% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

#new-form .load-space button:hover {
    background: #ED217C;
    cursor: pointer;
    box-shadow: 0 0 15px rgba(237, 33, 124, 0.5);
}

/*** custom checkboxes ***/

input[type=checkbox] { display:none; } /* to hide the checkbox itself */
input[type=checkbox] + label:before {
  font-family: FontAwesome;
  display: inline-block;
}

input[type=checkbox] + label:before { content: "\f096"; } /* unchecked icon */
input[type=checkbox] + label:before { letter-spacing: 10px; } /* space between checkbox and label */

input[type=checkbox]:checked + label:before { content: "\f046"; } /* checked icon */
input[type=checkbox]:checked + label:before { letter-spacing: 5px; } /* allow space for check mark */