a:focus {outline-offset: -1px}
img { border:0; }
.clear:after {
    content:".";
    display:block;
    height:0;
    clear:both;
    visibility:hidden;
}
.clear { display: inline-block; }
/* Hides from IE-mac \*/
* html .clear { height: 1%; }
.clear { display: block; }
/* End hide from IE-mac */

/* PAGINATION */
.pagination { padding-top:30px; font-size:12px; clear:both; }
	.pagination a { color:#000; text-decoration:none; }
	.pagination a:hover { color:#000; background:#ccc; }
	.disabled, .current, .pagination a { padding:4px; border:1px solid #000; }
	.disabled, .current { border:0; }

/* STRUCTURE */
* { margin: 0; padding: 0; }
html { background:#5e5e5e; }
body { width:970px; margin:0 auto; font: 11px Verdana, Arial, sans-serif; position:relative; }
ul { list-style: disc inside none;}

/* FLASH */
p.flash { background-color:#fff; margin:10px 50px 0 50px; padding:15px; }
p.error { border:2px solid #9a2e45; }
p.notice { border:2px solid green; }

/* HEADER */
#header_left_shadow { width:920px; height:113px; background:url(../images/tl.jpg) top left no-repeat; padding:0 0 0 50px; }
#header_right_shadow { height:113px; background:url(../images/tr.jpg) top right no-repeat; padding:0 50px 0 0; }
#header {
	background:url(../images/tm.jpg) top right repeat-x;
	width:870px;
	height:113px;
}
	#header img { float:left; padding:33px 0 0; }
	#header span {
		float:left;
		font-size:15px; color:#fff;
		margin-left:10px; padding-top:50px;
		text-align:center;
	}

/* NAV */
#nav {
	float:right;
	margin:0; padding:51px 0 0 0;
	list-style: none;
}
	#nav li:hover > a { background:#3c0204; -webkit-border-radius: 6px; -moz-border-radius: 6px; }
	#nav a { display:block; }
	#nav li {
		float:left;
		margin:0; padding:0;
		display:inline; position:relative; z-index:101;
	}
		#nav li a { padding:10px 6px; font-size: 12px; color:#fff; text-decoration:none; text-transform:uppercase; }
		#nav li div { width:100px; position: absolute; left:-999em; }
		#nav li:hover div, #nav li.sfhover div { left:auto; top:15px; }

/* CONTENT */

#content_left_shadow { width:935px; min-height:950px; background:url(../images/bl.jpg) top left repeat-y; padding:0 0 0 35px; }
#content_right_shadow { min-height:950px; background:url(../images/br.jpg) top right repeat-y; padding:0 35px 0 0; }
#content {
	width:900px; min-height:950px;
	background:#fff;
	padding-top:15px;
	position:relative;
	padding-bottom:65px;
}
	#slideshow {
		background:#fff;
		padding:5px 0;
		border-top:1px solid #9a2e45; border-bottom:1px solid #9a2e45;
	}
	#horizontal_carousel {
		width:900px; height:192px;
		position:relative;
	}
	#horizontal_carousel .container {
		width:860px; height:192px;
		position:relative;
		float:left;
		overflow:hidden;
	}
	#horizontal_carousel ul {
		width:100000px; height:192px;
		position:relative;
	}
	#horizontal_carousel ul li {
		width:310px; height:192px;
		float:left;
		list-style-image:none; list-style-position:outside; list-style-type:none;
		text-align:center;
	}
	#horizontal_carousel .previous_button {
		width:20px; height:192px;
		float:left;
		background:#ccc; cursor:pointer;
		z-index:100;
		text-align:center;
		line-height:192px;
	}
	#horizontal_carousel .previous_button_over { background:#ddd; }
	#horizontal_carousel .previous_button_disabled { background:#eee; cursor:default; }
	#horizontal_carousel .next_button {
		width:20px; height:192px;
		float:left;
		background:#ccc; cursor:pointer;
		z-index:100;
		text-align:center;
		line-height:192px;
	}
	#horizontal_carousel .next_button_over { background:#ddd; }
	#horizontal_carousel .next_button_disabled { background:#eee; cursor:default; }

#home_bars {
	width:900px;
	margin-bottom:15px;
	overflow:hidden;
}

.column {
	float:left;
	margin-left:15px;
	overflow:hidden;
}

#left_column { width:261px; min-width:261px; max-width:261px; }
#right_column { width:261px; min-width:261px; max-width:261px; }
#middle_column { width:333px; min-width:333px; max-width:333px; margin:0; }
	#middle_column .bar_header { width:293px; margin:10px auto; }

.v_height {
	border-right:1px solid #9f9f9f;
	min-height:465px;
	padding-right:15px;
}

#middle_v_height { padding:0; }

.bar_header {
	font-size:15px; color:#801616;
	margin:10px 0;
}

.whts_on_holder { margin-bottom:10px; }
	.whts_on_holder img {
		border:1px solid #790b0a;
		padding:1px;
	}
	.whts_on_holder p {
		width:245px;
		color:#862627; font-size:11px;
		padding:5px 0;
	}
		.whts_on_holder p a { color:#862627; }

.v_height span {
	color:#862627;
	font-size:10px; text-align:center;
	margin-top:10px;
	display:block;
}
	.v_height span a { color:#862627;  }
	.v_height span a:hover { color:#686868; }
		
p.column_footer {
	color:#862627;
	font-size:10px; text-align:center;
	margin-top:10px;
	display:block;
}
	p.column_footer a { color:#862627; }
		p.column_footer a:hover { color:#686868; }

#video {
	width:289px;
	padding:1px; border:1px solid #790b0a;
	margin:0 auto;
}

#middle_v_height .buy_tickets {
	background:url(../images/buy-tickets-bg.gif) top left no-repeat;
	margin:0 auto;
	margin-top:10px;
	color:#fff;
}
	#middle_v_height .buy_tickets a:hover { color:#3c0204; }
	
#to_purchase {
	width:275px; height:33px;
	padding:5px 8px 4px;
}

#purchase_online {
	width:291px; height:42px;
	text-align:center;
}
#purchase_online a {
	display:block;
	color:#fff;
	font-size:15px; line-height:42px;
}
	#purchase_online a:hover { color:#3c0204; }

#location {
	width:275px; height:80px;
	background:url(../images/location-bg.gif) top left no-repeat;
	margin:0 auto;
	margin-top:10px; padding:8px;
	position:relative;
}
	#location p { font-size:12px; color:#fff; position:absolute; margin:0; padding:0; text-align:left; }
		#location p a {color:#fff;}
		#location p a:hover {color:#3c0204;}
		#location p strong { font-size:13px; }
	#location p.address { top:10px; }
	#location p.phone { bottom:10px; }

#footer {
	width:864px;
	background:url(../images/footerbg.jpg) top left repeat-x #878787;
	padding:18px;
	padding-bottom:65px;
	margin-bottom:-65px;
}
	#footer_header { overflow:auto; }
		#footer_header div.bar_header { float:left; margin:0; line-height:40px; }
		#footer_header span { float:right; font-size:10px; line-height:40px; margin-right:8px; }
		#footer_header img { float:right; margin:8px 0; }

div.month-schedule { }
  div.month-schedule h2 {
    font-size:11px; color:#323232;
    padding-bottom:5px; 
    margin-left:25px;
  }
  div.month-schedule a { color:#801616; }

div.week-schedule {
  width:861px;
  margin:0 auto;
  margin-bottom:10px;
  overflow:auto;
}
  div.week-schedule h2 {
    font-size:11px; color:#323232;
    padding-bottom:5px;
  }
  div.week-schedule h2 a { color:#323232; }
  div.week-schedule h2 a:hover { color:#3c0204; }

table.monthly_calendar { width:861px; margin:0 auto; border-spacing:0 10px; }
  table.monthly_calendar th,
  table.monthly_calendar td { border:0; vertical-align:top; width:122px; margin-left:1px; }
  table.monthly_calendar th { }
  table.monthly_calendar td.null { opacity:0.5 !important;}
    table.monthly_calendar td.null .navigation { height:100%; line-height:40px; text-align:center; }
    table.monthly_calendar td.null .navigation a { display:block; color:#801616; }
  
div.weekday {
  width:122px;
  float:left;
}
  div.weekday div.info {
    width:106px; height:8px;
    background:#e7e7e7;
    color:#5d5d5d; line-height:8px;
    margin:0 1px 2px 0; padding:0 8px 8px 8px;
  }
  div.alt div.info { background:#e0e0e0; }
    div.weekday div.info span { float:left; }
    div.weekday div.info p { float:right; }
  div.weekday div.top-left-corner {
    width:122px; height:8px;
    background:url(../images/weekday-top-left.gif) top left no-repeat;
  }
  div.weekday div.top-right-corner {
    width:122px; height:8px;
    background:url(../images/weekday-top-right.gif) top left no-repeat;
  }
  div.weekday div.top-spacer {
    width:122px; height:8px;
    background:#e7e7e7;
  }
  div.alt div.top-spacer { background:#e0e0e0; }
  div.weekday div.weekday-content {
    width:106px; min-height:40px;
    margin:0 1px 0 0; padding:8px 8px 0 8px;
    background:#e7e7e7;
  }
  div.alt div.weekday-content { background:#e0e0e0; }
    div.weekday-content p {
      font-size:10px; color:#5D5D5D;
      padding-bottom:2px;
    }
    div.weekday-content p.timeslot-icon {
      text-align:center;
      padding:3px 0;
      margin-bottom:1px;
    }
    div.weekday-content ul {
      list-style: none;
      padding-bottom:7px;
    }
      div.weekday-content ul li { font-size:10px; line-height:13px; }
        div.weekday-content ul li a { color:#801616; text-decoration:underline; }
  div.weekday div.bottom-corners {
    width:122px; height:8px;
    background:url(../images/weekday-even-bottom.gif) top left no-repeat;
  }
  div.alt div.bottom-corners { background:url(../images/weekday-odd-bottom.gif) top left no-repeat; }

/* top news posts cssbox */

.post, .post_body, .post_head, .post_head h2 {
	background: transparent url(../images/post-bg.gif) no-repeat bottom right;
} 
.post {
	width: 250px !important; /* intended total box width - padding-right(next) */
	width: 250px; /* IE Win = width - padding */
	padding-right: 10px; /* the gap on the right edge of the image (not content padding) */
	/* mine */
	margin-bottom:10px;
}
.post_head {
	background-position: top right;
	margin-right: -10px; /* pull the right image over on top of border */
	padding-right: 10px; /* right-image-gap + right-inside padding */
}
	.post_head h2 {
		background-position: top left;
		padding: 6px 0 0px 10px; /* padding-left = image gap + interior padding ... no padding-right */
		height: auto !important; height: 1%; /* IE Holly Hack */
		/* mine */
		color:#fff; font-size:12px; font-weight:normal; line-height:18px;
	}
.post_body {
	background-position: bottom left;
	margin-right: 0; /* interior-padding right */
	padding: 5px 0 11px 10px; /* mirror .post_head right/left */	
}
	.post_body p a { color:#944040; font-style:italic; font-size:10px; text-decoration:underline; }
	.post_body p a:hover { color:#3c0204; }

#more_news {
	width:90px; height:25px;
	background: transparent url(../images/more-news-bg.gif) no-repeat;
	text-align:center; line-height:25px;
}
	#more_news a { font-size:11px; color:#944040; text-decoration:none; font-weight: bold; }
	#more_news a:hover { color:#3c0204; }

/* subnav rounded box */

.sub_nav, .sub_nav_body, .sub_nav_head { background: transparent url(../images/subnav_bg.gif) no-repeat bottom right; } 
.sub_nav {
	width: 90px !important; /* intended total box width - padding-right(next) */
	width: 80px; /* IE Win = width - padding */
	padding-right: 10px; /* the gap on the right edge of the image (not content padding) */
	margin: 0 auto; /* use to position the box */
}
.sub_nav_head {
	background-position: top right;
	margin-right: 0; /* pull the right image over on top of border */
	padding-right: 0; /* right-image-gap + right-inside padding */
}
	.sub_nav_head h2 {
		padding: 6px 0 0 6px; /* padding-left = image gap + interior padding ... no padding-right */
		height: auto !important; height: 1%; /* IE Holly Hack */
	}
.sub_nav_body {
	background-position: bottom left;
	margin-right: 0; /* interior-padding right */
	padding: 0 0 10px 6px; /* mirror .sub_nav_head right/left */
	/* mine */
	margin-top:6px;
}
	#nav div.sub_nav_body p {
		font-weight:normal;
		text-transform:none;
		font-size:13px;
		margin:0; padding:0;
		width:88px;
	}
		#nav div.sub_nav_body p a {
			font-weight:normal;
			text-transform:none;
			font-size:13px;
			margin:0; padding:0 0 2px 0;
			border-bottom:1px solid #3D0000;
		}
			#nav div.sub_nav_body p a:hover { border-bottom:1px solid #fff; }

/* PAGE */

#page { }
	#page h1 {
		font-size:16px; color:#801616;
		margin-bottom:10px;
		clear:both;
	}
	#page h1 a { color:#801616; text-decoration: none; }
		#page h1 a:hover { text-decoration: underline; }
	#page h2 {
		font-size:12px; color:#686868;
		margin-bottom:5px;
	}
	#page h2 a { color:#686868; }
		#page h2 a:hover { text-decoration: underline; }
	#page h3 {
		font-size:12px;
	}
	#page p, #page ul {
		color:#676767;
		padding-bottom:8px;
	}
		#page p a, #page ul a { color:#676767; }
	#page ul { list-style: none; }

#page div.post_holder {
	overflow:auto;
}
	#page div.post_holder div {
		width:765px;
		float:left;
		overflow:auto;
		border-bottom: 1px solid #B5B5B5;
		padding: 15px;
	}
		#page div.post_holder div img { float:right; margin:0 0 0 15px; }
		#page div.post_holder div h1 { margin:0; }
			#page div.post_holder div h1 a { font-size:16px; color:#801616; text-decoration:none; }
			#page div.post_holder div h1 a:hover { text-decoration:underline; }
		#page div.post_holder div p { text-align: justify; }
		#page div.post_holder p.created_at {
			width:45px;
			background:#790b0a;
			float:left;
			color:#fff; font-size:12px; font-weight:bold; line-height:12px; text-align:center;
			margin:0; padding:0; margin-right:30px; padding:5px 0;
		}
		#page div.post_holder p.created_at_spacer {
			width:45px;
			float:left;
			margin:0; padding:0; margin-right:30px; padding:5px 0;
		}

#breadcrumb { margin-bottom:10px; padding:0 25px; overflow:auto; }
	#breadcrumb span { color:#80191a; float:left; margin-right:4px; }
	#breadcrumb a { color:#80191a; text-decoration:none; }
	#breadcrumb a:hover { text-decoration:underline; }
	#breadcrumb ul { float:right; margin:0; padding:0; list-style:none; }
		#breadcrumb ul li { margin:0; padding:0 6px; display:inline; border-right:1px solid #878787; }
			#breadcrumb ul li a { color:#565656; }

#page_header {
	padding:25px 25px 17px 25px;
	border-top:1px solid #9f9f9f; border-bottom:1px solid #9f9f9f;
	overflow:auto;
}
	#page_header object { margin-bottom:15px; }
	#page_header h1 { clear:both; }
	#page_header img {
		float:left;
		padding:1px; margin:0 20px 8px 0;
		border:1px solid #790b0a;
	}
	#page_header table {
		border-collapse:collapse;
		color:#676767;
	}
	#page_header table td, #page_header table th {
		padding:10px;
		text-align:center;
	}
	#page_header table a { color:#950000; text-decoration:none; }
		#page_header table a:hover { text-decoration:underline; }
		#page_header th { color:#801616; font-size:16px; background:#fff; }
		#page_header tr:hover { background:#fff; }
	#page_header table img { float:none; margin:0; }

	#page_header #class_schedule { width:100%; border:2px solid #000; }
		#page_header #class_schedule th, td { border:1px solid #000; }
		#page_header #class_schedule th { font-size:12px; color:#676767; }
		#page_header #class_schedule tr.class_group_header td { background-color:#edc; border:0; font-size:16px; color:#801616; font-weight:bold; }
		#page_header #class_schedule tr.class_header td { background-color:#eeeeed; font-size:14px; color:#801616; }

/* TWO COLUMN */

#two-column { overflow:auto; }
	#left-column { width:565px; padding-right:25px; float:left; overflow:auto; }
		#left-column #interview { clear:both; }
		#left-column h1 { font-size:16px; color:#801616; font-weight:normal; }
		#left-column h2 { font-size:12px; color:#801616; }
		#left-column #reviews { margin:10px 0 10px 10px; }
		#left-column p { color:#5b5b5b; line-height:16px; padding:0 0 8px; }
		#left-column #upcoming-shows { color:#7f1819; margin-bottom:10px; }
			#left-column #upcoming-shows p { color:inherit; padding:0; }
		#left-column img { margin:0 auto; margin-bottom:15px; float:none; }
		#left-column img.headshot { width:110px; height:164px; margin: 0 10px 8px 0; float:left; }
		#left-column div { overflow:auto; }
		#left-column div span { float:left; margin:0; line-height:24px; margin-right:5px; }
		#left-column div img { float:left; border:0; padding:0; }
		
	#right-column {
		width:244px; /* -1 for border */
		float:left;
		padding:0 0 0 15px;
		border-left:1px solid #9f9f9f;
	}
		#right-column a { display:block; color:#323232; }
		#right-column p { padding:8px 0; }
		#right-column span {
			display:block;
			color:#313131; font-weight:bold;
			margin-bottom:3px;
		}

#modal_overlay {  
	background-color:#000;
}

#modal_container {
	position:relative;
    padding:5px;
    background-color:#fff;
    border:1px solid #666;
    overflow:auto;
    color:#333;
}

#modal_container p {
	padding:10px 0;
	font-size:16px;
}

#blackhole {
	position:absolute;
	bottom:15px;
	right:15px;
}
	#blackhole a {
		opacity:.5;
		font-size:10px;
		display:block;
		background-color:#ccc;
		padding:0.833em 1em;
		-webkit-border-radius:1em;
		-moz-border-radius:1em;
		border-radius:1em;
		text-decoration:none;
		color:#333;
	}
		#blackhole a:hover { opacity:1; }