/* --------------------------------------------
		HTML Basics
/* -------------------------------------------- */
*{
	padding:0;
	margin:0;
}
html{
	font-family:Arial, Helvetica, sans-serif;
}
body{
	font-size:10px;
}
img{
	border:none;
}
a{
	color:#06f;
}
a:hover{
	color:#C00;
}
td{
	vertical-align:top;
	text-align:left;
}
blockquote{
	margin:0 1em .8em 1.2em;
}

/* ----------------------------------------------------------------------- *|
		Master Buckets: Height Adjustments ONLY
		forces footer to bottom of page, even on pages with short content
|* ----------------------------------------------------------------------- */
html,
body{
  height:100%
}
div#subBody{
  min-height:100%;
}
* html div#subBody{/* IE hack */
  height:100%
}
div#clearFoot{
	/* a placeholder ensuring enough space (height) for actual footer) actual height: 558 */
	height:545px;
	clear:both;
}
div#footer{
	margin:-545px auto 0;
}
div#subFooter{
	height:545px;
	margin:0 auto;
}

/* --------------------------------------------
		Main Bucket Backgrounds
/* -------------------------------------------- */
body{
	background:#b5bd9a url(../images/cartoonville/body-top-bg.jpg) center top repeat-x;
}
div#subBody{
	background:url(../images/cartoonville/body-bottom-bg.jpg) center bottom repeat-x;
}
div#contentWrap{
	background:url(../images/cartoonville/content-bg.jpg) center bottom repeat-y;
}
div#subFooter{
	background:url(../images/cartoonville/footer.jpg) left bottom no-repeat;
}

/* --------------------------------------------
		Header
/* -------------------------------------------- */
div#header{
	margin:0 auto;
	height:279px;
	width:760px;
	color:#371c09;
	background:url(../images/cartoonville/cyclewayMasthead2.jpg) center top no-repeat;
}
div#subHeader{
	position:relative;
}
a#overlayPicture{
	position:absolute;
	top:25px;
	right:50px;
	display:block;
	width:260px;
	height:210px;
	text-indent:-5000px;
	outline:none;
}
/* logo: was basic "text replacement", now "image map" */
div#header h1 a{
	display:block;
	height:90px;
	width:160px;
	margin-left:130px;
	text-indent:-5000px;
	outline:none;
}
div#topAddy{
	position:absolute;
	top:240px;
	left:140px;
	text-align:left;
	font-size:13px;
	width:300px;
}
div#topAddy a{
	color:#371c09;
	text-decoration:none;
}
div#topAddy a:hover{
	color:#b14d1c;
	text-decoration:underline;
}
div#topAddy p#topAddyPhone span{
	float:right;
}

p#tagLine{
	font-size:115%;
	color:#806F53;
	font-style:italic;
	position:absolute;
	top:250px;
	right:56px;
	width:311px;
	text-align:right;
}

/* --------------------------------------------
		top nav links
/* -------------------------------------------- */
ul#topNav{
	position:absolute;
	top:195px;
	left:114px;
	_left:113px;
	list-style:none;
	display:block;
	width:329px;
	height:42px;
	background:url(../images/cartoonville/globalNavBg.gif) left top no-repeat;
}
ul#topNav li{
	float:left;
}
ul#topNav li a{
	display:block;
	height:42px;
	padding:0;
	margin:0;
	font-size:0;
	text-indent:-5000px;
}
ul#topNav li#topNavHome a{width:68px;}
ul#topNav li#topNavLocation a{width:61px;}
ul#topNav li#topNavAbout a{width:47px;}
ul#topNav li#topNavHistory a{width:53px;}
ul#topNav li#topNavPhotos a{width:53px;}
ul#topNav li#topNavMenu a{width:46px;}

ul#topNav li a:hover{
	background:url(../images/cartoonville/globalNavBg.gif) 0 bottom no-repeat;
}
ul#topNav li#topNavHome a:hover{background-position: 0px -42px;}
ul#topNav li#topNavLocation a:hover{background-position:  -68px -42px;}
ul#topNav li#topNavAbout a:hover{background-position: -129px -42px;}
ul#topNav li#topNavHistory a:hover{background-position: -176px -42px;}
ul#topNav li#topNavPhotos a:hover{background-position: -229px -42px;}
ul#topNav li#topNavMenu a:hover{background-position: -282px -42px;}

ul#topNav li.selected a{
	background:url(../images/cartoonville/globalNavBg.gif) 0 bottom no-repeat;
}
ul#topNav li#topNavHome.selected a{background-position: 0px -84px;}
ul#topNav li#topNavLocation.selected a{background-position:  -68px -84px;}
ul#topNav li#topNavAbout.selected a{background-position: -129px -84px;}
ul#topNav li#topNavHistory.selected a{background-position: -176px -84px;}
ul#topNav li#topNavPhotos.selected a{background-position: -229px -84px;}
ul#topNav li#topNavMenu.selected a{background-position: -282px -84px;}

/* --------------------------------------------
		Content (Wrap)
/* -------------------------------------------- */
div#contentWrap{
	margin:0 auto;
	width:742px;
}
div#subContentWrap{
	position:relative;
	margin:0 21px;
	padding-top:20px;
}

/* going to set some CLASS slector rules -- these will be easier to override later */
div.subContentWrap{
	color:#624738;
}
div.subContentWrap p{
	font-size:122%;
	line-height:1.6;
	margin-bottom:.8em;
}
div.subContentWrap blockquote{
	color:#6b3238;
	font-style:italic;
	font-size:132%;
	line-height:1.8;
	margin:.3em .6em 1.2em 0;
	padding-left:36px;
	background:url(../images/cartoonville/quotes.gif) left top no-repeat;
}

div.subContentWrap h1,
div.subContentWrap h2{
	color:#7E6E56;
	font-family:Georgia, "Times New Roman", Times, serif;
	font-size:190%;
	letter-spacing:-1px;
	margin:.3em 0 .5em;
}
div.subContentWrap h1 a,
div.subContentWrap h2 a{
	border-bottom:1px solid transparent;
	color:#7E6E56;
	text-decoration:none;
}
div.subContentWrap h1 a:hover,
div.subContentWrap h2 a:hover{
	color:#624638;
	background-color:#F4F2E4;
	border-bottom-color:#9A8E51;
}

div.subContentWrap h3{
	font-size:135%;
	margin:1.3em 0 1em;
}
div.subContentWrap h4{
	font-size:135%;
	margin:1.3em 0 .4em;
}
div.subContentWrap h5{
	font-size:145%;
	margin:1em 0 .4em;
}
div.subContentWrap h6{
	font-size:115%;
	margin:.5em 0;
}

div.subContentWrap li{
	font-size:122%;
	margin:0 0 .6em 2em;
}
div.subContentWrap ul.splat li{
	list-style-image:url(../images/cartoonville/bullet-splat.gif);
}
div.subContentWrap ul.cup li{
	list-style-image:url(../images/cartoonville/bullet-coffee-cup.gif);
}
div.subContentWrap ul.bean li{
	list-style-image:url(../images/cartoonville/bullet-bean2.gif);
}
div.subContentWrap ul li{
	list-style-image:url(../images/cartoonville/bullet-gear.gif);
}


/* --------------------------------------------------------------- */
span.toGo,
span.latte,
span.espresso{
	display:block;
	height:95px;
	width:60px;
	margin:0 .5em .5em 0;
	float:left;
	background:url(../images/cartoonville/h2-bg-iconsheet.jpg) left top no-repeat;
}
span.toGo{
	background-position:left -100px;
	width:80px;
}
span.espresso{
	background-position:left -250px;
	height:146px;
	width:80px;
}

/* --------------------------------------------
		Shims
/* -------------------------------------------- */
/*	The design has two overlapping gradients, the top-to-bottom background gradient
	plus contentWrapper's outer-glow/shadow, these buckets "glue" those missing
	overlaps into place, requires subContentWrap to be "relative" positioned
*/
div#extraLeft,
div#extraRight{
	position:absolute;
	top:-43px;
	width:21px;
	height:350px;
	background:url(../images/cartoonville/top-extras.jpg) left top no-repeat;
}
div#extraLeft{
	left:-21px;
	background-position:left top;
}
div#extraRight{
	right:-21px;
	_right:0;
	background-position: right top;
}

/* --------------------------------------------
		Footer
/* -------------------------------------------- */
div#footer{
	width:742px;
}
div#subFooter{
	position:relative;
}
p#footHours{
	position:absolute;
	left:50px;
	bottom:60px;
	color:#fff;
	font-size:12px;
}
p#footAddy{
	position:absolute;
	bottom:7px;
	left:140px;
	color:#3A3F10;
	line-height:1.2;
	font-size:121%;
	text-align:center;
}

a#footMaps{
	font-size:1px;
	text-indent:-8000px;
	outline:none;
	display:block;
	position:absolute;
	bottom:0;
	_bottom:-1px;
	right:-32px;
	width:331px;
	height:350px;
	background:url(../images/cartoonville/footer.jpg) right bottom no-repeat;
}

/* --------------------------------------------
		contentShimStick
/* -------------------------------------------- */
div#contentShimStick{
	float:right;
	height:400px;
	width:1px;
}
div#endContent{
	clear:both;
}

/* --------------------------------------------
		content blocks
/* -------------------------------------------- */
div.singleColumn{
	padding:0 25px 10px;
}
div.fatLeft{
	float:left;
	padding:0 25px 10px;
	width:400px;
}
div.skinnyRight{
	float:right;
	width:230px;
	padding:0;
}


/* --------------------------------------------
		sidebars
/* -------------------------------------------- */
div.sideBox{
	width:217px;
	margin-bottom:2em;
}
div.sideBox h4{
	margin:0;
	padding:10px 15px 40px 30px;
	text-align:right;
	font-weight:bold;
	font-size:165%;
	line-height:1;
}
div.sideBox p{
	margin:0;
	padding:0 0 1em 0;
	line-height:120%;
}
div.sideBox div.subSideBox{
	padding:0 15px 15px 20px;
}

/* add the bgs */
div.sideBox h4{
	background:url(../images/cartoonville/sidebar-mocha.jpg) 0 top no-repeat;
}
div.sideBox{
	background:url(../images/cartoonville/sidebar-mocha.jpg) -225px top repeat-y;
}
div.sideBox div.subSideBox{
	background:url(../images/cartoonville/sidebar-mocha.jpg) -450px bottom no-repeat;
}

/* the "flavors", can skip mocha it's the default */
div.sideBox.thaiTea,
div.sideBox.thaiTea h4,
div.sideBox.thaiTea div.subSideBox{
	background-image:url(../images/cartoonville/sidebar-thai.jpg);
}
div.sideBox.thaiTea{
	color:#8a4524;
}
div.sideBox.thaiTea h4{
	color:#fcb306;
}

/* the "flavors", can skip mocha it's the default */
div.sideBox.bubblegum,
div.sideBox.bubblegum h4,
div.sideBox.bubblegum div.subSideBox{
	background-image:url(../images/cartoonville/sidebar-bubblegum.jpg);
}
div.sideBox.bubblegum{
	color:#0b515d;
}
div.sideBox.bubblegum h4{
	color:#462505;
}

/* special "buy our beans" 
div.sideBox.beanBag -- never mind -- hating IE. Using ID's instead ! */
div.sideBox.buyOurBeans,
div.sideBox.buyOurBeans h4,
div.sideBox.buyOurBeans div.subSideBox{
	background-image:url(../images/cartoonville/sidebar-coffee-bean-bag-take-home.jpg);
}

/* unlike the others we'll do a text replace here */
div#buyOurBeans h4{
	margin:0;
	padding:0;
	text-align:left;
	text-indent:-5000px;
	height:70px;
}
div.sideBox.buyOurBeans div.subSideBox{
	padding-bottom:35px;
}
div#buyOurBeans p.endBox{
	padding-right:90px;
}

/* -------- sandwiches sidebar ---------------*/
div.sideBox.sandwiches,
div.sideBox.sandwiches h4,
div.sideBox.sandwiches div.subSideBox{
	background-image:url(../images/cartoonville/sidebar-sandwiches.jpg);
}
div.sideBox.cupcake h4,
div.sideBox.sandwiches h4{
	margin:0;
	padding:0;
	text-align:left;
	text-indent:-5000px;
	height:70px;
}
div.sideBox.cupcake div.subSideBox,
div.sideBox.sandwiches div.subSideBox{
	padding-bottom:55px;
}
div.sideBox.cupcake p.last,
div.sideBox.sandwiches p.last{
	padding-right:50px;
	padding-bottom:25px;
}

/* -------- cupcake sidebar ---------------*/
div.sideBox.cupcake,
div.sideBox.cupcake h4,
div.sideBox.cupcake div.subSideBox{
	background-image:url(../images/cartoonville/sidebar-cupcake.jpg);
}


/* one off: wifi badge */
div#freeWiFi{
	width:212px;
	height:179px;
	background:url(../images/cartoonville/free-wi-fi-badge.jpg) left top no-repeat;
	text-indent:-5000px;
	margin-bottom:1.1em;
}


/* -------- twitter sidebar ---------------*/
div.sideBox.twitter,
div.sideBox.twitter h4,
div.sideBox.twitter div.subSideBox{
	background-image:url(../images/cartoonville/sidebar-twitter.jpg);
}
div#tweets h4{
	margin:0;
	padding:0;
}
div#tweets h4 a{
	display:block;
	font-size:0;
	height:95px;
	text-indent:-5000px;
}
div#tweets ul{
	list-style:none;
	margin:0;
	padding:0 0 70px;
}
div#tweets li{
	border-bottom:dashed 1px #7F5E07;/* #716E21 */
	color:#4d3d2f;/*7F5E07 #4d3d2f #534E0E */
	font-family:Georgia, "Times New Roman", Times, serif;
	font-size:1.3em;
	list-style-image:none;
	margin:0;
	padding:.7em 0;
}
div#tweets li:first-child{
	padding-top:0;
}
div#tweets li:last-child{
	border:none;
	padding-bottom:0;
}
div#tweets li a{
	display:block;
	font-size:.9em;
	font-style:italic;
	text-align:right;
	text-decoration:none;
}
div#tweets li a:hover{
	text-decoration:underline;
}


/* -------- Jazz Festival sidebar ---------------*/
div#sideBoxJazz{
	background:url(../images/cartoonville/sidebar-jazz-festival.jpg) left top no-repeat;
	width:215px;
	margin-bottom:18px;
}
div#sideBoxJazz h4{
	height:287px;
	padding:0;
	text-indent:-5000px;
}
div#sideBoxJazz div{
	background:url(../images/cartoonville/sidebar-jazz-festival.jpg) left bottom no-repeat;
	color:#536307;
	padding:4px 14px 25px 22px ;
}
div#sideBoxJazz p{
	line-height:1.2;
}

/* -------- Halloween sidebar ---------------*/
div.sideBox.halloween,
div.sideBox.halloween h4,
div.sideBox.halloween div.subSideBox{
	background-image:url(../images/cartoonville/sidebar-halloween.jpg);
	color:#fff;
}
div.sideBox.halloween h4{
	height:115px;
	margin:0;
	padding:0;
}
div.sideBox.halloween h4 a{
	display:block;
	font-size:0;
	height:55px;
	/* not working -- text-indent:-5000px !important;*/
}
div.sideBox.halloween a{
	color:#fc0;
}
div.sideBox.halloween a:hover{
	color:#b00;
}
div.sideBox.halloween div.subSideBox{
	padding-bottom:90px;
}
div#sidebarHalloweenText{
	position:relative;
	top:-40px;
}




/* --------------------------------------------
		useful classes anchors (around images)
/* -------------------------------------------- */
a.rightImg{
}
a.rightImg img{
	float:right;
	margin:0 0 .7em 1.1em;
	width:200px;
	border:2px solid #ccc;
}
a.rightImg:hover img{
	border-color:#C00;
}

/* --------------------------------------------
		useful classes anchors (around images)
/* -------------------------------------------- */
a.external{
	font-size:inherit;
	text-decoration: none; 
	display: inline-block;
	padding: 0 15px 0 0;
  background:transparent url(../images/cartoonville/link-external.gif) right top no-repeat;
	border-bottom: 1px solid #ccc;
}
a.external:hover	{	
	color: #900;	
	border-bottom-color:#666;
	background-position:right -51px;
}

/* --------------------------------------------
		call-out box
/* -------------------------------------------- */
div.noticeMe{
	background:#F4F2EC;
	border:solid 4px #937F62;
	margin-bottom:25px;
	padding:0 15px;
}
