/* ------------------------------------------------------------------------------------------------------*/
/* ZERO OUT ALL BROWSER PRE-SET VALUES  -----------------------------------------------------------------*/

html, body, ul, ol, li, p, h1, h2, h3, h4, h5, h6, img, form, fieldset, a {
	margin: 0;
	padding: 0;
	border: 0;
}

html 	{ overflow-y: scroll; }	/* Add this in to always generate vertical scrolls (and avoid page shift on centered layouts) */
a:focus	{ outline: 0; } 		/* Gets rid of outlines in FF */


/* ------------------------------------------------------------------------------------------------------*/
/* BASE BLOCK ELEMENTS & GLOBAL STYLES ------------------------------------------------------------------*/


html {
	height: 100%;
}


body {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	text-align: center; /* for centering layout in IE 5.x */
	background: #0DBCEF;
}


/* Container for entire page content */

#wrapper {
	width: 100%;
	padding: 0;
	position: relative;
	/* height: 100%;    ADD THIS IN FOR WINDOWS-ONLY CSS  */
	min-height: 100%;
	text-align: left; /* counter the centering in the body tag */
	background-position: 0 110px;
	background: #0DBCEF url(../images/shared/bgTile.jpg) bottom repeat-x;
}

#headerBlock {
	margin: 0 auto;
	width: 770px;
	height: 145px;
}

#contentBlock {
	margin: 0 auto;
	padding: 0 0 65px 0;
	width: 770px;
	text-align: left; /* counter the centering in the body tag */
}

#footerBlock {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 15px;
	margin: 0;
	padding: 0;
}


a:link {
	color: #FCDD72;
	text-decoration: none;
}
a:visited {
	color: #FCDD72;
	text-decoration: none;
}
a:hover {
	color: #FCDD72;
	background: url(../images/shared/linkStyle.gif) bottom repeat-x;
}
a:active {
	color: #FCDD72;
	background: url(../images/shared/linkStyle.gif) bottom repeat-x;
}

.clear {
	clear: both;
	height: 10px;
}


/* ------------------------------------------------------------------------------------------------------*/
/* HEADER BLOCK (LOGO & MAIN NAV)  ----------------------------------------------------------------------*/



#logo {
	margin: 0;
	padding: 13px 0 0 9px;
	width: 222px;
	height: 131px;
	float: left;
}


#mainNav {
	position: relative;
	margin: 0 0 0 0;
	padding: 35px 24px 0 0;
	float: right;
	height: 57px;
	font-size: 10px;
	line-height: 10px;
	color: #017FCD;
}

#mainNav ul{
	list-style: none;
}

#mainNav ul li{
	float: left;
	display: inline;
	margin-left: 22px;
}


#mainNav ul li a {
	display: block;
	text-indent: -5000px;
	height: 57px;
	border: none;
}

/* Basic Link Styles */

#mainNav a:link		{ color: #017FCD; text-decoration: none; }
#mainNav a:visited	{ color: #017FCD; text-decoration: none; }
#mainNav a:hover	{ color: #FFFFFF; text-decoration: none; }
#mainNav a:active	{ color: #FFFFFF; text-decoration: none; }
#mainNav a:focus	{ outline: 0; }

/* Nav Rollovers */

#mainNav .home a { background: url(../images/shared/nav_home.gif) no-repeat; width: 37px; }
#mainNav .home a:hover  { background-position: -37px 0; }
#mainNav .home a:focus  { outline: 0; }
#mainNav .about a { background: url(../images/shared/nav_about.gif) no-repeat; width: 38px; }
#mainNav .about a:hover  { background-position: -38px 0; }
#mainNav .about a:focus  { outline: 0; }
#mainNav .schedule a { background: url(../images/shared/nav_schedule.gif) no-repeat; width: 60px; }
#mainNav .schedule a:hover  { background-position: -60px 0; }
#mainNav .schedule a:focus  { outline: 0; }
#mainNav .schoolPrograms a { background: url(../images/shared/nav_schoolPrograms.gif) no-repeat; width: 109px; }
#mainNav .schoolPrograms a:hover  { background-position: -109px 0; }
#mainNav .schoolPrograms a:focus  { outline: 0; }
#mainNav .specialEvents a { background: url(../images/shared/nav_specialEvents.gif) no-repeat; width: 89px; }
#mainNav .specialEvents a:hover  { background-position: -89px 0; }
#mainNav .specialEvents a:focus  { outline: 0; }
#mainNav .contact a { background: url(../images/shared/nav_contact.gif) no-repeat; width: 50px; }
#mainNav .contact a:hover  { background-position: -50px 0; }
#mainNav .contact a:focus  { outline: 0; }

/* "Current Page" Highlight States */
#home #mainNav .home a { background: url(../images/shared/nav_home.gif) no-repeat; background-position: -74px 0; }
#about #mainNav .about a { background: url(../images/shared/nav_about.gif) no-repeat; background-position: -76px 0; }
#schedule #mainNav .schedule a { background: url(../images/shared/nav_schedule.gif) no-repeat; background-position: -120px 0; }
#schoolPrograms #mainNav .schoolPrograms a { background: url(../images/shared/nav_schoolPrograms.gif) no-repeat; background-position: -218px 0; }
#specialEvents #mainNav .specialEvents a { background: url(../images/shared/nav_specialEvents.gif) no-repeat; background-position: -178px 0; }
#contact #mainNav .contact a { background: url(../images/shared/nav_contact.gif) no-repeat; background-position: -100px 0; }


/* ------------------------------------------------------------------------------------------------------*/
/* PAGE CONTENT BLOCK / subnav  ---------------------------------------------*/


#subnav {
	width: 225px;
	font-size: 13px;
	color: #FFFFFF;
	line-height: 14px;
	float: left;
	text-align: right;
	margin: 26px 0 0 0;
}


#subnav ul{
	list-style: none;
	padding: 0;
}

#subnav ul li{
	margin: 0 0 13px 0;
	padding: 0;
}

/* Definition and rollover state for "arrow" bullet graphic  */

#subnav ul li a {
	display: block;		/* This is set so that the bullet still lines up at top in subnav elements whose image-text break up into two lines*/
	height: 1%;			/* Fixes IE to not display bullets with a minimum height taller than <li> text when display set to block */ 
	padding: 0 10px 0 0;
}

#subnav a:link		{ color: #017FCD; text-decoration: none; }
#subnav a:visited	{ color: #017FCD; text-decoration: none; }
#subnav a:hover		{ color: #017FCD; text-decoration: none; background: url(../images/shared/listBullet_subNav.gif) right 5px no-repeat; }
#subnav a:active	{ color: #017FCD; text-decoration: none; }
#subnav a:focus		{ outline: 0; }


/* Styles for indicating in subnav list the current page within section */

#subnav ul li a.currentSubSection {
	background: url(../images/shared/listBullet_subNav.gif) right 5px no-repeat;
}

#subnav ul li a.currentSubSection:link { color: #FFFFFF; }
#subnav ul li a.currentSubSection:visited { color: #FFFFFF;}



/* ------------------------------------------------------------------------------------------------------*/
/* PAGE CONTENT BLOCK / MAIN CONTENT  --------------------------------------------------*/

#mainContent {
	float: right;
	width: 520px;
}


/* Definitions for two-column layout  */

#mainContent .col1{
	width: 365px;
	float: left;
}

#mainContent .col2{
	width: 115px;
	float: right;
	margin: 0;
	padding-right: 20px;
	/*background-color: #9999CC;*/
}

#mainContent .col2 .photoMontage { position: relative; }
#home .photoMontage { width:125px; margin:-15px -9px 10px -5px; }
#about .photoMontage { width:126px; margin:-8px -20px 10px 5px; }
#about.km_overview .col2 .photoMontage {  }

#mainContent.km_location .col1{
	width: 495px;
}

#mainContent.km_location #locationMap{
	width: 260px;
	float: left;
	margin-right: 20px;
}



/* ------------------------------------------------*/
/* All text styles for Main Text Block area -------*/


#mainContent h1 {
	font-family: "Gill Sans", Verdana, Arial, Helvetica, sans-serif;
	font-size: 16px;
	line-height: 17px;
	letter-spacing: .04em;
	font-weight: bold;
	margin: 0 0 6px 0;
	color: #FCDD72;
}

#mainContent .col1 h2 {
	font-size: 13px;
	line-height: 15px;
	font-weight: bold;
	margin: 0 0 6px 0;
	color: #FFC54C;
}

#mainContent .col2 h2 {
	font-size: 11px;
	line-height: 13px;
	font-weight: bold;
	margin: 0 0 3px 0;
	color: #FFC54C;
}

#mainContent h3 {
	margin: 0 0 6px 0;
	font-size: 11px;
	line-height: 13px;
	font-weight: bold;
	color: #FFFFFF;
}

/* Used on the Schedule page */
#mainContent h4 {
	margin: 8px 0 0 0;
	font-size: 12px;
	line-height: 13px;
	font-weight: bold;
	color: #FFFFFF;
}

#mainContent p {
	margin: 0 0 14px 0;
	font-size: 11px;
	line-height: 15px;
	color: #FFFFFF;
}


#mainContent ul {
 	list-style-type: none;
	padding: 0;
	margin: 0 0 14px -3px;
	font-size: 10px;
	line-height: 14px;	
	color: #4B7173;
}

#mainContent li {
	margin: 8px 0 4px 0;
	background-image:url(../images/shared/listBullet.gif);
	background-repeat: no-repeat;
	background-position: .4em .4em;
	padding-left: 13px;
}


#mainContent .horizRule {
	margin: 0 0 10px 0;
	font-size: 6px;
	line-height: 6px;
	background: url(../images/shared/horizRule_dotted.gif) repeat-x center;
}


/* Used to indicate phone/fax/email markers in the text blocks on the Contact page */

.indicatorLetter {
	font-size: 10px;
	font-weight: bold;
	color: #009FA8;
}

#kmLogo {
	position: relative;
	width: 635px;
	padding-left: 135px;
	margin: -135px auto 20px auto;
	text-align: left;
}

#kids {
	position: relative;
	width: 760px;
	padding-right: 10px;
	margin: -135px auto 10px auto;
	text-align: right;
}



/* -------------------------------------------------------------------------------------------------------*/
/* FOOTER BLOCK  -----------------------------------------------------------------------------------------*/

#footerBlock p {
	width: 520px;
	padding-left: 250px;
	margin: 0 auto 3px auto;
	text-align: left;
	color: #FCD772;
	font-size: 9px;
	line-height: 10px;
}

#footerBlock a:link {
	color: #FCD772;
	text-decoration: none;
}
#footerBlock a:visited {
	color: #FCD772;
	text-decoration: none;
}
#footerBlock a:hover {
	color: #FCD772;
	text-decoration: none;
	background: url(../images/shared/linkStyle.gif) bottom repeat-x;
}
#footerBlock a:active {
	color: #FCD772;
	text-decoration: none;
}
