@media only screen and (min-width: 40em) {

    #b-logo {
        grid-area: logo;
    }

    #b-index {
        grid-area: index;
    }

    #b-links {
        grid-area: links;
        align-items: center;
        display: flex;
    }

    #b-spacer {
        grid-area: spacer;
    }

    #b-news {
        grid-area: news;
    }

    #b-trans {
        grid-area: trans;
    }

    #b-nc {
        grid-area: nc;
    }

    #b-contact {
        grid-area: contact;
    }

    #b-archive {
        grid-area: archive;
    }

    #b-footer {
        grid-area: footer;
    }

    div.grid {
        grid-template-areas:
            'logo logo'
            'index news'
            'index links'
            'contact archive'
            'footer footer'
        ;
    }

}