.mvsForm, .mvsForm *, .mvsForm *:before, .mvsForm *:after {
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box;  -o-box-sizing: border-box; box-sizing: border-box; outline: none;
}
.mvsForm { width: 100%; display: block; margin: 0; padding: 0; position: relative; border-collapse: collapse; white-space: normal; }

.mvsForm input:invalid {
	-webkit-box-shadow: none; -moz-box-shadow: none; -ms-box-shadow: none; -o-box-shadow: none; box-shadow: none;
}

.mvsForm .mvsFormRow { width: 100%; padding-top: 15px; position: relative; color: #444; display: inline-block; vertical-align: top; }
.mvsForm .mvsFormRow.columsCells2 { width: 49%; margin-right: 1%; }

.mvsForm > .mvsFormRow:nth-of-type(1) { padding-top: 0px; }

.mvsForm .mvsFormRow .separator { height: 25px; width: 100%; position: relative; }
.mvsForm .mvsFormRow .separator .titledSeparator {
	width: 100%; margin-bottom: 5px; overflow: hidden; position: relative;
	display: -webkit-flex; display: flex; line-height: 1.8rem;
}
.mvsForm .mvsFormRow .separator .titledSeparator span {
	padding-left: 10px; padding-right: 10px; color: #000; white-space: nowrap; -webkit-flex: none; flex: none; font-size: 1.4rem;
}
.mvsForm .mvsFormRow .separator .titledSeparator:before,
.mvsForm .mvsFormRow .separator .titledSeparator:after {
    content: ''; height: 2px; background-color: #2fa8d6; position: relative;
	margin-top: 0.9rem; -webkit-flex: none; flex: none;
}
.mvsForm .mvsFormRow .separator .titledSeparator:before { width: 50px; }
.mvsForm .mvsFormRow .separator .titledSeparator:after { -webkit-flex: 1 !important; flex: 1 !important; }

.mvsForm .mvsFormRow .formFieldContainer { position: relative; }

.mvsForm .mvsFormRow .formFieldContainer .fixedText {
	position: absolute; top: 0px; right: 5px; margin-top: 25px; height: 25px; line-height: 25px; font-size: 100%; display: inline-block; font-weight: bold;
}

/*
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus
*/
.mvsForm .mvsFormRow .formFieldContainer .mvsInput {
	position: relative; width: 100%; margin-top: 22px; margin-bottom: 1px; height: 25px; line-height: 25px; border: none;
	border-bottom: solid 1px #bbb; padding: 0px 5px; font-size: 1.0rem; color: #444;
	background-color: rgba(0, 0, 0, 0); display: inline-block;
	-webkit-transition:  all 0.3s ease-in-out; -moz-transition:  all 0.3s ease-in-out; -ms-transition:  all 0.3s ease-in-out;
	-o-transition:  all 0.3s ease-in-out; transition:  all 0.3s ease-in-out;
}
.mvsForm .mvsFormRow .formFieldContainer textarea.mvsInput { height: 80px; resize: none; }

.mvsForm .mvsFormRow .formFieldContainer .mvsInput.text-transform-uppercase { text-transform: uppercase !important; }
.mvsForm .mvsFormRow .formFieldContainer .mvsInput.text-transform-lowercase { text-transform: lowercase !important; }

.mvsForm .mvsFormRow .formFieldContainer .clear_input { font-size: 24px; line-height: 25px; text-decoration: none !important; }

.mvsInput:-webkit-autofill,
.mvsInput:-webkit-autofill:hover {
	-webkit-text-fill-color: #000; -webkit-box-shadow: 0 0 0px 1000px #FFF inset; border-bottom: solid 1px #FFF;
}

.mvsInput:-webkit-autofill:focus,
.mvsInput:-webkit-autofill:active { border-bottom: solid 1px #2fa8d6; }
.mvsForm .mvsFormRow .formFieldContainer .mvsInput:focus,
.mvsForm .mvsFormRow .formFieldContainer .mvsInput:active { border-bottom: solid 1px #2fa8d6; }

.mvsForm .mvsFormRow .formFieldContainer .mvsLabel {
	position: absolute; width: 100%; top: 23px; left: 5px; color: #888;	display: inline-block; height: 25px; line-height: 25px;
	font-weight: normal; font-size: 1.1rem; pointer-events: none;
	-webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;
	-webkit-transition:  all 0.3s ease-in-out; -moz-transition:  all 0.3s ease-in-out; -ms-transition:  all 0.3s ease-in-out;
	-o-transition:  all 0.3s ease-in-out; transition:  all 0.3s ease-in-out;
}

.mvsForm .mvsFormRow .formFieldContainer .mvsLabel small { font-size: 70%; vertical-align: baseline; padding-left: 5px; }

.mvsInput:-webkit-autofill + .mvsLabel,
.mvsInput:-webkit-autofill:hover + .mvsLabel { top: 0px; color: #888; }
.mvsForm .mvsFormRow .formFieldContainer .mvsInput.filled + .mvsLabel { top: 0px; left: 0px; color: #888; font-size: 1.0rem; }

.mvsForm .mvsFormRow .formFieldContainer .mvsInput:focus + .mvsLabel,
.mvsForm .mvsFormRow .formFieldContainer .mvsInput:active + .mvsLabel { top: 0px; left: 0px; color: #2fa8d6; font-size: 1.0rem; }


.mvsForm .mvsFormRow .formFieldContainer .mvsCombobox {
	font-size: 100%; margin-top: 22px; height: 25px; line-height: 25px; display: inline-block; border-bottom: solid 1px #bbb;
}
.mvsForm .mvsFormRow .formFieldContainer .mvsCombobox .text { padding-left: 5px; height: 25px; line-height: 24px; }
.mvsForm .mvsFormRow .formFieldContainer .mvsCombobox ul { top: 25px; }

.mvsForm .mvsFormRow .formFieldContainer .mvsCombobox + .mvsLabel { top: 0px; left: 0px; color: #888; font-size: 1.0rem; }
.mvsForm .mvsFormRow .formFieldContainer .mvsCombobox:focus + .mvsLabel { color: #2fa8d6; }
.mvsForm .mvsFormRow .formFieldContainer .mvsCombobox:focus { border-color: #2fa8d6; }


.mvsForm .mvsFormRow .formFieldContainer select {
	position: relative; max-width: 100%; border: none; border-bottom: solid 1px #bbb; margin-bottom: 1px; color: #444; background: rgba(0, 0, 0, 0);
	padding: 0px 5px; width: 100%; font-size: 1.0rem; -webkit-appearance: none; -moz-appearance: none; appearance: none; padding-right: 30px; line-height: 25px;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 307.053 307.053'%3E%3Cpath fill='%23444' d='M302.445 80.796l-11.1-11.103c-6.124-6.13-16.075-6.13-22.21 0L153.67 183.707 37.907 67.96c-6.134-6.13-16.08-6.13-22.21 0l-11.1 11.1c-6.13 6.133-6.13 16.067 0 22.2l137.83 137.83c6.13 6.136 16.067 6.136 22.203 0l137.815-136.096c6.144-6.13 6.144-16.068 0-22.198z'/%3E%3C/svg%3E");
    background-size: 20px 20px; background-repeat: no-repeat; background-position: right 5px center;
}
.mvsForm .mvsFormRow .formFieldContainer select::-ms-expand { display: none; }
.mvsForm .mvsFormRow .formFieldContainer select:focus,
.mvsForm .mvsFormRow .formFieldContainer select:active {
	border-bottom: solid 1px #887647;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 307.053 307.053'%3E%3Cpath fill='%23887647' d='M302.445 80.796l-11.1-11.103c-6.124-6.13-16.075-6.13-22.21 0L153.67 183.707 37.907 67.96c-6.134-6.13-16.08-6.13-22.21 0l-11.1 11.1c-6.13 6.133-6.13 16.067 0 22.2l137.83 137.83c6.13 6.136 16.067 6.136 22.203 0l137.815-136.096c6.144-6.13 6.144-16.068 0-22.198z'/%3E%3C/svg%3E");
}


.mvsForm .mvsFormRow .formFieldContainer .checkContainer {
	width: 100%; height: 25px; margin-top: 25px; padding-top: 4px; position: relative; display: inline-block;
}
.mvsForm .mvsFormRow .formFieldContainer .checkContainer .checkBox input[type=checkbox] { visibility: hidden; display: inline; }
.mvsForm .mvsFormRow .formFieldContainer .checkContainer .checkBox {
	width: 75px; height: 26px; background: #E7E7E7; position: absolute; display: inline-block;
	-webkit-border-radius: 50px; -moz-border-radius: 50px; border-radius: 50px;
	-webkit-box-shadow: inset 0px 1px 1px rgba(0,0,0,0.5), 0px 1px 0px rgba(255,255,255,0.2);
	-moz-box-shadow: inset 0px 1px 1px rgba(0,0,0,0.5), 0px 1px 0px rgba(255,255,255,0.2);
	box-shadow: inset 0px 1px 1px rgba(0,0,0,0.5), 0px 1px 0px rgba(255,255,255,0.2);
}
.mvsForm .mvsFormRow .formFieldContainer .checkContainer .checkBox:after {
	content: 'NO'; font: 12px/26px Arial, sans-serif; color: #db352b; position: absolute; right: 10px;
	z-index: 0; font-weight: bold; text-shadow: 1px 1px 0px rgba(255,255,255,.15); top: 0px;
}
.mvsForm .mvsFormRow .formFieldContainer .checkContainer .checkBox:before {
	content: 'SI'; font: 12px/26px Arial, sans-serif; color: #4fa1d2; position: absolute; left: 10px;
	z-index: 0; font-weight: bold; text-shadow: 0px 0px 0px #000;
}
.mvsForm .mvsFormRow .formFieldContainer .checkContainer .checkBox label {
	display: block; width: 40px !important; height: 21px;
	-webkit-border-radius: 50px; -moz-border-radius: 50px; border-radius: 50px;
	-webkit-transition: all .4s ease; -moz-transition: all .4s ease;
	-o-transition: all .4s ease; -ms-transition: all .4s ease;
	transition: all .4s ease; cursor: pointer; position: absolute !important;
	top: 2px; left: 3px; z-index: 1;
	-webkit-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.3);
	box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.3);

	background: #fcfff4;
	background: -webkit-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
	background: -moz-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
	background: -o-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
	background: -ms-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
	background: linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fcfff4', endColorstr='#b3bead',GradientType=0 ); }
.mvsForm .mvsFormRow .formFieldContainer .checkContainer .checkBox input[type=checkbox]:checked + label { left: 33px; }
.mvsForm .mvsFormRow .formFieldContainer .checkContainer + .mvsLabel { top: 0px; color: #FFF; }

.mvsForm .mvsFormRow .formFieldContainer .mvsInput.invalid { border-color: red; }
.mvsForm .mvsFormRow .formFieldContainer .mvsInput.invalid + .mvsLabel { color: #f00; }

.mvsForm .mvsFormRow .formFieldContainer .fieldErrorMessage { width: 100%; display: none; padding: 5px; color: red; font-size: 80%; }
.mvsForm .mvsFormRow .formFieldContainer .fieldErrorMessage.active { display: inline-block; }
.mvsForm .mvsFormRow .formFieldContainer .fieldDescription { width: 100%; display: inline-block; padding: 5px; color: #cecece; font-size: 80%;}

@media (max-width: 480px) {
	.mvsForm .mvsFormRow.columsCells2 { width: 100%; margin-left: 0%; }
}