/*
Copyright (c) 2009, Webinsite All rights reserved.
version: 0.1.0
----------------------------------------------------------------------------------------------*/
/* Reset Form Elements for all browsers */
form, fieldset, legend, input, textarea, fieldset div, fieldset ol, fieldset li, fieldset p {
	margin:0;
	padding:0;
}
fieldset {
	border:0;
}
fieldset em, fieldset strong {
	font-style:normal;
	font-weight:normal;
}
fieldset ol, fieldset ol li {
	list-style:none;
}
input, textarea, select {
	font-family:inherit;
	font-size:inherit;
	font-weight:inherit;
}
input, textarea, select {
*font-size:100%;
}
legend {
	color:#000;
}
/* Form styles */
fieldset {
	text-align: left;
	position: relative;
	margin-bottom: -1em;
	padding-bottom: 1em;
	float: left;
	width: 100%;
	clear: left;
}
legend {
	font-size: 135.5%;
}
legend span {
	position: absolute;
	margin-top: .5em;
	left: 0;
	top: 0;
}
fieldset p {
	margin-top: 2.5em;
	margin-bottom: -2.5em;
	padding-bottom: .25em;
	border-bottom: 1px solid #ccc;
	width: 99.5%;
}
fieldset ol {
	/* padding-top: 3.5em;
 *padding-top: 3.25em;*/
 *zoom: 1;
}
fieldset li {
	padding: .5em 1% .5em .5%;
	margin-bottom: .25em;
	position: relative;
	float: left;
	clear: left;
	width: 98%;
}
fiedlset li.buttons {
	display: block;
	position: inherit;
	margin-right: 0;
	float: none;
	clear: both;
	width: auto;
}
fieldset label {
	font-size: 100%;
	display: block;
	font-weight: bold;
	padding: 0 0 0.5em 0;
	margin: 0;
}
fieldset label em {
	display: inline;
	text-transform: lowercase;
	font-size: 85%;
	font-style: normal;
	font-weight: normal;
}
input.textfield, textarea {
	border-top:1px solid #7c7c7c;
	border-left:1px solid #c3c3c3;
	border-right:1px solid #c3c3c3;
	border-bottom:1px solid #ddd;
}
fieldset li p {
	font-size: 85%;
	margin: .4em 0 0 0;
	padding: 0;
	border-style: none;
}
input.textfield, textarea.text, fieldset select {
	font-size: 100%;
	padding: .2em 0;
}
input.textfield, fieldset select {
	width: 50%;
}
input.small, select.small {
	width: 25%;
}
input.large, textarea, select.large {
	width: 100%;
}
textarea {
	height:10em;
}
textarea.small {
	height:5.5em;
}
textarea.large {
	height:20em;
}/* Grouped elements */
fieldset fieldset {
	margin: 0 0 -.5em 0;
	padding: 0;
}
fieldset fieldset legend {
	font-size: 100%;
	font-weight: bold;
	padding: 0 0 .5em 0;
	margin: 0;
	*margin-left: -.45em;
}
fieldset fieldset ol {
	padding-top: 0;
	*padding-bottom: .5em;
}
fieldset fieldset li {
	padding: 0;
	margin-bottom: .75em;
	position: relative;
	width: 100%;
}
fieldset fieldset label, fieldset.leftlabels fieldset label {
	font-size: 85%;
	float: none;
	margin-right: auto;
	font-weight: normal;
	padding: .2em 0 0;
	margin: 0;
	width: auto
}
.check-radio label {
	font-size: 85%;
	font-weight: normal;
	margin-left: 2em;
	*margin-top: .7em;
	padding-bottom: 0;
	width: auto;
}
.check-radio input {
	position: absolute;
	margin-right: 0;
	padding: 0;
	margin-left: .2em;
	*margin-left: 0;
}
fieldset fieldset .check-radio label
{
	margin-top: 0;
}
/* 2 column style */
fieldset .columns-2 li {
	float: left;
	margin-right: 1%;
	clear: none;
	width: 49%;
	_width: 48%;
}
fieldset .columns-2 input.textfield {
	width: 100%;
}
fieldset .columns-2 li:last-child {
	width: 50%;
	margin-right: 0;
	float: right;
}
.columns-2 li.buttons {
	position: inherit;
	margin-right: 0;
	float: none;
	clear: both;
	width: auto;
}/* Labels on the left/ left and text align right;*/
.leftlabels label, .rightlabels label {
	float: left;
	width: 24%;
	margin: 0 1% 0 0;
	padding-top: 0.2em;
}
.leftlabels li.buttons, .rightlabels li.buttons {
	padding-left: 25%;
	width:auto;
}
.leftlabels li.check-radio, .rightlabels li.check-radio {
	padding-left: 25%;
	padding-right: 0;
	width: 75%;
	margin-right: 0;
}
.leftlabels .check-radio input {
	position: relative;
	float: left;
}
.leftlabels .check-radio label {
	float: none;
}
.leftlabels fieldset .check-radio, .rightlabels fieldset .check-radio {
	padding-left: 0;
	width: auto;
}
.rightlabels label {
	text-align: right;
}
.leftlabels input.textfield, .leftlabels select, .rightlabels input.textfield, .rightlabels select {
	width: 37.5%;
}
.leftlabels fieldset input.textfield, .leftlabels fieldset select, .rightlabels fieldset input.textfield, .rightlabels fieldset select {
	width: 50%;
}
.leftlabels li .small, .rightlabels li .small {
	width: 18.75%;
}
.leftlabels li .large, .rightlabels li .large, .leftlabels li textarea, .rightlabels li textarea {
	width: 74.5%;
}
.leftlabels .desc li.buttons, .rightlabels .desc li.buttons {
	padding-left: 19.75%;
}
.leftlabels fieldset, .rightlabels fieldset {
	margin-bottom: -2.25em;
	border-style: none;
	background: none;
}
.leftlabels fieldset ol, .rightlabels fieldset ol {
	top: -1.75em;
	position: relative;
	margin: 0 0 0 25%;
	padding: 0;
}
.leftlabels fieldset legend, .rightlabels fieldset legend {
	width:24%;
}
.leftlabels fieldset legend span, .rightlabels fieldset legend span {
	display: block;
	position: relative;
	padding: .2em 0 .5em;
	margin: 0;
}/* Special styles
----------------------------------------------------------------------------------- *//* Address style */
fieldset fieldset.address li {
	width: 100%;
	clear: left;
}
fieldset fieldset.address .city, fieldset fieldset.address .state {
	width: 33%;
	_width: 32%;
	padding-right: 1%;
	margin-right: 0;
	clear: none;
}
fieldset fieldset.address .postcode {
	float: right;
	margin-right: 0;
	width: 32%;
	padding-right: 0;
	clear: none;
}
fieldset fieldset.address input {
	width: 100%;
}/* Fancy styles
----------------------------------------------------------------------------*//* Required styles */
.requiredBlock em {
	display: block;
	text-transform: uppercase;
}
.requiredStar em {
	display: inline;
}
.requiredStar em span {
	position: absolute;
	left: -5000px;
	width: 4000px;
}
.requiredStar em:before {
	content: "*";
	font-size: 116%;
}/* Description box */
.desc li {
	width: 78.5%;
}
.desc li p {
	margin: 0;
	display: block;
	width: 22.5%;
	padding: .5em .75%;
	position: absolute;
	right: -25%;
	background-color: red;
	top: 0;
}/* Errors */
fieldset li.error {
	background-color: #FCC;
	border: 1px solid #900;
}
li.error strong {
	color: #900;
	font-weight: bold;
}
