form {
clear: both;
border: 1px solid #D8EEEE; 
background: #F9FFFF;
}
fieldset {
border: none;
padding: 0.5em 0.5em 0.5em 1.5em;
margin: 0;
}

form div {
position: relative;
margin: 0.5em 0 0.5em 0;
}

/* this ensures that all div class="container" blocks are cleared properly and not overlapping */
div.container:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

/* Hides from IE-mac \*/
* html div.container {height: 1%;}
/* End hide from IE-mac */


legend {
font-weight : normal;
margin : 0;
padding : .5em;
font-size: 100%;
text-transform: uppercase;
letter-spacing: 0.05em;
}

label, span.label {
float: left;
width: 15em;
text-align: right;
vertical-align: middle;
margin: 0.25em 0.5em 0.25em 0;
}

fieldset div input {
	width: 15em; /* Width for modern browsers */
	vertical-align: middle;
	padding: 0.1em;
	}
	
fieldset div input.radio {
	width: 1.125em; /* Width for modern browsers */
	height: 1.125em;
	padding : 1px;
	border: none;
}

fieldset div input.checkbox {
width: auto;
border: none;
}

fieldset hr {
background-color: #efefef;
color: #efefef;
width: 80%;
height: 1px;
border: 1px solid #efefef;
}

fieldset div.container {
margin: 0.25em 0;
}


fieldset div.container label {
display: block;
float: left;
width: 40em;
margin-left: 0.5em;
}


fieldset div select {
	font-family : Arial,Verdana,sans-serif;
	font-size : 100%;
	width: 140px; /* Width for modern browsers */
	border : 1px solid #900;
	height: auto;
	padding : 1px;
	}

input.button {
display: block;
margin: 0.5em;
text-align: center;
vertical-align: middle;
}

input.button {
margin-left: 157px;
width: 5em;
}

input.radio, input.checkbox {
height: 1em;
width: 1em;
}

label em {
position: absolute;
left: 370px;
top: 0;
width: 20em;
text-align:left;
font-style: normal;
margin: 0.25em 0;
}
* html label em {
left: 220px;
}