a.ls2-site-title {
  position: relative;
  color: rgba(255, 255, 255, 0.8);
  opacity: 0.85;
  transition: opacity 0.3s linear; }
  a.ls2-site-title h1 {
    display: none; }
  a.ls2-site-title img.title {
    width: 28rem;
    height: auto; }
  a.ls2-site-title:hover {
    opacity: 1.0; }

@media all and (max-width: 1024px) {
  header#site_head div#head_content div#head_middle a.ls2-site-title img.title {
    width: 22rem; } }

@media all and (max-width: 900px) {
  header#site_head div#head_content div#head_middle a.ls2-site-title {
    display: none; } }

header#site_head {
  position: relative;
  z-index: 82;
  background-color: var(--purple);
  background-image: url(/css/img/head-background.png);
  background-position: center top;
  background-size: 100vw 216px;
  background-attachment: fixed;
  background-repeat: no-repeat;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  header#site_head * {
    -webkit-font-smoothing: subpixel-antialiased; }
  header#site_head div#head_content {
    position: relative;
    z-index: 20; }
    header#site_head div#head_content .width-limit {
      padding: 0 0.25rem; }
    header#site_head div#head_content div#head_top {
      display: block;
      padding: 0.5rem 0;
      height: auto; }
      header#site_head div#head_content div#head_top:after {
        content: "";
        display: block;
        clear: both; }
      header#site_head div#head_content div#head_top ul#quick_links {
        display: inline-block;
        margin: 0.25rem 0 0 1rem;
        padding: 0;
        white-space: nowrap;
        list-style: none; }
        header#site_head div#head_content div#head_top ul#quick_links li {
          float: left;
          clear: none;
          margin: 0 0.5rem; }
          header#site_head div#head_content div#head_top ul#quick_links li a {
            position: relative;
            padding: 0.375rem 0;
            color: rgba(255, 255, 255, 0.85); }
          header#site_head div#head_content div#head_top ul#quick_links li a:hover,
          header#site_head div#head_content div#head_top ul#quick_links li a.active {
            text-decoration: none;
            color: var(--orange);
            text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.95); }
          header#site_head div#head_content div#head_top ul#quick_links li a:before {
            background-color: var(--orange);
            border-bottom: 1px solid rgba(0, 0, 0, 0.8);
            content: "";
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 3px;
            visibility: hidden;
            -webkit-transform: scale(0);
            -moz-transform: scale(0);
            -o-transform: scale(0);
            -ms-transform: scale(0);
            transform: scale(0);
            -webkit-transition: all 0.2s ease;
            -moz-transition: all 0.2s ease;
            -o-transition: all 0.2s ease;
            transition: all 0.2s ease; }
          header#site_head div#head_content div#head_top ul#quick_links li a:focus:before,
          header#site_head div#head_content div#head_top ul#quick_links li a:hover:before,
          header#site_head div#head_content div#head_top ul#quick_links li a.active:before {
            visibility: visible;
            -webkit-transform: scale(1);
            -moz-transform: scale(1);
            -o-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1); }
    header#site_head div#head_content div#head_middle {
      display: flex;
      justify-content: space-between;
      align-items: center;
      width: 100%;
      height: auto; }
      header#site_head div#head_content div#head_middle div#ls2_logo a {
        display: inline-block;
        padding: 0 0 0 0.5rem; }
        header#site_head div#head_content div#head_middle div#ls2_logo a img {
          width: 12rem;
          height: 5.375rem;
          margin: 0 0 0.25rem 1.25rem;
          opacity: 0.8;
          transition: opacity 0.3s linear; }
      header#site_head div#head_content div#head_middle div#ls2_logo a:hover img {
        opacity: 1.0; }
      header#site_head div#head_content div#head_middle a.ls2-site-title {
        top: -0.5rem; }
      header#site_head div#head_content div#head_middle div#head_middle_center {
        padding: 0 2.875rem;
        vertical-align: middle;
        text-align: center; }
        header#site_head div#head_content div#head_middle div#head_middle_center span, header#site_head div#head_content div#head_middle div#head_middle_center a {
          font-size: 2.375rem;
          line-height: 1.25;
          color: #ffffff;
          transition: opacity 0.3s linear; }
        header#site_head div#head_content div#head_middle div#head_middle_center > span, header#site_head div#head_content div#head_middle div#head_middle_center > a {
          opacity: 0.8; }
        header#site_head div#head_content div#head_middle div#head_middle_center a:hover {
          opacity: 1.0; }
      header#site_head div#head_content div#head_middle div#head_middle_right {
        text-align: right; }
      header#site_head div#head_content div#head_middle div#other_ls2_sites {
        text-align: right;
        margin-right: 1.5rem; }
        header#site_head div#head_content div#head_middle div#other_ls2_sites a {
          display: table;
          white-space: nowrap;
          margin: 0.625rem 0 0.625rem auto;
          padding: 0.375rem 0.5rem 0.375rem 0.625rem;
          border-radius: 6px;
          background-color: rgba(255, 255, 255, 0.72);
          color: var(--purple);
          box-shadow: 0 0 2px 0px var(--purple); }
          header#site_head div#head_content div#head_middle div#other_ls2_sites a:hover {
            background-color: var(--orange);
            text-decoration: none;
            box-shadow: 1px 1px 7px 0px rgba(0, 0, 0, 0.95); }

@supports (-webkit-touch-callout: none) {
  /* for iOS only */
  header#site_head {
    background-attachment: scroll; } }

ul.menu {
  position: absolute;
  z-index: 99;
  margin: 0.25rem -0.625rem;
  padding: 0.75rem 0;
  list-style: none;
  background-color: var(--link-bg);
  border: 1px solid var(--ul-border);
  border-radius: 0.75rem;
  box-shadow: 1px 1px 6px 0px rgba(0, 0, 0, 0.6); }
  ul.menu li {
    position: relative;
    margin: -1px 0;
    padding: 0; }
    ul.menu li a {
      display: block;
      white-space: nowrap;
      padding: 5px 10px;
      color: var(--link-text);
      border-top: 1px solid var(--ul-border);
      border-bottom: 1px solid var(--ul-border);
      border-collapse: collapse; }
    ul.menu li.is-hover > a,
    ul.menu li a:hover, ul.menu li a:active, ul.menu li a:focus,
    ul.menu li a.active {
      text-decoration: none;
      text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.95);
      color: var(--link-act-text);
      background-color: var(--link-act-bg); }
    ul.menu li.nav-sub-separator {
      padding: 3px 5px 2px 10px;
      background-color: var(--separator-bg);
      color: var(--separator-text);
      text-transform: uppercase;
      font-size: 0.75rem;
      font-weight: bold;
      opacity: 0.6;
      min-height: 0.5rem; }
    ul.menu li ul {
      visibility: hidden;
      opacity: 0; }
    ul.menu li:hover > ul {
      visibility: visible;
      opacity: 1; }

div#menu_main {
  position: sticky;
  z-index: 80;
  top: 0;
  align-self: flex-start;
  background-color: var(--purple);
  background-image: url(/css/img/head-background.png);
  background-position: center top;
  background-size: 100vw 216px;
  background-attachment: fixed;
  background-repeat: no-repeat;
  box-shadow: 0px 0px 0.5rem black; }
  div#menu_main div.width-limit {
    position: relative;
    padding-left: 1.5rem; }
  div#menu_main a#ls2_logo_mini {
    display: none;
    position: absolute;
    top: 0.5rem;
    left: 50%;
    margin-left: -2rem;
    width: 4rem;
    height: auto;
    opacity: 0.8;
    transition: opacity 0.25s linear; }
    div#menu_main a#ls2_logo_mini:hover {
      opacity: 1.0; }
  div#menu_main div#menu_toggle {
    display: none;
    margin: 0 0.5rem;
    padding: 1rem 0;
    white-space: nowrap;
    color: rgba(255, 255, 255, 0.85); }
    div#menu_main div#menu_toggle div.glyphicon {
      font-size: 1.5rem;
      line-height: 1;
      position: relative;
      top: -1px; }
  div#menu_main nav#navigation {
    height: 3.5rem; }
  div#menu_main a.ls2-site-title {
    position: absolute;
    left: 50%;
    translate: -50% 0;
    display: none;
    top: 0.75rem; }
    div#menu_main a.ls2-site-title img.title {
      width: 18rem; }
    div#menu_main a.ls2-site-title img.logo {
      width: 6rem;
      display: none; }
  div#menu_main a#login_link {
    position: absolute;
    right: 0;
    top: 0;
    margin: 0 1.75rem 0 0;
    padding: 1rem 0;
    color: rgba(255, 255, 255, 0.85);
    transition: color 0.3s linear;
    transition: text-shadow 0.3s linear; }
    div#menu_main a#login_link:hover, div#menu_main a#login_link.active {
      text-decoration: none;
      color: var(--orange);
      text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.95); }
    div#menu_main a#login_link:after {
      font-family: 'Glyphicons Halflings';
      font-size: 1.125rem;
      line-height: 1.15;
      font-style: normal;
      content: "\e006";
      display: inline-block;
      vertical-align: top;
      margin-left: 0.5rem;
      padding: 1px; }
  div#menu_main ul#user_menu {
    list-style: none;
    position: absolute;
    right: 0;
    top: 0;
    margin: 0;
    padding: 0;
    background-color: transparent;
    box-shadow: none;
    border: none; }
    div#menu_main ul#user_menu > ul {
      margin: 3px -0.625rem; }
    div#menu_main ul#user_menu > li {
      margin: 0 0.625rem;
      padding: 1rem 0; }
      div#menu_main ul#user_menu > li > a {
        display: inline;
        padding: 1rem 0;
        line-height: 1.5rem;
        color: var(--orange);
        text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.95);
        background-color: transparent;
        border: none; }
        div#menu_main ul#user_menu > li > a:hover, div#menu_main ul#user_menu > li > a.active {
          text-decoration: none;
          color: var(--orange);
          text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.95); }
        div#menu_main ul#user_menu > li > a span {
          vertical-align: top; }
        div#menu_main ul#user_menu > li > a span:first-child {
          display: inline-block;
          white-space: nowrap;
          max-width: 5.5rem;
          text-overflow: ellipsis;
          overflow: hidden; }
        div#menu_main ul#user_menu > li > a span.glyphicon {
          display: inline-block;
          margin: 0.25rem 0.5rem;
          font-size: 0.8125rem; }
      div#menu_main ul#user_menu > li:hover > a {
        color: var(--orange);
        text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.95); }
      div#menu_main ul#user_menu > li:hover ul {
        visibility: visible;
        opacity: 1; }
      div#menu_main ul#user_menu > li ul {
        position: absolute;
        right: 1rem;
        z-index: 99; }
        div#menu_main ul#user_menu > li ul li a {
          position: relative;
          padding-right: 2.25rem; }
          div#menu_main ul#user_menu > li ul li a div.glyphicon {
            position: absolute;
            top: 0.625rem;
            right: 0;
            font-size: 1.125rem; }

div#login_panel {
  display: none;
  position: absolute;
  z-index: 99;
  right: 1rem;
  top: 5px;
  width: 40%;
  max-width: 370px;
  border: 1px solid #938fcf;
  background-color: #eeeeee; }
  div#login_panel div.field-loginform-username {
    padding-right: 5px; }
  div#login_panel div.field-loginform-password {
    padding-left: 5px; }
  div#login_panel a#login_cancel {
    color: #aaaaaa;
    padding: 2px; }
    div#login_panel a#login_cancel div.glyphicon {
      font-size: 1rem;
      margin-right: -2px; }
    div#login_panel a#login_cancel:hover {
      color: var(--purple); }

@media all and (min-width: 1141px) {
  div#menu_main ul#menu_main_top {
    display: inline-block;
    margin: 0;
    padding: 0;
    list-style: none;
    white-space: nowrap;
    border-radius: 0;
    background-color: transparent;
    border: none;
    box-shadow: none; }
    div#menu_main ul#menu_main_top a.not-published {
      position: relative;
      padding-right: 1.75rem; }
      div#menu_main ul#menu_main_top a.not-published:after {
        content: "\e090";
        font-family: "Glyphicons Halflings";
        color: var(--text-error);
        position: absolute;
        top: 0.125rem;
        right: 0.25rem;
        font-size: 1.25rem; }
    div#menu_main ul#menu_main_top > li > a.not-published:after {
      top: 0.75rem;
      text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.95); }
    div#menu_main ul#menu_main_top > li {
      position: relative;
      float: left;
      clear: none;
      margin: 0 0.625rem;
      padding: 1rem 0; }
      div#menu_main ul#menu_main_top > li > a {
        display: inline;
        padding: 1rem 0;
        line-height: 1.5rem;
        color: rgba(255, 255, 255, 0.85);
        border: none; }
        div#menu_main ul#menu_main_top > li > a:hover, div#menu_main ul#menu_main_top > li > a.active {
          text-decoration: none;
          color: var(--orange);
          text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.95);
          background-color: transparent; }
        div#menu_main ul#menu_main_top > li > a span.glyphicon {
          margin-left: 0.5rem;
          font-size: 0.8125rem; }
      div#menu_main ul#menu_main_top > li.is-hover > a {
        background-color: transparent; }
      div#menu_main ul#menu_main_top > li:hover > a {
        color: var(--orange);
        text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.95); }
      div#menu_main ul#menu_main_top > li > ul {
        margin: 3px -0.625rem; } }

@media all and (max-width: 1140px) {
  header#site_head div#head_content div#head_middle div#head_middle_center span, header#site_head div#head_content div#head_middle div#head_middle_center a {
    font-size: 2rem; }
  div#menu_main div#menu_toggle {
    display: table; }
    div#menu_main div#menu_toggle:hover, div#menu_main div#menu_toggle.active {
      color: var(--orange);
      text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.95); }
  div#menu_main div#menu_container {
    display: none;
    position: absolute; }
  div#menu_main ul#menu_main_top {
    position: absolute;
    margin: -0.625rem 0 0 0;
    padding: 0.75rem 0; }
    div#menu_main ul#menu_main_top > li a {
      display: block;
      border-collapse: collapse;
      padding: 0.5rem 2rem 0.5rem 0.75rem; }
      div#menu_main ul#menu_main_top > li a div {
        display: inline-block; }
      div#menu_main ul#menu_main_top > li a span.glyphicon {
        position: absolute;
        top: 0.5rem;
        right: 0.5rem;
        margin-top: 0.25rem; }
        div#menu_main ul#menu_main_top > li a span.glyphicon:before {
          content: "\e080" !important; }
    div#menu_main ul#menu_main_top > li ul {
      margin: 0 0.375rem;
      top: -0.75rem;
      left: 100%; }
      div#menu_main ul#menu_main_top > li ul li a {
        padding: 0.5rem 1rem 0.5rem 1rem; }
  div#login_panel {
    width: 50%;
    max-width: none; }
  body:not(.js-ready) div#menu_main div#menu_toggle:active + div#menu_container,
  body:not(.js-ready) div#menu_main div#menu_toggle:focus + div#menu_container {
    display: block; }
  body:not(.js-ready) div#menu_main div#menu_container:hover {
    display: block; } }

@media all and (max-width: 900px) {
  div#menu_main div.width-limit a.ls2-site-title {
    display: block; } }

@media (max-width: 800px) {
  header#site_head div#head_content div#head_top ul#quick_links {
    margin-left: 0.5rem; }
  header#site_head div#head_content div#head_middle div#ls2_logo a img {
    margin-left: 0.5rem; }
  header#site_head div#head_content div#head_middle div#other_ls2_sites {
    margin-right: 0.75rem; }
  div#menu_main div.width-limit {
    padding: 0 0.5rem; }
  div#menu_main a#login_link {
    margin-right: 1rem; }
  div#login_panel {
    width: 75%; } }

@media (max-width: 640px) {
  div#menu_main a.ls2-site-title {
    margin-top: 0.125rem; }
    div#menu_main a.ls2-site-title img.title {
      width: 14rem; } }

@media (max-width: 640px) {
  header#site_head div#head_content div#head_top {
    position: absolute; }
  header#site_head div#head_content div#head_middle div#ls2_logo a {
    display: none; }
  div#menu_main a.ls2-site-title img.title {
    display: none; }
  div#menu_main a.ls2-site-title img.logo {
    display: inline; } }

@media (max-width: 440px) {
  header#site_head div#head_content div#head_top {
    display: none; } }

body:hover ul#menu_main_top > li > a, body:hover ul#user_menu > li > a {
  transition: color 0.3s linear; }

body:hover ul#menu_main_top > li ul, body:hover ul#user_menu > li ul {
  transition: all 0.2s linear; }
  body:hover ul#menu_main_top > li ul li a, body:hover ul#user_menu > li ul li a {
    transition: all 0.2s linear; }

body:hover ul#quick_links li a {
  transition: color 0.3s linear; }

body:hover div#other_ls2_sites a {
  transition: background-color 0.25s linear; }
