* {
    margin: 0;
    padding: 0;
}

body {
    background: #596e7f;
    font-size: 14pt;
}

hr {
    border-style: solid;
    color: #ccc;
    margin: 1.5em 0;
}

#content {
    background: #fafeff;
    background-repeat: no-repeat;
    background-size: 100%;
    border-radius: 0.4em;
    box-shadow: 0 0 0.2em 0 black, inset 0 0 0.15em #aaaaaa;
    box-sizing: border-box;
    margin: 1em auto;
    max-width: 95%;
    padding: 16em 2em 2em 2em;
    width: 70em;
}
#content a {
    color: #679;
}
#content a:hover {
    text-decoration: none;
}
#content blockquote {
    border-bottom: 0.1em solid #ccc;
    border-top: 0.1em solid #ccc;
    color: #679;
    font-style: italic;
    margin: 1.5em 0;
    padding: 0 2em;
}
#content div.highlight {
    background: white;
    border: 0.1em solid #bbbbbb;
    border-radius: 0.4em;
    box-shadow: 0.15em 0.15em #dddddd;
    font-size: 80%;
    padding: 0.5em;
}
#content h1,
#content h2,
#content h3 {
    margin-bottom: 1em;
}
#content p {
    margin: 1em 0;
}
#content p.image {
    text-align: center;
}
#content p.image img {
    border: 0.1em solid #bbbbbb;
    border-radius: 0.4em;
    box-shadow: 0.15em 0.15em #dddddd;
    padding: 0.1em;
    text-align: center;
}
#content ul,
#content ol {
    margin-left: 2em;
}

#footer {
    color: #aaaaaa;
    font-size: 80%;
    margin: 1em;
    text-align: center;
}

#header {
    background: #f5f5f6;
    border: 0.1em solid #bbbbbb;
    box-shadow: 0 0.15em #dddddd;
    box-sizing: border-box;
    margin: 1em 0;
    padding: 1em 0;
}
#header a {
    text-decoration: none;
}
#header a:hover {
    text-decoration: underline;
}
#header div {
    margin: 0 auto;
    max-width: 95%;
    width: 70em;
}

#subtitle {
    color: #aaaaaa;
    font-weight: bold;
    padding: 0.5em;
}

#title {
    color: #596e7f;
    font-size: 1.5em;
    font-weight: bold;
}

@media (max-width: 90em) {
    #content {
        padding-top: 22vw;
    }
}