@charset "UTF-8";
#header #logo img, #header #navbar .panel-activation, #header #logo h3 {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.default-animation, #header #logo img, #header #navbar ul.navigation, #header #logo h3, #header, #body {
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.padding-horiz, #header, #body, .template-fullwidth > h1, .template-fullwidth > h2, .template-fullwidth > h3, .template-fullwidth > h4, .template-fullwidth > h5, .template-fullwidth > h6, .fullwidth #header, .fullwidth #breadcrumbs, .fullwidth .blog-header, .fullwidth .blog-content-item, .fullwidth .content-wrapper, .fullwidth ul.pagination, .fullwidth #body .modular-row, .fullwidth footer .modular-row {
  padding-left: 7rem;
  padding-right: 7rem;
}
@media only all and (max-width: 59.938em) {
  .padding-horiz, #header, #body, .template-fullwidth > h1, .template-fullwidth > h2, .template-fullwidth > h3, .template-fullwidth > h4, .template-fullwidth > h5, .template-fullwidth > h6, .fullwidth #header, .fullwidth #breadcrumbs, .fullwidth .blog-header, .fullwidth .blog-content-item, .fullwidth .content-wrapper, .fullwidth ul.pagination, .fullwidth #body .modular-row, .fullwidth footer .modular-row {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}
@media only all and (max-width: 47.938em) {
  .padding-horiz, #header, #body, .template-fullwidth > h1, .template-fullwidth > h2, .template-fullwidth > h3, .template-fullwidth > h4, .template-fullwidth > h5, .template-fullwidth > h6, .fullwidth #header, .fullwidth #breadcrumbs, .fullwidth .blog-header, .fullwidth .blog-content-item, .fullwidth .content-wrapper, .fullwidth ul.pagination, .fullwidth #body .modular-row, .fullwidth footer .modular-row {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

.padding-vert {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

html, body, button, input, select, textarea, .pure-g, .pure-g [class*=pure-u] {
  font-family: "IBM Plex Sans", "Helvetica", "Tahoma", "Geneva", "Arial", sans-serif;
  font-weight: 400;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "IBM Plex Sans", "Helvetica", "Tahoma", "Geneva", "Arial", sans-serif;
  font-weight: 400;
  text-rendering: optimizeLegibility;
  letter-spacing: 0px;
}

h1 {
  font-size: 6rem;
}
@media only all and (max-width: 47.938em) {
  h1 {
    font-size: 2.5rem;
    line-height: 1.2;
    margin-bottom: 2.5rem;
  }
}

@media only all and (min-width: 48em) and (max-width: 59.938em) {
  h2 {
    font-size: 2.6rem;
  }
}
@media only all and (max-width: 47.938em) {
  h2 {
    font-size: 2.5rem;
  }
}

@media only all and (min-width: 48em) and (max-width: 59.938em) {
  h3 {
    font-size: 2.8rem;
  }
}
@media only all and (max-width: 47.938em) {
  h3 {
    font-size: 2.7rem;
  }
}

@media only all and (min-width: 48em) and (max-width: 59.938em) {
  h4 {
    font-size: 1.6rem;
  }
}
@media only all and (max-width: 47.938em) {
  h4 {
    font-size: 1.5rem;
  }
}

h1 {
  text-align: center;
  letter-spacing: -3px;
}

h2 {
  letter-spacing: -2px;
}

h3 {
  letter-spacing: -1px;
}

h1 + h2 {
  margin: -2rem 0 2rem 0;
  font-size: 3rem;
  line-height: 1;
  text-align: center;
  font-family: "IBM Plex Sans", "Helvetica", "Tahoma", "Geneva", "Arial", sans-serif;
  font-weight: 300;
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  h1 + h2 {
    font-size: 2.8rem;
  }
}
@media only all and (max-width: 47.938em) {
  h1 + h2 {
    font-size: 2.5rem;
  }
}

h2 + h3 {
  margin: 0.5rem 0 2rem 0;
  font-size: 1.6rem;
  line-height: 1;
  text-align: center;
  font-family: "IBM Plex Sans", "Helvetica", "Tahoma", "Geneva", "Arial", sans-serif;
  font-weight: 300;
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  h2 + h3 {
    font-size: 1.6rem;
  }
}
@media only all and (max-width: 47.938em) {
  h2 + h3 {
    font-size: 1.5rem;
  }
}

blockquote {
  border-left: 10px solid #F0F2F4;
}
blockquote p {
  font-size: 1.1rem;
  color: #999;
}
blockquote cite {
  display: block;
  text-align: right;
  color: #666;
  font-size: 1.2rem;
}

blockquote > blockquote > blockquote {
  margin: 0;
}
blockquote > blockquote > blockquote p {
  padding: 15px;
  display: block;
  font-size: 1rem;
  margin-top: 0rem;
  margin-bottom: 0rem;
}
blockquote > blockquote > blockquote > p {
  margin-left: -71px;
  border-left: 10px solid #F0AD4E;
  background: #FCF8F2;
  color: #df8a13;
}
blockquote > blockquote > blockquote > p a {
  color: #b06d0f;
}
blockquote > blockquote > blockquote > p a:hover {
  color: #f2b866;
}
blockquote > blockquote > blockquote > blockquote > p {
  margin-left: -94px;
  border-left: 10px solid #D9534F;
  background: #FDF7F7;
  color: #b52b27;
}
blockquote > blockquote > blockquote > blockquote > p a {
  color: #8b211e;
}
blockquote > blockquote > blockquote > blockquote > p a:hover {
  color: #de6764;
}
blockquote > blockquote > blockquote > blockquote > blockquote > p {
  margin-left: -118px;
  border-left: 10px solid #5BC0DE;
  background: #F4F8FA;
  color: #28a1c5;
}
blockquote > blockquote > blockquote > blockquote > blockquote > p a {
  color: #1f7e9a;
}
blockquote > blockquote > blockquote > blockquote > blockquote > p a:hover {
  color: #70c8e2;
}
blockquote > blockquote > blockquote > blockquote > blockquote > blockquote > p {
  margin-left: -142px;
  border-left: 10px solid #5CB85C;
  background: #F1F9F1;
  color: #3d8b3d;
}
blockquote > blockquote > blockquote > blockquote > blockquote > blockquote > p a {
  color: #2d672d;
}
blockquote > blockquote > blockquote > blockquote > blockquote > blockquote > p a:hover {
  color: #6ec06e;
}

code,
kbd,
pre,
samp {
  font-family: "Inconsolata", monospace;
}

code {
  background: #f9f2f4;
  color: #9c1d3d;
}

pre {
  padding: 2rem;
  background: #f0f0f0;
  border: 1px solid #000;
  border-radius: 3px;
}
pre code {
  color: #237794;
  background: inherit;
}

hr {
  border-bottom: 4px solid #F0F2F4;
}

.page-title {
  margin-top: -25px;
  padding: 25px;
  float: left;
  clear: both;
  background: #0096AC;
  color: #fff;
}

.label {
  vertical-align: middle;
  background: #0096AC;
  border-radius: 100%;
  color: #fff;
  height: 1rem;
  min-width: 1rem;
  line-height: 1rem;
  display: inline-block;
  text-align: center;
  font-size: 0.7rem;
  font-family: "IBM Plex Sans", "Helvetica", "Tahoma", "Geneva", "Arial", sans-serif;
  margin-right: 0.75rem;
}

html, body {
  height: 100%;
}

html {
  font-size: 75%;
}

body {
  background: #fafafa;
  color: #000;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 160%;
}

a {
  color: #0096AC;
}
a:hover {
  color: #00c2df;
}

#container {
  min-height: 100%;
  position: relative;
}

.fullwidth #body {
  padding-left: 0;
  padding-right: 0;
}
.fullwidth #body .modular-row {
  clear: both;
  overflow: visible;
  margin-bottom: 4rem;
}
.fullwidth #body .modular-row--text {
  float: left;
  width: 50%;
  padding-top: 3.5rem;
  padding-bottom: 4rem;
  background-color: rgba(255, 255, 255, 0.9);
}
.fullwidth #body .modular-row--fullwidth {
  background-color: rgba(255, 255, 255, 0.9);
  padding: 3rem 0;
}
.fullwidth #body .modular-row--fullwidth .modular-row {
  margin-bottom: 0;
}
.fullwidth #body .modular-row--fullwidth h3 {
  font-size: 2rem;
  line-height: 2.5rem;
  font-weight: bold;
  margin: 0;
  margin-bottom: 2rem;
}
.fullwidth #body .modular-row.news {
  max-width: 75%;
}
.fullwidth #body .modular-row .modular-row__content {
  font-size: 1.5rem;
  padding-left: 6rem;
}
.fullwidth #body .modular-row .modular-row__content > p:first-of-type {
  font-size: 2rem;
  line-height: 2.5rem;
  font-weight: 300 !important;
  margin-top: 0;
}
.fullwidth #body .modular-row:not(.showcase) h2:first-of-type {
  padding-left: 6rem;
}
.fullwidth footer {
  background-color: #000;
  color: #fff;
  padding-top: 3rem;
  padding-bottom: 4rem;
}
.fullwidth footer > .modular-row:first-of-type p {
  padding-left: 2rem;
  max-width: 80%;
}
.fullwidth footer a {
  color: #fff;
}
.fullwidth #body h2.modular-row {
  margin-bottom: 3rem;
}
@media only all and (max-width: 30em) {
  .fullwidth #body > .modular-row {
    width: 100%;
  }
}
@media only all and (min-width: 30.063em) and (max-width: 47.938em) {
  .fullwidth #body > .modular-row {
    width: 100%;
  }
}
#body {
  background: none;
  padding-top: 5rem;
  padding-bottom: 11rem;
}

.left {
  float: left;
}

.right {
  float: right;
}

footer {
  color: #fff;
}

.blog-header {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.blog-header.blog-header-image {
  background-size: cover;
  background-position: center;
}
.blog-header.blog-header-image h1, .blog-header.blog-header-image h2 {
  color: #000;
}
.blog-header h1 {
  font-size: 4rem;
  margin-top: 0;
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .blog-header h1 {
    font-size: 3rem;
  }
}
@media only all and (max-width: 47.938em) {
  .blog-header h1 {
    font-size: 2.5rem;
    line-height: 1.2;
    margin-bottom: 2.5rem;
  }
}
.blog-header + .blog-content {
  padding-top: 3rem;
}

.list-item {
  border-bottom: 3px solid #000;
  margin-bottom: 3rem;
}
.list-item:last-child {
  border-bottom: 0;
}
.list-item .list-blog-header {
  position: relative;
}
.list-item .list-blog-header h4 {
  margin-bottom: 0.5rem;
}
.list-item .list-blog-header h4 a {
  color: #000;
}
.list-item .list-blog-header h4 a:hover {
  color: #0096AC;
}
.list-item .list-blog-header img {
  display: block;
  margin-top: 1rem;
  border-radius: 3px;
}
.list-item .list-blog-date {
  float: right;
  text-align: center;
}
.list-item .list-blog-date span {
  display: block;
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 110%;
}
.list-item .list-blog-date em {
  display: block;
  border-top: 1px solid #000;
  font-style: normal;
  text-transform: uppercase;
}

.blog-content-item .list-blog-padding > p:nth-child(2) {
  font-size: 1.2rem;
}

.tags a {
  display: inline-block;
  font-size: 0.8rem;
  border: 1px solid #0096AC;
  border-radius: 3px;
  padding: 0.1rem 0.4rem;
  margin-bottom: 0.2rem;
  text-transform: uppercase;
}

.archives, .related-pages {
  padding: 0;
  list-style: none;
}
.archives li, .related-pages li {
  border-bottom: 1px solid #000;
  line-height: 2rem;
}
.archives li:last-child, .related-pages li:last-child {
  border-bottom: 0;
}

.related-pages li a {
  display: block;
}
.related-pages .score {
  display: block;
  float: right;
  color: #999;
  font-size: 85%;
}

.syndicate a {
  margin-bottom: 1rem;
}

div#breadcrumbs {
  padding-left: 0;
}
@media only all and (max-width: 47.938em) {
  div#breadcrumbs {
    display: none;
  }
}

#sidebar {
  padding-left: 3rem;
}
@media only all and (max-width: 47.938em) {
  #sidebar {
    padding-left: 0;
  }
}
#sidebar .sidebar-content {
  margin-bottom: 3rem;
}
#sidebar .sidebar-content h4 {
  margin-bottom: 1rem;
}
#sidebar .sidebar-content p, #sidebar .sidebar-content ul {
  margin-top: 1rem;
}

ul.pagination {
  margin: 0 0 3rem;
  text-align: center;
}

.prev-next {
  margin-top: 5rem;
  text-align: center;
}

.modular.header-image #header {
  background-color: rgba(255, 255, 255, 0);
  box-shadow: none;
}
.modular.header-image #header #logo h3 {
  color: #000;
}
.modular.header-image #header #navbar a {
  color: #000;
}
.modular .showcase {
  padding-top: 3.5rem;
  padding-bottom: 4rem;
  background-color: rgba(255, 255, 255, 0.9);
  background-size: cover;
  background-position: center;
  text-align: left;
  color: #000;
  margin-top: 2rem;
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .modular .showcase {
    margin-top: 4rem;
  }
}
@media only all and (min-width: 60em) and (max-width: 74.938em) {
  .modular .showcase {
    margin-top: 4rem;
  }
}
@media only all and (min-width: 75em) {
  .modular .showcase {
    margin-top: 4rem;
  }
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .modular .showcase {
    width: 100%;
  }
}
.modular .showcase h1 {
  font-size: 6rem;
  line-height: 5.25rem;
  font-weight: bold;
  margin-top: 0;
}
@media only all and (min-width: 60em) and (max-width: 74.938em) {
  .modular .showcase h1 {
    font-size: 4.2rem;
    line-height: 1.2;
  }
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .modular .showcase h1 {
    font-size: 4.2rem;
    line-height: 1.2;
  }
}
@media only all and (max-width: 47.938em) {
  .modular .showcase h1 {
    font-size: 3.6rem;
    line-height: 1.1;
    margin-bottom: 2.5rem;
  }
}
.modular .showcase h2 {
  font-weight: 300 !important;
}
.modular .showcase h3 {
  font-size: 2rem;
  line-height: 2.5rem;
  font-weight: 500;
}
@media only all and (min-width: 75em) {
  .modular .showcase > * {
    padding-left: 6rem;
  }
}
.modular .showcase .link {
  font-weight: 500;
  border: 0.1rem solid black;
}
.modular .showcase .rotated-right {
  position: absolute;
  transform-origin: right top;
  transform: rotate(90deg) translateX(420px);
  right: 0px;
  padding-top: 7rem;
  font-size: 4rem;
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .modular .showcase .rotated-right {
    transform: rotate(90deg) translateX(304px);
  }
}
@media only all and (max-width: 47.938em) {
  .modular .showcase .rotated-right {
    transform: rotate(90deg) translateX(218px);
  }
}
@media only all and (max-width: 59.938em) {
  .modular .showcase .rotated-right {
    padding-top: 4rem;
  }
}
@media only all and (max-width: 47.938em) {
  .modular .showcase .rotated-right {
    padding-top: 1rem;
  }
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .modular .showcase .rotated-right {
    font-size: 3rem;
  }
}
@media only all and (max-width: 47.938em) {
  .modular .showcase .rotated-right {
    font-size: 2.2rem;
  }
}
@media only all and (min-width: 60em) and (max-width: 74.938em) {
  .modular .showcase .description {
    width: 100%;
  }
}
@media only all and (min-width: 75em) {
  .modular .showcase .description {
    width: 100%;
  }
}

.festivaldate {
  display: none;
}
.modular .festivaldate {
  background: transparent;
  padding-left: 1rem;
}
.festivaldate__inner {
  display: flex;
}
.festivaldate__date {
  font-size: 7.2rem;
  line-height: 5.25rem;
  font-weight: bold;
  margin: 1.2rem 0 0;
}
.festivaldate__date span {
  display: block;
  font-size: 2rem;
  text-transform: uppercase;
  line-height: 2.5rem;
  letter-spacing: 0.15rem;
}
.festivaldate__name {
  margin: 1rem 0 0;
  font-size: 2.45rem;
  line-height: 2.6rem;
  font-weight: bold;
  padding-left: 0.5rem;
}
@media only all and (min-width: 60em) and (max-width: 74.938em) {
  .festivaldate {
    display: block;
  }
  .festivaldate--inline {
    display: none;
  }
}
@media only all and (min-width: 75em) {
  .festivaldate {
    display: block;
  }
  .festivaldate--inline {
    display: none;
  }
}

/* programme modular on homepage */
.programme-grid {
  background-color: transparent;
  display: flex;
  flex-flow: row wrap;
  justify-content: stretch;
}
.programme-grid__day {
  flex: 1 0 100%;
  margin: 0.5rem;
}
.programme-grid__daytitle {
  font-size: 2rem;
  font-weight: bold;
  line-height: 2rem;
  padding: 0 32px;
  margin-top: 0;
}
.programme-grid__daytitlename {
  display: block;
  font-size: 0.75rem;
  line-height: 2.5rem;
  font-weight: 500;
  text-transform: uppercase;
}
.programme-grid__daycontent {
  background-color: rgba(255, 255, 255, 0.9);
  padding: 36px 32px;
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .programme-grid__day {
    flex: 1 0 48%;
  }
}
@media only all and (min-width: 60em) and (max-width: 74.938em) {
  .programme-grid {
    flex-flow: row nowrap;
    max-width: 75%;
  }
  .programme-grid__day {
    flex: 1;
  }
}
@media only all and (min-width: 75em) {
  .programme-grid {
    flex-flow: row nowrap;
    max-width: 75%;
  }
  .programme-grid__day {
    flex: 1;
  }
}

.programme-block {
  border-bottom: 2px solid #000;
  padding-bottom: 3rem;
  margin-bottom: 2.5rem;
}
.programme-block:last-child {
  border: none;
}
.programme-block__title {
  font-size: 2rem;
  line-height: 2.5rem;
  font-weight: bold;
  margin: 0;
}
.programme-block__subtitle {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 2.5rem;
  margin: 0;
}
.programme-block__location {
  margin-top: 0rem;
  margin-bottom: 0rem;
}

.programme-events {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.programme-events__item {
  margin: 1.2rem 0;
}
.programme-events__title {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 2.5rem;
  margin: 0;
}

.s-actions {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
.s-actions__item {
  flex: 0;
  white-space: nowrap;
  margin-right: 1rem;
}

.s-time {
  font-size: 1rem;
  line-height: 2rem;
  font-weight: 500;
  text-transform: uppercase;
}
.s-time::before {
  content: "";
  background: url("../images/icons/watch-r.svg");
  background-repeat: no-repeat;
  background-size: cover;
  margin-right: 3px;
  display: inline-block;
  width: 1rem;
  height: 1rem;
  position: relative;
  top: 2px;
}

.s-location {
  font-size: 0.75rem;
  line-height: 2.5rem;
  font-weight: 500;
  text-transform: uppercase;
}
.s-location::before {
  content: "";
  background: url("../images/icons/location-r.svg");
  background-repeat: no-repeat;
  background-size: cover;
  margin-right: 3px;
  display: inline-block;
  width: 1rem;
  height: 1rem;
  position: relative;
  top: 2px;
}

#header {
  position: fixed;
  z-index: 10;
  width: 100%;
  height: 5rem;
  background-color: rgba(255, 255, 255, 0.9);
  box-shadow: 0 0.05rem 1rem rgba(0, 0, 0, 0.15);
}
#header.scrolled {
  height: 5rem;
  background-color: rgba(255, 255, 255, 0.9) !important;
  box-shadow: 0 0.05rem 1rem rgba(0, 0, 0, 0.15) !important;
}
#header.scrolled #logo h3 {
  color: #000 !important;
  font-size: 1.6rem !important;
}
#header.scrolled #logo a, #header.scrolled #navbar span {
  color: #000 !important;
}
#header.scrolled #navbar a {
  color: #000 !important;
}
#header.scrolled #navbar a:hover {
  color: black !important;
}
#header.scrolled #navbar a:before, #header.scrolled #navbar a:after {
  background-color: #000 !important;
}
#header.scrolled .navigation {
  margin-top: 0.5rem !important;
}
#header > .grid, #header #logo, #header #navbar {
  height: 100%;
}
#header #logo {
  float: left;
}
#header #logo h3 {
  font-size: 2rem;
  line-height: 2rem;
  margin: 0;
  text-transform: uppercase;
}
#header #logo h3 a {
  color: #000;
}
#header #navbar {
  font-size: 1.333333rem;
  /* Child Indicator */
}
#header #navbar .has-children > a > span {
  display: inline-block;
  padding-right: 8px;
}
#header #navbar .has-children > a > span:after {
  font-family: FontAwesome;
  content: "";
  position: absolute;
  display: inline-block;
  right: 8px;
  top: 4px;
}
#header #navbar .has-children > a:after, #header #navbar .has-children > a:before {
  display: none;
}
#header #navbar .has-children .has-children > a > span:after {
  content: "";
}
#header #navbar .navigation > .has-children:hover > a {
  background: #f6f6f6;
  border: 1px solid #ececec;
  border-bottom-color: #f6f6f6;
  margin: -1px -1px 0 -1px;
  z-index: 1000;
  position: relative;
  padding-bottom: 1px;
}
#header #navbar ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
#header #navbar ul.navigation {
  display: inline-block;
  float: right;
  margin: 1rem !important;
}
#header #navbar ul.navigation li {
  float: left;
  position: relative;
  /*Active dropdown nav item */
  /* Dropdown CSS */
  /* Active on Hover */
}
#header #navbar ul.navigation li a {
  font-family: "IBM Plex Sans", "Helvetica", "Tahoma", "Geneva", "Arial", sans-serif;
  display: inline-block;
  padding: 0.3rem 0.8rem;
  font-size: 1.333333rem;
  line-height: 23px;
  font-weight: 500;
  -webkit-backface-visibility: hidden;
}
#header #navbar ul.navigation li a:before, #header #navbar ul.navigation li a:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: 0;
  left: 0;
  background-color: #0096AC;
  visibility: hidden;
  -webkit-transform: scaleX(0);
  -moz-transform: scaleX(0);
  -ms-transform: scaleX(0);
  -o-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
#header #navbar ul.navigation li a:hover:before {
  visibility: visible;
  -webkit-transform: scaleX(0.75);
  -moz-transform: scaleX(0.75);
  -ms-transform: scaleX(0.75);
  -o-transform: scaleX(0.75);
  transform: scaleX(0.75);
}
#header #navbar ul.navigation li a.external:hover:before {
  visibility: hidden;
}
#header #navbar ul.navigation li a.active:after {
  top: 0;
  visibility: visible;
  -webkit-transform: scaleX(0.75);
  -moz-transform: scaleX(0.75);
  -ms-transform: scaleX(0.75);
  -o-transform: scaleX(0.75);
  transform: scaleX(0.75);
}
#header #navbar ul.navigation li.active a:after {
  top: 0;
  visibility: visible;
  -webkit-transform: scaleX(0.75);
  -moz-transform: scaleX(0.75);
  -ms-transform: scaleX(0.75);
  -o-transform: scaleX(0.75);
  transform: scaleX(0.75);
}
#header #navbar ul.navigation li ul {
  position: absolute;
  background-color: #f6f6f6;
  border: 1px solid #ececec;
  border-top: 0;
  min-width: 12rem;
  text-align: left;
  z-index: 999;
  left: -1px;
  display: none;
}
#header #navbar ul.navigation li ul li {
  display: block;
  float: none;
  /* Active Dropdown nav item */
}
#header #navbar ul.navigation li ul li.active > a {
  background-color: #ececec;
  color: #0096AC;
}
#header #navbar ul.navigation li ul li:hover > a {
  background-color: #0096AC;
  color: #fff;
}
#header #navbar ul.navigation li ul li a {
  display: block;
  margin: 0 -1px;
}
#header #navbar ul.navigation li ul li a:after, #header #navbar ul.navigation li ul li a:before {
  display: none;
}
#header #navbar ul.navigation li ul ul {
  left: 100%;
  top: 0px;
}
#header #navbar ul.navigation li:hover > ul {
  display: block;
}
@media only all and (max-width: 59.938em) {
  #header #navbar ul.navigation {
    display: none;
  }
}
#header #navbar .panel-activation {
  padding: 1rem;
  display: none;
  font-size: 1.8rem;
  cursor: pointer;
  float: right;
}
@media only all and (max-width: 59.938em) {
  #header #navbar .panel-activation {
    display: inline-block;
  }
}

.header-image.fullwidth #body {
  padding-left: 0;
  padding-right: 0;
}
.header-image.fullwidth #body > .listing-row {
  padding-left: 7rem;
  padding-right: 7rem;
}
.header-image .listing-row:last-child {
  margin-bottom: 2rem;
}
.header-image #body .flush-top {
  margin-top: -9.5rem;
  padding-top: 9rem;
}
.header-image #breadcrumbs {
  margin-top: 1rem;
}
.header-image #header {
  background-color: rgba(0, 0, 0, 0);
  box-shadow: none;
}
.header-image #header .navigation .has-children:hover a {
  color: #0096AC;
}
.header-image #header #logo h3, .header-image #header #logo a {
  color: #000;
}
.header-image #header a, .header-image #header .menu-btn {
  color: #000;
}
.header-image #header a:before, .header-image #header a:after {
  background-color: rgba(0, 0, 0, 0.7) !important;
}

#bg-canvas {
  position: absolute;
  margin: 0 auto;
  left: 50%;
  transform: translateX(-50%);
}
#bg-canvas.lolly::after {
  content: "";
  background: url("../js/sk_190203_pixi/assets/Stick-1.png") no-repeat 50% 50%;
  background-size: contain;
  position: absolute;
  width: 75px;
  height: 390px;
  left: calc(50% - 35px);
  top: 450px;
  z-index: -1;
  box-shadow: 0 0 120px rgba(0, 0, 0, 0.2);
}

.lolly-alt {
  position: absolute;
  bottom: -30%;
  left: 50%;
  transform: translateX(-50%);
  max-height: 760px;
  width: auto;
}

.s-button {
  display: inline-block;
  border: 2px solid #000;
  padding: 0.5rem 1rem;
  font-size: 1rem;
  font-weight: bold;
  color: #000;
  background-color: #fff;
}
.s-button:hover {
  color: #000;
}

.events-grid {
  display: flex;
  flex-flow: row wrap;
  align-items: flex-start;
}
.events-grid__event {
  flex: 1 0 100%;
  margin: 0.5rem;
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .events-grid__event {
    flex: 1 0 48%;
  }
}
@media only all and (min-width: 60em) and (max-width: 74.938em) {
  .events-grid {
    flex-flow: row nowrap;
  }
  .events-grid__event {
    flex: 1;
  }
}
@media only all and (min-width: 75em) {
  .events-grid {
    flex-flow: row nowrap;
  }
  .events-grid__event {
    flex: 1;
  }
}

.s-event {
  overflow: hidden;
  background-color: rgba(255, 255, 255, 0.9);
}
.s-event__imglink {
  display: block;
  overflow: hidden;
}
.s-event__content {
  padding: 2rem;
}
.s-event__title {
  font-size: 2rem;
  line-height: 2.5rem;
  font-weight: bold;
  margin: 0;
}
.s-event__subtitle {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 2.5rem;
  margin: 0;
}
.s-event__description {
  margin-bottom: 0;
}
.s-event__location {
  margin: 1rem 0;
}

.newslist__item {
  background-color: rgba(255, 255, 255, 0.9);
  padding: 1rem;
  margin-bottom: 1rem;
}
.newslist__href {
  display: block;
}
.newslist__title {
  font-size: 2rem;
  line-height: 2.5rem;
  font-weight: bold;
  margin: 0;
}
.newslist__moreinfo {
  color: #0096AC;
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .newslist__item {
    max-width: 75%;
  }
}
@media only all and (min-width: 60em) and (max-width: 74.938em) {
  .newslist__item {
    max-width: 75%;
  }
}
@media only all and (min-width: 75em) {
  .newslist__item {
    max-width: 75%;
  }
}

.advisors > .modular-row > * {
  padding-left: 2rem;
}

.advisorlist {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-flow: column wrap;
}
.advisorlist__item {
  font-weight: 500;
}
@media only all and (min-width: 60em) and (max-width: 74.938em) {
  .advisorlist {
    max-height: 13rem;
  }
  .advisorlist__item {
    line-height: 2rem;
  }
}
@media only all and (min-width: 75em) {
  .advisorlist {
    max-height: 13rem;
  }
  .advisorlist__item {
    line-height: 2rem;
  }
}

.s-page {
  position: relative;
  padding: 0 7rem;
  margin-top: 11rem;
  display: flex;
  justify-content: center;
}
.s-page__inner {
  flex: 0 0 50%;
}
.s-page__header {
  position: absolute;
  left: 0;
  top: 0;
  padding-left: 7.5rem;
}
.s-page__image {
  min-height: 400px;
  background-color: gray;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.s-page__title {
  font-size: 3rem;
  font-weight: bold;
  line-height: 3.5rem;
  margin-bottom: 32px;
}
@media only all and (max-width: 47.938em) {
  .s-page {
    padding: 1rem;
    margin-top: 4rem;
    overflow: hidden;
  }
  .s-page__inner {
    flex-basis: 100%;
    max-width: 100%;
  }
  .s-page__header {
    position: relative;
    padding-left: 0;
  }
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .s-page__inner {
    flex-basis: 100%;
  }
}

.animation-static {
  background-size: 100%;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}
.animation-static--3 {
  background-image: url("../js/sk_190203_pixi/assets/Straw-1-01.png");
}
@media only all and (max-width: 47.938em) {
  .animation-static--3 {
    background-size: 200%;
  }
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .animation-static--3 {
    background-size: 150%;
  }
}
.animation-static--2 {
  background-image: url("../js/sk_190203_pixi/assets/Seeds-1-01.png");
}
.animation-static--1 {
  background-image: url("../js/sk_190203_pixi/assets/icelollystick.png");
  background-position-y: -10%;
  background-size: initial;
}
@media only all and (max-width: 47.938em) {
  .animation-static--1 {
    background-position-y: 80px;
    background-size: 110%;
  }
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .animation-static--1 {
    background-position-y: 80px;
  }
}

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
.cd-schedule {
  /* HTML5 display-role reset for older browsers */
}
.cd-schedule html, .cd-schedule body, .cd-schedule div, .cd-schedule span, .cd-schedule applet, .cd-schedule object, .cd-schedule iframe,
.cd-schedule h3, .cd-schedule h4, .cd-schedule h5, .cd-schedule h6, .cd-schedule p, .cd-schedule blockquote, .cd-schedule pre,
.cd-schedule a, .cd-schedule abbr, .cd-schedule acronym, .cd-schedule address, .cd-schedule big, .cd-schedule cite, .cd-schedule code,
.cd-schedule del, .cd-schedule dfn, .cd-schedule em, .cd-schedule img, .cd-schedule ins, .cd-schedule kbd, .cd-schedule q, .cd-schedule s, .cd-schedule samp,
.cd-schedule small, .cd-schedule strike, .cd-schedule strong, .cd-schedule sub, .cd-schedule sup, .cd-schedule tt, .cd-schedule var,
.cd-schedule b, .cd-schedule u, .cd-schedule i, .cd-schedule center,
.cd-schedule dl, .cd-schedule dt, .cd-schedule dd, .cd-schedule ol, .cd-schedule ul, .cd-schedule li,
.cd-schedule fieldset, .cd-schedule form, .cd-schedule label, .cd-schedule legend,
.cd-schedule table, .cd-schedule caption, .cd-schedule tbody, .cd-schedule tfoot, .cd-schedule thead, .cd-schedule tr, .cd-schedule th, .cd-schedule td,
.cd-schedule article, .cd-schedule aside, .cd-schedule canvas, .cd-schedule details, .cd-schedule embed,
.cd-schedule figure, .cd-schedule figcaption, .cd-schedule footer, .cd-schedule header, .cd-schedule hgroup,
.cd-schedule menu, .cd-schedule nav, .cd-schedule output, .cd-schedule ruby, .cd-schedule section, .cd-schedule summary,
.cd-schedule time, .cd-schedule mark, .cd-schedule audio, .cd-schedule video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
.cd-schedule article, .cd-schedule aside, .cd-schedule details, .cd-schedule figcaption, .cd-schedule figure,
.cd-schedule footer, .cd-schedule header, .cd-schedule hgroup, .cd-schedule menu, .cd-schedule nav, .cd-schedule section, .cd-schedule main {
  display: block;
}
.cd-schedule body {
  line-height: 1;
}
.cd-schedule ol, .cd-schedule ul {
  list-style: none;
}
.cd-schedule blockquote, .cd-schedule q {
  quotes: none;
}
.cd-schedule blockquote:before, .cd-schedule blockquote:after,
.cd-schedule q:before, .cd-schedule q:after {
  content: "";
  content: none;
}
.cd-schedule table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* -------------------------------- 

Primary style

-------------------------------- */
/* -------------------------------- 

Main Components 

-------------------------------- */
.cd-schedule {
  position: relative;
  margin: 2em 0;
}
.cd-schedule::before {
  /* never visible - this is used in js to check the current MQ */
  content: "mobile";
  display: none;
}
@media only screen and (min-width: 11px) {
  .cd-schedule {
    width: 90%;
    max-width: 550px;
    margin: 2em auto;
  }
  .cd-schedule::after {
    clear: both;
    content: "";
    display: block;
  }
}
@media only screen and (min-width: 600px) {
  .cd-schedule::before {
    content: "desktop";
  }
}

.cd-schedule .timeline {
  display: none;
}

.cd-schedule .events {
  position: relative;
  z-index: 1;
}
.cd-schedule .events .events-group {
  margin-bottom: 30px;
}
.cd-schedule .events .top-info {
  width: 100%;
  padding: 0 5%;
}
.cd-schedule .events .top-info > span {
  display: inline-block;
  line-height: 1.2;
  margin-bottom: 10px;
  font-weight: bold;
}
.cd-schedule .events .events-group > ul {
  position: relative;
  padding: 0 5%;
  /* force its children to stay on one line */
  display: flex;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
}
.cd-schedule .events .events-group > ul::after {
  /* never visible - used to add a right padding to .events-group > ul */
  display: inline-block;
  content: "-";
  width: 1px;
  height: 100%;
  opacity: 0;
  color: transparent;
}
.cd-schedule .events .single-event {
  /* force them to stay on one line */
  flex-shrink: 0;
  float: left;
  height: 150px;
  width: 70%;
  max-width: 300px;
  margin-right: 20px;
  transition: opacity 0.2s, background 0.2s;
}
.cd-schedule .events .single-event:last-of-type {
  margin-right: 5%;
}
.cd-schedule .events .single-event a {
  display: block;
  height: 100%;
  padding: 0.8em;
}
@media only screen and (min-width: 10px) {
  .cd-schedule .events .single-event {
    width: 40%;
  }
}
@media only screen and (min-width: 11px) {
  .cd-schedule .events {
    float: left;
    width: 100%;
    /* single event Medium */
  }
  .cd-schedule .events .events-group {
    width: 100%;
    float: left;
    /* reset style */
    margin-bottom: 0;
  }
  .cd-schedule .events .events-group:not(:first-of-type) {
    border-left-width: 0;
  }
  .cd-schedule .events .top-info {
    /* vertically center its content */
    height: 70px;
    /* reset style */
    padding: 0;
  }
  .cd-schedule .events .top-info > span {
    /* vertically center inside its parent */
    display: table-cell;
    vertical-align: middle;
    padding: 0 0.5em;
    text-align: center;
    /* reset style */
    font-weight: normal;
    margin-bottom: 0;
  }
  .cd-schedule .events .events-group > ul {
    height: 1540px;
    /* reset style */
    display: block;
    overflow: visible;
    padding: 0;
  }
  .cd-schedule .events .events-group > ul::after {
    clear: both;
    content: "";
    display: block;
  }
  .cd-schedule .events .events-group > ul::after {
    /* reset style */
    display: none;
  }
  .cd-schedule .events .single-event {
    position: absolute;
    z-index: 3;
    /* top position and height will be set using js */
    width: calc(100% + 2px);
    left: -1px;
    /* reset style */
    flex-shrink: 1;
    height: auto;
    max-width: none;
    margin-right: 0;
  }
  .cd-schedule .events .single-event a {
    padding: 0.5rem;
  }
  .cd-schedule .events .single-event a.event-narrow {
    padding-top: 0.25rem;
  }
  .cd-schedule .events .single-event:last-of-type {
    /* reset style */
    margin-right: 0;
  }
  .cd-schedule .events .single-event.selected-event {
    /* the .selected-event class is added when an user select the event */
    visibility: hidden;
  }
}
@media only screen and (min-width: 600px) {
  .cd-schedule .events {
    /* single event Large */
  }
  .cd-schedule .events .top-info {
    /* vertically center its content */
    height: 70px;
    /* reset style */
    padding: 0;
  }
  .cd-schedule .events .top-info > span {
    /* vertically center inside its parent */
    display: table-cell;
    vertical-align: middle;
    padding: 0 0.5em;
    text-align: center;
    /* reset style */
    font-weight: normal;
    margin-bottom: 0;
  }
  .cd-schedule .events .events-group > ul {
    height: 1540px;
    /* reset style */
    display: block;
    overflow: visible;
    padding: 0;
  }
  .cd-schedule .events .events-group > ul::after {
    clear: both;
    content: "";
    display: block;
  }
  .cd-schedule .events .events-group > ul::after {
    /* reset style */
    display: none;
  }
  .cd-schedule .events .single-event a {
    padding: 0.5em 1em;
  }
  .cd-schedule .events .single-event a.event-narrow {
    padding-top: 0.5rem;
  }
  .cd-schedule .events .single-event .event-name {
    display: inline;
  }
  .cd-schedule .events .single-event .event-title {
    margin-left: 109px;
  }
}

.cd-schedule.loading .events .single-event {
  /* the class .loading is added by default to the .cd-schedule element
     it is removed as soon as the single events are placed in the schedule plan (using javascript) */
  opacity: 0;
}

.cd-schedule .event-name,
.cd-schedule .event-date {
  color: #333;
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.cd-schedule .event-name {
  display: block;
}

.cd-schedule .event-name.event-name-inline {
  display: inline;
}

.cd-schedule .event-date {
  /* they are not included in the the HTML but added using JavScript */
  display: inline-block;
  width: 105px;
  opacity: 0.7;
  line-height: 1.2;
  margin-bottom: 0.2em;
}

.cd-schedule .event-title {
  display: block;
  color: #333;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media only screen and (min-width: 600px) {
  .cd-schedule .event-title.pl0-l {
    padding-left: 0;
  }
}

.cd-schedule .single-event[data-event=event-0] {
  border-left: 2px solid #000;
  border-right: 2px solid #000;
}
.cd-schedule .single-event[data-event=event-0] a {
  pointer-events: none;
}

.cd-schedule .single-event[data-content=""] {
  pointer-events: none;
}

.cd-schedule .single-event[data-event=event-0],
.cd-schedule [data-event=event-0] .header-bg {
  /* this is used to set a background color for the event and the modal window */
  background: #CDCCCB;
  border: 2px solid #000;
}

.cd-schedule .single-event[data-event=event-0]:hover {
  background: #dad9d8;
}

.cd-schedule .single-event[data-event=event-1] {
  /* this is used to set a background color for the event and the modal window */
  background: radial-gradient(at 100% 100%, transparent 20%, white 80%);
  border: 2px solid #000;
}

.cd-schedule [data-event=event-1] .header-bg {
  /* modal */
  background: white;
}

.cd-schedule .single-event[data-event=event-1]:hover {
  background: white;
}

.cd-schedule .single-event[data-event=event-2],
.cd-schedule [data-event=event-2] .header-bg {
  background: #A463F2;
}

.cd-schedule .single-event[data-event=event-2]:hover {
  background: #b27bf4;
}

.cd-schedule .single-event[data-event=event-3],
.cd-schedule [data-event=event-3] .header-bg {
  background: #f7a79f;
}

.cd-schedule .single-event[data-event=event-3]:hover {
  background: #f9bcb6;
}

.cd-schedule .single-event[data-event=event-4],
.cd-schedule [data-event=event-4] .header-bg {
  background: white;
}

.cd-schedule .single-event[data-event=event-4]:hover {
  background: white;
}

.cd-schedule .event-modal {
  position: fixed;
  z-index: 3;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  visibility: hidden;
  /* Force Hardware acceleration */
  transform: translateZ(0);
  transform: translateX(100%);
  transition: transform 0.4s, visibility 0.4s;
  transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1);
}
.cd-schedule .event-modal .header {
  position: relative;
  height: 70px;
  /* vertically center its content */
  display: table;
  width: 100%;
}
.cd-schedule .event-modal .header .content {
  position: relative;
  z-index: 3;
  /* vertically center inside its parent */
  display: table-cell;
  vertical-align: middle;
  padding: 0.6em 5%;
}
.cd-schedule .event-modal .body {
  position: relative;
  width: 100%;
  /* 70px is the .header height */
  height: calc(100% - 70px);
}
.cd-schedule .event-modal .event-info {
  position: relative;
  z-index: 2;
  line-height: 1.4;
  height: 100%;
  overflow: hidden;
}
.cd-schedule .event-modal .event-info > div {
  overflow: auto;
  height: 100%;
  padding: 1.4em 5%;
}
.cd-schedule .event-modal .event-info p {
  margin-bottom: 1rem;
}
.cd-schedule .event-modal .header-bg, .cd-schedule .event-modal .body-bg {
  /* these are the morphing backgrounds - visible on desktop only */
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.cd-schedule .event-modal .body-bg {
  z-index: 1;
  background: #CDCCCB;
  transform-origin: top left;
}
.cd-schedule .event-modal .header-bg {
  z-index: 2;
  transform-origin: top center;
}
.cd-schedule .event-modal .close {
  /* this is the 'X' icon */
  position: absolute;
  top: 0;
  right: 0;
  z-index: 3;
  background: none;
  /* replace text with icon */
  color: transparent;
  white-space: nowrap;
  text-indent: 100%;
  height: 70px;
  width: 70px;
}
.cd-schedule .event-modal .close::before, .cd-schedule .event-modal .close::after {
  /* these are the two lines of the 'X' icon */
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 22px;
  background: #333;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.cd-schedule .event-modal .close::before {
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.cd-schedule .event-modal .close::after {
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}
.cd-schedule .event-modal .event-date {
  display: none;
}
.cd-schedule .event-modal .event-name {
  padding-left: 0;
}
.cd-schedule .event-modal.no-transition {
  transition: none;
}
.cd-schedule .event-modal.no-transition .header-bg, .cd-schedule .event-modal.no-transition .body-bg {
  transition: none;
}
@media only screen and (min-width: 600px) {
  .cd-schedule .event-modal {
    /* reset style */
    right: auto;
    width: auto;
    height: auto;
    transform: translateX(0);
    will-change: transform, width, height;
    transition: height 0.4s, width 0.4s, transform 0.4s, visibility 0.4s;
    transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1);
  }
  .cd-schedule .event-modal .header {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    height: 100%;
  }
  .cd-schedule .event-modal .header .content {
    /* reset style */
    display: block;
    padding: 0.8em;
  }
  .cd-schedule .event-modal .event-info > div {
    padding: 2em 3em 2em 2em;
  }
  .cd-schedule .event-modal .body {
    height: 100%;
    width: auto;
  }
  .cd-schedule .event-modal .header-bg, .cd-schedule .event-modal .body-bg {
    /* Force Hardware acceleration */
    transform: translateZ(0);
    will-change: transform;
    backface-visibility: hidden;
  }
  .cd-schedule .event-modal .header-bg {
    transition: transform 0.4s;
    transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1);
  }
  .cd-schedule .event-modal .body-bg {
    opacity: 0;
    transform: none;
  }
  .cd-schedule .event-modal .event-date {
    display: block;
  }
  .cd-schedule .event-modal .close, .cd-schedule .event-modal .event-info {
    opacity: 0;
  }
  .cd-schedule .event-modal .close {
    width: 40px;
    height: 40px;
    background: transparent;
  }
  .cd-schedule .event-modal .close::after, .cd-schedule .event-modal .close::before {
    background: #333;
    height: 16px;
  }
}
@media only screen and (min-width: 600px) {
  .cd-schedule .event-modal .header .content {
    padding: 2em 1.2em;
  }
}

.cd-schedule.modal-is-open .event-modal {
  /* .modal-is-open class is added as soon as an event is selected */
  transform: translateX(0);
  visibility: visible;
}
.cd-schedule.modal-is-open .event-modal .event-info > div {
  /* smooth scroll on iOS touch devices */
  -webkit-overflow-scrolling: touch;
}

@media only screen and (min-width: 600px) {
  .cd-schedule.animation-completed .event-modal .close,
.cd-schedule.content-loaded.animation-completed .event-modal .event-info {
    /* 	the .animation-completed class is added when the modal animation is completed
    	the .content-loaded class is added when the modal content has been loaded (using ajax) */
    opacity: 1;
    transition: opacity 0.2s;
  }

  .cd-schedule.modal-is-open .body-bg {
    opacity: 1;
    transition: transform 0.4s;
    transition-timing-function: cubic-bezier(0.5, 0, 0.1, 1);
  }
}
.cd-schedule .cover-layer {
  /* layer between the content and the modal window */
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.8);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s, visibility 0.4s;
}

.cd-schedule.modal-is-open .cover-layer {
  opacity: 1;
  visibility: visible;
}

.speakerfaces {
  display: flex;
  flex-flow: row wrap;
}
.speakerfaces__speaker {
  display: flex;
  flex-flow: column nowrap;
  justify-content: flex-end;
  flex: 0 0 75%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50%;
  padding: 36px 32px;
  min-height: 380px;
  color: #fff;
  margin: 0.5rem;
}
.speakerfaces__speaker:hover {
  color: #000;
  background-color: transparent;
  background-image: none !important;
}
.speakerfaces__name {
  font-size: 3rem;
  font-weight: bold;
  line-height: 3.25rem;
  word-break: break-word;
  margin-bottom: 0.5rem;
  hyphens: manual;
}
.speakerfaces__interest {
  font-size: 1.5rem;
  line-height: 2rem;
  margin-top: 0;
  margin-bottom: 0;
}
@media only all and (min-width: 48em) and (max-width: 59.938em) {
  .speakerfaces__speaker {
    flex: 0 0 calc( 50% - 1rem );
  }
}
@media only all and (min-width: 60em) and (max-width: 74.938em) {
  .speakerfaces__speaker {
    flex: 0 0 calc( 33% - 1rem);
  }
}
@media only all and (min-width: 75em) {
  .speakerfaces__speaker {
    flex: 0 0 calc( 25% - 1.5rem );
  }
}

/* general */
a {
  transition: all 0.1s ease;
}

/* tachyons */
.grow {
  -moz-osx-font-smoothing: grayscale !important;
  backface-visibility: hidden !important;
  transform: translateZ(0) !important;
  transition: transform 0.25s ease-out !important;
}

.grow:hover,
.grow:focus {
  transform: scale(1.05) !important;
}

.teal {
  color: #0096AC;
}

.pink {
  color: #FBD2CE !important;
}

.b--teal {
  border-color: #0096AC;
}

.bg-teal {
  background-color: #0096AC;
}

.bg-light-gray {
  background-color: #fafafa !important;
}

.bg-dark-gray {
  background-color: #56575a !important;
}

.mw24rem {
  max-width: 24rem;
}

@media (min-width: 30em) {
  .mh-7px-ns {
    margin-left: -7px;
    margin-right: -7px;
  }
}

@media (min-width: 30em) {
  .mh-2-ns {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
  }
}

@media (min-width: 30em) {
  .mh-1-ns {
    margin-left: -0.25rem;
    margin-right: -0.25rem;
  }
}

.mt-1 {
  margin-top: -0.125rem;
}

.f4rem {
  font-size: 4rem;
}

.break-word {
  overflow-wrap: break-word;
}

/* template: typography */
h1 {
  font-size: 6rem;
  text-align: inherit !important;
  letter-spacing: 0;
}

h2 {
  font-size: 3rem;
  font-weight: bold !important;
  text-align: inherit !important;
  letter-spacing: 0;
  line-height: 3.5rem;
  margin-bottom: 48px;
}

h3 {
  font-size: 3.2rem;
  text-align: inherit !important;
  letter-spacing: 0;
}

h4 {
  font-size: 2rem;
}

h5 {
  font-size: 1.5rem;
}

h6 {
  font-size: 1.3rem;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "IBM Plex Sans", "Helvetica", "Tahoma", "Geneva", "Arial", sans-serif;
  font-weight: 400;
  text-rendering: optimizeLegibility;
  letter-spacing: 0px;
}

h1 {
  font-size: 6rem;
}
@media only all and (max-width: 47.938em) {
  h1 {
    font-size: 2.5rem;
    line-height: 1.2;
    margin-bottom: 2.5rem;
  }
}

@media only all and (min-width: 48em) and (max-width: 59.938em) {
  h2 {
    font-size: 2.6rem;
  }
}
@media only all and (max-width: 47.938em) {
  h2 {
    font-size: 2.5rem;
  }
}

@media only all and (min-width: 48em) and (max-width: 59.938em) {
  h3 {
    font-size: 2.8rem;
  }
}
@media only all and (max-width: 47.938em) {
  h3 {
    font-size: 2.7rem;
  }
}

@media only all and (min-width: 48em) and (max-width: 59.938em) {
  h4 {
    font-size: 1.6rem;
  }
}
@media only all and (max-width: 47.938em) {
  h4 {
    font-size: 1.5rem;
  }
}

blockquote p {
  color: #444;
}
blockquote cite {
  color: #444;
}

/* template: header */
#header {
  background-color: transparent;
  box-shadow: none;
}
#header #logo img {
  height: 2rem;
}
#header #navbar a {
  color: #000;
}
#header #navbar ul.navigation li a::after, #header #navbar ul.navigation li a::before {
  background-color: white;
}
#header.scrolled {
  background-color: #fff !important;
}
#header.scrolled #navbar a, #header.scrolled #navbar span {
  color: #000 !important;
  transition: all 0.25s;
}
#header.scrolled #navbar a:hover, #header.scrolled #navbar span:hover {
  color: #000 !important;
}

/* template: buttons */
.button-secondary, .button {
  display: inline-block;
  padding: 7px 20px;
}
.button-small.button-secondary, .button-small.button {
  padding: 3px 10px;
  font-size: 0.9rem;
}

.button {
  background: none;
  color: #0096AC;
  border: 1px solid #0096AC;
  border-radius: 3px;
}
.button:hover {
  background: #0096AC;
  color: none;
}
.button:active {
  box-shadow: 0 1px 0 #00616f;
}

.button-secondary {
  background: none;
  color: #bdbdbe;
  border: 1px solid #bdbdbe;
  border-radius: 3px;
}
.button-secondary:hover {
  background: #bdbdbe;
  color: none;
}
.button-secondary:active {
  box-shadow: 0 1px 0 #9e9ea0;
}

/* template: showcase */
@media (max-width: 480px) {
  .modular .showcase {
    line-height: 1.2;
  }
}
.modular .showcase img.sensorium-arcs {
  position: absolute;
  max-width: none;
  top: 0;
  left: 50%;
  width: 1200px;
  margin-left: -600px;
  /* half the width */
}

/* Animated Logotype */
iframe.animatedLogotype {
  width: 290px;
  height: 116px;
}
@media (min-width: 480px) {
  iframe.animatedLogotype {
    width: 450px;
    height: 180px;
  }
}
@media (min-width: 768px) {
  iframe.animatedLogotype {
    width: 630px;
    height: 252px;
  }
}
@media (min-width: 960px) {
  iframe.animatedLogotype {
    width: 750px;
    height: 300px;
  }
}

/* interactive spline loops */
#sb-site {
  transition: background-color 1s ease !important;
  background-color: rgba(0, 0, 0, 0) !important;
}

#sb-site.scrolled {
  transition: background-color 1s ease;
  background-color: rgba(0, 0, 0, 0.5) !important;
}

.sb-slidebar {
  background-color: transparent !important;
}

#defaultCanvas0 {
  position: fixed;
  top: 0;
  z-index: 0;
}

/* programme */
.sb-site-overflow-x-hidden #sb-site {
  overflow-x: hidden !important;
}

body.no-measure section#body > .measure {
  max-width: none;
}

.bgi-radialgrad {
  background-image: radial-gradient(at 100% 100%, transparent 20%, white 80%);
}

/* lab page */
body.hide-menu #header #navbar ul.navigation {
  display: none;
}

.section-anchor {
  clear: both;
}

/*# sourceMappingURL=template-customized.css.map */
