.newsletter ul li{
	width:95%;
}
#form ul{
	margin:0;
	padding:0;
	list-style-type:none;
	width:100%;
}
#form li{
	display:block;
	margin:0;
	padding:6px 5px 9px 9px;
	clear:both;
}
#form li:after, #form li div:after{
	content:"."; 
	display:block;
	height:0; 
	clear:both; 
	visibility:hidden;
}
* html #form li{height: 1%;}
* html #form li div{display:inline-block;}
*+html #form li div{display:inline-block;}

#form li div, #form li span{
	margin:0 .3em 0 0;
	padding:0;
	color:#444;
}

#form li.phone span.tel{
	float:left;
}

.center, 
#form li span.center input.text, #form li span.center label,
#form li.name input.text, #form li.name span label,
#form li.date input.text, #form li.date span label, 
#form li.phone input.text, #form li.phone span label,
#form li.time input.text, #form li.time span label{
	text-align:center;
}
#form li.time select.select{
	margin-left:5px;
}

#form li div.col span{
	display:block;
	width:100%;
	float:left;
	padding:0;
}
li.twoColumns div.col span{
	width:48%;
	margin:0 5px 0 0;
}
li.threeColumns div.col span{
	width:30%;
	margin:0 5px 0 0;
}
li.notStacked div.col span{
	width:auto;
	margin:0 7px 0 0;
}


#form li.complex{
	padding-bottom:0;
}
#form li div span.left, #form li div span.right{
	margin:0;
	width:47%;
}
#form li div span.full input, 
#form li div span.full select, 
#form li div span.left input, 
#form li div span.right input,
#form li div span.left select,
#form li div span.right select{
	width:100%;
}

.left{
	float:left;
}
.right{
	float:right;
}
.clear{
	clear:both !important;
}

/* ----- INFO ----- */

.info{
	display:inline-block; 
	clear:both;
	border-bottom:1px dotted #ccc;
	margin:0 0 12px 0;
}
.info[class]{
	display:block;
}
.info h2{
	font-weight:normal;
	font-size:160%;
	margin:0 0 .2em 0;
	clear:left;
}
.info div{
	font-size:95%;
	line-height:135%;
	margin:0 0 1.1em 0;
	color:#555;
}

/* ----- SECTIONS ----- */

#form li.section{
	border-top:1px dotted #ccc;
	padding-top:.9em;
	padding-bottom:0px;
	padding-left:9px;
	width:97% !important;
	position:static;
}
#form ul li.first{
	border-top:none !important;
	margin-top:0px !important;
	padding-top:0px !important;
}
#form .section h3{
	font-weight:normal;
	font-size:110%;
	line-height:135%;
	margin:0 0 .2em 0;
}
#form .section div{
	display:block;
	font-size:85%;
	margin:0 0 1.2em 0;
	padding:0;
}

/* ----- LIKERT SCALE ----- */



/* ----- LABELS ----- */

#form li div label, #form li span label{
	margin:0;
	padding-top:6px;
	clear:both;
	font-size:.9em;
	font-weight:bold;
	line-height:10px;
	color:#444;
	display:block;
}
#form li div span label{
	padding-bottom:12px;
}
label.desc{
	line-height:150%;
	margin:0;
	padding:1px 0 3px 0;
	border:none;
	color:#222;
	display:block;
	font-size:95%;
	font-weight:bold;
}
label.choice{
	font-size:100%;
	display:block;
	line-height:1.5em;
	margin:-1.65em 0 0 25px;
	padding:.44em 0 .5em 0;
	color:#222;
	width:88%;
}

#form.rightLabel div.col{
	margin-top:-3px;
}

span.symbol{
	float:left;
	font-size:120%;
	line-height:135%;
}
#form li .datepicker{
	float:left;
	margin:.19em 5px 0 0;
	padding:0;
	width: 16px;
	height: 16px;
	cursor:pointer !important;
}

.newsletter ul li.complex:hover,.newsletter ul li.complex:focus,.newsletter ul li.complex:active,
.login li.complex:hover,.login li.complex:focus,.login li.complex:active{background:#9fd0e2}

/* ----- MIN/MAX COUNT ----- */

#form li div label var{
	font-weight:bold;
	font-style:normal;
}
#form li div label .currently{
	display:none;
}

/* ----- FIELDS ----- */

input.text, input.file, textarea.textarea, select.select{
	margin:0;
	font-size:100%;
	color:#333;
}
input.text, input.file, textarea.textarea, .firefox select.select{
	border-top:1px solid #7c7c7c;
	border-left:1px solid #c3c3c3;
	border-right:1px solid #c3c3c3;
	border-bottom:1px solid #ddd;
	background:#fff url(/images/fieldbg.gif) repeat-x top;
}
body:nth-of-type(1) input.file{ /* Webkit */
	border:none;
	background:none;
}
input.text, input.file{
	padding:2px 0 2px 0;
}
input.file{
	margin-bottom:10px;
}
input.checkbox, input.radio{
	display:block;
	line-height:1.5em;
	margin:.6em 0 0 3px;
	width:13px;
	height:13px;
}
input.other{
	margin:0 0 8px 25px;
}

textarea.textarea{
	font-family:"Lucida Grande", Tahoma, Arial, sans-serif;
}

select.select{
	font-family:"Lucida Grande", Tahoma, Arial, sans-serif;
	margin:1px 0;
	padding:1px 0 0 0;
}
select.select[class]{
	margin:0;
	padding:1px 0 1px 0;
}
*+html select.select[class]{
	margin:1px 0;
}
body:nth-of-type(1) select.select{ /* Webkit */
	margin-bottom:1px;
	font-size:120% !important;
}

/* ----- BUTTONS ----- */

input.btTxt{
	padding:0 7px;
	width:auto;
	overflow:visible;
}
.buttons{
	clear:both;
	margin-top:10px;
}
.buttons input{
	font-size:120%;
	margin-right: 5px;
}

/* ----- TEXT DIRECTION ----- */

.rtl .info h2, .rtl .info div, .rtl label.desc, .rtl label.choice, 
.rtl div label, .rtl span label, .rtl input.text, 
.rtl textarea.textarea, .rtl select.select, .rtl p.instruct, 
.rtl .section h3, .rtl .section div, .rtl input.btTxt{
	direction:rtl;
}

/* ----- SIZES ----- */

.third{
	width:32% !important;
}
.half{
	width:48% !important;
}
.full{
	width:100% !important;
}

input.small, select.small{
	width:25%;
}
input.medium, select.medium{
	width:50%;
}
input.large, select.large, textarea.textarea{
	width:100%;
}

textarea.small{
	height:5.5em;
}
textarea.medium{
	height:10em;
}
textarea.large{
	height:20em;
}

/* ----- ERRORS ----- */

#errorLi{
	width:99%;
	margin:0 auto;
	background:#fff !important;
	border:1px solid red;
	margin-bottom:1em;
	text-align:center;
	padding:1em 0 1em 0;
	-webkit-border-radius:20px;
	-moz-border-radius:20px;
}
#errorMsgLbl{
	margin:0 0 5px 0;
	padding:0;
	font-size:125%;
	color:#DF0000 !important;
}
#errorMsg{
	margin:0 0 2px 0;
	color:#000 !important;
	font-size:100%;
}
#errorMsg strong{
	padding:2px 3px;
	background-color: #FFDFDF !important;
	color:red !important;
}
#form li.error{
	display:block !important;
	background-color: #FFDFDF !important;
	margin-bottom:3px !important;
}
#form li.error label, #form li.error span.symbol{
	color:#DF0000 !important;
}
#form p.error{
	display:none;
	margin:0 !important;
	padding:7px 0 0 0 !important;
	color:#DF0000 !important;
	font-weight:bold;
	font-size:10px;
	line-height:10px !important;
	clear:both;
}
#form li.complex p.error{
	padding:0 0 9px 0 !important;
}
#form li.error p.error{
	display:block;
}
.leftLabel p.error, .rightLabel p.error{
	margin-left:30%;
	padding-left:15px;
}
.noI .leftLabel p.error, .noI .rightLabel p.error{
	margin-left:35%;
	padding-left:15px;
}

/* ----- REQUIRED ----- */

#form span.req{
	display:inline;
	float:none;
	color:red !important;
	font-weight:bold;
	margin:0;
	padding:0;
}

/* ----- INSTRUCTIONS ----- */

#form li.focused{
	background-color:#fff7c0;
}
#form li.focused, #form li:hover{
	position:relative; /* Makes Instructs z-index stay on top in IE. */
}
#form .instruct{
	position:absolute;
	top:0;
	left:0;
	z-index:1000;
	width:42%;
	margin:0 0 0 8px;
	padding:8px 10px 9px 10px;
	border:1px solid #e6e6e6;
	background:#f5f5f5;
	line-height:130%;
	font-size:80%;
	color:#444;
	visibility:hidden;
}
#form .instruct small{
	font-size:105%;
}
#form li.focused .instruct, #form li:hover .instruct{
	left:100%; /* Prevent scrollbars for IE Instruct fix */
	visibility:visible;
}

/* ----- ALT INSTRUCTIONS ----- */

.altInstruct .instruct, li.leftHalf .instruct, li.rightHalf .instruct{
	visibility:visible;
	position:static;
	margin:0;
	padding:6px 0 0 0;
	width:100%;
	clear:left;
	background:none;
	border:none;
	font-size:10px;
}
.altInstruct p.complex, li.leftHalf p.complex, li.rightHalf p.complex{
	padding:0 0 9px 0;
}

/* ----- LABEL LAYOUT ----- */

.leftLabel li, .rightLabel li{
	width:74% !important;
	padding-top:9px;
}


.leftLabel label.desc, .rightLabel label.desc{
	float:left;
	width:29%;
	margin:0px 15px 0 0;
}
.rightLabel label.desc{
	text-align:right;
}
.leftLabel li div.col, .rightLabel li div.col,
.leftLabel li.complex div, .rightLabel li.complex div{
	float:left;
}


.leftLabel .small, .rightLabel .small{
	width:17%;
}
.leftLabel .medium, .rightLabel .medium{
	width:35%;
}
.leftLabel .large, .leftLabel textarea.textarea,
.rightLabel .large, .rightLabel textarea.textarea,
.leftLabel li div.col, .rightLabel li div.col,
.leftLabel li.complex div, .rightLabel li.complex div{
	width:64%;
}


* html .leftLabel .small, * html .rightLabel .small{
	width:23%;
}
* html .leftLabel .medium, * html .rightLabel .medium{
	width:55%;
}
* html .leftLabel .large, * html .leftLabel textarea.textarea,
* html .rightLabel .large, * html .rightLabel textarea.textarea{
	width:97%;
}


.leftLabel p.instruct, .rightLabel p.instruct{
	width:27%;
	margin-left:5px;
}
.leftLabel .altInstruct .instruct, .rightLabel .altInstruct .instruct{
	margin-left:29% !important;
	padding-left:15px;
	width:65%;
}


.leftLabel .buttons, .rightLabel .buttons{
	margin-left:15px;
}
* html .leftLabel .buttons, * html .rightLabel .buttons{
	margin-left:4px;
}
*+html .leftLabel .buttons, *+html .rightLabel .buttons{
	margin-left:7px;
}
.leftLabel .buttons .submit, .rightLabel .buttons .submit{
	margin-left:29%;
}
* html .leftLabel .buttons .submit, * html .rightLabel .buttons .submit{
	margin-left:22%;
}

/* ----- NO INSTRUCTIONS ----- */

.noI .instruct{
	display:none !important;
}
.noI #form li, .noI #form li.buttons, .altInstruct #form li, .altInstruct #form li.buttons{
	width:97% !important;
}
.noI #form li.section, .altInstruct #form li.section{
	padding-left:9px !important;
}

/* ----- NO INSTRUCTIONS LABEL LAYOUT ----- */

.noI .leftLabel label.desc, .noI .rightLabel label.desc{
	width:34%;
}
.noI .leftLabel .large, .noI .leftLabel textarea.textarea,
.noI .rightLabel .large, .noI .rightLabel textarea.textarea,
.noI .leftLabel li div.col, .noI .rightLabel li div.col,
.noI .leftLabel li.complex div, .noI .rightLabel li.complex div{
	width:60%;
}

.noI .leftLabel .buttons input, .noI .rightLabel .buttons input{
	margin-left:34%;
}

/* ----- FIELD FLOATING ----- */

#form li.leftHalf, #form li.rightHalf{
	width:46% !important;
}
li.leftHalf{
	clear:left;
	float:left;
}
li.rightHalf{
	clear:none;
	float:right;
}
li.leftHalf .medium, li.rightHalf .medium,
li.leftHalf .small, li.rightHalf .small{
	width:100%;
}

fieldset {border:1px solid #cfcfcf;padding:40px}

#form {width:50%;}
