.program{
	padding: 10px 0;
}
.program, .program *{
	color: #000;
}
h1{
	font-size: 1em;
	font-style: italic;
	margin: 0.5em 0;
	border-bottom: 1px solid #ccc;
}
h2{
	font-size: .9em;
	font-style: italic;
	margin: 0.5em 0;
	border-bottom: 1px solid #ccc;
}

.programlist ul{
	margin: 0;
	padding: 0;
	font-size: 0.8em;
	width: 49%;
	float: left;
}
.program_meta{
	font-size: 0.8em;
	margin: 0 0 0.5em 0;
}
.programlist li{
	margin: 0 0 0.25em 2em;
	padding: 0;
}
.programlist h3{
	margin: 0;
	padding-top: 1em;
	border-bottom: 1px solid #ccc;
	clear: both;
}
.outline{
	font-size: 0.8em;
	overflow: hidden;
	_height: 1%;
}
.outline ol{
	margin: 0;
	padding: 0;
	list-style: none;
	float: left;
	clear: left;
	width: 240px;
}
.programlist ul.right, .outline ol.right{
	float: right;
	clear: right;
}
h3, h4{
	font-size: 1em;
	font-weight: bold;
	margin: 0 0 1em 0;
}
.outline ol ol{
	margin: 0 0 1em 1em;
	padding: 0;
	list-style: decimal;
	float: none !important;
	width: auto;
}
h3{
  counter-reset: section;
}
h4{
  counter-reset: item;
}
h4:before{
	content: counter(section) ". ";
  counter-increment: section 1;
  display: block;
  float: left;
  width: 20px;
  height: 16px;
  text-align: right;
  margin: 0 0 -16px -24px;
}
ul.letters{
	list-style: none;
	height: 20px;
	padding: 0;
	margin: 0;
	font-size: 0.8em;
}
ul.letters li{
	float: left;
	padding: 0 0.5em;
	margin: 0;
}
.outline ol > li{
	list-style: none;
	display: block;
}
.outline li li li{
}
.outline li li li:before{
  content: counter(section) "." counter(item) " ";
  counter-increment: item 1;
  display: block;
  float: left;
  width: 20px;
  text-align: right;
  margin: 0 0 -16px -24px;
}
.outline li{
	margin: 0;
	padding: 0;
}
.outline li li{
	margin: 0 0 0 1em;
}
