body {
  margin: 0;
  padding: 0;
  min-width: 300px;
  font-family: 'Roboto', sans-serif;
  font-size: 1.2em;
  color: #42444a;
  overflow-x: hidden;
  overflow-y: scroll;
  background-color: #fff; }
  body .sso_no, body .sso_yes, body .content_yes, body .content_no {
    display: none; }
  body.sso_no .sso_no {
    display: inherit; }
  body.sso_yes .sso_yes {
    display: inherit; }
  body.content_yes .content_yes {
    display: inherit; }
  body.content_no .content_no {
    display: inherit; }
  body.soon h1 {
    text-align: center;
    font-size: 2em;
    padding: 2em;
    color: #555; }

.session-od a {
  color: #3c4f83;
  font-size: 0.6em;
  font-family: 'Roboto', sans-serif;
  font-weight: 300; }
  .session-od a .sso_yes {
    width: 7.5em;
    overflow: visible; }
  .session-od a.hover {
    color: #3c4f83; }

a {
  color: #4698cd;
  text-decoration: none; }
  a.play {
    display: grid;
    grid-template-columns: 5em 2em;
    grid-template-rows: 2.5em;
    grid-gap: .05em;
    margin: 0 0.2em 0.5em 0.2em; }
    a.play .pl-text, a.play .pl-icon {
      align-self: center;
      justify-self: center;
      width: 100%;
      height: 100%;
      color: #fff; }
    a.play .pl-text {
      font-family: 'Roboto', sans-serif;
      font-weight: 300;
      font-size: .9em;
      padding-top: 0.85em;
      background-color: #4698cd;
      text-transform: uppercase;
      box-sizing: border-box;
      border-radius: 0.2em 0 0 0.2em;
      letter-spacing: 0.2em; }
    a.play .pl-icon {
      font-size: 1.2em;
      padding-top: 0.5em;
      background-color: #4698cd;
      color: #fff;
      box-sizing: border-box; }
  a:hover {
    color: #3c4f83; }
    a:hover.play .pl-text, a:hover.play .pl-icon {
      color: #3c4f83; }

.inner {
  position: relative;
  width: 80%;
  margin: 0 10%; }

@media (max-width: 900px) {
  .inner {
    position: relative;
    width: 96%;
    margin: 0 2%; } }

@media (min-width: 1500px) {
  .inner {
    position: relative;
    width: 70%;
    margin: 0 15%; } }

@media (min-width: 1725px) {
  .inner {
    position: relative;
    width: 60%;
    margin: 0 20%; } }

@keyframes fadeInAnimation {
  0% {
    filter: blur(2px) opacity(0.2) brightness(50%); }
  100% {
    filter: blur(2px) opacity(0.7) brightness(100%); } }

h1, h2, h3, h4 {
  letter-spacing: .05em;
  line-height: 1.15; }

h1 {
  font-size: 2em; }

h2 {
  font-size: 1.5em;
  font-weight: 800; }

span.full {
  display: inherit; }

span.narr-in {
  display: none; }

span.narr-bl {
  display: none; }

#prompt {
  margin: 2em auto 15em auto;
  text-align: center; }
  #prompt h1 {
    margin-bottom: 2em;
    font-family: Roboto;
    font-weight: 100;
    font-style: italic;
    background-color: #fff;
    color: #42444a; }
  #prompt a {
    font-weight: 700; }
  #prompt .response {
    margin: 1em; }
    #prompt .response a {
      font-size: 2em; }

#header {
  position: relative;
  z-index: 100;
  padding: 0;
  text-align: center;
  background-color: #b9d4e4;
  color: #42444a;
  width: 100%;
  margin: 0px 0 0px 0;
  height: 404px; }
  #header .header-inner {
    z-index: 10;
    height: 404px;
    position: relative; }
    #header .header-inner .nw, #header .header-inner .nc, #header .header-inner .ne {
      height: 404px;
      position: absolute;
      text-align: center;
      bottom: 0; }
    #header .header-inner img {
      height: 404px;
      margin: 0 auto;
      position: relative; }
    #header .header-inner .nw {
      width: 250px;
      height: 231.5px;
      top: 81px;
      left: 0px;
      z-index: 40; }
      #header .header-inner .nw img {
        height: 231.5px;
        width: 250px; }
    #header .header-inner .nc {
      left: 0;
      right: 0px;
      z-index: 20; }
      #header .header-inner .nc img {
        position: relative;
        width: 0px;
        margin: 0 auto; }
    #header .header-inner .ne {
      width: 238px;
      height: 60px;
      right: 0px;
      z-index: 30; }
      #header .header-inner .ne img {
        height: 60px;
        width: 238px; }
  #header .inner_bg {
    position: absolute;
    z-index: 5;
    width: 11%;
    height: 404px;
    top: 0;
    right: 0; }
  #header .header_bg {
    position: absolute;
    z-index: 5;
    width: 1071.5px;
    height: 404px;
    top: 0;
    right: 0;
    background-color: #b9d4e4;
    background-image: url("./home_header.jpg");
    background-repeat: no-repeat;
    background-size: 1071.5px 404px;
    overflow: hidden; }

#header-nav {
  position: relative;
  padding: 0;
  color: #fff;
  background-color: #4698cd;
  width: 100%;
  margin: 0 0 0 0; }
  #header-nav .header-inner {
    padding: .2em 0;
    display: grid;
    grid-template-columns: auto auto; }
    #header-nav .header-inner .hnav {
      align-self: center;
      text-transform: uppercase; }
      #header-nav .header-inner .hnav#hnav1 {
        justify-self: self-start;
        text-align: left; }
      #header-nav .header-inner .hnav#hnav2 {
        justify-self: self-end;
        text-align: right;
        font-size: .8em;
        margin: 3px 0 0 1em; }
        #header-nav .header-inner .hnav#hnav2 span {
          color: #ccc; }
          #header-nav .header-inner .hnav#hnav2 span a {
            font-size: 1em;
            font-weight: 700;
            color: #fff; }
            #header-nav .header-inner .hnav#hnav2 span a:hover {
              color: #3c4f83; }
      #header-nav .header-inner .hnav a {
        font-size: .8em;
        color: #fff;
        text-decoration: none;
        padding: 0 .8em 0 .6em; }
        #header-nav .header-inner .hnav a:hover {
          color: #3c4f83; }

#header-nav {
  position: absolute;
  top: 0;
  background-color: rgba(185, 212, 228, 0.8);
  z-index: 300; }
  #header-nav .header-inner .hnav#hnav2 {
    margin-right: 0; }
    #header-nav .header-inner .hnav#hnav2 span {
      color: #888; }
      #header-nav .header-inner .hnav#hnav2 span a {
        color: #3c4f83; }
        #header-nav .header-inner .hnav#hnav2 span a:hover {
          color: #fff; }

body.place #fold-message {
  margin-top: 4em; }

#main {
  position: relative;
  z-index: 200; }
  #main:before {
    content: "";
    position: fixed;
    left: -2%;
    right: -2%;
    z-index: -1;
    top: -2%;
    bottom: -2%;
    width: 105%;
    height: 105%;
    display: block;
    background-size: 105% 105%;
    background-size: cover;
    animation: fadeInAnimation ease 3s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards; }

@keyframes fadeInAnimation {
  0% {
    filter: blur(2px) opacity(0.2) brightness(50%); }
  100% {
    filter: blur(2px) opacity(0.8) brightness(100%); } }

#upper {
  margin: 1em 0;
  padding: 1em 0;
  display: grid; }
  #upper.boxes {
    display: grid;
    grid-template-columns: auto;
    grid-gap: 2em;
    grid-template-rows: auto; }
    #upper.boxes a.content-cat {
      display: grid;
      padding: 1em;
      grid-template-columns: 1fr;
      grid-gap: .5em;
      color: white;
      background-color: #4698cd;
      text-decoration: none;
      text-align: center;
      border-radius: 0;
      border: 0px solid white; }
      #upper.boxes a.content-cat h2 {
        align-self: center;
        justify-self: center;
        font-weight: 700;
        font-size: 1.6em;
        color: white;
        margin-block-start: 0;
        margin-block-end: 0;
        letter-spacing: .1em;
        text-transform: uppercase;
        padding: 1em; }
      #upper.boxes a.content-cat img {
        height: 6em;
        padding: 1em .5em;
        justify-self: center;
        align-self: center;
        z-index: 10;
        filter: opacity(0.2); }
      #upper.boxes a.content-cat.scheme2 {
        color: white;
        background-color: #5d90c8;
        border-color: #e4f8f9; }
        #upper.boxes a.content-cat.scheme2:hover h2 {
          color: #3c4f83; }
      #upper.boxes a.content-cat.scheme3 {
        color: white;
        background-color: #00778b;
        border-color: #dde1e4; }
        #upper.boxes a.content-cat.scheme3:hover h2 {
          color: #3c4f83; }
      #upper.boxes a.content-cat:hover {
        border-color: white;
        color: #3c4f83; }
        #upper.boxes a.content-cat:hover img {
          filter: blur(0px) opacity(0.4); }
        #upper.boxes a.content-cat:hover h2 {
          color: #3c4f83; }
      #upper.boxes a.content-cat.left-bar {
        padding: 0;
        grid-gap: 0;
        border-color: white;
        grid-template-columns: 15px 5px 1fr; }
        #upper.boxes a.content-cat.left-bar .bar2 {
          width: 100%;
          height: 102%;
          margin-top: -1%;
          background-color: white; }
  #upper.boxes {
    grid-gap: 5em; }
    #upper.boxes a.content-cat {
      border: 6px solid white; }
      #upper.boxes a.content-cat h2 {
        font-weight: 400;
        letter-spacing: 0.05em; }
  #upper.info {
    display: block;
    font-size: 1em;
    font-weight: 400;
    color: #42444a; }
    #upper.info ul, #upper.info ol {
      padding-inline-start: 1.1em;
      margin-block-start: .2em; }
      #upper.info ul li, #upper.info ol li {
        margin-bottom: 0.2em; }
      #upper.info ul.bigger, #upper.info ol.bigger {
        font-size: 1em; }
    #upper.info p {
      margin-block-start: .1em; }
    #upper.info .space, #upper.info .nospace {
      margin-block-end: 1em;
      margin-block-start: .1em; }
      #upper.info .space ul, #upper.info .nospace ul {
        margin-block-end: 0.2em; }
    #upper.info .nospace {
      margin-block-end: 0.2em; }
    #upper.info h1 {
      font-size: 1.5em;
      font-weight: 700;
      color: #4698cd;
      text-transform: uppercase; }
    #upper.info h2 {
      font-size: 1.2em;
      font-weight: 300;
      color: #4698cd;
      margin-block-end: .2em;
      margin-block-start: 1.2em; }
      #upper.info h2.expand {
        background-color: #dde1e4;
        color: #3c4f83;
        font-family: 'Roboto', sans-serif;
        font-weight: 300;
        font-size: 1.4em;
        padding: .5em .2em;
        text-transform: uppercase; }
        #upper.info h2.expand span {
          float: right;
          font-weight: 300;
          font-size: .6em;
          padding: .5em; }
          #upper.info h2.expand span.ctl-collapse {
            display: none; }
          #upper.info h2.expand span.ctl-expand {
            display: block; }
        #upper.info h2.expand.expanded span.ctl-collapse {
          display: block; }
        #upper.info h2.expand.expanded span.ctl-expand {
          display: none; }
        #upper.info h2.expand:hover span {
          color: #4698cd; }
    #upper.info .expandable {
      display: none;
      margin: .5em 0 2em 0; }
      #upper.info .expandable .expanded {
        display: block; }
    #upper.info h3 {
      font-size: 1em;
      font-weight: 400;
      margin-block-end: .2em;
      text-decoration: underline; }
      #upper.info h3.fac {
        font-weight: 700;
        text-decoration: none; }
    #upper.info h4 {
      margin-block-end: .3em; }
    #upper.info .top-link {
      text-align: right;
      font-size: 90%; }
    #upper.info .schedule {
      font-size: .9em;
      font-weight: 300; }
      #upper.info .schedule .day {
        width: 100%;
        background-color: #dde1e4;
        color: #3c4f83;
        margin-bottom: 1em;
        border-radius: 5px; }
        #upper.info .schedule .day h4 {
          background-color: #3c4f83;
          color: #dde1e4;
          margin-block-start: .33em;
          padding: .5em;
          font-size: 1.1em;
          font-weight: 300;
          border-radius: 5px 5px 0 0; }
        #upper.info .schedule .day .timeslots {
          width: 100%;
          display: grid;
          grid-template-columns: 1fr 1fr 1fr; }
          #upper.info .schedule .day .timeslots .slot {
            padding: .5em; }
            #upper.info .schedule .day .timeslots .slot .time {
              font-weight: 700;
              margin-bottom: .3em; }
            #upper.info .schedule .day .timeslots .slot .sesstitle {
              margin-bottom: .3em;
              font-style: italic; }
            #upper.info .schedule .day .timeslots .slot .spk {
              margin-bottom: .3em; }
            #upper.info .schedule .day .timeslots .slot .spkafill {
              margin-bottom: .3em;
              font-size: 90%;
              font-style: italic; }
  #upper img.chair-welcome {
    width: 466px;
    height: 150px;
    margin: 2em 1em; }

body #upper {
  margin-top: -3.7em; }
  body #upper.live3up {
    grid-template-columns: 1fr 1fr;
    grid-gap: 1em;
    grid-template-rows: minmax(8em, auto); }
    body #upper.live3up .live-now {
      display: none; }

body.tl-lv #upper.live3up {
  grid-template-columns: 1fr 1fr 1fr; }
  body.tl-lv #upper.live3up .live-now {
    display: inherit; }

#middle {
  margin: 2em .4em;
  text-align: left;
  color: #42444a;
  font-weight: 500;
  font-size: 1.2em; }
  #middle a {
    font-weight: 400;
    text-transform: uppercase; }

#lower {
  margin: 0 0 1em 0;
  padding: 1em 0;
  display: grid;
  grid-template-columns: 1fr 252px;
  grid-gap: 0 2em;
  grid-template-areas: "sess sup"  "sess sup"; }
  #lower h2.sect-head {
    color: #4698cd;
    font-weight: 400;
    font-size: 1.3em;
    text-align: center;
    align-self: end;
    justify-self: center;
    background-color: rgba(221, 225, 228, 0.4);
    width: 100%;
    padding: .4em 0;
    margin-block-end: 0.5em; }
  #lower #lower-supporters {
    grid-area: sup;
    padding-top: 1em; }
  #lower #lower-sessions-label {
    grid-area: sessl; }
  #lower #lower-sessions {
    grid-area: sess; }
  #lower #lower-posters-card {
    grid-area: post; }
    #lower #lower-posters-card a img {
      height: 8em; }
  #lower #lower-empty {
    grid-area: empty; }
  #lower #lower-empty2 {
    grid-area: empty2; }
  #lower .supporters {
    justify-self: center;
    align-self: self-start;
    width: 252px;
    height: 252px;
    max-width: 252px;
    max-height: 252px;
    overflow-y: hidden;
    overflow-x: hidden;
    margin: 4px auto 1em auto;
    border-radius: 0;
    border: 1px solid #474c55;
    box-sizing: border-box; }
    #lower .supporters a.supporter {
      width: 250px;
      height: 250px;
      justify-self: center;
      display: block;
      background-color: white; }
      #lower .supporters a.supporter img {
        height: 250px;
        width: 250px; }
      #lower .supporters a.supporter:hover {
        border-color: #3c4f83; }
      #lower .supporters a.supporter.up {
        margin-top: -250px; }
  #lower #lower-highlights {
    margin-top: 1em; }
    #lower #lower-highlights h2 {
      background-color: rgba(221, 225, 228, 0.4);
      height: 100%;
      margin-block-start: 0;
      margin-block-end: .5em;
      padding: .5em;
      text-align: center;
      text-decoration: none;
      color: #4698cd; }
    #lower #lower-highlights img {
      height: 4em;
      justify-self: center; }

#lower .sessions a.info {
  display: grid;
  grid-template-columns: 4em 1fr;
  grid-template-rows: 1fr;
  padding: 0;
  grid-gap: 1.8em;
  font-weight: 300;
  font-size: 1.5em;
  color: white;
  margin-block-start: 0;
  margin-block-end: 0;
  letter-spacing: .1em;
  text-transform: uppercase;
  margin: .8em .4em;
  justify-items: self-start;
  text-align: left;
  align-items: center;
  color: #484C54;
  background-color: #fff;
  border-bottom: 0px solid #aeb2ba; }
  #lower .sessions a.info .session-icon {
    justify-self: center;
    color: #63666a;
    padding: 1.4em 1.4em 1.4em 1.5em;
    min-width: 1.1em;
    text-align: center;
    border: 2px solid #63666a; }
    #lower .sessions a.info .session-icon .accred-icon {
      width: 24px;
      margin: 2px 0 -2px 0; }
  #lower .sessions a.info:nth-child(even) .session-icon {
    color: #4698cd;
    border: 2px solid #4698cd; }
  #lower .sessions a.info:hover {
    color: #3c4f83; }
    #lower .sessions a.info:hover .session-icon {
      color: #3c4f83;
      border: 2px solid #3c4f83; }

@media (max-width: 900px) {
  #lower .sessions a.info {
    grid-gap: 1em; } }

@media (max-width: 600px) {
  #lower .sessions a.info {
    grid-gap: .4em;
    font-size: 1em; } }

#footer {
  width: 100%;
  margin: 0;
  padding: 1.4em 0;
  background-color: #4698cd; }
  #footer .footer_inner {
    z-index: 300;
    color: #fff;
    margin: 0 auto;
    display: grid;
    grid-template-columns: auto 1fr 248.5px; }
    #footer .footer_inner .footer_icons {
      display: grid;
      grid-template-columns: auto auto auto; }
      #footer .footer_inner .footer_icons a {
        font-size: 1.7em;
        display: inline-block;
        padding-right: 1.0em;
        justify-self: center;
        align-self: center;
        grid-gap: 1em 1em;
        color: #fff; }
    #footer .footer_inner .footer_textlinks {
      justify-self: self-start;
      align-self: center; }
      #footer .footer_inner .footer_textlinks a {
        display: inline-block;
        color: #fff; }
        #footer .footer_inner .footer_textlinks a.social {
          font-size: 1.0em;
          border-right: 1px solid white;
          padding-right: 0.5em; }
        #footer .footer_inner .footer_textlinks a.weburl {
          font-size: .9em;
          padding: 0 0 0 0.2em; }
    #footer .footer_inner #footer_logo {
      height: 59.25px;
      width: 238.5px; }
      #footer .footer_inner #footer_logo img {
        height: 59.25px;
        width: 238.5px; }

@media (max-width: 880px) {
  #footer .footer_inner {
    grid-template-columns: 1fr;
    grid-gap: 1.3em; }
    #footer .footer_inner .footer_icons a {
      padding-right: 0;
      justify-self: center;
      align-self: center;
      color: #fff; }
      #footer .footer_inner .footer_icons a:first-child {
        justify-self: self-end; }
      #footer .footer_inner .footer_icons a:last-child {
        justify-self: self-start; }
    #footer .footer_inner .footer_textlinks {
      justify-self: center;
      align-self: center; }
    #footer .footer_inner #footer_logo {
      justify-self: center;
      align-self: center; } }

@media (min-width: 1500px) {
  #upper.boxes {
    grid-gap: 8em; }
    #upper.boxes.live3up {
      grid-gap: 2em; } }

@media (max-width: 900px) {
  body.live #upper.live3up {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    grid-gap: 1em; }
  #lower {
    margin: 1em 0;
    padding: 1em 0;
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 1em;
    grid-template-areas: "sess" "sup"; }
  #overlay_fr #overlay_content img {
    width: 70%; }
  #upper.boxes {
    grid-gap: 1em; }
  #header-nav .header-inner .hnav {
    align-self: center; }
    #header-nav .header-inner .hnav#hnav1 {
      justify-self: self-start;
      text-align: left; }
    #header-nav .header-inner .hnav#hnav2 {
      justify-self: self-end;
      text-align: right; }
    #header-nav .header-inner .hnav a {
      display: block;
      padding: .5em; } }

@media (max-width: 600px) {
  body #upper.live3up {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    grid-gap: 1em; }
  body #upper img.chair-welcome {
    width: 300px;
    height: 96.56652px;
    margin: 2em auto; }
  #lower {
    grid-template-columns: 1fr;
    grid-template-areas: "sess" "sup"; }
    #lower .sessions .session {
      grid-template-columns: 1fr;
      grid-template-rows: auto;
      grid-gap: .2em .05em;
      grid-template-areas: "session-title" "session-od" "session-spk"		 "session-livel"			 "session-live"; }
      #lower .sessions .session .session-od {
        padding: .5em 0; }
      #lower .sessions .session .session-spkl, #lower .sessions .session .session-odl {
        display: none; }
      #lower .sessions .session.session-2spk {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        grid-gap: .2em .05em;
        grid-template-areas: "session-title" "session-od" "session-spk"		 "session-livel"			 "session-live" "session-spk2"		 "session-livel2"			 "session-live2"; }
        #lower .sessions .session.session-2spk .session-spk2 {
          padding-top: 1.5em; }
        #lower .sessions .session.session-2spk .session-live2 {
          padding-top: 0; }
        #lower .sessions .session.session-2spk .session-livel2 {
          display: block; } }
