form {
	box-sizing:initial;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-transition-delay: 9999s;
    -webkit-transition: color 9999s ease-out, background-color 9999s ease-out;
}
DIV.input-row, DIV.display-row {
	overflow:hidden;
	margin-bottom:4px;
	clear:both;
}
DIV.display-row {
	line-height:22px;
}
DIV.input-row label,
DIV.display-row .label {
	display: block;
	font-weight:bold;
	padding-bottom: 10px;
}
DIV.display-row .label {
	padding-top:0px;
}
DIV.input-row input, DIV.input-row select, DIV.display-row .data {
    width: 100%;
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	padding: 7px 15px;
	border: 1px solid #d2d2d2;
	
	-webkit-appearance: none;
	-moz-appearance: none;
}
DIV.input-row input[type=file] {
	padding: 0px;
	border: 0px solid #d2d2d2;
}
DIV.display-row .data ul {
	list-style-type: none;
	padding: 0px;
	margin: 0px;
}
DIV.input-row input.chkBx {
	width: auto;
}

DIV.input-row textarea {
	font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;
	font-size:14px;
	width: 100%;
    max-width: 100%;
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	padding: 7px 15px;
	border: 1px solid #d2d2d2;
	
	-webkit-appearance: none;
	-moz-appearance: none;
}
DIV.action-row {
	overflow: hidden;
}
DIV.action-row span {
	display: block;
}
DIV.input-row span.error,
div.error,
p.error {
	color: #b94a48;
    font-weight: bold;
    display: block;
    margin: 0px;
    text-align: left;
    padding: 10px 15px;
    margin-bottom: 15px;
	font-weight: normal;
    font-size: 18px;
    text-align: center;
}
form div.input-row ul {
	overflow:hidden;
	margin:0;
	padding:0;
	list-style:none;
}
form div.input-row ul li {
	overflow: hidden;
	padding-right:4px;
	margin:0px 4px 6px 0px;
}
form div.input-row ul li label {
	display:inline;
	width:auto;
}

form .btn {
    background: #0085c6;
    padding: 7px 0px;
    font-size: 16px;
    line-height: 20px;
    cursor: pointer;
    display: block;
    text-align: center;
    width: 100%;
    margin: 0px;
    color: #ffffff;
    border: 0px solid #ffffff;
    box-sizing: border-box;
}

input#tandc {
	margin-left: 28px;
}

div#acceptableEnc {
	height: 0px;
	width: 0px;
	position: absolute;
	left: -9999999px;
	top: -9999999px;
}

@media screen and (max-width: 480px) {
	DIV.input-row label {
		text-align:left;
	}
	
	DIV.action-row,
	div.error {
		margin:8px 0px 8px 0px;
	}

}


@keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }
  
  20%, 80% {
    transform: translate3d(2px, 0, 0);
  }

  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0);
  }

  40%, 60% {
    transform: translate3d(4px, 0, 0);
  }
}
form.invalid {
	animation: shake 0.82s cubic-bezier(.36,.07,.19,.97) both;
	transform: translate3d(0, 0, 0);
}


.fancy-input .input-row {
    display: block;
    background: #ffffff;
    width: 100%;
    padding: 0px;
    line-height: 36px;
    display: flex;
    margin-bottom: 10px;
	overflow: hidden;
	
	border: 2px solid #cccccc;
	
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.fancy-input .input-row label {
    font-weight: bold;
    font-size: inherit;
    display: inline-block;
    padding-right: 6px;
    padding-left: 10px;
	padding-bottom: 0px;
	font-weight: normal;
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
	cursor: pointer;
	
	-webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.fancy-input .input-row input,
.fancy-input .input-row select,
.fancy-input .input-row textarea {
    font-size: inherit;
    border: 0px;
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: auto;
    padding-right: 10px;
	padding-left: 0px;
    width: 100%;
	padding-top: 0px;
	padding-bottom: 0px;
	cursor: pointer;
	line-height: 36px;
}
.fancy-input .input-row input:focus,
.fancy-input .input-row textarea:focus {
	outline: none;
}