body
{
    background-color: floralwhite;
    padding: 48px 0 0 0;
    margin: 0 0 32px 0;
}

h1
{
    font-family: Dejavu Sans, Arial, Verdana, sans-serif;
    font-size: 1.2em;
    font-weight: 800;
    margin-top: -7px;
}

h2
{
    font-family: Dejavu Sans, Arial, Verdana, sans-serif;
    font-size: 1.2em;
    margin: 16px 0;
    padding: 0;
    height: 24px;
    color: #ff5d00;
}

h3
{
    font-family: Dejavu Sans, Arial, Verdana, sans-serif;
    font-size: 1.2em;
    margin: 20px 0;
    height: 1.2em;
}

h4
{
    font-family: 'Courier New', Courier, monospace;
    font-size: 1em;
    line-height: 1.25em;
    margin: 16px 0 20px 0;
}

a { color: black; }

ol { padding: 0; }

li { list-style-type: none; }

/* shared */

h1 a, h2 a
{
    text-decoration-style: dashed;
}

#page-wrapper
{
    width: 100%;
    max-width: 640px;
    margin: 0 auto;
}

.row-wrapper
{
    float: left;
    width: 100%;
    line-height: 1.5em;
    margin-bottom: 8px;
}

.row-wrapper h2
{
    margin: 0;
    padding: 0;
    font-size: 1.2em;
    font-family: 'Courier New', Courier, monospace;
    text-align: right;
    float: right;
    position: relative;
    display: inline;
    left: calc(-100% - 16px);
    background-color: #FF5D00;
    color: floralwhite;
}

.row-wrapper ol
{
    margin: 0;
    line-height: 1.5em;
}

.row-wrapper li
{
    font-family: 'Courier New', Courier, monospace;
    display: inline;
    margin: 0 16px 0 0;
}

/* home */

#home-page-wrapper
{
    width: 640px;
    margin: 0 auto;
}

#about
{
    margin-left: 0px;
    padding: 0;
    display: inline-block;
    width: 368px;
}

#about img
{
    width: 100%;
    position: relative;
    left: -128px;
    margin-top: 16px;
    padding-bottom: 16px;
}

#about p
{
    font-family: 'Courier New', Courier, monospace;
    background-color: floralwhite;
    box-shadow: 10px 10px #FF5D00;
    position: relative;
    left: 152px;
    top: 0px;
    margin-top: -490.667px;
    padding: 16px 32px;
}

.archive-block
{
    position: relative;
    left: 272px;
    width: 368px;
    margin-top: 16px;
    z-index: 1;
}

.archive-block h2
{
    font-family: Dejavu Sans, Arial, Verdana, sans-serif;
    font-size: 1.2em;
    font-weight: 800;
}

.link-list
{
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 8px;
    line-height: 1.5em;
}

.link-list a
{
    padding: 0;
    font-family: 'Courier New', Courier, monospace;
}

/* blog home */

#post-list
{
    display: grid;
    grid-template-columns: 148px 1fr;
    row-gap: 8px;
    width: 100%;
    padding-top: 4px;
}

.post-list-date
{
    margin: 0;
    padding: 0;
    font-family: 'Courier New', Courier, monospace;
    line-height: 1.5em;
}

#post-list a
{
    margin: 0;
    padding: 0;
    text-decoration: none;
    color: #ff5d00;
    font-family: 'Courier New', Courier, monospace;
    line-height: 1.5em;
}

/* blog post */

#page-wrapper h2
{
    font-family: Dejavu Sans, Arial, Verdana, sans-serif;
    font-size: 1.2em;
    line-height: 1.5em;
    margin: 8px 0;
    padding: 0;
    height: 24px;
    color: #ff5d00;
}

#post-date
{
    font-family: 'Courier New', Courier, monospace;
    line-height: 1.5em;
    margin: 13px 0 8px 0; 
}

#post-body p
{
    font-family: Arial, Verdana, sans-serif;
    line-height: 1.5em;
    margin-top: 12px;
}

iframe
{
    aspect-ratio: 16 / 9;
    height: auto;
    width: 100%;
}

@media (max-width: 960px)
{
    body
    {
        padding: 48px 16px 0 16px;
    }

    #home-page-wrapper
    {
        width: 100%;
        max-width: 640px;
    }

    #home-page-wrapper .row-wrapper h2
    {
        left: 0;
        text-align: left;
        float: left;
        margin-right: 16px;
    }

    #about
    {
        padding-bottom: 0px;
        width: 400px;
        margin: 0 auto;
        display: block;
    }

    #about img
    {
        left: 0;
        padding: 0px;
        margin-bottom: 24px;
        box-shadow: -8px 8px #FF5D00;
    }

    #about p
    {
        box-shadow: 0 0 transparent;
        left: 0;
        top: 0;
        width: 304px;
        margin: 0 auto;
        margin-bottom: 16px;
    }

    .archive-block
    {
        left: 0;
        width: 100%;
    }
}