html {
    --article-width: 550px;
    --aside-width: 180px;
}

body {
    margin: 0 0 0 8px;
    display: grid;
    grid-template-columns: min-content 1fr;
    grid-template-areas: "aside main";
    grid-column-gap: 20px;
    height: 100vh;
    overflow: hidden;
}

main {
    padding: 20px 0 100px 0;
    grid-area: main;
    overflow-x: clip;
    overflow-y: scroll;
}

aside {
    padding: 8px 0px;
    grid-area: aside;
    overflow-x: clip;
    width: var(--aside-width);
    overflow-y: scroll;
}

main article {
    width: var(--article-width);
}

main nav {
    width: var(--article-width);
}