html {
    height: 100%;
}

body {
    min-height: 100%;
    margin: 0;
    padding: 0;
}

.academicon {
    padding-right: 10px;
}

.two-column {
    display: flex;
}

aside {
    display: flex;
    flex-wrap: wrap;
    min-height: 100%;
}

main {
    width: 100%;
    padding: 0;
}

article {
    margin-top: 1em;
}

.sticky {
    position: relative;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    width: fit-content;
    height: fit-content;
    padding: 3em 0.5em 2em 1em;
    margin: 0 auto 0 auto;
    background: rgba(255, 255, 255, .9);
    border-radius: 5px;
}

/* Small devices (landscape phones, 576px and up) */
@media (max-width: 576px) {
    .two-column {
        display: grid;
    }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width:768px) {
    aside {
        width: calc(100% / 4);
    }

    main {
        width: calc(100% / 4 * 3);
    }
}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width:1400px) {
    body {
        max-width: 1400px;
        margin: auto;
    }

}