form {
margin: 20px 0 40px 0;
}

form fieldset {
background: #EEE;
border: solid 1px #DDD;
padding: 10px 10px 10px 10px;
margin: 0 0 40px 0;
position: relative;
}

form legend {
border: solid 1px #DDD;
background-color:#FFF;
}

form legend span {
margin: -40px 0 0 -10px;
padding: 0 0 20px 0;
font-weight: normal;
font-size: 18px;
color: #FD8240;
position: absolute;
left: 0;
}

form label {
font-weight: bold;
display: block;
margin: 0 0 10px 0;
font-size: 12px;
}

form label.error {
clear: left;
color: red;
background:url("/images/icons/error.gif") no-repeat scroll 5px 5px #FFFFCC;
border:1px solid #DDDDDD;
color:#000000;
margin:10px 0;
min-height:40px;
padding:5px 5px 5px 50px;   
width:450px;  
}             
* html form label.error {
w\idth:497px;width:497px;
}

form span.extra {
font-style: italic;
padding: 0 0 10px 0;
display: block;
}

form input, form select, form textarea {
width: 497px;
border: solid 1px #CCC;
font-size: 14px;
color: #666;
padding: 5px;
}

               
form input {
}

form select {
}

form select optgroup {
border-top: solid 1px #666;
padding: 10px 0;
}

form textarea {
font-family: inherit;
height: 100px;
}

form p.buttons input {
width: auto;
}

form input.button {
	font-weight: bold;
	width: auto;
	cursor: pointer;
	background: #CCC;
	color: #333;
	border: solid 1px #333;
   -moz-border-radius: 2px;
   -webkit-border-radius: 2px;	
}

input.error{
background:#FFFFFF;
border:1px solid #FF0000;
padding:4px 4px 4px 4px;
color:#666666;
}

/*
label.error{
background:#FFFFFF;
border:1px solid #FF0000;
height:auto;
padding:4px 0 4px 4px;
}
*/

input.w20{
width:20px;
}

input.bbtext{
width:497px;
}


/* specific form elements that need styles */

/* search */
input#term {
position:relative;
top:-20px;
padding:0;
width:110px;
}

/*brochure*/
#download-brochure{
margin:0;
}
#lang{
width:160px;
}