/* General style */
a.link-underline {
    color: #05253d;
    text-decoration: underline;
}
a.link-underline:hover {
    color: #09426c;
    text-decoration: none;
}

/* Button */
.btn{
    font-weight: 700;
    color: #fff;
}
.btn > i{
    color: #fff;
    margin-right: 0.3rem;
}
.btn-secondary {
    background-color: #05253d;
    border-color: #05253d;
}
.btn-secondary:hover {
    background-color: #09426c;
    border-color: #01080e;
}
.btn-primary {
    background-color: #51d78e;
    border-color: #51d78e;
}
.btn-primary:hover {
    background-color: #7ae1a9;
    border-color: #2ec774;
}
.dropdown-item:focus, .dropdown-item:hover {
    background-color: #05253d !important;
    color: #51d78e !important;
}

/** Switches */
.custom-switch.custom-switch-md .custom-control-label {
    padding-left: 2rem;
    padding-bottom: 1.5rem;
}
.custom-switch.custom-switch-md .custom-control-label::before {
    height: 1.5rem;
    width: calc(2rem + 0.75rem);
    border-radius: 3rem;
}
.custom-switch.custom-switch-md .custom-control-label::after {
    width: calc(1.5rem - 4px);
    height: calc(1.5rem - 4px);
    border-radius: calc(2rem - (1.5rem / 2));
}
.custom-switch.custom-switch-md .custom-control-input:checked ~ .custom-control-label::after {
    transform: translateX(calc(1.5rem - 0.25rem));
}

/* Footer submenu */
.footer_menu_submenus h4 a{
    color: #fff;
}
.footer_menu_submenus h4 a:hover{
    color: #51d78e;
    text-decoration: none;
}











.login-pf body {
    background-color: #05253d;
    background-image: none;
}


.login-pf {
    min-height: 100vh;
}

.login-pf-page {
    background: none;
}

#kc-header,
#kc-header-wrapper {
    display: none;
}
.card {
    background-color: #05253d;
    border: none;
    min-width: 600px;
    max-width: 100%;
}

@media (max-width: 767px) {
    .card {
        min-width: unset;
        width: 100%;
    }
}


.card-body {
   background-color: #eeeeef;
}

.card-footer {
    background-color: #05253d;
    padding : 0px;
}

.card-footer img {
    width: 200px;
}

.card h1 {
    text-align: right;
    font-size: 2.5rem;
    margin: 0;
    width: 100%;
}

.card h2 {
    font-size: 2rem;
}

input {
    height: 3rem;
}

/*? ============ HEADER STYLING ============ */
#HEADER {
    background: #05253d;
}

/*! LOGOS */
.desktop_logo {
    /*  width: 100%; */
    padding-left: 2.3%;
    min-height: 106px;
    /* max-width: 289px; */
}

.desktop_logo_text {
    /* width: auto; */
    max-width: 289px;
    min-height: 106px;
}
.desktop_logo_text svg {
    min-width: 75%;
    min-height: 106px;
}

/*! NAVBAR CONTENT */
/* .header_rows_cont {
} */
#nav_row_1 {
    font-weight: medium;
    font-size: 16px;
}

#nav_row_2 > li > a,
#nav_row_2 > li > a:hover {
    font-weight: bold;
    font-size: 18px;
    color: white;
}
#nav_row_2 > li > a:hover {
    color: #51d78e;
}
/* #navbarNavDropdown {
    width: 80%;
} */

/* Font size change, to avoid Nav-links text on 3,4 lines */
@media (min-width: 992px) and (max-width: 1080px) {
    #nav_row_1 {
        font-size: 15px;
    }
    #nav_row_2 > li > a,
    #nav_row_2 > li > a:hover {
        font-size: 15px;
    }
}

/* FR | EN */
.text-separator {
    border-left: 1px solid #5a7182;
    height: 25px;
    position: relative;
    left: 0.5rem;
    bottom: -7px;
    z-index: -1;
}

/* NAV Desktop Dropdown Sub-Menu */
.dropdown-menu.show > * {
    overflow: visible;
}

/* MOBILE NAVBAR */
.navbar-dark .navbar-toggler {
    border: none;
}

/* HAMBURGER MENU ANIMATED */
.navbar-toggler:focus,
.navbar-toggler:active {
    outline: 0;
}

/* 1. Initial HAMBURGER BTN (3 lines) */
.navbar-toggler span {
    display: block;
    background-color: #ffffff;
    height: 2px;
    width: 32px;
    margin-top: 8px;
    margin-bottom: 4px;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    position: relative;
    left: 0;
    opacity: 1;

    transition: all 0.3s ease-in-out;
}

/* 2. Adding transitions for TOP & BOTTOM LINES */
.navbar-toggler span:nth-child(1),
.navbar-toggler span:nth-child(3) {
    -webkit-transition: transform 0.35s ease-in-out;
    -moz-transition: transform 0.35s ease-in-out;
    -o-transition: transform 0.35s ease-in-out;
    transition: transform 0.35s ease-in-out;
}

/* 3. Animating TOP LINE when Nav not collapsed */
.navbar-toggler:not(.collapsed) span:nth-child(1) {
    background-color: #ffffff;
    position: absolute;
    left: 12px;
    top: 10px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
    opacity: 1;
}

/* 4. Hiding MIDDLE LINE when Nav not collapsed */
.navbar-toggler:not(.collapsed) span:nth-child(2) {
    height: 12px;
    visibility: hidden;
    background-color: transparent;
    opacity: 0;
    transition: all 0.2s ease;
}

/* 5. Animating BOTTOM LINE when Nav not collapsed */
.navbar-toggler:not(.collapsed) span:nth-child(3) {
    background-color: #ffffff;
    position: absolute;
    left: 12px;
    top: 10px;
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg);
    opacity: 1;
}

/* ======================== */

/*! MOBILE NAVBAR */
.hidden {
    display: none;
    transition: all 0.5s ease;
}

#mobile_search_container {
    /* height: 75px; */
    height: 80px;
}

#mobile_logo {
    margin-top: 3px;
    margin-bottom: 10px;
    height: 44px;
}

#mobile_nav_separator {
    background: #51d78e;
}

/** Reordering Nav Rows + Separator */
@media (max-width: 991px) {
    #nav_row_1 {
        order: 3;
    }
    #mobile_nav_separator {
        order: 2;
    }
    #nav_row_2 {
        order: 1;
    }

    /** Mobile Nav Dropdown Scroll Fix */
    header.navbar.fixed-top {
        max-height: 100%;
        overflow-y: auto;
    }
}
/** Dropdown Triangle Icon */
.dropdown-toggle::after {
    border-top: 0.5em solid white;
    border-right: 0.5em solid transparent;
    border-left: 0.5em solid transparent;
    margin-left: 0.7em;
}

/*! SEARCH */
.sb-desktop {
    background: #05253d;
    width: 40%;
    overflow: hidden;
    padding: 15px;
    position: absolute;
    top: 100%;
    right: 3rem;
}

@media (min-width: 992px) and (max-width: 1199px) {
    .sb-desktop {
        right: 1rem;
    }
}

.sb-input {
    width: 100% !important;
    background: #05253d;
    border: none;
    box-shadow: none;
    border-bottom: 1px solid white;
    color: white;
}

a.sb-submit,
a.sb-submit:hover {
    color: #51d78e;
    text-decoration: none;
    position: absolute;
    top: 25%;
    right: 5%;
}

form input.sb-input:focus {
    box-shadow: none;
    border-radius: 0;
    outline: none;
}

.sb-desktop-hide {
    display: none;
}

.sb-btn-desk:hover svg path:nth-last-child(1) {
    fill: #51d78e;
}

/*! SEARCH MOBILE */
#mobile_search {
    /* float: left; */
    position: absolute;
    left: 4%;
    top: 21px;
    padding-bottom: 20px;
}
.sb-mobile {
    display: none;
    position: relative;
    /* transform: translateX(-30%); */
    width: 65vw;
    padding-top: 7px;
    padding-left: 12%;
}
@media (max-width: 374px) {
    .sb-mobile {
        display: none;
        position: relative;
        /* transform: translateX(-30%); */
        width: 60vw;
        padding-top: 7px;
        padding-left: 15%;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    .sb-mobile {
        display: none;
        position: relative;
        /* transform: translateX(-30%); */
        width: 75vw;
        padding-top: 7px;
        padding-left: 7%;
        top: -13px;
    }
    #mobile_search {
        left: 1.5%;
    }
}

.sb-input-mobile,
.sb-input-mobile:focus {
    width: 100% !important;
    background: none;
    outline: none;
    border: none;
    box-shadow: none;
    border-bottom: 1px solid white;
    color: white;
}

/*! SUBMENUS Mobile*/
.bloc_nav_submenu,
.bloc_nav_submenu > *,
.bloc_nav_submenu:focus {
    background: #05253d;
    color: white;
    border: none;
    outline: none;
    border-radius: 0;
}
.bloc_nav_submenu > .dropdown-item:hover {
    background: #05253d;
    color: #51d78e;
}

a.dropdown-toggle:focus,
.show > .nav-link {
    border: none;
    outline: none;
    box-shadow: none;
    color: #51d78e !important;
    /* transition: all 1s ease; */
}

/*! ROW 1 (contacts, espace) */
a.nav-link:hover,
a.nav-link:focus {
    color: #51d78e !important;
}

#nav_row_2 > li > .dropdown-toggle::after {
    display: none;
}

@media (min-width: 1511px) {
    li.nav-item {
        margin-right: 1.5%;
    }

}
@media (min-width: 1200px) and (max-width: 1511px) {
    li.nav-item {
        margin-right: 1%;
    }

}
@media (min-width: 992px) and (max-width: 1200px) {
    li.nav-item {
        margin-right: 0%;
    }

}
/*For  Mobile Nav */
@media (max-width: 991px) {
    li.nav-item {
        margin-right: 0;
    }
}

/*! HOVER NavRow 2 DESKTOP */
@media (min-width: 991px) {
    #nav_row_2 .dropdown:hover .dropdown-menu {
        display: block;
        margin-top: 0; /* remove the gap so it doesn't close */
    }
}


a.nav-link {
    white-space: inherit;
}

/*? ============ end HEADER STYLING ============ */
/* ============================================= */



/*? ============ FOOTER STYLING ============ */
.bloc_footer {
    background: #05253d;
}

button.CTA {
    background: none;
    border: none;
}

/** LVL 1  */
.footer_green_bar {
    background: #51d78e;
    height: 60px;
    z-index: 101;
}

.footer_green_bar a {
    color: #05253d;
    text-decoration: underline;
}
.footer_green_bar > span > a:hover {
    color: white;
}

/* .footer_menu_cont{}; */

/** 2nd Level  */
/*? Logo, address */
#bloc_footer_logo {
    max-height: 96px;
}
@media (max-width: 767px) {
    #bloc_footer_logo {
        max-height: 85px;
    }
}

.footer_menu_address {
    color: white;
    font-size: 13px;
    font-weight: 500;
    padding-top: 0;
    line-height: 13px;
}

/*? Main Menu */
.footer_menu_cont {
}

@media (min-width: 768px) and (max-width: 865px) {
    .bloc_footer h4 {
        font-size: 14px;
    }
}

.footer_menu_submenus h4 {
    color: white;
}

.flip_triangle {
    transform: rotate(180deg);
}

.footer_submenu_links {
    display: block !important;
    width: 100%;
    color: #51d78e;
    padding-top: 10px;

    font-family: "Manrope", sans-serif;
    font-size: 14px;
    font-weight: 500;
}
.footer_submenu_links:hover {
    text-decoration: none;
    color: white;
}

/** LVL 2 MOBILE */
@media (max-width: 767px) {
    .footer_menu_submenus {
        text-align: center;
        padding-top: 10px;
    }

    .footer_menu_submenus h4 {
        cursor: pointer;
    }

    .footer_submenu_links {
        padding-top: 0;
        padding-bottom: 10px;
    }
}

/** LVL 3  */
.footer_links_cont {
    border-top: 1px solid white;
    border-bottom: 1px solid white;
    display: flex;
    flex-direction: row;
    justify-content: space-around;
}

.footer_links {
    color: white;
    font-size: 14px;
    font-weight: 700;
}
.footer_links:hover {
    color: #51d78e;
    text-decoration: none;
}
@media (min-width: 768px) and (max-width: 865px) {
    .footer_links {
        font-size: 13px;
    }
}

/** LVL 3 - MOBILE */
@media (max-width: 767px) {
    .footer_links_cont {
        flex-direction: column;
        align-items: center;
        padding-bottom: 30px;
    }
    .footer_links {
        margin-top: 30px;
    }
}

/** LVL 4 (copyright)  */
.footer_copyright {
    font-size: 14px;
    font-weight: bold;
}
@media (max-width: 767px) {
    .footer_copyright {
        font-size: 12px;
        font-weight: bold;
    }
}

/*? ============ end FOOTER STYLING ============ */
/* ============================================= */

/*! ============ Page Title  ============ */
@media (max-width: 767px) {
    .bloc_page_title {
        /* border-top: 2px solid #51d78e; */
        padding-top: 1px !important;
    }

    .topBorderMobile {
        border-top: 2px solid #51d78e;
    }
}
@media (min-width: 767px) {
    .topBorderDesktop {
        border-top: 1px solid #51d78e;
    }
}
/*! ============ end Page Title  ============ */
/* ============================================= */

/** Toaster */
#toast-container > div {
    opacity: 1;
}

h1 {
    margin-top: 2%;
    margin-bottom: 2%;
}

.kc-password-toggle,
.password-toggle-icon,
.kc-show-password {
    display: none !important;
}


/* ubiprivatestyle *§
body, html {
    background-color: #f3f4f6;
}

.custom-control-input:checked~.custom-control-label::before {
    color: #fff;
    border-color: #51d78e;
    background-color: #51d78e;
}

/* card */
.card .card-header {
    padding-bottom: 0;
    background-color: #05253d;
    border-bottom: 1px solid #51d78e;
}
.card .card-title {
    letter-spacing: .03rem;
    margin-bottom: .5rem;
    color: #51d78e;
}
.card h2.card-title {
    font-weight: 800;
    font-size: 2rem;
}
.card .card-body {
    background-color: #eeeeef;
}
.card .card-body.bg-white {
    background-color: #fff !important;
}

/* select 2 */
.select2-container--default .select2-selection{
    background-color: #fff !important;
    border: 1px solid #ced4da !important;
    min-height: 41px !important;
}
.select2-container--default .select2-selection .select2-selection__rendered{
    color: #fff !important;
}
.select2-container--default .select2-selection.select2-selection--single .select2-selection__rendered{
    color: #05253d !important;
    padding-top: 5px;
    font-weight: bold;
}
.select2-container--default .select2-results__option[aria-selected="true"], .select2-container--default .select2-results__option--highlighted[aria-selected]{
    background-color: #05253d !important;
    color: #51d78e !important;
}
.select2-container--default .select2-results__option[aria-selected="true"]{
    font-weight: bold;
}
.select2-container .select2-search--inline .select2-search__field {
    margin-top: 0 !important;
    height: 28px !important;
    font-family: manrope !important;
    color: #495057 !important;
    padding: .375rem .75rem !important;
}
.select2-container--default .selection .select2-notags .select2-selection__rendered{
    float: right;
    width: auto;
}
.select2-container--open .selection .select2-notags .select2-selection__rendered{
    float: none;
    width: auto;
}
.select2-container--open .selection .select2-notags .counter {
    display: none;
}
select.is-invalid+.select2-container--default .select2-selection {
    border-color: #dc3545 !important;
    padding-right: calc(1.5em + .75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(.375em + .1875rem) center;
    background-size: calc(.75em + .375rem) calc(.75em + .375rem);
}

/* Datatable */
.dataTables_wrapper {
    font-size: 13px;
}
table.dataTable {
    font-size: 13px;
}
table.dataTable td a > i {
    color: #f18864 !important;
    font-size: 1.1rem;
}
table.dataTable tr {
    height: 50px;
}
table.dataTable thead th {
    background-color: #f7f7f8;
    color: #000;
}
table.dataTable tbody tr.even{
    background-color: #e9faf0
}
table.dataTable tbody tr:hover td, table.dataTable tbody tr:hover span{
    background-color: #05253d !important;
    color: #51d78e !important;
    font-weight: bold;
}
table.dataTable tbody td {
    border-top: 1px solid #e0e0e0;
}
table.dataTable thead th, table.dataTable thead td {
    border: none !important;
}
table.dataTable.no-footer {
    border: none !important;
}
table.dataTable tr.groupmenu td {
    background-color: #51d78e;
    border-bottom: 2px solid #05253d;
    border-top: 2px solid #05253d;
    color: #05253d;
    font-size: 16px;
    font-weight: bold;
    padding: 10px 0 10px 5px;
}
