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

h1, .h1,
h2, .h3,
h3, .h4,
h4, .h5,
h5, .h5,
h6, .h6 {
    /*font-family: 'Playfair Display', serif;*/
    font-weight: 600;
    letter-spacing: 0.05em;
}

#intro {
    background: url("../img/library.jpg") no-repeat center center scroll;
    -webkit-background-size: cover;
    background-size: cover;
}

.ng-valid[required] {
    border-left: 5px solid #42A948; /* green */
}
.ng-invalid {
    border-left: 5px solid #a94442; /* red */
}

.glyphicon.spinning {
    animation: spin 1s infinite linear;
    -webkit-animation: spin2 1s infinite linear;
}

@keyframes spin {
    from { transform: scale(1) rotate(0deg); }
    to { transform: scale(1) rotate(360deg); }
}

@-webkit-keyframes spin2 {
    from { -webkit-transform: rotate(0deg); }
    to { -webkit-transform: rotate(360deg); }
}

.vertical-center {
    min-height: 100%; /* Fallback for browsers do NOT support vh unit */
    min-height: 100vh; /* These two lines are counted as one :-)       */

    display: flex;
    align-items: center;
}

.avatar {
    border-radius: 50%;
    border: 3px solid #fff;
}

.top-buffer {
    margin-top: 20px;
}

a {
    cursor:pointer;
}