html {
	background-color: #e8e8e8;
}
* {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
body {
	color: #45555f;
	font-family: sans-serif;
	font-size: 13pt;
	margin: 0;
}
body::before {
	content: '';
	display: block;
	position: fixed;
	z-index: -1;
	background-image: url('bg.jpg'),linear-gradient(54deg, #888 0%, #fff 100%);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-blend-mode: multiply;
	width: 100vw;
	height: 100vh;
}
.header {
	width: 100%;
	height: 130px;
	padding-top: 30px;
	background-color: #ffffff;
	border-bottom: 5px solid #073AB3;
	border-top: 40px solid #6f2c90;
	margin-bottom: 20px;
}
.header h1 {
	background-image: url('logo1.png');
	background-repeat: no-repeat;
	background-size: 130px 130px;
	direction: ltr;
	font-size: 1.5em;
	font-weight: 700;
	line-height: 130px;
	text-align: left;
	text-indent: -999em;
	margin: -50px auto 0 3%;
	z-index: 2;
	position: relative;
}
.logo2 {
	background-image: url('logo2.png');
	background-repeat: no-repeat;
	background-size: 267px 80px;
	float: right;
	width: 267px;
	height: 80px;
	position: absolute;
	top: 22px;
	right: 3%;
	z-index: 2;
	display: inline-block;
}
.logo2::after {
	clear: both;
}
.logo-container {
	max-width: 540px;
	width: 100%;
	margin: 0 auto;
	display: block;
	position: relative;
	height: 60px;
}

/* In smaller screen widths use smaller sizes (80% of full size) so both logos fit */
@media (max-width: 500px) {
	.header {
		height: 104px;
	}
	.header h1 {
		background-size: 104px 104px;
		line-height: 104px;
	}
	.logo2 {
		background-size: 200px 60px;
		width: 200px;
		height: 60px;
		top: 20px;
		right: 3%;
	}
}

@media (max-width: 50rem) {
	.logo-container {
		width: 100%;
	}

}
.footer {
	margin: 0 auto;
	padding-top: 1.5em;
	padding-bottom: 0.5em;
	position:relative;
	background-color: #e8e8e8;
	box-shadow: 0 50vh 0 50vh #e8e8e8;
}
.footer div {
	margin: 0 auto;
	width: 90%;
	max-width: 486px;
	font-size: 0.875em;
}
.footer a {
	color: #6f2c90;
	text-decoration: underline;
}
h3 {
	font-size: 1.125em;
	font-weight: bold;
	margin: 0 0 1em 0;
	color: #ce128b;
}
h3.short {
	margin: 0 0 0.75em 0;
	color: #6f2c90;
}
h4 {
	font-size: 1em;
	font-weight: 700;
	margin: 0 0 1em 0;
	color: #6f2c90;
}
.progress-bar {
	background-color: #e7e7e7;
	border-radius: 3px;
	width: 100%; height:0.25em;
}
.progress-bar span {
	background-color: #ce128b;
	border-radius: 3px;
	height:0.25em;
	display: block;
	text-indent: -9999px;
}
a {
	color: #6f2c90;
	font-weight: bold;
}
.form-container {
	margin: -20px auto 0;
	padding: 60px 0 60px 0;
	width: 100%;
	z-index: 1;
	position: relative;
}
.form-container form{
	margin: 0 auto;
	width: 90%;
	max-width: 540px;
	border-radius: 8px;
	border: solid 1px #dbdbdb;
	background-color: #fff;
	padding: 20px;
	padding-bottom: 0px;
	box-shadow: 0 7px 41px -10px #22252B;
}

.full-width {
	width: 100%;
}

.ui-text {
	border: 1px solid #003781;
	border-radius: 3px;
	font-family: sans-serif;
	font-size: 1em;
	line-height: 1.5em;
	padding: 0.25em;
	width: 100%;

	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.3), 0 1px 0 rgba(255, 255, 255, 0.2);
	-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.3), 0 1px 0 rgba(255, 255, 255, 0.2);
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.3), 0 1px 0 rgba(255, 255, 255, 0.2);

	background-clip: padding-box;
	-webkit-background-clip: padding-box;
	-moz-background-clip: padding;

}
.ui-field-group {
	font-size: 0.875em;
	margin: 0 0 1.5em 0;
}
.ui-field-row {
	padding: 0.5em 0;
}
.ui-field-row input {
	margin: 0 1em 0 0;
	position: relative;
	top: -1px;
}
.ui-button-submit {
	border: none;
	background-color: #ce128b;
	border-radius: 16px;
	color: #ffffff;
	cursor: pointer;
	font-family: sans-serif;
	font-size: 1em;
	font-weight: 700;
	padding: 0.5em 1em;
	overflow: visible;

	-webkit-appearance: none;
}
.ui-file-label {
	border-radius: 3px;
	color:#2b2b2b;
	padding: 0.5em 0.5em 0.66em 0.5em;
}
.ui-text-error {
	color: #ea0034;
}
ul.ui-list-links {
	border: 1px solid #d6d6d6;
	border-radius: 8px;
	margin: 0;
	padding: 0;
	background-color: #fff;
}
ul.ui-list-links li {
	border-top: 1px solid #d6d6d6;
	list-style: none;
}
ul.ui-list-links li:first-child {
	border-top: none;
}
ul.ui-list-links li a {
	text-decoration: none;
	display: block;
	padding: 9px 15px;
}

.ui-select {
	font-size: inherit;
	font-family: inherit;
}

.sectioned-list .section-start
{
	border-top: 1px solid lightgray;
	padding-top: 15px;
	padding-bottom: 5px;
	margin-top: 10px;
}

.sectioned-list .section-start.no-title
{
	padding-top: 5px;
}

.sectioned-list .selectable
{
	padding: 5px 0 5px 25px;
}

.sectioned-list .selection-note
{
	display: inline-block;
	margin-left: 5px;
	font-style: italic;
	color: #666;
	font-size: 0.85em;
}

