body {
	margin: 0;
	color: #000;
	font-family: 'Open Sans',sans-serif, Helvetica, Arial;
	font-size: 100%;
	line-height: 1.5;
	background: #111 url('/images/csu-bg.png') repeat-x;
}

a {
	transition:color 125ms;
}

/*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;
}

/*Core Layout*/
#wrapper {
	margin: 0 auto;
	width: 1040px;
	background: white;
	padding:0 20px;
	border:1px solid #111;
	border-top:none;
	border-bottom:none;
}
#left-col {
	width: 185px;
	float: left;
}
#right-col {
	width: 828px;
	float: right;
	background:#fffdf9;
	padding:20px 20px 0 0;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	border:1px solid #ececec;
}
#container {
	margin: 20px 0;
}
#content {
	padding: 0px 0 20px 20px;
}

/*Header*/
#header {
	background: #fff;
	padding-top:20px;
}
#logo {
	width: 150px;
	height:150px;
	float: left;
	margin-right:20px;
}
#header-right {
	width:830px;
	float:right;
}
#hamburger { display: none; }
#hdr-top-right {}
#school-text {
	float:left;
	width:450px;
}
#school-text img {
	margin:0px 0 0 -5px;
}
#school-text span {
	color:#111;
	font-size:26px;
	display: block;
	width:450px;
	text-align: center;
	margin-top:-12px;
	margin-bottom:5px;
	font-weight: 400;
}
#search-box {
	float:right;
	width:400px;
}
#navigation-bar {
	border-top:2px solid #0D4637;
	border-bottom:2px solid #0D4637;
	position: relative;
}
#main-nav > li {
	float:left;
	padding:4px 0;
	width:20%;
	text-align: center;
	font-family: 'Armata', sans-serif;
}
#main-nav > li > a {
	border-right:1px solid #ddd;
	width: 100%;
	font-size:15px;
	color:#0D4637;
	text-decoration: none;
	display: block;
	font-weight: bold;
	padding:4px 0;
}
#main-nav > li:last-child > a {
	border-right:0px;
}
#main-nav > li > a:hover,
#main-nav > li.active > a {
	color:#9c680e;
	font-weight: 700;
	text-decoration: underline;
}
#main-nav > li > ul {
	left:-9999px;
	position: absolute;
	background:white;
	border:1px solid #ddd;
	top:37px;
}
#main-nav > li:hover > ul,
#main-nav > li:focus > ul,
#main-nav > li.hover > ul {
	left:auto;
}
#main-nav > li > ul > li a {
	text-align: left;
	display: block;
	text-decoration: none;
	color:#0D4637;
	padding:5px 80px 5px 15px;
	border-bottom:1px solid #ddd;
	font-size:.9em;
	font-weight: 600;
}
#main-nav > li > ul > li a:hover {
	color:#9c680e;
	font-weight: 700;
	text-decoration: underline;
}
#main-nav > li > ul > li:last-child > a {
	border-bottom:none;
}
#breadcrumbs { margin-top:5px; }
#breadcrumbs ul li {
	float:left;
	font-size:13px;
	color:#006B4C;
	padding:0 0 0 6px;
}
#breadcrumbs ul li a {
	color:#006B4C;
	text-decoration: none;
	font-weight: 600;
	margin-right:6px;
}

/*Search*/
#search-box {
	width:335px;
	float:right;
	padding-top:3px;
}
#search {
	padding: 4px;
	font-size: .75em;
	background:#f9f9f9;
	float:left;
}
#search label {
	display: none;
}
#search input.searchbox {
	border:1px solid #ccc;
	background:#f9f9f9;
	padding:5px 3px;
	width: 246px;
	border-right:0px;
	float:left;
}
#search input.searchbox:focus {
	outline: 1px dashed #ddd;
}
#search input.submit {
	border:1px solid #ccc;
	border-left:none;
	padding:5px;
	margin-left:-3px;
	text-indent: -999em;
	width:35px;
	height:30px;
	background:#f9f9f9 url('/images/search-icon.png') no-repeat center center;
	background-size:55%;
	float:right;
}
#print-icon {
	width:30px;
	height:30px;
	float:right;
	text-indent: -999em;
}
#print-icon:after {
	font-family: FontAwesome;
	content:"\f02f";
	width:30px;
	height:30px;
	display: block;
	text-indent: 0;
	margin:-25px 0 0 2px;
	font-size:1.7em;
	color:#999;
	transition:color 150ms;
}
#print-icon:hover:after {
	color:#555;
}
a#print-box {
	float:right;
	width:30px;
	height:30px;
}

/*Left Col*/
#cl-menu ul {
	font-family: 'Armata', sans-serif;
}
#cl-menu ul.nav li a:hover,
#cl-menu ul.nav li a:focus {
	color: #9c680e;
}
#cl-menu > ul.nav > li > a {
	padding-left:0;
}
#cl-menu ul ul {
	padding: 10px 0 0 .8em;
	display: none;
}
#cl-menu li.active > ul {
	display: block;
}
#cl-menu ul li {
	border-top:1px solid #ddd;
	list-style-type: none !important;
}
#cl-menu ul li.separator {
	border-top:2px solid #006B4C;
}
#cl-menu ul li a {
	width:100%;
	color:#0D4637;
	text-decoration: none;
	font-size:.725em;
	padding:1px 12px;
	display: block;
	font-weight: bold;
	transition:all 125ms;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}
#cl-menu ul.nav li a:focus { outline: none; }
#cl-menu li.active > a,
#cl-menu li.self > a,
#cl-menu li.active > .toggle-wrap > a,
#cl-menu li.self > .toggle-wrap > a {
	text-transform: uppercase;
	color: #9c680e;
}

#cl-menu ul.nav li > a,
#cl-menu ul.nav li > .toggle-wrap > a {
	display: block;
	padding: 9px 6px 9px 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#cl-menu li:first-child {
	border-top:none;
}
#cl-menu ul > li:first-child > a {
	padding-top:0;
	margin-top:0;
}

#cl-menu.togglenav li > .toggle-wrap {
    position: relative;
}

#cl-menu.togglenav li.isparent > .toggle-wrap > a {
    padding-right: 30px;
}
#cl-menu.togglenav li.isparent button {
    display: inline-block;
    font-size: 0em;
    background: none;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 16px;
    cursor: pointer;
}
#cl-menu.togglenav li.isparent button span {
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
    left: 0;
    right: 0;
}
#cl-menu.togglenav li.isparent button span:after {
    content: "\f0fe";
    font-family: FontAwesome;
    display: block;
    font-size: 1rem;
}
#cl-menu.togglenav li.isparent button.open span:after {
    content: "\f146";
}
#cl-menu.togglenav li.active > .toggle-wrap > button span:after,
#cl-menu.togglenav li.isparent > .toggle-wrap > button:hover span:after {
	color: #9c680e;
}
#cl-menu.togglenav li.isparent:not(.active):not(.self) > ul.nav {
    display: none;
}

#cl-menu > ul.nav ul {
	display: none;
	clear:both;
}
#cl-menu ul.nav > li.active.isparent > ul.nav {
	display: block;
}

#mobile-sidebar-hdr {
	background:#0D4637;
	color:#fff;
	font-weight: bold;
	padding:10px;
	border-radius: 4px;
	-moz-border-radius:4px;
	display: none;
}
/*Footer*/
#footer {
	padding: 25px 0;
	background: #0D4637;
}
#footer-wrapper {
	width:1000px;
	margin:0 auto;
}
#footer p {
	font-size: .75em;
	color: #fff;
	margin-left:20px;
	margin-top:10px;
}
ul#footer-links {
	margin-left:20px;
}
ul#footer-links li {
	font-size:.75em;
	float:left;
}
ul#footer-links li:after {
	content: "|";
	margin:0 6px;
	color:white;
}
ul#footer-links li:last-child:after {
	content: "";
}
#footer a {
	color:white;
	text-decoration: none;
}
#footer a:hover {
	text-decoration: underline;
}

/*Content*/
/*General Typography*/
#content { color:#333; }
#content h1,
#content h2,
#content h3 {
	font-family: 'Armata', sans-serif;
	font-weight: bold;
	color:#0D4637;
}
#container h1.page-title {
	font-size:1.7em;
	text-transform: uppercase;
	color:#0D4637;
	font-weight: 400;
	font-family: 'Armata', sans-serif;
	padding:0 20px 25px 0px;
}
#content h4,
#content h5,
#content h6 {
	color:#0D4637;
}
#content h1 {font-size: 1.5em; margin: 0 0 .5em 0;}
#content h2 {font-size: 1.25em; margin: 0 0 .5em 0;}
#content h3 {font-size: 1em; margin: 0 0 .25em 0; font-weight: bold;}
#content h4 {font-size: .9em; margin: 0 0 .25em 0; font-weight: bold;}
#content h5 {font-size: .9em; margin: 0 0 .25em 0; font-weight: bold;}
#content h6 {font-size: .85em; margin: 0 0 .25em 0; font-weight: bold;}
#content p, #content dl {font-size: .9em; margin: 0 0 1em 0;}
#content ul {font-size: .85em; list-style: disc; margin: 0 0 .5em 25px;}
#content ol {font-size: .85em;  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 {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;}

#content a {
	color:#9c680e;
	text-decoration: none;
	font-weight: 600;
}

/*Nested Ordered Lists*/
/*#content ol ol {list-style: lower-alpha;}
#content ol ol ol {list-style: lower-roman;}*/
#content ol:not([type]) {list-style: decimal;}
#content ol ol:not([type]) {list-style: lower-alpha;}
#content ol ol ol:not([type]) {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: .75em;}
#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: .75em; margin: 0 0 1em 0; width: 100%; border: 1px solid #ccc;}
#content th {padding: .3em .75em; vertical-align: top; font-weight: bold; border-bottom: 1px solid #ccc; text-align: left; background: #f1f1f2;}
#content td {border-top: 1px solid #ccc; padding: .3em .75em; vertical-align: top;}
#content td img {vertical-align: top;}
#content td p {margin: 0; font-size: 1em;}



/*Forms*/
#content form {font-size: .75em; margin: 0 0 1em 0;}
#content form input, #content form select {font-size: 1em;}

/*Two Columns*/
#content .cola {
	width: 48%;
	float: left;
}
#content .colb {
	width: 48%;
	float: right;
}

/*Tabs*/
#tabs {
	margin-bottom:20px;
}
#tabs ul {
	padding:0;
	margin:0;
	list-style-type: none;
}
#tabs ul li,
#content #tabs ul li {
	float:left;
	margin-bottom:5px;
	margin-right:5px;
}
#tabs ul li.active a,
#tabs ul li:hover > a {
	background:#9c680e;
	font-weight:bold;
	color:white;
}
#tabs ul li a {
	display: block;
	padding:7px 20px;
	text-decoration: none;
	background:#0D4637;
	color:#eee;
	text-transform: uppercase;
	font-family: 'Armata', sans-serif;
	font-size:.9em;
	border-radius:10px;
	-moz-border-radius:10px;
}

#atozindex ul li {
	list-style-type: none;
	margin-left:-15px;
}
#atozindex ul li:before {
	content: "\0BB";
	margin-right:10px;
}

/*Structured Content*/
#content tr.areaheader td,
#content td.areaheader,
#content tr.listsum td,
#content tr.plangridtotal td,
#content tr.plangridsum td {
	font-weight: bold;
}
#content tr.odd {
	background: #f7f7f7;
}
#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;
}
.sc_plangrid .plangridyear,
.sc_plangrid .plangridterm {
	text-transform: uppercase;
	font-size:1.1em;
}
#content table.sc_plangrid td.codecol {
	width:30%;
}
#content table.sc_plangrid td.titlecol {
	width:53%;
}
#content table.sc_plangrid td.auccol {
	width:9%;
}
#content table.sc_plangrid td.cltitlecol {
	text-align: right;
}

/*Major Completion Grid*/
#content .plangridyear th {
	border-top: 1px solid #ccc;
}
.sc_mcgrid .plangridyear,
.sc_mcgrid .plangridterm {
	text-transform: uppercase;
	font-size:1.1em;
}
#content table.sc_mcgrid td.codecol {
	width:30%;
}
#content table.sc_mcgrid td.titlecol {
	width:53%;
}
#content table.sc_mcgrid td.auccol {
	width:9%;
}
#content table.sc_mcgrid td.cltitlecol {
	text-align: right;
}

/*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*/
.courseblock {
	padding-bottom:5px;
	border-bottom:1px solid #ddd;
	margin-bottom:20px;
}
.courseblock:last-child {
	border-bottom:none;
	padding-bottom:0;
	margin-bottom:0;
}
#content p.courseblocktitle {
	margin: 0;
	font-weight: bold;
}
#content p.courseblocktitle span+span {
	margin-left:2em;
}
#content p.courseblockextra span,
#content p.courseblockdesc span {
	font-weight: bold;
	color:#333;
}

/* Calendar Tables */
table.tbl_calendar col.column0 {
	width:16%;
}

/* Directory Table */
#content table.sc_sctable.tbl_directory {
	word-wrap:normal;
	word-break:break-all;
}

/* Glossary Table */
#content table.sc_sctable.tbl_glossary .column0 {
	width:35%;
}

/*A-Z Index*/
#content ul.letternav {
	margin: 0 0 1em 0;
	list-style: none;
}
#content ul.letternav li {
	text-transform: uppercase;
	font-weight: bold;
	float: left;
	margin: 0 1px 1px 0;
}
#content ul.letternav li a,
#content ul.letternav li.inactive {
	padding: .25em .6em;
	color: #0D4637;
	text-align: center;
	text-decoration: none;
	display: block;
	width: 1em;
	float: left;
	border: none;
	border-left:1px solid #ccc;
	margin-left:-1px;
}
#content ul.letternav li.inactive {
	color:#888;
	font-weight: normal;
}
#content ul.letternav li a:hover,
#content ul.letternav li a:active,
#content ul.letternav li a:focus {
	color: #9c680e;
	text-decoration: underline;
}

/*Image Floats*/
#content img.imgleft {
	padding: 0 10px 10px 0;
}
#content img.imgright {
	padding: 0 0 10px 10px;
}

/*Archive Message*/
#content .archive-message p {
	padding: .5em;
	border: 1px solid #ccc;
}

/*Shared Message*/
#content .shared-message p {
	padding: .5em;
	border: 1px solid #ccc;
}

/*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;
}
#content .gcs-result > h3 > a,
#content h3 > a {
	color:#0D4637;
}

/* Directory Table */
.sc_sctable.tbl_directory td.column0 {
	width:50%;
}
.sc_sctable.tbl_directory td.column1 {
	width:13%;
}
.sc_sctable.tbl_directory td.column2 {
	width:37%;
}


/*To Top*/
a#totop {
	width: 40px;
	height: 40px;
	display: block;
	color: #fff;
	position: fixed;
	bottom: 10px;
	right: 10px;
	text-indent: -9999em;
	background:#0D4637;
	border-radius: 3px;
	-moz-border-radius:3px;
	text-decoration: none;
}
a#totop:after {
	content: "\f077";
	font-family: FontAwesome;
	color:white;
	display: block;
	bottom:8px;
	right:10px;
	position: absolute;
	z-index: 999;
	text-indent: 0;
	text-align: center;
	font-size:1.2em;
}

/*Print Popup*/
#print-dialog {
	padding: 0;
	width: 350px;
	background: #fff;
	text-align: left;
	border: 1px solid #ccc;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}
#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 p {
	margin: 0;
}
#print-dialog .print-option a {
	color: #0D4637;
	font-weight: bold;
}
#print-dialog .buttons {
	padding: 10px;
	background: #999;
}
#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;}

/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }
