/* =GENERAL
----------------------------------------------- */

/* GENERAL: =Reset */

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, button {
	font-family: Helvetica, Arial, sans-serif;
	margin: 0;
	padding: 0;
}

body {
	font-size: 62.5%;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

fieldset, img {
	border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
	font-style: normal;
	font-weight: normal;
}

ol, ul {
	list-style: none;
}

caption, th {
	text-align: left;
}

h1, h2, h3, h4, h5, h6, textarea, button {
	font-size: 100%;
	font-weight: normal;
}

q:before, q:after {
	content: '';
}

abbr, acronym {
	border: 0;
}

button::-moz-focus-inner{
	padding:0;
	border:none
}

/* =TYPOGRAPHY
----------------------------------------------- */

/* TYPOGRAPHY: =Headings */

h1 {
	color: #464646;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 1em;
	margin-bottom: 1em;
	text-transform: uppercase;
}

h2 {
	color: #ffffff;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 1em;
	margin-bottom: 1em;
	text-transform: uppercase;
}

	h2 a {
		color: #ffffff;
	}

h3 {
	color: #c0e8d9;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 1em;
	margin-bottom: 1em;
}

	h3 a {
		color: #c0e8d9;
	}

h4 {
	color: #ffffff;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 1em;
	margin-bottom: 1em;
}

	h4 a {
		color: #ffffff;
	}

/* TYPOGRAPHY: =Paragraphs */

p {
	color: #ffffff;
	font-size: 1.2em;
	line-height: 1.4em;
	margin-bottom: 1.4em;
}
	
/* TYPOGRAPHY: =Links */

a {
	color: #464646;
	font-weight: bold;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}
	
/* TYPOGRAPHY: =Variants */

strong {
	font-weight: bold;
}

em {
	font-style: italic;
}

/* =STRUCTURE
----------------------------------------------- */

/* STRUCTURE: =Background */

html {
	background: #ae1d23;
}

body {
	background: url(../images/bg-html.gif) repeat-x top left #58a7a8;
}

/* STRUCTURE: =Layout */

#pageSuperContainer {
	background: url(../images/bg-body.gif) repeat-x bottom left;
	height: 100%;
	width: 100%;
}

#pageContainer {
	margin: 0 auto;
	width: 940px;
}

#pageHeader {
	background: url(../images/bg-header.gif) no-repeat bottom;
	height: 340px;
	margin: 0 auto;
	position: relative;
	width: 940px;
	z-index: 9988;
}

#pageBody {
	background: url(../images/bg-page_body.gif) repeat-y top left;
	float: left;
	margin-top: -173px;
	padding: 200px 0 32px 0;
	position: relative;
	width: 940px;
}

	#bodyContent {
		margin-left: 270px;
		min-height: 250px;
		_height: 250px;
		padding: 0 20px 0 0;
		position: relative;
		width: 650px;
	}
	
	#bodySidebar {
		background: url(../images/misc-hr_vertical.gif) repeat-y top right;
		display: inline;
		float: left;
		left: 0;
		padding: 0 18px;
		position: absolute;
		width: 208px;
		z-index: 9987;
	}
	
#pageFooter {
	background: url(../images/bg-footer.gif) no-repeat 12px 172px;
	clear: both;
	height: 506px;
	margin: 0 auto;
	position: relative;
	width: 940px;
}

/* =HEADER
----------------------------------------------- */

/* HEADER: =Logo */

#headerTitle {
	left: 6px;
	position: absolute;
	top: 28px;
}

	#headerTitle p {
		margin: 0;
	}
	
		#headerTitle p a {
			background: url(../images/logo-medium.png) no-repeat center;
			display: block;
			height: 163px;
			overflow: hidden;
			text-indent: -5000px;
			width: 252px;
		}

/* HEADER: =Navigation */

#headerNavigation li {
	position: absolute;
}

	#headerNavigation li a {
		display: block;
		overflow: hidden;
		text-indent: -5000px;
	}
	
	#headerNavigation li.menus {
		left: 286px;
		top: 60px;
	}
	
		#headerNavigation li.menus a {
			background: url(../images/nav-menus.gif) no-repeat;
			height: 14px;
			width: 74px;
		}
		
		#headerNavigation li.menus .overlay {
			background-position: bottom;
			margin-top: -14px;
		}
		
	#headerNavigation li.calendar {
		left: 394px;
		top: 55px;
	}
	
		#headerNavigation li.calendar a {
			background: url(../images/nav-calendar.gif) no-repeat;
			height: 19px;
			width: 83px;
		}
		
		#headerNavigation li.calendar .overlay {
			background-position: bottom;
			margin-top: -19px;
		}
		
	#headerNavigation li.about {
		left: 503px;
		top: 59px;
	}
	
		#headerNavigation li.about a {
			background: url(../images/nav-our_story.gif) no-repeat;
			height: 15px;
			width: 97px;
		}
		
		#headerNavigation li.about .overlay {
			background-position: bottom;
			margin-top: -15px;
		}
		
	#headerNavigation li.contact {
		left: 628px;
		top: 54px;
	}
	
		#headerNavigation li.contact a {
			background: url(../images/nav-contact_us.gif) no-repeat;
			height: 20px;
			width: 96px;
		}
		
		#headerNavigation li.contact .overlay {
			background-position: bottom;
			margin-top: -20px;
		}
		
	#headerNavigation li.specials {
		right: -20px;
		top: 57px;
	}
	
		#headerNavigation li.specials a {
			background: url(../images/nav-daily_specials.png) no-repeat;
			height: 202px;
			width: 214px;
		}
		
	#headerNavigation li.directions {
		right: 27px;
		top: 247px;
	}
	
		#headerNavigation li.directions a {
			background: url(../images/nav-hours_and_directions.png) no-repeat;
			height: 69px;
			width: 147px;
		}
		
		#headerNavigation li a:hover,
		#headerNavigation li a.current {
			background-position: bottom;
		}
		
/* HEADER: =Banner */

#headerBanner {
	background: url(../images/bnr-frame.png) no-repeat;
	height: 179px;
	left: 264px;
	padding: 19px 19px 21px 21px;
	position: absolute;
	top: 102px;
	width: 437px;
}

/* HEADER: =Social Networking */

#headerNetworking {
	left: 26px;
	position: absolute;
	top: 284px;
}

	#headerNetworking li {
		float: left;
		margin-right: 6px;
	}
	
		#headerNetworking li a {
			display: block;
			overflow: hidden;
			text-indent: -5000px;
		}
		
		#headerNetworking li.twitter a {
			background: url(../images/icn-twitter.png) no-repeat bottom;
			height: 16px;
			width: 63px;
		}
		
		#headerNetworking li.facebook a {
			background: url(../images/icn-facebook.png) no-repeat bottom;
			height: 16px;
			width: 68px;
		}

/* HEADER: =Newsletter */

#headerNewsletter {
	left: 0;
	padding-left: 26px;
	position: absolute;
	top: 232px;
	width: 238px;
}

	#headerNewsletter label {
		background: url(../images/h2-e_news_signup.gif) no-repeat;
		display: block;
		height: 15px;
		margin-bottom: 6px;
		overflow: hidden;
		text-indent: -5000px;
		width: 106px;
	}
	
	#headerNewsletter input {
		background-color: #ffffff;
		border: 1px solid #408889;
		float: left;
		font-size: 1.1em;
		margin: 0 6px 0 0;
		padding: 4px;
		width: 146px;
	}
	
	#headerNewsletter button {
		background: transparent;
		border: 0;
		cursor: pointer;
		height: 50px;
		margin: -15px 0 0 0;
		padding: 0;
		width: 72px;
	}
	
		#headerNewsletter button span {
			background: url(../images/btn-email_submit.png) no-repeat;
			display: block;
			height: 50px;
			overflow: hidden;
			text-indent: -5000px;
			width: 72px;
		}
		
/* =CONTENT
----------------------------------------------- */

/* CONTENT: =Headings */

h1 {
	height: 19px;
	overflow: hidden;
	text-indent: -5000px;
	width: 100%;
}

	.home#index h1 {
		background: url(../images/h1-welcome.gif) no-repeat;
	}
	
	.home#page_not_found h1 {
		background:  url(../images/h1-page_not_found.gif) no-repeat;
	}
	
	.menus h1 {
		background: url(../images/h1-menus.gif) no-repeat;
	}
	
	.calendar h1 {
		background: url(../images/h1-calendar.gif) no-repeat;
	}
	
	.about h1 {
		background: url(../images/h1-our_story.gif) no-repeat;
	}
	
	.contact h1 {
		background: url(../images/h1-contact_us.gif) no-repeat;
	}
	
	.news h1 {
		background: url(../images/h1-fresh_news.gif) no-repeat;
	}
	
	.ads h1 {
		background: url(../images/h1-ad_archives.gif) no-repeat;
	}
	
	.merchandise h1 {
		background: url(../images/h1-in_store_merchandise.gif) no-repeat;
	}
	
	.spread_the_flavor h1 {
		background: url(../images/h1-spread_the_flavor.gif) no-repeat;
	}
	
	.specials h1 {
		background: url(../images/h1-daily_specials.gif) no-repeat;
	}

	.directions h1 {
		background: url(../images/h1-hours_and_directions.gif) no-repeat;
	}
	
	.photos h1 {
		background: url(../images/h1-photos.gif) no-repeat;
	}
	
	.deals_and_discounts h1 {
		background: url(../images/h1-deals_and_discounts.gif) no-repeat;
	}
	
	.community h1 {
		background: url(../images/h1-community.gif) no-repeat;
	}

/* CONTENT: =Images */

.image img {
	border: 1px solid #77b8b8;
	padding: 3px;
}

/* CONTENT: =Galleries */

.gallery {
	margin-bottom: 12px;
	position: relative;
	width: 100%;
}

	.gallery .row {
		clear: both;
		float: left;
		margin-bottom: 20px;
		width: 100%;
	}
	
	.gallery .image {
		float: left;
		margin: 0 10px;
	}
	
		.gallery .image p {
			margin: 0.5em 0 0 0;
			text-align: center;
		}

/* CONTENT: =Items */

.item {
	clear: both;
	padding-left: 60px;
	position: relative;
	width: 590px;
}

	.item .date {
		background: url(../images/bg-calendar_date.gif) no-repeat;
		font-size: 1.4em;
		height: 43px;
		left: 0;
		padding-top: 10px;
		position: absolute;
		text-align: center;
		top: 0;
		width: 49px;
	}
	
		.item .date .month {
			color: #464646;
			display: block;
			width: 46px;
		}
		
		.item .date .day {
			color: #c61d23;
			display: block;
			font-size: 1.6em;
			line-height: 1em;
			width: 46px;
		}
		
	.item h3 {
		color: #ffffff;
		font-size: 1.6em;
		line-height: 1.2em;
	}
	
		.item h3 a {
			color: #ffffff;
		}
	
		.item h3 .info {
			color: #464646;
			display: block;
			font-size: 0.9em;
		}
		
/* CONTENT: =Pagination */

.pagination {
	height: 24px;
	list-style: none;
	padding: 0;
	position: relative;
}

	.pagination li {
		height: 24px;
		line-height: 24px;
		margin: 0;
		padding: 0;
	}
	
	.pagination .previous {
		float: left;
	}
		
	.pagination .next {
		float: right;
	}
		
/* CONTENT: =Horizontal Rules */

.hr {
	background: url(../images/hr-default.gif) repeat-x;
	height: 5px;
	margin: 1em 0 2em 0;
	width: 100%;
}

	.hr hr {
		display: none;
	}
	
/* CONTENT: =Alignment */

.floatLeft {
	display: inline;
	float: left;
	margin: 0 1em 1em 0;
}

.floatRight {
	display: inline;
	float: right;
	margin: 0 0 1em 1em;
}

/* Content: =Calendar */

#calendar_grid table {
	border: 1px solid #458788;
	background: #69babb;
	margin-bottom: 1em;
	width: 100%;
}

#calendar_grid th, #calendar_grid td {
	border: 1px solid #458788;
	font-size: 1.1em;
	padding: 6px;
	vertical-align: top;
	width: 14%;
}

#calendar_grid th {
	background: #326b6c;
	color: #a9e6e7;
	font-weight: bold;
	text-align: center;
}

#calendar_grid td {
	background: #69babb;
}

#calendar_grid td.event {
	background: #b5e4e5;
}

#calendar_grid td span {
	color: #1b5556;
}

#calendar_grid td.event span {
	font-weight: bold;
}

/* =SIDEBAR
----------------------------------------------- */

/* SIDEBAR: =Headings */

#bodySidebar h2 {
	text-align: center;
}

#sidebar-calendar h2 {
	background: url(../images/h2-calendar.gif) no-repeat center;;
	height: 15px;
	overflow: hidden;
	text-indent: -5000px;
	width: 100%;
}

/* SIDEBAR: =Calendar */

#bodySidebar ul {
	text-align: center;
}

	#bodySidebar ul li {
		margin-bottom: 20px;
	}
	
		#bodySidebar ul li h3 {
			line-height: 1.4em;
			margin-bottom: 0;
		}
		
		#bodySidebar ul li p {
			line-height: 1.4em;
			margin-bottom: 0;
		}
		
			#bodySidebar ul li p a {
				color: #ffffff;
			}
		
		#bodySidebar ul li .info p {
			color: #464646;
			font-weight: bold;
		}

		
/* =FOOTER
----------------------------------------------- */

/* FOOTER: =Navigation */

#footerNavigation {
	background: url(../images/bg-page_body.gif) repeat-y left;
	position: relative;
	z-index: 9988;
}

	#footerNavigation li {
		background: url(../images/bg-footer_section.gif) no-repeat top;
		display: inline;
		float: left;
		height: 246px;
		margin: 0 2px;
		position: absolute;
		width: 230px;
	}
	
		#footerNavigation li a {
			display: block;
			height: 174px;
			overflow: hidden;
			text-indent: -5000px;
			width: 100%;
		}
		
		#footerNavigation li.news {
		  left: 5px;
		}
		
		#footerNavigation li.ads {
		  left: 239px;
		}
		
		#footerNavigation li.deals {
		  left: 473px;
		}
		
		#footerNavigation li.photos {
		  left: 707px;
		}
		
		#footerNavigation li.news a {
			background: url(../images/nav-fresh_news.png) no-repeat center;
		}

		#footerNavigation li.ads a {
			background: url(../images/nav-ad_archives.png) no-repeat center;
		}
		
		#footerNavigation li.deals a {
			background: url(../images/nav-deals.png) no-repeat center;
		}
		
		#footerNavigation li.photos a {
			background: url(../images/nav-photo_gallery.png) no-repeat center;
		}

/* FOOTER: =Copyright */

#footerCopyright {
	bottom: 176px;
	height: 42px;
	left: 0;
	position: absolute;
	text-align: right;
	width: 410px;
}
	
	#footerCopyright p {
		color: #ffffff;
		font-size: 1.1em;
		line-height: 42px;
	}
	
/* FOOTER: =Developer */

#footerDeveloper {
	bottom: 176px;
	height: 42px;
	position: absolute;
	right: 0;
	text-align: left;
	width: 524px;
}

	#footerDeveloper p {
		color: #ffffff;
		font-size: 1.1em;
		line-height: 42px;
	}
	
		#footerDeveloper p a {
			color: #ffffff;
		}

/* =FORMS
----------------------------------------------- */

/* FORMS: =Basic */

#bodyContent form {
	margin: 0 auto;
	width: 433px;
}

/* FORMS: =Labels */

#bodyContent label {
	color: #ffffff;
	display: block;
	font-size: 1.2em;
	margin-bottom: 0.5em;
}

#bodyContent .required label {
	font-weight: bold;
}

/* FORMS: =Containers */

#bodyContent .textField,
#bodyContent .textArea,
#bodyContent .selectField,
#bodyContent .submitButton {
	margin-bottom: 1em;
	width: 100%;
}

/* FORMS: =Fields */

#bodyContent .textField input,
#bodyContent .textArea textarea {
	background: #ffffff;
	border: 2px solid #509a9a;
	font-size: 1.2em;
	padding: 4px;
	width: 425px;
}

#bodyContent .textArea textarea {
	height: 150px;
}

/* FORMS: =Submit Button */

#bodyContent .submitButton {
	text-align: center;
}

	#bodyContent .submitButton button {
		background: none;
		border: 0;
		cursor: pointer;
		height: 35px;
		padding: 0;
		width: 84px;
	}

#bodyContent .submitButton button span {
	background: url(../images/btn-submit.gif) no-repeat;
	display: block;
	height: 35px;
	overflow: hidden;
	text-indent: -5000px;
	width: 84px;
}

#bodyContent .submitButton button:hover span {
	background-position: 0 -35px;
}

/* FORMS: =Error Explanation */

.errorExplanation {
	background: #f7eded;
	border: 1px solid #b00000;
	margin: 12px 0;
	padding: 12px;
}

	.errorExplanation h2 {
		display: none;
	}

	.errorExplanation p {
		color: #b00000;
		font-size: 12px;
		font-weight: bold;
		text-align: center;
	}

	.errorExplanation ul {
		list-style: none;
		margin: 0;
		padding: 0;
		width: 100%;
	}

		.errorExplanation ul li {
			color: #b00000;
			font-size: 12px;
			line-height: 15px;
			list-style: none;
			margin-bottom: 0;
			text-align: center;
		}
		
/* EXTRAS */

.home #socialLinks {
	text-align: center;
}

.home #socialLinks a {
	margin: 0 12px;
}