@font-face {
    font-family: "HelveticaNeue";
    src: url("../fonts/HelveticaNeue.ttc");
}

@font-face {
    font-family: "HelveticaNeue Bold";
    src: url("../fonts/Helvetica-Neue-LT-Com-77-Bold-Condensed.ttf");
}

@font-face {
    font-family: "HelveticaNeue Black";
    src: url("../fonts/HelveticaNeue-Black.otf");
}

@font-face {
    font-family: "HelveticaNeue Con Black";
    src: url("../fonts/FontsFree-Net-HelveticaNeueCondensedBlack.ttf");
}

html {
    margin: 0;
    padding: 0;
}
input{
    border-radius: 0px;
}
body {
    font-family: 'HelveticaNeue';
    background: url('https://image.experience.total.fr/lib/fe3211717564047d7d1279/m/1/de5f2c7e-fe7c-4637-8c25-247cf5d5ad89.png') center repeat-x;
    background-size: 100% 100%;
    width: 100%;
    min-height: 100vh; 
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}
.container{
    width: 100%;
    max-width: 1335px;
    margin: 0 auto;
    position: relative;
    min-height: 700px;
}
.header {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
}

.contenu {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

#logo {
    width: 370px;
    height: 170px;
    background: white;
}

#logo img {
    width: 100%;
}

#logo-txt {
    color: white;
    height: 170px;
}

.text {
    padding: 0 0 0 50px;
    font-weight: bold;
    font-family: 'HelveticaNeue Con Black', Helvetica, sans-serif;
    font-size: 1.1rem;
}

.text h1 {
    margin-bottom: 0;
    line-height: 35px;
}

.text h2 {
    margin-top: 0.5rem;
    font-size: 1.3em;
}

.content {
    position: absolute;
    bottom: 0px;
    z-index: 2;
    height: 100%;
    /* modif sun */
    align-items: flex-end;
    margin: auto;
}

.form {
    display: flex;
    flex-direction: row;
}

.content .robot {
    max-width: 140vh;
    position: absolute;
    bottom: 0;
    margin-left: -30px;
}

.content .formulaire {
    background: white;
    opacity: 1;
    /* margin-top: 20px; *//*modif by sun */
    margin-left: 25px; /*modif by sun*/
    padding: 30px;
    width: 100%; /*modif by sun*/
    max-width: 81%;/*modif by sun*/
    font-size: 15px; /*modif by sun*/
}

.input-light {
    border: none;
    border-bottom: 1px solid black;
    margin-bottom: 3px;
}

.input-light::placeholder {
    color: black;
    font-family: 'HelveticaNeue Bold';
}

.input-light:focus {
    outline: none;
}

[type="checkbox"]:not(:checked), [type="checkbox"]:checked {
    color: orange;
}

.group {
    display: flex;
}

.gender {
    justify-content: flex-start;
    padding-left: 8px;
}

.infos {
    flex-direction: column;
    height: 100%;
    justify-content: space-evenly;
}

.vertical-align-class {
    align-self: flex-end;
    margin-left: 3px;
    margin-right: 3px;
    padding-top: 3px;
}

.vehicule {}

.energy {}

.optins {
    margin-top: 5px;
    margin-bottom: 15px;
    padding: 5px;
}

.text-bold {
    font-family: 'HelveticaNeue Bold';
}

.center-group {
    flex-direction: row;
}

.left-form-center, .right-form-center {
    width: 50%;
}

.robot-img-mobile {
    display: none;
}

.legal {
    color: white;
    font-size: 7px; /* modif by sun */
    margin-left: 25px; /* modif by sun */
    margin-top: 10px;
    font-family: Arial, Helvetica, sans-serif;
    width: 100%;
    max-width: 87%;
}

.shadowed {
    -webkit-box-shadow: -5px -5px 5px 0px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: -5px -5px 5px 0px rgba(0, 0, 0, 0.75);
    box-shadow: -5px -5px 5px 0px rgba(0, 0, 0, 0.75);
}

.submit-cta {
    background-color: #D8A72B;
    color: white;
    width: 80%;
    margin: auto;
    padding: 10px;
    text-align: center;
    cursor: pointer;
    font-family: 'HelveticaNeue Con Black' ;
    font-size: 15px; /* modif by sun */
  border: 0;
}

.group1 {
    display: flex;
}

.group1 div {
    padding: 5px;
}

.vehicule, .energy, .optins {
    display: block;
}

.cta-container {
    text-align: center;
    margin-top: 10px;
}
.has-error{
    color: red;
}
.has-error::-webkit-input-placeholder {
  color: red !important;
}
.has-error:-moz-placeholder {/* Firefox 18- */
  color: red !important;
}
.has-error::-moz-placeholder{/* Firefox 19+ */
  color: red !important;
}
.has-error:-ms-input-placeholder {
  color: red !important;
}

.lnk_regle{
    color: #000000;
    text-decoration: underline;
}
.lnk_regle:hover{
    text-decoration: underline;
}
/* ------------------- --------------------- modif by sun ----------------------------------- --------------*/
.popup-cookie{ 
    right: 0; 
}

.popup-actions button{ 
    cursor: pointer;  
}
.bloc_robot{
    width: 100%;
    max-width: 1350px;
    margin: 0 auto;
}
.img_robot{
    display: block;
    width: 100%;
    margin-top: 40%;
}
.img_infojeu{
    display: block;
    width: 100%;
}
input[type="radio"],input[type="checkbox"],label {cursor: pointer;}

.blc_infojeu{
    position: relative;
    left: -42px;
}
.txt_infojeu{
    position: relative;
    top: -23px;
}
.txt_info{
    height: 22px;
    background: #ffffff;
    font-size: 11px;
    width: 87%;
    margin-left: 7%;
    font-family: Arial, Helvetica, sans-serif;
    color: #222;
}

.blc_text{
    width: 100%;
}

/* version smaller screen */
@media only screen and (max-width: 1600px) {
    #logo {
        width: 250px;
        height: 130px;
    }
    #logo-txt{
        height: 130px;
    }
    #logo-txt .text{
        font-size: 17px;
    }
    .text h1{
        line-height: 33px;
    }
    .container{
        max-width: 1100px;
        
        min-height: 400px;
    }
    .txt_info{
        font-size: 10px;
    }
    .content{
        position: relative;
    }
    .content .formulaire {
        max-width: 82%;
        font-size: 12px;
        padding: 20px;
    }
    .blc_text{
        width: 100%;
    }
    .legal{
        width: 100%;
        max-width: 87%;
        font-size: 7px;
    }
    .legal p{
       margin: 0 0 5px 0;
    }
    .submit-cta{
        width: 65%;
        font-size: 14px;
    }
    .optins{
        margin-top: 0;
        margin-bottom: 5px;
    }
    .group1 div {
        padding: 2px 5px;
    }
    .img_robot{
        margin-top: 10%;
        max-width: 100%;
    }
}


/* version smaller screen */
@media only screen and (max-width: 1400px) {
    #logo {
        width: 220px;
        height: 110px;
    }
    #logo-txt{
        height: 110px;
    }
    #logo-txt .text{
        font-size: 14px;
    }
    .text h1{
        line-height: 25px;
    }
    .container{
        max-width: 1100px;
        
        min-height: 400px;
    }
    .txt_info{
        font-size: 9px;
    }
    .content{
        position: relative;
    }
    .content .formulaire {
        max-width: 82%;
        font-size: 12px;
        padding: 20px;
    }
    .blc_text{
        width: 100%;
    }
    .legal{
        width: 100%;
        max-width: 87%;
        font-size: 5px;
    }
    .legal p{
       margin: 0 0 5px 0;
    }
    .submit-cta{
        width: 65%;
        font-size: 14px;
    }
    .optins{
        margin-top: 0;
        margin-bottom: 5px;
    }
    .group1 div {
        padding: 2px 5px;
    }
    .img_robot{
        margin-top: 10%;
        max-width: 90%;
    }
}

/* ---------------------------------------------------------- end modif by sun -------------------------------------------------------*/
@media only screen and (max-width: 1000px) {
    body {
        height: unset;
        background-size: 100% 100%;
    }
    .header {
        width: 100%;
        align-items: center;
    }
    
    #logo {
        width: 100%;
        background: white;
        height: 130px;
        display: flex;
        justify-content: center;
    }
    #logo img {
        width: 300px;
        height: 130px;
    }
    .header {
        flex-direction: column;
    }
    .header .text {
        text-align: center;
        font-size: 0.6rem !important;
        padding: 0;
    }
    body {}
    .robot-img-desktop {
        display: none;
    }
    .robot-img-mobile {
        display: block;
        max-width: 100%;
    }
    .formulaire {
        height: unset !important;
        margin: 0 10px !important;
        width: 70% !important;
        font-family: 'HelveticaNeue Con Black';
        font-size: 0.7em;
    }
    .legal {
        padding: 20px 0;
        margin-left: unset;
        margin-top: unset;
        width: 90%;
    }
    .content {
        position: relative;
        z-index: 2;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        margin: auto;
        max-width: 100%;
    }
    .blc_text{
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .content {
        align-items: center;
    }
    .group1 {
        display: flex;
        flex-direction: column;
        margin-top: 20px;
    }
    .group1 div {
        padding: 0px;
    }
    .right-form-center, .left-form-center {
        width: 100%;
        margin-top: 10px;
    }
   
}
/*----------------------- modif sun ----------------*/
@media only screen and (max-width: 600px) {
    .submit-cta{
        width: 95%;
        font-size: 11px;
    }
    .gender{
        padding-left: 0 ;
    }
    input[type="radio"]{
        margin-left: 0;
    }
    .group1{
        margin-top:0;
    }
}
/*----------------------- end modif sun ----------------*/