header {
    background: #2D2D2D;
    padding-top: .4rem;
    padding-bottom: .2rem;
}

* {
    box-sizing: border-box;
    font-size: 16px;
    color: #222;
}

h1 {
    font-size: 1.6rem;
}

html, body {
    min-height: 100%;
}

body {
    background-image: url("images/Background.png");
    background-position: 70% top;
    background-repeat: no-repeat;
    background-size: cover;
    margin: 0;
    font-family: ReithSans, Helvetica, Arial, sans-serif;
}

footer {
    background: #2D2D2D;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

ul, p, h1 {
    margin: 0;
    padding: 0;
}

li {
    list-style-type: none;
}

a {
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

noscript>main.card {
    display: block;
    padding: 2.2rem 1.5rem;
}

noscript h1 {
    font-size: 1.6rem;
}

.content {
    max-width: 1038px;
    margin: 0 auto;
}

.card {
    background: #FFF;
    margin: 0 auto;
    padding: 2.2rem 1.5rem;
    max-width: 500px;
    margin-top: 21px;
}

.login-text {
    color: #FFF;
    font-size: 1.3rem;
    margin-left: 0.5rem;
    vertical-align: 0.15rem;
    letter-spacing: 0.1rem;
}

.mfa-images {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.mfa-images img {
    display: inline-block;
    max-width: 80px;
}

a.primary {
    width: 100%;
    display: block;
    text-align: center;
    padding: .8rem;
    background: #1B037E;
    border: 0;
    color: #FFF;
    font-weight: 700;
}

a.primary:hover {
    background: #363EA0;
    cursor: pointer;
    text-decoration: none;
}

.copyright {
    color: #FFF;
    font-size: .8rem;
}

.links li {
    float: left;
    margin-right: 5rem;
}

.links:after {
  content: "";
  display: table;
  clear: both;
}

.bottom-gutter--l {
    margin-bottom: 1.5rem;
}

.bottom-gutter--m {
    margin-bottom: 1rem;
}

.bottom-gutter--s {
    margin-bottom: .5rem;
}

.top-gutter--s {
    margin-top: .5rem;
}

footer .links a {
    color: #FFF;
    font-size: .8rem;
}

@media screen and (max-width: 1038px) {
    .content {
        padding: 0 1.5rem;
    }
}

@media screen and (max-width: 460px) {
    .mfa-images img {
        max-width: 90px;
        max-height: 90px;
        padding: 0;
    }
}

@media screen and (max-width: 430px) {
    .mfa-images img {
        max-width: 80px;
        max-height: 80px;
        padding: 0;
    }
}

@media screen and (max-width: 425px) {
    main {
        padding-bottom: 130px;
    }
}

@media screen and (max-width: 415px) {
    .mfa-images img {
        max-width: 60px;
        max-height: 60px;
        padding: 0;
    }
}

@media screen and (max-width: 288px) {
    body {
        position: relative;
    }
}