html, body {
    height: 100%;
}

main {
    background: #036;
}

.top-header__logo { font-weight: bold; }

.desktop-background {
    background-color: #036;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    height: 100%;
	overflow: auto
}

.content-wrapper {
    padding-top: 30px;
	padding-bottom: 150px;
    max-width: 860px;
    margin: 0 auto;
    color: #fff
}

.content-wrapper .heading {
    font-size: 56px;
    line-height: 75px
}

.content-wrapper .sub-heading {
    font-size: 31px;
    padding-top: 20px
}

main .form {
    width: 350px;
    padding: 18px 24px;
    background: #ffffff;
    margin-top: 50px;
    font-family: "Avenir";
}

main .form input {
	color: #222;
}

main .input-group .form-control {
	margin-top: 10px;
}

main .form .form-input {
	margin: 5px 0;	
}

main .form .form-heading {
   	font-size: 15px;
	text-align: left;
	/*padding-bottom: 10px;*/
	color: #036;
	font-weight: bold;
}

main .form .form-button {
    /*display: inline-block;*/
	margin-top: 5px;
}

main .form .form-button a, main .form .form-button button {
    color: #fff;
    padding: 12px 32px;
    font-size: 18px;
}

main .form .form-link {
    font-size: 16px;
}

main .form .form-link a {
    text-decoration: underline;
}

main .form .form-footer {
    font-size: 14px;
    line-height: 17px;
    padding-top: 20px;
}

.mobile-background {
    display: none;
}

.footer--wrapper {
    font-family: "Avenir-light";
    font-size: 18px;
	text-align: center;
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}

.footer--wrapper a {
    color: #fff;
    text-decoration: none;
}

.footer--wrapper a:hover {
    color: #fff;
}

footer {
    background: #036;
    height: 130px;
	position: relative;
}

@media screen and (max-width: 860px) {
    main .form {
        float: none;
        margin: 35px auto 50px auto;
    }
}

@media screen and (max-width: 810px) {
    .content-wrapper .heading {
        font-size: 46px;
        line-height: 55px;
    }
    .content-wrapper .sub-heading {
        font-size: 25px;
    }
}

@media screen and (max-width: 640px) {
    main {
        background: #036;
        padding-bottom: 130px;
    }
    main .form {
        float: none;
        width: 90%;
        padding: 25px;
        margin: 35px auto;
    }
	main .form .form-heading {
        font-size: 19px;
    }
	main .form .form-input {
		margin: 10px 0;
	}
	footer {
		margin-top: -130px;
	}
    .content-wrapper {
        padding-top: 10px;
		padding-bottom: 0;
        position: relative;
    }
    .content-wrapper .heading {
        font-size: 27px;
        line-height: 44px;
    }
    .content-wrapper .sub-heading {
        font-size: 21px;
    }
    .desktop-background {
        background-image: none !important;
        height: auto;
    }
    .mobile-background {
        display: block;
    }
}

@media screen and (max-width: 480px) {
    main {
        padding-bottom: 130px
    }
    main .form {
        float: none;
        width: 90%;
        padding: 15px 24px;
        margin: 35px auto 50px auto
    }
	footer {
		margin-top: -130px;
	}
    footer .footer {
        font-size: 15px
    }
    .content-wrapper {
        padding-top: 10px;
		padding-bottom: 0;
        position: relative
    }
    .content-wrapper .heading {
        font-size: 24px;
        line-height: 35px
    }
    .content-wrapper .sub-heading {
        font-size: 15px
    }
    .desktop-background {
        background-image: none !important;
        height: auto
    }
    .mobile-background {
        display: block
    }
}