body,html{
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -webkit-overflow-scrolling: touch; /*scroll fluide pour smartphone apple*/
    background-color: var(--primary_tc);
    overflow: hidden;
}

.main-content{
    position: relative;
    overflow-x: hidden;
    height: 100%;
    width: 100%;
    padding-top: 8rem;
    max-width: 1920px;
    margin: auto;
    display: flex;
    flex-direction: column;
}

.row_main_data{
    flex: 1;
    background-image: url(/image/Logo/star_background.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    /* min-height: calc(100% - 8rem); */
}

input[type=search]::placeholder {
    color: var(--font-primary-tc);
}


/* ================================= */
/* ===== CSS étoile en fond ======== */
/* ================================= */
#star_background{
    position: relative;
    top: 1rem;
    left: 0;
    max-height: 100%;
    width: 100%;
    object-fit: contain;
    /* object-position: top; */
    z-index: 0;
}

/* ================================= */
/* ===== CSS maintenance =========== */
/* ================================= */
#img_maintenance{
    max-width: 100%;
    object-fit: contain;
}

/* ================================= */
/* ===== CSS Layer attente ========= */
/* ================================= */
#layer_wait{
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(0,0,0,0.8);
    z-index: 10000;
}
#lib_layer_wait{
    font-weight: bold;
    color: var(--white_tc);
    font-size: 18px;
    margin-top: 10%;
    width: 100%;
    text-align: center;
    padding: 0 25px;
}
#loader{
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: url(../../../image/loading.gif) 50% 50% no-repeat;
    background-position: center;
    cursor: wait;
}

/* ================================= */
/* ===== CSS tooltip Bootstrap ===== */
/* ================================= */
.tooltip-inner{
    background-color: transparent !important;
}

/* ================================= */
/* ===== CSS Sweet Alert =========== */
/* ================================= */
.swal_img_cookie{
    max-width: calc(100% / 6);
}
.swal_text_cookie{
    font-size: 1rem;
    /* font-size: 0.85rem; */
}

/* ================================= */
/* ===== CSS PSP LYRA ============== */
/* ================================= */
#form_lyra #header_lyra {
    background-color: rgb(41, 60, 122);
    width: 100%;
    padding: 5px 20px;
}
#form_lyra #header_lyra .logo{
    height: 5vh;
}
#form_lyra #body_lyra #box_summary{
    order : 1;
    flex: 1;
    color: white;
    margin: 50px 0;
    font-weight: bold;
}
#form_lyra #body_lyra #box_summary #header{
    background-color: rgb(41, 60, 122);
    text-align: center;
    padding: 20px 0;
}
#form_lyra #body_lyra #box_summary #body{
    background-color: rgb(41, 60, 122);
}
#form_lyra #body_lyra #box_summary #body .flex_box{
    padding: 10px 20px;
}
#form_lyra #body_lyra #box_summary #footer{
    background-color: #5694c7;
}
#form_lyra #body_lyra #box_summary #footer .flex_box{
    padding: 20px 20px;
}
#form_lyra #body_lyra #box_smart_form{
    order : 2;
    flex: 1;
    margin: 50px 0;
}

/* ================================= */
/* ===== CSS PSP SYSTEMPAY ========= */
/* ================================= */
#form_systempay #header_systempay {
    background-color: rgb(41, 60, 122);
    width: 100%;
    padding: 5px 20px;
}
#form_systempay #header_systempay .logo{
    height: 5vh;
}
#form_systempay #body_systempay #box_summary{
    order : 1;
    flex: 1;
    color: white;
    margin: 50px 0;
    font-weight: bold;
}
#form_systempay #body_systempay #box_summary #header{
    background-color: rgb(41, 60, 122);
    text-align: center;
    padding: 20px 0;
}
#form_systempay #body_systempay #box_summary #body{
    background-color: rgb(41, 60, 122);
}
#form_systempay #body_systempay #box_summary #body .flex_box{
    padding: 10px 20px;
}
#form_systempay #body_systempay #box_summary #footer{
    background-color: #5694c7;
}
#form_systempay #body_systempay #box_summary #footer .flex_box{
    padding: 20px 20px;
}
#form_systempay #body_systempay #box_smart_form{
    order : 2;
    flex: 1;
    margin: 50px 0;
}

/*----------------- CSS pour tablettes ----------------------------------*/
@media all and (max-device-width:1024px) and (orientation: portrait){
    #col_main_cgv_mention .text{
        font-size: 0.90rem;
    }
}
@media all and (max-device-width:1024px) and (orientation: landscape){

}


/*----------------- CSS pour Smartphones et tablette---------------------*/
@media all and (max-device-width:768px) and (orientation: portrait){
    /* ================================= */
    /* ===== CSS form ================== */
    /* ================================= */
    .form-label-group input:not(:placeholder-shown) ~ label {
        padding-top: 0.05rem !important;
        padding-bottom: 0.05rem !important;
        font-size: 8px !important;
        color: #777 !important;
    }

    #col_main_cgv_mention .text{
        font-size: 0.85rem;
    }
    /* ================================= */
    /* ===== CSS Sweet Alert =========== */
    /* ================================= */
    .swal_img_cookie{
        max-width: calc(100% / 4);
    }
    .swal_text_cookie{
        font-size: 0.85rem;
    }

    /* ================================= */
    /* ===== CSS PSP LYRA ============== */
    /* ================================= */
    #form_lyra #header_lyra {
        padding: 5px 10px;
    }
    #form_lyra #body_lyra #box_summary{
        margin: 15px 0;
    }
    #form_lyra #body_lyra #box_summary #header{
        padding: 15px;
    }
    #form_lyra #body_lyra #box_summary #body .flex_box{
        padding: 5px 10px;
    }
    #form_lyra #body_lyra #box_summary #footer .flex_box{
        padding: 10px 10px;
    }
    #form_lyra #body_lyra #box_smart_form{
        margin: 5px 0;
    }

    /* ================================= */
    /* ===== CSS PSP SYSTEMPAY ========= */
    /* ================================= */
    #form_systempay #header_systempay {
        padding: 5px 10px;
    }
    #form_systempay #body_systempay #box_summary{
        margin: 15px 0;
    }
    #form_systempay #body_systempay #box_summary #header{
        padding: 15px;
    }
    #form_systempay #body_systempay #box_summary #body .flex_box{
        padding: 5px 10px;
    }
    #form_systempay #body_systempay #box_summary #footer .flex_box{
        padding: 10px 10px;
    }
    #form_systempay #body_systempay #box_smart_form{
        margin: 5px 0;
    }
}


/*----------------- CSS pour Smartphones --------------------------------*/
@media all and (max-device-width:480px) and (orientation: portrait){
    .hide-on-mobile{
        display: none !important;
    }
    .hide-on-mobile-portrait{
        display: none !important;
    }
    .show-on-mobile{
        display: block !important;
    }
    .show-on-mobile-tr{
        display: table-row !important;
    }

    .main-content{
        padding-top: 6rem;
    }

    /* ================================= */
    /* ===== CSS form ================== */
    /* ================================= */
    .form-label-group input:not(:placeholder-shown) ~ label {
        padding-top: 0.05rem !important;
        padding-bottom: 0.05rem !important;
        font-size: 8px !important;
        color: #777 !important;
    }

}
@media all and (max-device-width:750px) and (orientation: landscape){

}
@media all and (max-device-width:920px) and (orientation: landscape){
    .hide-on-mobile{
        display: none !important;
    }
    .hide-on-mobile-landscape{
        display: none !important;
    }
    .show-on-mobile{
        display: block !important;
    }
    .show-on-mobile-tr{
        display: table-row !important;
    }

    .main-content{
        padding-top: 6rem;
    }

    /* ================================= */
    /* ===== CSS form ================== */
    /* ================================= */
    .form-label-group input:not(:placeholder-shown) ~ label {
        padding-top: 0.05rem !important;
        padding-bottom: 0.05rem !important;
        font-size: 8px !important;
        color: #777 !important;
    }
}


@keyframes revealAnimation {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }
    100% {
        opacity: 1;
        transform: translateY(0px);
    }
}

@keyframes bounce_poster{
    from {transform: translateY(0);}
    to   {transform: translateY(-10px);}
}