/*Fonts*/
@font-face {
    font-family: "ProximaNovaT-Thin";
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/1415F2_0.eot?#iefix") format("embedded-opentype"), url("../fonts/1415F2_0.woff") format("woff"), url("../fonts/1415F2_0.ttf") format("truetype"), url("../fonts/1415F2_0.svg#wf") format("svg");
}
@font-face {
    font-family: "ProximaNova-Regular";
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/1415F2_1.eot?#iefix") format("embedded-opentype"), url("../fonts/1415F2_1.woff") format("woff"), url("../fonts/1415F2_1.ttf") format("truetype"), url("../fonts/1415F2_1.svg#wf") format("svg");
}
@font-face {
    font-family: "ProximaNova-Semibold";
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/1415F2_2.eot?#iefix") format("embedded-opentype"), url("../fonts/1415F2_2.woff") format("woff"), url("../fonts/1415F2_2.ttf") format("truetype"), url("../fonts/1415F2_2.svg#wf") format("svg");
}
@font-face {
    font-family: "ProximaNova-Light";
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/1415F2_3.eot?#iefix") format("embedded-opentype"), url("../fonts/1415F2_3.woff") format("woff"), url("../fonts/1415F2_3.ttf") format("truetype"), url("../fonts/1415F2_3.svg#wf") format("svg");
}
@font-face {
    font-family: "ProximaNova-Bold";
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/1415F2_4.eot?#iefix") format("embedded-opentype"), url("../fonts/1415F2_4.woff") format("woff"), url("../fonts/1415F2_4.ttf") format("truetype"), url("../fonts/1415F2_4.svg#wf") format("svg");
}

body {
	color: #565656;
	font-family: "ProximaNova-Regular", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 100%;
	line-height: 1.5;
}

/*Accessibility*/
.accessible {
	padding: 10px;
	position: absolute;
	left: -9999em;
	background: #fff;
}
.accessible ul {
	text-align: right;
}
.accessible ul li {
	margin: 0 0 0 .5em;
	display: inline;
}
.accessible.noscript {
	position: relative;
	left: 0;
}

/*Google Search Results*/
#content .gcs-pagination {
    text-align: left;
}
#content .gcs-pagination a,
#content .gcs-pagination .current {
    padding: 5px 12px;
    font-size: 0.75em;
    color: #333;
    text-decoration: none;
    background-color: #f5f5f5;
    background-image: none;
    background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
    background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
    background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
    border: 1px solid #bbbbbb;
    display: inline-block;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}
#content .gcs-pagination .current {
    color: #fff;
    background-color: #999;
    background-image: none;
}

/*Google Search Results*/
#content .gcs-url {
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    width: 100%;
}
#content .gcs-total  {
    margin: 0 0 1em 0;
    font-style: italic;
}
#content .gcs-result h3 {
    margin: 0;
}



/*Back to top*/
a#totop {
	width: 40px;
	height: 40px;
	display: block;
    background: #670A0A url(../images/top-arrow.png) no-repeat center center;
    position: fixed;
    bottom: 10px;
    right: 10px;
    text-indent: -9999em;
}

/*Core Layout*/
#wrapper,
.wrap {
	margin: 0 auto;
	width: 940px;
}
@media screen and (max-width: 1023px) {
	#wrapper,
	.wrap {
		width: 80%;
	}
}

#container {
	margin: 0 0 20px 0;
	position: relative;
}
#nav-col {
	width: 220px;
	float: left;
}
#nav-col.fixed {
	position: fixed;
	margin: 0;
	top: 15px;
	min-height: 5px;
	border-top: 0;
}
#nav-col.bottom {
	position: absolute;
	bottom: 0;
	padding: 0 0 15px 0;
}

@media screen and (max-width: 1023px) {
	#nav-col {
		width: 25%;
	}
}

#content-col {
	width: 700px;
	float: right;
}
@media screen and (max-width: 1023px) {
	#content-col {
		width: 70%;
	}
}

@media screen and (max-width: 767px) {
	#wrapper,
	.wrap,
	#nav-col,
	#content-col {
		margin: 0;
		width: auto;
		float: none;
	}
	#container {
		padding: 0 15px;
	}
}

/*Header*/
#header {
	margin: 0 0 30px 0;
	padding: 25px 0 30px 0;
	border-top: 5px solid #333;
	border-bottom: 1px solid #ccc;
}

#header .wrap {
	display: flex;
	justify-content: space-between;
}

@media screen and (max-width: 767px) {
	#header {
		margin: 0;
		padding: 0;
		border-top: none;
	}

	#header .wrap {
		flex-direction: column-reverse;
	}
}

#edition {
	flex: 1 0 auto;
	margin: 0.75em 0 0 0;
}

@media screen and (max-width: 767px) {
	#edition {
		margin: 0;
		padding: 20px 15px;
		width: auto;
		float: none;
	}
}

#edition h1 {
	font-size: 2.73125em;
	line-height: 1;
	color: #800000;
}
@media screen and (max-width: 767px) {
	#edition h1 {
		font-size: 2.0625em
	}
}

#edition h1 a {
	color: #800000;
	text-decoration: none;
}

@media screen and (min-width: 768px) {
	#logo {
		flex: 0 0 300px;
	}
}

@media screen and (max-width: 767px) {
	#logo {
		width: auto;
		float: none;
		padding: 7px 15px;
		background: #333;
	}
}

#logo a {
	display: block;
	font-size: 0.9em;
	color: #fff;
	width: 100%;
	height: 74px;
	text-indent: -9999em;
	text-decoration: none;
	text-transform: uppercase;
	background: url(../images/logo.png) no-repeat left center;
	background-image: none, url(../images/logo.svg);
	background-size: 100%;
}
@media screen and (max-width: 1023px) {
	#logo a {
		background-size: 100% auto;
	}
}
@media screen and (max-width: 767px) {
	#logo a {
		padding: 0 0 0 2em;
		width: auto;
		height: 25px;
		display: block;
		text-indent: 0;
		background: url(../images/shield.png) no-repeat left center;
		background-image: none, url(../images/shield.svg);
		background-size: 20px 25px;
	}
}

/*Page Title*/
#page-title {
	margin: 0 0 30px 0;
}
@media screen and (max-width: 767px) {
	#page-title {
		margin: 0 0 15px 0;
		padding: 15px 0;
		border-bottom: 1px solid #ccc;
	}
}

#page-title h2 {
	color: #670A0A;
	font-size: 2.1375em;
	line-height: 1.2;
}
@media screen and (max-width: 767px) {
	#page-title h2 {
		font-size: 1.5em;
		width: 250px;
		float: left;
	}
}

/*Nav Col*/
a#print-btn {
	margin: 0 0 .25em 0;
	padding: 0.4375em 0.625em;
	font-size: 0.83125em;
	display: block;
	color: #800000;
	border: 1px solid #ccc;
	text-decoration: none;
	border-radius: 5px;
}
#cl-menu {
	margin: 0 0 25px 0;
}
@media screen and (max-width: 767px) {
	#cl-menu h1 {
		margin: 0 0 10px 0;
	}
}

#cl-menu ul {
	font-size: 0.83125em;
}
#cl-menu ul ul {
	font-size: 1em;
}
#cl-menu ul li {
	color: #800000;
	line-height: 1.4;
}
#cl-menu ul li a {
	padding: 0.4375em 0.625em;
	color: #800000;
	text-decoration: none;
	display: block;
}
#cl-menu ul ul li a {
	padding: 0.4375em 0.625em 0.4375em 1.875em;
}
#cl-menu ul ul ul li a {
	padding: 0.4375em 0.625em 0.4375em 3.125em;
}
#cl-menu ul li a:hover,
#cl-menu ul li.self > a {
	color: #fff;
	background: #800000;
}
#cl-menu ul ul li a:hover {
	color: #800000;
	text-decoration: underline;
	background: none;
}
#cl-menu ul ul li.self > a {
	color: #800000;
	background: none;
	font-family: "ProximaNova-Semibold", "Helvetica Neue", Helvetica, Arial, sans-serif;
	text-decoration: underline;
}

/*CL Menu Controls - Shows in Mobile Context*/
#cl-menu-control {
	width: 38px;
	float: right;
	display: none;
}
#cl-menu-control a.cl-menu-btn {
	padding: 3px 10px;
	display: block;
	width: 18px;
	background: #DAD9D9 url(../images/icon-cl-menu.png) no-repeat center center;
	text-decoration: none;
	text-indent: -9999em;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

/*Sticky Nav To Top Button*/
#nav-col a.stickytop {
	margin: 5px 0;
	padding: 2px;
	display: none;
	background: #670A0A url(../images/top-arrow.png) no-repeat center center;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	text-decoration: none;
	text-indent: -9999em;
	width: 216px;
}
#nav-col a.stickytop:hover {
	background: #800000 url(../images/top-arrow.png) no-repeat center center;
}
#nav-col a.stickytop.show {
	display: block;
}
#nav-col a.stickytop.hide {
	display: none;
}

/*Banner*/
#banner {
	margin: 0 0 15px 0;
}
#banner img {
	vertical-align: top;
}

/*Breadcrumb*/
#breadcrumb ul {
	margin: 0 0 15px 0;
	font-size: 0.85em;
}
#breadcrumb ul li {
	display: inline;
}
#breadcrumb ul li a {
	color: #07C;
	text-decoration: none;
}
#breadcrumb ul li a:hover {
	text-decoration: underline;
}

/*Search*/
#search {
	padding: 4px;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
}
@media screen and (max-width: 767px) {
	#search {
		margin: 0 0 10px 0;
	}
}

#search label {
	display: none;
}
#search .searchbox {
	background: none;
	color: #555;
	width: 180px;
	float: left;
	border: none;
}
#search .submit {
	text-indent: -9999em;
	border: 0;
	width: 14px;
	height: 18px;
	float: right;
	text-transform: capitalize;
	cursor: pointer;
	background: url(../images/btn-search.png) no-repeat left 4px;
}
#search.focus {
	border: 1px solid #52a8ec;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(82, 168, 236, 0.6);
}

/*Footer*/
#footer {
	padding: 20px 0;
	font-size: 0.771875em;
	color: #D3D1D1;
	line-height: 2;
	background: #333;
}
#footer a {
	color: #D3D1D1;
	text-decoration: none;
}
#footer a:hover {
	color: #D3D1D1;
	text-decoration: underline;
}
#footer .foot-col {
	margin: 0 0 0 15px;
	padding: 0 0 0 15px;
	width: 199px;
	float: left;
	border-left: 1px solid #4F4E4E;
}
@media screen and (max-width: 1023px) {
	#footer .foot-col {
		width: 15%;
	}
}
@media screen and (max-width: 767px) {
	#footer .foot-col {
		display: none;
	}
}

#footer .foot-col.first {
	margin: 0;
	padding: 0;
	width: 220px;
	border-left: none;
}
@media screen and (max-width: 767px) {
	#footer .foot-col.first {
		width: 100%;
		display: block;
	}
}

#logo-footer a {
	margin: 0 0 15px 0;
	width: 220px;
	height: 70px;
	display: block;
	text-indent: -9999em;
	background: url(../images/logo-foot.png) no-repeat left top;
	background-image: none, url(../images/logo-foot.svg);
	background-size: contain;
}
@media screen and (max-width: 767px) {
	#logo-footer a {
		width: auto;
		background-position: center top;
	}
}

#footer p {
	margin: 0 0 15px 0;
}
@media screen and (max-width: 767px) {
	#footer p {
		text-align: center;
	}
}

/*Top Social*/
@media screen and (max-width: 767px) {
	#social {
		margin: 0 auto;
		width: 180px;
	}
}
#social li {
	display: inline;
}
#social li a {
	width:  20px;
	height: 20px;
	display: block;
	text-indent: -9999em;
	float: left;
}
#social li + li a {
	margin: 0 0 0 20px;
}
#social li.facebook a {
	background: url(../images/facebook.png)
}
#social li.twitter a {
	background: url(../images/twitter.png)
}
#social li.youtube a {
	background: url(../images/youtube.png)
}
#social li.flickr a {
	background: url(../images/flickr.png)
}
#social li.tumblr a {
	background: url(../images/tumblr.png)
}

/*Content*/
#content strong,
#content b {
	font-family: "ProximaNova-Semibold", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
}

/*General Typography*/
#content a {color: #07C; text-decoration: none;}
#content a:hover {text-decoration: underline;}
#content h3 {font-size: 1.425em; margin: 0 0 1em 0; color: #896137;}
#content h4 {font-size: 1.30625em; margin: 0 0 1em 0; color: #484747;}
#content h5 {font-size: 1.1875em; margin: 0 0 1em 0; color: #484747;}
#content h6 {font-size: 1.06875em; margin: 0 0 1em 0; color: #484747;}
#content h6 {font-size: 0.95em; margin: 0 0 1em 0;}
#content p, #content dl {font-size: 0.95em; margin: 0 0 20px 0;}
#content ul {font-size: 0.95em; list-style: disc; margin: 0 0 .5em 25px;}
#content ol {font-size: 0.95em; list-style: decimal; margin: 0 0 .5em 30px;}
#content ol li, #content ul li {margin: 0 0 .5em 0;}
#content li br {margin: 0 0 .5em 0;}
#content ul li ul, #content ol li ol {font-size: 1em;}
#content ol li ul, #content ul li ol {font-size: 1em;}
#content li p, #content ul table, #content ol table {margin: 0; font-size: 1em;}
#content sup {font-size: .8em; vertical-align: super; line-height: 1;}
#content sub {font-size: .8em; vertical-align: sub; line-height: 1;}
#content hr {display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0;}

/*Intro Text*/
#content p.introtext {font-size: 1.25em;}

/*Nested Ordered Lists*/
#content ol ol {list-style: lower-alpha;}
#content ol ol ol {list-style: lower-roman;}
#content ol ol li:first-child, #content ol ol ol li:first-child {margin-top: .5em;}

/*Nested Unordered Lists*/
#content ul ul li:first-child, #content ul ul ul li:first-child {margin-top: .5em;}

/*Tightlist*/
#content ul.tightlist {list-style: none; margin: 0 0 .5em 0;}
#content ul.tightlist ul {list-style: none; margin: 0 0 0 25px;}
#content ul.tightlist li {margin: 0 0 0 0;}
#content ul.tightlist ul li:first-child, #content ul.tightlist ul ul li:first-child {margin-top: 0;}

/*Blockquotes*/
#content blockquote {margin: 0 0 .25em 0; border-left: 5px solid #ccc; padding: 0 0 0 .5em; font-style: italic;}
#content blockquote p {line-height: 1.5;}
#content blockquote cite {display: block; font-size: 0.95em;}
#content blockquote cite:before {content: "\2014 \0020";}
#content blockquote cite a, blockquote cite a:visited, blockquote cite a:visited {color: #ccc;}

/*Tables*/
#content table {font-size: 0.95em; margin: 0 0 1em 0; border-collapse: collapse; border-spacing: 0; width: 100%; border: 1px solid #ccc;}
#content th {padding: .3em .75em; vertical-align: top; border-bottom: 1px solid #ccc; font-family: "ProximaNova-Semibold", "Helvetica Neue", Helvetica, Arial, sans-serif; text-align: left; background: #f1f1f2;}
#content td {padding: .3em .75em; vertical-align: top; border-top: 1px solid #ccc; }
#content td img {vertical-align: top;}
#content td ul, #content td ol {margin-bottom: 0; font-size: 1em;}
#content td p {margin: 0; font-size: 1em;}

/*Two Columns*/
#content .cola {
	width: 220px;
	float: left;
}
#content .colb {
	width: 220px;
	float: right;
}

/*Structured Content*/
#content tr.areaheader td,
#content td.areaheader,
#content tr.listsum td,
#content tr.plangridtotal td,
#content tr.plangridsum td {
	font-family: "ProximaNova-Semibold", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
#content tr.odd {
	background: #FAFAFA;
}
#content tr.orclass td {
	padding-top: 0;
	border-top: none;
}
#content tr.orclass td.codecol {
	padding-left: 2em;
}
#content td.hourscol,
#content th.hourscol {
	text-align: right;
}
#content .hiddencourselist {
	display: none;
}

/*Plan Grid*/
#content .plangridyear th {
	border-top: 1px solid #ccc;
}

/*Footnotes*/
#content .sc_footnotes {
	border: 0;
}
#content .sc_footnotes td {
	padding: 0 0 .75em 0;
	border: 0;
}
#content .sc_footnotes td.symcol {
	width: 15px;
	font-size: .8em;
}

/*Course Blocks*/
#content p.courseblocktitle {
	margin: 0;
	font-family: "ProximaNova-Semibold", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/*Breadcrumb*/
#content #breadcrumb ul {
	margin: 0 0 15px 0;
}
#content #breadcrumb ul li {
	padding: 0 .3em 0 0;
	display: inline;
}
#content #breadcrumb ul li a {
	padding: 0 .3em 0 0;
}

/*Tabs*/
#content #tabs ul {
	margin: 0 0 1em 0;
	list-style: none;
}
#content #tabs ul li {
	font-size: 1em;
	display: inline;
}
#content #tabs ul li a {
	margin: 0 2px 2px 0;
	padding: 0.25em 0.5em;
	text-align: center;
	color: #fff;
	text-decoration: none;
	background: #670A0A;
	display: block;
	float: left;
}
#content #tabs ul li a:hover,
#content #tabs ul li.active a {
	background: #800000;
}

/*A-Z Index*/
#content ul.letternav {
	margin: 0 0 1em 0;
	list-style: none;
}
#content ul.letternav li {
	text-transform: uppercase;
	font-family: "ProximaNova-Semibold", "Helvetica Neue", Helvetica, Arial, sans-serif;
	float: left;
	margin: 0 1px 1px 0;
}
#content ul.letternav li a,
#content ul.letternav li.inactive {
	padding: .25em .6em;
	color: #fff;
	text-align: center;
	text-decoration: none;
	display: block;
	width: 1em;
	float: left;
	border: none;
	background: #670A0A;
}
#content ul.letternav li.inactive {
	background: #896137;
}
#content ul.letternav li a {
	color: #fff;
	text-decoration: none;
	border: none;
}
#content ul.letternav li a:hover,
#content ul.letternav li a:active,
#content ul.letternav li a:focus {
	background: #800000;
}

/*Image Floats*/
#content h4 img {
	margin: 0 0 1em 1em;
	float: right;
}

/*Archive Message*/
#content .archive-message p {
	padding: .5em;
	border: 1px solid #ccc;
}

/*Shared Message*/
#content .shared-message p {
	padding: .5em;
	border: 1px solid #ccc;
}

/* Search Breadcrumbs */
#content .search-crumb {
	width: 100%;
	display: inline-block;
}
#content .search-crumb ul {
	list-style :none;
}
#content .search-crumb ul li {
	float: left;
	margin-left: 5px;
}

/*Google Search Pagination*/
#content .gcs-pagination {
	text-align: left;
}
#content .gcs-pagination a,
#content .gcs-pagination .gcs-current {
	padding: 5px 12px;
	font-size: 0.75em;
	color: #333;
	text-decoration: none;
	background-color: #f5f5f5;
	background-image: none;
	background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
	background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
	background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
	background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
	border: 1px solid #bbbbbb;
	display: inline-block;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
#content .gcs-pagination .gcs-current {
	color: #fff;
	background-color: #999;
	background-image: none;
}

/*Google Search Results*/
#content #sitesearch .gcs-url {
	overflow: hidden;
	text-overflow: ellipsis;
	display: inline-block;
	width: 100%;
}
#content #sitesearch .gcs-total  {
	font-style: italic;
}
#content #sitesearch .gcs-result h3 {
	margin: 0;
}

/*Contacts*/
#content #contacts .contact-cat {
	margin: 0 0 10px 0;
	border-bottom: 1px solid #E1DCD8;
}
#content #contacts .contact {
	margin-right: 2%;
	width: 31%;
	min-width: 200px;
	height: 8em;
	float: left;
}
#content #contacts .contact p {
	line-height: 1.3;
}

/*Custom*/
#content div.subsequence {
	padding-left: 25px;
}
#content div.subsequence p.courseblockdesc {
	margin: 0;
}

/*Print Popup*/
#print-dialog {
	padding: 0;
	width: 350px;
	text-align: left;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	line-height: 1.5;
}
#print-dialog.screen {
	font-size: 100%;
}
#print-dialog .print-header {
	padding: 10px;
	font-size: 1.5em;
	border-bottom: 1px solid #ccc;
}
#print-dialog .print-body {
	padding: 20px 10px;
}
#print-dialog .print-option {
	padding: 0 0 10px 0;
}
#print-dialog .print-option a {
	color: #07C;
	text-decoration: none;
}
#print-dialog .print-option p {
	margin: 0;
}
#print-dialog .buttons {
	padding: 10px;
	background: #800000;
}
#print-dialog .cancel a {
	padding: 5px 12px;
	display: inline-block;
	font-size: 16px;
	line-height: normal;
	color: #333;
	text-align: center;
	cursor: pointer;
	text-decoration: none;
	float: right;
	border: 1px solid #ebebeb;
	background-color: #e6e6e6;
	background-image: -moz-linear-gradient(white, #e6e6e6);
	background-image: -o-linear-gradient(white, #e6e6e6);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, white), color-stop(1, #e6e6e6));
	background-image: -webkit-linear-gradient(white, #e6e6e6);
	background-image: -ms-linear-gradient(white, #e6e6e6);
	background-image: linear-gradient(white, #e6e6e6);
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}
#print-dialog.noscript {
	display: block;
	position: relative;
}
@media only screen and (max-width: 767px) {
	#print-dialog {
		width: 90%;
	}
}

/*Clearfix*/
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {display: inline-block;}

div.bad_course_block {
	color: red;
}

/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */
