/*Variables*/
/*Mixins*/
/*Fonts*/
@font-face {
  font-family: 'avenir';
  src: url("../fonts/3511a780-31ca-4ee1-9083-89b1b7185748.eot?#iefix");
  src: url("../fonts/3511a780-31ca-4ee1-9083-89b1b7185748.eot?#iefix") format("eot"), url("../fonts/c4352a95-7a41-48c1-83ce-d8ffd2a3b118.woff") format("woff"), url("../fonts/3e419b5b-c789-488d-84cf-a64009cc308e.ttf") format("truetype"), url("../fonts/ca038835-1be3-4dc5-ba25-be1df6121499.svg#ca038835-1be3-4dc5-ba25-be1df6121499") format("svg");
  font-weight: 400;
  font-style: normal; }

/*Begin Styles*/
body {
  color: #222;
  font-family: avenir, sans-serif;
  font-size: 100%;
  line-height: 1.4;
  background: #fafafa; }

/*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,
.wrap {
  margin: 0 auto;
  width: 940px; }
  @media screen and (max-width: 767px) {
    #wrapper,
    .wrap {
      margin: 0;
      padding: 8px;
      width: auto; } }

#container {
  margin: 0 0 20px 0; }

#nav-col {
  margin: 0 0 10px 0;
  width: 220px;
  float: right;
  background: #fff;
  border-top: 5px solid #666; }
  @media screen and (max-width: 767px) {
    #nav-col {
      border: none;
      width: auto;
      float: none; } }

#content-col {
  width: 700px;
  float: left; }
  @media screen and (max-width: 767px) {
    #content-col {
      width: auto;
      float: none; } }

@media screen and (max-width: 767px) {
  #content {
    font-size: 80%; } }

/*Header*/
#header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  background: #eeeeee; }
  @media screen and (max-width: 767px) {
    #header {
      margin: 0 0 15px 0;
      position: static; } }

/*Logo*/
#logo {
  width: 20%;
  float: left;
  background: #fafafa;
  border-bottom: 5px solid #ea760a; }
  #logo a {
    width: 130px;
    height: 90px;
    display: block;
    text-indent: -9999em;
    background: url(../images/logo.png) no-repeat 20px center; }
    @media screen and (max-width: 767px) {
      #logo a {
        width: 110px;
        height: 70px;
        background: url(../images/logo-m.png) no-repeat 20px center; } }
  @media screen and (max-width: 767px) {
    #logo {
      width: auto;
      float: none;
      border-bottom: 1px solid #eeeeee; } }

/*Head Right*/
#head-right {
  width: 80%;
  float: left;
  background: #eeeeee; }
  #head-right #topnav {
    width: 60%;
    float: left;
    background: #fafafa;
    border-bottom: 5px solid #5281aa;
    /*Drop Down*/ }
    #head-right #topnav ul {
      font-size: 0.75em;
      font-weight: bold;
      text-transform: uppercase; }
    #head-right #topnav ul li {
      color: #666;
      display: inline;
      border-color: #eeeeee;
      border-style: solid; }
    #head-right #topnav ul li a {
      padding: 37px 0 0 0;
      width: 50%;
      height: 90px;
      text-align: center;
      color: #666;
      display: block;
      float: left;
      text-decoration: none;
      background: #fafafa;
      border-left: 1px solid #eeeeee;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        #head-right #topnav ul li a {
          padding: 5px 8px;
          text-align: left;
          height: auto;
          border: none;
          width: auto;
          float: none; } }
    #head-right #topnav ul li.start a {
      background: url(../images/drop.png) no-repeat center 65px; }
    #head-right #topnav ul li.start span {
      padding: 0 0 0 20px;
      background: url(../images/start.png) no-repeat left center; }
    #head-right #topnav ul li.directory span {
      padding: 0 0 0 20px;
      background: url(../images/everything.png) no-repeat left center; }
    #head-right #topnav ul li:hover > ul {
      visibility: visible; }
    #head-right #topnav ul li a:hover {
      background-color: #fff; }
      @media screen and (max-width: 767px) {
        #head-right #topnav ul li a:hover {
          color: #00397c;
          background-color: #fafafa; } }
    #head-right #topnav ul ul {
      font-size: 1.75em;
      font-weight: normal;
      text-transform: none;
      background-color: #fafafa;
      border-left: 1px solid #eeeeee;
      border-right: 1px solid #eeeeee;
      border-bottom: 1px solid #eeeeee;
      position: absolute;
      top: 90px;
      visibility: hidden; }
      @media screen and (max-width: 767px) {
        #head-right #topnav ul ul {
          position: static;
          top: 0;
          visibility: visible; } }
    #head-right #topnav ul ul li {
      display: block; }
    #head-right #topnav ul ul li a,
    #head-right #topnav ul ul li.label {
      padding: 15px 20px;
      width: auto;
      height: auto;
      float: none;
      color: #00397c;
      text-align: left;
      border-top: 1px solid #eeeeee; }
      @media screen and (max-width: 767px) {
        #head-right #topnav ul ul li a,
        #head-right #topnav ul ul li.label {
          padding: 5px 8px; } }
    #head-right #topnav ul ul li.label {
      color: #5280aa;
      text-transform: uppercase;
      font-weight: bold;
      font-size: 0.575em; }
    @media screen and (max-width: 767px) {
      #head-right #topnav {
        width: auto;
        float: none; } }
  #head-right #search {
    width: 40%;
    float: left; }
    #head-right #search label {
      display: none; }
    #head-right #search #cl-search {
      margin: 20px 0 0 20px;
      padding: 15px 10px;
      max-width: 225px;
      background: #fff; }
      #head-right #search #cl-search label {
        display: none; }
      #head-right #search #cl-search .searchbox {
        margin: 1px 0 0 0;
        background: none;
        border: none;
        font-size: 0.75em;
        font-style: italic;
        color: #666;
        width: 75%;
        float: left; }
      #head-right #search #cl-search .submit {
        margin: 0 0 0 3px;
        text-indent: -9999em;
        text-transform: capitalize;
        width: 16px;
        height: 16px;
        float: right;
        cursor: pointer;
        background: url(../images/btn-search.png) no-repeat left top;
        border: none; }
      @media screen and (max-width: 767px) {
        #head-right #search #cl-search {
          margin: 0;
          max-width: 100%; } }
    @media screen and (max-width: 767px) {
      #head-right #search {
        padding: 8px;
        width: auto;
        float: none; } }
  @media screen and (max-width: 767px) {
    #head-right {
      width: auto;
      float: none; } }

/*Page Meta*/
#page-meta {
  font-size: 1.25em;
  color: #ea760a;
  font-weight: bold;
  text-transform: uppercase; }

/*Breadcrumb*/
#breadcrumb {
  margin: 0 0 15px 0; }
  #breadcrumb ul li {
    font-size: 0.75em;
    color: #00397c;
    display: inline; }
  #breadcrumb ul li a {
    color: #5281aa;
    text-decoration: none; }

/*Nav Col*/
#print {
  padding: 7px 15px;
  font-size: 1em;
  background: #666; }
  #print a {
    color: #fff; }

#cl-menu {
  padding: 15px;
  border-left: 1px solid #d5dde7;
  border-right: 1px solid #d5dde7;
  border-bottom: 1px solid #d5dde7; }
  #cl-menu ul {
    font-size: 1em; }
  #cl-menu ul ul {
    margin: 0.25em 0 0 1em;
    font-size: 1em; }
  #cl-menu ul li {
    padding: 0.25em 0;
    line-height: 1.3; }
  #cl-menu ul li a {
    color: #5281aa;
    text-decoration: none;
    border-bottom: 1px solid #d5dde7; }
  #cl-menu ul li.active > a {
    font-weight: bold; }

/*CL Menu Controls - Shows in Mobile Context*/
#cl-menu-control {
  padding: 10px;
  display: none;
  background: #00397c;
  border-bottom: 1px solid #eeeeee; }
  #cl-menu-control a.cl-menu-text {
    padding: 3px 0 0 0;
    color: #fff;
    float: left;
    font-size: .8em;
    font-weight: bold;
    text-decoration: none; }
  #cl-menu-control a.cl-menu-btn {
    display: block;
    width: 32px;
    float: right;
    background: #00397c url(../images/icon-cl-menu.png) no-repeat center center;
    text-decoration: none;
    text-indent: -9999em; }

/*Footer*/
#footer {
  padding: 40px 0;
  color: #fff;
  background: #222;
  border-bottom: 1px solid #464646; }
  #footer #foot-logo {
    padding: 0 15px 0 0;
    width: 120px;
    float: left; }
    #footer #foot-logo a {
      width: 118px;
      height: 54px;
      display: block;
      text-indent: -9999em;
      background: url(../images/logo-foot.png) no-repeat left center; }
    @media screen and (max-width: 767px) {
      #footer #foot-logo {
        width: auto;
        float: none; } }
  #footer #address {
    padding: 0 0 0 15px;
    width: 250px;
    float: left;
    border-left: 1px solid #464646; }
    #footer #address p {
      font-size: 1em;
      color: #fff; }
      #footer #address p a {
        color: #ea760a;
        font-size: 0.75em;
        font-weight: bold;
        text-transform: uppercase;
        text-decoration: none; }
      #footer #address p a:hover {
        text-decoration: underline; }
    @media screen and (max-width: 767px) {
      #footer #address {
        padding: 0;
        border: none;
        width: auto;
        float: none; } }
  #footer #links {
    float: right; }
    @media screen and (max-width: 767px) {
      #footer #links {
        width: auto;
        float: none; } }
  #footer #links ul {
    padding: 0 0 0 15px;
    width: 135px;
    float: left;
    font-size: 0.875em;
    border-left: 1px solid #464646; }
    #footer #links ul li {
      padding: 10px 0;
      color: #fff; }
      @media screen and (max-width: 767px) {
        #footer #links ul li {
          padding: 0; } }
    #footer #links ul li a {
      color: #fff;
      text-decoration: none; }
    #footer #links ul li a:hover {
      color: #ea760a;
      text-decoration: none; }
    @media screen and (max-width: 767px) {
      #footer #links ul {
        padding: 0;
        border: none;
        width: auto;
        float: none; } }
  @media screen and (max-width: 767px) {
    #footer {
      padding: 0; } }

/*Copyright*/
#copyright {
  padding: 25px 0;
  font-size: 0.75em;
  color: #fff;
  background: #222; }
  #copyright p {
    margin: 0 0 0.5em 0;
    width: 880px;
    float: left; }
    @media screen and (max-width: 767px) {
      #copyright p {
        width: auto;
        float: none; } }
  #copyright p a {
    color: #666;
    text-decoration: none; }
  #copyright ul {
    width: 60px;
    float: left; }
    @media screen and (max-width: 767px) {
      #copyright ul {
        width: auto;
        float: none; } }
  #copyright ul li {
    display: inline; }
  #copyright ul li a {
    display: block;
    text-indent: -9999em;
    height: 25px;
    width: 25px;
    float: left; }
  #copyright ul li.twitter a {
    background: url(../images/twitter.png) no-repeat; }
  #copyright ul li.facebook a {
    background: url(../images/facebook.png) no-repeat; }
  #copyright ul li + li a {
    margin: 0 0 0 10px; }
  @media screen and (max-width: 767px) {
    #copyright {
      padding: 0; } }

/*Content*/
/*General Typography*/
#content a {
  color: #5281aa; }

#content h1, h2, h3, h4, h5, h6 {
  margin: 0 0 0.25em 0; }

#content h1 {
  font-size: 3.375em;
  line-height: 1.1; }

#content h2 {
  font-size: 2.125em; }

#content h3 {
  font-size: 1.375em; }

#content h4 {
  font-size: 0.75em;
  color: #527FAA;
  text-transform: uppercase;
  font-weight: bold; }

#content h5 {
  font-size: 1em; }

#content h6 {
  font-size: 1em; }

#content p, #content dl {
  font-size: 1.25em;
  margin: 0 0 1em 0; }

#content ul {
  font-size: 1.25em;
  list-style: disc;
  margin: 0 0 0.5em 25px; }

#content ol {
  font-size: 1.25em;
  list-style: decimal;
  margin: 0 0 0.5em 30px; }

#content ol li, #content ul li {
  margin: 0 0 0.5em 0; }

#content li br {
  margin: 0 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: 0.8em;
  vertical-align: super;
  line-height: 1; }

#content sub {
  font-size: 0.8em;
  vertical-align: sub;
  line-height: 1; }

#content hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #eeeeee;
  margin: 1em 0;
  padding: 0; }

/*Intro Text*/
#content p.introtext {
  font-size: 1.5em; }

/*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: 0.5em; }

/*Nested Unordered Lists*/
#content ul ul li:first-child, #content ul ul ul li:first-child {
  margin-top: 0.5em; }

/*Tightlist*/
#content ul.tightlist {
  list-style: none;
  margin: 0 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 1em 0;
  padding: 0 0 0 2em;
  font-style: italic; }

#content blockquote cite {
  display: block;
  font-size: 1.25em; }

#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: 1.25em;
  margin: 0 0 1em 0;
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%; }

#content th {
  padding: 0.25em 0.75em;
  vertical-align: top;
  font-weight: bold;
  text-align: left;
  background: #e5e5e5; }

#content td {
  padding: 0.25em 0.75em;
  vertical-align: top; }

#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: 330px;
  float: left; }

#content .colb {
  width: 330px;
  float: right; }

@media screen and (max-width: 767px) {
  #content .cola, #content .colb {
    width: auto;
    float: none; } }

/*Structured Content*/
/*Globals*/
#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: #e5e5e5; }

#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; }

/*Footnotes*/
#content .sc_footnotes {
  border: 0; }
  #content .sc_footnotes td {
    padding: 0 0 0.75em 0;
    border: 0; }
  #content .sc_footnotes td.symcol {
    width: 15px;
    font-size: .8em; }

/*Course Blocks*/
#content p.courseblocktitle {
  margin: 0;
  font-weight: bold; }

/*Tabs*/
#content #tabs {
  margin: 0 0 10px 0; }
  #content #tabs ul {
    margin: 0;
    list-style: none; }
  #content #tabs ul li {
    font-size: 0.875em;
    display: inline; }
  #content #tabs ul li a {
    margin: 0 1px 1px 0;
    padding: 1em;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    text-decoration: none;
    background: #5281aa;
    display: block;
    float: left; }
  #content #tabs ul li a:hover,
  #content #tabs ul li.active a {
    background: #00397c; }

/*A-Z Index*/
#content ul.letternav {
  margin: 0 0 1em 0;
  font-size: 1em;
  text-transform: uppercase;
  width: 100%;
  list-style: none;
  border-right: 1px solid #eeeeee;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }
  #content ul.letternav li {
    width: 3.7%;
    display: inline;
    float: left;
    border-left: 1px solid #eeeeee;
    border-top: 1px solid #eeeeee;
    border-bottom: 1px solid #eeeeee;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
  #content ul.letternav li a,
  #content ul.letternav li.inactive {
    color: #999;
    text-align: center;
    text-decoration: none;
    display: block;
    height: 40px;
    line-height: 40px;
    background: #fafafa; }
  #content ul.letternav li a {
    color: #222;
    text-decoration: none; }
  #content ul.letternav li a:hover,
  #content ul.letternav li a:active,
  #content ul.letternav li a:focus {
    color: #fff;
    background: #5281aa; }

/*Archive Message*/
#content .archive-message p,
#content .shared-message p {
  padding: 0.5em;
  border: 1px solid #eeeeee; }

/*Site Search Pagination*/
#content #sitesearch .pagination {
  text-align: center; }

#content #sitesearch .pagination a,
#content #sitesearch .current {
  padding: 5px 12px;
  font-size: 1.25em;
  color: #333;
  text-decoration: none;
  display: inline-block;
  border: 1px solid #eeeeee;
  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; }

#content #sitesearch .current {
  color: #fff;
  background-color: #999;
  background-image: none; }

/*Google Custom Search*/
#content #sitesearch a.gcs-url {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis; }

#content #sitesearch .gcs-total p {
  font-style: italic; }

#content #sitesearch .gcs-result h3 {
  margin: 0; }

/*Print Popup*/
#print-dialog {
  padding: 0;
  width: 350px;
  font-size: 1em;
  background: #fff;
  text-align: left;
  border: 1px solid #eeeeee;
  z-index: 1200 !important;
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px; }
  #print-dialog .print-header {
    padding: 10px;
    font-size: 1.25em;
    border-bottom: 1px solid #eeeeee; }
  #print-dialog .print-body {
    padding: 10px; }
  #print-dialog .print-option {
    padding: 0 0 10px 0; }
  #print-dialog .print-option a {
    color: #5281aa;
    text-decoration: none; }
  #print-dialog .buttons {
    padding: 10px;
    background: #5281aa; }
  #print-dialog .cancel a {
    padding: 5px 12px;
    display: inline-block;
    font-size: 1.25em;
    line-height: normal;
    color: #333;
    text-align: center;
    cursor: pointer;
    text-decoration: none;
    float: right;
    border: 1px solid #eeeeee;
    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 screen and (max-width: 767px) {
    #print-dialog {
      width: 90%; } }

/*Google Search Results*/
#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 .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;
}


/*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 */
