.mobile_button, .close-btn {
    display: none;
}

@media (max-width: 999px) {

    .glider_hover_box, .nav li a svg {
        display: none;
        visibility: hidden;
        opacity: 0;
    }

    #wrapper main {

        margin-top: 2rem;
    }

    #wrapper.nav_margin main {
        padding-top: 0;
    }

    /*** LOGO ***/
    #logo_link {
        position: absolute;
        top: 0.2rem;
        /* Logo has some padding on the right, so move it 0.1rem further than normaly needed */
        right: -1.6rem;
        height: 2rem;
        width: 4rem;
        z-index: 8;
        text-align: center;
    }

    #logo_link img {
        height: 1.6rem;
    }

    .wimpel_wrapper, .menu_wrapper {
        /* Leaflet sets the menu elements with z-index:1000...*/
        z-index: 1001;
        position: fixed;
        top: 0;
        width: 51%;
    }

    .wimpel_wrapper {
        right: 0;
    }

    /** Position menu wrapper above wimpel_wrapper because logo is inside menu_wrapper **/
    .menu_wrapper {
        z-index: 1002;
    }

    .wimpel_wrapper .block {
        text-align: right;
    }

    .wimpel_wrapper .block a,
    .wimpel_wrapper .block a {
        -webkit-tap-highlight-color: transparent;
        outline: 0;
        padding-right: 2rem;
        position: relative;
    }

    .menu_wrapper .block a,
    footer .block a {
        -webkit-tap-highlight-color: transparent;
        outline: 0;
        padding-left: 2rem;
        position: relative;
    }

    .block a:after, .block a:before {
        content: "";
        position: absolute;
        height: 0.125rem;
        border-bottom: 0.125rem solid #49494a;
        width: 1rem;
        top: 0.6875rem;
    }

    .wimpel_wrapper .block a:after {
        border-top: 0.125rem solid #49494a;
        right: 0.5rem;
    }

    .wimpel_wrapper .block a:before {
        top: 1.0625rem;
        right: 0.5rem;
    }

    .menu_wrapper .block a:after,
    footer .block a:after {
        left: 0.5rem;
        border-top: 0.125rem solid #49494a;
    }

    .menu_wrapper .block a:before,
    footer .block a:before {
        left: 0.5rem;
        top: 1.0625rem;
    }

    .no-js .mobile_button:hover a,
    .no-touch .mobile_button:hover a,
    .no-js .mobile_button:hover a:after,
    .no-touch .mobile_button:hover a:after,
    .no-js .mobile_button:hover a:before,
    .no-touch .mobile_button:hover a:before {
        color: #ec0000;
        border-color: #ec0000;
    }

    .mobile_button {
        display: block;
        z-index: 5;
        background-color: #ccc;
        font-size: 1.1rem;
        position: relative;
        margin: 0 auto;
        height: 2rem;
        line-height: 2rem;
    }

    .mobile_button a, a.close-btn {
        color: #49494a;

    }

    .block, .nav-btn.add {
        height: 100%;
        display: block;
        width: 100%;
    }

    .nav {
        height: 100%;
        display: none;
        width: 100%;
        position: fixed;
        right: 0;
        top: 2rem;
        z-index: 6;
        background-color: #fff;
    }

    .close-btn {
        height: 2rem;
        display: block;
        position: absolute;
        top: -2rem;
        width: 50%;
        padding-left: 0.5rem;
        background-color: #ccc;
        z-index: 7;
        font-size: 1.7rem;
        /* Stretch x so it's more quadratic */
        -webkit-transform: scale(1, 0.8);
        -moz-transform: scale(1, 0.8);
        -o-transform: scale(1, 0.8);
        -ms-transform: scale(1, 0.8);
        transform: scale(1, 0.8);
    }

    .close-btn:after {
        top: 4rem;
        position: absolute;
        height: 10000px;
        width: 10000px;
        left: -2000px;
        content: "";
        background-color: rgba(0, 0, 0, 0.7);
    }

    #nav-close-glider {
        right: 0;
        padding: 0 0.5rem 0 0;
        text-align: right;
    }

    .nav > ul {
        position: absolute;
        width: 100%;
        z-index: 10;
    }

    .nav > ul > li > a {
        background-color: #fff;
        display: block;
        width: 100%;
        margin: 0;
        border-top: 1px solid #aaa;
        padding: 0.2rem 0 0.2rem 0.5rem;
    }

    .nav > ul > li:first-of-type > a {
        border-top: none;
    }

    .no-js .nav > ul > li > a:hover,
    .no-touch .nav > ul > li > a:hover,
    .nav > ul > li > a:focus {
        background-color: #aaa;
        color: #000;
    }

    /* Menu is selected */
    #nav_website:target, #nav_gliders:target {
        display: block;
    }

    /***  Flexbox menu ***/
    .flexbox #nav_gliders,
    .flexbox #nav_website {
        height: 100%;
        /* Menu bar has 2rem so substract that from the height */
        border-bottom: 2rem solid transparent;

    }

    .flexbox .nav ul {
        height: 100%;
        display: flex;
        flex-direction: column;
    }

    .flexbox .nav ul > li {
        flex: 1;
        background: #fff;
        position: relative;
        border-bottom: 1px solid #aaa;
    }

    .flexbox .nav ul > li:hover {
        background: #efefef;
    }

    .flexbox .nav ul > li a {
        background: transparent;
        width: 100%;
        height: 100%;
        border: none;
    }

    .flexbox .nav ul > li a span {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
    }

    /*** FOOTER ***/
    footer {
        border-top: 1px solid #ccc;
        text-align: left;
    }

    footer .left, footer .right, footer .center {
        display: block;
        width: 100%;
        border-top: 1px solid #ccc;
        height: 2.4rem;
        line-height: 2.4rem;
        float: none;
    }

    footer .center {
        height: auto;
        overflow: auto;
        line-height: 3rem;
    }

    footer .center .footer-link-wrapper a {
        float: left;
        width: 33%;
        min-width: 7rem;
        line-height: 1.9rem;
    }

    footer .left {
        border: none;
    }

    footer .left a {
        position: relative;
        top: 0.3rem;
        height: 2.4rem;
        padding: 0 15px;
    }

    footer .left a:first-of-type {
        padding-left: 5px;
    }

    footer .language_selector {
        padding: 0 10px;
    }

    footer .language_selector span a {
        display: inline-block;
        padding: 0 11px;
    }

    footer .language_selector span:first-of-type a {
        padding-left: 0;
    }

    footer .language_selector span:last-of-type a {
        padding-right: 0;
    }
}
