/* form styles */
.form h4 {
	background: none repeat scroll 0 0 #2c5c9f;
	color: #f0cb58;
	font-weight: 300;
	font-size: 1.4rem;
	padding: 0.4rem 0.5rem;
	border-radius: 4px;
	margin: 0.2rem 0 0.7rem 0;
}
.form label {
	display: inline-block;
	margin-left: 0.2rem;
	font-family: Arial,sans-serif;
	font-variant: small-caps;
	font-size: 0.9rem;
	color: #1d4573;
}
.form label.error {
	font-family: Tahoma, Verdana, sans-serif;
	color: #3581cf;
	text-transform: uppercase;
	float: right;
	font-size: 0.75rem;
	margin-top: 0.3rem;
}

.form input, .form select, .form textarea, .form button {
	font-size: 0.9rem;
	font-family: inherit;
	margin-bottom: 1rem;
	color: #3e3e3e;
} 
.form input, .form select {
	height: 2.7rem;
}
.form input, .form textarea, .form select { 
	background: none repeat scroll 0 0 #ededed;
	border: 1px solid #d1d1d1;
	padding: 0.625em;
	width: 100%;
	border-radius: 3px;
	transition: background 0.20s linear 0s;
	-o-transition: background 0.20s linear 0s;
	-ms-transition: background 0.20s linear 0s;
	-moz-transition: background 0.20s linear 0s;
	-webkit-transition: background 0.20s linear 0s;
}
.form input:hover, .form textarea:hover, .form select:hover, .form input:focus, .form textarea:focus, .form select:focus {
	background: none repeat scroll 0 0 #fff;
}
.form input[type="radio"], .form input[type="checkbox"] {
	margin: 0 0.625em 0 0.3em;
	width: auto;
	padding: 0;
	height: auto;
}
.form option {
	padding: 0.625em;
}
.form select[multiple="multiple"] {
	height: auto;
}
.form select.ccdate {
	width: 43%;
	margin-right: 0.3rem;
}
.form select.default {
	color: #8f8f8f;
}
.form textarea {
	height: auto;
}
.form textarea.code {
	font-size: 0.8rem;
	color: gray;
	border-radius: 4px;
}
.form input[type="text"].error, .form textarea.error, .form select.error {
	background: #d5e3f2;
   border: #3581cf 1px solid;
}

.form button {
	background: #4581c2;
	background: -moz-linear-gradient(top, #4581c2 0%, #1d4573 100%);
	background: -webkit-linear-gradient(top, #4581c2 0%, #1d4573 100%);
	background: -ms-linear-gradient(top, #4581c2 0%, #1d4573 100%);
	background: linear-gradient(to bottom, #4581c2 0%, #1d4573 100%);
	border: #1f4b8a 1px solid;
	color: #f8f8f8;
	border-radius: 3px;
	cursor: pointer;
	font-weight: 400;
	text-transform: uppercase;
	padding: 10px;
	box-shadow: 0 12px 10px -10px rgba(0, 0, 0, 0.5), 0 1px 0 rgba(255, 255, 255, 0.50) inset;
	-o-animation-duration: 0.4s;
	-ms-animation-duration: 0.4s;
	-moz-animation-duration: 0.4s;
	-webkit-animation-duration: 0.4s;
}	
.form button:hover {
	color: #1d4573;
	border: #c7c7c7 1px solid;
	background: #e5ac27;
	background: -moz-linear-gradient(top, #d3d3d3 0%, #e7e7e7 100%);
	background: -webkit-linear-gradient(top, #d3d3d3 0%, #e7e7e7 100%);
	background: -ms-linear-gradient(top, #d3d3d3 0%, #e7e7e7 100%);
	background: linear-gradient(to bottom, #d3d3d3 0%, #e7e7e7 100%);
	box-shadow: none;
}

input:required, textarea:required { /* override mozilla red required shadow */
  box-shadow: none;
}
input:-webkit-autofill { /* override chrome yellow autofill */
   -webkit-box-shadow: 0 0 0px 1000px #F5F5F5 inset;
}
textarea:focus, select:focus, input:focus { /* override chrome focus border */
   outline: none;
}

.form .checkbox {
	background: #ededed url(/images/checkbox_bg.png) repeat;
	border: 1px solid #d1d1d1;
	padding: 0.3rem 0.4rem;
	border-radius: 3px;
	margin-bottom: 0.5rem;
	font-size: 0.85rem;
}
.form .choices {
	font-size: 0.8rem;
	margin-bottom: 1rem;
}
.form .choices p {
	font-size: 0.8rem;
	padding: 0.3rem;
}
.form .captcha {
	background: #b4c1d0 url(/images/captcha_bg.png) repeat;
	border: 1px solid #99a8b9;
	padding: 0.4rem 0.5rem;
	border-radius: 3px;
	margin: 0.2rem 0 0.7rem 0;
}
.form #tos {
	display: inline-block;
}

#captcha {
	display: block;
	width: 216px;
	height: 60px;
	margin: 0 auto;
}
	#captcha span {
		float: left;
		width: 32px;
		background: url(/images/captcha.png) 0 0 no-repeat;
		display: block;
		margin: 4px 2px;
		text-align: center;
		padding: 30px 0 0 5px;
	}
	#captcha span.captcha0 { 
		background-position: 0px 0;
	}
	#captcha span.captcha32 {
		background-position: -32px 0;
	}
	#captcha span.captcha64 {
		background-position: -64px 0;
	}
	#captcha span.captcha96 {
		background-position: -96px 0;
	}
	#captcha span.captcha128 {
		background-position: -128px 0;
	}
	#captcha span.captcha160 {
		background-position: -160px 0;
	}
	#captcha span.captcha192 {
		background-position: -192px 0;
	}
	#captcha span.captcha224 {
		background-position: -224px 0;
	}
	#captcha span.captcha256 {
		background-position: -256px 0;
	}
	#captcha span.captcha288 {
		background-position: -288px 0;
	}
	#captcha span.captcha320 {
		background-position: -320px 0;
	}
	#captcha span.captcha352 {
		background-position: -352px 0;
	}

.success{
	background: #d8ffc0;
	padding: 0.5rem 1rem;
	margin: 0 0 1rem 0;
	border: none;
	color: #2e6800;
	border-left: 0.3em solid #2e6800;
}
.warning {
	background: #f8f0d6;
	padding: 0.5rem 1rem;
	margin: 0 0 1rem 0;
	border: none;
	color: #ce9611;
	border-left: 0.3rem solid #ce9611;
	font-size: 0.8rem;
	border-radius: 5px;
}