body {
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
    font-family: 'montserrat', helvetica, arial, sans-serif;
    font-size: 62.5%;
    position: relative;
    overflow-x: hidden;
    background-color:#fff;
}
#wrapper {
    padding-bottom:10px;
    margin-bottom: 30px;
}
#channel2-head {
    background-color: #fff;
    padding: 1em 2em;
    margin-bottom: 1em;
}

#channel2-head a{
    background-color: #fff;
    padding: 20px;
}

.head-stats .elem-stats.internautes {
    padding: 4px;
    color: #000;
}
.content-landing {
    position: relative;
    overflow:hidden;
    background-image:url('/assets/conso-enquete/img/pass_culture/bgd.jpg');
    background-position:bottom center;
    background-size:cover;
    background-repeat:no-repeat;padding-top:15px;
    min-height: 740px;
}
.max-width {
    max-width:2000px;
    margin:auto;
    position:relative;
}

.z-index {
    z-index:11 !important;
}
.none {
    display:none;
}
.i-block {
    display:inline-block !important;
    vertical-align:top;
}
.invisible {
    visibility:hidden;
}
.desktop {display:block;}
.responsive {display:none;}

/***HEADER***/

#header {
    width: 100%;
    padding: 0.5em;
    background-color: #fff;
    position: relative;
    z-index: 3;
}
#header .logo {
    float:left;
}
#header .logo img {
    width: 10em;
}
#header .f-right {
    float: right;
    margin-top: 0.5em;
}
#header .f-right .col {
    display:inline-block;
    vertical-align:middle;
    color:#fe0202;
    margin:0 0.8em;
}
#header .f-right .col i {
    border: 1px solid #061a69;
    font-size: 1.5em;
    padding: 0.5em;
    border-radius: 50%;
    color: #061a69;
    display:inline-block;
    vertical-align:middle;
}
#header .f-right .col .nb p {
    display:inline-block;
    vertical-align:middle;
    font-weight:300;
    font-size:1.4em;
    margin-left:0.5em;
    color:#061a69;
}

/***CONTENU***/

.bloc-title {
    text-align: center;
    font-family:  'Montserrat', sans-serif;
    color:#000;
    font-size:3.4em;
    line-height:1.0;
    color:#fff;
    text-shadow: 1px 1px 3px #000000;
}
.bloc-title span {font-size:2em;line-height:0.9;font-weight: 800;text-transform: uppercase;}
.bloc-produit {text-align: center;margin-top:30px;}
.bloc-produit img {width:90%;}
.main {
    width: 100%;
    position: relative;
    z-index: 3;
    padding: 0;
}
.main .left-content {
    position: relative;
    top: 0em;
}
.main .item-bloc img {width:100%;}
.txt {font-size:1.8em;font-weight:300;}
.txt .number1 {
    font-family: 'Montserrat', arial, helvetica, sans-serif;
    display: inline-block;
    text-align: center;
    background-color: #000;
    color:#fff;
    border-radius: 40px;
    width: 35px;
    line-height: 35px;
    font-weight:900;
}
.main .form-content {
    background-color: #fff;
    position: relative;
    padding:0;
    border-radius:0;
    box-shadow: 0px 0px 5px rgba(0,0,0,0.25);
}

#form_accueil_v2{margin-bottom: 0}

.form-content .number2 {
    font-family: 'Montserrat', arial, helvetica, sans-serif;
    position: relative;
    left: 45%;
    top: -18px;
    display: inline-block;
    color: #fff;
    font-size: 1.8em;
    font-weight:900;
    text-align: center;
    background-color: #000;
    border-radius: 40px;
    width: 35px;
    line-height: 35px;
}
.main p.title-step {
    font-family: "Montserrat", helvetica, arial, sans-serif;
    color: #000;
    font-size: 1.45em;
    line-height:1.2;
    font-weight:600;
    text-align: center;
    padding: 1.5em 1.5em 1em 1.5em;
}
.main p.title-step span {
    font-size: 0.9em;
    font-weight:300;
    color: #ccc;
}
.main p {margin-bottom:0;}
.v2 .main p.title-step {
    font-size: 2em;
    padding: 0.5em 0;
}
.main .content-right {
    position: absolute;
    right: -45em;
    top: 25em;
    text-align:center;
}
.main .content-right img.blur {
    position:absolute;
}
.main .content-right img.logo-jo {
    width: 15em;
}
.main .content-right img.logo-qled {
    width: 36em;
}
.main .content-right p {
    text-transform: uppercase;
    font-family: 'Montserrat', arial, helvetica, sans-serif;
    font-size: 6em;
    color: #FFF;
    font-weight: bold;
    margin-top: 0.5em;
}
.main .content-right img.blur {
    position: absolute;
    right: -2em;
    top: 0em;
    width: 10em;
}



/***FORMULAIRE***/

.form-content {
    background-color:#FFF;
    position:relative;
    z-index:2;
}
.form {
    padding: 1.1em 2em 2em 2em;
    background: #f4f4f4;
}
#wrapper div.selector.fixedWidth span {
    padding-right: 0;
    max-width: 100%;
}
#form-bloc-1 .form_elem {
    position: relative;
}
#form-bloc-1 .form_elem input {
    width: 100%;
    border: 0;
    padding: 0.6em;
    font-size: 1.2em;
    background-color: transparent;
    border-bottom: 1px solid #000;
    border-radius:0;
    font-family: "montserrat";
}
#form-bloc-1 .form_elem input::placeholder {
    color:#6d6d6d;
}
#form-bloc-1 #infos-accueil .infos-accueil {
    font-size: 1.5em;
    font-weight: 300;
    padding: 0.5em;
    border-bottom: 1px solid #e4e4e4;
    color: #000;
    background-color: #E7E7E7;
}
.v2 #form-bloc-1 #infos-accueil .infos-accueil {
    font-size: 1.5em;
    display: inline-block;
    margin-top: 0.5em;
}
#form-bloc-1 #infos-accueil p.infos-title {
    text-transform: uppercase;
    text-align: center;
    font-size: 1.5em;
    font-weight: 900;
    padding: 0.2em 0;
    color: #bf3314;
    margin-bottom: 0.5em;
}

.v2 #form-bloc-1 #infos-accueil p.infos-title {
    text-transform: uppercase;
    text-align: left;
    background-color:transparent;
    font-size: 1.5em;
    font-weight: 300;
    padding: 0.2em 0;
    color: #00a0da;
}
#form-bloc-1 #infos-accueil button {
    background-color: #efefef;
    color: #424242;
    border: none;
    text-align: center;
    display: inline-block;
    margin-top: 1em;
    font-size: 1.5em;
    cursor: pointer;
    outline: none;
    padding: 0.5em 2em;
    text-align: right;
    float: right;
    font-weight: 600;
}
.v2 #form-bloc-1 #infos-accueil button {
    background-color: #00a0da;
    color: #eeeeee;
    text-align: center;
    display: inline-block;
    padding: 0.5em 1em;
    font-weight: 600;
    float: none;
    margin-top: 0;
    position: relative;
    top: 1px;
}
#form-bloc-1 #infos-accueil p.missing-infos {
    text-align: center;
    font-size: 1.2em;
    padding: 0.5em 0;
    font-weight: 600;
    text-transform: uppercase;
    color: #ffffff;
    background-color: #073468;
    margin: 1em 0;
    position: relative;  
}
#form-bloc-1 #infos-accueil p.missing-infos::after {
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 15px solid #073468;
    content: "";
    left: 50%;
    margin-left: -15px;
    position: absolute;
    top: 25px;
}
.v2 #form-bloc-1 #infos-accueil p.missing-infos {
    text-align: left;
    font-size: 2em;
    padding-bottom: 0.5em;
    margin: 0.3em 0;
    font-weight: 600;
    text-transform: uppercase;
    color: #d7420b;
    border-bottom: 1px solid #e0e0e0;
}
.v2 .form-bloc-1, .v2 .form-bloc-2 {
    display:inline-block;
    vertical-align:top;
}
.v2 .form-bloc-1 {
    width:60%;
}
.v2 .form-bloc-2 {
    width: 37%;
    margin:0 1em;
}
.v2 .form-bloc-1 .form_elem {
    width: 49%;
    display: inline-block;
    vertical-align:top;
    margin: 0 0.2em !important;
}
.v2 .form_elem#id_gender {
    width: 17%;
}
.v2 .form_elem#firstname, .v2 .form_elem#lastname {
    width: 40%;
}
.v2 .form_elem#cityBlock div.selector.fixedWidth span {
    max-width: none;
}
.form_date select[name="birthday_a"] {
    width: 33%;
}
.form_date select[name="birthday_m"] {
    width: 40%;
    margin-right: 1%;
}
.form_date select[name="birthday_j"] {
    width: 25%;
    margin-right: 1%;
}
input[type=text], textarea {
    height: 38px;
    background-color: #f1f2f7;
    border: none;
    padding: 0 10px;
    font-family: helvetica;
    font-size: 1.4em;
    width: 100%;
    margin-bottom: 0.4em;
    font-family: 'montserrat', 'helvetica';
    font-weight: 300;
}
#id_gender .bloc-radio label {
    /*    background-color: #fff;*/
    color:#6d6d6d;
    height: 27px;
    line-height: 27px;
    margin: 0;
    width: 48%;
    text-align: left;
    border-radius: 3px;
    border: none;
    padding: 0 0 0 7px;
    cursor: pointer;
}
#form_accueil_v2 label {color:#fff;}
#id_gender .bloc-radio label:hover, #id_gender .bloc-radio label.active {
    background-color:transparent; /*#6d6d6d*/
    border-color: #eee;

}
.form_elem .bloc-radio {font-size:1.25em;padding:0.25rem 0.25rem 0.15rem 0.75rem;border: none;}
.form_elem .bloc-radio.active {
    background-color: #ccc;
}
.form_elem {margin-bottom:5px!important;}

#wrapper div.selector.fixedWidth {
    margin-bottom: 5px;
}
#form_accueil_v2 .form_elem#firstname, #form_accueil_v2 .form_elem#lastname {
    width:100%;
}
#form_accueil_v2 .form_elem {
    width:100%;
    padding-right:0;
}
#form_accueil_v2 .form_elem#id_gender {
    width:100%;
}
.custom-select {
    background-color:transparent;
    border:1px solid #000;
    color:#6d6d6d;
    font-size:1.2em;
    font-weight:300;
}
.birthday label {
    color:#000 !important;font-size:1.2em;
}
#email label {
    display:none;
}
#create_customer.btn-big{text-align: center;}
/*#create_customer button {
    font-family: 'Montserrat', arial, helvetica, sans-serif;
    text-transform: uppercase;
    cursor: pointer;
    width: 100%;
    height: auto;
    font-weight: 600;
    background-color: #a7cb51;
    background-size: cover;
    color: #FFF;
    font-size: 3em;
    border: none;
    outline: none;
    padding: 0.5em 0;
}*/
#form_accueil_v2 button[type="submit"] {
    font-family: 'Montserrat', arial, helvetica, sans-serif;
    font-weight: 600;
    color: #000;
    background-color: #bf3314;
    padding:15px 0;
    color: #fff;
    border-radius: 0px 0px 0px 0px;
}
#create_customer button:hover {
    opacity:0.8;
}

#ui-datepicker-div {
    font-size: 1.5em;
}
.infos_text {margin:0;}
.btn-big {margin-top:10px;}
p.infos_text {
    font-weight: 300;
    text-align: justify;
    color: #6d6d6d;
    line-height:1.2;
}
input.nosponsor {
    color: #1428A0;
}
.form-control {color:#ccc;}
.invalid-tooltip {font-size:0.95em;font-weight:300;}
.error {
    /* font-weight: 600; */
    font-size: 1.2em;
    position: relative;
    bottom: 9px;
    color: #ffffff;
    background-color: rgb(255, 7, 7);
    padding: 0.2em;
    margin-top: 1em;
    text-align: -webkit-center;
    -webkit-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.47);
    -moz-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.47);
    box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.47);
}
.error::after {
    content: '';
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #ff0707;
    left: 47%;
    position: absolute;
    top: -6px;
}

/***MENTIONS LÉGALES***/

.mentions-legales {
    text-align:center;
}
.mentions-legales p {
    font-weight: 300;
    font-size: 1.6em;
    padding: 1em 0;
    color: #5f5f5f;
}

/***FOOTER***/

#footer {
    text-align: center;
    font-weight: 300;
    font-size: 1.4em;
    padding: 1em 0;
    position:relative;
    z-index:3;
}
#footer a {
    color:#5a5a5a;
    padding:0 10px;
}

/***SLIDER GAGNANTS***/

.bloc-gagnants .gagnants-title {
    background-color:#f1393f;
}
.bloc-gagnants .gagnants-title::after {
    border-left: 23px solid #f1393f;
}
.custom-radio .custom-control-input:checked ~ .custom-control-label::after {background-image: none;}


/***** ANIMATION ****/

.img-absolute{position:absolute;}
.img-absolute.ticket {
    z-index: 99;
    width: 50em;
    left: 25%;
    top: 47%;
    
}

.anim-ticket {
    animation:animTicket 0.5s ease-in-out;
    -webkit-animation:animTicket 0.5s ease-in-out;
    -moz-animation:animTicket 0.5s ease-in-out;
}

@keyframes animTicket{
    0% {
        transform:translateX(0%) translateY(-40%) scale(0.1);
        opacity:1;
    }
    
    100% {
        transform:translateX(0%) translateY(0%) scale(1);
        opacity:1;
    }
}
@-webkit-keyframes animTicket{
     0% {
        transform:translateX(0%) translateY(-40%) scale(0.1);
        opacity:1;
    }
    
    100% {
        transform:translateX(0%) translateY(0%) scale(1);
        opacity:1;
    }
}
@-moz-keyframes animTicket {
    0% {
        transform:translateX(0%) translateY(-40%) scale(0.1);
        opacity:1;
    }
    
    100% {
        transform:translateX(0%) translateY(0%) scale(1);
        opacity:1;
    }
}




/***RESPONSIVE***/

@media (max-width: 2000px) {
    .main .left-content {
        position: relative;
        text-align: center;
    }

    .main .content-right {
        position: absolute;
        right: -30em;
        top: 25em;
    }
    .main .content-right img.logo-qled {
        width: 25em;
    }


}
@media (max-width: 1760px) {
    p.title {
        font-size: 5em;
    }
    .main .content-right {
        position: absolute;
        right: -20em;
        top: 12em;
    }
    
    .img-absolute.ticket {
    width: 40em;
    left: 25%;
    top: 47%;
    z-index: 99;
    }
}
@media (max-width: 1440px) {
    
    #form_accueil_v2{
        margin-bottom: 1rem
    }
    
    p.title {
        font-size: 5em;
    }
    .img-absolute.ticket {
    left: 15%;
    top: 39%;
    }
    
}
@media (max-width: 1280px) {    
    .v2 p.title {
        font-size: 3em;
        padding: 0.5em 0;
    }
    p.title {
        font-size: 4em;
    }
}
@media (max-width: 1200px) {
    .main {
        padding: 0 0 2em 0;
    }
    .bloc-title {
        font-size: 2.8em;
    }
    .bloc-title img.accroche{
        display:none;
    }
    .bloc-produit img {
        width: 100%;
    }
    .top-responsive {
        display:block !important;
        width:100%;
    }
    p.title {
        display:none;
    }
    .main {
        top:0;
    }
    .bloc-title {
        position:inherit; 
        top:0;
    }
    .form-content .number2 {
        left: 47%;
    }
    .img-absolute.ticket {
    left: 10%;
    z-index: 99;
    }
}
@media (max-width: 998px) {
    #channel2-head .col-sm-4 {padding:10px;}

    .container {
        width: 100%!important;
    }
    .bloc-title {font-size:2.0em;}
    
    .img-absolute.ticket {
    left: 2%;
    top: 40%
    }
    
    .resp {display:none;}
    .txt {text-align: center;}
    .main .form-content {margin-top:25px;}
    
}
@media (max-width: 991px) {
    .content-landing {padding-top:0;background-image:none;background:#f4f4f4;}
    .bloc-produit {margin-top:0;}
    .main .form-content {background:#f4f4f4;}
    .main .form-content {
    box-shadow:none;
}
    .exterieur{display: none}
    .desktop {display:none;}
    .responsive {display:block;}
    .bloc-produit img {width: 100%;}
    .main .left-content {padding-right:0;padding-left:0;}
    .main .form-content {margin-top: 0px;border-radius: 0px}
    .img-absolute.ticket {width: 30%;left: 35%;top: 65%;}
    #channel2-head a{background-color: transparent;padding: 0px}
    #form_accueil_v2 button[type="submit"] {border-radius: 0px}
    
}
@media (max-width: 800px) {

    .container {
        padding-right: 15px;
        padding-left: 15px;
    }
    .v2 .form-bloc-1, .v2 .form-bloc-2 {
        width:100%;
    }
    .v2 .form-bloc-2 {
        margin:0;
    }
    p.title, .v2 p.title {
        font-size: 1.5em;
        position: relative;
        z-index: 5;
    }
    p.title, p.title span.skew {
        transform:skewX(0deg);
    }
    .btn-choice {
        width:auto;
    }
    .img-block {
        display:none;
    }
    img.item-responsive {
        display: block !important;
        width: 150px;
        margin: auto;
    }
    .main {
        padding: 0 0 0 0;
    }
    .main .form-content {margin-bottom:0;}
    .form-content .number2 {
        left: 50%;
    }

}
@media (max-width: 600px) {
    
    #header {
        text-align:center;
    }
    #header .logo {
        float:none;
    }
    .f-right {
        display:none;
    }
    .bloc-title {font-size:1.8em;padding:10px;background-color:rgba(0,0,0,0.5);
    }
    .form-content .number2 {
        left: 45%;
    }

}
@media (max-width: 320px) {

    .main p.title-step {
        font-family: "montserrat", helvetica, arial, sans-serif;
        font-size: 1.5em;
        text-align: center;
        padding: 0.5em 0;
    }
    img.item-responsive {
        display: block !important;
        width: 110px;
        margin: auto;
    }
    .bloc-form .form_elem {
        width: 95% !important;
        padding-right:0;
    }
    .btn-choice span.select-btn {
        padding: 0.5em 1em;
    }
    .col-xs-12 {
        padding:0;
        text-align:center;
    }
    #create_customer button {
        width:90%;
        font-size:2em;
    }
    #wrapper div.selector.fixedWidth {
        text-align: left;
    }
}

.parallax-viewport {
    width: 100%;
    max-width: 60em;
    height: 20em;
    background-color: #aebcc9;
}
.parallax-layer {
    position: absolute;
}