@charset "utf-8";

/* Global Form Defaults -------------------------------------------- */

fieldset {
	clear:both;
	display:block;
	float:none;
}

label {
	clear:both;
	float:left;
	margin:0 15px 10px 0;
	padding:2px;
	width:auto;
}

input.text, input.textarea, select {
	border:1px solid #b9b9b9;
	float:left;
	font-size:1em;
	clear:right;
	height:15px;
	padding:2px;
	width:155px;
}

option {
	padding-right:25px;
	width:auto;
}

select {
	height:19px;
	width:161px;
}

select#size {
	position:relative;
	z-index:1;
}

/* General Form Styles -------------------------------------------- */

span.required {
	color:#9c1402;
	display: inline;
	float: none;
	margin: 0;
}

fieldset.narrow {
	clear:none;
	float:left;
	margin-bottom:15px;
	width:309px;
}

div.hint {
	clear:both;
	color:#9c1402;
	font-size:.8em;
	font-style:italic;
	margin-bottom:10px;
	padding-left:8px;
}

input.jumper {
	margin-right:7px;
	width:29px;
}

input.short, select.short {
	float:none;
	margin:0 4px 12px 0;
	width:65px;
}

fieldset span {
	display:block;
	float:left;
	margin:4px 10px 0 0;
}

input.radio, input.checkbox {
	border:none;
	float:left;
	margin-top:3px;
	*margin-top:-1px;
	width:18px;
}

input.btn {
	border:none;
	clear:both;
	display:block;
	width:auto;
	height:auto;
}

fieldset span a {
	clear:both;
	display:block;
	margin-bottom:15px;
}

/* Error State Form Styles  -------------------------------------------- */
.validation-failed {
	background:#EAA8A8 !important;
}
.adviceContainer {
	border: 2px solid #D24646;
	color: #D24646;
	font-weight:bold;
	margin: 5px auto;
	padding: 10px 20px;
	width: 80%;
}

.adviceContainer.franchising {
	float:left;
	width:240px;
}

/* Page-Specific Form Styles  -------------------------------------------- */

select#locations {
	padding-right:none;
	width:auto;
}

/* Reservations */
#resForm fieldset.narrow label {
	width:93px;
}

#resForm input.btn {
	float:right;
	margin-top:-39px;
}

#resForm input#date {
	margin-right:5px;
	width:128px;
	*width:125px;
}

#resForm fieldset.narrow div.remember label {
	float:right;
	font-size:0.9em;
	font-weight:bold;
	margin-right:98px;
	margin-top:-4px;
	width:auto;
}

input.remember {
	margin-top:1px;
	*margin-top:0;
}

#resForm img.submitBtn {
	margin-left: 35px;
	margin-top: 25px;
}

/* Sign In */

#signIn label {
	font-weight:bold;
	margin-bottom:14px;
	width:59px;
}

#signIn input.text {
	width:150px;
}

#signIn input.btn {
	display:block;
	margin-left:77px;
}


/* Employment */
.employment label {
	text-align: right;
	width: 130px;
}

.employment input.text {
	padding-left: 6px;
	width: 149px;
}

.employment select.largeDrop {
	width: 225px;
}

.employment select.rangeDrop {
	width: 50px;
}

.employment select.recordsDrop {
	width: 58px;
}

.employment input.stateTxt {
	letter-spacing: 0.04em;
	width: 24px;
}

.employment input.postalCodeTxt {
	clear: none;
	letter-spacing: 0.04em;
	width: 49px;
}

.employment input.checkbox,
.employment input.radio,
.signUp input.radio {
	clear: none;
	margin-left: 12px;
}

.employment label.rangeTxt {
	clear: none;
	float: left;
	margin-left: 20px;
	margin-right: 5px;
	width: auto;
}

.employment label.rightAlign,
.signUp label.rightAlign {
	clear: none;
	margin: 0 0 0 6px;
	padding: 0;
	text-align: left;
	width: auto;
}

.employment input.btn {
	clear: none;
	float: left;
	display: inline-block;
	margin: 20px 15px 0 0;
}

.employment div.formButtons {
	*margin-left: 150px;
}

.employment input.btn {
	_height: 35px;
	_width: 107px;
}


/* Registration & Real Estate */
.signUp label {
	clear: left;
	width: 102px;
}

.signUp .phoneNum span {
	margin: 0 3px;
}

.signUp .phoneNum input.text {
	clear: none;
	float: left;
	width: 35px;
}

.signUp .phoneNum input.text.ext {
	width: 45px;
}

.signUp select.monthDrop {
	width: 80px;
}

.signUp select.dayDrop {
	margin-left: 10px;
	width: 70px;
}

.signUp .additionalInfo p {
	float: left;
}

.signUp .submitBtn {
	float: right;
	margin-right: 35px;
	text-align: right;
}

.signUp .secLine {
	margin-bottom: 12px;
	margin-top: 0;
}

/* Private Dining Planner */
.private label {
	width:103px;
}

.private textarea {
	border:1px solid #b9b9b9;
	float:left;
	height:61px;
	width:215px;
}

.private fieldset.narrow {
	width:350px;
}

.private .btn {
	margin-left:121px;
	padding-top:15px;
}

/* Guest Comments */
.guest label {
	clear: left;
}

.guest textarea {
	border:1px solid #b9b9b9;
	float:left;
	height:90px;
	width:410px;
}

.guest .visitInfo input.btn {
	margin: 20px auto;
}

.guest .customerInfo,
.guest .visitInfo {
	margin-top: 40px;
}

.guest .customerInfo label {
	margin-right: 6px;
	width: 90px;
}

.guest .customerInfo label.twoFields {
	clear: none;
	margin-left: 10px;
}

.guest .visitInfo label.twoFields {
	clear: none;
	margin-left: 15px;
	margin-right: 5px;
	width: 146px;
}

.guest .customerInfo label.stateLabel {
	padding-right: 11px;
	text-align: right;
	width: 40px;
}

.guest .customerInfo label.phoneLabel {
	padding-right: 11px;
	text-align: right;
	width: 95px;
}

.guest .customerInfo input.longTxt {
	width: 425px;
}

.guest .customerInfo input.cityTxt {
	width: 195px;
}

.guest .customerInfo input.zipTxt {
	width: 140px;
}

.guest .visitInfo label {
	margin-right: 5px;
	width: 110px;
}

.guest .visitInfo label.locationLabel {
	width: 158px;
}

.guest .visitInfo .locationSelect {
	width: 230px;
}

.guest .visitInfo label.commentType {
	width: 165px;
}

.guest .visitInfo a {
	clear: right;
	float: left;
	margin-left: 8px;
}

.guest .visitInfo input.text {
	width: 115px;
}

.guest .visitInfo select {
	width: 122px;
}

.guest .visitInfo select.reserveType {
	width: 66px;
}

.guest .visitInfo input.visitDateTxt {
	width: 85px;
}

.guest .visitInfo label.rightAlign,
.guest .visitInfo label.rightAlign2 {
	clear: none;
	margin: 0 0 0 6px;
	padding: 0;
	text-align: left;
	width: 30px;
}

.guest .visitInfo label.rightAlign2 {
	margin-right: 13px;
}