@font-face {
    font-family: 'Oswald';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(./Oswald-Regular.woff2) format('woff2');
}

html {
    scroll-behavior: smooth
}

h1,
h2,
h3,
h4 {
    color: #ffffff;
    font-family: Oswald, Arial;
    font-weight: 400;
    margin: 0.25em 0 5px 0;
}

h1 {
    font-size: 5em;
    margin: 5px 0;
}

h1+h2 {
    margin-top: 5px;
    font-size: 2.0em;
}

h3 {
    font-size: 1.6rem;
}

div + div h3 {
    margin-top: 1em;
}

h4 {
    font-size: 1.25rem;
}

p,
li,
td,
th,
footer {
    color: #ffffff;
    font-family: Roboto, Helvetica, "Noto Sans", Arial;
    line-height: 120%;
    font-size: 1.1rem;
}

footer {
    min-height: 15vh;
}

footer ul {
    padding: 0;
    list-style: none;
    margin: 0;
    width: fit-content;
}

.nav a:hover {
    text-decoration: underline !important;
    background: rgba(0, 0, 0, .5);
    border-radius: 5px;
    padding: 3px;
}

section ul>li {
    display: flex;
    vertical-align: middle;
}

.nice, .post {
    background: #282c34;
    border-radius: 7px;
    display: block;
    margin: .5em 0 1em 0;
    overflow-x: auto;
    padding: 0.5em;
}

.nice img {
    max-height: 300px;
    margin: -0.5em -0.5em 0.5em -0.5em;
    width: calc(100% + 1em);
    object-fit: cover;
}

a:hover,
a:active,
a:focus {
    color: #0099ff;
}

a {
    font-family: Roboto, Helvetica, "Noto Sans", Arial;
    color: #00ccff;
}

body {
    background: #323842;
}

code {
    border-radius: 7px;
}

ul {
    color: #fff;
}

.divider {
    background: white;
    height: 1px;
    margin: .75em 0 1.5em 0;
}

footer li.divider {
    background: initial;
    border-top: 1px solid white;
    margin: 5px 0;
    width: 120%
}

.nav .divider {
    margin: 2.5px 0;
}

.nav {
    background: #282c34;
    height: 100vh;
    left: 0;
    position: fixed;
    top: 0;
}

nav img {
    width: 100%;
    height: auto;
}

.nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

ul li {
    padding: 1px;
}

.nav ul a {
    color: white;
    text-decoration: none;
}

.container {
    position: absolute;
    top: 0;
    padding: 0 20px;
    max-width: 70vw;
}

.mobile-nav {
    display: none;
    background: #282c34;
    height: 64px;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    padding: 2px;
}

.mobile-nav-dropdown {
    display: none;
}

#mobile-dropdown {
    font-size: 1.5rem;
    color: white;
    position: absolute;
    right: calc((64px - 48px)/2 + 5px);
    top: calc((64px - 48px)/2);
    margin: 0;
}

.flex-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
}

.item h3 {
    margin: 0;
    width: 100%;
}

.flex-container .item {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.flex-container .item p {
    margin: 10px 0 0 0;
    flex-grow: 4;
}

.mobile-nav img {
    padding: 7px;
    width: 50px;
    height: auto;
}

.nav {
    padding: 20px;
    width: 12vw;
}

.nav img {
    width: 100%;
    height: auto;
}

.nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav ul li {
    padding: 1px;
}

.container {
    left: calc(12vw + (18vw / 2));
    max-width: 1024px;
}

@media screen and (min-width: 1250px) {
    .flex-container .item {
        flex-basis: 49%;
    }

    .nav ul a {
        font-size: 1.0rem;
    }
}

@media screen and (min-width: 800px) and (max-width: 1250px) {
    .nav ul a {
        font-size: 0.8rem;
    }
}

@media screen and (max-width: 800px) {
    .nav {
        display: none;
    }

    .mobile-nav {
        display: block;
    }

    .container {
        left: 10px;
        top: 64px;
        max-width: calc(100vw - 20px);
    }
}
