/* Global Styles */

html,
body {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
}

body {
    font-family: 'Open Sans', sans-serif;
}

.text-vertical-center {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.text-vertical-center h1 {
    margin: 0;
    padding: 0;
}

.img-circle {
    border-radius: 50%;
}

.btn-circle {
    width: 80px;
    height: 80px;
    margin-top: 40px;
    padding: 7px 16px;
    border: 2px solid black;
    border-radius: 100% !important;
    font-size: 50px;
    color: black;
    background: 0 0;
    -webkit-transition: background .3s ease-in-out;
    -moz-transition: background .3s ease-in-out;
    transition: background .3s ease-in-out;
}

.btn-circle:hover,
.btn-circle:focus {
    outline: 0;
    color: grey;
    border: 2px solid white;
    background: rgba(0, 0, 0, 1);
}

.btn-circle i.animated {
    -webkit-transition-property: -webkit-transform;
    -webkit-transition-duration: 1s;
    -moz-transition-property: -moz-transform;
    -moz-transition-duration: 1s;
}

.btn-circle:hover i.animated {
    -webkit-animation-name: pulse;
    -moz-animation-name: pulse;
    -webkit-animation-duration: 1.5s;
    -moz-animation-duration: 1.5s;
    -webkit-animation-iteration-count: infinite;
    -moz-animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    -moz-animation-timing-function: linear;
}

.page-start {
    margin-top: 6em;
}


/* Custom Horizontal Rule */

hr.small {
    max-width: 100px;
}


/* Header */

.navbar-brand {
    font-size: 2rem;
    font-family: 'Josefin Sans', sans-serif;
}

.nav-link {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 1.1rem;
}


/* Footer */

footer {
    padding: 50px 0;
    background-color: lightgray;
}


/* Line Space */

.space {
    display: table;
    width: 100%;
    height: 5px;
}


/* Custom Margins */

.margin-top-05 {
    margin-top: 0.5em;
}

.margin-top-10 {
    margin-top: 1em;
}

.margin-top-15 {
    margin-top: 1.5em;
}

.margin-top-20 {
    margin-top: 2em;
}

.margin-top-25 {
    margin-top: 2.5em;
}

.margin-top-30 {
    margin-top: 3em;
}

.margin-top-35 {
    margin-top: 3.5em;
}

.margin-top-40 {
    margin-top: 4em;
}

.margin-bottom-05 {
    margin-bottom: 0.5em;
}

.margin-bottom-10 {
    margin-bottom: 1em;
}

.margin-bottom-15 {
    margin-bottom: 1.5em;
}

.margin-bottom-20 {
    margin-bottom: 2em;
}

.margin-bottom-25 {
    margin-bottom: 2.5em;
}

.margin-bottom-30 {
    margin-bottom: 3em;
}

.margin-bottom-35 {
    margin-bottom: 3.5em;
}

.margin-bottom-40 {
    margin-bottom: 4em;
}