/* -----------------------------------------------------------------------
   Terra Firma Design & Consulting

   * Copyright (c) 2008 Terra Firma Design & Consulting, LLC
   * URL: http://terra-firma-design.com
   * Author: Brian Getting
	 * Thanks to the Blueprint CSS Framework 0.7.1
		 http://blueprintcss.googlecode.com
----------------------------------------------------------------------- */

/* Browser Reset */

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin:0; padding:0; border:0; font-weight:inherit; font-style:inherit; font-size:100%; font-family:inherit; vertical-align: baseline; }
table { border-collapse:separate; border-spacing:0; }
caption, th, td { text-align: left; font-weight: normal; }
table, td, th { vertical-align:middle; }
blockquote:before, blockquote:after, q:before, q:after { content: ""; }
blockquote, q { quotes: "" ""; }
a img { border: none; }

/* Document Body */

body { 
	font: normal 14px/1.5em Helvetica, Arial, 'Liberation Sans', FreeSans, sans-serif;
  color:#000;
  background:#6b3010;
	margin:0;
	padding:0;
	text-align:center;
}

/* Headings */

h1,h2,h3,h4,h5,h6 { font-weight:normal;margin:0 0 1em; }
h1 { font-size:2em;color:#fff; }
h2 { font-size:1.25em;font-weight:bold;margin:1em 0; }
h3 { font-size:1.2em; }
h4 { font-size:1em; }
h5 { font-size:0.8em; }
h6 { font-size:0.5em; }


a:focus, a:hover	{ color:#fcae17;text-decoration:underline; }
a									{ color:#971b1e;text-decoration:none; }

p								{ margin:0 0 1em; }
blockquote			{ margin:1em;padding:1em 1em 0;color:#111; font-style:italic;background:#fffffa;border:1px solid #ababab; }
blockquote p		{ margin:0 0 1em;font-size:0.85em;}
strong, b				{ font-weight:bold; }
em,dfn					{ font-style:italic; }
dfn							{ font-weight:bold; }
sup, sub				{ line-height:0; }
abbr, acronym		{  }
address					{ margin:0 0 1.5em; font-style:italic; }
del							{ color:#666; }
pre							{ background:#fafaff;border:1px solid #ccc; padding:1em; overflow:auto; }
pre,code				{ margin:1.5em 0; white-space:pre; }
pre,code,tt			{ font:1.1em 'andale mono', 'lucida console', monospace; line-height: 1.5; }

/* Lists */

li ul, li ol	{ margin:0 1.5em; }
ul, ol				{ margin:0 1.5em 1.5em 1.5em;padding:0 1.5em; }
ul						{ list-style-type:disc; }
ol						{ list-style-type:decimal; }
dl						{ margin: 0 0 1.5em 0; }
dl dt					{ font-weight: bold; }
dd						{ margin-left: 1.5em;}

/* Tables */

table       { margin-bottom:1.5em;width:100%; }
th          { font-weight:bold; }
th,td       { padding:0; }
.even,
tr.even td  { background:#fff2c5!important; }
tfoot       { font-style:italic; }
caption     { background:#eee; }

/* Forms */

label 						{ font-weight:bold;display:block; }
fieldset					{ padding:0; margin:0; border:none; }
legend 						{ font-weight:bold; font-size:1.2em; }
input.text,
textarea,
select						{ font-family:Arial, "Helvetica Neue", Helvetica, sans-serif;margin:0.16em 0 !important;font-size:12px;padding:2px;border:1px solid #ababab; }
input.text:focus,
textarea:focus,
select:focus			{ color:#000;border:1px solid #000; }
input.text,
textarea 					{ font-size:16px;padding:7px;color:#ababab;border:1px solid #1c666c; }
input[readonly],
input[readonly]:focus	{ color:#999; }

.full							{ width:613px;}

/* Feedback Elements */
.alert,
.error,
.errorExplanation,
.success                { margin:0 0 1.5em;padding:0.5em 1em; }
.alert p,
.error p,
.success p              { line-height:1.4em;margin:0!important; }
.alert .loadicon,
.error .loadicon,
.errorExplanation .loadicon,
.success .loadicon      { position:absolute;margin:1px 0 0 3px!important; }
.alert                  { border:1px solid #fc0;background:#ffb;color:#930; }
.alert a                { color:#930; }
.error,
.errorExplanation       { border:1px solid #88201b;background:#fffbfb;color:#88201b; }
.error a,
.errorExplanation a     { color:#88201b; }
.success                { border:1px solid #739b44;background:#fbfffb;color:#739b44 }
.success a              { color:#739b44; }
.errorExplanation h2    { margin:0 0 0.5em;color:#88201b;font-size:14px;line-height:18px;font-weight:bold; }
.errorExplanation ul    { color:#88201b;margin:0;line-height:1.4em }
.errorExplanation p     { display:none; }
.fieldError             { background:#fffbfb; }
.fieldWithErrors        { margin:0;padding:0;background:#88201b;display:inline-block; }
.fieldWithErrors input  { margin:1px!important; }

/* Calendar Popup (JavaScript) Styles */
div.calendar{font-size:12px;color:#111;}
div.calendar.popup{margin-left:20px;margin-top:-75px;}
div.calendar table{background-color:#fafafa;border-top:1px solid #ccc;border-left:1px solid #ccc;border-right:1px solid #eee;border-bottom:1px solid #eee;border-collapse:collapse;}
div.calendar thead{background-color:white;border-bottom:1px solid #eee;}
div.calendar td,div.calendar th{padding:3px;text-align:center;font-size:11px;}
div.calendar td.title{font-weight:bold;color:#13b2e8!important;font-size:13px;}
div.calendar th{background:#f0f0f0!important;border-bottom:1px solid #eee;border-top:1px solid #eee;font-weight:bold;color:#333;}
div.calendar tr.days td {width: 2em;color:#333;text-align:center;cursor:pointer;}
div.calendar tr.days td:hover,div.calendar td.button:hover{background-color:#999;cursor:pointer;color:#fff!important;}
div.calendar thead td.button:hover{text-decoration:underline;cursor:pointer;background:none!important;color:#8ec743!important;}
div.calendar tr.days td:active,div.calendar td.button:active{background-color:#111;color:#fff;}
div.calendar td.selected{font-weight: bold;background-color:#13b2e8;color:#fff!important;}
div.calendar td.today{font-weight: bold;color:#fff!important;}
div.calendar td.otherDay{color:#999 !important;}

/* Rails Calendar Styles */
#public_cal             { margin:0 0 1.5em; }
table.calendar          { margin:auto; }
table.calendar th       { text-align:center;font-weight:bold;padding:0.5em 0; }
table.calendar tbody    { background:#fff; }
table.calendar tbody tr td:first-child   { border-left:1px solid #1c666c!important; }
table.calendar tbody tr td  { font-size:10px;text-align:left!important;vertical-align:top;padding:2px 0 0 4px;width:10%;height:60px;background:url('/images/layout/gradient.gif') repeat-x bottom left; }
#page #side table.calendar tbody tr td { height:30px!important; }
.monthName              { font-size:18px;padding-bottom:0.5em;padding-top:0.5em;font-weight:normal!important;color:#111; }
.dayName th             { font-size:11px;border-top:1px solid #1c666c;border-bottom:1px solid #1c666c;border-right:1px solid #1c666c;padding:0.5em!important;background:#eee;color:#000; }
#page #side .dayName th { padding:0.25em!important; }
.dayName th:first-child  { border-left:1px solid #1c666c; }
.otherMonth,
.day                    { border-right:1px solid #1c666c;color:#111;position:relative!important;vertical-align:top;line-height:13px; }
.otherMonth             { color:#bbb;border-bottom:1px solid #1c666c; }
.weekendDay             { background-color:#fafafa; }
.day,
.specialDay             { border-bottom:1px solid #1c666c;border-right:1px solid #1c666c; }
.specialDay             { background:#fffafa!important;color:#222;padding:0!important; }
.specialDay a,
.specialDay a:visited   { color:#cb5620;text-decoration:none;display:block;font-weight:bold!important;line-height:1.4em;display:block;height:100%;padding:2px 0 0 4px;background:#fcae17; }
.specialDay a:hover     { color:#fff;text-decoration:none;background:#971b1e; }
.today                  { background:#fafaff!important;color:#222;font-weight:bold; }

/* Tab Highlight Styles */
#home .home a, #home .home a:hover,
#contact .contact a, #contact .contact a:hover { color:#0f0;text-decoration:underline; }

/* Layout Styles */
#canvas	 { border:1px solid #1c666c;margin:0 0 1.5em;background:#fff;text-align:center;font-size:11px;padding:5px; }
#canvas p { margin:0;font-weight:bold; }
#contact_form { margin:0 0 3em; }
#content { margin:3em 0 0; }
#footer { margin:0;padding:1em 0;color:#c48851; }
#footer a { color:#eabd94;text-decoration:none; }
#footer a:hover { color:#6b3010;background:#eabd94; }
#footer #info { font-size:11px;line-height:1.3em; }
#footer #info strong { color:#eabd94;font-size:13px; }
#logo	{ overflow:hidden;text-indent:-5000em;margin:10px 0 50px;height:338px;background:url('/images/layout/logo.png') no-repeat 0 0; }
#logo a { display:block;width:309px;height:229px; }
#map { border:1px solid #000;text-align:left; }
#menu_list { list-style:none;margin:0;padding:0; }
#menu_list li { float:left;margin:0 1em 1em 0;width:150px; }
#menu_list li a { display:block;background:#fff;border:1px solid #1c666c;padding:0.5em;text-align:center;font-weight:bold;font-size:1.5em;min-height:100px; }
#menu_list li a span { display:block;font-size:11px;font-style:italic;font-weight:normal;color:#000; }
#menu_list li a:hover { text-decoration:none; }
#nav			{ list-style:none;margin:0;padding:0; }
#nav li 	{ float:left; }
#nav li a { display:block;height:34px;text-indent:-5000em;overflow:hidden;margin-right:1px; }
#nav li.about a 	{ background:url('/images/layout/nav_about.gif') no-repeat;width:115px; }
#nav li.menus a 	{ background:url('/images/layout/nav_menu.gif') no-repeat;width:128px; }
#nav li.events a 	{ background:url('/images/layout/nav_events.gif') no-repeat;width:100px; }
#nav li.photos a 	{ background:url('/images/layout/nav_photos.gif') no-repeat;width:99px; }
#nav li.contact a { background:url('/images/layout/nav_contact.gif') no-repeat;width:124px; }
#nav li a:hover { background-position:0 -34px;}
#newsletter_form { margin:0;font-size:13px;color:#fff;line-height:1.3em; }
#newsletter_form h2 { text-indent:-5000em;overflow:hidden;background:url('/images/layout/newsletter.gif') no-repeat;margin:0 0 1em;height:19px; }
#newsletter_form label { display:none; }
#page 	{ top:0;margin:0;padding:0 0 100px;background:#309ba3 url('/images/layout/grass.jpg') repeat-x bottom left;border-bottom:2px solid #971b1e; }
#page .wrap { min-height:700px; }
#signup_email	 		{ font-size:18px;padding:7px;border:1px solid #431903;width:400px; }
#signup_loader    { position:absolute;top:4px; }
#signup #feedback { position:absolute;background:url('/images/lightwindow/black-70.png') repeat 0 0 transparent;top:2px;left:1px;width:415px;height:37px;line-height:37px;text-align:center;color:#fff;font-size:14px; }
#signup_submit 		{ text-indent:-5000em;overflow:hidden;height:40px;width:126px;background:url('/images/layout/newsletter_btn.gif') no-repeat;border:0;position:absolute;margin:1px 0 0 3px; }
#signup_submit:hover { cursor:pointer;background-position:0 -40px; }

.col_1			{ width:310px; }
.col_2			{ width:630px; }
.clear      { clear:both;height:0;font-size:0;line-height:0;overflow:hidden; }
.container	{ background:#fff;padding:5px;border:1px solid #1c666c;margin:0 10px 10px 0;float:left; }
.container img { display:block; }
.container p	{ margin:3px 0 0;font-size:11px;text-align:center; }
.hidden     { display:none; }
.left       { float:left; }
.loadicon   { margin:0 0.5em -4px 0; }
.map-info		{ font-size:12px;margin:0!important;line-height:1.3em; }
.price			{ float:right;font-weight:bold!important;margin:0 0 0.5em 1em; }
.recipe			{ border-bottom:1px solid #1c666c;margin-bottom:1.5em; }
.recipe h3	{ margin-bottom:0.25em; }
.relative   { position:relative; }
.right      { float:right; }
.rule       { margin:1.5em 0;height:0;border-bottom:1px solid #fafafa; }
.textright  { text-align:right; }
.wrap 			{ text-align:left;width:960px;margin:0 auto; }