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

FORM

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

.wufoo{
font-family: Trebuchet MS;
font-size: 12px;
width:100%;
color: #3E3E3E;
}
.wufoo li{
width:100%;
list-style-type: none;
list-style-position: outside;
}
.wufoo ul{
margin-left:0px;
width: 479px;
}

*html .wufoo ul{
margin-left:0px;
width: 475px;
}

form ul{
margin:0;
padding:0;
list-style-type:none;
width:100%;
font-size:100%;
}
form li{
margin:0;
padding:0 1px 6px 3px;
position:relative;
}
form li:after, .buttons:after{
content:"."; 
display:block;
height:0; 
clear:both; 
visibility:hidden;
}

form li, .buttons{display: inline-block;}
* html form li, * html .buttons{height: 1%;}
form li, .buttons{display: block;}

* html form li div{
display:inline-block;
}
form li div, form li span{
margin:0 4px 0 0;
padding:0 0 0 0;
color:#444;
}
form li span{
float:left;
}

form li div.left{
display:inline;
float:left;
}

form li div.right{
display:inline;
float:right;
}

#name { width: 225px; }
#vorname { width: 225px; }
#e-mail { width: 225px; }
#telefon { width: 225px; }
#strasse { width: 350px; }
#nummer { width: 100px; }
#plz { width: 100px; }
#ort { width: 350px; }
#nachricht { width: 473px; }
#firma { width: 473px; }

/*
*html #nummer, *html #ort, *html #vorname {
  width: 170px;

}
*/
*html #firma, *html #nachricht {
  width: 465px;
}

form li div.left .medium, form li div.right .medium{
width:100%;
}

.clear{
clear:both;
}

form li div label, form li span label{
margin:0;
padding-top:3px;
clear:both;
font-size:9px;
line-height:9px;
color:#444;
display:block;
}
form li .datepicker{
float:left;
margin:.1em 5px 0 0;
padding:0;
width: 16px;
height: 16px;
cursor:pointer !important;
}

/* ----- INFO ----- */

.info{
display:inline-block; 
clear:both;
border-bottom:1px dotted #ccc;
margin:0 0 1em 0;
}
.info[class]{
display:block;
}
.info h2{
font-weight:normal;
font-size:160%;
margin:0 0 3px 0;
clear:left;
}
.info p{
font-size:95%;
line-height:135%;
margin:0 0 12px 0;
}

/* ----- SECTIONS ----- */

form hr{
display:none;
}
form li.section{
border-top:1px dotted #ccc;
margin-top:9px;
padding-top:13px;
padding-bottom:0px;
padding-left:0px;
width:100% !important;
}
form ul li.vorname{
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 2px 0;
}
form .section p{
font-size:85%;
margin:0 0 10px 0;
}

li.section h3 {
  /*padding-left: 4px;*/
  font-weight: bold;
  color: #818181;
  font-family: "Lucida Grande", "Trebuchet MS", Verdana, sans-serif;
}

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

input.btTxt{
padding:0 7px;
width:auto;
overflow:visible;
}
.buttons{
clear:both;
margin-top:10px;
}
.buttons input{
font-size:120%;
margin-right: 5px;
}

/* ----- FIELDS AND LABELS ----- */

label.desc{
line-height:150%;
padding:0 0 1px 0;
border:none;
color: #3E3E3E;;
display:block;
font-size:95%;
}
span.symbol{
font-size:115%;
line-height:130%;
}
input.text, input.file, textarea.textarea, select.select{
margin:0;
font-size:100%;
color:#333;
}
input.text, 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;
}
input.text, input.file{
padding:2px 0 2px 0;
}
input.currency{
text-align:right;
}

input.checkbox, input.radio{
display:block;
line-height:1.4em;
margin:6px 0 0 3px;
width:13px;
height:13px;
}
label.choice{
font-size:100%;
display:block;
line-height:1.4em;
margin:-1.55em 0 0 30px;
padding:4px 0 5px 0;
color:#444;
width:90%;
}
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;
}
*:vorname-child+html select.select[class]{
margin:1px 0;
}
.safari select.select{
margin-bottom:1px;
font-size:120% !important;
}

/* ----- 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%;
}
input.extralarge, select.extralarge, textarea.textarea{
height:150px;
width:100%;
}

textarea.small{
height:5.5em;
}
textarea.medium{
height:10em;
}
textarea.large{
height:20em;
}

/* ----- ERRORS ----- */

#errorLi{
width:99%;
background:#fff;
border:1px dotted red;
margin-bottom:1em;
text-align:center;
padding-top:4px;
padding-left:0px;
padding-right:0px;
}
#errorMsgLbl{
margin:7px 0 5px 0;
padding:0;
font-size:125%;
color:#DF0000;
}
#errorMsg{
margin:0 0 .8em 0;
color:#000;
font-size:100%;
}
#errorMsg strong{
background-color: #FFDFDF;
padding:2px 3px;
color:red;
}
form li.error{
background-color: #FFDFDF !important;
border-bottom:1px solid #EACBCC;
border-right:1px solid #EACBCC;
margin:3px 0;
}
form li.error label{
color:#DF0000 !important;
}
form p.error{
color:red;
font-weight:bold;
font-size:10px;
margin:-2px 0 5px 0;
clear:both;
}

/* ----- REQUIRED ----- */

form .req{
float:none;
color:red !important;
font-weight:bold;
}

/* ----- INSTRUCTIONS ----- */

form li.focused{
background-color:#EDEDED;
}
form .instruct{
position:absolute;
top:0;
left:100%;
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{
visibility:visible;
}

/* ----- LABEL LAYOUT ----- */

.noI .instruct{
display:none !important;
}
.noI form li{
width:96%;
}
.noI li.section{
padding-left:9px;
}


/* ----- LABEL LAYOUT ----- */

.leftLabel li, .rightLabel li, li.leftLabel, li.rightLabel{
padding-left:22%;
padding-top:9px;
width:55% !important;
}
.noI .leftLabel li, .noI .rightLabel li, .noI li.leftLabel, .noI li.rightLabel{
padding-left:30%;
width:66%;
}

.leftLabel label.desc, .rightLabel label.desc{
position:absolute;
left:0;
width:24%;
margin-left:9px;
margin-top:2px;
}
* html .leftLabel label.desc, * html .rightLabel label.desc{
width:34%;
}
.rightLabel label.desc{
text-align:right;
}

.noI .leftLabel label.desc, .noI .rightLabel label.desc{
width:27%;
}
* html .noI .leftLabel label.desc, * html .noI .rightLabel label.desc{
width:40%;
}

.leftLabel p.instruct, .rightLabel p.instruct{
width:26%;
margin-left:2px;
}
* html .leftLabel p.instruct, * html .rightLabel p.instruct{
width:37%;
}

/* ----- PASSWORD ----- */

ul.protected{
list-style:none;
margin:60px 0;
}
.protected li{
text-align:center;
padding:10px 0;
}
.protected h2{
font-weight:bold;
color:#DF0000;
margin:0 auto 10px auto;
}
.protected label{
font-size:120% !important;
padding-top:10px;
display:block;
}
.protected input.text{
font-size:170% !important;
width:380px;
text-align:center;
}
.protected .buttons{
margin:0;
}
.protected #saveForm{
font-size:120% !important;
}
