/*
*************************************************
andCulture Form Styles - Custom
Version:	0.50 | September 18, 2009
Author:		andCulture, info@andCulture.com
Notes:		Wherever you see "REQUIRED" it means that the property and
			value must exist (for layout purposes). You may adjust it's
			value. All other properties are optional.
*************************************************
*/


/*-------------------------------------------
	SHARED STYLES (BLOCK & INLINE LABELS)
-------------------------------------------*/

/* LABELS */
.ac-form label,
.ac-form .label {
	margin-bottom: 2px;
	line-height: 18px;
}

/* REQUIRED FIELDS */
.ac-form div.required label,
.ac-form div.required .label {
	font-weight: bold;
}
.ac-form div.required input {
	padding: 2px;
	border-width: 2px;
}
.ac-form div.required textarea {
	border-width: 2px;
}
.ac-form div.required fieldset.switches label {
	font-weight: normal;
}

/* MULTIPLE FIELDS ON SAME LINE */
.ac-form fieldset.multi div {
	margin-right: 15px;
	margin-bottom: 0;
}

/* BUTTONS */
.ac-form div.buttons {
	font-size: 12px;
}

/* RADIO & CHECKBOX SETS */
fieldset.switches label {
	margin: 0 1em 0 0;
}
fieldset.switches input {
	margin: 0;
}


/*-------------------------------------------
	BLOCK LABELS
-------------------------------------------*/

/* TEXTAREAS */
.block-labels textarea {
	width: 430px;
	height: 70px;
}


/*-------------------------------------------
	INLINE LABELS
-------------------------------------------*/

/* LABELS */
.inline-labels label,
.inline-labels .label {
	margin-top: 6px;
	margin-right: 5px;
	width: 120px; /* REQUIRED */
}

/* LONG (OR SHORT) LABELS */
.inline-labels.auto { overflow: auto; }
.inline-labels.auto label,
.inline-labels.auto .label { margin-top: 2px; width: auto; }
.inline-labels.auto fieldset.switches { float: left; }
.inline-labels.auto fieldset.switches label { margin: 2px 0 0 1em; }

/* TEXTAREAS */
.inline-labels textarea {
	width: 200px;
}

/* NOTES */
.inline-labels p.note {
	margin-left: 125px; /* REQUIRED */
}

/* BUTTONS */
.inline-labels div.buttons {
	margin-left: 125px; /* REQUIRED */
}

/* MULTIPLE FIELDS ON SAME LINE */
.inline-labels div fieldset.multi label {
	width: auto;
}
.inline-labels div fieldset.multi select {
	margin-top: 5px;
}
.inline-labels div fieldset.multi div:first-child label {
	margin-top: 5px;
	margin-right: 5px;
	width: 120px; /* REQUIRED */
}


/*-------------------------------------------
	INLINE LABELS (RIGHT ALIGNED)
-------------------------------------------*/

/* REQUIRED FIELDS */
.inline-labels.right div label,
.inline-labels.right div .label {
	padding-right: 5px;
	width: 115px; /* REQUIRED */
}
.inline-labels.right div em {
	top: 3px;
	left: 115px; /* REQUIRED */
}

/* LINE OF TEXT WITH A CHECKBOX */
.inline-labels div label.line {
	margin-left: 125px; /* REQUIRED */
}

/* MULTIPLE FIELDS ON SAME LINE */
.inline-labels.right div fieldset.multi div:first-child label {
	width: 115px; /* REQUIRED */
}


/*-------------------------------------------
	FORM ELEMENTS
-------------------------------------------*/

.ac-form legend {
	margin: 0;
	padding: 6px 0 16px 0;
	width: 100%;
	border-top: 1px solid #999;
	font-size: 15px;
	font-family: Arial, sans-serif;
	font-weight: bold;
	width: 100%;
	display: block;
}
.ac-form input[type=text] {
	padding: 3px;
	width: 200px;
}
.ac-form input[required=required] {
	border: 1px solid red;
}
.ac-form .placeholder {
	color: #AAA;
}
.ac-form select {
	width: 200px;
}


/*-------------------------------------------
	STATUS MESSAGES
-------------------------------------------*/

.ac-form div.status {
	margin-bottom: 1em;
	padding: 8px 8px 8px 35px;
	border: 2px solid;
	clear: both;
	position: relative;
	overflow: auto;
}
.ac-form div.error {
	border-color: #e80e00;
	background-color: #f8d1ce;
	color: #e80e00;
}
.ac-form div.error a {
	color: #e80e00;
}
.ac-form div.notice {
	border-color: #e80e00;
	background-color: #FFF;
}
.ac-form div.success {
	border-color: #6ead1c;
	background-color: #fcfbf9;
}
.ac-form div.status p {
	margin: 0;
}
.ac-form div.status ul { margin: 1em 0; padding: 0 0 0 20px; }
.ac-form div.status span.attention { margin-left: -22px; display: block; float: left; color: #e80e00; font-family: "Arial Rounded MT Bold", Arial, sans-serif; font-size: 36px; line-height: 1; }


/*-------------------------------------------
	SITE SPECIFIC STYLING
-------------------------------------------*/

.ac-form > fieldset { padding-bottom: 25px; }
.ac-form fieldset > div { margin-bottom: 1em; }
.ac-form input#city			{ width: 140px; }
.ac-form select#state		{ width: auto; }
.ac-form input#zip			{ width: 50px; }
.ac-form input.datepicker	{ padding-right: 25px !important; width: 75px !important; background: url(../images/icons/calendar.gif) 100% 50% no-repeat; }
.ac-form input.datepicker.from	{ margin-right: 5px; }
.ac-form input.datepicker.to	{ margin-left: 5px; }

/* BUTTONS */
.ac-form button.add-another { width: 242px; height: 25px; background-position: -1240px 0; }
.ac-form button.send { width: 63px; background-position: -91px 0; }
.ac-form button.submit-application { width: 193px; background-position: -1037px 0; }
.ac-form button.subscribe { width: 113px; background-position: -164px 0; }

/* CAREER EXPLORATION APPLICATION */
.career-exploration input[type=text] { width: 275px; }
.career-exploration input#firstname,
.career-exploration input#lastname { width: 150px; }
.career-exploration select {
	width: auto;
}
.question-details {
	margin-top: 4px;
	padding: 4px 6px 0 6px;
	border-left: 3px solid #DDD;
	display: none;
}
.question-details label {
	font-size: 11px;
	font-weight: bold;
}
.question-details.auto label,
.question-details.auto .label { margin-top: 5px; }

.status.age,
.status.experience { margin-top: 10px; display: none; }

/* PRE-APPLY FORM (/careers/job-opportunities/pre-apply-online) */
.pre-apply input[type=text] { width: 260px; }
.pre-apply input#FirstName,
.pre-apply input#LastName { width: 130px; }
.pre-apply input#City { width: 200px; }
.pre-apply input#HomePhone,
.pre-apply input#AlternatePhone { width: 150px; }

/* NEWSLETTER SIGN-UP RIGHT SIDEBAR FORM */
div.newsletter p { margin: 0; padding: 0 3px 15px; }
div.newsletter fieldset { padding-bottom: 0; }
div.newsletter input { width: 210px; }
div.newsletter div.zip label { width: 210px; }
div.newsletter div.zip input { float: left; width: 90px; }
div.newsletter div.zip a { display: block; float: left; line-height: 12px; margin: -1px 0 0 1em; width: 100px; }
div.newsletter div.buttons { margin: 16px 0 6px; }
