/* - - - - - - - - - - - - - - - - - - - - -

Title : Wufoo Form Framework
Author : Infinity Box Inc.
URL : http://wufoo.com

Last Updated : March 19, 2009

- - - - - - - - - - - - - - - - - - - - - */

.wufoo{
	font-family:"Lucida Grande", Tahoma, Arial, sans-serif;
}
.wufoo li{
	width:62%;
}
form ul{
	margin:0;
	padding:0;
	list-style-type:none;
	width:100%;
}
form li{
	display:block;
	margin:0;
	padding:6px 5px 9px 0px;
	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 span{
	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 ----- */

form li.likert{
	width:97% !important;
}
.likert table{
	margin:0 0 .9em 0;
	background:#fff;
	width:100%;
	border:1px solid #dedede;
	border-bottom:none;
}
.likert caption{
	text-align:left;
	color:#222;
	font-size:95%;
	line-height:135%;
	padding:5px 0 .5em 0;
}
.likert input{
	padding:0;
	margin:2px 0;
}
.likert label{
	font-size:10px;
	display:block;
	color:#565656;
}

/* ----- Top Row ----- */

.likert thead td, .likert thead th{
	background-color:#e6e6e6;
}

/* ----- Right Side ----- */

.likert td{
	border-left:1px solid #ccc;
	text-align:center;
	padding:4px 6px;
}
.likert thead td{
	font-size:85%;
	padding:10px 6px;
}

/* ----- Body ----- */

.likert th, .likert td{
	border-bottom:1px solid #dedede;
}
.likert tbody th{
	color:#222;
	font-size:95%;
	font-weight:bold;
	padding:8px 8px;
}

.likert tbody tr.alt td, .likert tbody tr.alt th{
	background-color:#f5f5f5;
}
.likert tbody tr:hover td, .likert tbody tr:hover th{
	background-color:#FFFFCF;
}

/* ----- Likert Classes ----- */

.col1 td{width:30%;} 
.col2 td{width:25%;}
.col3 td{width:18%;}
.col4 td{width:14.5%;}
.col5 td{width:12%;}
.col6 td, .col7 td{width:10%;}
.col8 td, .col9 td, .col10 td{width:6.5%;}
.col11{width:6%;}

.hideNumbers tbody label{
	display:none;
}

/* ----- LABELS ----- */

form li div label, form li span label{
	margin:0;
	padding-top:6px;
	clear:both;
	font-size:10px;
	line-height:10px;
	color:#444;
	display:block;
}
form li div span label{
	padding-bottom:12px;
}
label.desc{
	line-height:150%;
	margin:0;
	padding:0 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{
	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;
}

/* ----- 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/contact-form/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%;
}

/* ----- BUTTONS ----- */

input.btTxt{
	padding:5px 10px;;
	width:auto;
	overflow:visible;
	border: 1px #777777;
}
.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%;
}