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: #95c1cc;
  color: #42444a;
  width: 100%;
  margin: 0px 0 0px 0;
  height: 331px; }
  #header .header-inner {
    z-index: 10;
    height: 331px;
    position: relative; }
    #header .header-inner .nw, #header .header-inner .nc, #header .header-inner .ne {
      height: 331px;
      position: absolute;
      text-align: center;
      bottom: 0; }
    #header .header-inner img {
      height: 331px;
      margin: 0 auto;
      position: relative; }
    #header .header-inner .nw {
      width: 250px;
      height: 231.5px;
      top: 51px;
      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: 331px;
    top: 0;
    right: 0; }
  #header .header_bg {
    position: absolute;
    z-index: 5;
    width: 1268px;
    height: 331px;
    top: 0;
    right: 0;
    background-color: #95c1cc;
    background-image: url("./subp_header.jpg");
    background-repeat: no-repeat;
    background-size: 1268px 331px;
    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; }

#main {
  overflow: auto;
  position: relative; }
  #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%); } }

#main {
  min-height: 700px; }

.navtabs {
  margin: 0;
  padding: 3em 0 0 0;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto minmax(50px, auto);
  grid-gap: 5px; }
  .navtabs .tabrow {
    display: grid;
    grid-template-columns: repeat(3, 1fr) 2em;
    grid-template-rows: auto;
    grid-gap: 0; }
    .navtabs .tabrow .tab {
      display: grid;
      grid-template-columns: 1fr;
      grid-template-rows: 1fr;
      height: 100%;
      width: 100%;
      padding: .5em 0 1em 0;
      align-self: center;
      font-weight: 700;
      text-transform: uppercase;
      text-align: center; }
      .navtabs .tabrow .tab.selected {
        color: #ebf5f1;
        background-color: #4698cd; }
    .navtabs .tabrow a.tab {
      background-color: #ccced2;
      color: white;
      text-decoration: none;
      text-transform: uppercase; }
      .navtabs .tabrow a.tab:hover {
        background-color: #3c4f83;
        color: white; }
    .navtabs .tabrow a.tab .tabname, .navtabs .tabrow .tab .tabname {
      font-size: 18px;
      line-height: 22px;
      align-self: center;
      justify-self: center; }
  .navtabs .pagetitle {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    height: 100%;
    width: 100%;
    background-color: white; }
    .navtabs .pagetitle h1 {
      text-align: center;
      color: #4698cd;
      font-size: 2em;
      padding: 1.5em .5em .5em .5em;
      margin-block-start: 0;
      margin-block-end: 0;
      align-self: center;
      justify-self: center;
      text-transform: uppercase; }

.filter {
  text-align: center;
  margin: 1em auto 1.5em auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: .5em; }
  .filter .filter-label {
    align-self: center;
    justify-self: self-end;
    font-style: italic;
    text-transform: uppercase;
    font-size: 0.8em; }
  .filter .filter-form {
    align-self: center;
    justify-self: self-start; }
    .filter .filter-form select {
      font-size: .9em;
      padding: .7em;
      border-radius: 4px;
      background-color: #f1f1f1;
      border: 1px solid #999999; }

@media (max-width: 700px) {
  .filter {
    grid-template-columns: 1fr; }
    .filter .filter-label {
      justify-self: center; }
    .filter .filter-form {
      justify-self: center; }
      .filter .filter-form select {
        font-size: .8em;
        padding: .5em; } }

.sessions .tz-key {
  font-style: italic;
  font-size: .7em;
  margin: 0 0 .2em 0; }
  .sessions .tz-key .dt-local {
    display: none; }
  .sessions .tz-key.localized .dt-local {
    display: block; }

.sessions h2 {
  text-align: center;
  justify-self: center;
  align-self: center;
  font-style: italic;
  font-weight: 300; }

.sessions .session {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto auto auto;
  padding: 0;
  font-weight: 300;
  font-size: 1em;
  margin-block-start: 0;
  margin-block-end: 0;
  margin: .8em 0 2em 0;
  color: #484C54;
  background-color: #ecf3f9;
  text-decoration: none;
  text-align: center;
  border-radius: 0;
  border: 0px solid #4698cd; }
  .sessions .session .sess-header {
    color: #4698cd;
    background-color: #4698cd; }
  .sessions .session .sess-title {
    align-self: center;
    justify-self: center;
    width: 100%;
    height: 100%;
    margin: 0;
    font-size: 1em;
    font-weight: 300;
    padding: 0.7em 0.3em;
    color: #fff;
    background-color: #4698cd;
    box-sizing: border-box;
    text-transform: uppercase;
    letter-spacing: 0.05em; }
  .sessions .session .dt-on {
    display: inherit; }
  .sessions .session .dt-off {
    display: inherit; }
  .sessions .session.tl-pl .sess-footer .dt-on {
    display: none; }
  .sessions .session.tl-pl .sess-footer .dt-off {
    display: inherit; }
  .sessions .session.tl-all .sess-footer .dt-on, .sessions .session.tl-od .sess-footer .dt-on {
    display: none; }
  .sessions .session.tl-all .sess-footer .dt-off, .sessions .session.tl-od .sess-footer .dt-off {
    display: inherit; }
  .sessions .session.tl-all.oda .sess-footer .dt-off, .sessions .session.tl-all.sess-rt-od .sess-footer .dt-off, .sessions .session.tl-od.oda .sess-footer .dt-off, .sessions .session.tl-od.sess-rt-od .sess-footer .dt-off {
    display: none; }
  .sessions .session.tl-all.oda .sess-footer .dt-on, .sessions .session.tl-all.sess-rt-od .sess-footer .dt-on, .sessions .session.tl-od.oda .sess-footer .dt-on, .sessions .session.tl-od.sess-rt-od .sess-footer .dt-on {
    display: inherit; }
  .sessions .session.tl-lv .sess-footer .dt-on {
    display: block; }
  .sessions .session.tl-lv .sess-footer .dt-off {
    display: none; }
  .sessions .session .sess-date-soon {
    align-self: center;
    justify-self: center;
    color: #4698cd; }
    .sessions .session .sess-date-soon .sess-date-soon-label {
      font-size: .6em;
      color: #484C54;
      font-style: italic; }
    .sessions .session .sess-date-soon .sess-date-soon-day, .sessions .session .sess-date-soon .sess-date-soon-time {
      font-size: .6em;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0; }
    .sessions .session .sess-date-soon .sess-date-soon-day {
      font-size: .8em; }
  .sessions .session .s-date {
    color: #4698cd; }
    .sessions .session .s-date .s-date-label {
      font-size: .6em;
      color: #484C54;
      font-style: italic;
      text-transform: uppercase; }
    .sessions .session .s-date .s-date-day, .sessions .session .s-date .s-date-time {
      font-size: .8em;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0; }
    .sessions .session .s-date .s-date-time {
      font-size: .6em; }
  .sessions .session .sess-inner {
    align-self: center; }
    .sessions .session .sess-inner .sess-details-action {
      text-align: right;
      font-size: .7em;
      padding: .2em .5em;
      text-transform: uppercase;
      font-weight: 400; }
      .sessions .session .sess-inner .sess-details-action a {
        color: #4698cd; }
        .sessions .session .sess-inner .sess-details-action a:hover {
          color: #3c4f83;
          text-decoration: underline; }
    .sessions .session .sess-inner .sess-livesession {
      margin-bottom: 1em; }
      .sessions .session .sess-inner .sess-livesession .sess-livesession-title {
        font-weight: bold;
        margin-top: 1em; }
    .sessions .session .sess-inner .sess-player, .sessions .session .sess-inner .sess-details {
      grid-template-columns: 150px 1fr 150px;
      grid-template-rows: auto;
      grid-gap: .5em;
      padding: 0 .5em .5em .5em; }
    .sessions .session .sess-inner .sess-player {
      display: grid; }
      .sessions .session .sess-inner .sess-player:nth-child(odd) {
        background-color: #f8fafd; }
      .sessions .session .sess-inner .sess-player .sess-action {
        align-self: center;
        justify-self: start; }
        .sessions .session .sess-inner .sess-player .sess-action.s-date {
          align-self: center;
          text-align: center; }
        .sessions .session .sess-inner .sess-player .sess-action a {
          color: #4698cd;
          text-decoration: none; }
          .sessions .session .sess-inner .sess-player .sess-action a.action {
            display: grid;
            grid-template-columns: 5em 2em;
            grid-template-rows: 2.5em;
            grid-gap: .05em;
            margin: 0.2em; }
            .sessions .session .sess-inner .sess-player .sess-action a.action .action-text, .sessions .session .sess-inner .sess-player .sess-action a.action .action-icon {
              align-self: center;
              justify-self: center;
              width: 100%;
              height: 100%;
              color: #fff; }
            .sessions .session .sess-inner .sess-player .sess-action a.action .action-text {
              font-family: 'Roboto', sans-serif;
              font-weight: 300;
              font-size: .9em;
              padding-top: 0.85em;
              background-color: #3c4f83;
              text-transform: uppercase;
              box-sizing: border-box;
              border-radius: 0.2em 0 0 0.2em;
              letter-spacing: 0.2em; }
            .sessions .session .sess-inner .sess-player .sess-action a.action .action-icon {
              font-size: 1.2em;
              padding-top: 0.5em;
              border-radius: 0 0.2em 0.2em 0;
              background-color: #5d90c8;
              color: #fff;
              box-sizing: border-box; }
            .sessions .session .sess-inner .sess-player .sess-action a.action:hover .action-text, .sessions .session .sess-inner .sess-player .sess-action a.action:hover .action-icon {
              color: #4698cd; }
        .sessions .session .sess-inner .sess-player .sess-action .sso_no a, .sessions .session .sess-inner .sess-player .sess-action .content_no a {
          text-transform: uppercase;
          font-size: 10px; }
      .sessions .session .sess-inner .sess-player .presentations {
        margin: 0 8px 8px 8px; }
        .sessions .session .sess-inner .sess-player .presentations .sess-description {
          text-align: left;
          margin: 1em 15px 1.5em 10%;
          font-size: 90%; }
        .sessions .session .sess-inner .sess-player .presentations .presentation {
          margin-top: 1em; }
          .sessions .session .sess-inner .sess-player .presentations .presentation:first-child {
            margin-top: 0; }
          .sessions .session .sess-inner .sess-player .presentations .presentation .speakers {
            margin-top: .5em; }
          .sessions .session .sess-inner .sess-player .presentations .presentation .presTitle {
            font-size: .8em;
            margin-bottom: .3em;
            color: #4698cd;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            font-weight: 500; }
          .sessions .session .sess-inner .sess-player .presentations .presentation .spkDetails {
            text-align: left;
            font-size: .8em;
            margin: 10px 15px 15px 10%; }
          .sessions .session .sess-inner .sess-player .presentations .presentation .presSpk {
            margin-top: 1em; }
            .sessions .session .sess-inner .sess-player .presentations .presentation .presSpk:first-child {
              margin-top: 0; }
            .sessions .session .sess-inner .sess-player .presentations .presentation .presSpk .speakerName {
              font-size: 1em;
              font-weight: 500; }
            .sessions .session .sess-inner .sess-player .presentations .presentation .presSpk .affiliation {
              font-size: .8em;
              font-style: italic;
              font-weight: 300; }
            .sessions .session .sess-inner .sess-player .presentations .presentation .presSpk .spkDiscs {
              margin-bottom: .8em;
              font-style: italic; }
              .sessions .session .sess-inner .sess-player .presentations .presentation .presSpk .spkDiscs h3 {
                font-weight: 700;
                font-style: italic;
                margin-block-start: .3em;
                margin-block-end: 0;
                font-size: .8em;
                text-transform: uppercase; }
              .sessions .session .sess-inner .sess-player .presentations .presentation .presSpk .spkDiscs .spkDisc {
                margin-bottom: .3em; }
                .sessions .session .sess-inner .sess-player .presentations .presentation .presSpk .spkDiscs .spkDisc .spkDiscLabel {
                  font-style: normal; }
            .sessions .session .sess-inner .sess-player .presentations .presentation .presSpk .spkBio {
              margin-bottom: .8em; }
          .sessions .session .sess-inner .sess-player .presentations .presentation .spkRole {
            padding: 0 0 0 .5em;
            font-weight: 300;
            text-transform: uppercase;
            color: #777e8b; }
    .sessions .session .sess-inner .sess-sthnk {
      font-size: .8em;
      font-style: italic; }
    .sessions .session .sess-inner .sess-sup {
      margin: 1em auto .5em auto; }
      .sessions .session .sess-inner .sess-sup .sess-sup-label {
        font-size: .6em;
        color: #777e8b;
        font-style: italic;
        margin-bottom: .4em; }
      .sessions .session .sess-inner .sess-sup .sess-sup-name {
        font-size: 1em;
        color: #4698cd; }
    .sessions .session .sess-inner .sess-download {
      margin: .5em; }
      .sessions .session .sess-inner .sess-download a.sess-download-link {
        font-size: .8em;
        text-transform: uppercase;
        color: #3c4f83; }
        .sessions .session .sess-inner .sess-download a.sess-download-link:hover {
          color: #4698cd; }
    .sessions .session .sess-inner .sess-details {
      font-size: .8em; }
      .sessions .session .sess-inner .sess-details .sess-details-inner {
        margin: 0 11px 8px 11px; }
        .sessions .session .sess-inner .sess-details .sess-details-inner .sess-detail-sect {
          margin: 0; }
          .sessions .session .sess-inner .sess-details .sess-details-inner .sess-detail-sect .sess-detail-body {
            text-align: left;
            margin: 5px 15px 15px 10%; }
            .sessions .session .sess-inner .sess-details .sess-details-inner .sess-detail-sect .sess-detail-body h3 {
              font-style: italic;
              font-weight: bold;
              margin-block-start: .3em;
              margin-block-end: 0.3em; }
            .sessions .session .sess-inner .sess-details .sess-details-inner .sess-detail-sect .sess-detail-body h4 {
              font-style: italic;
              font-weight: bold;
              margin-block-start: .3em;
              margin-block-end: 0.3em; }
            .sessions .session .sess-inner .sess-details .sess-details-inner .sess-detail-sect .sess-detail-body ul {
              margin-block-start: 0em;
              padding-inline-start: 1.3em; }
              .sessions .session .sess-inner .sess-details .sess-details-inner .sess-detail-sect .sess-detail-body ul li {
                margin-bottom: .5em; }
  .sessions .session .sess-footer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    width: 100%;
    height: 100%;
    margin: 0;
    font-size: .6em;
    font-weight: 300;
    padding: .5em 1em .3em 1em;
    color: #ecf3f9;
    background-color: #4698cd;
    box-sizing: border-box;
    text-transform: uppercase;
    letter-spacing: 0.05em; }
    .sessions .session .sess-footer .s-date, .sessions .session .sess-footer .sess-date {
      justify-self: self-start;
      text-align: left;
      align-self: center;
      color: #ecf3f9; }
    .sessions .session .sess-footer .sess-cats {
      justify-self: self-end;
      text-align: right;
      align-self: center; }
      .sessions .session .sess-footer .sess-cats .sess-cat {
        display: inline-block;
        padding: 0 .8em; }
  .sessions .session.tl-od .sess-inner .sess-player .sess-action.s-action, .sessions .session.tl-oda .sess-inner .sess-player .sess-action.s-action, .sessions .session.tl-all .sess-inner .sess-player .sess-action.s-action {
    display: none; }
    .sessions .session.tl-od .sess-inner .sess-player .sess-action.s-action.always, .sessions .session.tl-oda .sess-inner .sess-player .sess-action.s-action.always, .sessions .session.tl-all .sess-inner .sess-player .sess-action.s-action.always {
      display: inherit; }
  .sessions .session.tl-od .sess-inner .sess-player .sess-action.s-date, .sessions .session.tl-oda .sess-inner .sess-player .sess-action.s-date, .sessions .session.tl-all .sess-inner .sess-player .sess-action.s-date {
    display: inherit; }
  .sessions .session.tl-od .sess-inner .sess-player.od .sess-action.s-action, .sessions .session.tl-oda .sess-inner .sess-player.od .sess-action.s-action, .sessions .session.tl-all .sess-inner .sess-player.od .sess-action.s-action {
    display: inherit; }
  .sessions .session.tl-od .sess-inner .sess-player.od .sess-action.s-date, .sessions .session.tl-oda .sess-inner .sess-player.od .sess-action.s-date, .sessions .session.tl-all .sess-inner .sess-player.od .sess-action.s-date {
    display: none; }
  .sessions .session div.notdetail {
    display: block; }
  .sessions .session span.notdetail a.notdetail {
    display: inline-block; }
  .sessions .session .detail, .sessions .session div.detail {
    display: none; }
  .sessions .session.details .notdetail {
    display: none; }
  .sessions .session.details div.detail {
    display: block; }
    .sessions .session.details div.detail.sess-details {
      display: grid; }
  .sessions .session.details span.detail, .sessions .session.details a.detail {
    display: inline-block; }
  .sessions .session.suppress-details-link .sess-details-action {
    display: none; }
  .sessions .session.filtered {
    display: none; }
  .sessions .session .dt-local {
    display: none; }
  .sessions .session.localized .dt-local {
    display: inherit; }
  .sessions .session.localized .sess-header .s-date-time-o .s-date-time.dt-event {
    color: #5a5d65; }
  .sessions .session.localized .sess-header .s-date-time-o .s-date-time.dt-local {
    display: inherit; }
  .sessions .session.localized .sess-inner .sess-player .presentations .presentation-time {
    display: inherit;
    grid-template-columns: 4.7em 4.8em; }
    .sessions .session.localized .sess-inner .sess-player .presentations .presentation-time.dt-local {
      display: inherit; }
    .sessions .session.localized .sess-inner .sess-player .presentations .presentation-time .dt-event {
      font-size: .7em; }

body .sessions h2.tl-lv {
  display: none; }

body .sessions h2.tl-pl {
  display: none; }

body .sessions h2.tl-oda {
  display: none; }

body .sessions .session.tl-lv, body .sessions .session.tl-od {
  display: none; }

body .sessions .session.tl-pl {
  display: inherit; }
  body .sessions .session.tl-pl.live {
    display: none; }

body .sessions .session.tl-oda {
  display: none; }

body.lv .sessions .session.tl-pl.oda, body.all .sessions .session.tl-pl.oda, body.as .sessions .session.tl-pl.oda, body.pt .sessions .session.tl-pl.oda {
  display: none; }

body.see .sessions .session .sess-inner .sess-details-action {
  display: none; }

body.see .sessions .session .sess-inner .sess-player {
  padding-top: .5em; }

body.tl-lv .sessions h2.tl-lv, body.tl-lv .sessions h2.tl-pl {
  display: inherit; }

body.tl-lv .sessions .session.tl-lv.live {
  display: inherit; }

body.tl-lv .sessions .session.tl-lv.pull, body.tl-lv .sessions .session.tl-lv .pull {
  display: none; }

body.tl-lv .sessions .session.tl-all.live {
  display: none; }

body.tl-lv.last-sessions h2.tl-pl {
  display: none; }

body.tl-oda h2.tl-oda, body.tl-oda h2.tl-pl {
  display: inherit; }

body.tl-oda .session.tl-oda.oda {
  display: inherit; }
  body.tl-oda .session.tl-oda.oda.filtered {
    display: none; }
  body.tl-oda .session.tl-oda.oda.pull, body.tl-oda .session.tl-oda.oda .pull {
    display: none; }

body.tl-ended h2.tl-lv {
  display: none; }

body.tl-ended h2.tl-pl {
  display: none; }

body.tl-ended h2.tl-oda {
  display: none; }

body .sessions .session.filtered {
  display: none; }

.sessions .session.sess-rt-pt {
  border-color: #3c4f83;
  background-color: #ecf3f9; }
  .sessions .session.sess-rt-pt .sess-title {
    background-color: #3c4f83; }
  .sessions .session.sess-rt-pt .sess-footer {
    background-color: #3c4f83;
    color: #ecf3f9; }
  .sessions .session.sess-rt-pt .sess-date-soon {
    color: #3c4f83; }
  .sessions .session.sess-rt-pt .sess-inner .sess-details-action a {
    color: #3c4f83; }
    .sessions .session.sess-rt-pt .sess-inner .sess-details-action a:hover {
      color: #4698cd; }
  .sessions .session.sess-rt-pt .sess-inner .sess-player .sess-action.s-date {
    color: #3c4f83; }
  .sessions .session.sess-rt-pt .sess-inner .sess-player:nth-child(odd) {
    background-color: #f8fafd; }
  .sessions .session.sess-rt-pt .sess-inner .sess-player .presentations {
    margin: .5em; }
    .sessions .session.sess-rt-pt .sess-inner .sess-player .presentations .presentation .presTitle {
      color: #3c4f83; }
  .sessions .session.sess-rt-pt .sess-inner .sess-sup .sess-sup-name {
    color: #3c4f83; }

.sessions .session .sess-inner
.sessions .session.sess-rt-as {
  border-color: #00778b;
  background-color: #eaf5f5; }
  .sessions .session .sess-inner
.sessions .session.sess-rt-as .sess-title {
    background-color: #00778b; }
  .sessions .session .sess-inner
.sessions .session.sess-rt-as .sess-footer {
    background-color: #00778b;
    color: #eaf5f5; }
  .sessions .session .sess-inner
.sessions .session.sess-rt-as .sess-date-soon {
    color: #00778b; }
  .sessions .session .sess-inner
.sessions .session.sess-rt-as .sess-inner .sess-details-action a {
    color: #00778b; }
    .sessions .session .sess-inner
.sessions .session.sess-rt-as .sess-inner .sess-details-action a:hover {
      color: #4698cd; }
  .sessions .session .sess-inner
.sessions .session.sess-rt-as .sess-inner .sess-player .sess-action.s-date {
    color: #00778b; }
  .sessions .session .sess-inner
.sessions .session.sess-rt-as .sess-inner .sess-player:nth-child(odd) {
    background-color: #f4fafa; }
  .sessions .session .sess-inner
.sessions .session.sess-rt-as .sess-inner .sess-player .presentations {
    margin: .5em; }
    .sessions .session .sess-inner
.sessions .session.sess-rt-as .sess-inner .sess-player .presentations .presentation .presTitle {
      color: #00778b; }
  .sessions .session .sess-inner
.sessions .session.sess-rt-as .sess-inner .sess-sup .sess-sup-name {
    color: #00778b; }

.thankyous {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2em 2em;
  align-content: center;
  justify-content: center; }
  .thankyous .thankyou {
    display: grid;
    grid-template-rows: auto 3em;
    gap: 1em 1em;
    justify-content: center; }
    .thankyous .thankyou img {
      width: 225px;
      align-self: self-end; }
    .thankyous .thankyou .ty-label {
      font-size: .8em;
      text-align: center;
      align-self: self-start; }
  .thankyous .thankyoutop {
    grid-column: 1/3; }
    .thankyous .thankyoutop img {
      width: 470px; }

@media (max-width: 600px) {
  .thankyous {
    display: block; }
    .thankyous .thankyou {
      margin: 2em auto; }
    .thankyous .thankyoutop img {
      width: 300px; } }

.searchBar {
  text-align: center;
  margin: 0 auto; }
  .searchBar #search-term {
    width: 50%;
    height: 1.8em;
    padding: 4px;
    margin-top: 0; }
  .searchBar input[type="submit"] {
    width: 20%;
    height: 1.8em;
    padding: 4px;
    margin-top: 0; }

#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.info a {
  color: #4698cd; }

#upper.info h2 {
  color: #3c4f83; }

#upper.info ul {
  list-style: none; }
  #upper.info ul li::before {
    color: #4698cd;
    content: "\2022";
    margin-left: -1em;
    padding-right: .5em; }
  #upper.info ul.nobullet {
    padding-inline-start: 2em; }
    #upper.info ul.nobullet li {
      margin-bottom: 0.5em; }
      #upper.info ul.nobullet li::before {
        content: "";
        margin-left: 0;
        padding-right: 0; }

#lower {
  margin: 0 0 1em 0;
  padding: 1em 0; }

#overlay_o {
  top: 0;
  left: 0;
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 500;
  background-color: rgba(153, 153, 153, 0.85);
  color: black;
  display: none;
  grid-template-rows: auto;
  grid-template-columns: auto;
  text-align: center; }
  #overlay_o #overlay_cl {
    align-self: self-start;
    justify-self: self-end;
    padding: .3em;
    text-align: right; }
    #overlay_o #overlay_cl .fa-window-close {
      font-size: 2em; }
  #overlay_o #overlay_i {
    align-self: center;
    justify-self: center;
    padding: .2em;
    display: grid;
    grid-template-rows: 2em 1fr;
    grid-template-columns: 1fr;
    background-color: rgba(221, 221, 221, 0.9);
    border-radius: 10px;
    border: 1px solid #666; }
    #overlay_o #overlay_i #overlay_body {
      align-self: center;
      justify-self: center;
      padding: 1em; }
  #overlay_o a {
    font-size: 2em;
    display: block; }
  #overlay_o.on {
    display: grid; }

#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 (max-width: 1100px) {
  .sessions .session .sess-inner .sess-player, .sessions .session .sess-inner .sess-details {
    grid-template-columns: 150px 1fr; }
  .sessions .session .sess-inner .sess-player .presentations .presentation .spkDetails {
    margin: .5em 0 1em 0; }
  .sessions .session .sess-inner .sess-details .sess-details-inner .sess-detail-sect .sess-detail-body {
    margin: .5em 0 1em 0; } }

@media (max-width: 700px) {
  .navtabs {
    grid-template-rows: auto minmax(50px, auto); }
    .navtabs .tabrow a.tab .tabname, .navtabs .tabrow .tab .tabname {
      font-size: 14px;
      line-height: 22px;
      align-self: center;
      justify-self: center;
      padding: .1em .4em; }
      .navtabs .tabrow a.tab .tabname span.full, .navtabs .tabrow .tab .tabname span.full {
        text-align: center; }
    .navtabs .pagetitle h1 {
      font-size: 1.5em; } }

@media (max-width: 600px) {
  .sessions .session .sess-inner {
    align-self: center; }
    .sessions .session .sess-inner .sess-details {
      grid-template-columns: 1px 1fr;
      padding-left: 0; }
    .sessions .session .sess-inner .sess-player {
      grid-template-columns: 1fr; }
      .sessions .session .sess-inner .sess-player .sess-action {
        text-align: center;
        justify-self: center; } }

@media (max-width: 400px) {
  .navtabs {
    grid-template-rows: auto minmax(50px, auto); }
    .navtabs .tabrow a.tab .tabname, .navtabs .tabrow .tab .tabname {
      font-size: 14px;
      line-height: 22px; }
      .navtabs .tabrow a.tab .tabname span.full, .navtabs .tabrow .tab .tabname span.full {
        display: none; }
      .navtabs .tabrow a.tab .tabname span.narr-in, .navtabs .tabrow .tab .tabname span.narr-in {
        display: inherit; }
      .navtabs .tabrow a.tab .tabname span.narr-bl, .navtabs .tabrow .tab .tabname span.narr-bl {
        display: block;
        text-align: center; } }
