*,
*:before,
*:after {
	box-sizing: inherit;
}

.clear {
	clear : both;
}

.clearfix:after {
	content: '';
	display: block;
	clear: both;
}

.login-html, .login-body {
	height: auto;
	overflow: visible;
}

.login-page {
	box-sizing: border-box;
	min-height: 100vh;
	padding-bottom: 185px;
	background: #FFF url(background.jpg) no-repeat center bottom;
	background-size: auto 100px;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	overflow-y: visible;
}

.login-header {
	margin-bottom: 5em;
	padding: 2em;
	background: #FFF;
	text-align: center;
}

.login-header img {
	display: inline-block;
	vertical-align: middle;
	max-width:400px;
	max-height:250px;
}

.login-content {
	text-align: center;
	z-index: 2;
}

.form-container {
	display: inline-block;
	padding: 3em 4em 1.5em 4em;
	min-width: 300px;
	width: 90%;
	max-width: 700px;
	border-radius: 10px;
	background-color: rgba(33, 60, 107, 0.75);
	text-align: left;
	color: #FFF;
	transition: opacity 0.5s;
}

.form-input {
	display          : block;
	margin           : 1em 0 .3em 0;
	padding          : 0.5em 1em;
	width            : 100%;
	border           : 0;
	border-radius    : 5px;
	background-color : #FFF;
	color            : #444;
	font-size        : 16px;
}

.login-recovery {
	display: inline-block;
	margin: 0.5em 0;
	color: #FFF;
	font-family: 'Lato', sans-serif;
	font-size: 12px;
}

.form-status {
	position: relative;
}

.form-loading,
.form-error {
	position: absolute;
	top: 1em;
	left: 0;
	right: 6em;
	color: #FFF;
	transition: opacity 0.5s;
}

.form-button-container {
	float : right;
	color : #FFF;
}

.form-button {
	float            : right;
	margin-top       : 1em;
	padding          : 0.5em 2em;
	border           : 0;
	border-radius    : 6px;
	background-color : rgb(252, 81, 32);
	font-weight      : bold;
	color            : #FFF;
	font-size        : 14px;
}

.form-button:hover {
	background-color : rgb(255, 93, 46);
}

.registration-links {
	float      : right;
	margin-top : 30px;
}

.registration-links p {
	margin : 0 0 3px;
}

.registration-links a {
	color           : #FFF !important;
	text-decoration : none;
}

.registration-links a:hover {
	text-decoration : underline;;
}

.registration-header {
	margin        : -20px 0 35px 0;
	border-bottom : 1px solid #FFF;
	font-family   : Lato,'Helvetica Neue',Arial,Helvetica,sans-serif;
}

.login-custom {
	margin-top: 1em;
}

.login-disclaimer {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 170px;
	padding: 10px;
	color: #FFF;
	text-align: center;
	font-family: 'Lato', sans-serif;
	font-size: 0.8em;
	z-index: 1;
}

.login-disclaimer:before {
	content: url(disclaimer_logo.png);
	display: block;
	margin-bottom: 1em;
}

.mobile-app-link-container {
	background: #EAEAEA;
	color: #444;
	text-align: center;
}

.mobile-app-link {
	display: block;
	font-size: 1.5rem;
	line-height: 1;
	padding: 1rem;
	color: inherit;
	text-decoration: none;
	white-space: nowrap;
	box-shadow: -3px -3px 3px rgba(0, 0, 0, 0.1) inset;
}

.mobile-app-link-content {
	display: inline-block;
}

.mobile-app-icon {
	display: inline-block;
	vertical-align: middle;
	margin-right: 0.5rem;
}

.mobile-app-text {
	display: inline-block;
	vertical-align: middle;
	text-align: left;
	white-space: normal;
	text-shadow: 1px 1px rgb(255, 255, 255);
}

.mobile-app-text b {
	font-weight: bold;
}

#secret-form img {
	margin: auto;
}
