html, body {
    height: 100%;
}

body {
    padding-top: 55px;
    display: flex;
    text-align: center;
    flex-direction: column;
}

main {
    margin: auto;
    padding: 25px;
    flex: 1 0 auto;
    max-width: 1000px;
}

img {
    max-width: 100%;
}

/* Homepage */

.intro {
    transform: translateY(2vh);
    width: 100%;
    position: relative;
}

.intro > .centered > h1 {
    color: #ffffff;
    font-size: 10vh;
}

.intro > .centered > h2 {
    color: #ffffff;
    font-size: 3vmin;
}

.intro > .centered {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

/* Page content */

.content {
    padding-top: 20px;
}

/* Profile picture */

.profile {
    width: 10vh;
    height: 10vh;
    border-radius: 50%;
}

/* Colored links */

a:link, a:visited {
    color: var(--accent);
}

a.icon:hover {
    text-decoration: none;
}

a:hover {
    color: var(--accent) !important;
}

/* Copyright message */

.copyright {
    margin: 15px 0;
}

/* Paginator */

.pages {
    padding: 15px 0;
}

.pages-icon {
    padding: 0 15px;
}

/* List item for posts/projects */

.item {
    padding: 10px 0;
}

.item-tag {
    background-color: var(--accent);
}

/* Navigation icons */

.navbar-icon {
    font-size: 125%;
    display: inline-block !important;
}

/* Colored borders at top/bottom of page */

.navbar.navbar-default {
    border-top: var(--border-width) solid var(--accent);
}

footer {
    border-bottom: var(--border-width) solid var(--accent);
}