@media only screen and (max-device-width: 480px), (max-width: 800px) {

    /* Button styling */
    .menu-toggle {
        display: inline-block;
        width: 48px;
        height: 48px;
        color: #333;
    }

    .menu-toggle:hover,
    .menu-toggle:focus {
        color: #c00;
    }

    /*
     Default styles + Mobile first
     Offscreen menu style
    */
    .main-menu {
        position: absolute;
        right: -450px;
        top: 0;
        height: 100%;
        overflow-y: scroll;
        overflow-x: visible;
        transition: right 0.3s ease,
        box-shadow 0.3s ease;
        z-index: 999;
    }

    .main-menu ul {
        list-style: none;
        margin: 0;
        padding: 2.5em 0 0;
        /* Hide shadow w/ -8px while 'closed' */
        -webkit-box-shadow: -8px 0 8px rgba(0, 0, 0, .5);
        -moz-box-shadow: -8px 0 8px rgba(0, 0, 0, .5);
        box-shadow: -8px 0 8px rgba(0, 0, 0, .5);
        min-height: 100%;
        width: 450px;
        background: #1a1a1a;
    }

    .main-menu a {
        display: block;
        padding: .75em 15px;
        line-height: 1em;
        font-size: 1.5em;
        color: #fff;
        text-decoration: none;
        border-bottom: 1px solid #383838;
    }

    .main-menu li:first-child a {
        border-top: 1px solid #383838;
    }

    .main-menu a:hover,
    .main-menu a:focus {
        background: #333;
        text-decoration: underline;
    }

    .main-menu .menu-close {
        position: absolute;
        right: 0;
        top: 0;
    }

    /*
     On small devices, allow it to toggle...
    */
    /*
     :target for non-JavaScript
     aria-expanded="true/false" will be for JavaScript
    */
    .main-menu:target,
    .main-menu[aria-expanded="true"] {
        right: 0;
        outline: none;
        -moz-box-shadow: 3px 0 12px rgba(0, 0, 0, .25);
        -webkit-box-shadow: 3px 0 12px rgba(0, 0, 0, .25);
        box-shadow: 3px 0 12px rgba(0, 0, 0, .25);
    }

    .main-menu:target .menu-close,
    .main-menu[aria-expanded="true"] .menu-close {
        z-index: 1001;
    }

    .main-menu:target ul,
    .main-menu[aria-expanded="true"] ul {
        position: relative;
        z-index: 1000;
    }

    /*
     We could us `.main-menu:target:after`, but
     it wouldn't be clickable.
    */
    .main-menu:target + .backdrop,
    .main-menu[aria-expanded="true"] + .backdrop {
        position: absolute;
        display: block;
        right: 0;
        top: 0;
        width: 100%;
        height: 100%;
        z-index: 998;
        background: #000;
        background: rgba(0, 0, 0, .85);
        cursor: default;
    }

    @supports (position: fixed) {
        .main-menu,
        .main-menu:target + .backdrop,
        .main-menu[aria-expanded="true"] + .backdrop {
            position: fixed;
        }
    }

    .main-menu-close-icon {
        background: url('../images/x-mark-1-48.png');
        background-repeat: no-repeat;
        width: 48px;
        height: 48px;
        display: block;
    }
}
