@media only screen and (min-width: 481px) {
    .header_content .logo_site img {
        width: auto;
        height: 90px;
        max-height: 90px;
        margin: auto;
    }

    .header_content {
        position: relative;
    }

    .header_content #main_menu > .logo_site {
        margin: 15px auto 0 auto;
        display: inline-block;
    }

    #main_menu {
        padding: 55px 0 0 0;
    }

    #catnav {
        padding: 0;
        width: 100%;
    }

    #catnav .logo_site {
        padding: 0;
        width: 100%;
    }

    .menu-button {
        width: 20%;
        max-width: 120px;
        float: right;
        clear: right;
        text-align: center;
        margin-top: 35px;
    }

    .rtl .menu-button {
        float: left;
    }

    .flexnav.show {
        clear: both;
    }
}

/* FlexNav fournit déjà l'icône historique à droite du libellé. */
#header #main_menu > .menu-button > .fa-bars {
    display: none;
}

@media only screen and (min-width: 768px) {
    .menu-button {
        width: 20%;
        max-width: 120px;
        float: right;
        clear: right;
        text-align: center;
        margin-top: 48px;
    }

    .rtl .menu-button {
        float: left;
    }

    #main_menu {
        padding: 45px 0 0 0;
    }
}

@media only screen and (min-width: 481px) and (max-width: 1024px) {
    #header {
        position: sticky;
        top: 0;
        z-index: 1000;
    }

    .admin #header {
        top: 42px;
    }

    #header,
    #header .header_content,
    #header #main_menu {
        overflow: visible;
    }

    #header .header_content {
        box-sizing: border-box;
        width: 100%;
    }

    #header #top_bar {
        z-index: 30;
    }

    #header #main_menu {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: end;
        min-height: 124px;
        padding: 16px 2.5% 0;
        position: relative;
    }

    #header .header_content #main_menu > .logo_site {
        justify-self: start;
        width: auto;
        margin: 0;
    }

    #header .header_content #main_menu > .logo_site img {
        display: block;
        width: auto;
        height: 72px;
        max-height: 72px;
        margin: 0;
    }

    #header #main_menu > .menu-button {
        box-sizing: border-box;
        justify-self: end;
        width: auto;
        min-width: 120px;
        max-width: 160px;
        min-height: 52px;
        margin: 0;
        float: none;
        clear: none;
    }

    #header #catnav {
        grid-column: 1 / -1;
        position: absolute;
        z-index: 40;
        top: 100%;
        right: 2.5%;
        left: 2.5%;
        width: auto;
        margin: 0;
    }
}
