/* -----------------------------------------------------------------------
   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 1em/1.5em Helvetica, Arial, 'Liberation Sans', FreeSans, sans-serif;
  color:#000;
  background:#fff;
	margin:0;
	padding:0;
	text-align:center;
}

/* Headings */

h1,h2,h3,h4,h5,h6 { font-weight:normal;margin:0 0 1em; }
h1 { font-size:20px;color: #c63; }
h2 { font-size:1.5em; }
h3 { font-size:1.2em; }
h4 { font-size:1em; }
h5 { font-size:0.8em; }
h6 { font-size:0.5em; }


a:focus, a:hover	{ color:#000;text-decoration:underline; }
a									{ color:#c63;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 					{ padding:0.25em;color:#ababab;border:1px solid #ababab; }
input[readonly],
input[readonly]:focus	{ color:#999; }

/* 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 #c1c1c1!important; }
table.calendar tbody tr td  { font-size:9px;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 #c1c1c1;border-bottom:1px solid #c1c1c1;border-right:1px solid #c1c1c1;padding:0.5em!important;background:#8ec743;color:#fff; }
#page #side .dayName th { padding:0.25em!important; }
.dayName th:first-child  { border-left:1px solid #c1c1c1; }
.otherMonth,
.day                    { border-right:1px solid #c1c1c1;color:#111;position:relative!important;vertical-align:top;line-height:13px; }
.otherMonth             { color:#bbb;border-bottom:1px solid #c1c1c1; }
.weekendDay             { background-color:#fafafa; }
.day,
.specialDay             { border-bottom:1px solid #c1c1c1;border-right:1px solid #c1c1c1; }
.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; }
.specialDay a:hover     { color:#fff;text-decoration:none;background:#13b2e8; }
.today                  { background:#fafaff!important;color:#222;font-weight:bold; }

/* Tab Highlight Styles */
#home .home a, #home .home a:hover,
#paintings .paintings a, #paintings .paintings a:hover,
#surfboards .surfboards a, #surfboards .surfboards a:hover,
#bio .bio a, #bio .bio a:hover,
#links .links a, #links .links a:hover  { color:#c63;text-decoration:none; }

/* Layout Styles */

#footer		{ color:#777;font-size:12px;line-height:1.3em;margin:2em 0 0;padding:2em 0 0;border-top:1px solid #ccc; }
#frame 			{ position:relative;width:717px;height:538px;margin:0 1.5em 0.5em 0; }
#frame img	{ position:absolute;top:0;left:0; }
#main 		{ float:right;width:717px;font-size:13px;line-height:1.5em;margin:50px 0 0; }
#main h2  { font-size:16px;font-weight:bold; }
#main ul 	{ list-style:none;padding:0;margin:0 0 1.5em; }
#side 		{ float:left;width:223px;padding:0; }
#side ul 	{ list-style:none;padding:0;margin:86px 0 1.5em; }
#side ul li a { color:#000;text-decoration:none; }
#side ul li a:hover { color:#c63;text-decoration:none; }
#wrap 		{ text-align:left;width:960px;margin:1em auto; }

.clear      { clear:both;height:0;font-size:0;line-height:0;overflow:hidden; }
.container 	{ float:left;margin:0 1em 1em 0; }
.container img { border:1px solid #ccc;padding:2px; }
.hidden     { display:none; }
.left       { float:left; }
.loadicon   { margin:0 0.5em -4px 0; }
.relative   { position:relative; }
.right      { float:right; }
.rule       { margin:1.5em 0;height:0;border-bottom:1px solid #fafafa; }
.textright  { text-align:right; }