/* body */
.constrained-width {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
p {
    line-height: 23px;
}
.constrained-children p, .constrained-children h2, .constrained-children h3, .constrained-children figcaption {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
figure.fullwidth img {
    width: 100vw;
    margin-left: -8px;
    overflow: hidden;
}
figure img {
    width: 100%;
}
figure {
    margin: 0;
}
figure.pagewidth {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
figcaption {
    text-align: center;
    font-style: italic;
    font-size: small;
}
.leadimg {
    margin-top: 5px;
    margin-bottom: -15px;
}
.leadimg img {
    width: 100%;
}
.blockcenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.pixely {
    image-rendering: crisp-edges;
    image-rendering: -moz-crisp-edges;
}
body {
    background-color: whitesmoke;
    margin-top: 20px;
    font-family: "Lucida Grande", "Lucida Sans Unicode", "Verdana", sans-serif;
}
header {
    position: relative;
    font-family: "Unifont", monospace;
    color: #575757;
    cursor: default;
}
.logo {
    image-rendering: pixelated;
    max-width: 100%;
    height: auto;
}
.byline {
    padding-left: 20px;
    position: absolute;
    top: 20%;
}
header a {
    color: #575757;
    text-decoration: none;
}
a {
    color: #1c60ff;
}

/* screen size media queries */
@media (max-width: 1050px) {
    /* add padding when content begins filling whole viewport horiontally */
    .constrained-width {
        padding-left: 10px;
        padding-right: 10px;
    }
    .constrained-children p {
        padding-left: 10px;
        padding-right: 10px;
    }
}
@media (max-width: 650px) {
    body {
        margin-top: 15px;
    }
    /* push byline and nav to below logo on small screens */
    .byline, .headerlinks {
        position: initial !important;
        display: block;
        padding-left: 0px;
    }
}

/* article */
.article-title {
    margin-bottom: 0px;
}
.date {
    margin-top: 0px;
    margin-bottom: 0px;
}
article {
    text-wrap: pretty;
}
#article-body p:last-of-type:after {
    content: "\0025A0";
    margin-left: 5px;
}

/* footnotes */
hr {
    border-color: #ffffff;
    background-color: #ffffff;
    color: #ffffff;
}

.footnote-ref {
    text-decoration: none;
    line-height: 0px;
}

.footnote-back {
    text-decoration: none;
    margin-left: 5px;
}

#footnotes p {
    overflow-wrap: break-word;
}

/* img reset for old browsers */
img {
    border: 0;
}
