.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}
.clearfix {
    display: inline-block;
}
html[xmlns] .clearfix {
    display: block;
}
* html .clearfix {
    height: 1%;
}
.clear {
  clear: both;
}

body {
	font-family: "Verdana";
	font-size: small;
	margin: 0;
}

a {
	color: #2973E2;
	font-weight: bold;
}

h1 {
	margin-top: 0;
/*	padding-left: 30px;*/
	color: #b91439;
}
h1 a {
	color: #b91439;
}
h1 .sub {
/*	float: right;*/
	font-size: 0.5em;
	color: #BA5F73;
/*	font-style: italic;*/
	
}

h2 {
	margin-top: 40px;
	font-size: 1.2em;
	color: #333;
	padding: 5px 15px;
	background: #ffe090;
	color: #111;
}


p {
	font-size: 1.2em;
	color: #333;
}

.warning {
	border: 1px solid #ED2164;
	padding: 1em;
	margin-bottom: 2em;
	background: #F3D0D0;
	color: #C33;
	font-weight: bold;
}
.warning h3 {
	margin: 0 0 10px 0;
}

html #footer a.fb_share_link {
	padding: 2px 0 0 20px;
	height:16px;
	background:url(http://static.ak.fbcdn.net/images/share/facebook_share_icon.gif?7:26981) no-repeat top left;
	font-weight: normal;
	text-decoration: none;
	font-size: 0.9em;
	color: #3b5998;	
}
html #footer a.fb_share_link:hover {
	text-decoration: underline;
}

/*-------------------------------------------------
=Auto Complete
-------------------------------------------------*/
div.auto_complete {
  width: 350px;
  background: #fff;
}

div.auto_complete ul {
  border:1px solid #888;
  margin:0;
  padding:0;
  width:100%;
  list-style-type:none;
}

div.auto_complete ul li {
  margin:0;
  padding:3px;
	text-align: left;
	font-size: 1.2em;
}

div.auto_complete ul li.selected {
  background-color: #ffb;
}

div.auto_complete ul strong.highlight {
  color: #800;
  margin:0;
  padding:0;
}


/*-------------------------------------------------
=Site Structure
-------------------------------------------------*/

#wrapper {
	width: 980px;
	margin: 0 auto;
}
#header {
	position: relative;
	height: 60px;
	padding: 10px;
}
#header #siteTitle {
	position: absolute;
	top: 5px;
	left: 10px;
	font-size: 2em;
}
#header #siteTitle a {
	color: #333;
	text-decoration: none;
}
#header #nav {
	position: absolute;
	bottom: 0;
}
#header ul#nav {
	position: absolute;
	bottom: 10px;
	list-style: none;
	display: inline;
	margin: 0;
	padding: 0;
}
#header ul#nav li {
	float:left;
	margin-right: 20px;
	font-size: 1.5em;
}
#header ul#nav li a {
	text-decoration: none;
	padding: 5px 10px;
}
#header ul#nav li a:hover {
	background-color: #2973E2;
	color: white;
}
#header ul#nav li a.shortlist {
	padding-left: 38px;
	background: url(/images/favourite.png) no-repeat 5px center;
}
#header ul#nav li a.shortlist:hover {
	background-color: #2973E2;
}

#header .search {
	text-align: right;
	padding: 30px 10px 0px 0;
}


#main {
	padding: 20px;
	border-top: solid 3px #777;
	border-bottom: solid 3px #777;
	background: white;
}
#main.alternate {
	background: #ddd;
}
#footer {
	padding: 10px 0;
	text-align: center;
	color: #444;
}
#footer a {
	color: #555;
}


/*-------------------------------------------------
=Filters
-------------------------------------------------*/
#filters {
	background: #444;
	padding: 10px;
	margin-bottom: 15px;
}
#filters ul {
	list-style: none;
	display: inline;
	margin: 0;
	padding: 0;
}
#filters ul li.showme {
	font-size: 1.2em;
	font-weight: bold;
	color: #eee;
}
#filters ul li {
	float:left;
	margin-right: 20px;
}
#filters ul li a {
	padding: 5px 10px;
	color: #ccc;
}
#filters ul li.selected a, #filters ul li.selected a:hover {
	text-decoration: none;
	background: #eee;
	color: #b91439;
}
#filters ul li a:hover {
	background: #eee;
	color: #333;
}


ul.jump {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.jump li {
	display: inline;
	margin: 0 5px;
	font-weight: bold;
}
ul.jump li span {
	color: #444;
}

/*-------------------------------------------------
=Home Page
-------------------------------------------------*/
#about p {
	font-size: 1.5em;
}


/*-------------------------------------------------
=Home Page
-------------------------------------------------*/

#home h1 {
	text-align: center;
	color: #F4900E;
	margin: 40px 0 20px 0;
}

#home #welcome {
	padding: 20px;
	font-size: 1.7em;
	font-weight: bold;
	color: #333;
	text-align: center;
}

#home #search {
	text-align: center;
}
#home #search div {
	padding: 5px 0;
}

#search .searchfield {
/*	width: 300px;*/
	color: #333;
	font-size: 1.5em;
	border: solid 2px #777;
	padding: 5px;
}
#search .searchbutton {
	border: solid 2px #777;
	background: #ffe090;
	font-weight: bold;
	color: #333;
	font-size: 1.2em;
	padding: 4px 6px;
}
#home #search .searchbutton {
	margin-top: 10px;
	font-size: 1.2em;
	padding: 5px 30px;
}
#home div.auto_complete ul li {
	font-size: 1.5em;
}

.search .searchbutton:hover {
	cursor: pointer;
	color: black;
}

#home #list {
	
}
#home table#list {
	width: 920px;
	margin: 0 10px;
	border-collapse: collapse;
}
#home table#list td {
	width: 90px;
	vertical-align: top;
}
#home table#list td ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
#home table#list td li {
	padding: 4px 0;
/*	border: solid 1px black;*/
}

/*-------------------------------------------------
=Courses
-------------------------------------------------*/
.subject {
	margin-bottom: 10px;
}

div#offerings {
	margin: 5px 0 15px 0;
}

div.course {
	background: white;
	border-bottom: solid 2px #bbb;
	border-right: solid 2px #bbb;
	margin-bottom: 20px;
	font-size: 1.1em;
}
div.course .header {
	padding: 10px;
	font-weight: bold;
	font-size: 1.1em;
	background: #ffe090;
}
div.course .header .code {
	float: left;
	width: 130px;
	color: #111;
}
div.course .header .name {
	margin-left: 130px;
	color: #111;
}
div.course .header .instructionTypes {
	float: right;
	color: #444;
}
div.course .toolbar {
	padding: 5px 10px;
	font-size: 0.9em;
	background: #eee;
	border-bottom: solid 1px #ccc;
}
div.course .toolbar a {
	font-weight: normal;
}
div.course .toolbar .shortlist {
	float: left;
	position: relative;
}
div.course .toolbar .shortlist .star {
	position: absolute;
	top: -38px;
	left: -38px;
	height: 28px;
	width: 28px;
	background: url(/images/favourite.png) no-repeat;
}
div.course .toolbar .links {
	float: right;
}
div.course .description {
	padding: 10px;
}
div.course .description .noDescription {
	font-weight: bold;
	font-style: italic;
	color: #777;
}
div.course .notes {
	padding: 10px;
	font-style: italic;
	background: #ccc;
	border-top: solid 1px #bbb;
	color: #333;
}
div.course .notes span {
	font-weight: bold;
}

div.course .requisites, #course .requisites {
	font-style: italic;
	color: #333;
}
.requisites div span {
	font-weight: bold;
}
.requisites .prerequisites {
/*	background: #CCF4CE;*/
/*	border-top: solid 1px #87E08B;*/
	margin-top: 3px;
	border-left: solid 15px #87E08B;
	padding: 5px 10px;
}
.requisites .corequisites {
/*	background: #CCD4F4;*/
/*	border-top: solid 1px #879AE0;*/
	margin-top: 3px;
	border-left: solid 15px #879AE0;
	padding: 5px 10px;
}
.requisites .antirequisites {
/*	background: #F4CCCC;*/
/*	border-top: solid 1px #E08787;*/
	margin-top: 3px;
	border-left: solid 15px #E08787;
	padding: 5px 10px;
}

#course .info {
	font-size: 1.2em;
	padding: 0 20px;
}
#course .description {
	padding: 10px;
}
#course .notes {
	padding: 10px;
	font-style: italic;
	background: #eee;
	border-top: solid 1px #bbb;
	color: #333;
}
#course .notes span {
	font-weight: bold;
}
#course table.sections td.professor {
	width: 320px;
}
#course .professors {
	padding: 0 10px;
}
#course .professors .professor {
	margin-bottom: 10px;
}


/*-------------------------------------------------
=Course Offerings
-------------------------------------------------*/
.course_offering .courseInfo {
	float: right;
	width: 328px;
	background: #ddd;
}
.course_offering .courseInfo .notes {
	background: #aaa;
}

.course_offering .courseInfo .books {
	padding: 10px;
	background: white;
}

.course_offering .scheduleNotes {
	padding: 10px 20px 0 20px;
	font-weight: bold;
	color: #333;
}

table.sections {
	width: 920px;
	margin: 10px 8px 10px 10px;
	font-weight: bold;
	color: #333;
	border-collapse: collapse;
}
table.sections.compact {
	width: 590px;
}
table.sections tr.instruction_type td {
	font-size: 1.2em;
	color: #333;
	padding: 5px;
	background: #ccc;
}
table.sections tr.heading td {
	background: #eee;
	color: #777;
	padding: 5px;
	font-size: 0.8em;
}
table.sections td {
	padding: 3px 5px;
	vertical-align: top;
}
table.sections tr.section:hover td {
	background: #ffefc7;
}
table.sections td.tba {
	color: #999;
}
table.sections td.professor {
	width: 200px;
}
table.sections td.times {
	width: 170px;
}
table.sections td.enrollment {
	width: 65px;
	color: #3B9A47;
	text-align: right;
}
table.sections td.enrollment.full {
	color: #E94A4A;
	text-align: right;
}
table.sections td.section {
	width: 30px;
	text-align: right;
}
table.sections td.class_number {
	width: 45px;
	color: #999;
	text-align: right;
}
table.sections td.associated {
	width: 50px;
	text-align: right;
}
table.sections td.related_1 {
	width: 50px;
	text-align: right;
}
table.sections td.related_2 {
	width: 50px;
	text-align: right;
}
table.sections td.location {
	width: 100px;
}

table.sections tr.reservation td {
	font-size: 0.9em;
	font-weight: normal;
}
table.sections tr td.note {
	padding-left: 20px;
	color: #666;
}


table.sections td.times span.daysOfWeek {
	font-size: 0.8em;
}
.daysOfWeek span {
	visibility: hidden;
}
span.daysOfWeek.monday span.monday {
	visibility: visible;
}
span.daysOfWeek.tuesday span.tuesday {
	visibility: visible;
}
span.daysOfWeek.wednesday span.wednesday {
	visibility: visible;
}
span.daysOfWeek.thursday span.thursday {
	visibility: visible;
}
span.daysOfWeek.friday span.friday {
	visibility: visible;
}

/*-------------------------------------------------
=Professors
-------------------------------------------------*/

.professor {
	margin-bottom: 5px;
}

table.sections.professorSections {
	width: 920px;
}
table.sections.professorSections tr.heading td {
	background: #ccc;
	color: #444;
}
table.sections.professorSections td {
	padding: 5px;
}
table.sections.professorSections td.instructionType {
	width: 90px;
}
table.sections.professorSections td.course {
	width: 300px;
}

#professor p {
	padding: 0 10px;
}
#professor .courses {
	padding: 0 10px;
}
#professor .courses .course {
	border: none;
	margin: 0 0 10px 0;
}

/*-------------------------------------------------
=Books
-------------------------------------------------*/

.book {
	background: url(/images/book.png) no-repeat;
	padding-left: 20px;
	margin-bottom: 5px;
}