/*****************
 GLOBAL
*****************/

html { overflow-y: scroll; }

* { margin: 0; padding: 0; }

p { margin: 0.5em 0 1.0em 0; }

img { border-width: 0; }

h1, h2, h3, h4, h5, h6 { margin:0.5em 0 0.2em 0; }

html {
	background: url('images/bg-html.gif')  repeat-y center top;
	height: 100%;
	margin: 0px; 
	padding: 0px;
}

body {
    background: url('images/bodyback.jpg')  no-repeat center bottom;
 	margin: 0px;
  	padding: 0px;
	color: #000;
	height: 100%;
}

html>body {
	min-height: 100%;
	height: auto;
}

body, table {
	font-family:  'lucida sans unicode', 'lucida grande', 'Trebuchet MS', verdana, arial, helvetica, helve, sans-serif;
	font-size: 16px;
}

* html body, * html table  {
	font-family:  'lucida sans unicode', 'lucida grande', 'Trebuchet MS', verdana, arial, helvetica, helve, sans-serif;
	font-size: medium;
}

ol {
    padding-left: 50px;
}

/**********
 HEADERS
**********/

h1 { font-size: 2.0em; color: #060; line-height: 1.2em; font-weight: normal; font-family:  georgia, 'lucida sans unicode', 'lucida grande', 'Trebuchet MS', verdana, arial, helvetica, helve, sans-serif;}
h2 { font-size: 1.6em; color: #b23; font-weight: normal; font-family:  georgia, 'lucida sans unicode', 'lucida grande', 'Trebuchet MS', verdana, arial, helvetica, helve, sans-serif;}
h3 { font-size: 1.1em; color: #222; letter-spacing: -1px;}
h4 { font-size: 1.1em; color: #333; letter-spacing: -1px;}

/**********
 FORMS
**********/

form { display: inline; }

/**********************
 OVERALL LAYOUT
***********************/

#skiptomain {
	display: none;
}

#wrapper {
	width: 950px;
	margin: 0 auto;
	font-size: 0.85em;
}

	#pagecontainer {
		width: 930px;
		padding: 0px 10px 0px 10px;
	}

		#header {
			width: 930px;
			padding: 0px;
			background: url(images/headerback.jpg) no-repeat left 10px;
			}
			
			#branding {
				width: 930px;
				padding: 0px;
				}			

				#toplogo {
					padding: 20px 0 0 10px;
					width: 360px;
					float: left;
				}

				#topright {
					padding: 10px 160px 50px 0px;
					width: 400px;
					height: 70px;
					float: right;
					font-size: 0.85em;
					text-align: right;
					color: #fff;
					background: url(images/topright.gif) no-repeat bottom right;
				}

				#topnav {
					width: 930px;
					margin: 1px 0px;
					padding: 0px;
					font-size: 0.95em;
				}
				
				/* #topnav's descendants (#nav) are now controlled by suckerfish.css */

		#topbar {
			width: 930px;
			margin: 0;
			padding: 0;
			background: #eee;
			color: #000;
		}

			#breadcrumb {
				width: 700px;
				float: left;
				padding: 7px 10px 5px 10px;
				font-size: 0.9em;
			}

			#breadcrumb a:link, #breadcrumb a:visited { color: #000; text-decoration: none; }
			#breadcrumb a:hover { color: #000; text-decoration: underline; }

			#topdate {
				width: 200px;
				float: right;
				text-align: right;
				padding: 7px 10px 5px 0;
				font-size: 0.8em;
				color: #666;
			}
		
		#maincontent {
			clear: both;
			width: 930px;
			margin: 0;
			padding: 10px 0px 0px 0px;
			font-size: 0.95em;
			line-height: 1.7em;
		}

			#maincontent a:link, #maincontent a:visited { color: #b23; text-decoration: none; }
			#maincontent a:hover { color: #b23; text-decoration: underline; }

			#maincontent ul {padding: 5px 0 5px 25px;}

			#maincontentleft {
				width: 310px;
				margin: 0px 20px 10px 0px;
				padding: 10px;
				float: left;
			}
			

				#catnav li, .unlist li {
				    padding: 0px;
				    margin: 0px;
				    vertical-align: middle;
				    line-height: 1.8em;
				    margin-left: -10px;
				    list-style-image: url(images/icon.gif);
				}

			#maincontentright {
				width: 580px;
				margin: 0px;
				padding: 0px 0px 10px 0px;
				float: right;
			}
			
			#maincontentfull {
			    	width: 920px;
			    	margin: 0px 0px 10px 0px;
			   	padding: 0px 0px 0px 10px;
			}
			

			
		#abovefooter {
			margin: 0px;
			clear: both;
			width: 920px;
			font-size: 0.95em;
			line-height: 1.7em;
			padding: 10px 0px 15px 10px;
			color: #000;
			background: url('images/pagebottom.gif') no-repeat center bottom;
		}

			#abovefooter a:link, #abovefooter a:visited { color: #b23; text-decoration: none; }
			#abovefooter a:hover { color: #b23; text-decoration: underline; }


			#abovefooterleft {
				width: 310px;
				margin: 0px 30px 0px 0px;
				padding: 20px 0px 0px 0px;
				float: left;
				
			}
			
			#abovefootermiddle {
				width: 240px;
				margin: 0px 20px 0px 0px;
				padding: 20px;
				float: left;
				background: #fff url('images/abovefooterline.gif') no-repeat left top;
			}

			#abovefooterright {
				width: 240px;
				margin: 0px 0px 0px 0px;
				padding: 20px;
				float: left;
				background: #fff url('images/abovefooterline.gif') no-repeat left top;
			}


		#footer {
			margin: 0px 0px 0px 0px;
			clear: both;
			width: 910px;
			font-size: 0.9em;
			color: #fff;
			padding: 15px 10px 5px 10px;
			background: #060;
			height: 28px;
		}

			#footer a:link, #footer a:visited { color: #fff; text-decoration: none; }
			#footer a:hover { color: #fff; text-decoration: underline; }

		#belowfooter {
			margin: 10px 0 0 0;
			clear: both;
			width: 910px;
			height: 80px;
			font-size: 0.9em;
			line-height: 1.7em;
			padding: 0px 10px;
			color: #666;
		}

			#belowfooter a:link, #belowfooter a:visited { color: #901; text-decoration: none; }
			#belowfooter a:hover { color: #901; text-decoration: underline; }

/*****************
 BREAKS
*****************/

br.breaker { clear: both; }
br.lbreaker { clear: left; }
br.rbreaker { clear: right; }


/*****************
 IMAGE FLOATS
 *****************/

.floatleft {
	float: left;
	margin: 0px 10px 10px 0px;
}

.floatright {
	float: right;
	margin: 0px 0px 10px 10px;
}

/*****************
 FLASHANIM
*****************/

 #flashanim {
 	position: relative;
	z-index: 1;
 }

 #flashanim img {
 	display: none;
 	position: absolute;
 	top: 0; left: 0;
	z-index: 1;
 }

/*****************
 BORDERED
*****************/

.bordered {
    	margin: 10px 0px 0px 0px;
    	padding: 10px;
    	border: 1px solid #cce;
}

/*****************
 BACKGROUNDS
*****************/

.blueback {
    	background: #eef;
}

/*****************
 ICON LINK
*****************/

a.iconlink { padding-left:10px; background: url(/images/icon.gif) no-repeat top left;  }


/*****************
 IMAGE FADER
*****************/

#imagefader {
	width: 580px;
	height: 350px;
	margin: 0px 0px 0px 0px;
	padding: 0px;
	float: left;
	background: #fff;
	overflow: hidden;
}

/*****************
 CAROUSEL
*****************/

#carousel {
	width: 580px;
	height: 410px;
	margin: 0px 0px 0px 0px;
	padding: 0px;
	float: left;
	background: #fff;
	overflow: hidden;
}

#carousel-pager {
	background-color: #f90;
	float: left;
	width: 570px;
	height: 22px;
	padding: 5px;
}

#carousel-pager a {
    display: block;
    float: left;
    padding: 0px 8px;
    margin: 0px 5px 0px 0px;	
    color: #b23;
	background: #fff;
}

#carousel-nav a.activeSlide, a:focus {
    background: #b23;
    color: #FFF;
}

#carousel .carousel-div {				
    padding: 10px;
	background: #fed;
	height: 70px;
	width: 570px;
}


/**********************
 PRICES PAGE
***********************/

#pricelist {
	padding: 10px 20px 10px 20px;
	width: 540px;
	background: #fff url(images/pagecorner.gif) no-repeat right top; 
}
	
.priceLabel {
    float: left;
    width: 420px;
    font-size: 0.9em;
}

.priceLabel strong {
    font-size: 1.1em;
}

.priceCost {
    float: left;
    width: 120px;
}


/**********************
 EVENTS PAGE
***********************/


.eventDates {
    margin: 0px 0px 10px 0px;
    font-size: 0.85em;
    line-height: 1.4em;
}

.timesTable {
    font-size: 1em;
    width: 100%;
}

.timesTable  th {
    text-align: left;
}

.seasonTable {
    font-size: 1em;
    width: 100%;
}

.seasonTable  th {
    text-align: left;
    font-weight: normal;
    width: 33%;
}

.pricesTable {
    font-size: 1em;
    width: 100%;
    margin: 0px 0px 15px 0px;
}

.pricesTable  th {
    text-align: left;
}

/**********************
 FORM CSS
***********************/

input, textarea, select {
    font-family:  'lucida sans unicode', 'lucida grande', 'Trebuchet MS', verdana, arial, helvetica, helve, sans-serif;
}


label {
    width: 195px;
    display: block;
    float: left;
}

input.text {
    width: 298px;
    margin-bottom: 5px;
}

select.sel {
    margin-bottom: 5px;
}

input.btn {
    margin-bottom: 5px; 
    width: 75px;
    height: 35px;
    color: #FFF;
    background: url(images/bg-btn.gif) no-repeat center center;
    border: 0px;
}

.rad label {
    display: inline;
    float: none;
    padding-right: 30px;    
}

textarea.texta {
    overflow: auto;
    width: 300px;
    height: 80px;
    margin-bottom: 5px;
}


/**********************
 MAP
***********************/

#gmap {
    width: 578px;
	height: 348px;
	border: 1px solid #999;
}

/**********************
 CALENDAR
***********************/

.monthBlock {
    width: 270px;
    float: left;
    margin-right: 20px;
}

.dayBlock {
    border: 1px solid #923;
    width: 20px;
    height: 20px;
    float: left;
    margin: 2px;
    padding: 5px 5px;
    line-height: 1em;
}

.blankBlock {
    border: 1px solid #CCC;
}

.bookedBlock {
    border: 2px solid #733;
    background: #C33 url(images/bg-bookedBlock.gif) no-repeat center center;
    padding: 4px 4px;
    color: #fff;
    cursor: pointer;
}

.todayBlock {
    border: 3px solid #000;
    float: left;
    padding: 3px 3px;
}

#timesBlock {
    position: absolute;
    left: 0px;
    top: 0px;
    display: none;
    padding: 0px 10px 10px 10px;
    border: 2px solid #733;
    z-index: 20;
    color: #000;
    background: #EEE;
    width: 150px;
}

#lblError {
    border: 2px solid #600;
    color: #600;
    font-weight: bold;
    background-color: #FCC;
    padding: 10px;
    margin: 20px 0px;
    width: 471px;
}

#lblError.success {
    color: #090;
    border: 2px solid #090;
    background-color: #6F6;
}



.animal {
    float: left;
    margin: 5px 10px 5px 0px;
}

/*****************
 TEA ROOM MENU
*****************/

#tearoommenu {
	margin: 10px 0 0 0;
	width: 530px;
	padding: 0px 20px 10px 20px;
	color: #fff;
	background: #000;
	border: 5px solid #974;

}

		.menuItem {
		    float: left;
		    width: 400px;
		}

		.menuPrice {
		    float: right;
		    font-size: 1.1em;
		}


/*****************
 MAPS
*****************/

#gdirections {
    padding: 5px;
    border: 1px solid #AAA;
    border-top: 0px;
}

#gdirections #gmap-from {
    margin: 5px 5px 7px 0px;
    height: 18px;
    font-size: 14px;
}

#gdirections #gmap-go {
    margin: 5px 5px 0px 0px;
    height: 28px;
}

#gdirections #gmap-panel td {
    font-size: 0.8em;
}


/*****************
 FULL PAGE FEATURES
*****************/

.pagefeature4 {
	width: 175px;
	float: left;
	padding: 20px;
	margin: 0px 20px 0px 0;
	background: url(images/bg-pagefeature4.gif) repeat-x center bottom;
}

.pagefeature4end {
	margin: 0px 0px 0px 0;
}
