body {
    margin-left: 0;
    margin-right: 0;
}

div#page {
    margin: 0 auto;
    max-width: 1200px;
}

footer, header {
    font-size: 85%;
    padding-top: 12pt;
    padding-bottom: 12pt;
}

aside {
    max-width: 200px;
    margin-top: 0;
}

/* grid */
.historicus-grid {
    display:grid;
    grid-template-areas:
        'header'
        'left-sidebar'
        'main-content'
        'right-sidebar'
        'footer';
}

.historicus-grid > * {
    padding:1rem;
}

.historicus-grid > .header {
    grid-area:header;
}

.historicus-grid > .main-content {
    grid-area:main-content;
}
.historicus-grid > .left-sidebar {
    grid-area:left-sidebar;
}
.historicus-grid > .right-sidebar {
    grid-area:right-sidebar;
}
.historicus-grid > .footer {
    grid-area:footer;
}

/* tablet */
@media (min-width:768px) {
    .historicus-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-areas:
            'header header'
            'left-sidebar left-sidebar'
            'main-content main-content'
            'right-sidebar right-sidebar'
            'footer footer';
    }
}

/* desktop */
@media (min-width:1024px) {
    .historicus-grid {
        grid-template-columns: repeat(6, 1fr);
        grid-template-areas:
            'header header header header header header'
            'left-sidebar main-content main-content main-content main-content right-sidebar'
            'footer footer footer footer footer footer';
    }
}