*{
    outline:none;
    margin:0;
    padding:0;
    box-sizing:border-box
}

body{
    font-family:Montserrat,sans-serif;
    font-weight: lighter;
    overflow-x:hidden;
    margin-bottom:0!important;
    min-height:100vh;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    background-color:#FFFFFF
}
a,button,h1,h2,h3,h4,h5,h6,input,label,p,select,span,textarea{
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale
}
main{
    width:1280px;
    max-width:100%;
    padding:24px 14px;
    padding-bottom: 80px;
}
main .container{
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    align-items:center;
    margin-bottom:26px;
}
@media only screen and (min-width:768px){
    main .container{
        align-items:flex-start;
        flex-direction:row
    }
}
main .container .form--container{
    background:#f6f6f6;
    padding:24px 14px;
    width:100%
}
@media only screen and (max-width:767px){
    main .container .form--container{
        margin-top:20px;
        padding:15px !important;
    }
}
@media only screen and (min-width:768px){
    main .container .form--container{
        padding:50px;
        width:70%
    }
}
@media only screen and (min-width:1200px){
    main .container .form--container{
        width:50%
    }
}
main .container .form--container h1{
    text-align:center;
    margin-bottom:14px;
    font-size:18px
}
@media only screen and (min-width:768px){
    main .container .form--container h1{
        margin-bottom:40px
    }
}
main .container .form--container p{
    font-size:16px;
    color:#000;
    margin-bottom:18px
}
main .container .form--container form{
    margin-top:32px
}
main .container .form--container form fieldset{
    border:none;
    display:flex;
    flex-wrap:wrap;
    flex-direction:row;
    align-items:flex-start
}
main .container .form--container form fieldset:not(:last-of-type){
    margin-bottom:20px
}
main .container .form--container form fieldset .fieldset--title{
    font-weight:700;
    font-size:16px;
    width:50%
}
@media only screen and (min-width:768px){
    main .container .form--container form fieldset .fieldset--title{
        width:20%
    }
}
main .container .form--container form fieldset .fieldset--inner{
    order:3;
    flex:1
}
@media only screen and (min-width:768px){
    main .container .form--container form fieldset .fieldset--inner{
        width:50%;
        margin-right:20px;
        order:2
    }
}
@media only screen and (min-width:1200px){
    main .container .form--container form fieldset .fieldset--inner{
        width:60%
    }
}
main .container .form--container form span{
    font-family:Lato,sans-serif;
    font-size:14px;
    line-height:1.2;
    margin-bottom:5px
}
main .container .form--container form label:not(.input--switch){
    font-weight:400;
    font-size:1.4rem;
    line-height:2.4rem;
    color:#888;
    display:flex;
    flex-direction:column;
    margin-bottom:10px;
    width:100%
}
main .container .form--container form label:not(.input--switch) input:not(.default),
main .container .form--container form label:not(.input--switch) select:not(.default){
    position:relative;
    border:1px solid #d6d6d6;
    padding:12px 14px;
    border-radius:4px;
    transition:.25s cubic-bezier(.55,0,.1,1);
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none
}
main .container .form--container form label:not(.input--switch) input:not(.default):hover,
main .container .form--container form label:not(.input--switch) select:not(.default):hover{
    border-color:#888
}
main .container .form--container form label:not(.input--switch) select{
    background:url("data:image/svg+xml;charset=utf8,%3Csvg width='80' height='50' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M9.4,0,40,30.53,70.6,0,80,9.4l-40,40L0,9.4Z' fill='%23AFABAB' /%3E %3C/svg%3E");
    background-repeat:no-repeat;
    background-size:auto 15%;
    background-position:calc(100% - 8px) 50%;
    cursor:pointer
}
main .container .form--container form .input-group{
    display:flex;
    flex-direction:column
}
.select2-container--default .select2-selection--single{
    border-color: #d6d6d6 !important;
}
.select2-container, .selection, .select2-selection{
    height: 40px !important;
}
#select2-address_type_street-container, #select2-address_country-container{
    padding: 5px 15px;
    color: #444;
}
.select2-selection__arrow{
    margin-top: 6px;
}
.select2-results__option{
    font-size: 12px;
}
@media only screen and (min-width:768px){
    main .container .form--container form .input-group{
        flex-direction:row
    }
    main .container .form--container form .input-group label:first-of-type{
        margin-right:10px;
        width:30%
    }
}
main .container .form--container form .input--switch{
    order:2
}
@media only screen and (max-width:767px){
    main .container .form--container form .input--switch{
        width:50%;
        display:flex;
        justify-content:flex-end;
        margin-bottom:10px
    }
}
@media only screen and (min-width:768px){
    main .container .form--container form .input--switch{
        order:3
    }
}
main .container .form--container form .input--switch label{
    background-color:#d6d6d6;
    width:48px;
    border-radius:50px;
    height:26px;
    position:relative;
    cursor:pointer;
    margin:0;
    transition:.25s cubic-bezier(.55,0,.1,1)
}
main .container .form--container form .input--switch label:before{
    content:"";
    position:absolute;
    width:22px;
    height:22px;
    border-radius:100%;
    background-color:#fff;
    top:0;
    left:0;
    margin:2px;
    transition:.25s cubic-bezier(.55,0,.1,1)
}
main .container .form--container form .input--switch input{
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    width:0;
    height:0;
    position:absolute
}
main .container .form--container form .input--switch input:checked+label{
    background-color:#51cf66
}
main .container .form--container form .input--switch input:checked+label:before{
    transform:translateX(100%)
}
main .container .form--container form .button-submit{
    padding: 15px 20px;
    background-color:#333333;
    color:#fff;
    font-size:14px;
    font-weight:700;
    text-transform:uppercase;
    border:none;
    cursor:pointer;
    display:block;
    transition:.25s cubic-bezier(.55,0,.1,1);
    margin:10px auto
}
@media only screen and (min-width:768px){
    main .container .form--container form .button-submit{
        margin:20px auto 0}
}
main .container .form--container form .button-submit:hover{
    background-color:#000
}
main .gdo-conditions{
    text-align:justify;
    color:#333;
    font-size:12px
}
main .gdo-conditions a{
    color:#333
}

.obligatoire{
    color: red;
    font-weight: 700;
}
.mention-obligatoire{
    display: inline-block;
    padding-top: 40px;
    font-size: 12px;
}
main .container .form--container {
    padding: 50px;
    padding-bottom: 10px;
}
main .container .form--container form label:not(.input--switch) select:not(.default) {
    background-color: #fff;
}
#civilite_label {
    width: 25%;
}
#birthday_day_label {
    margin-right: 10px;
    width: 25%;
    float: left;
}
#birthday_month_label {
    margin-right: 10px;
    width: 40%;
    float: left;
}
#birthday_year_label {
    margin-right: 10px;
    width: 25%;
    float: left;
}
#prefform hr{
    border-top: 1px solid #ccc;
    border-bottom: 0px;
}
.hidden{
    display: none !important;
}
#main{
    clear: both;
}
#onglets{
    width: 50%;
    margin-left: 25%;
}
.onglet{
    width: 50%;
    float: left;
    background-color: #fbfbfb;
    padding: 10px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    text-align: center;
    cursor: pointer;
}
.onglet-actif{
    background-color: #f6f6f6 !important;
}
#form-wallet{
    display: none;
    width: 100%;
}

@media (min-width: 768px) {
    main .container {
        width: 50%;
        margin-left: 25%;
    }
    main .container .form--container {
        width: 100%;
    }
    main .container .form--container form .input--switch label{
        float: right;
        margin-right: 4%;
    }
    .input--switch{
        width: 100%;
    }
    .label-switch{
        float: left;
        font-size: 13px;
        margin-left: 20%;
    }
}

@media (max-width: 768px) {
    main .container .form--container form .input--switch {
        width: 100%;
        display: inline-block;
    }
    main .container .form--container form .input--switch label{
        float: right;
    }
    main .container .form--container form fieldset .fieldset--title {
        width: 100%;
    }
    .label-switch{
        float: left;
        font-size: 12px;
    }
}

.body{
    top: -2px;
    position: absolute;
}
.site_title {
    margin-left: 50px !important;
}

.left-column {
    width: 50%;
    float: left;
}
.right-column{
    width: 50%;
    float: left;
}

@media (max-width: 768px) {
    .left-column {
        display: none !important;
    }
    .right-column{
        width: 100% !important;
        float: none !important;
    }
    #onglets{
        width: 100% !important;
        margin-left: 0;
    }
    main .container .form--container {
        margin-top: 0;
    }
}

.custom-loader {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background:
            radial-gradient(farthest-side,#808080 94%,#0000) top/4px 4px no-repeat,
            conic-gradient(#0000 30%,#808080);
    -webkit-mask: radial-gradient(farthest-side,#0000 calc(100% - 4px),#000 0);
    animation:s3 1s infinite linear;
}

@keyframes s3{
    100%{transform: rotate(1turn)}
}

#store-list{
    display: none;
}
#loader-submit{
    display: none;
    margin: 40px auto 0px auto;
}

.ribbon-box {
    width: 200px;
    border: 1px solid #BBB;
    background: #EEE;
    top: -2px;
    position: absolute;
    left: 0;
}
.ribbon {
    position: absolute;
    left: -6px;
    top: -6px;
    z-index: 10;
    overflow: hidden;
    width: 75px; height: 75px;
    text-align: right;
}
.ribbon span {
    font-size: 10px;
    font-weight: bold;
    color: #FFF;
    text-transform: uppercase;
    text-align: center;
    line-height: 20px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    width: 100px;
    display: block;
    background: #79A70A;
    background: linear-gradient(#2989d8 0%, #1e5799 100%);
    box-shadow: 0 3px 10px -5px rgba(0, 0, 0, 1);
    position: absolute;
    top: 19px; left: -21px;
}
.ribbon span::before {
    content: "";
    position: absolute; left: 0px; top: 100%;
    z-index: -1;
    border-left: 3px solid #1e5799;
    border-right: 3px solid transparent;
    border-bottom: 3px solid transparent;
    border-top: 3px solid #1e5799;
}
.ribbon span::after {
    content: "";
    position: absolute; right: 0px; top: 100%;
    z-index: -1;
    border-left: 3px solid transparent;
    border-right: 3px solid #1e5799;
    border-bottom: 3px solid transparent;
    border-top: 3px solid #1e5799;
}

/* cyrillic-ext */
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/oswald/v36/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvsUtiZTaR.woff2) format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/oswald/v36/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvsUJiZTaR.woff2) format('woff2');
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/oswald/v36/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvsUliZTaR.woff2) format('woff2');
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/oswald/v36/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvsUhiZTaR.woff2) format('woff2');
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/oswald/v36/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvsUZiZQ.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 700;
    src: url(https://fonts.gstatic.com/s/oswald/v36/TK3_WkUHHAIjg75cFRf3bXL8LICs1xZosUtiZTaR.woff2) format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 700;
    src: url(https://fonts.gstatic.com/s/oswald/v36/TK3_WkUHHAIjg75cFRf3bXL8LICs1xZosUJiZTaR.woff2) format('woff2');
    unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 700;
    src: url(https://fonts.gstatic.com/s/oswald/v36/TK3_WkUHHAIjg75cFRf3bXL8LICs1xZosUliZTaR.woff2) format('woff2');
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 700;
    src: url(https://fonts.gstatic.com/s/oswald/v36/TK3_WkUHHAIjg75cFRf3bXL8LICs1xZosUhiZTaR.woff2) format('woff2');
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 700;
    src: url(https://fonts.gstatic.com/s/oswald/v36/TK3_WkUHHAIjg75cFRf3bXL8LICs1xZosUZiZQ.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}