#form_title {
	margin-bottom: 0px;
}

#form_description {
	margin: 20px 0px;	
}

.form {
	position: relative;
	float: left;
	width: 100%;
}

.form_container {
	position: relative;
}

.form input,
.form select,
.form textarea {
	border: solid 1px #ccc;
	border-radius: 5px;
	padding: 8px;
}

.form input[type="radio"],
.form input[type="checkbox"] {
	border-radius: 0;
	border: 0;
	box-shadow: none;
	padding: 0;	
}

.form_block {
	display: block;
	float: left;
	width: 100%;
	clear: both;
	margin: 5px 0px;
	padding: 5px;
}

.form_block.error {
	background: #FCE5E5;
}

.form_block.hidden {
	display: none;
}

.form_block.submit {
	width: 100%;
	text-align: center;
	margin: 20px 0px 40px 0px;
}

.form_group  {
	position: relative;
	float: left;
	width: 100%;	
}


.radios_block,
.checkboxes_block {
	display: inline-block;
}
	.radio_block,
	.checkbox_block {
		display: block;
	}

	.radios_block.display_inline .radio_block,
	.checkboxes_block.display_inline .checkbox_block  {
		display: inline-block;
		padding-right: 15px;
		text-align: center;
	}
	
	.radio_block label,
	.checkbox_block label {
		cursor: pointer;
	}
	
.radios_block .radio_block.image_block img,
.checkboxes_block .checkbox_block.image_block img {
	display: block;
}

	.radios_block .radio_block.image_block img:hover,
	.checkboxes_block .checkbox_block.image_block img:hover
	{
		opacity: 0.8;
	} 

.radios_block .radio_block.image_block,
.checkboxes_block .checkbox_block.image_block {
	margin: 4px;
}

.form_label {
	min-width: 150px;
	display: inline-block;
	margin-top: 5px;	
	vertical-align: top;
	
}	
	.form_sublabel,
	.radio_label,
	.checkbox_label {
		font-weight: normal;
		color: inherit;
	}

.form_block.required .form_label:after {
	content: ' *';
	color: red;
}

.form.labels-top .form_block .form_label,
.form .form_block label.form_label.label-top {
	display: block;
	min-width: 0;
	text-align: inherit;
	margin: 0px 0px 5px 0px;
	padding: 0px;
}

.form.labels-left .form_block .form_label,
.form .form_block label.form_label.label-left {
	display: inline-block;
	margin-top: 5px;	
	vertical-align: top;
	text-align: right;
	padding-right: 20px;
}

.form.labels-hidden .form_block .form_label,
.form .form_block .form_label.label-hidden {
	display: none;
}

.form_error {
	background: #fff !important;
}

.form_message {
	display: block;
	clear: both;
	font-size: 11px;
	text-align: right;
}

	.form_message.form_error,
	.form_message.error {
		color: red;
	}
	
	.form_message.hidden {
		display: none;
	}

.form_break {
	height: 1px;
	background: #333;
	clear: both;
}

.form_group {
	position: relative;
	float: left;
	width: 100%;
	padding: 0px;
	margin: 0px 0px 20px 0px;
}

.form_group:first-child {
	margin-top: 20px;
}

	.form_group h3	{
		display: block;
		border-top: dashed 1px #ddd;
		border-bottom: dashed 1px #ddd;
		color: #000;
		font-size: 20px;
		font-weight: bold;
		margin: 0px 0px 20px 0px;
		padding: 13px 0px 13px 30px;
		font-family: 'Open Sans', sans-serif;
	}
	
.form_group_title.label-hidden {
	display: none;
}
	
.form_custom_block {
	clear: both;
	padding: 8px;
	margin: 8px 0px;
	font-size: 12px;
	line-height: 1.3em;
}

.form .tiny_input {
	width: 35px;
}

.form .short_input {
	width: 60px;
}

.form .medium_input {
	width: 120px;
}

.form .long_input {
	width: 250px;
}