form {
	max-width: 900px;
}

.form-section, .form-section li {
	list-style: none;
	margin: 0;
	padding: 0;
	position: relative;
}

.form-line {
	clear: both;
}

.form-line-column-clear:before, .form-line-column-clear:after,
.form-line:before, .form-line:after, li[data-type="control_head"]:before,
li[data-type="control_head"]:after { content: ""; display: table; clear: both; }

.form-line-column-clear:after { clear: both; }

.form-line-column-clear { *zoom: 1; clear: both; }

.form-line-column {
	clear: none;
	display: block;
	width: 50%;
	float: left;
}

.form-line-column.form-line:before, .form-line-column.form-line:after {
	content: normal;
	display: none;
}

.form-col-1 {
	padding-right: 8px !important;
	clear: left;
}

.form-col-2 {
	padding-left: 8px !important;
}

.form-html {
	margin-top: 1em;
}

.form-multiple-column .clearfix {
	display: none;
}

.form-header {
	margin-top: 1em;
}

h1.form-header:first-of-type {
	margin-top: 0;
}

.form-subHeader {
	font-family: "Archivo Narrow", Helvetica, sans-serif;
	font-weight: bold;
	font-size: 18px;
	margin-top: -10px;
	color: #243a69;
}

.form-buttons-wrapper {
	margin-left: 0 !important;
	margin-top: 20px;
}

.form-submit-button, .form-pagebreak-next, .form-pagebreak-back {
	display: inline-block;
	position: relative;
	margin-bottom: 4px;
	font-weight: normal;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	background-image: none;
	border: 1px solid transparent;
	white-space: nowrap;
	padding: 10px 15px;
	font-size: 15px;
	line-height: 1.42857143;
	border-radius: 4px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	color: #ffffff;
	background-color: #436b92;
	border-color: #436b92;
	text-decoration: none;
	-webkit-transition: background-color .2s ease-out;
	-moz-transition: background-color .2s ease-out;
	-o-transition: background-color .2s ease-out;
	transition: background-color .2s ease-out;
}

.form-submit-button:focus,
.form-submit-button:active:focus,
.form-submit-button.active:focus,
.form-pagebreak-next:focus, .form-pagebreak-back:focus,
.form-pagebreak-next:active:focus, .form-pagebreak-back:active:focus,
.form-pagebreak-next.active:focus, .form-pagebreak-back.active:focus {
	outline: thin dotted;
	outline: 5px auto -webkit-focus-ring-color;
	outline-offset: -2px;
}

.form-submit-button:hover,
.form-submit-button:focus,
.form-pagebreak-next:hover, .form-pagebreak-back:hover,
.form-pagebreak-next:focus, .form-pagebreak-back:focus {
	text-decoration: none;
}

.form-submit-button:active,
.form-submit-button.active,
.form-pagebreak-next:active, .form-pagebreak-back:active,
.form-pagebreak-next.active, .form-pagebreak-back.active {
	outline: 0;
	background-image: none;
}

.form-submit-button:hover, .form-submit-button.active, .form-submit-button:focus,
.form-pagebreak-next:hover, .form-pagebreak-back:hover,
.form-pagebreak-next.active, .form-pagebreak-back.active,
.form-pagebreak-next:focus, .form-pagebreak-back:focus {
	color: #ffffff;
	background-color: #184169;
	border-color: #184169;
}

.form-pagebreak-back-container, .form-pagebreak-next-container {
	display: inline-block;
	width: auto !important;
}

.form-pagebreak {
	clear: both;
	margin-top: 1em;
}

.form-sub-label {
	margin-top: -12px;
	font-weight: normal;
	color: #777;
	font-size: 16px;
}

.form-description {
	position: absolute;
	top: 8px;
	left: 0px;
	width: 100%;
	text-align: center;
	color: #243a69;
}

.form-description:after {
	content: "";
	width: 0;
	height: 0;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-top: 20px solid #ddd;
	position: absolute;
	margin-left: -20px;
}

.form-line-error input, .form-line-error textarea, .form-line-error select {
	border-color: darkred;
}

.form-error-message, .form-button-error p, .form-button-error {
	color: darkred;
	font-weight: bold;
}

table, table td, table th {
	border: none;
	background: transparent;
}

table td:first-of-type {
	padding-left: 0;
}

table td:last-of-type {
	padding-right: 0;
}

table {
	width: 100%;
}

table.form-matrix-table {
	width: auto;
}

table.form-matrix-table select, table.form-matrix-table input, table.form-matrix-table textarea {
	margin-bottom: 0;
}


input[type="tel"] {
	width: auto;
}

input[type=checkbox], input[type=radio] {
	margin-top: 10px;
}

div.calendar {
	z-index: 999;
	margin-top: -95px;
}

div.calendar
.today { background: #243a69 !important }

div.calendar .title, div.calendar
.button { color: #243a69 }

div.calendar .button {
	display: table-cell;
	border-radius: 0;
	color: #fff;
}

div.calendar
table { background-color: #eee; border: 1px solid #aaa; border-collapse: collapse }

div.calendar
thead { background-color: white }

div.calendar td,
div.calendar
th { font-size: 14px; padding: 3px; text-align: center }

div.calendar
td.title { font-weight: bold }

div.calendar
th { background: #ddd; border-bottom: 1px solid #ccc; border-top: 1px solid #ccc; font-weight: bold; color: #555 }

div.calendar tr.days
td { width: 2em; color: #555; text-align: center; cursor: pointer }

div.calendar tr.days td:hover:not(.unselectable),
div.calendar td.button:hover:not(.unselectable) { background-color: #34abfa; cursor: pointer }

.unselectable { cursor: default !important }

div.calendar tr.days td:active
div.calendar td.button:active { background-color: #cde }

div.calendar tr.days
td.selected { font-weight: bold; background-color: #fff; color: #000 }

div.calendar tr.days
td.today { font-weight: bold; color: #fff }

div.calendar tr.days
td.otherDay { color: #bbb }

li.always-hidden {
	display: none;
	visibility: hidden;
}

li[data-type="control_datetime"] .form-sub-label-container, li[data-type="control_datetime"] input, li[data-type="control_datetime"] select,
li[data-type="control_phone"] .form-sub-label-container, li[data-type="control_phone"] input,
li[data-type="control_time"] .form-sub-label-container, li[data-type="control_time"] select {
	display: inline-block;
	width: auto !important;
}

li[data-type="control_phone"] .form-sub-label-container:first-of-type,
li[data-type="control_time"] .form-sub-label-container:first-of-type{
	padding-right: 5px;
	white-space: nowrap;
}

li[data-type="control_datetime"] .date-separate {
	margin-right: 5px;
}

li[data-type="control_fullname"] span.form-sub-label-container {
	display: block;
	width: 50%;
	float: left;
}

li[data-type="control_fullname"] span.form-sub-label-container:first-of-type {
	padding-right: 8px;
}

li[data-type="control_fullname"] span.form-sub-label-container:last-of-type {
	padding-left: 8px;
}

li[data-type="control_head"] {
	clear: both;
}

li[data-type="control_email"] br {
	display: none;
}

li[data-type="control_radio"] .form-single-column .form-radio-item {
	display: block;
}

li[data-type="control_checkbox"] .form-single-column .form-checkbox-item {
	display: block;
}

li[data-type="control_checkbox"] .form-multiple-column .form-checkbox-item {
	display: block;
	float: left;
}

li[data-type="control_checkbox"] .form-multiple-column[data-columncount="2"] .form-checkbox-item {
	width: 50%;
}

li[data-type="control_checkbox"] .form-multiple-column[data-columncount="3"] .form-checkbox-item {
	width: 33%;
}

li[data-type="control_checkbox"] .form-multiple-column[data-columncount="4"] .form-checkbox-item {
	width: 25%;
}



input[type="text"], input[type="password"], input[type="file"], input[type="email"], input[type="tel"], input[type="search"], input[type="number"], select, textarea {
	width: 100% !important;
}

input.form-radio-other-input {
	width: auto !important;
	display: inline;
}

li[data-type="control_fileupload"] .form-label-left {
	float: left;
	display: inline-block;
	text-align: left;
	padding: 3px;
	white-space: normal;
	/*width: 150px !important;*/
	margin-right: 7px;
}

li[data-type="control_fileupload"] .form-input {
	float: left;
	display: inline-block;
}

.qq-uploader {
	margin-top: 26px;
}

/*
.qq-upload-drop-area {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	min-height: 54px;
	z-index: 2;
	background: #f5f5f5;
	background: rgba(240, 240, 240, 0.9);
	text-align: center;
	color: #b1b1b1;
	border: 2px dashed #c5c5c5;
	-moz-border-radius: 5px 5px;
	-webkit-border-radius: 5px 5px;
	border-radius: 5px 5px;
}
*/

.filePicker-button {
	border-style: solid;
	border-width: 1px;
	border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
	cursor: pointer;
	display: inline-block;
	vertical-align: middle;
	padding: 9px 24px;
	margin-bottom: 0;
	font-size: 13px;
	line-height: 18px;
	text-align: center;
	color: #fff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background: #0074cc;
	background: -moz-linear-gradient(top, #08c 0%, #05c 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #0088cc), color-stop(100%, #0055cc));
	background: -webkit-linear-gradient(top, #08c 0%, #05c 100%);
	background: -o-linear-gradient(top, #08c 0%, #05c 100%);
	background: -ms-linear-gradient(top, #08c 0%, #05c 100%);
	background: linear-gradient(to bottom, #08c 0%, #05c 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0055cc', GradientType=0);
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
	-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05)
}

.filePicker-button:hover {
	background: #00a0f0;
	background: -moz-linear-gradient(top, #00a0f0 0%, #0064f0 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #00a0f0), color-stop(100%, #0064f0));
	background: -webkit-linear-gradient(top, #00a0f0 0%, #0064f0 100%);
	background: -o-linear-gradient(top, #00a0f0 0%, #0064f0 100%);
	background: -ms-linear-gradient(top, #00a0f0 0%, #0064f0 100%);
	background: linear-gradient(to bottom, #00a0f0 0%, #0064f0 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00a0f0', endColorstr='#0064f0', GradientType=0)
}

.filePicker-button:active {
	background: #0064f0;
	background: -moz-linear-gradient(top, #0064f0 0%, #00a0f0 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #0064f0), color-stop(100%, #00a0f0));
	background: -webkit-linear-gradient(top, #0064f0 0%, #00a0f0 100%);
	background: -o-linear-gradient(top, #0064f0 0%, #00a0f0 100%);
	background: -ms-linear-gradient(top, #0064f0 0%, #00a0f0 100%);
	background: linear-gradient(to bottom, #0064f0 0%, #00a0f0 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0064f0', endColorstr='#00a0f0', GradientType=0)
}

.qq-uploader {
	position: relative;
	width: 224px
}

.qq-upload-button {
	background: #ffa84c;
	background: -moz-linear-gradient(top, #fbcb5d 0%, #efa003 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fbcb5d), color-stop(100%, #efa003));
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FBCB5D', endColorstr='#EFA003', GradientType=0);
	color: #fff;
	display: block;
	font-size: 16px;
	padding: 8px 0;
	text-align: center;
	text-shadow: 0 -1px #c64f00;
	border: 1px solid #c64f00;
	-moz-border-radius: 5px 5px;
	-webkit-border-radius: 5px 5px;
	border-radius: 5px 5px
}

.qq-upload-button-hover {
	background: #ff7b0d;
	background: -moz-linear-gradient(top, #ff7b0d 0%, #ffa84c 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ff7b0d), color-stop(100%, #ffa84c));
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff7b0d', endColorstr='#ffa84c', GradientType=0)
}

.qq-upload-button-focus {
	outline: 1px dotted black
}

.qq-upload-delete {
	display: none;
	top: 0px;
	position: absolute;
	background: #f85032;
	width: 20px;
	height: 20px;
	right: 0px;
	color: #fff;
	line-height: 18px;
	text-align: center;
	-moz-border-radius: 0px 5px 5px 0px;
	-webkit-border-radius: 0px 5px 5px 0px;
	border-radius: 0px 5px 5px 0px;
	border-left: 1px solid #aaa;
	cursor: pointer
}

.qq-upload-delete:hover {
	background: #ffb76b;
}

.qq-upload-list li:hover {
	border: 1px solid #aaa
}

.qq-upload-success:hover .qq-upload-delete {
	display: block
}

.qq-upload-drop-area {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	min-height: 54px;
	z-index: 2;
	background: #f5f5f5;
	background: rgba(240, 240, 240, 0.9);
	text-align: center;
	color: #b1b1b1;
	border: 2px dashed #c5c5c5;
	-moz-border-radius: 5px 5px;
	-webkit-border-radius: 5px 5px;
	border-radius: 5px 5px
}

.qq-upload-drop-area
span {
	display: block;
	position: absolute;
	top: 50%;
	width: 100%;
	margin-top: -10px;
	font-size: 16px
}

.qq-upload-drop-area-active {
	background: lightyellow;
	background: rgba(222, 255, 210, 0.9)
}

.qq-upload-list {
	margin: 10px 0;
	padding: 0;
	list-style: none
}

.qq-upload-list
li {
	position: relative;
	font-size: 11px;
	margin: 8px 0;
	color: #5e5b5b;
	padding: 2px 4px;
	background: #eee;
	-moz-border-radius: 5px 5px;
	-webkit-border-radius: 5px 5px;
	border-radius: 5px 5px;
	white-space: normal;
	border: 1px solid transparent
}

.qq-upload-file, .qq-upload-spinner, .qq-upload-size, .qq-upload-cancel, .qq-upload-failed-text {
	font-size: 9px;
	line-height: 16px
}

.qq-file-uploading {
	display: inline-block;
	overflow: hidden;
	white-space: nowrap;
	width: 80px
}

.qq-upload-failed-text {
	float: right
}

.qq-upload-fail {
	background: #ff927d !important;
	color: #fff !important
}

.qq-upload-fail .qq-upload-size {
	display: none !important
}

.qq-upload-file {
}

.qq-upload-spinner {
	display: inline-block;
	background: url("/images/loading.gif");
	width: 15px;
	height: 15px;
	vertical-align: text-bottom;
	margin-bottom: 3px;
	margin-left: 2px
}

.qq-upload-size, .qq-upload-cancel {
	float: right;
	margin-left: 4px
}

.qq-upload-failed-text {
	display: none
}

.qq-upload-fail .qq-upload-failed-text {
	display: inline
}

.qq-upload-button {
	background: #436b92;
	border: 1px solid #436b92;
	display: block;
	font-size: 16px;
	text-align: center;
	padding: 6px 12px;
	color: #fff;
	cursor: pointer;
	-moz-border-radius: 3px 3px;
	-webkit-border-radius: 3px 3px;
	border-radius: 3px 3px;
	text-shadow: none;
	margin-bottom: 20px;
}

.form-star-rating {
	width: auto !important;
}

.form-star-rating div {
	margin: 3px !important;
}

input[type="text"].form-checkbox-other-input {
	width: 95% !important;
	display: inline;
}


@media screen and (max-width: 1000px) {
	.form-col-1, .form-col-2 {
		display: block;
		width: 100%;
		float: none;
		padding: 0 !important;
	}

	.form-star-rating {
		width: auto !important;
	}

	.form-star-rating div {
		margin: 10px !important;
	}
}