@font-face {
    font-family: "Ubuntu-Bold";
    src: url("../font/Ubuntu-Bold.ttf") format("ttf"),
    url("../font/Ubuntu-Bold.woff") format("woff"),
    url("../font/Ubuntu-Bold.woff2") format("woff2");
}

@font-face {
    font-family: "Ubuntu-Medium";
    src: url("../font/Ubuntu-Medium.ttf") format("ttf"),
    url("../font/Ubuntu-Medium.woff") format("woff"),
    url("../font/Ubuntu-Medium.woff2") format("woff2");
}

@font-face {
    font-family: "Ubuntu-Regular";
    src: url("../font/Ubuntu-Regular.ttf") format("ttf"),
    url("../font/Ubuntu-Regular.woff") format("woff"),
    url("../font/Ubuntu-Regular.woff2") format("woff2");
}

@font-face {
    font-family: "Roboto-Regular";
    src: url("../font/Roboto-Regular.ttf") format("ttf"),
    url("../font/Roboto-Regular.woff") format("woff"),
    url("../font/Roboto-Regular.woff2") format("woff2");
}

@font-face {
    font-family: "Roboto-Bold";
    src: url("../font/Roboto-Bold.ttf") format("ttf"),
    url("../font/Roboto-Bold.woff") format("woff"),
    url("../font/Roboto-Bold.woff2") format("woff2");
}

@font-face {
    font-family: "Roboto-Italic";
    src: url("../font/Roboto-Italic.ttf") format("ttf"),
    url("../font/Roboto-Italic.woff") format("woff"),
    url("../font/Roboto-Italic.woff2") format("woff2");
}

@font-face {
    font-family: "OpenSans-Bold";
    src: url("../font/OpenSans-Bold.ttf") format("ttf"),
    url("../font/OpenSans-Bold.woff") format("woff"),
    url("../font/OpenSans-Bold.woff2") format("woff2");
}


@font-face {
    font-family: "OpenSans-Regular";
    src: url("../font/OpenSans-Regular.ttf") format("ttf"),
    url("../font/OpenSans-Regular.woff") format("woff"),
    url("../font/OpenSans-Regular.woff2") format("woff2");
}

:root {
    --main-blue-color: #0066AA;
    --main-green-color: #009F8F;
}

body {
    font-family: Roboto-Regular, serif;
    font-size: 14px;
}

#content {
    overflow: hidden;
}

.imo-title-purple {
    font-family: "Ubuntu-Bold", serif;
    color: #63003C;
    font-size: 25px;
    line-height: 29px;
    background: transparent url('../images/icon/title-component.png') center left no-repeat;
    padding-left: 32px;
}


.imo-title-blue {
    font-family: "Ubuntu-Bold", serif;
    color: #0066AA;
    font-size: 20px;
    line-height: 24px;
    background: transparent url('../images/icon/title_blue_icon.png') center left no-repeat;
    padding-left: 32px;
}

.imo-title-blue p {
    margin-bottom: 0;
}

a.btn-primary,
.btn-standard-imo {
    border-radius: 0 !important;
    font-size: 14px;
    font-weight: bold;
    background: #0066AA !important;
    border-color: #0066AA !important;
    padding: 12px 25px;
    color: #ffffff !important;
    font-family: "OpenSans-Bold", serif;
}

a.btn-primary:hover,
.btn-standard-imo:hover {
    color: #0066AA !important;
    background: #ffffff !important;
}


/*************     HEADER     *************/

.navbar-imo {
    z-index: 1;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.header_second-nav {
    padding-right: 20px;
}

.header_second-nav ul {
    position: absolute;
    background: #ffffff;
    display: none;
    top: 63px;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
    padding: 20px 40px;
    border: 1px solid #DEDEDE;
    box-shadow: 0 3px 6px 0 #00000026;
}

.header_second-nav li:first-child ul {
    width: 600px;
}

.header_second-nav li:nth-child(2) ul {
    width: 900px;
}

.header_second-nav li:nth-child(3) ul {
    width: 600px;
}

.header_second-nav li:nth-child(4) ul {
    width: 850px;
}

.header_second-nav li:first-child ul,
.header_second-nav li:nth-child(3) ul {
    column-count: 2;
    -webkit-column-count: 2;
    -moz-column-count: 2;
}

.header_second-nav li:nth-child(2) ul,
.header_second-nav li:nth-child(4) ul {
    column-count: 3;
    -webkit-column-count: 3;
    -moz-column-count: 3;
}

.header_second-nav ul li {
    border-bottom: 1px solid #DEDEDE;
}

.header_second-nav ul li {
    list-style: none;
    padding-left: 0;
    display: inline-block;
    width: 100%;
    padding-right: 0;
}

.header_second-nav ul li a {
    color: #0066AA;
    font-family: OpenSans-Bold, serif !important;
    font-size: 14px;
    background: transparent url('../images/icon/angle-right-solid.svg') center left no-repeat;
    background-size: 7px;
    padding-left: 16px;
}

ul.header_second-nav> li {
    border-bottom: 5px solid #FFFFFF;
}

ul.header_second-nav> li:hover {
    border-bottom: 5px solid #BFE1F2;
}

.navbar {
    align-items: flex-end !important;
}

ul.header_second-nav> li:hover > ul {
    display: block;
}

.header_second-nav li {
    padding: 12px 30px;
}

.header_second-nav li a {
    font-family: Roboto-Regular, serif !important;
    font-size: 14px;
    line-height: 19px;
    color: #2B202F;
}

.navbar-imo, .navbar-imo-first {
    background-color: #ffffff !important;
}

.nav_head-top-right a,
.nav_head-top-right span.nav-link {
    color: #ffffff !important;
}

.nav-item-bordered {
    border-right: 2px solid #ffffff;
    padding-left: 15px;
    padding-right: 15px;
}

.nav-item-padding-left {
    padding-left: 15px;
}

.nav_head-top-right .nav-link {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}

.head-nav-logo-right {
    padding-left: 10px;
}

.head-nav-logo-left {
    padding-right: 10px;
}

.nav-language-chooser .dropdown-menu {
    background-color: #009F8F;
}

.dropdown-item-language-chooser:hover {
    color: #009F8F !important;
}

.nav_head-top-right {
    background-color: #009F8F;
    padding: 7px 40px 7px 0;
}

#mobile-menu-btn .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0,102,170, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

#mobile-menu-btn.navbar-toggler:focus {
    outline: none;
}

#mobile-menu-btn.navbar-toggler {
    border: none;
}

@media screen and (max-width: 768px) {
    .leveltwo-menu-formation {
        padding-left: 15px !important;
    }

    .header_second-header .navbar-imo {
        padding-left: 0;
    }
    .header_logo-partners {
        display: none !important;
    }
    #site-logo {
        position: initial !important;
    }

    .navbar {
        align-items: initial !important;
    }

    .header_second-nav {
        max-width: 100vw;
    }

    .header_second-nav ul {
        display: block;
        position: initial;
        column-count: 1 !important;
        -webkit-column-count: 1 !important;
        -moz-column-count: 1 !important;
        border: none;
        box-shadow: none;
        max-width: 90vw;
        padding-left: 10px;
    }

    .header_second-nav ul li {
        display: block;
    }
}

@media screen and (max-width: 992px) {
    .head-nav-logo-right {
        padding-left: 0;
    }

    .head-nav-logo-left {
        padding-right: 0;
    }

    .nav_head-top-right {
        padding-right: 10px;
    }

    .nav-item-bordered {
        padding-right: 10px;
        padding-left: 10px;
    }
}

.navbar-imo-first {
    font-size: 13px;
    font-family: OpenSans-Regular, serif;
    padding: 0;
}

#header {
    box-shadow: 0 3px 6px 0 #00000026;
}

.page-head-title {
    padding-bottom: 100px;
    width: 380px;
    margin: auto;
    font-family: Ubuntu-Bold, serif;
    font-weight: bold;
    color: #ffffff;
    font-size: 30px;
    text-align: center;
    height: 240px;
    line-height: 240px;
}

/***************    FOOTER      ***************/

#footer-div {
    background: #BFE1F2;
    padding-bottom: 15px;
    padding-top: 20px;
    color: #0066AA !important;
    margin-top: 50px;
}

#footer-div a {
    font-family: Roboto-Regular, serif;
    font-size: 14px;
}

#footer-div .footer-blocs {
    font-size: 14px;
}

.footer-blocs a {
    color: #0066AA !important;
}

.footer-menu .footer-menu-subtitle {
    font-family: Roboto-Regular, serif;
    font-size: 14px;
    margin-bottom: 20px;
}

.footer-menu .footer-menu-title {
    font-family: Ubuntu-Bold, serif;
    font-size: 16px;
    border-bottom: 1px solid #0066AA;
    padding-bottom: 7px;
}

.footer-menu ul {
    margin-top: 15px;
    padding-left: 0;
}

.footer-menu li {
    list-style: none;
    margin-bottom: 5px;
}

.site-logo-partner-header {
    height: 23px;
    padding-left: 10px;
}

.header_logo-partners {
    display: flex;
    padding-top: 30px;
    padding-bottom: 10px;
    padding-left: 20px;
}

#site-logo {
    position: absolute;
    top: -33px;
    left: 30px;
}

.site-logo-partner-footer {
    margin-bottom: 15px;
}

#footer-div .footer-copyright a {
    color: #0066AA;
}

#footer-div .footer-copyright-container {
    text-align: center;
    border-top: 1px solid #0066AA;
    padding-top: 15px;
    max-width: 650px;
    font-size: 13px;
    font-family: "Open Sans", serif;
    margin-top: 30px;
}

.annuaire_facet-bloc-title {
    font-family: Roboto-Bold, serif;
    margin-bottom: 15px;
    border-bottom: 1px solid #332B202F;
    padding-bottom: 5px;
}

/* SHARED STUDENT MENU */

.leveltwo-banner-img img {
    width: 100vw;
    height: 240px;
    object-fit: cover;
}

a.text-primary {
    background: transparent url('../images/pictos/long-arrow-right-regular.svg') center right no-repeat;
    padding-right: 25px;
}

a.text-primary-back {
    background: transparent url('../images/pictos/long-arrow-back.svg') center left no-repeat;
    padding-left: 25px;
}

a.text-primary,
a.text-primary-back {
    font-family: "Ubuntu-Bold", serif !important;
    color: #63003C !important;
    margin-bottom: 30px;
    font-size: 14px;
}

a.text-primary:focus,
a.text-primary:hover {
    color: #63003C !important;
}

.container-institut-free {
    padding-left: 5%;
    padding-right: 5%;
    margin-top: 5%;
}

.container-institut-free h2,
.institut_center-bloc h2,
.col-recherche_center-bloc h2,
.container_level-two-main-analyse h2 {
    font-family: "Ubuntu-Bold", serif;
    color: #63003C;
    font-size: 25px;
    line-height: 29px;
    background: transparent url('../images/icon/title-component.png') center left no-repeat;
    padding-left: 32px;
    margin-bottom: 35px;
}

.container-institut-free h3,
.levelfour_formation_main-div h3 {
    font-size: 18px;
    font-family: Roboto-Bold, serif;
    line-height: 24px;
}

.levelfour_formation_main-div h4 {
    font-size: 16px;
    font-family: Ubuntu-Medium, serif;
    line-height: 22px;
}

.container-institut-free a:not(.text-primary),
.recherche_head-head-left-bloc a:not(.text-primary),
.col_eventdetails-right-pane a:not(.text-primary),
.blog-latest-entries a:not(.text-primary),
.institut_center-bloc a:not(.text-primary),
.col-recherche_center-bloc a:not(.text-primary),
.col-recherche_center-bloc a:not(.text-primary),
.institut_head-main-container a:not(.text-primary),
.levelfour_formation_main-div a:not(.text-primary),
.simple-content a:not(.text-primary) {
    color: #1F66AA;
    font-family: Roboto-Bold, serif;
}

.container-fluid.block-bluegrey {
    margin-top: 50px;
    margin-bottom: 50px;
    background: #F5F5F5;
    padding: 70px 150px 50px;
    text-align: center;
}

.container-fluid.block-grey {
    background: #F7F6F9;
    padding: 50px;
    margin-top: 40px;
    margin-bottom: 40px;
}

.container-fluid.block-bluegrey:before {
    content: "";
    display: inline-block;
    width: 160px;
    height: 160px;
    background-image: url("../images/icon/rectangle_blue.jpg");
    background-repeat: no-repeat;
    position: absolute;
    left: -15px;
    top: 20px;
    z-index: -1;
}

.container-fluid.block-bluegrey h2,
.container-fluid.block-grey h2 {
    display: inline-block;
}

.container-fluid.block-grey {
    text-align: center;
}

.container-fluid.block-grey p,
.container-fluid.block-grey ul,
.container-fluid.block-grey h3 {
    text-align: justify;
}

.container-fluid.block-purple {
    margin-top: 50px;
    background: #63003C;
    text-align: center;
    font-family: Roboto-Bold, serif;
    font-size: 18px;
    color: #ffffff;
    padding: 40px 60px;
}

.container-fluid.block-purple p {
    margin-bottom: 0 !important;
}

.centered-column {
    text-align: center;
}

.space-top {
    margin-top: 10px;
}

/* MENU DE NAVIGATION GAUCHE */

.research-menu a,
.leveltwo-menu-formation a {
    font-family: Roboto-Regular, serif;
    font-size: 14px;
    color: #2B202F;
}

.level-four-menu-custom-formation li,
.research-menu li,
.leveltwo-menu-formation li {
    list-style: none;
}

/* Ex: Mathématiques et application - MEEF 2nd Degré etc */
.leveltwo-menu-formation .menu-li-level-one,
.research-menu .menu-li-level-one {
    font-family: Roboto-Bold, serif;
    font-size: 14px;
    line-height: 19px;
    color: #0066AA;
}

.research-menu .container-link.div-children,
.leveltwo-menu-formation .container-link.div-children {
    margin-bottom: 10px;
}

.main-row-title-students {
    margin-bottom: 40px;
}

.container-link.menu-li-level-two {
    font-family: Roboto-Regular, serif;
    font-size: 14px;
    color: #2B202F;
    border: 1px solid rgba(112, 112, 112, .1);
    border-radius: 2px;
    margin-bottom: 10px;
    margin-top: 5px;
    padding: 10px 5px 10px 20px;
    width: 100%;
    display: inline-block;
}

.research-menu li.ancestor > div > a.menu-li-level-two,
.research-menu li.selected > div > a,
.leveltwo-menu-formation li.ancestor > div > a.menu-li-level-two,
.leveltwo-menu-formation li.selected > div > a {
    font-family: Roboto-Bold, serif;
    font-size: 14px;
    color: #0066AA;
}

.research-menu .menu-li-level-three,
.leveltwo-menu-formation .menu-li-level-three {
    background: transparent url('../images/icon/angle-right-solid.svg') center left no-repeat;
    background-size: 7px;
    padding-left: 15px;
}

.research-menu .menu-li-level-four,
.leveltwo-menu-formation .menu-li-level-four {
    background: transparent url('../images/icon/angle-right-solid.svg') center left no-repeat;
    background-size: 5px;
    padding-left: 15px;
    font-size: 13px;
    margin-left: 20px;
}

.container-link.div-children.menu-li-level-two .more-less-icon {
    width: 20px;
    height: 20px;
    float: right;
}

.container-link.div-children.menu-li-level-two .more-less-icon.less-icon {
    background: transparent url('../images/icon/less-icon-blue.svg') center no-repeat;
    background-size: 12px;
}

.container-link.div-children.menu-li-level-two .more-less-icon.more-icon {
    background: transparent url('../images/icon/more-blue.svg') center no-repeat;
    background-size: 12px;
}

.container-link.div-children.menu-li-level-two .more-less-icon:hover {
    cursor: pointer;
}

.research-menu .menu-ul-level-two:not(.selected):not(.ancestor),
.leveltwo-menu-formation .menu-ul-level-two:not(.selected):not(.ancestor) {
    display: none;
}

.container_level-two-main-analyse .leveltwo-menu-formation .level-two-menu-custom-students {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}

.custom-level-four-formations-pages {
    padding-left: 0;
    margin-bottom: 15px;
    border-bottom: 1px solid #7070701A;
}

.custom-level-four-formations-pages li {
    margin-top: 3px;
    margin-bottom: 3px;
}

#navbarSupportedContent .header_second-nav li.child[data-attr-child="Intranet"] {
    display: none;
}

.intranet-logo-image {
    margin-left: 25px;
    padding-top: 35px;
}

.global_search-form {
    height: 43px !important;
    border-color: rgba(43, 32, 47, 0.20) !important;
    padding-left: 1.3em !important;
    border-width: 2px;
    border-bottom-left-radius: 2px !important;
    border-top-left-radius: 2px !important;
}

.global_btn-search-icon {
    background: var(--main-green-color);
    border-color: var(--main-green-color);
}

.search-module-header {
    display: none;
    position: absolute;
    max-width: 500px;
    top: -10px;
    left: 0;
    right: 0;
}

#close_search_icon {
    position: absolute;
    right: -30px;
    top: -15px;
    z-index: 10;
}

#close_search_icon:hover {
    cursor: pointer;
}

#search-header-btn {
    padding: 0 !important;
}

div[id^='parent-'] div[id^='trigger-']:hover {
    cursor: pointer;
}

div[id^='parent-'] div[id^='trigger-'] div {
    padding-right: 35px;
    margin-bottom: 25px;
    display: inline-block;
}

div[id^='parent-'] div[id^='trigger-'][aria-expanded=false] div {
    background: transparent url('../images/icon/more-blue.svg') center right no-repeat;
}

div[id^='parent-'] div[id^='trigger-'][aria-expanded=true] div {
    background: transparent url('../images/icon/minus-blue.svg') center right no-repeat;
}

div[id^='parent-'] div[id^='trigger-'] {
    font-family: OpenSans-Bold, serif;
    font-size: 14px;
}

@media screen and (max-width: 768px) {
    #header.header_search_activated {
        padding-bottom: 80px !important;
    }

    #close_search_icon {
        right: 0;
        top: -50px;
    }

    .search-module-header {
        max-width: 90vw;
        top: 80px;
    }
}