* {
    font-family: sans-serif;
    margin: 0;
}

h1, h2, h3, h4, h5 {
    font-size: 1em;
    margin-top: 1em;
}

h1 {
    font-size: 1.25em;
}

h2 {
    font-size: 1.1em;
}

hr {
    margin-bottom: 1em;
}

p, img, figcaption, pre, blockquote, ul, ol {
    margin-top: 0.5em;
}

blockquote {
    padding-left: 0.5em;
    border-left: 1px solid black;
    font-style: italic;
}

time {
    margin-top: 0.5em;
    display: block;
}

a {
    color: black;
}

nav, section {
    margin: 0 10px;
}

main, header {
    max-width: 60ch;
    margin: 30px auto;
}

ul {
    padding-left: 1rem;
}

code, code span {
    font-family: monospace;
}

pre {
    padding: 10px;
    border-radius: 5px;
}

nav h1 {
    margin: 0;
}

.bullet {
    list-style: disc;
    padding: 0 1em;
}

img, figcaption {
    margin-inline: auto;
    max-width: min(90%, 400px);
}

figcaption {
    font-style: italic;
    width: max-content;
    margin-bottom: 1em;
}

img {
    margin-top: 1.5em;
    display: block;
}

footer {
    height: 25vh;
}

footer > hr {
    margin-top: 2em;
}

hr {
    border: none;
    border-bottom: solid black 1px;
}

nav {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    margin-bottom: 1em;
}
nav h1 > a {
    text-decoration: none;
}
nav ul {
    list-style: none;
    padding: 0;
    margin-left: auto;
    display: flex;
    flex-direction: row;
    gap: 1em;
}

nav li {
    margin-bottom: 0;
}

.article-list a {
    display: block;
}

.article-list time {
    font-size: 0.8rem;
}

.article-list li {
    list-style: none;
    margin-top: 0.5em;
}
.article-list {
    padding-left: 0;
}

.article-list h3 {
    font-weight: 400;
    margin: 0;
}

.article-list article {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.article-list time {
    margin-left: auto;
}