html {
	background-color: #ffffff;
}
* {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}
body {
	color: #251F21;
	font-family: poppins, sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: 13pt;
	margin: 0;
}
body::before {
	content: '';
	display: block;
	position: fixed;
	z-index: -1;
	background-image: url('background.jpg');
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-blend-mode: multiply;
	width: 100vw;
	height: 100vh;
}
.header {
	width: 100%;
	overflow: hidden;
	padding: 10px 0 10px;
	background-color: #ffffff;
	box-shadow: 0 0 12px rgba(0, 0, 0, 0.25);
}

h1, h2, h3, h4, h5 {
	font-family: omnes-pro, sans-serif;
	font-weight: 500;
	font-style: normal;
	color: #04459b;
}
.logo-container {
	margin: 0 auto;
	max-width: 540px;
	width: 90%;
}
.header h1 {
	background-image: url('churchill-logo-372.png');
	background-repeat: no-repeat;
	background-size: 186px 57px;
	direction: ltr;
	font-size: 1.5em;
	font-weight: 700;
	line-height: 57px;
	text-align: left;
	text-indent: -999em;
	margin: 0 auto;
	width: 186px;
}
.footer {
	border-top: 1px solid #33b5e5;
	margin: 0 auto;
	padding-top: 1.5em;
	padding-bottom: 0.5em;
	position:relative;
	background-color: #ffffff;
	box-shadow: 0 50vh 0 50vh #ffffff;
}
.footer div {
	margin: 0 auto;
	width: 90%;
	max-width: 540px;
	font-size: 0.875em;
}
.footer a {
	color: #04459b;
	text-decoration: underline;
}
h3 {
	font-size: 1.125em;
	font-weight: bold;
	margin: 0 0 1em 0;
}
h3.short {
	margin: 0 0 0.75em 0;
}
h4 {
	font-size: 1em;
	font-weight: 700;
	margin: 0 0 1em 0;
}
.progress-bar {
	background-color: #e7e7e7;
	border-radius: 3px;
	width: 100%; height:0.25em;
}
.progress-bar span {
	background: #33b5e5 linear-gradient(45deg, rgba(0,72,153,1) 0%, rgba(45,175,229,1) 100%);
	border-radius: 3px;
	height:0.25em;
	display: block;
	text-indent: -9999px;
}
a, .link-style {
	color: #04459b;;
	font-weight: bold;
}
.form-container {
	margin: 0 auto;
	padding: 30px 0 30px 0;
	width: 90%;
}

/* PADDING MOBILE */
@media (max-width: 500px) {
	.form-container {
		padding: 20px 0 20px 0;
	}
}
/* PADDING MOBILE */
.form-container form{
	margin: 0 auto;
	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 #33b5e5;
	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 {
	background: #04459b linear-gradient(45deg, rgba(0,72,153,1) 0%, rgba(45,175,229,1) 100%);
	border-radius: 4px;
	border:0px;
	color: #ffffff;
	cursor: pointer;
	font-family: sans-serif;
	font-size: 1em;
	font-weight: 700;
	padding: 0.5em 1em;
	overflow: visible;

	-webkit-appearance: none;
}

.ui-button-submit.ui-button-previous {
	background: #04459b;
}
.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 #04459b;
	border-radius: 8px;
	margin: 0;
	padding: 0;
	background-color: #fff;
}
ul.ui-list-links li {
	border-top: 1px solid #04459b;
	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;
}

/*
 * Hub
 */

.card::before
{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 8px;
	content: '';
	background-image: linear-gradient(to left, #00B6BA,#0050A0);
}

.card
{
	border-radius: 4px;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25);
}

.card.details-section h3
{
	margin-top: 18px; /* TODO - pad the card instead */
	font-weight: 500;
	font-style: italic;
}

.card h2
{
	font-style: italic;
}

h4
{
	font-weight: 500;
}