/***************/
/* FORM STYLES */
/***************/

form {
	display: block;
	margin: 0;
	padding: 0;
}

fieldset {
	display: block;
	margin: 0;
	padding: 0;
}

legend { display: none; }


/* error styles */
.error {
	color: #e70000;
}
p.error {
	color: #e70000;
	font-size:11px;
}

label{
	font-weight:bold;
}

p#optional_stuff{
	font-size:10px;
	text-align:right;
	width:396px;
	padding:0;
	margin:0;
}
		
		
/* REG FORM B */
#reg_form_b {
	width: 458px;
	font-size: 10px;	/* reg form template psd uses 10px font if you are not getting good results with em */
	overflow: hidden;	/* clears all inner floats */
	font-family:Arial, Helvetica, sans-serif;
	font-weight:bold;
	padding-bottom:20px;
	}
	
	/* Apply section borders and padding */
	#reg_form_b #user_info #address_info {
		background: url(../images/bg_reg_section_address.gif) left bottom no-repeat;	/* making this a bg image gives creative some freedom with "hr" graphics */
		margin-bottom: 8px;
		padding-bottom: 6px;	/* add a little padding to push the border background image down */
	}
	/* Apply section borders and padding */
	#reg_form_b #user_info #additional_info,
	#reg_form_b #opt_in_section {
		background: url(../images/bg_reg_section.gif) left bottom no-repeat;	/* making this a bg image gives creative some freedom with "hr" graphics */
		margin-bottom: 8px;
		padding-bottom: 6px;	/* add a little padding to push the border background image down */
	}
	#reg_form_b #user_info #profile {
		margin-bottom: 2px;
		padding-bottom: 2px;	/* add a little padding to push the border background image down */
	}
	
	
	#reg_form_b .error img {
		display: none;	/* removes the error images for this form since they break floats if only one column has an error */
	}

	/* User Information */
	#reg_form_b #user_info {
				position:relative;
				padding-bottom:1px;
				background:transparent url(../images/bg_reg_section.gif) no-repeat scroll left bottom;
		}

		/* widths! (widths for special fields like state and zip
		            can be altered later in the stylesheet) */
		#reg_form_b #user_info div div {
			width: 212px;	/* width of "group" (larger to add spacing) */
			height:auto !important;
			height:33px;
			min-height:33px;
		}
		#reg_form_b #user_info input, #reg_form_b #user_info select {
			width: 196px;	/* width of inputs and selects */
		}
		/* row spacing */
		#reg_form_b #user_info div div {
			padding-bottom: 1px;
		}
		

		/* profile, address_info, additional_info */
		#reg_form_b #user_info div {
			width: 100%;
			overflow: hidden;	/* clear inner floats */
		}
		
		/* field group (IE: First Name div with label and input) */
		#reg_form_b #user_info div div {
			float: left;
		}
		
		#reg_form_b #user_info label { display: block; }
		#reg_form_b #user_info input, #reg_form_b #user_info select {
			font-size: 1em;
		}
		
		#reg_form_b #user_info #gender {
			float: left;
			padding-top: 3px;	/* added a little extra padding so this
								   looks a little nicer on one line */
			}
			#reg_form_b #user_info #gender label {
				width: 72px;
				float: left;
				padding-top: 2px;	/* pushes label down in line with options */
			}
			#reg_form_b #user_info #gender div {
				padding: 0;			/* needed so that row padding is not doubled */
				width: 130px;
				float: left;
				font-size: .9em;
			}
			#reg_form_b #user_info #gender input {
				/* overwrite input width, kill floats, and get rid of bottom margin (which is on the containing div) */
				width: auto;
				float: none;
				display: inline;
				margin: 0 0 0 3px;
				position: relative;
				top: 3px;
			}
			#reg_form_b #user_info #gender br { display: none;	/* kill line break */ }

		
		/* user_info section fixes */
		/* state / zip */
		#reg_form_b #user_info #state {
			width: 96px;
			}
			#reg_form_b #user_info #state select {
				width: 84px;
			}
		#reg_form_b #user_info #zip {
			width: 116px;
			}
			#reg_form_b #user_info #zip input {
				width: 100px;
			}
		/* Birth Date fields - Un-comment to make fit */
		#reg_form_b #user_info #age select {
			width: 64px;
			display: inline !important;
		} 
	
	/* Opt In Section */
	#reg_form_b #fs_optin {
	
		}
		/* These cannot be templated in their current state
		   You will have to add your field specific name to these styles as well */
		#reg_form_b #fs_optin #primary_opt_in,
		#reg_form_b #fs_optin #reminder_opt_in {
			   width: 100%;
			   overflow: hidden;	/* clears inner floats */
			   padding-bottom: 4px;	/* spacing between opt ins */
				height:auto !important;
				height:20px;
				min-height:20px;
			}
			/* checkbox float */
			#reg_form_b #fs_optin #primary_opt_in #primary_opt_in-option-group,
			#reg_form_b #fs_optin #reminder_opt_in #reminder_opt_in-option-group {
				width: 24px;
				float: left;
			}
			#reg_form_b #fs_optin #primary_opt_in label,
			#reg_form_b #fs_optin #reminder_opt_in label {
				width: 375px;
				float: left;
				padding-top:3px;
			}
			

		#reg_form_b #user_info div#optin fieldset#fs_optin div div {
			width:24px;	/* width of "group" (larger to add spacing) */
			height:auto !important;
			height:20px;
			min-height:20px;
		}
		#reg_form_b #user_info div#optin fieldset#fs_optin div div input, 
		#reg_form_b #user_info div#optin fieldset#fs_optin div div select {
			width: auto;	/* width of inputs and selects */
		}			
			
		#reg_form_b #user_info div#marketing{
			
		}	
		#reg_form_b #user_info div#marketing fieldset#fs_marketing {
			
		}

		#reg_form_b #user_info div#marketing fieldset#fs_marketing div  {
			width:100%	/* width of "group" (larger to add spacing) */
		}
		#reg_form_b #user_info div#marketing fieldset#fs_marketing div input, 
		#reg_form_b #user_info div#marketing fieldset#fs_marketing div select {
			font-size:10px;
			width:345px;
		}			
		#reg_form_b #user_info div#marketing fieldset#fs_marketing div label {
			width: auto;	/* width of inputs and selects */
		}			
			

	
	/* Image Security */
	#reg_form_b #captcha {
		float:left;
		overflow:hidden;
		padding-top:12px;
		width:310px;
		}
		#reg_form_b #captcha label {
			display: block;
			width: 135px;
			float: left;
			padding-bottom:2px;
		}
		#reg_form_b #captcha #captcha_image {
			width: 160px;
			height:50px;
			float: left;
			padding-right: 12px;
			}
			#reg_form_b #captcha #captcha_image img { 
				display: block;	/* overwrites disabling of error images */ 
				width: 160px;
				height:50px;
			}
		#reg_form_b #captcha input {
			width:132px;
			display: block;
			float: left;
			text-transform: uppercase;
			font-size: 1em;
			font-weight: bold;
		}
	
	/* Misc Items */
	#reg_form_b #misc_items {
		width: 172px;
		float: left;		
		padding: 24px 0 12px;
		}
		#reg_form_b #misc_items .information_copy {
			width: 85px;
			float: left;
			font-size: .9em;
			padding: 10px 0 0 0;
			}
			#reg_form_b #misc_items .information_copy p {
				padding: 0 0 .2em;
				margin: 0;
				font-weight: normal;
				line-height: 1em;
			}
		#reg_form_b #user_info div#eprize_secured {
			height:39px;
			left:337px;
			position:absolute;
			top:174px;
			width:85px;
		}
	
	/* Submit Button */
	#reg_form_b .submit {
		width: 132px;
		float: left;
		padding: 30px 0 0;
		}
		#reg_form_b .submit input { display: inline; }

p#restaurant_locator_copy{
	padding:0;
	width:350px;
}
	
			
/* taf form */
#taf_form {
	}
	#taf_form fieldset div {
		width: 254px;
		float: left;
		}
		#taf_form fieldset div input {
			display: block;
			width: 228px;
			margin-bottom: 8px;
		}
	#taf_form .submit {
		padding-top: 20px;
		}
		#taf_form .submit a, #taf_form .submit input {
			display: inline;
			margin-right: 114px;
		}