div#form
{
	width: 100%;
	margin-top: 14px;
}

div#form:after
{
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

span#requiredMsg
{
	margin: 1em;
	display: block;
	text-align: center;
	font-family: helvetica, arial;
	font-size: 12px;
	font-weight: bold;
	color: #ff0000;
}

span#requiredMsg.hidden
{
	display: none;
}			

th
{
	text-align: right;
	font-family: helvetica, arial;
	font-size: 12px;
	font-weight: normal;
	color: #000000;
}
td
{
	font-family: helvetica, arial;
	font-size: 12px;
	font-weight: bold;
	color: #000000;
}

div.col
{
	float: left;
	padding: 0;
	margin: 0 -3px 0 15px; /* -3px margin is an IE6 duplicate characters bug fix */
}

div.col table
{
	width: 100%;
	margin: 0 0 20px 0;
}

div.col td
{
	vertical-align: bottom;
}
		
		td.label label {
			text-align: right;
			vertical-align: bottom;
		}

		label.required {
			font-weight: bold;
		}

		.headercolor
		{
			margin-right:10px;
		}

div.contactInfo
{
	width: 614px;
	min-width: 614px;
	max-width: 614px;
}

			div.contactInfo .fullwidth {
				width: 220px;
				min-width: 220px;
				max-width: 220px;
			}
			
div.contactInfo label
{
	display: block;
	width: 365px;
	margin-right: 10px;
}
		
		/* RIGHT COLUMN */
		div.question {
			width: 310px;
			min-width: 310px;
			max-width: 310px;
		}
		
			div.question td {
				padding: 0 0 15px 0;
			}
					
			div.question .fullwidth {
				width: 310px;
				min-width: 310px;
				max-width: 310px;
			}
	
	
	
		/* special cases for certain fields */
		
		/* salutation should be shorter */
		select.salutation {
			width: 65px;
		}
		

/* opt in label text needs to flow */
tr.optin td
{
	padding-right: 19px;
	padding-top: 5px;
	padding-bottom: 8px;
	text-align: right;
}
tr.optin label
{
	display: inline;
}

.opt
{
	font-size: 12px;	
}

.submit
{
	padding-left: 35px;
}
